[CentOS] bonding theory question

Sat Sep 6 16:15:11 UTC 2008
Filipe Brandenburger <filbranden at gmail.com>

On Sat, Sep 6, 2008 at 11:57, Mag Gam <magawake at gmail.com> wrote:
> Suppose data is being pushed out, it will go with 1st NIC and when it
> gets overloaded it will use 2nd NIC.

No. If you are using "balance-rr", one packet will go through the 1st
NIC, and the next packet will go through the 2nd one. That's what "rr"
(round-robin) means.

> Similar to the push, the pull will be very similar. The data gets
> pulled and the bonding driver will assemble the packets together? Does
> this sound right?

Actually this will not be determined by the bonding driver, it will be
determined by the switch that is actually "pushing" the packets. The
bonding driver will only make it look like the packets are coming from
one (bonded) interface only.

How the switch will behave depends on its configuration. It may be
configured to send all the data through one of the interfaces only to
balance through both of them using round-robin or something else.

You should try to read this, it's very complete:
/usr/share/doc/iputils-*/README.bonding

Also, if your switch supports it, you should try to use the 802.3ad
mode (mode=4) since that will probably give you the best results with
bonding (in terms of load balancing and fault tolerance).

HTH,
Filipe