Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Hardware

ADSL Bandwidth Aggregation w/ Multiple Accounts? 29

kernel_panic writes "Okay, I've been reading up on combining two or more SDSL connections together to give you one big fat pipe, but I haven't seen any references to doing this w/ ADSL. This place even manufactures a nifty little hardware device (ePipe) that combines two WAN ports for the aggregate sum. I've seen the Netopia 7000 Series routers support this capability as well, w/ an add-on card, but all of these places only mention accomplishing this w/ SDSL accounts. I've seen a lot of info on bandwidth load balancing, but I want bandwidth aggregation (inverse multiplexing). Has anyone had any experience doing this kind of thing w/ your Linux/BSD gateway boxen?"
This discussion has been archived. No new comments can be posted.

ADSL Bandwidth Aggregation w/ Multiple Accounts?

Comments Filter:
  • by shoppa ( 464619 ) on Thursday August 08, 2002 @08:54AM (#4032053)
    In order to really make a single fat pipe you need hardware and/or software at both ends of the connection to do the aggregation. Are you connecting, say, a remote business office with headquarters? If so, the Stallion [stallion.com] approach you already mentioned should work fine, as you can coordinate the equipment on both ends.

    I get the impression from your rejection of load balancing that you are more typically on the "client" rather than the "server" end of a connection. (Or maybe you're a server with only a single client, in which case load balancing probably doesn't help either.)

    If you're a guy in his house who wants a fatter pipe to download single big files, you probably cannot get the folks at the server to install special equipment for you. If your ISP will help you to support aggregation by putting equipment on their end to hook into their upstream connection, that's not so bad, and some small regional ISP's do specialize in this. But you'll have to tell us where you are to get a recommendation for such ISP's.

    • You already have software at the other end, HTTP and FTP servers.

      If you have say 4 ADSL lines
      Setup a proxy so that each request gets split up into chunks of 10k+.
      then interleave the requests across all of your available lines.

      0-10k from adsl 1
      10-20k from adsl 2
      20-30k from adsl 3
      30-40k from adsl 4

      etc...

      there will be a slight overhead, but you'll still get at least a 3.5x as fat connection.

  • by photon317 ( 208409 ) on Thursday August 08, 2002 @08:59AM (#4032076)

    Inverse Multiplexing would happen at the dsl modem level, not at the ip level. It would require inverse multiplex support at your provider's DSLAM, and you would probably be using multiple lines under a single account.

    IMHO the best way for a residential consumer to get more bandwidth (and reliability) is to multi-NAT your home network. Sign up for a couple of DSL lines (maybe pretend to be stupid enough that you want a second DSL for another room in the house or something) and perhaps a Cable Modem hokoup for redundancy and a bit more bandwidth.

    Into the ethernet jacks of each of the 3 or so modems, plug a direct crossover cable to seperate ethernet ports on your NAT/Firewall/Router box. A Sun Ultra 5 running OpenBSD with a quad fast ethernet card would work great.

    Have your NAT box run three dhcp client instances to get IPs on all three interfaces, and have it run NAT for a private network on the back.

    The last remaining part of the puzzle is having the gateway loadbalance the three available default routes per connection stream, either round-robin or by utilization.

    Hopefully someone will reply with a pre-shink-wrapped answer to that part, and preferably on OpenBSD since I already mentioned it, but I guess ultrapenguin could work too :)
    • yay, comrades in arms. i was trying to find a solution for this awhile back with my openbsd box. i figured i could hook up my cable modem and my neighbor's dsl for a) a fatter pipe, but mostly b) reliability--in case one of the services goes down.

      The last remaining part of the puzzle is having the gateway loadbalance the three available default routes per connection stream, either round-robin or by utilization.

      and availability :)
    • I have adsl and was wondering if it would be possible to purchase a second dsl modem and use the same telephone line that my first dsl modem is using in order to have two dsl modems online at the sametime. Would this be possible?

      • Probably not - a DSL connection can share a line with voice service, but I'm pretty sure that that two dsl modems won't co-exist nicely on the same line. Seeing as even a single DSL connection is more than enough for a household in terms of average bandwidth use throughout the month - and most people want to aggregate just for occasional peaks, you should probably share with neighbors.

        Do the Multi-nat aggregate above between you and your neighbors DSL (as many neighbors as you can get). By pooling your bandwidth assets, you're all paying the same as you used to for regular DSL service, but you all get a much higher peak bandwidth, at least for multiple streams (You'll be limited to a single DSL worth of bandwidth for one download, but if you download several things in parallel you reap benefits).

        To avoid disputes over bandwidth usage, you could set up some shaping software on the nat box to gaurantee a minimum pipe to each neighbor even when someone else is trying to hog it all.
  • Possibility (Score:4, Informative)

    by Laverda ( 599376 ) on Thursday August 08, 2002 @09:18AM (#4032196)
    It seems possible to use a linux (or my preference -- OpenBSD) to NAT one or more internal addresses and round-robin each outgoing TCP connection from the NAT box -- alternate them between your two separate external addresses. Should be a pretty simply change to OpenBSD's pf NAT code -- if it isn't already there. Perhaps this could get you some higher incoming speeds? Maybe some coding here -- but it seems reasonable. Your internal machines should not care from which ADSL interface the traffic comes through since it's being NATed anyway. You just won't be able to load balance a single TCP connection.....
    • Right, it is possible to cause both ends to round robbin. My guess would be since this is ADSL that your more worried about download speeds. If your connections are both from the same ISP simply tell them what you want, if they play stupid and say it can't be done tell them you need both lines connected to the same router on their end(the same cisco, redback, assured access, whatever they use) and that you want the same IP addresses assigned to each account. Then tell them you want 2 default routes from them to you, AND that they MUST be weighted equally. There, problem solved...

      I've done this on both redback and cisco routers MANY times... usually for added reliability over 2 lines, the added bandwith is just a bonus. :-)
  • by Khazunga ( 176423 ) on Thursday August 08, 2002 @09:48AM (#4032396)
    If you really want to unify the various pipes into one big fat pipe, you'll need software on both ends. The software can act on any layer of the network stack, and unify the bandwidth for the layers above.

    This would tipically be done on the data-link layer, but can also be done at the IP level.

    If you can't change the software on the other end, you'd have to do the unification at the application layer. It depends on the application. Ex: for HTTP, you can balance the requests over the lines. When the size is known, you can do partial requests and balance these along the lines; for FTP, do PART requests for the pieces of the file. Expose a proxy for each application protocol. Not all applications can be adapted to take advantage of the multiplexing, however.

  • by crow ( 16139 ) on Thursday August 08, 2002 @10:22AM (#4032560) Homepage Journal
    Outgoing packets can be sent out either connection. Unless there's some really paranoid packet filtering going on at your ISP, outgoing packets are routed without any concern for the source IP, so there's no theoretical reason why you can't have 100% load balancing across your connections for outgoing traffic.

    Incoming packets are routed by your ISP to a particular IP address. That address is normally tied to a particular physical connection. Hence, you have very little ability to load balance. All hope is not lost, though. If you are load-balancing outgoing connections, then connections that you establish will be randomly distributed between your physical connections, giving an approximate load balancing. For incoming connections, you can use DNS to list multiple IP addresses for your hostname, allowing some load balancing across the connections.

    Now the exact software configuration to acheive what is theoretical possible is a good question; I don't know.
    • Unless there's some really paranoid packet filtering going on at your ISP, outgoing packets are routed without any concern for the source IP

      Restating the obvious...

      Of course this won't work, because due to the correctly paranoid packet filtering going on at your ISP, outgoing packets with an incorrect IP address as source address will be dropped at the soonest possible opportunity.

      Just belabouring the point that there is a distinct problem with the lowering of the barriers of entry for the internet. The twits and heathens are coming from the bushes again...

      • Of course this won't work, because due to the correctly paranoid packet filtering going on at your ISP, outgoing packets with an incorrect IP address as source address will be dropped at the soonest possible opportunity.

        The most likely setup in this case is two DSL lines from the same ISP. Hence, the source IP will be from a valid internal IP address. Most likely, the filtering that the ISP has in place is at a slightly higher level in the network where it can't tell the difference.

        Of course, that's just a guess, and you'll only be able to find out by testing it. If you have a box outside the ISP where you can monitor packets, then send it ping packets that are configured with a wrong source IP, but within the ISP's network. See if they get through. (I'm not sure what tool to use to do this; I happen to be looking for a packet generator to see if I can send unprompted ping-responses back through a firewall; I'm sure there's a good packet-generator program out there.)
    • No, ISPs that don't do ingres filtering (filtering out packets that are not from their internal pool of IP addresses) need to be shot. They're mostly to blame for any IP spoofing that still goes on.

      And the ISPs that I've been asking will never allow two links into the same house. None of them, so using the same IP address on two different ADSL or two different cable modems is not possible.
      • I actually know someone who has two cable modems because he didn't get enough bandwidth with just one, so I assumed that the question was about two DSL links from the same ISP. If they're with different ISPs, then you're right, you can't load-balance outgoing connections on a per-packet basis, only on a per-connection basis. (Unless one ISP isn't filtering, but let's hope not; I have no idea how common such filtering really is.)
  • I've thought that something like this may work out if you could get a place to terminate VPN pipes. Use some load balancing routing protocol to get to your term point over your two lines and you're there.
    • I've thought similar things, but I didn't find an ISP that sold that sort of service. I needed a couple dozen IP addresses an AUP that allowed resale of services, since I sometimes resold bandwidth and web hosting. I hardly do any commercial stuff now, but I want to keep the option open.

      I looked a couple years ago. Since then I moved out of DSL range. I'm stuck in colo mode.

      There's not much advantage if any to service via VPN over service via colo. So I'm not willing to pay much of a premium for the service.

      Mostly I want it because it would be cool. Getting moderate bandwidth by aggregating a few crappy connections is somewhat cooler than making a Beowolf cluster out of a few crappy systems. My idea of cool is different than most people.

  • by frankske ( 570605 ) <slashdot@f[ ]kbruno.be ['ran' in gap]> on Thursday August 08, 2002 @11:35AM (#4033082) Homepage
    You just create your internal network, and as a router you get a litle linux box with (eg) 3 NICs in. One NIC goes to the internal network, the other 2 each to an adsl modem. You then read the Linux Advanced Routing & Traffic Control HOWTO [lartc.org]. Chapter 10 is what you want to do ...
  • As stated by several earlier posts, true aggregation is not possible without hardware and software/firmware at both ends of the link. This is not an IP or layer three solution. It must be done at a lower level. But, from a purely technical, if only theoretical stand point, it is possible.

    A few years ago, while working for one of the biggest network equipment vendors, I proposed this very technology. The proposal would use a variant of Multilink PPP for xDSL connections, I called it MPPPoE since the most immediate application would have been PPP over Ethernet ISPs. The plan was reviewed and determined to be technically sound as well as simple(read inexpensive) to implement in that vendors hardware offerings. However, the marketing division saw only a very limited market for this and the idea was abandoned due to "lack of interest".

    What I'd like to know is if there are any vendors or more importantly, ISPs that are offering such service today. Was marketing right? I was sure that I had come up with a winner.
  • Good Google Thread (Score:4, Informative)

    by fatbitch ( 187319 ) on Thursday August 08, 2002 @01:58PM (#4034249) Homepage
    I was looking into this recently and though of posting exactly the same ask slashdot.

    Here [google.com] is the most useful Usenet thread I found. It describes using multiple ethernet connections equalised as one connection..not round robin balanced as most other solutions seem to employ.

    If you are using PPP links check out eql, if (like me) you want to use broadband routers, eql will not do it, as far as I can see.
  • ISB Pro800 Turbo (Score:4, Informative)

    by qurob ( 543434 ) on Thursday August 08, 2002 @02:38PM (#4034492) Homepage
    Info [tigerdirect.com]


    CHECK THIS OUT, 2 DSL\Cable lines into 1 BOX !

    The ISB Pro800turbo is Nexland's flagship. It is the only box of its kind to feature dual modem ports faster browsing speeds by load balancing two broadband accounts. Mix, Cable, DSL, SDSL and/or T1 connections. Auto-Failover between ports.

    The 8-port switch supports up to 253 computers making it easy to set up a small network in a snap. The Pro800turbo also contains Nexland's proprietary technology which allows unlimited IPsec tunnels over NAT.


    Looks like it'd be alright...Haven't personally used it, but for $379 it can't be all that bad.
  • Ok guys, here in Oz, a personal adsl a/c is heaps cheaper than a business adsl a/c. The difference is that with personal u have dynamic ip, plus u need to authenticate via pppoe.

    Anyway, the biggest problem we have is limited uplink bandwidth. So want I think is the best is use the business link mostly for email/other important traffic. Then I will use the personal link for all other traffic.

    The real question is, can this be easily acheived with a linux gateway?


  • (as it is in the UK for cable and A/RDSL?

    Which means both your lines are going to be sharing the bandwidth, like you do with the rest of the street.

    So you can only do what you're trying to do if:
    You can get uncontended lines, e.g. lines of different DSLAMs, or one ADSL, one cable, etc.

    Dom

Real Users know your home telephone number.

Working...