# EtherChannel

EtherChannel est une technologie d'agrégation de liens utilisée principalement sur les commutateurs de Cisco. Elle permet d'assembler plusieurs liens physiques Ethernet en un lien logique. Le but est d'augmenter la vitesse et la tolérance aux pannes entre les commutateurs, les routeurs et les serveurs. Un lien EtherChannel groupe de deux à huit liens actifs 100 Mbit/s, 1 Gbit/s et 10 Gbit/s, plus éventuellement un à huit liens inactifs en réserve qui deviennent actifs quand des liens actifs sont coupés. EtherChannel est principalement utilisé sur la dorsale du réseau local, mais on peut aussi l'utiliser pour connecter des postes d'utilisateurs.
La technologie EtherChannel a été inventée par la société Kalpana au début des années 1990. Cette société a ensuite été acquise par Cisco Systems en 1994. En 2000, l'IEEE a publié le standard 802.3ad, qui est une version ouverte de EtherChannel.

## Fonctionnement

EtherChannel peut être utilisé sur des liens cuivre en paire torsadée aussi bien que sur fibre optique monomode et multimode (en fait, sur toutes les interfaces définies dans le cadre du standard IEEE 802.3). Toutes les interfaces groupées doivent cependant fonctionner à la même vitesse. Comme EtherChannel ne nécessite pas de câblage spécial, il permet de réexploiter des infrastructures existantes.
Un lien EtherChannel a plusieurs avantages sur un simple lien Ethernet, le plus recherché étant sans doute la bande passante. Lorsque l'on utilise le maximum de 8 ports actifs, on obtient par exemple 8 Gbit/s à partir de liens à 1 Gbit/s. On n'obtient toutefois pas toujours ce débit maximal. En effet, il existe différentes stratégies d'équilibrage de charge, et en fonction des caractéristiques des échanges sur le réseau, les paquets pourront être plus ou moins bien répartis sur les différents liens physiques.
Tous les liens participant à EtherChannel partagent la même adresse de couche 2 (adresse MAC). Cela rend EtherChannel transparent aux protocoles réseau, aux applications et aux utilisateurs, car ils ne voient qu'une seule connexion logique et n'ont pas connaissance des différents liens physiques.
EtherChannel répartit les paquets sur les différents ports actifs. Pour un paquet donné, le port est choisi en utilisant un algorithme de hachage propriétaire de Cisco, qui transforme les adresses MAC source et destination, les adresses IP ou les numéros de port TCP ou UDP en un nombre entre 0 et 7. La table qui suit montre comment ces 8 nombres sont distribués parmi les deux à huit ports physiques. En admettant que les données en entrée soient véritablement aléatoires, on obtient une répartition de charge équitable dans les configurations à 2, 4 ou 8 ports, tandis que les autres configurations mènent à une répartition inéquitable des échanges.
| | Nombre de liens physiques | Nombre de liens physiques | Nombre de liens physiques | Nombre de liens physiques | Nombre de liens physiques | Nombre de liens physiques | Nombre de liens physiques |
| Numéro de lien | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
| 1 | 1 | 2 | 2 | 2 | 2 | 3 | 4 |
| 2 | 1 | 1 | 2 | 2 | 2 | 3 | 4 |
| 3 | 1 | 1 | 1 | 2 | 2 | 2 |
| 4 | 1 | 1 | 1 | 1 | 2 |
| 5 | 1 | 1 | 1 | 1 |
| 6 | 1 | 1 | 1 |
| 7 | 1 | 1 |
| 8 | 1 |
La tolérance aux pannes est un autre aspect essentiel de EtherChannel. Si un lien tombe, la charge est automatiquement redistribuée sur les liens restants. Ce processus de remise sur pied prend moins d'une seconde et est transparent aux applications réseau.

## EtherChannel et les autres protocoles de couche 2

Le protocole STP peut être utilisé avec EtherChannel. STP traite l'ensemble des liens agrégés comme un seul lien et envoie des BPDU sur l'un des liens physiques. Si l'on n'utilisait pas EtherChannel, STP couperait les liens redondants reliant les commutateurs jusqu'à ce que l'une des connexions ne tombe, ne permettant qu'un seul lien physique en fonction à la fois.
Dans le cas des VLAN, EtherChannel peut être configuré comme lien marqué pour les protocoles Cisco ISL ou IEEE 802.1Q (lien « trunk » en jargon Cisco). Si seul l'un des liens physiques regroupés par EtherChannel est configuré comme un lien marqué, l'ensemble de l'agrégat se comportera comme un lien marqué. VTP est aussi compatible avec EtherChannel.

## Configuration

Sur matériel Cisco, on configure EtherChannel à l'aide de commandes IOS ; sur un serveur, on le met en place à l'aide de pilotes spécialisés.
Il y a deux façons de configurer EtherChannel. La première est de procéder manuellement en saisissant une commande sur chaque port à agréger, des deux côtés de la liaison. La seconde est de laisser faire la configuration automatique, à l'aide de l'un des deux protocoles Port Aggregation Protocol (PAgP) et Link Aggregation Control Protocol (LACP).

## Matériel compatible

L'ensemble de la gamme des commutateurs Cisco Catalyst et des routeurs sous système IOS prend en charge EtherChannel.
Pour mettre en place EtherChannel entre un commutateur et un ordinateur, il faut des cartes réseau spéciales (photo), ou qu'EtherChannel soit pris en charge par le système d'exploitation de l'ordinateur. FreeBSD, par exemple, prend en charge EtherChannel avec LACP sur des cartes réseau standard.
On peut mettre en place plusieurs agrégats EtherChannel sur un même boîtier, le nombre dépendant du modèle. Les commutateurs Catalyst 6500 et 6000 prennent en charge un maximum de 64 EtherChannels.

## EtherChannel sur plusieurs commutateurs

Une limitation de EtherChannel est que l'ensemble des ports physiques d'un même agrégat doivent résider sur le même commutateur, si l'on met de côté le cas des commutateurs empilables, où ils peuvent être répartis sur plusieurs commutateurs de la pile.
Le protocole SMLT de Avaya supprime cette limitation en permettant aux ports physiques d'être répartis sur deux commutateurs dans une configuration en triangle, ou 4 commutateurs ou plus dans une configuration maillée. Le Virtual Switching System de Cisco permet de créer un « Multichassis EtherChannel » (MEC) fonctionnellement semblable au protocole DMLT de Avaya, puisqu'il permet d'agréger des ports appartenant aux différents commutateurs réunis en un même « commutateur virtuel ».

## EtherChannel et 802.3ad

Les protocoles EtherChannel et IEEE 802.3ad sont très semblables et accomplissent le même but. Il y a néanmoins quelque différences entre les deux :
* EtherChannel est un protocole propriétaire de Cisco, alors que 802.3ad est un standard ouvert
* EtherChannel nécessite de configurer précisément le commutateur, alors que 802.3ad n'a besoin que d'une configuration initiale
* EtherChannel prend en charge plusieurs modes de distribution de la charge sur les différents liens, alors que 802.3ad n'a qu'un mode standard
* EtherChannel peut être configuré automatiquement à la fois par LACP et par PAgP, tandis que 802.3ad ne peut l'être que par LACP