Aller au contenu principal

Spanning Tree STP, fondamentaux

CCNA — Network Access

Spanning Tree STP, fondamentaux

Définition

Le Spanning Tree Protocol (IEEE 802.1D, puis 802.1w RSTP et 802.1D-2004) bloque certains ports d'un réseau commuté redondant pour empêcher les boucles de couche 2, tout en gardant des chemins de secours prêts à prendre le relais. Sans STP, deux chemins entre deux switchs créent un double empaquetage, des tables MAC instables et des tempêtes de broadcast qui saturent le réseau en quelques secondes.

Contexte

Les redondances physiques (deux uplinks, maillage) sont nécessaires pour la disponibilité et catastrophiques en L2 sans contrôle. Le blueprint 200-301, thème 2.5, attend de savoir interpréter Rapid PVST+: root bridge, root port, port states, PortFast. Les chiffres d'horloge STP sont classiques: chez Cisco, les timers par défaut de 802.1D donnent 20 s de Listening, 15 s de Learning, soit une convergence de 30 à 50 s; RSTP ramène la convergence typique sous 1 à 10 s.

Le processus en trois décisions

1. Élection du root bridge

Tous les switchs échangent des BPDUs (frames multicast destination 01:80:C2:00:00:000, non routées). Chaque switch possède un bridge ID: priorité (défaut 32768) + adresse MAC. Le plus petit bridge ID gagne. La priorité se règle par pas de 4096 (32768, 28672, 24576... 0):

S1(config)# spanning-tree vlan 10 priority 4096    ! S1 devient root de VLAN 10 si c'est le plus bas

Dans Rapid PVST+, chaque VLAN a son propre instance STP: on élit un root différent par VLAN pour équilibrer les chemins.

2. Root port sur chaque switch non-root

Chaque switch choisit LE port qui offre le plus petit coût de chemin vers le root. Le coût est lié à la bande passante (référence 1000 Mbps / bande passante, arrondi): 10 Mbps = 100, 100 Mbps = 19, 1 Gbps = 4, 10 Gbps = 2, 40 Gbps = 1, 100 Gbps = 0. En cas d'égalité de coût, départage par: sender BID le plus bas, sender port ID le plus bas,port ID récepteur le plus bas.

3. Designated port sur chaque segment

Sur chaque segment de lien, un port est désigné (celui qui annonce le meilleur chemin depuis ce segment); les autres ports du segment qui ne sont ni root ni désignés deviennent alternates et sont bloqués (discarding).

États de ports: 802.1D vs RSTP

802.1D (5 états) 802.1w RSTP (3 états) Comportement
Blocking Discarding Pas de forwarding, pas d'apprentissage
Listening (20 s) Discarding Pas d'apprentissage
Learning (15 s) Learning Apprentissage sans forwarding
Forwarding Forwarding Normal
Disabled Discarding Lien bas

RSTP remplace la minuterie par un handshake proposition/accord (proposal/agreement): un lien point à point en full duplex passe en forwarding dès que le voisin acquiesce, souvent en moins d'une seconde.

PVST+, Rapid PVST+, MST

  • STP 802.1D / RSTP 802.1w: une seule instance pour tous les VLANs.
  • PVST+ / Rapid PVST+ (Cisco, par défaut sur IOS): une instance par VLAN, équilibrage possible (VLAN 10 root sur S1, VLAN 20 root sur S2).
  • MST (802.1s): instances multiples standardisées pour multi-vendor à grande échelle.
S1(config)# spanning-tree mode rapid-pvst
S1# show spanning-tree vlan 10
VLAN0010
  Spanning tree enabled protocol rstp
  Root ID    Priority    4096
             Address     aabb.cc00.0100
             Cost        4
  Interface        GigabitEthernet1/0/24    Root port, cost 4

PortFast

Un port accès connecté à un PC n'a pas besoin des 30 secondes d'écoute: il doit forwarder immédiatement, sinon DHCP timeoute. spanning-tree portfast (et portfast edge en RSTP) place le port en forwarding direct. Règle absolue: jamais sur un port qui mène à un switch ou un serveur avec virtual switch, sous peine de boucle. La protection correspondante est BPDU guard (voir le concept des protections de ports).

S1(config-if)# spanning-tree portfast

Exemple concret chiffré

Deux switchs reliés par deux liens 1 Gbps, tous VLANs en Rapid PVST+. Sans STP: le broadcast ARP du PC1 est reçu deux fois sur le même port, la table MAC de S2 change de port à chaque trame (MAC flapping), et un frame TTL=64 multicast circule indéfiniment: à 1 Gbps, une tempête sature l'uplink en moins d'une seconde et le site devient inutilisable. Avec STP: un des deux liens est bloqué sur le port alternate, le débit utile reste 1 Gbps, mais à la coupure du lien actif le port alternate passe forwarding en 1 à 10 s selon la détection du lien.