"The Linux kernel bonding module supports a number of
bonding types.
mode=1 (active-backup)
One slave interface is active at any time. If one interface fails,
another interface takes over the MAC address and becomes the active
interface. Provides fault tolerance only. Doesn't require special
switch support
mode=2 (balance-xor)
Tranmissions are balanced across the slave interfaces based on
((source MAC) XOR (dest MAC)) modula slave count. The same slave is
selected for each destination MAC. Provides load balancing and
fault tolerance.
mode=3 (broadcast)
Transmits everything on all slave interfaces. Provides fault
tolerance.
mode=4 (802.3ad)
This is classic IEEE 802.3ad Dynamic link aggregation. This
requires 802.3ad support in the switch and driver support for
retrieving the speed and duplex of each slave"