L’EtherChannel est une technologie qui permet de combiner plusieurs liaisons Ethernet physiques pour créer une seule liaison logique. Cela permet d’augmenter la bande passante et de fournir une redondance en cas de défaillance d’un lien. Voici un aperçu complet de l’EtherChannel.
L’EtherChannel, également appelé agrégation de liens, est une technologie développée par Cisco qui permet de regrouper jusqu’à 8 ports Ethernet (dans la plupart des implémentations) en une seule liaison logique. L’idée est d’augmenter la bande passante entre deux commutateurs, routeurs ou serveurs.
Dans cette première configuration, nous avons deux commutateurs Cisco interconnectés via quatre liens de 100 Mbps chacun. Cependant, seulement un de ces liens est actuellement actif et les trois autres restent inutilisés. Cela signifie que la bande passante maximale disponible entre ces deux commutateurs est limitée à 100 Mbps. Les autres liens servent de secours en cas de défaillance du lien actif, mais ils ne sont pas utilisés activement pour le transfert de données tant que le lien principal est opérationnel. Cette architecture peut présenter des inconvénients en termes d’utilisation optimale des ressources, car la bande passante totale potentielle de 400 Mbps (fournie par les quatre liens) n’est pas exploitée.
Dans la seconde configuration, une approche plus optimisée est adoptée. Les deux commutateurs Cisco sont toujours interconnectés par les mêmes quatre liens de 100 Mbps. Cependant, cette fois-ci, la technologie EtherChannel a été mise en œuvre. Grâce à EtherChannel, les quatre liaisons sont regroupées en un seul “channel-group”, ce qui permet d’utiliser l’ensemble de la bande passante cumulée, soit 400 Mbps. Cette configuration garantit non seulement une utilisation efficace des liaisons, mais offre également une résilience élevée. Si un des liens venait à échouer, les trois autres continueraient de fonctionner, assurant une continuité de service sans perturbation notable. Cette architecture est nettement préférable pour maximiser à la fois la performance et la fiabilité.
Switch(config)# interface range FastEthernet 0/1 -4 Switch(config-range)# channel-group 1 mode on Switch(config-range)# exit Switch(config)# interface port-channel 1 Switch(config-if)# description VERS_SWITCH_B Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config)# interface range FastEthernet 0/1 -4 Switch(config-range)# no ip address Switch(config-range)# channel-group 1 mode on Switch(config-range)# exit Switch(config)# interface port-channel 1 Switch(config-if)# description VERS_SWITCH_B Switch(config-if)# ip address X.X.X.X X.X.X.X
Switch(config)# interface range FastEthernet 0/1 -4 Switch(config-range)# channel-protocol pagp Switch(config-range)# channel-group 1 mode [ Desirable | Auto ] Switch(config-range)# exit Switch(config)# interface port-channel 1 Switch(config-if)# description VERS_SWITCH_B Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config)# interface range FastEthernet 0/1 -4 Switch(config-range)# no ip address Switch(config-range)# channel-protocol pagp Switch(config-range)# channel-group 1 mode [ Desirable | Auto ] Switch(config-range)# exit Switch(config)# interface port-channel 1 Switch(config-if)# description VERS_SWITCH_B Switch(config-if)# ip address X.X.X.X X.X.X.X
Switch(config)# interface range FastEthernet 0/1 -4 Switch(config-range)# channel-protocol lacp Switch(config-range)# channel-group 1 mode [ Active | Passive ] Switch(config-range)# exit Switch(config)# interface port-channel 1 Switch(config-if)# description VERS_SWITCH_B Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config)# interface range FastEthernet 0/1 -4 Switch(config-range)# no ip address Switch(config-range)# channel-protocol lacp Switch(config-range)# channel-group 1 mode [ Active | Passive ] Switch(config-range)# exit Switch(config)# interface port-channel 1 Switch(config-if)# description VERS_SWITCH_B Switch(config-if)# ip address X.X.X.X X.X.X.X
Après avoir configuré un EtherChannel, vous pouvez vérifier son état et ses membres avec la commande:
Switch# show etherchannel summary
Le “Load Balancing” (équilibrage de charge) dans le contexte de l’EtherChannel est le processus par lequel un switch ou un routeur répartit le trafic sur les différentes liaisons physiques qui composent l’EtherChannel. Le but est de maximiser l’utilisation de la bande passante sur tous les liens, évitant qu’un seul lien soit saturé tandis que les autres sont inactifs.
L’équilibrage de charge repose sur un algorithme de hachage. Cet algorithme prend en compte certains détails des paquets entrants, tels que les adresses MAC source et destination, les adresses IP source et destination ou les ports TCP/UDP source et destination. En fonction des détails qu’il analyse et de l’algorithme utilisé, il décide quel lien physique utilisé pour transmettre le paquet.
Pour équilibrer la charge sur les interfaces physiques incluses dans l’EtherChannel, nos commutateurs peuvent distribuer les trames à transmettre en se basant sur plusieurs critères :
La méthode d’équilibrage de charge ce modifie de la façon suivante :
Switch(config)# port-channel load-balance src-dst-ip
Vous pouvez vérifier l’équilibrage de charge avec la commande :
Switch# show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-dst-mac EtherChannel Load-Balancing Addresses Used Per-Protocol: Non-IP: Source XOR Destination MAC address IPv4: Source XOR Destination MAC address IPv6: Source XOR Destination MAC address
En conclusion, l’équilibrage de charge dans EtherChannel est un moyen d’optimiser l’utilisation de la bande passante dans un groupe de liens. Bien que ce ne soit pas parfait, avec une configuration appropriée, cela peut grandement améliorer les performances réseau.
L’EtherChannel est une technologie puissante qui permet d’optimiser la bande passante, d’offrir une redondance et d’équilibrer la charge entre plusieurs liens physiques. Il est essentiel de s’assurer que tous les ports d’un EtherChannel ont des paramètres identiques et que la configuration est cohérente des deux côtés pour garantir un fonctionnement optimal.