CCNP SWITCH 10: Protocolo Spanning Tree Avanzado

Protocolo Rapid Spanning Tree

Rapid Spanning Tree Protocol RSTP definido por IEEE 802.1w.

Comportamiento de los puertos RSTP

El Root Bridge se elige de igual manera que con STP 802.1D mirando el Bridge ID más bajo. Los puertos en RSTP pueden ser:

  • Root Port: El el único puerto de cada switch el cual tiene el mejor camino hacia el Root Bridge por lo que es idéntico a 802.1D. (por definición el Root Bridge no tiene puerto Root).
  • Designated Port: El puerto de switch en un segmento de red que tiene el mejor coste (root path cost) hacía el Root.
  • Alternate Port: Es un puerto que tiene un camino alternativo hacía el Root diferente del Root Port, por lo que es menos deseable (por ejemplo dos uplinks de un switch de acceso uno será el Root y el otro el Alternate).
  • Backup Port: Es un puerto que provee de redundancia (pero menos deseable) a un segmento donde ya hay otro enlace. (un switch puede o no tener un camino de backup).

RSTP define los estados de los puertos de acuerdo a lo que el puerto hace con las tramas entrantes. Los estados son:

  • Discarding: Las tramas entrantes son tiradas (dropped), por lo que no se aprenden MACs (en 802.1D sería una combinación de los estados Disabled, Blocking y Listening. El estado Listening no se necesita porque RSTP puede negociar rápidamente un cambio de estado sin escuchar primero las BPDUs).
  • Learning: Se tiran (dropped) las tramas entrantes , pero se aprenden MACs.
  • Forwarding: Se envían las tramas entrantes de acuerdo con la MACs aprendidas (y que se aprenden).

BPDUs en RSTP

Ya que RSTP distingue sus BPDUs de los BPDUs de 802.1D pueden coexistir ambos. Cada puerto intenta funcionar de acuerdo al BPDU que recibe, por ejemplo cuando se recibe en un puerto una BPDU 802.1D empieza a funcionar de acuerdo a las reglas de 802.1D.

Tipos de puerto

  • Edge Port: es un puerto en el extremo de la red donde se conecta solo un servidor. Es lo mismo que en STP un puerto PortFast que se mantiene el nombre para que sea familiar. Por definición este tipo de puerto no puede formar un bucle por lo que puede pasar directamente a Forwarding. Recordar que si se recibe una BPDU en un puerto Edge este puerto pierde su estado de Edge.
  • Root Port: Es el puerto que tiene mejor coste hacia el raiz y solo puede haber un puerto Root en cada switch (aunque puede haber caminos alternativos en otros puertos hacia el raiz, Alternate).
  • Point-to-Point Port: cualquier puerto que se conecta a otro switch y se convierte en Designated Port. El estado del puerto lo decide un acuerdo rápido ente ambos switches en vez de que un temporizador expire.

Sincronización

Para participar en la convergencia RSTP un switch debe decidir el estado de cada uno de sus puertos. Los puertos que no son Edge empiezan en estado Discarding. Después de que los switches (cada uno con su vecino) intercambian BPDUs se puede identificar el Root Bridge. Si un puerto recibe una BPDU superior de un vecino ese puerto se convierte en Root Port.

Cambios de topología y RSTP

RSTP detecta un cambio de topología solo cuando un puerto que no es Edge (nonedge) pasa su estado a Forwarding. Esto puede parecer extraño ya que un fallo de topología no se usa como desencadenante.

Configuración RSTP

Para configurar un puerto como Edge usamos:

Switch(config-if)# spanning-tree portfast

Para forzar un puerto que actue como point-to-point usamos:

Switch(config-if)# spanning-tree link-type point-to-point

Rapid Per-VLAN spaning Tree Protocol

Para pasar a modo Rapid PVST+ (o RPVST+) usamos:

Switch(config)# spanning-tree mode rapid-pvst

Para designar y configurar un switch como root bridge primario usamos:

Switch(config)# spanning-tree vlan vlan-id root primary

Para designar y configurar un switch como root bridge secundario usamos:

Switch(config)# spanning-tree vlan vlan-id root secondary

Para verificar la configuración de un switch usamos:

Switch(config)# show spanning-tree vlan vlan-id

Multiple Spanning-Tree Protocol

Regiones MST

MST (IEEE 802.1s) es diferente de 802.1d y PVST+ aunque puede interoperar con ellos. Cada switch configurado con MST debe saber como están sus vecinos y para ellos todos los switches con MST se configuran en regiones, donde en cada región todos los switches con MST tiene los mismos parámetros.

MST define los siguientes atributos:

  • Nombre de la configuración MST (32 caracteres). Region name.
  • Número de revisión de la configuración MST (de 0 a 65535). Se debe configurar manualmente en todos los switches el mismo número.
  • Tabla con la relación entre instancia MST y la(s) vlan(s) (4096 entradas). Indica que instancia que vlans contiene o que vlan está en que instancia.

Si dos o más switches tiene los mismos atributos están en la misma región.

IST Instances

Dentro de una única región MST corre una instancia Internal Spanning Tree (IST) para que no haya bucle entre los enlaces CST se une con la frontera de la región y todo los switches dentro de la región. Debemos pensar en IST como un gran switch que se conecta a otro que usa CST.

Instancias MST

La idea detrás de MST es agrupar multiples VLANs a un número pequeño de instancias de STP. Dentro de una región las instancias MST coexisten con IST. Cisco soporta un máximo de 16 instancias MST (MSTI) que van desde el 1 al 15 siendo la 0 utilizada por IST. Por defecto todas la VLANs pertenecen a la instancia MST00.

Configuración MST

Para definir y configurar una región MST debemos seguir estos 7 pasos en cada uno de los switches que participen:

  1. Activar MST en el switch:
    Switch(config)# spanning-tree mode mst
  2. Entrar en el modo de configuración de MST:
    Switch(config)# spanning-tree mst configuration
    Switch(config)# show current
    El comando "show current" nos muestra como está actualmente la configuración.
  3. Asignar un nombre de configuración a la región (hasta 32 caracteres):
    Switch(config-mst)# name name
  4. Asignar un número de revisión de configuración  (0 to 65,535):
    Switch(config-mst)# revision version

    Este número nos sirve a modo de seguimiento y cada vez que se haga un cambio en la configuración se debe incrementar en 1 manualmente y como la configuración dentro de una región debe coincidir en TODOS los switches debemos replicar este incremento en todos los switches de la misma región.

  5. Mapear VLANs a una instancia MST:
    Switch(config-mst)# instance instance-id vlan vlan-list
    el parámetro instance-id (0 to 15) lleva información de la topología de las VLANs listadas, que podemos incluirlas con rangos (usando el guión) o separadas por comas. Resaltar que por defecto TODAS las VLANs van por la instancia 0, el IST.
  6. Mostrar los cambios que hemos realizado, es importante para verificar la configuración:
    Switch(config-mst)# show pending
  7. Salir del modo de configuración de MST que inmediatamente aplica los cambios y los hace activos:
    Switch(config-mst)# exit
    O podemos cancelar los cambios con este comando:
    Switch(config-mst)# abort

NOTA: Una vez activado y configurado MST, PVST+ se paran y el switch cambia a RSTP. Un switch NO puede operar a la vez MST y PVST+.

Comandos de verificación MST

Switch# show spanning-tree mst
Switch# show spanning-tree mst Instancia
Switch# show spanning-tree mst Instancia detail
Switch# show spanning-tree mst interface tipo mod/num

Retro

Lugares

Redes

Sistemas

Varios