STP – Protocole Spanning Tree expliqué
⚡ Résumé intelligent
Le protocole STP (Spanning Tree Protocol) est une norme de gestion de liens de couche 2, IEEE 802.1D, qui empêche les boucles de commutation dans les réseaux avec des liens redondants en élisant un pont racine et en plaçant les ports de secours dans un état de blocage.

Qu'est-ce que STP?
Le protocole STP (Spanning Tree Protocol) est un protocole de gestion de liens conçu pour prendre en charge les liens redondants tout en empêchant les boucles de commutation dans le réseau. Layer 2 Protocole fonctionnant sur les ponts et les commutateurs et devant être activé sur les interfaces de ces derniers. Il a été normalisé par l'IEEE sous la référence IEEE 802.1D.
Pourquoi avons-nous besoin de STP ?
Les liaisons redondantes améliorent la tolérance aux pannes, mais sans mécanisme de prévention des boucles, elles peuvent aussi créer des boucles de commutation dangereuses. Voici les situations où le protocole Spanning Tree devient important :
- La fiabilité (tolérance aux pannes) du réseau augmente considérablement grâce à l'introduction de la redondance.
- Les commutateurs déversent le trafic sur tous les ports lorsqu'il doit atteindre une destination encore inconnue.
- Le trafic de diffusion et de multidiffusion est acheminé par tous les ports sauf celui par lequel il est arrivé.
- Le protocole STP crée une topologie logique sans boucle à partir d'une topologie physique contenant des boucles.
Comment fonctionne le STP ? Exemple
L'arbre couvrant utilise un algorithme pour rechercher les liens redondants dans l'arbre. LAN et sélectionne les meilleurs chemins. Il place chaque lien dans un état de transfert ou de blocage.
Après ce processus, les liens sans alternative redondante restent en état de transfert. Les liens redondants qui n'ont pas été sélectionnés comme meilleur chemin sont bloqués. Le protocole Spanning Tree n'utilise jamais plusieurs liens vers une même destination et ne permet donc pas de partage de charge.
Types de STP
Voici les différents types de protocoles Spanning Tree :
| Standard | Description | Abréviation |
|---|---|---|
| IEEE 802.1D | Prévention des boucles ; reconfiguration automatique de l’arbre après toute modification ; convergence lente (jusqu’à 50 secondes) | STP |
| IEEE 802.1w — Protocole Rapid Spanning Tree | STP amélioré avec une convergence plus rapide ; rétrocompatible avec STP | RSTP |
| IEEE 802.1Q — Réseau local virtuel | Définit un arbre de recouvrement commun pour tous les VLAN | CST |
| Cisco Propriétaire — Arbre de recouvrement par VLAN | Une instance STP par VLAN ; PVST+ est une variante améliorée de PVST | PVST+ |
| Cisco Propriétaire — Rapid Spanning Tree par VLAN | Convergence rapide par VLAN | PVRST+ / R-PVST+ |
| IEEE 802.1s — Protocole d'arbre couvrant multiple | Plusieurs VLAN mappés sur une seule instance STP | MSTP |
Critères pour l'arbre couvrant
Trois critères déterminent quelles interfaces sont placées en état de transfert :
- Toutes les interfaces du pont racine sont placées en état de transfert.
- Pour les ponts qui ne sont pas le pont racine, le port le plus proche du pont racine (coût de chemin le plus faible) est mis en état de transfert.
- Le pont dont le coût de chemin vers le pont racine sur un segment est le plus faible est appelé le pont désigné.
Étapes du protocole STP
Un port Spanning Tree passe par plusieurs états avant de transférer le trafic, comme le montre le schéma ci-dessous :
État de blocage
Un port bloquant est un port non désigné qui ne participe jamais au transfert de trames. Son délai d'expiration est de 20 secondes (valeur max-age). Une interface passe systématiquement en état bloquant lorsque le protocole STP est activé.
État d'écoute
L'état d'écoute est le premier état transitoire dans lequel entre un port après le blocage. Le port détermine alors s'il doit participer au transfert des trames. L'état d'écoute remplit les fonctions suivantes :
- Supprime les trames reçues sur le port
- N'apprend pas les adresses MAC
- Reçoit les BPDU
État d'apprentissage
L'état d'apprentissage prépare le port à participer au transfert de trames. Un port passe de l'état d'écoute à l'état d'apprentissage et exécute les fonctions suivantes :
- Supprime les trames reçues sur le port
- Reçoit les BPDU
- Apprend Adresses MAC
État de transfert
Un port en mode de transmission achemine les trames. Il passe en mode de transmission depuis l'état d'apprentissage et effectue les fonctions suivantes :
- Reçoit et transmet les trames reçues sur le port
- Apprend les adresses MAC
- Reçoit les BPDU
État désactivé
Un port désactivé ne participe pas au protocole Spanning Tree car il est désactivé administrativement ; sa durée de vie est illimitée. Une interface désactivée remplit les fonctions suivantes :
- Supprime les trames reçues sur le port
- N'apprend pas les adresses MAC
- Ne reçoit pas de BPDU
Termes importants utilisés dans le protocole Spanning Tree
Voici quelques termes importants utilisés dans le domaine du traitement des données de surface (STP) :
Pont
Un pont est un composant important du protocole STP qui relie deux segments LAN ou plus.
Pont racine (RB)
Le pont racine sert de point d'interconnexion pour tous les segments, et chaque pont d'un réseau local y est connecté. Le protocole STP sélectionne automatiquement le pont racine, mais un administrateur réseau peut le modifier si nécessaire.
Pont non racine (NRB)
Un pont non racine est tout pont qui n'est pas le pont racine.
Port racine (RP)
Le port racine est le port qui mène au pont racine.
Port désigné (DP)
Chaque segment de réseau local possède un port dédié. Chaque pont reçoit les trames sur son port dédié et les transmet via son port racine vers le pont racine.
ID du port
L'identifiant du port permet de déterminer le port racine. Il se compose d'une valeur de priorité configurable sur 1 octet et d'un numéro de port unique pour chaque pont.
Coût du chemin (PC)
Le coût du chemin permet de déterminer la topologie optimale en termes de vitesse de transmission ; une liaison à plus faible bande passante engendre un coût plus élevé. Le protocole STP utilise le coût du chemin pour choisir l’itinéraire le plus court vers le pont racine.
Port non désigné
Un port non désigné est un port de commutateur bloqué, également appelé port bloqué ou alternatif. Il ne peut pas transmettre les trames au commutateur suivant et n'alimente pas la table d'adresses MAC.
RSTP
Le protocole RSTP (Rapid Spanning Tree Protocol) est un protocole réseau qui garantit une topologie sans boucle pour les réseaux Ethernet et converge beaucoup plus rapidement que le protocole STP original.
Unités de données de protocole de pont (BPDU)
Le protocole Spanning Tree (STP) exige que les périphériques réseau échangent des messages afin de former une topologie logique sans boucle. Ces messages sont appelés BPDU (Bridge Protocol Data Units). Chaque périphérique réseau envoie des BPDU pour partager les informations de topologie.
Les BPDU permettent aux commutateurs d'effectuer les opérations suivantes :
- Sélectionnez un seul commutateur qui servira de racine à l'arbre couvrant.
- Calculez le chemin le plus court depuis chaque commutateur jusqu'au commutateur racine, en désignant un commutateur comme étant le plus proche de la racine pour chaque segment LAN.
- Sélectionnez un port sur chaque commutateur comme port racine (s'il ne s'agit pas du commutateur racine).
- Identifiez les ports qui font partie de l'arbre de recouvrement en tant que ports désignés.
- Bloquez les ports non désignés.
Configuration BPDU
Un BPDU de configuration transporte l'ID du pont du périphérique racine, l'ID du pont du transmitpont de ting, et un identifiant du transmitport de ting.
BPDU de notification de changement de topologie (TCN)
Lorsqu'un commutateur détecte une modification de la topologie du réseau, comme l'activation ou la désactivation d'une liaison, il envoie un BPDU TCN au pont racine. Ce dernier ordonne alors à chaque commutateur de réduire le délai de vieillissement de sa table d'adresses MAC afin d'éliminer rapidement les entrées obsolètes.
Différences entre STP et RSTP
Le tableau ci-dessous met en évidence les principales différences entre STP et RSTP :
| STP | RSTP |
|---|---|
| Dans le protocole STP, un pont n'envoie un BPDU que lorsqu'il en reçoit un sur son port racine en provenance du pont racine. | RSTP permet à chaque commutateur d'envoyer un BPDU à chaque intervalle de type « hello ». |
| Le protocole STP définit deux rôles de port : port racine et port désigné. | RSTP ajoute deux rôles supplémentaires : le port alternatif et le port de secours. |
Tableau de référence des États du port STP
Le tableau suivant récapitule l'état de chaque port STP, indique s'il traite les BPDU et s'il apprend les adresses MAC :
| État | Description | Traiter les BPDU | Apprendre MAC |
|---|---|---|---|
| Init | Initialisation d'un port. | Non | Non |
| Hors Ligne | État administratif qui ne participe pas aux opérations STP standard. | Non | Non |
| Blocage | Ce port ne transmet pas les trames Ethernet. | Oui (reçoit et traite uniquement les BPDU) | Non |
| Écoute | Dans cet état, la topologie sans boucle est calculée et le rôle du port est attribué. | Oui (envoie et reçoit des BPDU) | Non |
| Interactif | Un état supplémentaire qui retarde le transfert des trames afin d'éviter la saturation du réseau. | Oui | Oui (remplit la table des adresses MAC) |
| Forwarding | Fonctionnement normal, transmission des trames Ethernet. | Oui | Oui |

