Ce document décrit les compteurs du protocole Spanning tree (STP) et les règles à respecter pour régler les compteurs.
Remarque : Ce document explique uniquement comment régler les temporisateurs STP pour le Spanning Tree 802.1D standard. Ce document ne couvre pas le STP rapide (RSTP) (IEEE 802.1w) ou le protocole multiple du Spanning tree (MST) (IEEE 802.1s). Pour plus d'informations sur RSTP et MST, référez-vous à ces documents :
Présentation du protocole Multiple Spanning Tree (MSTP) (802.1s)
Présentation du protocole Rapid Spanning Tree (STP) (802.1w)
Ce document présuppose que vous connaissiez bien le STP. Pour plus d'informations sur l'opération de STP, consultez Comprendre et configurer le protocole Spanning tree (STP) relatif aux commutateurs Catalyst.
Attention : Vous pouvez utiliser ce document pour résoudre vos problèmes de réseau, mais uniquement si vous connaissez le processus ou si quelqu'un qui connaît le processus vous a dirigé. Si vous êtes peu familier avec STP, les modifications que vous apportez peuvent entraîner l'un de ces occurrences :
Instabilités
Ralentissement de l'application
Pointes de processeur
Fusion de LAN
Consultez 802.1D - Standards IEEE à propos des réseaux locaux et Metropolitan Area : Ponts de contrôle d'accès au support (MAC) (clause 8) pour des détails supplémentaires et des références sur tous les paramètres exposés dans ce document.
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.
Il y a plusieurs compteurs de STP, comme le montre cette liste :
Hello - Le délai Hello est le temps entre chaque unité BPDU (BPDU) envoyée vers un port. Ce temps est égal à 2 secondes (sec) par défaut, mais vous pouvez régler l'heure de 1 à 10 sec.
retard de retransmission - Le retard de retransmission est l'intervalle entre l'état d'écoute et d'apprentissage. Ce temps est égal à 15 secondes (sec) par défaut, mais vous pouvez régler l'heure de 4 à 30 sec.
âge maximal - Le compteur d'âge maximal contrôle la longueur maximale de temps écoulé avant qu'un port de pont enregistre ses informations de BPDU de configuration. Ce temps est égal à 20 secondes (sec) par défaut, mais vous pouvez régler l'heure de 6 à 40 sec.
Chaque BPDU de configuration contient ces trois paramètres. En outre, chaque configuration BPDU contient un autre paramètre relatif au temps, connu comme âge du message. L'âge du message n'est pas une valeur fixe. L'âge du message contient la durée écoulée depuis que le pont de base a lancé le BPDU. Le pont de base envoie tout son BPDU avec une valeur d'âge du message de 0, et tous les commutateurs ultérieurs ajoutent 1 à cette valeur. En fait, cette valeur contient les informations relatives à votre distance du pont de base quand vous recevez un BPDU. Ce schéma montre le concept :
Quand on reçoit un nouveau BPDU de configuration est égal à l'information enregistrée sur le port ou mieux, toutes les informations BPDU sont stockées. Le compteur d'âge commence à tourner. Le compteur d'âge débute avec le message reçu dans ce BPDU de configuration. Si ce compteur d'âge atteint l'âge maximal avant qu'un autre BPDU ne soit reçu pour actualiser le compteur, les informations seront surannées pour ce port.
Voici un exemple qui s'applique au schéma dans cette section :
Les Commutateurs B et le C reçoivent un BPDU de configuration du commutateur A avec un âge du message de 0. Sur le port qui va à A, l'information vieillit dans (âge maximum - 0) sec. Ce temps est sec 20 par défaut.
Les commutateurs D et E reçoivent le BPDU du commutateur B avec un âge du message de 1. Sur le port qui va à A, l'information vieillit dans (âge maximum - 1) sec. Ce temps est sec 19 par défaut.
Le commutateur F reçoit le BPDU du commutateur E avec un âge du message de 2. Sur le port qui va vers A, l'information vieillit dans (âge maximum - 2) sec. Ce temps est sec 18 par défaut.
L'IEEE 802.1D définit STP. En plus des compteurs que la section compteurs de protocole Spanning tree décrit, IEEE définit également ces paramètres qui se réfèrent à STP :
le diamètre du domaine de STP (diamètre) - cette valeur est le nombre maximal de ponts entre deux points de pièce jointe des stations d'extrémité. La recommandation d'IEEE est d'appliquer un diamètre maximal de sept ponts pour les compteurs de STP par défaut.
retard de transfert de pont (retard de transfert) - Cette valeur est le temps qui s'est écoulé entre la réception et la transmission de la même trame par le pont. C'est logiquement la latence par le pont. La recommandation d'IEEE est d'appliquer 1 sec comme retard de transit maximal de pont.
Retard de transmission BPDU (bpdu_delay) - Cette valeur est le retard entre le moment qu'un BPDU est reçu sur un port et le temps pour transmettre le BPDU de configuration efficacement à un autre port. L'IEEE recommande 1 sec comme le maximum BPDU de retard de transmission.
sur-estimation d'incrément d'âge du message (msg_overestimate) - Cette valeur est l'incrément que chaque pont ajoute à l'âge du message avant de transférer un BPDU. Car les compteurs du protocole Spanning tree sectionnent l'état, les commutateurs Cisco (et probablement tous les commutateurs) ajoutent 1 sec à l'âge du message avant que les commutateurs transfèrent un BPDU.
message perdu (lost_msg) - Cette valeur est le numéro de BPDU qui peut être perdu en tant que déplacements BPDU d'une extrémité du réseau ponté à l'autre extrémité. La recommandation d'IEEE est d'utiliser trois comme numéro de BPDU qui peut être perdu.
retard d'arrêt complet de transmission (Tx_halt_delay) - Cette valeur est la durée maximale nécessaire pour qu'un pont entre effectivement dans un port dans l'état de blocage après le constat que le port doit être bloqué. La recommandation d'IEEE est d'utiliser 1 sec pour ce paramètre.
retard d'accès moyen (med_access_delay) - Cette valeur est le temps nécessaire pour qu'un périphérique accède au multimédias pour la transmission initiale. C'est le temps entre la décision du processeur d'envoyer une trame et le moment où la trame commence effectivement à quitter le pont. La recommandation d'IEEE est d'utiliser 0,5 sec comme temps maximal.
De ces paramètres, vous pouvez calculer d'autres valeurs. Cette liste fournit les paramètres supplémentaires et les calculs. Les calculs présupposent que vous utilisiez les valeurs d'IEEE recommandées par défaut pour tous les paramètres.
Délai de propagation de bout en bout BPDU - Cette valeur est le temps nécessaire pour qu'un BPDU voyage d'une extrémité du réseau à l'autre extrémité. Assumez un diamètre de sept sauts, trois BPDU qui peuvent être perdus et un délai Hello de 2 sec. Dans ce cas, la formule est :
End-to-end_BPDU_propa_delay = ((lost_msg + 1) x hello) + ((BPDU_Delay x (dia – 1)) = ((3 + 1) x hello) + ((1 x (dia – 1)) = 4 x hello + dia – 1 = 4 x 2 + 6 = 14 sec
Sur-estimation d'âge du message - Le but de ce paramètre est d'expliquer l'âge du BPDU depuis la provenance. Supposez que chaque pont augmente l'âge du message BPDU de 1 sec. La formule est :
Message_age_overestimate = (dia – 1) x overestimate_per_bridge = dia – 1 = 6
Vie maximale de trame - Cette valeur est le temps maximal qu'une trame précédemment envoyée au réseau de pont demeure dans le réseau avant que la trame atteigne cette destination. La formule est :
Maximum_frame_lifetime = dia x transit_delay + med_access_delay = dia + 0.5 = 7.5 = 8 (rounded)
Retard maximal d'arrêt complet de transmission - Cette valeur est le temps nécessaire afin de bloquer effectivement un port, après que la décision de se bloquer soit prise. L'IEEE compte 1 sec comme maximum pour cet événement. La formule est :
Maximum_transmission_halt_delay = 1
Cette section explique plus en détail comment atteindre la valeur par défaut pour l'âge et le retard de retransmission maximal si vous utilisez la valeur recommandée pour chaque paramètre. Les valeurs recommandées sont un diamètre de sept et un délai Hello de sec 2.
L'âge maximal prend en considération le fait que le commutateur à la périphérie du réseau n'expire pas les informations de racine dans des conditions stables (c'est-à-dire, si la racine est encore vivante). La valeur maximum d'âge doit prendre en considération tout le délai de propagation BPDU et la sur-estimation d'âge du message. Par conséquent, la formule pour l'âge maximal est :
max_age = End-to-end_BPDU_propa_delay + Message_age_overestimate = 14 + 6 = 20 sec
Ce calcul montre comment l'IEEE atteint la valeur recommandée par défaut pour l'âge maximal.
Le mouvement d'un port dans l'état d'écoute indique qu'il y a un changement de la topologie active de STP et qu'un port passera du blocage au transfert. Les périodes d'écoute et d'apprentissage où le retard de retransmission fonctionne doivent couvrir cette période consécutive :
Temps quand le premier port de pont entre en état d'écoute (et reste là par la reconfiguration ultérieure) jusqu'au moment quand le dernier pont dans le LAN ponté entend parler du changement de la topologie active
En outre, vous devez tenir compte du même retard que vous utilisez pour calculer l'âge maximal (sur-estimation d'âge du message et délai de propagation BPDU).
L'heure pour que le dernier pont cesse de transférer les trames reçues sur la topologie précédente (retard maximal d'arrêt complet de transmission), jusqu'à ce que la dernière trame transférée sur la topologie précédente disparaisse (la vie maximale de trame)
Ce temps est nécessaire pour assurer que vous n'obtenez pas les trames reproduites.
Par conséquent, deux fois la période du retard de retransmission (temps de écoute + apprenant le temps) contient tous ces paramètres. La formule est :
2 x forward delay = end-to-end_BPDU_propagation_delay + Message_age_overestimate + Maximum_frame_lifetime + Maximum_transmission_halt_delay = 14 + 6 + 7.5 + 1 = 28.5 forward_delay = 28.5 /2 = 15 (rounded)
Parmi tous ces paramètres, les seuls que vous pouvez régler sont :
Remarque : Votre capacité à ajuster ces paramètres dépend du réseau.
Hello - de 1 à 6
Âge maximum
Délai de transmission
diamètre - Ceci dépend du réseau.
Ne modifiez pas les valeurs dans cette liste. Laissez ces valeurs à la valeur recommandée d'IEEE :
lost_msg = 3
= 1 transit_delay
= 1 bpdu_delay
msg_overestimate = 1
Tx_halt_delay = 1
med_access_delay = 0.5
maximum_transmission_halt_delay = 1
Ces valeurs peuvent sembler tout à fait conservatrices dans un réseau moderne, dans lequel vous n'êtes pas susceptible de perdre trois BPDU ou d'avoir 1 sec de latence pour une trame par un commutateur. Cependant, n'oubliez pas que ces valeurs existent afin d'empêcher les boucles de STP qui peuvent se produire sous des conditions extrêmes, comme :
Utilisation très élevée du CPU
Un port surchargé
Par conséquent, vous devez considérer ces paramètres en tant que valeurs fixes. Si vous utilisez les formules que les Valeurs par défaut des compteurs du protocole Spanning tree section montre, vous avez alors :
max_age = End-to-end_BPDU_propa_delay + Message_age_overestimate = ((lost_msg + 1) x hello) + ((BPDU_Delay x (dia – 1)) + (dia – 1) x overestimate_per_ bridge = (4 x hello) + dia – 1 + dia – 1 = (4 x hello) + (2 x dia) – 2 forward_delay = (End-to-end_BPDU_propa_delay + Message_age_overestimate + Maximum_frame_lifetime + Maximum_transmission_halt_delay ) / 2 = ((lost_msg + 1) x hello) + ((BPDU_Delay x (dia – 1)) + ((dia – 1) x overestimate_per_bridge) + (dia x transit_delay) + med_access_delay + Maximum_transmission_halt_delay) / 2 = ((4 x hello) + dia – 1 + dia – 1 + dia + 0.5 + 1) / 2 = ((4 x hello) + (3 x dia) – 0.5) / 2
Ces calculs vous donnent ces deux formules finales (si vous arrondissez la valeur 0,5) :
max_age = (4 x hello) + (2 x dia) – 2 forward_delay = ((4 x hello) + (3 x dia)) / 2
Si vous voulez régler les compteurs de STP afin de réaliser un meilleur délai de convergence, vous devez suivre strictement ces deux formules.
Voici un exemple. Si vous avez un diamètre de quatre pour un réseau ponté, vous devez utiliser ces paramètres :
hello = 2 (default) then max_age = 14 sec forward_delay = 10 sec If hello = 1 then max_age = 10 sec forward_delay = 8 sec
Remarque : Hello = 1 est la valeur la plus basse. Vous ne pouvez pas régler ce paramètre à moins de 10 sec pour l'âge maximal et 8 pour le retard de retransmission si votre diamètre est égal à quatre.
Une réduction du délai Hello à 1 sec est la façon la plus facile et la plus sûre de diminuer les paramètres de STP. Cependant, souvenez-vous que si vous réduisez le délai Hello de 2 à 1 sec, vous doublerez le nombre de BPDU qui sont envoyés/reçus par chaque pont. Cette augmentation entraîne une charge supplémentaire sur le processeur, qui devra traiter deux fois plus de BPDU. Cette charge peut être un problème si vous avez plusieurs VLAN et agrégations.
Le diamètre dépend complètement de la conception de réseaux. Le diamètre est le nombre maximal de commutateurs que vous croisez afin d'associer deux commutateurs dans le réseau ponté (qui inclut source et destination), si vous assumez les le pire des cas. Vous ne croiserez pas le même commutateur deux fois quand vous déterminez le diamètre. Dans le schéma dans la section compteurs du protocole Spanning tree de ce document, vous pouvez vérifier si vous avez un diamètre de 5 (chemin de routage F-E-B-A-C).
Maintenant, consultez le schéma dans cette section. Le schéma contient quelques commutateurs d'accès (commutateurs, C, D et E) qui se connectent à deux commutateurs de distribution (A et B). Il y a une borne de la niveau 3 (L3) entre les commutateurs de distribution et le noyau. Le domaine partagé est arrêté aux commutateurs de distribution. Le diamètre de STP est 5 :
C-A-D-B-E
D-A-C-B-E
Le schéma montre, qu'il n'y a aucune paire de commutateurs donnant un diamètre qui est plus grand que 5.
Comme mentionné dans la section Compteurs du protocole Spanning tree, chaque BPDU inclut hello, retard de retransmission et compteurs d'âge STP maximal. Un pont d'IEEE n'est pas touché par la configuration locale de la valeur de compteurs. Le pont d'IEEE considère la valeur des compteurs dans le BPDU que le pont reçoit. En fait, seulement un compteur configuré sur le pont de base de STP est important. Si vous perdez la racine, la nouvelle racine procède à imposer sa valeur de temporisateur locale au réseau entier. Ainsi, même si vous n'avez pas besoin de configurer la même valeur de temporisateur dans le réseau entier, vous devez au moins configurer toutes les modifications de compteur sur le pont de base et sur le pont de base de secours.
Si vous utilisez un commutateur Cisco qui exécute le logiciel du système d'exploitation de Catalyst (CatOS), il y a quelques macros-instructions qui permettent d'installer la racine et de régler les paramètres selon les formules. Émettez la commande de set spantree root vlan dia diameter hello hello_time afin de définir le diamètre et le délai Hello. Voici un exemple :
Taras> (enable) set spantree root 8 dia 4 hello 2 VLAN 8 bridge priority set to 8192. VLAN 8 bridge max aging time set to 14. VLAN 8 bridge hello time set to 2. VLAN 8 bridge forward delay set to 10. Switch is now the root switch for active VLAN 8.
Si vous faites configurer le diamètre du réseau de STP, la valeur configurée de diamètre n'est pas affichée en configuration ou dans le résultat d'une commande affichée.