Kyle McDonald wrote:
> Hi all,
> 
> I'm sure there's a technical reason why it can't be done (I imagine it 
> would have been if possible.) but I'd love to educate myself on what the 
> reason is why LACP Load balancing doesn't have a 'round-robin' option in 
> addition to the L2,L3,L4 src/dst options it has now?
> 
> It seems to me that sending each new packet out the least recently used 
> interface would be a useful option for distributing the load accross the 
> aggregated interfaces? Why can't this be done?
> 
> Right now I'm watching (with dladm show-aggr -s -i 5) a large FTP of 
> several 4GB ISO's. Since L3/4 src/dst load balancing is in use on both 
> machines, each time FTP starts a new file it picks a new port, and that 
> generally means that LACP picks a new interface, but since FTP is only 
> sending 1 file at a time, LACP is only keeping 1 interface going at a time.
> 
> Wouldn't it help if each new packet were sent down a new interface in a 
> round robin pattern?
> 
> What am I missing?

Hi Kyle,

The IEEE 802.3ad link aggregation spec requires preserving the "temporal 
order" of packets.  Using a round robin policy would violate that.

No doubt this is to avoid performance bottlenecks.  SunTrunking has a 
round robin policy (which predates the IEEE spec).  It worked okay for 
100Mb/sec aggregations and was used quite a bit then.  In the the 
gigabit world  the results are quite different.  When the data rate 
nears 1Gb/sec, the overhead of "re-ordering" incoming data becomes a 
serious bottleneck - throughput never increases (frequently goes down). 
  More CPU utilization with less throughput - not a winning combination.

So, round robin was rightly avoided with "Native Link Aggregation" 
(dladm).

Cheers,
- Neil
_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to