> I have an idea that this happens because the packets are comming out of
> order into the receiving node (i.e the bonding device is alternating
> between each interface when sending, and when the receiving node gets the
> packets it is possible that the first interface get packets number 0, 2,
> 4 and 6 in one interrupt and queues it to the network stack before packet
> 1, 3, 5 is handled on the other interface).
That is exactly what is happening. Packets are being reordered.
Welcome to one of the flaws of round-robin trunking. :-)
> If this is the case, any ideas how to fix this...
Don't use round-robin, choose the output device based upon
hashing of some bits in the IP/TCP headers :-)
You won't get 2Gb/sec for a single TCP stream, but you will
for 2 or more.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to firstname.lastname@example.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/