Table of Contents
EtherChannel
C'est le nom utilisé par Cisco pour désigner du bonding, channel bonding, trunk, port teaming, link bundling ou encore portchannel (choisissez le terme suivant le constructeur…), c'est à dire un agrégat de ports physiques en un port logique. On peut fusionner jusqu'à 8 interfaces de même nature (type, vitesse, duplex, VLAN, mode (access ou trunk)), pas nécessairement disposées sur le même module. En revanche ces modules doivent être “compatibles” ; certaines caractéristiques techniques (comme les tailles des buffers) peuvent empêcher la compatibilité des ports et découper l'etherchannel en deux : Po1A et Po1B par exemple.
Les avantages d'une agrégation de liens sont :
- augmentation de la capacité : addition globale (pas de machine à machine) de la bande passante de chaque lien (ex : 4 liens physiques à 100 Mbps ~= 1 lien logique à 400 Mbps).
- redondance d'interface : si un lien tombe le trafic est répartir sur ceux qui restent
- répartition de charge sur tous les liens de l'agrégat ; l'algorithme de répartition est configurable, par défaut c'est souvent adresse
MAC source XOR adresse MAC destination
ouadresse IP source XOR adresse IP destination
. Bien sûr le mode de load-balancing doit être adapté à l'environnement pour répartir au mieux les flux.
On l'utilise souvent pour les interconnexions de gros commutateurs, par exemple sur un backbone. Il est possible de créer un etherchannel de niveau 2 (switchport) ou de niveau 3 (IP). En cas Il n'est pas possible d'ajouter un port SPAN (monitoring) à un groupe etherchannel.
Les ports physiques d'un Etherchannel doivent avoir la même configuration ; l'idéal étant d'ajouter les ports vierges de toute configuration à un Etherchannel, puis de configurer l'interface etherchannel (PoX) qui répercutera les modifications sur tous les ports.
Configuration
On créer l'interface logique
Switch(config)#interface PortChannel1
On la configure comme une interface normale.
Pour chaque interface physique que l'on veut ajouter à l'etherchannel, on ajoute dans la conf :
Switch(config)#interface Gi0/1 Switch(config-if)#channel-group 1 mode active
Les différents protocoles
Il existe 2 protocoles de gestion d'agrégat : LACP (standard IEEE 802.3ad) et PAgP (propriétaire Cisco), dont la valeur ajoutée est principalement la détection de liens morts.
On peut spécifier le mode par :
active | Enable LACP unconditionally |
---|---|
passive | Enable LACP only if a LACP device is detected |
desirable | Enable PAgP unconditionally |
auto | Enable PAgP only if a PAgP device is detected |
on | Enable Etherchannel only |
Les modes active et desirable initient la négociation activement ; ils sont compatibles avec leurs pendants (resp. active et desirable) et leurs opposés (resp. passive et auto). En revanche 2 ports en mode passive ou auto ne fonctionneront pas ensembles, car aucune négociation ne sera initiée.
Le mode on désigne un etherchannel sans protocole de gestion (ni LACP ni PAgP) ; le port d'en face doit être lui aussi en mode “on”.
Load-balancing
On peut changer la méthode de répartition des flux sur les ports d'un etherchannel ; cela se fait globalement et donc affecte tous les etherchannels de l'équipement.
Exemple pour forcer la répartition par adresse IP source xor destination:
(config)#port-channel load-balance ? dst-ip Dst IP Addr dst-mac Dst Mac Addr dst-mixed-ip-port Dst IP Addr and TCP/UDP Port dst-port Dst TCP/UDP Port mpls Load Balancing for MPLS packets src-dst-ip Src XOR Dst IP Addr src-dst-mac Src XOR Dst Mac Addr src-dst-mixed-ip-port Src XOR Dst IP Addr and TCP/UDP Port src-dst-port Src XOR Dst TCP/UDP Port src-ip Src IP Addr src-mac Src Mac Addr src-mixed-ip-port Src IP Addr and TCP/UDP Port src-port Src TCP/UDP Port (config)#port-channel load-balance src-dst-ip
Vérification :
show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-dst-ip mpls label-ip EtherChannel Load-Balancing Addresses Used Per-Protocol: Non-IP: Source XOR Destination MAC address IPv4: Source XOR Destination IP address IPv6: Source XOR Destination IP address MPLS: Label or IP
show etherchannel summary Flags: D - down P - bundled in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 U - in use N - not in use, no aggregation f - failed to allocate aggregator M - not in use, no aggregation due to minimum links not met m - not in use, port not aggregated due to minimum links not met u - unsuitable for bundling d - default port w - waiting to be aggregated Number of channel-groups in use: 14 Number of aggregators: 14 Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 1 Po1(SU) LACP Gi8/27(P) Gi8/28(P) Gi8/29(P) Gi8/30(P) 2 Po2(SU) LACP Gi9/1(P) Gi9/2(P) 3 Po3(SU) LACP Gi7/5(P) Gi7/6(P) Gi7/7(P) Gi7/8(P) 4 Po4(SU) - Gi9/12(P) Gi9/13(P) Gi9/14(P) Gi9/15(P) 5 Po5(SU) LACP Gi8/47(P) Gi8/48(P) 6 Po6(SU) LACP Gi8/2(P) Gi8/10(P) Gi8/37(P) Gi8/38(P) Gi8/39(P) Gi8/40(P) Gi8/41(P) Gi8/42(P) 7 Po7(SU) LACP Gi8/31(P) Gi8/32(P) Gi8/33(P) 8 Po8(SD) LACP Gi8/13(D) Gi8/14(D) Gi8/15(D) Gi8/16(D) 9 Po9(SU) LACP Gi7/15(P) Gi7/16(P) 10 Po10(SU) LACP Gi9/6(P) Gi9/7(P) 11 Po11(SU) LACP Gi8/6(P) Gi8/7(P) 20 Po20(SU) LACP Te2/1(P) Te2/2(P) 22 Po22(SU) LACP Te2/3(P) Te2/4(P) 24 Po24(RD) -