Load Balancing

stormwalkerza

Senior Member
Joined
Jun 10, 2005
Messages
521
Reaction score
0
I'm using raspppoe to make several connection, however, the last connection is always used.

Anyone know of software to load balance over the wan connections?

Routecentry would work will, however, its limited to 2 only and it will want to router local over one and int over the other.

Ive searched all day on the net and guess im using the incorrect terminology.

Storm
 
No sure exactly what you are asking but Linux/BSD could do that for you.
 
I tried that, even used pfsense, no luck

Most explain how to connect multiple times, then setup routes, but thats about all.

Not load balancing.

Basically, I want to share the bw load across multiple accounts

I've logged in on all of the successfully, but can download via them all.

I am using concurrent sessions, but its not being shared evenly.

Need something like route sentry but where one can select the interfaces and it does the rest.
 
Are these multiple connections connecting to the same thing?
Are you trying to make your line faster by using 2 lines?
or
Are you trying to always send data to one destination down one pppoe connection, and other data to specific destinations down another different pppoe connection and perhaps more data to even more destinations down yet another different pppoe connection?

Clarify.
 
Okay, you want to use 2 or more lines to make your line "broader".

Cool.

Now, explain to me how you want the communication to work:

Option 1:
1. PC1 -> I want the HTML from google.com = REQUEST1.
2. PC2 -> I want the HTML from gmail.com = REQUEST2.
3. REQUEST1,REQUEST2 -> LINUX MACHINE with PPP1 and PPP2.
4. LINUX MACHINE sends REQUEST1 down PPP1.
5. LINUX MACHINE sends REQUEST2 down PPP2.

This is not load balancing, this is round-robin.

The problem with round-robin is that the requesting IP Address will change all the time. Because ppp1 and ppp2 have different ip addresses. This makes it impossible for things like games. That is why this does not exist in workable form.

Option 2:
1. PC1 -> I want the HTML from google.com = REQUEST1.
2. PC2 -> I want the HTML from gmail.com = REQUEST2.
3. REQUEST1 -> LINUX MACHINE with PPP1 and PPP2 that are bonded to look like one connection.
4. LINUX MACHINE sends REQUEST1, REQUEST2 down PPP1 and PPP2, the bonding software takes care of deciding which connection to send what data on. On the receiving end, the bonding server puts the 2 connections back together under a single ip address.

The bonded connection is what you are looking for, and that requires a service provider that controls both adsl lines and "puts them back together".

Search for ADSL bonding.
 
pppoe Con 1 - max speed is 50k/s
pppoe Con 2 - max speed is 100k/s
pppoe Con 3 - max speed is 100k/s
pppoe Con 4 - max speed is 150k/s

PC1 -> (Load Balancing sys - pppoe Con 1-4)

If i download something using 100 concurrent connections, then roundrobbin the streams across all 4 pppoe connections.

If that makes sense.

If one can do it in linux, brilliant, just not sure how.
 
Let me get deeper into the technicalities then so that you can see the problem clearly:

1 - A TCP/IP connection consists of 4 parts, an source IP Address and a Port, and a destination IP Address and a Port. e.g. 10.0.0.2:34223 -> gmail.com:80
2 - Then the linux box which is the default gateway receives the request and looks for an interface (ppp connection) through which to route to the destination.
3 - The linux box then grabs the ip address of that interface and changes the TCP/IP packet accordingly. e.g. 64.53.23.1:34223 -> gmail.com:80. This is called Network Address translation.
4 - The linux box then sends off the request down that interface as if it had sent it, and waits for the answer.
5 - gmail.com:80 gets the data, and processes it, and sends it back down to 64.53.23.1:34223.
6 - When the answer arrives, the linux box swaps the addresses back : gmail.com:80 -> 64.53.23.1:34223 becomes gmail.com:80 -> 10.0.0.2:34223.
7 - Your pc gets the data, unaware of the changes.

Now, what you're missing is that gmail.com has now authenticated you. But, it has authenticated you as having come from 64.53.23.1:34223. This is where your problems begin.

If you add round-robin to the picture, your next request to gmail.com may come from a different ip address. e.g. PPP2's ip address.

When gmail.com receives the request it's going to take one look at the request and say ... well, who the heck are you? And reject the request.

Do you follow this?

The problem of the changing source IP address causes problems with the receiving end not recognising the sender.

That is why round robin does not exist in a workable format.

Now, to make matters worse, hackers use a technique where they do exactly what round-robin does in an effort to pretend to be you (Called IP Spoofing). And, because of this, all loopholes where round-robin was able to work have been closed down.
 
Last edited:
Makes sense.

A pitty though, thanks for the explination !!!

Will have to find a workaround
 
You wouldnt know of any proxy server load balancing?

I can route each connection via a proxy server, then just need a proxy app that will oad balance to the 4 other proxies?

off to google again...
 
Top
Sign up to the MyBroadband newsletter
X