Mis à jour le 08/04/2023
5.0 Présentation
5.0.1 Pourquoi devrais-je suivre ce module?
Bienvenue au Concepts du Protocole STP!
Un réseau de couche 2 bien conçu dispose de commutateurs et de chemins redondants pour s’assurer que si un commutateur tombe en panne, un autre chemin vers un commutateur différent est disponible pour transférer les données. Les utilisateurs du réseau ne subiraient aucune interruption de service. La redondance dans une conception de réseau hiérarchique résout le problème d’un point de défaillance unique, mais elle peut créer un autre type de problème appelé boucles de couche 2.
Qu’est-ce qu’une boucle? Imaginez que vous êtes à un concert. Le microphone du chanteur et le haut-parleur amplifié peuvent, pour diverses raisons, créer une boucle de rétroaction. Ce que vous entendez est un signal amplifié provenant du microphone qui sort du haut-parleur, qui est ensuite repris par le microphone, amplifié plus loin et passé à nouveau à travers le haut-parleur. Le son devient rapidement très fort, désagréable, et rend impossible d’entendre de la musique réelle. Cela continue jusqu’à ce que la connexion entre le microphone et le haut-parleur soit interrompue.
Une boucle de couche 2 crée un chaos similaire dans un réseau. Cela peut se produire très rapidement et rendre impossible l’utilisation du réseau. Il existe plusieurs façons courantes de créer et de propager une boucle de couche 2. Le protocole STP (Spanning Tree Protocol) est conçu spécifiquement pour éliminer les boucles de couche 2 de votre réseau. Ce module traite des causes des boucles et des différents types de protocoles spanning tree. Il comprend une vidéo et une activité Packet Tracer pour vous aider à comprendre les concepts STP.
5.0.2 Qu’est-ce que je vais apprendre dans ce module?
Titre du module: Concepts du STP
Objectif du module: Expliquer comment le protocole STP permet la redondance dans un réseau de couche 2.
Titre du rubrique | Objectif du rubrique |
---|---|
Objectif du protocole STP | Expliquer les problèmes courants dans un réseau commuté redondant de couche 2. |
Fonctionnement du protocole STP | Expliquer comment STP fonctionne sur un réseau commuté. |
Évolution du protocole STP | Expliquer le fonctionnement du protocole Rapid PVST+. |
5.1 Objectif du protocole STP
5.1.1 Redondance dans les réseaux commutés de couche 2
Cette rubrique présente les causes des boucles dans un réseau de couche 2 et explique brièvement le fonctionnement du protocole spanning tree. La redondance est un élément indispensable de la conception hiérarchique pour éviter les points de défaillance uniques et prévenir l’interruption des services de réseau fournis aux utilisateurs. Si les réseaux redondants exigent l’ajout de chemins physiques, la redondance logique doit être également intégrée à la conception. Disposer de chemins physiques alternatifs pour que les données traversent le réseau permet aux utilisateurs de toujours accéder aux ressources de ce réseau, même en cas de perturbations au niveau du chemin. Toutefois, les chemins d’accès redondants dans un réseau Ethernet commuté peuvent entraîner à la fois des boucles physiques et logiques de couche 2.
Les réseaux locaux Ethernet nécessitent une topologie sans boucle avec un chemin unique entre deux périphériques. Une boucle dans un réseau local Ethernet peut provoquer la propagation des trames Ethernet jusqu’à ce qu’une liaison soit interrompue et rompt la boucle.
5.1.2 Protocole STP (Spanning Tree Protocol)
Le protocole STP est un protocole réseau de prévention des boucles qui permet la redondance tout en créant une topologie de couche 2 sans boucle. IEEE 802.1D est la norme IEEE MAC Bridging d’origine pour STP.
Cliquez sur Lecture dans la figure pour afficher l’animation sur STP.
STP Normal Operation
5.1.3 Recalcul de STP
Cliquez sur le bouton Lecture pour voir le recalcul de STP lorsqu’une défaillance se produit.
STP Compensates for Network Failure
5.1.4 Problèmes liés aux liaisons de commutateur redondantes
La redondance des chemins assure de nombreux services réseau, en évitant le risque d’avoir un point de défaillance unique. Lorsqu’il existe plusieurs chemins entre deux appareils d’un réseau ethernet et que le protocole STP n’a pas été implémenté sur les commutateurs, une boucle de couche 2 se produit. Une boucle de couche 2 peut entraîner l’instabilité de la table d’adresses MAC, la saturation des liaisons et une utilisation élevée de processeur sur les commutateurs et les terminaux, ce qui rend le réseau inutilisable.
Contrairement aux protocoles de couche 3, IPv4 et IPv6, l’Ethernet de couche 2 n’intègrent pas de mécanisme pour identifier et éliminer les trames prises dans une boucle infinie. IPv4 et IPv6 comprennent tous les deux un mécanisme qui limite le nombre de fois qu’un périphérique de réseau de couche 3 est autorisé à retransmettre un paquet. Un routeur décrémentera la TTL (Time to Live) dans chaque paquet IPv4, et le champ Hop Limit dans chaque paquet IPv6. Lorsque ces champs sont décrémentés à 0, un routeur abandonne le paquet. Les commutateurs Ethernet et Ethernet n’ont pas de mécanisme comparable pour limiter le nombre de fois qu’un commutateur retransmet une trame de couche 2. Le protocole STP a été développé spécifiquement comme mécanisme de prévention des boucles pour Ethernet de couche 2.
5.1.5 Boucles de couche 2
Sans STP activé, les boucles de couche 2 peuvent se former, provoquant une boucle infinie de trames de diffusion, de multidiffusion et de monodiffusion inconnues. Cela peut entraîner une défaillance du réseau en temps très court, parfois en quelques secondes. Par exemple, Les trames de diffusion, tel que une requête ARP sont envoyées à tous les ports de commutateur, excepté au port d’entrée initial. Ceci garantit que tous les périphériques d’un domaine de diffusion reçoivent bien les trames. S’il existe plusieurs chemins pour le réacheminement de la trame, il est possible qu’une boucle sans fin soit créée. Lorsqu’une boucle se produit, la table d’adresses MAC d’un commutateur changera constamment en raison des mises à jour provenant des trames de diffusion, entraînant ainsi une instabilité de la base de données MAC. Cela peut entraîner une utilisation élevée du processeur, ce qui rend le commutateur incapable de transférer des trames.
Les boucles de trames ne concernent pas uniquement les trames de diffusion: Lorsque des trames de monodiffusion inconnues sont envoyées dans un réseau comportant des boucles, des trames peuvent arriver en double sur l’appareil de destination. Une trame de monodiffusion inconnue se produit lorsque le commutateur n’a pas d’adresse MAC de destination dans sa table d’adresses MAC et qu’il doit réacheminer la trame à tous les ports, à l’exception du port d’entrée.
Cliquez sur Lecture dans la figure pour afficher l’animation. Lorsque l’animation s’arrête, lisez le texte décrivant l’action. L’animation continuera après une courte pause.
5.1.6 Tempêtes de diffusion
Une tempête de diffusion est un nombre anormalement élevé d’émissions qui submergent le réseau pendant une durée déterminée. Les tempêtes de diffusion peuvent désactiver un réseau en quelques secondes en submergeant les commutateurs et les appareils terminaux. Les tempêtes de diffusion peuvent être provoquées par un problème matériel tel qu’une carte d’interface réseau défectueuse ou par une boucle de couche 2 dans le réseau.
Les diffusions de couche 2 dans un réseau, telles que les demandes ARP, sont très courantes. Une boucle de couche 2 est susceptible d’avoir des conséquences immédiates et désactiver sur le réseau. Les multidiffusions de couche 2 sont généralement transmises de la même manière qu’une diffusion par le commutateur. Ainsi, bien que les paquets IPv6 ne soient jamais transférés en tant que diffusion de couche 2, la découverte de voisins de ICMPv6 utilise des multidiffusions de couche 2.
Cliquez sur Lecture dans la figure pour afficher une animation qui montre les effets de plus en plus négatifs d’une boucle à mesure que les trames de diffusion et de monodiffusion inconnues continuent de se propager indéfiniment dans une tempête de diffusion.
Lorsqu’un hôte est pris dans une boucle de couche 2, les autres hôtes du réseau ne peuvent pas y accéder. En outre, en raison des modifications constantes apportées à sa table d’adresses MAC, le commutateur ne sait plus à partir de quel port réacheminer les trames de monodiffusion. Dans l’animation précédente, les commutateurs disposent de ports incorrects pour PC1. Toute trame de monodiffusion inconnue destinée à PC1 crée une boucle dans le réseau, comme le font les trames de diffusion. Le nombre sans cesse croissant de trames effectuant des boucles dans le réseau engendre par la suite une tempête de diffusion.
Pour empêcher ces problèmes de survenir dans un réseau redondant, un certain type d’arborescence (Spanning Tree) doit être appliqué aux commutateurs. Spanning Tree est activé par défaut sur les commutateurs Cisco pour empêcher la formation de boucles de couche 2.
5.1.7 L’Algorithme Spanning Tree
STP repose sur un algorithme inventé par Radia Perlman alors qu’elle travaillait pour Digital Equipment Corporation et publié dans l’article de 1985 «An Algorithm for Distributed Computation of a Spanning Tree in an Extended LAN». Son algorithme de spanning tree (STA) crée une topologie sans boucle en sélectionnant un pont racine unique où tous les autres commutateurs déterminent un seul chemin moins coûteux.
Sans le protocole de prévention des boucles, des boucles se produiraient rendant un réseau de commutateur redondant inutilisable.
Cliquez sur chaque bouton pour obtenir une explication de la façon dont STA crée une topologie sans boucle.
Le protocole STP empêche la boucle de se former en configurant un chemin sans boucle sur l’ensemble du réseau, grâce à des ports bloqués stratégiquement placés. Les commutateurs qui exécutent le protocole STP sont capables d’assurer la continuité des communications en cas de panne en débloquant dynamiquement les ports préalablement bloqués et en autorisant le trafic à emprunter les chemins de substitution.
5.1.9 Packet Tracer – Investiguer la prévention des boucles de STP
Dans cette activité Packet Tracer, vous remplirez les objectifs suivants:
- Créer et configurer un simple réseau à trois commutateurs avec STP.
- Afficher le fonctionnement du protocole STP
- Désactiver le protocole STP et afficher à nouveau l’opération.
5.2 Fonctionnement du protocole STP
5.2.1 Étapes vers une topologie sans boucle
Maintenant, vous savez comment les boucles sont créées et les bases de l’utilisation du protocole spanning tree pour les empêcher. Cette rubrique vous permettra de découvrir, étape par étape, le fonctionnement du STP. À l’aide de l’algorithme spanning tree (STA), le protocole STP crée une topologie sans boucle en quatre étapes:
- Choisir le pont racine
- Choisir les ports racine.
- Choisir les ports désignés.
- Choisir des ports alternatifs (bloqués).
Pendant le fonctionnement de STA et de STP, les commutateurs utilisent des BPDU (Bridge Protocol Data Units) pour partager des informations sur eux-mêmes et sur leurs connexions. Les BPDU permettent de choisir le pont racine, les ports racine, les ports désignés et les ports alternatifs. Chaque trame BPDU contient un ID de pont (bridge ID) qui identifie le commutateur ayant envoyé la trame BPDU. Le BID participe à la prise de nombreuses décisions STA, y compris les rôles de pont racine et de port. Comme illustré dans la figure , l’ID de pont (BID) contient une valeur de priorité, l’adresse MAC du commutateur et un ID système étendu. La valeur d’ID de pont la plus basse est déterminée par une combinaison de ces trois champs.
Priorité des ponts
La valeur de priorité par défaut pour tous les commutateurs Cisco est la valeur décimale 32768. La plage va de 0 à 61440 par incrément de 4096. Une priorité de pont inférieure est préférable. Une priorité de pont de 0 a préséance sur toutes les autres priorités de pont.
ID système étendu
La valeur de l’ID système étendu est une valeur décimale ajoutée à la valeur de priorité du pont du BID afin d’identifier le VLAN de cette BPDU.
Les premières versions du protocole IEEE 802.1D avaient été conçues pour des réseaux n’utilisant pas de réseau local virtuel (VLAN). Il existait un spanning tree unique commun sur tous les commutateurs. Pour cette raison, dans les anciens commutateurs, l’ID système étendu n’était pas inclus dans les BPDU. Au fur et à mesure que le recours aux réseaux VLAN s’est répandu pour segmenter l’infrastructure de réseau, le standard 802.1D a été mis à jour pour en intégrer la prise en charge, ce qui imposait d’inclure l’ID du réseau 12-bit VLAN dans la trame BPDU. Les informations de VLAN sont incluses dans la trame BPDU par le biais d’un ID système étendu.
L’ID système étendu permet les implémentations ultérieures de STP, telles que Rapid STP (RSTP), d’avoir différents ponts racine pour différents ensembles de VLAN. Cela peut permettre d’utiliser des liens redondants et non-forwarding dans une topologie STP pour qu’un ensemble de VLAN soit utilisé par un autre ensemble de VLAN utilisant un pont racine différent.
Adress MAC
Lorsque deux commutateurs sont configurés avec la même priorité et possèdent le même ID système étendu, le commutateur dont l’adresse MAC de valeur est la plus faible, exprimée au format hexadécimal, aura le BID le plus bas.
5.2.2 – 1. Choisir le pont racine
L’algorithme STA désigne un commutateur unique comme pont racine et il l’utilise comme point de référence pour le calcul de tous les chemins. Les commutateurs échangent des BPDU pour créer la topologie sans boucle en commençant par la sélection du pont racine.
Un processus de sélection détermine le commutateur qui servira de pont racine. Tous les commutateurs du domaine de diffusion participent au processus d’élection. Après son amorçage, le commutateur commence à envoyer des trames BPDU toutes les deux secondes. Ces trames BPDU contiennent le BID du commutateur d’envoi et le BID du pont racine, connue sous le nom ID racine.
Le commutateur ayant l’identificateur de pont (BID) le plus bas devient le pont racine. Initialement, tous les commutateurs se déclarent en tant que pont racine avec son propre BID défini comme l’ID racine. Finalement, les commutateurs apprennent par l’échange de BPDU quel commutateur possède le BID le plus bas et se mettent au courant d’un pont racine.
Dans la figure, S1 est choisi comme pont racine parce qu’il possède le BID le plus bas.
5.2.3 Conséquences des BID par défaut
Étant donné que le BID par défaut est 32768, il est possible que deux commutateurs ou plusieurs aient la même priorité. Dans ce scénario, où les priorités sont identiques, le commutateur ayant l’adresse MAC la plus basse deviendra le pont racine. Pour garantir que la décision relative au pont racine répond au mieux aux besoins du réseau, il est recommandé que l’administrateur configure le commutateur pont racine souhaité avec une priorité inférieure.
Dans la figure, tous les commutateurs sont configurés avec la même priorité de 32769. L’adresse MAC est alors le facteur décisif pour savoir quel commutateur deviendra le pont racine. Le commutateur dont la valeur hexadécimale est la plus basse sera choisie pour la désignation du pont racine. Dans cet exemple, S2 présente la valeur d’adresse MAC la plus basse et devient donc pont racine pour l’instance Spanning Tree.
Remarque: Dans cet exemple, la priorité de tous les commutateurs est de 32769. La valeur est basée sur la priorité de pont par défaut 32768 et l’ID système étendu (l’attribution du VLAN 1) associé à chaque commutateur (32768+1).
5.2.4 Définir le coût du chemin racine
Lorsque le pont racine a été choisi pour l’instance Spanning Tree, l’algorithme STA lance le processus de détermination des meilleurs chemins possibles vers le pont racine, depuis l’ensemble des destinations du domaine de diffusion. Les informations relatives au chemin, appelées coût du chemin racine interne, sont déterminées en additionnant les coûts de port individuels le long du chemin entre le commutateur et le pont racine.
Remarque: Le BPDU inclut le coût du chemin racine. Il s’agit du coût du chemin allant du commutateur expéditeur au pont racine.
Lorsqu’un commutateur reçoit le BPDU, il ajoute le coût du port d’entrée du segment pour déterminer le coût de chemin racine interne associé.
Les coûts du port par défaut sont définis par la vitesse de fonctionnement du port. Le tableau présente les coûts de port par défaut spécifié par IEEE. Les commutateurs Cisco utilisent par défaut les valeurs définies par la norme IEEE 802.1D, également appelée coût de chemin racine court, pour STP et RSTP. Cependant, la norme IEEE spécifie d’utiliser les valeurs définies dans IEEE-802.1W, également connu sous le nom de coût de chemin racine long, lors de l’utilisation de liaisons 10 Gbit/s et plus rapide.
Remarque: Le RSTP est discuté plus en détail plus tard dans ce module.
Vitesse des liens | Coût de STP: IEEE 802.1D-1998 | Coût de RSTP: IEEE 802.1w-2004 |
---|---|---|
10 Gbit/s | 2 | 2000 |
1 Gbit/s | 4 | 20000 |
100 Mbit/s | 19 | 200000 |
10 Mbit/s | 100 | 2000000 |
Bien qu’un coût de port par défaut soit associé aux ports des commutateurs, il est possible de configurer le coût des ports. La capacité à configurer des coûts de port individuels donne à l’administrateur la flexibilité nécessaire pour contrôler manuellement les chemins Spanning Tree vers le pont racine.
5.2.5 – 2. Choisir les ports racine.
Une fois que le pont racine a été défini, l’algorithme STA est utilisé pour sélectionner le port racine. Chaque commutateur non-root sélectionnera un port racine. Le port racine est le port le plus proche du pont racine en termes de coûts généraux (meilleur chemin) vers le pont racine. Ce coût général est connu sous le nom de coût du chemin racine interne.
Le coût du chemin racine interne équivaut à la somme des coûts de tous les ports le long du chemin vers le pont racine ,comme illustré sur la figure. Les chemins dont le coût est le plus bas deviennent les chemins préférés et tous les autres chemins redondants sont bloqués. Dans l’exemple, le coût du chemin racine interne de S2 au pont racine S1 sur le chemin 1 est de 19 (selon le coût de port individuel spécifié par l’IEEE), tandis que le coût du chemin racine interne sur le chemin 2 est de 38. Comme le chemin 1 a un coût de chemin global inférieur vers le pont racine, il sera choisi comme chemin principal et F0/1 devient le port racine sur S2.
5.2.6 – 3. Choisir les ports désignés.
La partie de prévention des boucles du spanning tree devient évidente au cours de ces deux prochaines étapes. Une fois que chaque commutateur sélectionne un port racine, les commutateurs sélectionnent ensuite les ports désignés.
Chaque segment entre deux commutateurs aura un port désigné. Le port désigné est un port sur le segment (avec deux commutateurs) qui a le coût du chemin racine interne vers le pont racine. En d’autres termes, le port désigné a le meilleur chemin pour recevoir le trafic qui conduit au pont racine.
Ce qui n’est pas un port racine ou un port désigné devient un port alternatif ou bloqué. Le résultat final est un chemin unique entre chaque commutateur et le pont racine.
Cliquez sur chaque bouton pour obtenir une explication de la façon dont STA sélectionne les ports désignés.
5.2.7 – 4. Choisir des ports alternatifs (bloqués).
Si un port n’est pas un port racine ou un port désigné, il devient alors un port alternatif (ou de secours). Les ports alternatifs et de secours sont à l’état de suppression ou de blocage pour éviter les boucles. Dans la figure, le port F0/2 configuré par STA sur S3 a un rôle de port alternatif. Le port F0/2 sur S3 est en état de blocage et ne transmet pas les trames Ethernet. Tous les autres ports inter-commutateurs sont en état de transfert. C’est la partie de STP qui permet d’empêcher la formation de boucles.
L’interface F0/2 de S3 n’est pas un port racine ou un port désigné, il devient donc un port alternatif ou bloqué.
5.2.8 Choisir un port racine à partir de plusieurs chemins d’accès à coût égal
Le port racine et les ports désignés sont basés sur le coût de chemin racine le plus bas vers le pont racine. Mais que se passe-t-il si le commutateur a plusieurs chemins à coût égal vers le pont racine? Comment un commutateur désigne-t-il un port racine?
Lorsqu’un commutateur possède plusieurs chemins d’accès à coût égal vers le pont racine, le commutateur détermine un port en utilisant les critères suivants:
- BID de pont expéditeur le plus faible
- Priorité de port la plus faible
- ID de port expéditeur le plus faible
Cliquez sur chaque critère pour obtenir un exemple et une explication.
5.2.9 STP minuteurs et états des ports
La convergence STP nécessite trois minuteurs, comme suit:
- Minuteur Hello – le minuteur Hello est l’intervalle entre les mises à jour BPDU. La valeur par défaut est 2 secondes, mais les valeurs autorisées peut être modifier entre 1 et 10 secondes.
- Minuteur Forward Delay – le minuteur Forward Delay est le temps passé à l’état d’écoute et d’apprentissage. La valeur par défaut est de 15 secondes mais peut être modifiée entre 4 et 30 secondes.
- Minuteur Max Age – le minuteur Max Age est la durée maximale d’attente d’un commutateur avant de tenter de modifier la topologie STP. La valeur par défaut est 20 secondes mais peut être modifiée entre 6 et 40 secondes.
Remarque: Les durées par défaut peuvent être modifiées sur le pont racine, ce qui dicte la valeur de ces minuteurs pour le domaine STP.
Le protocole STP facilite la mise en place d’un chemin logique sans boucle sur l’ensemble du domaine de diffusion. L’arbre recouvrant est déterminé au moyen des informations recueillies par l’échange de trames BPDU entre les commutateurs interconnectés. Si un port de commutateur passe directement de l’état de blocage à l’état de réacheminement sans informations sur la topologie complète pendant la transition, le port peut créer temporairement une boucle de données. Pour cette raison, STP compte cinq états des ports, dont quatre sont des états des ports opérationnels, comme le montre la figure. L’état désactivé est considéré comme non opérationnel.
les détails de chaque état de port qui sont présentés dans le tableau.
État du port | Description |
---|---|
Blocage | Le port est un port alternatif qui ne participe pas au transmission de trames. Le port reçoit des trames BPDU pour déterminer l’emplacement et l’ID racine du pont racine. Les trames BPDU déterminent également les rôles de port de chaque port de commutateur doit assumer dans la topologie STP active finale. Grâce au minuteur Max age de 20 secondes, un port de commutateur qui n’a pas reçu un BPDU attendu d’un commutateur voisin passera à l’état de blocage. |
Écoute | Après l’état de blocage, un port passe à l’état d’écoute. Le port reçoit des BPDU pour déterminer le chemin d’accès à la racine. le port de commutateur transmet également ses propres trames BPDU et informe les commutateurs adjacents que le port du commutateur se prépare à participer à la topologie active. |
Apprentissage | Un port de commutateur passe à l’état d’apprentissage après l’état d’écoute. Pendant l’état d’apprentissage, le port du commutateur reçoit et traite les BPDU et se prépare à participer à la transmission de trame. Il commence également à remplir la table d’adresses MAC. Cependant, dans l’état d’apprentissage, les trames d’utilisateur ne sont pas transférées vers la destination. |
Acheminement | Dans l’état d’acheminement, un port de commutateur est considéré comme une partie du topologie. Le port du commutateur transfère le trafic utilisateur et envoie et reçoit les trames BPDU. |
Désactivation | Un port de commutateur à l’état Désactivation ne participe pas à l’arbre recouvrant et ne transmet pas les trames. L’état Désactivation est défini lorsque le port de commutateur est administrativement désactivé. |
5.2.10 Les détails opérationnels de chaque état du port
Le tableau récapitule les détails opérationnels de chaque état du port.
État du port | BPDU | Table d’adresses MAC | Transmission de trames de données |
---|---|---|---|
Blocage | Uniquement Recevoir | Pas de mise à jour | Non |
Écoute | Recevoir et envoyer | Pas de mise à jour | Non |
Apprentissage | Recevoir et envoyer | Mise à jour de la table | Non |
Acheminement | Recevoir et envoyer | Mise à jour de la table | Oui |
Désactivé | Aucun envoi ou reçu | Pas de mise à jour | Non |
5.2.11 Spanning Tree par VLAN
Jusqu’à présent, nous avons discuté STP dans un environnement où il n’y a qu’un seul VLAN. Toutefois, STP peut être configuré pour fonctionner dans un environnement comportant plusieurs VLAN.
Dans les versions de protocole PVST (Per-VLAN Spanning Tree) de STP, un pont racine est déterminé pour chaque instance Spanning Tree. Il est possible de disposer de plusieurs ponts racine distincts pour différents ensembles de réseaux VLAN. STP exploite une instance distincte de STP pour chaque VLAN individuel. Si tous les ports de tous les commutateurs sont membres de VLAN 1, il n’y aura qu’une seule instance Spanning Tree.
5.3 Évolution du protocole STP
5.3.1 Différentes versions de STP
Cette rubrique détaille les nombreuses versions de STP et d’autres options pour empêcher les boucles de votre réseau.
Jusqu’à maintenant, nous avons utilisé le terme Spanning Tree Protocol et l’acronyme STP, ce qui peut être trompeur. De nombreux professionnels utilisent ces termes pour désigner des implémentations différentes du concept de Spanning Tree, par exemple le protocole RSTP (Rapid Spanning Tree Protocol) et le protocole MSTP (Multiple Spanning Tree Protocol). Pour pouvoir communiquer clairement sur les concepts de Spanning Tree, il est important de parler d’une implémentation ou d’une norme d’arbre recouvrant dans son contexte.
La dernière norme de l’arbre recouvrant est contenue dans IEEE-802-1D-2004, la norme IEEE pour les réseaux locaux et métropolitains: ponts MAC (Media Access Control). Cette version de la norme indique que les commutateurs et les ponts conformes à la norme utiliseront le protocole RSTP (Rapid Spanning Tree Protocol) au lieu de l’ancien protocole STP spécifié dans la norme 802.1d d’origine. Dans ce cursus, lorsque le protocole STP original est utilisé dans un contexte de discussion, le terme «STP 802.1D initial» est préféré pour éviter toute confusion. Puisque les deux protocoles partagent en grande partie la même terminologie et les mêmes méthodes en matière de chemin sans boucle, nous mettrons principalement l’accent sur le standard actuel et les implémentations propres à Cisco de STP et de RSTP.
Plusieurs protocoles Spanning Tree Protocol (STP) sont apparus depuis la création du protocole IEEE 802.1D d’origine, comme indiqué sur le tableau.
Variété STP | Description |
---|---|
Protocole STP (Spanning tree Protocole) | Il s’agit de la version originale IEEE 802.1D (802.1D-1998 et antérieure) qui fournit une topologie sans boucle dans un réseau avec des liens redondants. De plus appelé CST (Common Spanning Tree, arbre recouvrant commun) suppose une seule instance Spanning Tree pour l’ensemble du réseau ponté, quel que soit le nombre de VLAN. |
Protocole PVST+ (Per-VLAN Spanning Tree) | Spanning Tree Par VLAN (PVST+) est une version améliorée du protocole STP proposée par Cisco, qui offre une instance Spanning Tree 802.1D séparée pour chaque VLAN configuré dans le réseau. PVST+ prend en charge PortFast, UplinkFast, BackboneFast, la protection BPDU, le filtre BPDU, la protection de racine et la protection de boucle. |
802.1D-2004 | C’est une version mise à jour du protocole STP standard, intégrant IEEE 802.1w. |
Protocole RSTP (Rapid Spanning Tree Protocol) | Rapid Spanning Tree Protocol (RSTP) ou IEEE 802.1w est une évolution de STP qui offre une convergence plus rapide que STP. |
Rapid PVST+ (Per-VLAN Spanning Tree) | C’est une version améliorée du protocole RSTP proposée par Cisco et utilisant PVST+ et offre une instance 802.1w séparée pour chaque VLAN. Chaque instance distincte prend en charge PortFast, la protection BPDU, le filtre BPDU, la protection de racine et la protection de boucle. |
Protocole MSTP (Multiple Spanning Tree Protocol) | Multiple Spanning Tree Protocol (MSTP) est un standard IEEE inspiré de l’implémentation MISTP plus ancienne de Cisco (Multiple Instance STP). MSTP mappe plusieurs VLAN dans une même instance Spanning Tree. |
MST (Multiple Spanning Tree) | MST est l’implémentation Cisco de MSTP, qui fournit jusqu’à 16 instances du protocole RSTP et allie plusieurs VLAN avec la même topologie physique et logique au sein d’une instance courante du protocole RSTP. Chaque instance prend en charge PortFast, la protection BPDU, le filtre BPDU, la protection de racine et la protection de boucle. |
Un professionnel des réseaux, dont la mission inclut l’administration des commutateurs, peut être amené à décider quel type de protocole STP implémenter.
Les commutateurs Cisco fonctionnant sous IOS 15.0 ou une version ultérieure exécutent PVST+ par défaut. Cette version intègre plusieurs des caractéristiques du standard IEEE 802.1D-2004, telles que les ports alternatifs au lieu des anciens ports non désignés. Les commutateurs doivent être explicitement configurés pour le mode Rapid Spanning Tree afin d’exécuter le protocole Rapid Spanning Tree.
5.3.2 Concepts RSTP
RSTP (IEEE 802.1w) remplace le protocole 802.1D d’origine, tout en conservant la rétrocompatibilité. La terminologie du protocole STP 802.1w est essentiellement la même que celle du protocole STP IEEE 802.1D initial. La plupart des paramètres ont été conservés. les utilisateurs déjà familiarisés avec la norme STP d’origine puissent rapidement configurer le protocole RSTP. Le même algorithme de spanning tree est utilisé pour STP et RSTP pour déterminer les rôles de port et la topologie.
Le protocole RSTP optimise le recalcul de l’arbre recouvrant lorsque la topologie d’un réseau de couche 2 change. Le protocole RSTP assure un temps de convergence beaucoup plus rapide dans un réseau correctement configuré, parfois de l’ordre de quelques centaines de millisecondes. Si un port est configuré comme port alternatif, il peut passer immédiatement à l’état de transmission sans attendre que le réseau converge.
Remarque: Rapid PVST+ est l’implémentation Cisco du protocole RSTP par VLAN. En utilisant le protocole Rapid PVST+ une instance indépendante s’exécute sur chaque VLAN.
5.3.3 États de port RSTP et rôles de port
Les états de port et les rôles de port entre STP et RSTP sont similaires.
Cliquez sur chaque bouton pour comparer les états de port STP et RSTP et les rôles de port.
5.3.4 PortFast et protection BPDU
Lorsqu’un périphérique est connecté à un port de commutateur ou lorsqu’un commutateur se met sous tension, le port de commutateur passe par les états d’écoute et d’apprentissage, chaque fois qu’il attend l’expiration de minuteur Forward Delay. Ce délai est de 15 secondes pour chaque état, écoute et apprentissage, pour un total de 30 secondes. Ce délai peut présenter un problème pour les clients DHCP qui tentent de découvrir un serveur DHCP. Les messages DHCP provenant de l’hôte connecté ne seront pas transférés pendant les 30 secondes de minuteur Forward Delay et le processus DHCP peut expirer. Le résultat est qu’un client IPv4 ne recevra pas une adresse IPv4 valide.
Remarque: Bien que cela puisse se produire avec les clients qui envoient des messages de sollicitation de routeur ICMPv6, le routeur continuera d’envoyer des messages d’annonce de routeur ICMPv6 afin que l’appareil sache comment obtenir ses informations d’adresse.
Lorsqu’un port de commutateur est configuré avec PortFast, ce port passe de l’état de blocage à l’état d’acheminement immédiatement, sans passer par les autres états 802.1D STP habituels (écoute et apprentissage) et en évitant un délai de 30 secondes. Vous pouvez utiliser PortFast sur les ports d’accès pour permettre aux appareils connectés à ces ports, tels que les clients DHCP, d’accéder immédiatement au réseau, plutôt que d’attendre que le STP IEEE 802.1D converge sur chaque VLAN. L’objectif de la fonction PortFast étant de minimiser le temps d’attente des ports d’accès avant la convergence Spanning Tree, elle doit être utilisée uniquement sur les ports d’accès. Si vous activez PortFast sur un port connecté à un autre commutateur, vous risquez de créer une boucle Spanning Tree. PortFast est uniquement destiné aux ports de commutateur qui se connectent aux périphériques terminaux.
Dans une configuration PortFast valide, les trames BPDU ne doivent jamais être reçues sur les ports des commutateurs activés par PortFast, car cela indiquerait qu’un autre pont ou commutateur est connecté au port. Cela provoque potentiellement une boucle de spanning tree. Pour éviter ce type de scénario, les commutateurs Cisco prennent en charge une fonctionnalité appelée Protection BPDU. Lorsqu’elle est activée, la protection BPDU place immédiatement le port à l’état errdisabled (erreur désactivée) lors de la réception d’une trame BPDU. Cela protège contre les boucles potentielles en arrêtant efficacement le port. La fonction de protection BPDU offre une réponse sécurisée aux configurations non valides, car un administrateur remettre manuellement l’interface en service.
5.3.5 Alternatives au Protocole STP
STP était et est toujours un protocole de prévention des boucles Ethernet. Au cours des ans, les organisations ont exigé une plus grande résilience et une plus grande disponibilité dans le réseau local. Les réseaux locaux Ethernet sont passés de quelques commutateurs interconnectés connectés à un seul routeur, à une conception de réseau hiérarchique sophistiquée incluant des commutateurs d’accès, de distribution et de couche centrale, comme le montre la figure.
Selon l’implémentation, la couche 2 peut inclure non seulement la couche d’accès, mais aussi la couche de distribution ou même les couches cœur de réseau. Ces conceptions peuvent inclure des centaines de commutateurs, avec des centaines ou des milliers de VLAN. Le STP s’est adapté à la redondance et à la complexité accrues grâce à des modifications dans le cadre du RSTP et du MSTP.
Un aspect important de la conception du réseau est la convergence rapide et prévisible en cas de défaillance ou de modification de la topologie. Spanning tree n’offre pas les mêmes efficacités et prédictions que celles des protocoles de routage de la couche 3. La figure montre une conception de réseau hiérarchique traditionnelle avec la distribution et les commutateurs multicouches principaux effectuant le routage.
Le routage de couche 3 permet des chemins et des boucles redondants dans la topologie, sans bloquer les ports. Pour cette raison, certains environnements sont en cours de transition vers la couche 3 partout, sauf lorsque les périphériques se connectent au commutateur de couche d’accès. En d’autres termes, les connexions entre les commutateurs de couche d’accès et les commutateurs de distribution seraient la couche 3 au lieu de la couche 2, comme indiqué dans la figure suivante.
Bien que le STP continuera très probablement à d’être utilisé comme système de prévention des boucles dans l’entreprise, sur les commutateurs de la couche d’accès, d’autres technologies sont également utilisées, notamment les suivantes:
- Agrégation de lien multisystèmes (MLAG)
- Pontage de chemin le plus court (SPB)
- Interconnexion transparente d’un grand nombre de liaisons (TRILL)
Remarque: Ces technologies dépassent le cadre de ce cours.
5.4 Module pratique et questionnaire
5.4.1 Qu’est-ce que j’ai appris dans ce module?
L’objectif de STP
Les chemins d’accès redondants dans un réseau Ethernet commuté peuvent entraîner à la fois des boucles physiques et logiques de couche 2. Une boucle de couche 2 peut entraîner l’instabilité de la table d’adresses MAC, la saturation des liaisons et une utilisation élevée de processeur sur les commutateurs et les terminaux. Il en résulte que le réseau devient inutilisable. Contrairement aux protocoles de couche 3, IPv4 et IPv6, l’Ethernet de couche 2 n’intègrent pas de mécanisme pour identifier et éliminer les trames prises dans une boucle infinie. Les réseaux locaux Ethernet nécessitent une topologie sans boucle avec un chemin unique entre deux périphériques. Le protocole STP est un protocole réseau de prévention des boucles qui permet la redondance tout en créant une topologie de couche 2 sans boucle. Sans STP, les boucles de couche 2 peuvent se former, provoquant une boucle infinie de trames de diffusion, de multidiffusion et de monodiffusion inconnues, entraînant la défaillance d’un réseau. Une tempête de diffusion est un nombre anormalement élevé d’émissions qui submergent le réseau pendant une durée déterminée. Les tempêtes de diffusion peuvent désactiver un réseau en quelques secondes en submergeant les commutateurs et les appareils terminaux. STP est basé sur un algorithme inventé par Radia Perlman. Son algorithme de spanning tree (STA) crée une topologie sans boucle en sélectionnant un pont racine unique où tous les autres commutateurs déterminent un seul chemin moins coûteux.
Le fonctionnement de STP
En utilisant le STA, STP établit une topologie sans boucle dans un processus en quatre étapes : élection du pont racine, élection des ports racine, élection des ports désignés et élection des ports alternatifs (bloqués). Pendant le fonctionnement de STA et de STP, les commutateurs utilisent des BPDU (Bridge Protocol Data Units) pour partager des informations sur eux-mêmes et sur leurs connexions. Les BPDU permettent de choisir le pont racine, les ports racine, les ports désignés et les ports alternatifs. Chaque trame BPDU contient un identificateur de pont qui identifie le commutateur ayant envoyé la trame BPDU. La BID participe à la prise de nombreuses décisions STA, y compris les rôles de pont racine et de port. L’ID de pont contient une valeur de priorité, l’adresse MAC du commutateur et un ID système étendu. La valeur d’ID de pont la plus basse est déterminée par une combinaison de ces trois champs. Le commutateur ayant l’identificateur de pont (BID) le plus bas devient le pont racine. Étant donné que le BID par défaut est 32768, il est possible que deux commutateurs ou plusieurs aient la même priorité. Dans ce scénario, où les priorités sont identiques, le commutateur ayant l’adresse MAC la plus basse deviendra le pont racine. Lorsque le pont racine a été choisi pour l’instance Spanning Tree, l’algorithme STA détermine des meilleurs chemins possibles vers le pont racine, depuis l’ensemble des destinations du domaine de diffusion. Les informations relatives au chemin, appelées coût du chemin racine interne, sont déterminées en additionnant les coûts de port individuels le long du chemin entre le commutateur et le pont racine. Une fois le pont racine est déterminé, l’algorithme STA sélectionne le port racine. Le port racine est le port le plus proche du pont racine en termes de coûts généraux qui est appelé coût du chemin racine interne. Après que chaque commutateur a sélectionné un port racine, les commutateurs sélectionnent les ports désignés. Le port désigné est un port sur le segment (avec deux commutateurs) qui a le coût du chemin racine interne vers le pont racine. Si un port n’est pas un port racine ou un port désigné, il devient alors un port alternatif (ou de secours). les ports alternatifs et de secours sont à l’état de suppression ou de blocage pour éviter les boucles. Lorsqu’un commutateur possède plusieurs chemins d’accès à coût égal vers le pont racine, le commutateur détermine un port en utilisant les critères suivants:BID d’expéditeur le plus bas, puis priorité de port d’expéditeur le plus bas et enfin l’ID de port d’expéditeur le plus bas. La convergence STP nécessite trois minuteries: le minuteur Hello, le minuteur Forward delay et le minuteur max age. Les états de port sont: blocage, écoute, apprentissage, acheminement et désactivé. Dans les versions PVST de STP, un pont racine est déterminé pour chaque instance Spanning Tree. Il est possible de disposer de plusieurs ponts racine distincts pour différents ensembles de réseaux VLAN.
L’évolution de STP
Le terme Spanning Tree Protocol et l’acronyme STP, ce qui peut prêter à confusion. STP est souvent utilisé pour faire référence aux différentes implémentations de spanning tree, telles que RSTP et MSTP. RSTP est une évolution de Spanning Tree qui offre une convergence plus rapide que STP. Les états des ports de RSTP sont mise à l’écart (discarding), apprentissage et acheminement. PVST+ est une version améliorée du protocole STP proposée par Cisco, qui offre une instance Spanning Tree 802.1D séparée pour chaque VLAN configuré dans le réseau. PVST+ prend en charge PortFast, UplinkFast, BackboneFast, la protection BPDU, le filtre BPDU, la protection de racine et la protection de boucle. Les commutateurs Cisco fonctionnant sous IOS 15.0 ou une version ultérieure exécutent PVST+ par défaut. Rapid PVST+ est une version améliorée de RSTP proposée par Cisco qui utilise PVST+ et fournit une instance distincte de 802.1w par VLAN. Lorsqu’un port de commutateur est configuré avec PortFast, ce port passe immédiatement de l’état de blocage à l’état d’acheminement, évitant ainsi les états d’écoute et d’apprentissage STP et un délai de 30 secondes. Vous pouvez utiliser PortFast sur les ports d’accès pour permettre aux appareils connectés à ces ports, tels que les clients DHCP, d’accéder immédiatement au réseau, plutôt que d’attendre que le STP converge sur chaque VLAN. Les commutateurs Cisco prennent en charge une fonctionnalité appelée Protection BPDU qui met immédiatement le port du commutateur dans un état désactivé par erreur à la réception de tout BPDU pour se protéger contre les boucles potentielles. Au cours des ans, les réseaux locaux Ethernet sont passés de quelques commutateurs interconnectés, reliés à un seul routeur, à une conception de réseau hiérarchique sophistiquée. Selon l’implémentation, la couche 2 peut inclure non seulement la couche d’accès, mais aussi la couche de distribution ou même les couches cœur de réseau. Ces conceptions peuvent inclure des centaines de commutateurs, avec des centaines ou des milliers de VLAN. Le protocole STP s’est adapté à la redondance et à la complexité accrues grâce à des modifications dans le cadre du RSTP et du MSTP. Le routage de couche 3 permet des chemins et des boucles redondants dans la topologie, sans bloquer les ports. Pour cette raison, certains environnements sont en cours de transition vers la couche 3 partout, sauf lorsque les périphériques se connectent au commutateur de couche d’accès.