Description : Nous allons voir ce qui se cache derrière un EtherChannel Cisco.
Rappel de ce qu’est un EtherChannel :
Un EtherChannel ou aggrégat de lien en Français, permet d’aggréger plusieurs liens physique pour n’en former qu’un logique. Cela permet “d’augmenter la bande passante”.
Fonctionnement de l’EtherChannel :
Schéma de répartition :
On voit bien que les EterChannels ayant un nombre de ports impaires, la répartion n’est pas symétriques.
Description de la répartition :
La répartition s’effectue sur le résultat d’un hash à 8 valeurs possible (0 à 7) qui se dépend de la méthode de load balancing utilisée. Le résultat de ce hash et appelé RBH (Resultat Bundle Hash) qui est propriétaire Cisco.
Nous pouvons voir le résultat directe de la répartition via certaines commandes qui diffèrent d’un modèle à l’autre :
!!!Attention!!! dans un VSS, un etherchannel de type MEC (Multi-chassis EtherChannel) privilégie le port de sortie qui est sur le même switch que le port d’entrée.
Cela a aussi un impact lors de la perte de liens sur un switch, voici un exemple :
Nous allons comprendre comment le port est choisi, il faut juste partir du principe que le RBH nous est fourni (car son algorithme est propriétaire et c’est peut être pas interessant à calculer).
Nous prennons dans un premier temps un EtherChannel sur 2 ports G3/2 et G3/3.
Informations sur l’EtherChannel :
Les points à regarder sont, l’association du champ Load et Port et la valeur du champ Load.
Il faut ensuite convertir les valeurs héxadécimales de Load en binaire :
Pour le port G3/2 qui a la Load 55, les bits 6, 4, 2, 0 matchent. Les RBH ayant une valeur de 6, 4, 2, 0 passerons pas le port G3/2.
Pour le port G3/3 qui a la Load AA, les bits 7, 5, 3, 1 matchent. Les RBH ayant une valeur de 7, 5, 3, 1 passerons pas le port G3/3.
On voit aussi que le champ No of bits indique le nombre de bits qui matchent.
Vérifications :
Exemple avec un EtherChannel de 3 ports :
Convertion du champ Load en binaire :
On voit bien que la répartion est inégale entre les différents port car les ports G3/1 et G3/2 matchent 3 bits alors que le port G3/3 n’en matche que 2 bits.