Contenido

Introducción

Antes de comenzar

Convenciones

Prerequisites

Componentes Utilizados

Introducción al equilibrio de carga de VLAN entre troncales

Cómo STP decide qué puerto bloquear

Configuración de balance de carga de la VLAN en los switches Catalyst que ejecutan CatOS

Detalles en el comando portvlanpri

Configuración del equilibrio de carga de VLAN de los switches Catalyst por medio de la ejecución de IOS integrados

Detalles sobre los comandos port-priority y vlan port-priority

Conclusión

Información Relacionada

Introducción

Este documento proporciona la teoría que hay detrás del balanceo de carga de VLAN entre trunks, y también proporciona ejemplos de configuración para los switches que ejecutan CatOS e IOS Integrado.

Antes de comenzar

Convenciones

Para obtener más información sobre las convenciones del documento, consulte Convenciones de Consejos Técnicos de Cisco.

Prerequisites

No hay requisitos previos específicos para este documento.

Componentes Utilizados

Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.

Introducción al equilibrio de carga de VLAN entre troncales

Los comandos utilizados en este documento están disponibles en las familias Catalyst 4000, 5000 y 6000 que ejecutan CatOS e IOS integrado. Las secciones teoréticas de este documento estás relacionadas con el protocolo de árbol de expansión (STP) y son independientes de la plataforma.

La configuración que se muestra en la figura 1 a continuación, en la que dos switches están conectados de forma directa a través de más de un tronco, es muy común para fines de redundancia. Si uno de los dos links falla, el segundo pronto estará disponible para transmitir tráfico. Cuando ambos links están activos, el algoritmo de árbol de expansión (STA) deshabilita a uno de ellos para evitar un loop de conexión en puente entre los dos switches.

En la configuración de la figura 1 anterior, con dos troncales FastEthernet que vinculan Catalyst R y Catalyst D, el STP elige el mismo puerto de bloqueo para todas las VLAN configuradas. En este caso, Catalyst R es el puente raíz y Catalyst D decide bloquear el puerto D2 para VLAN 1 y VLAN 2. El problema principal con este diseño es que el link R2-D2 simplemente se sacrifica y sólo hay 100 Mb/s disponibles entre los dos switches. Para aprovechar ambos links, puede cambiar la configuración y permitir VLAN 1 sólo en el link R1-D1 y VLAN2 sólo en el link R2-D2.

La red resultante, mostrada en la figura 2, pierde su redundancia. Ahora tiene ambos links reenviando al mismo tiempo y prácticamente puede utilizar 200 Mb/s entre los dos switches. Sin embargo, si falla un link, pierde completamente la conectividad para una VLAN. La solución ideal es la que se describe en la figura 3:

En la figura 3, usted mantiene los troncales entre los dos switches, pero el puerto D1 está bloqueando la VLAN 1 y reenviando la VLAN 2; el puerto D2 está bloqueando la VLAN 2 y reenviando la VLAN 1. Este diseño mantiene las mejores características de las figuras 1 y 2:

- Ambos links están reenviando, proporcionando de este modo 200 Mb/s de conectividad total entre los dos switches.

- Si falla un link, el restante desbloquea la VLAN correspondiente y mantiene la conectividad en ambas VLAN entre los switches.

Este documento explica cómo lograr esta configuración, luego de una breve explicación de las operaciones STP.

Cómo STP decide qué puerto bloquear

La descripción detallada de cómo funciona STA está fuera del alcance de este documento. Sin embargo, resume brevemente cómo el algoritmo decide, en este caso, si un puerto bloquea o reenvía. Se centra en la configuración más simple posible con sólo una VLAN; Catalyst R es el puente raíz en esta VLAN y Catalyst D tiene varias conexiones redundantes a Catalyst R. Catalyst D bloquea todos sus puertos a Catalyst R pero su puerto raíz. ¿Cómo selecciona Catalyst D su puerto raíz? Los puentes que ejecutan las Bridge Protocol Data Units (BPDUs) del intercambio STA a través de links y estos mismos BPDU se pueden clasificar estrictamente de acuerdo a sus contenidos. Una BPDU es superior que otra si tiene:

1. Un ID del puente de la raíz inferior.

2. Un costo menor de trayecto hacia la raíz.

3. Un ID del puente de envío más baja.

4. Una ID de puerto de envío más lento.

Estos cuatro parámetros se analizan en orden, es decir, el parámetro 2 es importante solamente si el parámetro 1 es el mismo en las dos BPDU sujetas a comparación. El puerto que se elige como puerto raíz en Catalyst D es aquél que recibe el mejor BPDU.

En este caso específico, figura 4, todas las BPDU enviadas por Catalyst R tienen el mismo ID de puente raíz, el mismo costo de trayectoria a la raíz y el mismo ID de puente de envío. El único parámetro que queda para seleccionar el mejor es el ID de puerto de envío. El ID de puerto de envío es un parámetro de 16 bits, dividido en dos campos: la prioridad de puerto y un índice de puerto. El valor predeterminado para la prioridad de puerto es 32 y el índice de puerto es exclusivo de cada puerto del switch.

prioridad de puerto

Índice del puerto

Tamaño en bits

6

10

Valor predeterminado

32

Valor único fijo

La Figura 4 ilustra los parámetros de Id de puerto en los BPDU. En este caso, Catalyst D selecciona el puerto D1 como su puerto raíz porque el índice de puerto R2 es inferior al de R1. Si desea que D2 se reenvíe finalmente, debe forzarlo como puerto raíz. La única manera de hacerlo es reducir el valor de prioridad de puerto R2 (o aumentar el valor de prioridad de puerto R1). Esto es lo que se hizo en la figura 5.

Para lograr el balanceo de carga entre dos troncales, usted ajusta en una VLAN la prioridad de puerto en Catalyst R.

Configuración de balance de carga de la VLAN en los switches Catalyst que ejecutan CatOS

Diagrama de laboratorio

Mostrar estado de STP actual en Catalyst R

Este es el estado actual de STP en Catalyst R. Es la raíz para VLAN 1 y 2, por lo que todos sus puertos están reenviando.

Catalyst_R> (enable) show spantree 3/1

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/1                     1    forwarding       19       32 disabled   0

3/1                     2    forwarding       19       32 disabled   0

Catalyst_R> (enable) show spantree 3/2

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/2                     1    forwarding       19       32 disabled   0

3/2                     2    forwarding       19       32 disabled   0

Catalyst_R> (enable)

Mostrar estado actual de STP en Catalyst D

En Catalyst D, como se esperaba, el puerto 5/2 está bloqueado para las redes VLAN 1 y 2.

Catalyst_D> (enable) show spantree 5/1

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

--------- ----  -------------  -----  --------  ----------  ------------

5/1      1     forwarding        19        32   disabled

5/1      2     forwarding        19        32   disabled

Catalyst_D> (enable) show spantree 5/2

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

--------- ----  -------------  -----  --------  ----------  ------------

5/2      1     blocking          19        32   disabled

5/2      2     blocking          19        32   disabled

Catalyst_D> (enable)

Ajuste de la prioridad de puerto en Catalyst R

Va a disminuir el valor de prioridad de puerto para VLAN 1 en el puerto 3/2. De esta manera, el puerto 5/2 correspondiente en Catalyst D recibe mejores BPDU que los que se envían en el puerto 5/1 (que aún tiene un valor de prioridad de puerto de 32).

Catalyst_R> (enable) set spantree portvlanpri 3/2 16 1

Port 3/2 vlans 1 using portpri 16.

Port 3/2 vlans 2-1004 using portpri 32.

Port 3/2 vlans 1005 using portpri 4.

Catalyst_R> (enable)

Verificación de resultado en Catalyst R

Puede verificar que el valor de prioridad del puerto ha cambiado para VLAN 1:

Catalyst_R> (enable) show spantree 3/1

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/1                     1    forwarding       19       32 disabled   0

3/1                     2    forwarding       19       32 disabled   0

Catalyst_R> (enable) show spantree 3/2

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/2                     1    forwarding       19       16 disabled   0

3/2                     2    forwarding       19       32 disabled   0

Catalyst_R> (enable)

Comprobar resultados en Catalyst D

Puede ver en Catalyst D que, para VLAN 1, el puerto 5/1 está bloqueando y el puerto 5/2 está reenviando, como era de esperarse.

Catalyst_D> (enable) show spantree 5/1

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

--------- ----  -------------  -----  --------  ----------  ------------

5/1      1     blocking          19        32   disabled

5/1      2     forwarding        19        32   disabled

Catalyst_D> (enable) show spantree 5/2

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

--------- ----  -------------  -----  --------  ----------  ------------

5/2      1     forwarding        19        32   disabled

5/2      2     blocking          19        32   disabled

Catalyst_D> (enable)

Detalles en el comando portvlanpri

Sólo hay dos valores posibles para la prioridad por tronco del puerto VLAN y únicamente uno de ellos se puede configurar con el comando portvlanpri. Significa que en un trunk dado, usted tiene dos grupos de VLAN:

- Aquellos que tienen el valor de prioridad de puerto "global" (32 por defecto).

- Los que tienen un valor "personalizado" ingresado con el comando portvlanpri.

Un ejemplo puede aclarar esto. Considere agregar una tercera VLAN en el ejemplo. De manera predeterminada, esta VLAN pertenece al grupo con valor de prioridad del puerto global (el valor predeterminado es 32).

Catalyst_R> (enable) set vlan 3

Vlan 3 configuration successful

Catalyst_R> (enable) show spantree 3/2

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/2                     1    forwarding       19       16 disabled   0

3/2                     2    forwarding       19       32 disabled   0

3/2                     3    forwarding       19       32 disabled   0

Catalyst_R> (enable)

Cambie la prioridad global para el puerto, usando el comando set spantree portpri:

Catalyst_R> (enable) set spantree portpri 3/2 48

Bridge port  3/2 port priority set to 48.

Catalyst_R> (enable) show spantree 3/2

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/2                     1    forwarding       19       16 disabled   0

3/2                     2    forwarding       19       48 disabled   0

3/2                     3    forwarding       19       48 disabled   0

Catalyst_R> (enable)

Observe que todas las VLAN que pertenecen al grupo "global" cambiaron su prioridad a 48. Ahora asigne VLAN 3 al otro grupo "personalizado" de VLAN, dándole un valor de 8 con el comando portvlanpri:

Catalyst_R> (enable) set spantree portvlanpri 3/2 8 3

Port 3/2 vlans 1,3 using portpri 8.

Port 3/2 vlans 2,4-1004 using portpri 48.

Port 3/2 vlans 1005 using portpri 4.

Catalyst_R> (enable) show spantree 3/2

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/2                     1    forwarding       19        8 disabled   0

3/2                     2    forwarding       19       48 disabled   0

3/2                     3    forwarding       19        8 disabled   0

Catalyst_R> (enable)

Observe que todas las VLAN del grupo "personalizado" han cambiado su prioridad a 8, no sólo a VLAN 3. Para volver a colocar VLAN 3 en el grupo predeterminado, utilice el comando clear spantree portvlanpri:

Catalyst_R> (enable) clear spantree portvlanpri 3/2 3

Port 3/2 vlans 1 using portpri 8.

Port 3/2 vlans 2-1004 using portpri 48.

Port 3/2 vlans 1005 using portpri 4.

Catalyst_R> (enable) show spantree 3/2

Port                     Vlan Port-State    Cost  Priority Portfast   Channel_id

------------------------ ---- ------------- ----- -------- ---------- ----------

3/2                     1    forwarding       19        8 disabled   0

3/2                     2    forwarding       19       48 disabled   0

3/2                     3    forwarding       19       48 disabled   0

Catalyst_R> (enable)

Hay una última restricción en este comando. El valor asignado al grupo "global" debe ser superior al configurado en el grupo "personalizado".

Catalyst_R> (enable) set spantree portvlanpri 3/2 62 3

Portvlanpri must be less than portpri. Portpri for 3/2 is 48.

Para resumir:

"grupo “global”

"grupo "personalizado

De forma predeterminada, todas las VLAN pertenecen a este grupo.

Las VLAN seleccionadas con el comando set spantree portvlanpri pertenecen a este grupo.

La prioridad para estas VLAN se determina usando el comando set spantree port priority.

El valor de prioridad para todas estas VLAN es configurado por el comando set spantree portvlanpri.

El valor de prioridad configurado para el grupo "global" debe ser superior al configurado para el grupo "personalizado".

El comando clear spantree portvlanpri permite volver a poner una VLAN de este grupo en otro.

Configuración del equilibrio de carga de VLAN de los switches Catalyst por medio de la ejecución de IOS integrados

Nota: Este ejemplo de configuración se aplica a los switches que ejecutan IOS - Catalyst 2900/3500XL, Catalyst 2950, Catalyst 3550, Catalyst 4000 Supervisor III/IV y Catalyst 6000.

Diagrama de laboratorio

Mostrar estado de STP actual en Catalyst R

Este es el estado actual de STP en Catalyst R. Es la raíz para VLAN 1 y 2, por lo que todos sus puertos están reenviando.

Catalyst_R#show spanning-tree interface FastEthernet 3/1

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19        128.129  P2p

VLAN0002         Desg FWD 19        128.129  P2p

Catalyst_R#show spanning-tree interface FastEthernet 3/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19        128.130  P2p

VLAN0002         Desg FWD 19        128.130  P2p

Mostrar estado actual de STP en Catalyst D

En Catalyst D, como se esperaba, el puerto 5/2 está bloqueado para las redes VLAN 1 y 2.

Catalyst_D#show spanning-tree interface FastEthernet 5/1

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Root FWD 19        128.129  P2p

VLAN0002         Root FWD 19        128.129  P2p

Catalyst_D#show spanning-tree interface FastEthernet 5/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Altn BLK 19        128.130  P2p

VLAN0002         Altn BLK 19        128.130  P2p

Ajuste de la prioridad de puerto en Catalyst R

Va a disminuir el valor de prioridad de puerto para VLAN 1 en el puerto 3/2. De esta manera, el puerto 5/2 correspondiente en Catalyst D recibe mejores BPDU que los que se envían en el puerto 5/1 (que aún tiene un valor de prioridad de puerto de 128).

Catalyst_R#config terminal

Catalyst_R(config)#interface FastEthernet 3/2

Catalyst_R(config-if)#spanning-tree vlan 1 port-priority 64

Catalyst_R(config-if)#end

Catalyst_R#

Verificación de resultado en Catalyst R

Puede verificar que el valor de prioridad del puerto ha cambiado para VLAN 1:

Catalyst_R#show spanning-tree interface FastEthernet 3/1

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19        128.129  P2p

VLAN0002         Desg FWD 19        128.129  P2p

Catalyst_R#show spanning-tree interface FastEthernet 3/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19         64.130  P2p

VLAN0002         Desg FWD 19        128.130  P2p

Comprobar resultados en Catalyst D

Puede ver en Catalyst D que, para VLAN 1, el puerto 5/1 está bloqueando y el puerto 5/2 está reenviando, como era de esperarse.

Catalyst_D#show spanning-tree interface FastEthernet 5/1

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Altn BLK 19        128.129  P2p

VLAN0002         Root FWD 19        128.129  P2p

Catalyst_D#show spanning-tree interface FastEthernet 5/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Root FWD 19        128.130  P2p

VLAN0002         Altn BLK 19        128.130  P2p

Detalles sobre los comandos port-priority y vlan port-priority

Hay dos maneras de definir la prioridad del puerto VLAN:

- El valor de prioridad de puerto "global" (128 de forma predeterminada) que se puede modificar por interfaz mediante el comando port-priority

- El valor de prioridad de puerto "por VLAN" que se puede modificar por interfaz y por VLAN mediante el comando VLAN port-priority

Un ejemplo puede aclarar esto. Considere la posibilidad de agregar una tercera VLAN en este ejemplo. De manera predeterminada, esta VLAN pertenece al grupo con valor de prioridad del puerto global (el valor predeterminado es 128).

Catalyst_R#show spanning-tree interface FastEthernet 3/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19         64.130  P2p

VLAN0002         Desg FWD 19        128.130  P2p

VLAN0003         Desg FWD 19        128.130  P2p

Cambie la prioridad global para el puerto, usando el comando de configuración de interfaz spanning-tree port-priority:

Catalyst_R(config)#interface FastEthernet 3/2

Catalyst_R(config-if)#spanning-tree port-priority 160

Catalyst_R#

Catalyst_R#show spanning-tree interface FastEthernet 3/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19         64.130  P2p

VLAN0002         Desg FWD 19        160.130  P2p

VLAN0003         Desg FWD 19        160.130  P2p

Observe que todas las VLAN que pertenecen al grupo "global" cambiaron su prioridad a 160. Ahora asigne VLAN 3 a su propia prioridad 48 con el comando de interfaz spanning-tree vlan port-priority:

Catalyst_R(config)#interface FastEthernet 3/2

Catalyst_R(config-if)#spanning-tree vlan 3 port-priority 48

Catalyst_R#

Catalyst_R#show spanning-tree interface FastEthernet 3/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19         64.130  P2p

VLAN0002         Desg FWD 19        160.130  P2p

VLAN0003         Desg FWD 19         48.130  P2p

Observe que sólo la VLAN 3 ha cambiado su prioridad a 48. Para volver a colocar VLAN 3 en el grupo predeterminado, utilice el comando de interfaz no spanning-tree vlan port-priority:

Catalyst_R(config)#interface FastEthernet 3/2

Catalyst_R(config-if)#no spanning-tree vlan 3 port-priority

Catalyst_R#

Catalyst_R#show spanning-tree interface FastEthernet 3/2

Vlan             Role Sts Cost      Prio.Nbr Type

---------------- ---- --- --------- -------- --------------------------------

VLAN0001         Desg FWD 19         64.130  P2p

VLAN0002         Desg FWD 19        160.130  P2p

VLAN0003         Desg FWD 19        160.130  P2p

Conclusión

La configuración del equilibrio de carga en la VLAN que se acaba de completar optimiza el uso de troncos redundantes entre dos Catalyst.

El mantenimiento de los valores STP predeterminados lleva a que todos los links redundantes entre los dos Catalyst terminen en modo de bloqueo. El ajuste de la prioridad STP permite utilizar varios links al mismo tiempo para diferentes VLAN. Esto aumenta el ancho de banda total disponible entre los dos dispositivos. En caso de que ocurra un error en un link, el STP vuelve a enviar las VLAN a los troncos restantes a medida que vuelve a converger.

La única desventaja que queda en este diseño es que sólo puede equilibrar el tráfico mediante VLAN. Si en el ejemplo anterior, tenía un tráfico de 130 Mb/s que fluía a través de VLAN 1 y sólo 10 Mb/s en VLAN 2, todavía se descartan paquetes en VLAN 1, aunque en teoría hay 200 Mb/s entre Catalyst R y Catalyst D. La función EtherChanneling aborda esto, proporcionando equilibrio de carga entre varios links sobre una base de paquete. Si el hardware lo admite, use FastEtherchannel (o GigabitEtherChannel) en lugar de la configuración descrita en este documento.

Información Relacionada

- Página de soporte de protocolo de árbol de expansión

- Soporte de Productos de Switches

- Soporte de Tecnología de LAN Switching

- Soporte Técnico y Documentación - Cisco Systems