Hosted load balancing - single IP to x # of broadband connections

Aaron Smith

Reputable
May 7, 2014
5
0
4,510
Good day everyone,

I have setup a dual DSL line for my parents house to help service our massive bandwidth needs for a Dahua (also known as Q-See at Costco, but they sell the wimpiest low performance models using older slower ARM processors). I get my 32 channel NVR's from http://nellyssecurity.com. We have 16 cameras, some are 1080p (2 megapixel) and some are 3 megapixel. We ordered the 2nd DSL line just to keep the main line running at a decent speed so my parents can web browse. Oh, and an important note, they live in the country where we get 6mbit down and 1mbit up and that is only because I had a friend at Frontier Communications (rated the worst ISP in America) break the rules and bump me up from 640k to 1024k. That is about enough to upload 2 cameras at 1 frame per 2 seconds.

So far I've only taken the most simple route. Adding the 2nd DSL router to the network with DHCP disabled of course so the main router (an ASUS RT-AC66u) and pointed its port 37777 to the NVR. With the 6-7mbit down, we can pull around 6 remote cameras (they are out on our farm)...

Ok, I sense I'm getting long winded here. I have considered getting the TP Link Load Balancing Broadband Router TL-R480T+ (Load Balance Broadband Router
TL-R480T+ http://www.tp-link.com/en/products/details/?categoryid=227&model=TL-R480T+) - It really is an excellent unit for being a consumer priced device. Up to 4 WAN ports with all sorts of load balancing/fail-over/etc features.

Since my parents are out in the country, but live up on a high hill top. I bought a pair of Ubiqiti dish 5.8ghz high power bridges to do a 3.2 mile bridge to a friends house in town that can get 70mbit download and 6mbit upload via Cableone.net. I'd like to combine them all for greater throughput. However, this is not an ideal situation. Since each broadband connection has its own IP address, I have to manually split up the streams to utilize each.

So on to my question. I KNOW for sure I saw a company on the web that offers a hosted single IP address, that can be setup to go over several connections at once and output into a single router to the network. However after weeks of searching I can't find them. I can't remember if they had a specific router of their own or made it work with other devices, but this is truly my goal. A single IP that can transparently load balance over all the connections as if they were one.

In other words:
Hosted IP --> load balancing over all available connections DSL1, DSL2, Cableone.net ----> their custom router (?) --> my network getting a single IP.

The problem is, we have so many remote devices interacting with the NVR32 that it is a big inconvenience to configure the devices to spread across the different IP addresses. What we really need is a single hosted IP that muxes all available lines back as if it were a single ISP connection into our router.

And before anyone suggests it, no I don't want to go with round robin or older balancing methos

So I'm asking for help, I know I came across this company months ago, but I simply can't find them anywhere. I'd be grateful for any help and suggestions. I need a plug and play system like the TP Link (by plug and play I mean, not configuring some high end router that is way out of my league). I'd be grateful for any help and suggestions.

Thanks!
 
Solution
It was one of the many vpn sites that sold the ability to have multiple links combined. My search for it has not been real successful. VPN sites are blocked by my work proxy to prevent people bypassing so I can't do much research from work.

I remember discussing on one of these forums why they were exaggerating when they said they could combine a satellite link and a dsl connection.

Technically it is not real hard to do this. The simple way is to use multiple vpn tunnels and then just run a routing protocol like OSPF and tell it to load balance by packet. Since OSPF does not know the VPN connection have different latencies so it will blindly do this. I have always done this on a commercial cisco router but I suspect dd-wrt on...
It has been a while but the one I saw was a vpn company that was doing it. You could set this up your self but it only works for some applications.

The key problem is when you have connection of different bandwidths and different latencies and you spray data from a single session over all them you get massive out of order packets. Out of order packets are interpreted by end applications as packet loss.

Say you have a 1m circuit and a 100m circuit and you send a window of 20 1k packets. So you queue the first packet on the slower circuit and it starts to send. Since it is busy you can send the other 19 packets on the 100m circuit. The receiving device will buffer detect that it got the 2-19 packets and has not received the first one. It will send back arp messages indicating it did not get packet 1 in response to packets 2-19. This causes the sender to resend some of the data. In a extreme case like this it will likely reset the session after about 10 out of order packets.

This tends to be almost impossible to fix. The VPN device must take control and hold packets and then send them out in the proper order. This of course partially defeats the purpose of multiple connections. It also causes the traffic to be very bursty which also causes slow downs in the transfer. It also causes massive cpu and memory load on the vpn device

There are commercial devices from companies like riverbed and bigip that can do a ok job of load balancing circuits with different delays but there is still a limit what these can do...they also cost more than small cars.
 

Aaron Smith

Reputable
May 7, 2014
5
0
4,510
Hey Bill001g. Thanks for the info. Yeah I understand some of the difficulties with the WAN ports having different speeds. For example my DSL1 has 7/0.6mbit DSL 2 has 7/1mbt and the cable modem that would be connected via a 5.8 3mile bridge into town could have anything from 50/1mbit to 70/6mbit. I've read the heck out of the TP Link WAN balancer and t seems to have some really good tools for specifying what traffic you want to run on what ports when ports get in use, etc.. The manual is here http://www.tp-link.com/en/products/details/?categoryid=227&model=TL-R480T%2b

I can take the route of just balancing my 3 links, but as I mentioned before - I'd like to have a single IP hosted by a company, that goes to a load balancer to just combine all the bandwidth.. and of course I know it is 100% + 100% + 100% of each link, there would like be a little overhead and stuff, but I figure done right I could get at least 92% or so efficiency.

Boy I'd sure love it if you remembered the company that did this. I just got a nice ripping over on anandtech forums telling me how ridiculous this is and there is no company that provides such a service.
http://forums.anandtech.com/showthread.php?p=36339170#post36339170

To be honest, if you really think about it - how common "once-highend" networking features have creeped into even the cheapest routers (Like the ASUS RT-AC66u is out standing, but pricey at $200 - totally my favorite router). have features that were once only in a Cisco. If you think about companies like hidemy**s.com where you can buy all the bandwidth you want to use over their VPN -- you'd assume that if they wanted to, they could setup a method where you have a router such as the TP Link that just creates 3 VPN's in and balances it all.
 
It was one of the many vpn sites that sold the ability to have multiple links combined. My search for it has not been real successful. VPN sites are blocked by my work proxy to prevent people bypassing so I can't do much research from work.

I remember discussing on one of these forums why they were exaggerating when they said they could combine a satellite link and a dsl connection.

Technically it is not real hard to do this. The simple way is to use multiple vpn tunnels and then just run a routing protocol like OSPF and tell it to load balance by packet. Since OSPF does not know the VPN connection have different latencies so it will blindly do this. I have always done this on a commercial cisco router but I suspect dd-wrt on both routers can also do it since it support vpn and routing protocols.

If you applications can tolerate out of order data this works fine. And this really is the only service a vpn provider can offer. If you wanted to build your own all you would need would be a router in a hosted data center.

Still from experience trying to bonding stuff like 2 e1 circuits and the latency was only 20ms difference the out of order packets greatly reduced our throughput. This is why almost everyone will tell you it is impossible.

To really do this the device on the end must keep track of the packets and their order and hold them and deliver them in the proper order. I know the riverbed device we have claims it can do that. These devices are sold as wan accelerators. We do not use it to load balance but since a large part of its function is to actually cache and spoof network packets I can see it could likely do that function....it actually spoofs ack packets.
The last time I say a invoice these things cost $30k a box and you need 2.

There may be some form of free wan accelerator software but you would need a hosted server

 
Solution

Latest posts