Agrégation de liens

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Une application de l'agrégation de liens.

L'agrégation de liens est une notion de réseau informatique décrivant le regroupement de plusieurs ports réseau comme s'il s'agissait d'un seul. Le but est d'accroitre le débit au-delà des limites d'un seul lien, et éventuellement de faire en sorte que les autres ports prennent le relai si un lien tombe en panne (redondance).

Suivant le contexte, on peut rencontrer la notion d'agrégation de liens sous d'autres appellations : Shortest Path Bridging, trunk Ethernet, EtherChannel, NIC teaming, port channel, port teaming, port trunking, link bundling, multi-link trunking (MLT), NIC bonding, network bonding, bonding, network fault tolerance (NFT)…

L'agrégation de liens est le plus souvent mise en place entre les ports de commutateurs Ethernet ou entre les cartes Ethernet d'ordinateurs sous Linux. Toutefois, l'agrégation est un concept général qui peut être implémenté dans chacune des trois couches inférieures du modèle OSI. Ainsi, on peut agréger des liens CPL sur le réseau électrique (p. ex. IEEE 1901). Sur un réseau sans fil (p. ex. IEEE 802.11), un équipement peut combiner plusieurs plages de fréquence en une seule, qui sera plus étendue. En couche 2, en plus de l'agrégation de liens Ethernet, on peut agréger par exemple des liens longue distance PPP avec multilink PPP. En couche réseau (couche 3), on peut envoyer des paquets IP en les envoyant tour à tour sur différentes routes soit avec la méthode du tourniquet, soit en fonction d'une valeur de hachage de différents champs contenus dans le paquet IP.

Les interfaces agrégées peuvent partager une même adresse logique (p. ex. MAC ou IP) ; au contraire, on peut faire conserver à chaque interface sa propre adresse.

Ethernet[modifier | modifier le code]

La plupart des implémentations sont aujourd'hui conformes à la clause 43 de la norme Ethernet IEEE 802.3-2005, plus souvent rencontrée sous le nom IEEE 802.3ad (nom du groupe de travail). Depuis, la spécification de l'agrégation de lien dispose d'une norme indépendante : IEEE 802.1AX[1]. EtherChannel est une implémentation propriétaire de Cisco très proche de 802.3ad[2],[3].

Description générale[modifier | modifier le code]

L'agrégation de liens répond à deux problèmes dans les réseaux Ethernet :

  • la limitation en bande passante entre deux équipements ;
  • le manque de redondance des liens.

Évolution de la bande passante[modifier | modifier le code]

Les besoins en bande passante n'évoluent pas de manière linéaire. Historiquement, les débits disponibles en Ethernet ont augmenté d'un facteur 10 à chaque génération (10 Mbit/s, 100 Mb/s, 1 000 Mb/s, 10 000 Mb/s). Si l'on se trouve proche d'un seuil, la seule solution consistait à migrer vers la nouvelle génération, le plus souvent avec un coût prohibitif.

La solution alternative, introduite par la plupart des constructeurs réseaux au début des années 1990, consiste à associer deux liens Ethernet physiques en un lien logique via le « Channel Bonding ». La plupart de ces solutions requièrent une configuration manuelle.

Renforcement de la disponibilité[modifier | modifier le code]

La connexion de deux équipements via un lien implique trois points individuels de défaillance : les deux ports et le lien lui-même, que ce soit dans le contexte d'un raccordement d'un ordinateur à un commutateur, ou dans le contexte de connexion de deux commutateurs.

Plusieurs connexions physiques peuvent être mises en place, cependant, beaucoup de protocoles de niveaux supérieurs n'ont pas été conçus de manière à basculer de manière totalement transparente en cas de dysfonctionnement.

Répartition des données sur les différents liens[modifier | modifier le code]

Gestion automatique des agrégats de liens[modifier | modifier le code]

Dans le domaine des agrégations de liens, un protocole de configuration automatique permet à plusieurs équipements de gérer dynamiquement des agrégats de liens de manière cohérente. Les principales fonctionnalités sont les suivantes :

  • détection des équipements connectés utilisant le même protocole de configuration automatique ;
  • découverte des liens physiques redondants et configurés de manière identique (vitesse, duplex...), entre les deux équipements ;
  • groupement logique de ces liens en un lien logique ;
  • détection automatique des liens morts et mise à jour des groupements de liens.

Parmi les différents protocoles existant, le principe de fonctionnement est similaire. Un équipement va :

  1. émettre sur l'ensemble des ports, des paquet contenant les informations requises ;
  2. recevoir sur ces ports des paquets de même type provenant des équipements raccordés ;
  3. détecter les liens redondants entre le point d'origine et l'autre équipement (le second équipement utilisant le protocole fera de même) ;
  4. créer un agrégat cohérent avec l'autre équipement en prenant en compte les liens détectés à l'étape précédente.

Une fois que le protocole aura convergé vers un état stable, les équipements continueront d'émettre régulièrement leurs paquets de configuration automatique, ceci afin qu'ils détectent, par l'absence de réception de paquet sur un port, un lien « mort ». À ce moment, ils mettront à jour l'agrégat concerné afin de ne plus utiliser le lien mort.

Le principal avantage de la configuration automatique des agrégats par rapport à la configuration manuelle réside dans la détection de liens morts. Via une configuration manuelle, dans certains cas l'interface de raccordement, le lien mort ne passera pas à « down » en raison de la présence d'un autre équipement, passif, entre les deux commutateurs. Seul l'utilisation de paquets de type « keep alive » permet de détecter une défaillance du lien. Sans cette détection, par le protocole d'agrégation, le lien serait toujours opérationnel et le commutateur continuerait d'émettre des données sur ce lien.

Link Aggregation Control Protocol (LACP)[modifier | modifier le code]

LACP est un protocole standardisé par l'IEEE et est implémenté par différents constructeurs. Il fournit un mécanisme permettant de contrôler le groupement de plusieurs ports physiques en un canal logique de communication.

Le principe de fonctionnement consiste à émettre des paquets LACP vers l'équipement partenaire, directement connecté et configuré pour utiliser LACP. Le mécanisme LACP va permettre d'identifier si l'équipement en face prend LACP en charge, et groupera les ports configurés de manière similaire (vitesse, mode duplex, VLAN, trunk de vlan, etc.)

Un équipement configuré pour utiliser LACP peut fonctionner en trois modes :

  • passif : l'équipement n'initiera pas de négociation LACP. Il répondra uniquement aux sollicitations des équipements « partenaires ».
  • actif : l'équipement initiera les négociations LACP.
  • on : l'équipement suppose que l'équipement partenaire est également dans ce mode et fera de l'agrégation de liens

Port Aggregation Protocol (PAgP)[modifier | modifier le code]

PAgP est un protocole propriétaire Cisco, de ce fait disponible sur les commutateurs Cisco ainsi que sur les équipements disposant de la licence adéquate. Son utilisation permet de faciliter et d'automatiser la configuration des agrégats de liens (EtherChannel chez Cisco) en échangeant les informations nécessaires entre les ports Ethernet, à la manière de LACP.

Un équipement configuré pour utiliser PAgP peut fonctionner en trois modes :

  • auto : négociation passive avec le second équipement
  • desirable : négociation active avec le second équipement
  • on : aucun protocole n'est utilisé, on suppose que le second équipement est configuré pour utiliser l'agrégation de liens.

Contraintes de déploiement[modifier | modifier le code]

Un seul et unique commutateur[modifier | modifier le code]

L'ensemble des ports physiques appartenant un groupement de liens doit se trouver sur un même et unique commutateur. Ceci laisse un unique point de défaillance : lorsque le commutateur rencontre un problème, l'ensemble des liens peut être touché.

Néanmoins la plupart des vendeurs ont défini des extensions propriétaires pour pallier cette contrainte : plusieurs commutateurs physiques peuvent être agrégés en un commutateur logique. Actuellement[Quand ?], l'IEEE n'a pas encore statué sur la standardisation de cette fonctionnalité.

Utilisation de liens homogènes[modifier | modifier le code]

Dans la plupart des implémentations, l'ensemble des ports d'une agrégation doivent être de même type (physiquement), par exemple tout en port cuivre (CAT-5E/CAT-6), tout en port optique multi-mode (SX), ou encore, tous les ports en optique mono-mode (LX). Cependant, le seul point que la norme IEEE requiert est que chaque lien soit en mode full-duplex et à une vitesse identique (10, 100, 1 000 ou 10 000 Mb/s).

Implémentations[modifier | modifier le code]

Sous Linux, la prise en charge de l'agrégation de liens par le noyau peut être compilée en dur ou sous la forme d’un module. Les liens agrégés sont présentés sous forme d'une interface réseau virtuelle par le système d'exploitation. Des utilitaires permettent de lancer des commandes pour grouper ou dégrouper des interfaces.

Cisco propose la technologie EtherChannel. La norme 802.3ad est en fait une version standardisée d'EtherChannel.

Modems RTC[modifier | modifier le code]

On peut agréger des liaisons temporaires sur le réseau téléphonique commuté.

xDSL[modifier | modifier le code]

Plusieurs lignes DSL peuvent être regroupées afin d'augmenter la capacité de la bande passante. Au Royaume-Uni par exemple, cette technique est utilisée dans les zones éloignées des centraux où le débit est trop faibles pour assurer un débit normal.

Wi-Fi[modifier | modifier le code]

  • Une variation propriétaire de 802.11g, la technologie « Super G », peut agréger deux canaux standard 802.11g à 54 Mbit/s pour obtenir 108 Mbit/s.
  • En IEEE 802.11n, un mode avec une plage de fréquences s'étendant sur 40 MHz est défini. Ce canal unique utilise deux bandes de 20 MHz adjacentes.

Notes et références[modifier | modifier le code]

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]