I - Architecture traditionnelle Core, Aggregation, Access
6. Qu'est-ce que PAgP et LACP ?
LACP et PAgP, connus sous le nom EtherChannel, sont deux protocoles semblables, qui permettent l’agrégation de plusieurs liaisons physiques en vue de créer une seule liaison logique. L’utilisation de ces protocoles offre une redondance des liens physiques, mais également une augmentation de la bande passante. Ces protocoles sont précieux afin de mettre en place une infrastructure résiliente avec de larges bandes passantes.
EtherChannel est apparu pour la première fois au début des années 90 avec le protocole PAgP proposé par CISCO. Il faudra attendre les années 2000 pour que l’IEEE propose une version standardisée 802.3ad, qui offrira une compatibilité inter-constructeur. Bien que ces deux protocoles ne soient pas totalement identiques dans leur fonctionnement, leur objectif reste le même.
LACP utilise des messages Link Aggregation Control Data Units ou LACPDU en vue d’établir et de maintenir un échange d’informations, indispensable à la négociation des liens agrégés.
Les LACPDU sont composés de la manière suivante :
- Activity : Indique si le port est défini en mode actif ou passif.
- Timeout : Indique la durée avant que le lien ne soit inactif.
- Aggregation : Indique l’état de l’agrégation avec le partenaire.
- Synchronization : Indique l’état de synchronisation avec le partenaire.
- Collecting & Distributing : Indique la possibilité de recevoir et d’émettre les LACPDU.
- Defaulted : Indique si les valeurs utilisées sont les valeurs par défaut ou configurées par l’administrateur.
- Expired : Indique si l’agrégation a expiré ou non.
- Activity : Indique si le port est défini en mode actif ou passif.
- Timeout : Indique la durée avant que le lien ne soit inactif.
- Aggregation : Indique l’état de l’agrégation avec le partenaire.
- Synchronization : Indique l’état de synchronisation avec le partenaire.
- Collecting & Distributing : Indique la possibilité de recevoir et d’émettre les LACPDU.
- Defaulted : Indique si les valeurs utilisées sont les valeurs par défaut ou configurées par l’administrateur.
- Expired : Indique si l’agrégation a expiré ou non.
Les champs Actor sont remplis dès le premier échange LACPDU, contrairement aux champs Partner qui ne sont remplis qu’à partir du deuxième échange LACPDU. Les messages LACPDU sont ensuite échangés périodiquement et mis à jour en fonction des événements réseaux.
Les ports faisant partie de l’agrégation peuvent être configurés en deux modes :
Vous pouvez voir ci-dessous le tableau de négociation des agrégations de liens pour LACP :
| Port équipement A | Port équipement B | Agrégation LACP établie |
|---|---|---|
| Actif | Actif | Agrégation LACP établie |
| Actif | Passif | Agrégation LACP établie |
| Passif | Actif | Agrégation LACP établie |
| Passif | Passif | Aucune agrégation |
En plus du mode des ports, la fréquence d’envoi des messages LACPDU est un paramètre de configuration indispensable. Ce paramètre dispose de deux modes de configuration :
LACP offre deux grands modes de fonctionnalités avancées :
- MAC source : Cet algorithme se base sur l’adresse MAC source des paquets pour les répartir sur les liens. Cela peut être utile dans le cadre d’un réseau où un grand nombre de clients se connecte sur un nombre réduit de serveurs.
- MAC source : Cet algorithme se base sur l’adresse MAC de destination des paquets pour les répartir sur les liens. Dans le cadre d’un réseau où un nombre important de serveurs répondent à plusieurs clients, cet algorithme sera préféré.
- MAC source et destination : Comme son nom l’indique, c’est une fusion des deux algorithmes MAC source et MAC destination. Il est privilégié dans les LAN avec une grande variété de combinaisons de sources et de destinations, pour répartir la charge au mieux.
- IP source : Se base sur les IP sources, afin de répartir la charge entre les liens de l’agrégat. Il permet une répartition optimale dans un environnement où un grand nombre de clients cherche à atteindre un petit nombre de serveurs dans un autre réseau.
- IP destination : Se base sur les IP destinations, afin de répartir la charge. Son utilisation est recommandée dans les topologies disposant de plusieurs sous-réseaux où un nombre élevé de serveurs communique avec un nombre restreint de clients.
- IP source et destination : Se base sur les IP destinations, afin de répartir la charge. Son utilisation est recommandée dans les topologies disposant de plusieurs sous-réseaux où un nombre élevé de serveurs communique avec un nombre restreint de clients.
Pour s’assurer du bon fonctionnement de LACP, plusieurs conditions doivent être remplies. Les interfaces d’une agrégation de liens doivent toutes être dans le même mode de fonctionnement, soit Access , soit Trunk et affectées au même VLAN. De plus, les interfaces doivent toutes disposer de la même configuration physique, à savoir la même vitesse de liens et le même mécanisme de multiplexage. Il est également intéressant de noter que l’IEEE limite le nombre de liens physiques à 16 dont 8 actifs par agrégation. Une fois ces conditions remplies et la configuration effectuée, les paquets LACPDU vont être échangés : si les configurations sont cohérentes, l’agrégation devrait être établie.
PAgP fonctionne lui aussi via un échange de paquets dans l'objectif d’assurer l’agrégation des liens physiques. Les PAgPDU sont composés de la manière suivante :
- Slow Hello : Indique sur 1 bit la fréquence des paquets Hello.
- Auto Mode : Indique sur un 1 bit le mode de configuration du port, la valeur 1 représente le mode Auto et la valeur 0 le mode Desirable .
- Consistent State : Indique sur 1 bit si le port est actif (1) ou inactif (0).
- 0x00 : Le port ne peut pas apprendre les MAC.
- 0x01 : Le port peut apprendre les MAC en mode standalone uniquement.
- 0x02 : Le port peut apprendre les MAC en mode agrégé uniquement.
- 0x03 : Le port peut apprendre les MAC en mode standalone et agrégé.
Tout comme pour LACP, les champs Local (équivalent de Actor) sont remplis dès le premier échange PAgPDU, contrairement aux champs Partner qui ne sont remplis qu’à partir du deuxième échange PAGPPU. Les messages PAgPDU sont ensuite échangés périodiquement et mis à jour en fonction des événements réseaux.
Télécharger le paquet Wireshark PAGPDUA la différence de LACP, pour PAgP les ports de l’agrégation peuvent être configurés en trois modes :
Vous pouvez voir ci-dessous le tableau de négociation des agrégations de liens pour PAgP :
| Port équipement A | Port équipement B | Agrégation LACP établie |
|---|---|---|
| On | On | Agrégation forcée établie |
| On | Auto | Aucune agrégation |
| On | Desirable | Aucune agrégation |
| Auto | Auto | Aucune agrégation |
| Auto | Desirable | Agrégation PAgP établie |
| Desirable | Auto | Agrégation PAgP établie |
| Desirable | Desirable | Agrégation PAgP établie |
De la même manière que LACP, PAgP dispose de deux fréquences d’envoi des messages, Fast qui envoie un message toutes les 1 seconde et Slow qui envoie un message toutes les 30 secondes.
Globalement, les fonctionnalités avancées de PAgP sont semblables à LACP, avec l’intégration du Failover et le Load Ballencing.
De la même manière que LACP, le fonctionnement du protocole PAgP est conditionné par une correspondance du mécanisme de multiplexage et de la vitesse des interfaces. De même le mode de fonctionnement des interfaces doit être similaire, soit en mode Access soit en mode Trunk et affecté au même VLAN. De plus, le nombre de liens physiques est limité à 16 dont 8 actifs par agrégation. Une fois ces conditions remplies et la configuration effectuée, les paquets PAgPDU vont être échangés : si les configurations sont cohérentes, l’agrégation devrait être établie.
En dehors des modes de négociation plus nombreux sur PAgP, les deux protocoles permettent les mêmes fonctionnalités. La différence vient principalement du fait que LACP permet de profiter d’un renouvellement de matériel pour changer de fournisseur d’équipement de manière graduelle. En revanche, PAgP nécessitera un changement global en raison de sa compatibilité restreinte avec les équipements CISCO.
La sécurisation de ces deux protocoles présente des points communs, comme notamment le contrôle d’accès via des ACL et/ou la restriction Port Security basés sur les MAC. Afin de limiter les risques d’accès de périphériques non légitimes, leur sécurisation passe également par une bonne pratique de configuration. En effet, il faut toujours privilégier les modes Actif/Actif sur LACP et Desirable/Desirable sur PAgP. L’utilisation du mode Auto et/ou Passif, permet à un attaquant de simuler l’envoi de paquets Actif ou/et Desirable afin de perturber la stabilité et l’intégrité de l’agréation. Cela peut impliquer une perturbation de l’algorithme de répartition de charge, mais également une perturbation de la disponibilité via la désactivation de liens. De plus, la mise en place de la QoS peut limiter l’impact en cas de saturation d’un lien de l’agrégat.
LACP et PAgP peuvent être implémentés sur toutes les couches de l’architecture à 3 niveaux en fonction des besoins et des problématiques. En effet, ils pourront être implémentés pour la redondance et l’augmentation de la bande passante. Cependant, sur les couches Aggregation et Core , l’augmentation de la bande passante ne sera bien souvent pas la raison de son implémentation, du fait de l’utilisation de routeurs haut de gamme disposant de ports optiques 25, 50 ou 100 Go ne rendant pas nécessaire leur utilisation. La redondance de liaison reste intéressante sur toutes les couches de notre architecture.
Dans notre cas, nous allons mettre en œuvre ces deux protocoles pour interconnecter nos switch d’agrégation par paires, afin de s’assurer d’une redondance des liaisons physiques.