[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Extending shim6 to use multiple locator pairs simultaneously



On 21-mrt-2006, at 17:25, Scott Leibrand wrote:

In some mental modeling I've done so
far, the biggest problem I see in not using TCP congestion control on each
locator pair is in deciding how much traffic to send over each link.
I've actually worked on some stuff where we load balanced a bunch of  
traffic over several TCP sessions towards different destinations  
(where it didn't matter which part of the aggregate traffic ended up  
where), and the results were interesting. When you get the hang of  
it, it works pretty well, though. The key issue is that you feed data  
to the right session/path. If you don't, you run the risk of being  
limited by the slowest one, and have performance that's even worse  
than not bonding the paths.
When I think about this, this may not be all that easy if only the  
sending side knows about what we're doing. You probably need to use  
selective acknowledgments and you may still trigger fast retransmit  
often and take TCP processing at the receiver off of the fast path.
And you'd have to be really careful to make sure that the unmodified  
side doesn't see confusing RTT estimates.
I suppose you could use both links equally, which would allow you to use (# of links) * (the bandwidth of the slower link) rather than the sum of the
bandwidths of all the links.
But that's exactly what you don't want. What if you have a 10 Mbit  
link and a 100 Mbit link? Then using 10 Mbit over both gives you 20  
total, while the fast link alone can give you 100. What you really  
want is 110.