[CentOS] Bonding performance question

Tue Jan 11 16:23:37 UTC 2011
James Pearson <james-p at moving-picture.com>

lhecking at users.sourceforge.net wrote:
>>I guess you need to look at the bonding src code - looks like it is in 
>>drivers/net/bonding/bond_main.c - for CentOS 5 it is:
> 
>  
>  C xor is bitwise.
> 
>  I did a bit of scripting and found that the algorithm seems much more
>  sensitive to port numbers than IP addresses. Not that iperf gives much
>  control over those, it looks like the client port numbers are picked at
>  random. As a result, I would expect to repeat this test on the same set
>  of clients, say, hundreds of times, and maybe find a small number of
>  cases where all interfaces are utilised.

You could use xmit_hash_policy=layer2+3 - which just uses MAC and IP 
addresses (which you do have more control over) - and see if you can 
pick a mix of IP/MAC addresses that would result in all four interfaces 
  being used (theoretically) - and see if it matches reality?

James Pearson