Linux bonding

Network interface bonding

In order to get bonding and vlan on network interface you need to install some packages :

apt-get install vlan ifenslave-2.6

Eth1 and eth0 aggregate ton bond0 to increase performance :

auto bond0
iface bond0 inet manual
       slaves eth0 eth1
       bond-mode 802.3ad
       bond-miimon 100
       bond-downdelay 200
       bond-updelay 200
       bond-lacp-rate fast
       arp_intervall 30

And with bridge over bonding :

auto vmbr0
iface vmbr0 inet static
       address 10.0.123.202
       netmask 255.255.255.0
       gateway 10.0.123.254
       bridge_ports bond0
       bridge_stp off
       bridge_fd 0

Vlan over bondig :

auto eth0.253
iface eth0.253 inet manual

auto eth1.253
iface eth1.253 inet manual

auto bond253
iface bond253 inet static
        address 192.168.253.11
        netmask 255.255.255.0
        bond-slaves eth0.253 eth1.253
        bond-mode active-backup
        bond-primary eth0.253
        bond_arp_ip_target 192.168.253.12
        bond_arp_interval 500
        bond_arp_validate 3
        up ip link set eth0.253 mtu 9000
        up ip link set eth1.253 mtu 9000
        up ip link set bond253 mtu 9000

Extras : bonding modes

Mode 0 : Round Robin , équilibrage de charge
        La transmission des paquets se fait de façon séquentielle sur chacune des cartes actives dans l'agrégat. Ce mode augmente la bande passante et gère la tolérance de panne.

Mode 1 : Active - passive
        Ce mode ne gère que la tolérance de panne. Si une des interfaces est désactivée, une autre du bond prend le relais.

Mode 2 : Balance xor
        Une interface est affectée à l'envoi vers une même adresse MAC. Ainsi les transferts sont parallélisés et le choix de l'interface suit la règle : (Adresse MAC de la source XOR Adresse MAC de la destination) modulo nombre d'interfaces.

Mode 3 : Broadcast
        Tout le trafic est envoyé par toutes les interfaces

mode 4 : 802.3ad
        Ce mode s'appuie sur la norme IEEE 802.3ad Dynamic link aggregation. Toutes les interfaces du groupe sont agrégées de façon dynamique, ce qui augmente la bande passante et gère la tolérance de panne.

Cela implique que le switch gère le 802.ad et les interfaces soient compatibles mii-tool et/ou ethtool.

mode 5 : balance-tlb
        Adaptive transmit load balancing : seule la bande passante en sortie est load balancée selon la charge calculée en fonction de la vitesse, ceci pour chaque interface. Le flux entrant est affecté à l'interface courante. Si celle-ci devient inactive, une autre prend alors l'adresse MAC et devient l'interface courante.

mode 6 : balance-alb
        Adaptive load balancing : ce mode inclut en plus du tlb un load balancing sur le flux entrant et seulement pour un trafic IPV4. L'équilibrage est réalisé au niveau ARP. Le module intercepte les réponses pour y réécrire l'adresse MAC de l'une des interfaces du bond tout en tenant compte des spécificiter du protocole ARP. La répartition entre les différentes interfaces, se fait de façon séquentielle ( round robin ).

Comments !