Aller au contenu

Spanning Tree (STP / RSTP)

Spanning Tree Protocol (STP, IEEE 802.1D) résout un problème précis : sur un réseau Ethernet, relier des switchs entre eux avec des liens redondants (pour la résilience) crée mécaniquement une boucle — et une trame qui boucle indéfiniment entre plusieurs switchs peut saturer tout le réseau en quelques secondes (broadcast storm). STP calcule automatiquement quels liens rester actifs et lesquels bloquer, pour garantir une topologie sans boucle tout en gardant les liens redondants prêts à prendre le relais en cas de panne.

Contrairement à IP, une trame Ethernet n’a pas de TTL qui la fait expirer après un certain nombre de sauts — dans une boucle physique entre switchs, une trame diffusée (broadcast, ou destinée à une adresse MAC inconnue) peut circuler indéfiniment, se multipliant à chaque passage par un switch, jusqu’à saturer entièrement la bande passante disponible et rendre le réseau entier inutilisable.

  1. Les switchs s’échangent des messages BPDU (Bridge Protocol Data Unit) pour se découvrir mutuellement.
  2. Un switch est élu root bridge (racine) — celui avec le plus petit identifiant de priorité configuré (à défaut, le plus petit identifiant MAC).
  3. Chaque switch calcule le chemin le plus court vers la racine ; les liens redondants qui créeraient une boucle sont mis en état blocking (le port existe physiquement, mais ne transmet aucune trame de données).
  4. Si un lien actif tombe, STP recalcule la topologie et débloque un lien de secours pour rétablir la connectivité.

STP classique converge lentement après un changement de topologie — jusqu’à 30-50 secondes, une éternité à l’échelle du réseau (chaque port traverse plusieurs états intermédiaires avant de transmettre du trafic). RSTP (Rapid Spanning Tree Protocol, 802.1w) réduit ce temps à quelques secondes grâce à un mécanisme de négociation directe entre switchs voisins, et a largement remplacé STP classique en pratique — la plupart des équipements modernes parlent RSTP par défaut, avec compatibilité descendante vers STP si besoin.

MSTP (Multiple Spanning Tree Protocol) va plus loin en permettant de calculer des arbres de recouvrement différents par groupe de VLAN, plutôt qu’un seul arbre pour l’ensemble du réseau — utile quand on veut équilibrer la charge différemment selon les VLAN plutôt que de toujours bloquer les mêmes liens.