STP (PROTOCOLO SPANNING TREE)

PROTOCOLO SPANNING TREE (STP)

El protocolo spanning tree (STP) fue desarrollado para enfrentar estos inconvenientes. STP asegura que exista sólo una ruta lógica entre todos los destinos de la red, al realizar un bloque de forma intencional a aquellas rutas redundantes que puedan ocasionar un bucle.

Un puerto se considera bloqueado cuando el tráfico de la red no puede ingresar ni salir del puerto. Esto no incluye las tramas de unidad de datos del protocolo comúnmente llamadas (BPDU) utilizadas por STP para evitar bucles. Las rutas físicas aún existen para proporcionar la redundancia, pero las mismas se deshabilitan para evitar que se generen bucles. Si alguna vez la ruta es necesaria para compensar la falla de un cable de red o de un switch, STP vuelve a calcular las rutas y desbloquea los puertos necesarios para permitir que la ruta redundante se active.

*Descripción del Algoritmo STP
STP utiliza el algoritmo de spanning tree (STA) para determinar los puertos de switch de la red que deben configurarse para el bloqueo a fin de evitar que se generen bucles. El STA designa un único switch como Root Bridge (puente raíz) y lo utiliza como punto de referencia para todos los cálculos de rutas. De esta selección depende toda la topología de STP, en equipos Cisco esta selección se realiza de manera automática, lo cual no siempre resulta eficiente, lo recomendable es realizar las configuraciones necesarias para definir el root bridge de nuestra conveniencia.

*Configurando Spanning-tree

La primera forma consiste en asegurar la asignación de la prioridad mediante el uso del macro “root primary” es decir que el switch configura la Bridge ID Priority de manera automática, si en una topología en la que todos los equipos tengan por defecto el valor de 32768, el switch seleccionara el valor de 24576 dejando el valor siguiente de 28672 para el switch que se configure con la macro para definirlo como secundario. “root secondary”, esto garantiza que ambos switches contenga un Bridge ID menor que el resto de equipos.

Los comandos necesarios para realizar la configuración serían los siguientes:

Sw1# configure terminal
Sw1(config)# spanning-tree vlan 1 root primary

Sw2# configure terminal
Sw2(config)# spanning-tree vlan 1 root secondary










Para verificar la configuración realizada en ambos equipos basta con ejecutar el comando show spanning-tree. Principalmente porque acá es fácil ver lo que indica el gráficamente packet tracer, pero en la vida real la historia es distinta.


Sw#1#sh spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 24577
Address 000B.BE09.C457
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 24577 (priority 24576 sys-id-ext 1)
Address 000B.BE09.C457
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20

Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1 Desg FWD 19 128.1 P2p
Fa0/2 Desg FWD 19 128.2 P2p

Sw2#sh spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 24577
Address 000B.BE09.C457
Cost 19
Port 1(FastEthernet0/1)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 28673 (priority 28672 sys-id-ext 1)
Address 0009.7CDB.B952
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20





Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1 Root FWD 19 128.1 P2p
Fa0/2 Desg LSN 19 128.2 P2p



La segunda forma de definir el Root Bridge consiste en definir manualmente la prioridad del switch, mediante el comando “spanning-tree vlan id de la VLAN priority valor” para el ejemplo de la vlan 1 el comando seria el siguiente: “spanning-tree vlan 1 priority 4096” en este ejemplo utilizo el valor 4096, sin embargo bien puede usarse también el valor 0.
Con spanning-tree es posible definir rangos de vlan o bien vlans que no sean continuas, de la siguiente manera: 1,3-5,7,9-11 en este caso spanning-tree funciona para las vlan 1,3,4,5,6,7,9,10 y 11. 

Los comandos necesarios para realizar la configuración serian los siguientes:

Sw1# configure terminal
Sw1(config)# spanning-tree vlan 1-2 priority 0

Sw2# configure terminal
Sw2(config)# spanning-tree vlan 1-2 priority 4096






Para verificar la configuración realizada en ambos equipos basta con ejecutar el comando show spanning-tree. En ambos comando es fácil identificar el valor del Root bridge y el valor local del switch, en el caso del sw#1 ambos valores serán iguales, pues este es el Root bridge, mientras que en el caso de los otros switches indicaran el valor del Root bridge y el valor local.

sw#1#sh spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 1
Address 000B.BE09.C457
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 1 (priority 0 sys-id-ext 1)
Address 000B.BE09.C457
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20

Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1 Desg FWD 19 128.1 P2p
Fa0/2 Desg FWD 19 128.2 P2p


Sw#2#sh spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 1
Address 000B.BE09.C457
Cost 19
Port 1(FastEthernet0/1)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 4097 (priority 4096 sys-id-ext 1)
Address 0009.7CDB.B952
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20

Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1 Root FWD 19 128.1 P2p
Fa0/2 Desg FWD 19 128.2 P2p