Catalyst 4000 Family Software Configuration Guide, 6.3 and 6.4
Configuring Spanning Tree

Table Of Contents

Configuring Spanning Tree

How Spanning Tree Protocols Work

How a Topology Is Created

How a Switch or Port Becomes the Root Switch or Root Port

How Bridge Protocol Data Units Work

Calculating and Assigning Port Costs

Calculating the Port Cost Using the Short Method

Calculating the Port Cost Using the Long Method

Calculating the Port Cost for Aggregate Links

Spanning Tree Port States

Blocking State

Listening State

Learning State

Forwarding State

Disabled State

Understanding PVST+ and MISTP Modes

PVST+ Mode

MISTP Mode

MISTP-PVST+ Mode

Bridge Identifiers

MAC Address Allocation

MAC Address Reduction

Using PVST+

Default PVST+ Configuration

Configuring PVST+ Bridge ID Priority

Configuring PVST+ Port Cost

Configuring PVST+ Port Priority

Configuring PVST+ Default Port Cost Mode

Configuring PVST+ Port VLAN Cost

Configuring PVST+ Port VLAN Priority

Disabling the PVST+ Mode on a VLAN

Using MISTP-PVST+ or MISTP

Default MISTP Configuration

Enabling MISTP-PVST+ or MISTP

Configuring a MISTP Instance

Configuring MISTP Bridge ID Priority

Configuring MISTP Port Cost

Configuring MISTP Port Priority

Configuring MISTP Port Instance Cost

Configuring MISTP Port Instance Priority

Enabling a MISTP Instance

Mapping VLANs to a MISTP Instance

Determining MISTP Instance—VLAN Mapping Conflicts

Unmapping VLANs from a MISTP Instance

Disabling MISTP-PVST+ or MISTP

Configuring a Root Switch

Configuring a Primary Root Switch

Configuring a Secondary Root Switch

Configuring a Root Switch to Improve Convergence

Using Root Guard—Preventing Switches from Becoming Root

Configuring Spanning Tree Timers

Configuring Hello Time

Configuring Forward Delay Time

Configuring Maximum Aging Time

Understanding How BPDU Skewing Works

Configuring Spanning Tree BPDU Skewing


Configuring Spanning Tree


This chapter provides a brief overview of the IEEE 802.1D bridge Spanning Tree Protocol (STP) and describes how to use and configure Cisco's proprietary Spanning Tree Protocols, Per VLAN Spanning Tree + (PVST+), and Multi-Instance Spanning Tree Protocol (MISTP) on the Catalyst enterprise LAN switches.


Note For information on configuring the spanning tree PortFast, UplinkFast, and BackboneFast features, see "Configuring Spanning Tree PortFast, UplinkFast, and BackboneFast, and Loop Guard."


This chapter consists of these sections:

How Spanning Tree Protocols Work

Understanding PVST+ and MISTP Modes

Bridge Identifiers

Using PVST+

Using MISTP-PVST+ or MISTP

Configuring a Root Switch

Configuring Spanning Tree Timers

Configuring Spanning Tree BPDU Skewing


Note For complete syntax and usage information for the commands used in this chapter, refer to the Command Reference—Catalyst 4000 Family, Catalyst 2948G, and Catalyst 2980G Switches.


How Spanning Tree Protocols Work

This section describes the specific functions that are common to all spanning tree protocols. Cisco's proprietary spanning tree protocols, PVST+ and MISTP, are based on the IEEE 802.1D STP. (See the "Understanding PVST+ and MISTP Modes" section for information about PVST+ and MISTP.) The 802.1D STP is a Layer 2 management protocol that provides path redundancy in a network while preventing undesirable loops. All spanning tree protocols use an algorithm that calculates the best loop-free path through the network.

The Spanning Tree Protocol (STP) uses a distributed algorithm that selects one bridge of a redundantly connected network as the root of a spanning tree connected active topology. STP assigns roles to each port depending on what the port's function is in the active topology. Port roles are as follows:

Root—A unique forwarding port elected for the spanning tree topology

Designated—A forwarding port elected for every switched LAN segment

Alternate—A blocked port providing an alternate path to the root port in the spanning tree

Backup—A blocked port in a loopback configuration

Switches that have ports with these assigned roles are called root or designated switches. See the next section, How a Topology Is Created.

In Ethernet networks, only one active path may exist between any two stations. Multiple active paths between stations can cause loops in the network. When loops occur, some switches recognize stations on both sides of the switch. This situation causes the forwarding algorithm to malfunction allowing duplicate frames to be forwarded.

Spanning tree algorithms provide path redundancy by defining a tree that spans all of the switches in an extended network and then forces certain redundant data paths into a standby (blocked) state. At regular intervals the switches in the network send and receive spanning tree packets which they use to identify the active path. If one network segment becomes unreachable, or if spanning tree costs change, the spanning tree algorithm reconfigures the spanning tree topology and reestablishes the link by activating a standby path.

Spanning tree operation is transparent to end stations, which do not detect whether they are connected to a single LAN segment or a switched LAN of multiple segments.

How a Topology Is Created

All switches in an extended LAN participating in a spanning tree gather information about other switches in the network through an exchange of data messages known as bridge protocol data units (BPDUs). This exchange of messages results in the following actions:

A unique root switch is elected for the spanning tree network topology.

A designated switch is elected for every switched LAN segment.

Any loops in the switched network are eliminated by placing redundant switch ports in a backup state; all paths that are not needed to reach the root switch from anywhere in the switched network are placed in STP-blocked mode.

The topology of an active switched network is determined by the following:

The unique switch identifier (MAC address of the switch) associated with each switch

The path cost to the root associated with each switch port

The port identifier (MAC address of the port) associated with each switch port

In a switched network, the root switch is the logical center of the spanning tree topology. A spanning tree protocol uses BPDUs to elect the root switch and root port for the switched network, as well as the root port and designated port for each switched segment.

How a Switch or Port Becomes the Root Switch or Root Port

If all switches in a network are enabled with default settings, the switch with the lowest MAC address becomes the root switch. In the network shown in Figure 7-1, Switch A, with the lowest MAC address, is the root switch. However, due to traffic patterns, number of forwarding ports, or line types, Switch A might not be the ideal root switch. A switch can be forced to become the root switch by increasing the priority (that is, lowering the priority number) on the preferred switch. This causes the spanning tree to recalculate the topology and make the selected switch the root switch.

Figure 7-1 Configuring a Loop-Free Topology

You can also change the priority of a port in order to make it the root port. When the spanning tree topology is based on default parameters, the path between source and destination stations in a switched network might not be ideal. The goal is to make the fastest link the root port, connecting higher-speed links to a port that has a higher number than the current root port can cause a root-port change.

For example, assume that a port on Switch B is a fiber-optic link. Also, another port on Switch B (an unshielded twisted-pair [UTP] link) is the root port. Network traffic might be more efficient over the high-speed fiber-optic link. By changing the Port Priority parameter for the UTP port to a higher priority (lower numerical value) than the fiber-optic port, the UTP port becomes the root port. You could also accomplish this scenario by changing the Port Cost parameter for the UTP port to a lower value than that of the fiber-optic port.

How Bridge Protocol Data Units Work

BPDUs contain configuration information about the transmitting switch and its ports, including switch and port MAC addresses, switch priority, port priority, and port cost. Each configuration BPDU contains this information:

The unique identifier of the switch that the transmitting switch believes to be the root switch

The cost of the path to the root from the transmitting port

The identifier of the transmitting port

The switch sends configuration BPDUs to communicate and compute the spanning tree topology. A MAC frame conveying a BPDU sends the switch group address to the destination address field. All switches connected to the LAN on which the frame is transmitted receive the BPDU. BPDUs are not directly forwarded by the switch, but the receiving switch uses the information in the frame to calculate a BPDU, and if the topology changes, initiates a BPDU transmission.

A BPDU exchange results in the following:

One switch is elected as the root switch.

The shortest distance to the root switch is calculated for each switch.

A designated switch is selected: the switch that is closest to the root switch through which frames will be forwarded to the root.

A port for each switch is selected. This is the port that provides the best path from the switch to the root switch.

Ports included in the STP are selected.

Calculating and Assigning Port Costs

By calculating and assigning the port cost of the switch ports, you can ensure that the shortest (lowest cost) distance to the root switch is used to transmit data. You can calculate and assign lower path cost values (port costs) to higher bandwidth ports by using either the short method (which is the default) or the long method. The short method uses a 16-bit format that yields values from 1 to 65535. The long method uses a 32-bit format that yields values in the range of 1 to 200,000,000. For more information on setting the default cost mode, see the "Configuring PVST+ Default Port Cost Mode" section.


Note You should configure all switches in your network to use the same method for calculating port cost. The short method is used to calculate the port cost unless you specify that the long method be used. You can specify the calculation method using the CLI.


Calculating the Port Cost Using the Short Method

The IEEE 802.1D specification assigns 16-bit (short) default port cost values to each port that is based on bandwidth. You can also manually assign port costs between 1-65535. The 16-bit values are only used for ports that have not been specifically configured for port cost. Table 7-1 shows the default port cost values that are assigned by the switch for each type of port when you use the short method to calculate the port cost.

Table 7-1 Default Port Cost Values Using the Short Method

Port Speed
Default Cost Value
Default Range

10 Mbps

100

1 to 65535

100 Mbps

19

1 to 65535

1 Gbps

4

1 to 65535


Calculating the Port Cost Using the Long Method

802.1t assigns 32-bit (long) default port cost values to each port using a formula that is based on the bandwidth of the port. You can also manually assign port costs between 1-200,000,000. The formula for obtaining default 32-bit port costs is to divide the bandwidth of the port by 200,000,000. Table 7-2 shows the default port cost values that are assigned by the switch and the recommended cost values and ranges for each type of port when you use the long method to calculate port cost.

Table 7-2 Default Port Cost Values Using the Long Method

Port Speed
Recommended Value
Recommended Range
Available Range

£ 100 kbps

200000000

20000000 to 200000000

1 to 200000000

1 Mbps

20000000

2000000 to 200000000

1 to 200000000

10 Mbps

2000000

200000 to 20000000

1 to 200000000

100 Mbps

200000

20000 to 2000000

1 to 200000000

1 Gbps

20000

2000 to 200000

1 to 200000000

10 Gbps

2000

200 to 20000

1 to 200000000


Calculating the Port Cost for Aggregate Links

As individual links are added or removed from an aggregate link (port bundle), the bandwidth of the aggregate link increases or decreases. These changes in bandwidth lead to recalculation of the default port cost for the aggregated port. Changes to the default port cost or changes resulting from links that autonegotiate their bandwidth could lead to recalculation of the spanning tree topology which may not be desirable, especially if the added or removed link is of little consequence to the bandwidth of the aggregate link (for example, if a 10-Mbps link is removed from a 10-Gbps aggregate link). Because of the limitations that are presented by automatically recalculating the topology, 802.1t states that changes in bandwidth will not result in changes to the cost of the port. Therefore, the aggregated port will use the same port cost parameters as a standalone port.

Spanning Tree Port States

Topology changes can take place in a switched network due to a link coming up or going down (failing). When a switch port transitions directly from nonparticipation in the topology to the forwarding state, it can create temporary data loops. Ports must wait for new topology information to propagate through the switches in the LAN before they can start forwarding frames. They must also allow the frame lifetime to expire for frames that have been forwarded using the old topology.


Note With IOS Release 12.1.(1)E or later releases, the ARP on STP Topology Change Notification feature ensures that excessive flooding does not occur when the MSFC receives a topology change notification (TCN) from the supervisor engine. The feature causes the MSFC to send ARP requests for all the ARP entries belonging to the VLAN interface where the TCN is received. When the ARP replies come back, the PFC learns the MAC entries which were lost as a result of the topology change. Learning the entries immediately following a topology change prevents excessive flooding later. There is no configuration required on the MSFC. This feature works with supervisor engine software release 5.4(2) or later releases.


At any given time each port on a switch using STP is in one of these states:

Blocking

Listening

Learning

Forwarding

Disabled

A port moves through these states:

From initialization to blocking

From blocking to either listening or disabled

From listening to either listening or disabled

From learning to either forwarding or disabled

From forwarding to disabled

Figure 7-2 illustrates how a port moves through the states.

Figure 7-2 STP Port States

You can modify each port state by using management software, such as VLAN Trunk Protocol (VTP). When you enable spanning tree, every switch in the network goes through the blocking state and the transitory states of listening and learning at power up. If properly configured, each port stabilizes into the forwarding or blocking state.

When the spanning tree algorithm places a port in the forwarding state, the following occurs:

The port is put into the listening state while it waits for protocol information that suggests it should go to the blocking state.

The port waits for the expiration of a protocol timer that moves the port to the learning state.

In the learning state, the port continues to block frame forwarding as it learns station location information for the forwarding database.

The expiration of a protocol timer moves the port to the forwarding state, where both learning and forwarding are enabled.

Blocking State

A port in the blocking state, such as port 2 in Figure 7-3, does not participate in frame forwarding. After initialization a BPDU is sent to each port in the switch. A switch initially assumes it is the root until it exchanges BPDUs with other switches. This exchange establishes which switch in the network is really the root. If only one switch resides in the network, no exchange occurs, the forward delay timer expires, and the ports move to the listening state. A switch always enters the blocking state following switch initialization.

Figure 7-3 Port 2 in Blocking State

A port in the blocking state performs as follows:

Discards frames received from the attached segment.

Discards frames switched from another port for forwarding.

Does not incorporate station location into its address database. (There is no learning on a blocking port, so there is no address database update.)

Receives BPDUs and directs them to the system module.

Does not transmit BPDUs received from the system module.

Receives and responds to network management messages.

Listening State

The listening state is the first transitional state a port enters after the blocking state. The port enters this state when the spanning tree determines that the port should participate in frame forwarding. Learning is disabled in the listening state. Figure 7-4 shows a port in the listening state.

Figure 7-4 Port 2 in Listening State

A port in the listening state performs as follows:

Discards frames received from the attached segment.

Discards frames switched from another port for forwarding.

Does not incorporate station location into its address database. (There is no learning at this point, so there is no address database update.)

Receives BPDUs and directs them to the system module.

Processes BPDUs received from the system module.

Receives and responds to network management messages.

Learning State

A port in the learning state prepares to participate in frame forwarding. The port enters the learning state from the listening state. Figure 7-5 shows a port in the learning state.

Figure 7-5 Port 2 in Learning State

A port in the learning state performs as follows:

Discards frames received from the attached segment.

Discards frames switched from another port for forwarding.

Incorporates station location into its address database.

Receives BPDUs and directs them to the system module.

Receives, processes, and transmits BPDUs received from the system module.

Receives and responds to network management messages.

Forwarding State

A port in the forwarding state forwards frames, as shown in Figure 7-6. The port enters the forwarding state from the learning state.

Figure 7-6 Port 2 in Forwarding State

A port in the forwarding state performs as follows:

Forwards frames received from the attached segment.

Forwards frames switched from another port for forwarding.

Incorporates station location information into its address database.

Receives BPDUs and directs them to the system module.

Processes BPDUs received from the system module.

Receives and responds to network management messages.


Caution Use spanning tree PortFast mode only on ports directly connected to individual workstations to allow these ports to come up and go directly to the forwarding state, instead of having to go through the entire spanning tree initialization process. To prevent illegal topologies, enable spanning tree on ports connected to switches or other devices that forward messages. For more information about PortFast, see "Configuring Spanning Tree PortFast, UplinkFast, and BackboneFast, and Loop Guard."

Disabled State

A port in the disabled state does not participate in frame forwarding or STP, as shown in Figure 7-7. A port in the disabled state is virtually nonoperational.

Figure 7-7 Port 2 in Disabled State

A disabled port performs as follows:

Discards frames received from the attached segment.

Discards frames switched from another port for forwarding.

Does not incorporate station location into its address database. (There is no learning, so there is no address database update.)

Receives BPDUs but does not direct them to the system module.

Does not receive BPDUs for transmission from the system module.

Receives and responds to network management messages.

Understanding PVST+ and MISTP Modes

Catalyst 4000 family switches provide two proprietary spanning tree modes based on the IEEE 802.1D standard and one mode that is a combination of the two modes:

Per VLAN Spanning Tree (PVST+)

Multi-Instance Spanning Tree Protocol (MISTP)

MISTP-PVST+ (combination mode)

An overview of each mode is provided in this section. Each mode is described in detail in these sections:

Using PVST+

Using MISTP-PVST+ or MISTP


Caution If your network currently uses PVST+ and you plan to use MISTP on any switch, you must first enable MISTP-PVST+ on the switch and configure a MISTP instance to avoid causing loops in the network.

PVST+ Mode

PVST+ is the default Spanning Tree Protocol used on all Ethernet, Fast Ethernet, and Gigabit Ethernet port-based VLANs on Catalyst 4000 family switches. PVST+ runs on each VLAN on the switch, ensuring that each has a loop-free path through the network.

PVST+ provides Layer 2 load balancing for the VLAN on which it runs; you can create different logical topologies using the VLANs on your network to ensure that all of your links will be used but no one link will be oversubscribed.

Each instance of PVST+ on a VLAN has a single root switch. This root switch propagates the spanning tree information associated with that VLAN to all other switches in the network. Because each switch has the same knowledge about the network, this process ensures that the network topology is maintained.

MISTP Mode

MISTP is an optional spanning tree protocol that runs on Catalyst 4000 family switches. MISTP allows you to group multiple VLANs under a single instance of spanning tree (a MISTP instance). MISTP combines the Layer 2 load-balancing benefits of PVST+ with the lower CPU load of IEEE 802.1Q.

A MISTP instance is a virtual logical topology defined by a set of bridge and port parameters; a MISTP instance becomes a real topology when VLANs are mapped to it. Each MISTP instance has its own root switch and a different set of forwarding links (that is different bridge and port parameters).

Each instance of MISTP has a single root switch. This root switch propagates the information associated with that instance of MISTP to all other switches in the network. This process ensures that the network topology is maintained because each switch has the same knowledge about the network.

MISTP builds MISTP instances by exchanging MISTP BPDUs with peer entities in the network. There is only one BPDU for each MISTP instance, rather than for each VLAN as in PVST+. There are fewer BPDUs in a MISTP network; therefore, there is less overhead in the network. MISTP discards any PVST+ BPDUs that it sees.

A MISTP instance can have any number of VLANs mapped to it, but a VLAN can only be mapped to a single MISTP instance. You can easily move a VLAN (or VLANs) in a MISTP topology to another MISTP instance if it has converged. (However, if ports are added at the same time the VLAN is moved, convergence time is required.)

MISTP-PVST+ Mode

MISTP-PVST+ is a transition spanning tree mode that allows you to use the MISTP functionality on Catalyst 4000 family switches while continuing to communicate with the older Catalyst 5000 and 6000 switches in your network that use PVST+. A switch using PVST+ mode and a switch using MISTP mode connected together cannot see the BPDUs of the other switch, a condition that can cause loops in the network. MISTP-PVST+ allows interoperability between PVST+ and pure MISTP, because it detects the BPDUs of both modes. If you wish to convert your network to MISTP, you can use MISTP-PVST+ to transition the network from PVST+ to MISTP in order to avoid problems.

MISTP-PVST+ conforms to the limits of PVST+; for example, you can only configure the amount of VLAN ports on your MISTP-PVST+ switches that you configure on your PVST+ switches.

Bridge Identifiers

This section explains how MAC addresses are used in PVST+ and MISTP as unique bridge identifiers:

MAC Address Allocation

MAC Address Reduction

MAC Address Allocation

Catalyst 4000 family switches have a pool of 1024 MAC addresses that can be used as bridge identifiers for VLANs running under PVST+ or for MISTP instances. You can use the show module command to view the MAC address range.

MAC addresses are allocated sequentially, with the first MAC address in the range assigned to VLAN 1, the second in the range assigned to VLAN 2, and so forth. The last MAC address in the range is assigned to the supervisor engine in-band (sc0) management interface.

For example, if the MAC address range for the supervisor engine is 00-e0-1e-9b-2e-00 to 00-e0-1e-9b-31-ff, the VLAN 1 bridge ID is 00-e0-1e-9b-2e-00, the VLAN 2 bridge ID is 00-e0-1e-9b-2e-01, the VLAN 3 bridge ID is 00-e0-1e-9b-2e-02, and so forth. The in-band (sc0) interface MAC address is 00-e0-1e-9b-31-ff.

MAC Address Reduction

The MAC address reduction feature is used on Catalyst 6000 family switches to enable extended-range VLAN identification. If you have a Catalyst 6000 switch in your network and you have MAC address reduction enabled on it, you should also enable MAC address reduction on all your Catalyst 4000 family switches to avoid problems in the spanning tree topology. When MAC address reduction is enabled on Catalyst 4000 family switches, it disables the pool of MAC addresses used for the VLAN spanning tree, leaving a single MAC address that identifies the switch. For detailed information on the MAC address reduction feature, refer to the Catalyst 6000 Software Configuration Guide.

Using PVST+

PVST+ is the default spanning tree mode for Catalyst 4000 family switches. These sections describe how to configure PVST+ on Ethernet VLANs:

Default PVST+ Configuration

Configuring PVST+ Bridge ID Priority

Configuring PVST+ Port Cost

Configuring PVST+ Port Priority

Configuring PVST+ Default Port Cost Mode

Configuring PVST+ Port VLAN Cost

Configuring PVST+ Port VLAN Priority

Disabling the PVST+ Mode on a VLAN

Default PVST+ Configuration

Table 7-3 shows the default PVST+ configuration.

Table 7-3 PVST+ Default Configuration

Feature
Default Value

VLAN 1

All ports assigned to VLAN 1

Enable state

PVST+ enabled for all VLANs

MAC address reduction

Disabled

Bridge priority

32768

Bridge ID priority

32769 (bridge priority plus system ID extension of VLAN 1)

Port priority

32

Port cost

Gigabit Ethernet: 4

Fast Ethernet: 10

FDDI/CDDI: 10

Ethernet: 100

Default spantree port cost mode

Short (802.1D)

Port VLAN priority

Same as port priority but configurable on a per-VLAN basis in PVST+

Port VLAN cost

Same as port cost but configurable on a per-VLAN basis in PVST+

Maximum aging time

20 seconds

Hello time

2 seconds

Forward delay time

15 seconds


Configuring PVST+ Bridge ID Priority

The bridge ID priority is the priority of a VLAN when the switch is in PVST+ mode.

When the switch is in PVST+ mode without MAC address reduction enabled, you can enter a bridge priority value between 0 and 65535. The VLAN bridge ID priority becomes that value.

When the switch is in PVST+ mode with MAC address reduction enabled, you can enter one of 16 bridge priority values: 0, 4096, 8192, 12288, 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, or 61440.

The bridge priority is combined with the system ID extension (that is, the ID of the VLAN) to create the bridge ID priority for the VLAN.

To configure the spanning tree bridge priority for a VLAN, perform this task in privileged mode:

 
Task
Command

Step 1 

Set the bridge ID priority for a VLAN.

set spantree priority bridge_ID_priority [vlan]

Step 2 

Verify the bridge ID priority.

show spantree [vlan] [active]

This example shows the bridge ID when MAC address reduction is not enabled (default):

Console> (enable) set spantree priority 30000 1
Spantree 1 bridge priority set to 30000.
Console> (enable) show spantree 1 
VLAN 1
Spanning tree mode          PVST+
Spanning tree type          ieee
Spanning tree enabled

Designated Root             00-60-70-4c-70-00
Designated Root Priority    16384
Designated Root Cost        19
Designated Root Port        2/3
Root Max Age   14 sec   Hello Time 2  sec   Forward Delay 10 sec

Bridge ID MAC ADDR          00-d0-00-4c-18-00
Bridge ID Priority          30000
Bridge Max Age 20 sec   Hello Time 2  sec   Forward Delay 15 sec

Port                     Vlan Port-State    Cost      Prio Portfast Channel_id
------------------------ ---- ------------- --------- ---- -------- ----------
 1/1                     1    not-connected         4   32 disabled 0
 1/2                     1    not-connected         4   32 disabled 0
 2/1                     1    not-connected       100   32 disabled 0
 2/2                     1    not-connected       100   32 disabled 0 

This example shows the bridge ID priority when MAC reduction is enabled:

Console> (enable) set spantree priority 32768 1
Spantree 1 bridge ID priority set to 32769
(bridge priority: 32768 + sys ID extension: 1)
Console> (enable) show spantree 1/1 1
VLAN 1
Spanning tree mode          PVST+
Spanning tree type          ieee
Spanning tree enabled

Designated Root             00-60-70-4c-70-00
Designated Root Priority    16384
Designated Root Cost        19
Designated Root Port        2/3
Root Max Age   14 sec   Hello Time 2  sec   Forward Delay 10 sec

Bridge ID MAC ADDR          00-d0-00-4c-18-00
Bridge ID Priority          32769  (bridge priority: 32768, sys ID ext: 1)
Bridge Max Age 20 sec   Hello Time 2  sec   Forward Delay 15 sec

Port                     Vlan Port-State    Cost      Prio Portfast Channel_id
------------------------ ---- ------------- --------- ---- -------- ----------
 1/1                     1    not-connected         4   32 disabled 0
 1/2                     1    not-connected         4   32 disabled 0
 2/1                     1    not-connected       100   32 disabled 0
 2/2                     1    not-connected       100   32 disabled 0 

Configuring PVST+ Port Cost

You can configure the port cost of switch ports. Ports with lower port costs are more likely to be chosen to forward frames. Assign lower numbers to ports attached to faster media (such as full duplex) and higher numbers to ports attached to slower media.The possible range of cost is 1 to 65535. The default differs for different media. Path cost is typically 1000 ÷ LAN speed in megabits per second.

To configure the port cost for a port, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure the port cost for a switch port.

set spantree portcost {mod/port} cost

Step 2 

Verify the port cost setting.

show spantree mod/port

This example shows how to configure the port VLAN priority on a port and verify the configuration:

Console> (enable) set spantree portcost 2/3 12
Spantree port 2/3 path cost set to 12.
Console> (enable) show spantree 2/3
VLAN 1
   .
   .
   .
Port                     Vlan Port-State    Cost      Prio Portfast Channel_id
------------------------ ---- ------------- --------- ---- -------- ----------
 1/1                     1    not-connected         4   32 disabled 0
 1/2                     1    not-connected         4   32 disabled 0
 2/1                     1    not-connected       100   32 disabled 0
 2/2                     1    not-connected       100   32 disabled 0
 2/3                     1    forwarding           12   32 disabled 0
 2/4                     1    not-connected       100   32 disabled

Configuring PVST+ Port Priority

You can configure the port priority of switch ports in PVST+ mode. The port with the lowest priority value forwards frames for all VLANs. The possible port priority value is 0 to 63. The default is 32. If all ports have the same priority value, the port with the lowest port number forwards frames.

To configure the port priority for a port, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure the port priority for a switch port.

set spantree portpri mod_num/port_num priority

Step 2 

Verify the port priority setting.

show spantree mod/port

This example shows how to configure the port priority for a port:

Console> (enable) set spantree portpri 2/3 16
Bridge port  2/3 port priority set to 16.
Console> (enable) show spantree 2/3
VLAN 1 
   .
   .
   .
Port                     Vlan Port-State    Cost      Prio Portfast Channel_id
------------------------ ---- ------------- --------- ---- -------- ----------
 1/1                     1    not-connected         4   32 disabled 0
 1/2                     1    not-connected         4   32 disabled 0
 2/1                     1    not-connected       100   32 disabled 0
 2/2                     1    not-connected       100   32 disabled 0
 2/3                     1    forwarding           19   16 disabled 0
 2/4                     1    not-connected       100   32 disabled 0    

Configuring PVST+ Default Port Cost Mode

If any switch in your network is using a port speed of 10 Gb or over and the network is using PVST+ spanning tree mode, all switches in the network must have the same path cost defaults. You can enter the set spantree defaultcostmode command to force all VLANs associated with all the ports to have the same pathcost default set.

There are two default port cost modes available - short and long.

The short mode has these parameters:

Portcost

Portvlancost

When uplinkfast is enabled, the actual cost is incremented by 3000

The long mode has these parameters:

Portcost

Portvlancost

When uplinkfast is enabled, the actual cost is incremented by 10,000,000

EtherChannel computes the cost of a bundle using the formula, AVERAGE_COST/NUM_PORT

The default port cost mode is set to short in PVST+ mode. For port speeds of 10 Gb and greater, the default port cost mode must be set to long.

To change the default port cost mode, perform this task in privileged mode:

 
Task
Command
 

Set the default port cost mode.

set spantree defaultcostmode {short | long}

This example shows how to configure the default port cost mode:

Console> (enable) set spantree defaultcostmode long
Portcost and portvlancost set to use long format default values.
Console> (enable) 

Configuring PVST+ Port VLAN Cost

You can configure the port cost for a port on a per-VLAN basis. Ports with a lower port VLAN cost are more likely to be chosen to forward frames. You should assign lower numbers to ports attached to faster media (such as full duplex) and higher numbers to ports attached to slower media. The default cost differs for different media.

You can set a cost value from 1 to 65535.

To configure the port VLAN cost for a port, perform this task in privileged mode:

 
Task
Command
 

Configure the port VLAN cost for a VLAN on a switch port.

set spantree portvlancost {mod/port} [cost cost] [vlan_list]

This example shows how to change the port VLAN cost on a port:

Console> (enable) set spantree portvlancost 2/3 cost 20000 1-5
Port 2/3 VLANs 6-11,13-1005,1025-4094 have path cost 12.
Port 2/3 VLANs 1-5,12 have path cost 20000.
This parameter applies to trunking ports only.
Console> (enable

Configuring PVST+ Port VLAN Priority

When the switch is in PVST+ mode, you can set the port priority for a trunking port in a VLAN. The port with the lowest priority value for a specific VLAN forwards frames for that VLAN. The possible port VLAN priority range is 0 to 63. The default is 32. If all ports have the same priority value for a particular VLAN, the port with the lowest port number forwards frames for that VLAN.

The port VLAN priority value must be lower than the port priority value.

To configure the port VLAN priority for a port, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure the port VLAN priority for a VLAN on a switch port.

set spantree portvlanpri mod_num/port_num priority [vlans]

Step 2 

Verify the port VLAN priority.

show config all

This example shows how to change the port VLAN priority on a port:

Console> (enable) set spantree portvlanpri 2/3 16 6
Port 2/3 vlans 6 using portpri 16.
Port 2/3 vlans 1-5,7-800,802-1004,1006-4094 using portpri 32.
Port 2/3 vlans 801,1005 using portpri 4.
This parameter applies to trunking ports only.
Console> (enable) show config all
   .
   .
   .
set spantree portcost    2/12,2/15  19
set spantree portcost    2/1-2,2/4-11,2/13-14,2/16-48  100
set spantree portcost    2/3  12
set spantree portpri     2/1-48  32
set spantree portvlanpri 2/1  0
set spantree portvlanpri 2/2  0
   .
   .
   .
set spantree portvlanpri 2/48 0
set spantree portvlancost 2/1  cost 99
set spantree portvlancost 2/2  cost 99
set spantree portvlancost 2/3  cost 20000 1-5,12    

Disabling the PVST+ Mode on a VLAN

When the switch is in PVST+ mode, you can disable spanning-tree on individual VLANs or all VLANs. When you disable spanning tree on a VLAN, the switch does not participate in spanning-tree and any BPDUs received in that VLAN are flooded on all ports.


Caution We do not recommend disabling spanning tree, even in a topology that is free of physical loops. Spanning tree serves as a safeguard against misconfigurations and cabling errors. Do not disable spanning tree in a VLAN without ensuring that there are no physical loops present in the VLAN.


Caution Do not disable spanning tree on a VLAN unless all switches or routers in the VLAN have spanning tree disabled. You cannot disable spanning tree on some switches or routers in a VLAN and leave spanning tree enabled on other switches or routers in the VLAN. If spanning tree remains enabled on the switches and routers, they will have incomplete information about the physical topology of the network which may cause unexpected results.

To disable PVST+, perform this task in privileged mode:

 
Task
Command
 

Disable PVST+ mode on a VLAN.

set spantree disable vlans [all]

This example shows how to disable PVST+ on a VLAN:

Console> (enable) set spantree disable 4
Spantree 4 disabled.
Console> (enable) 

Using MISTP-PVST+ or MISTP

The default spanning tree mode on Catalyst 4000 family switches is PVST+. If you want to use MISTP mode in your network, we recommend you carefully follow the procedures described in the following sections in order to avoid loss of connectivity in your network.

When you change the spanning tree mode from one mode to another, the current mode stops, the information collected at run-time is used to build the port database for the new mode, and the new spanning tree mode restarts the computation of the active topology. Information about the port states is lost; however, all of the configuration parameters are preserved for the previous mode. If you return to the previous mode, the configuration will still be there.


Note We recommend that if you wish to use MISTP mode, you should configure all of your Catalyst 4000 family switches to run MISTP.


To use MISTP mode, you first enable a MISTP instance, then map at least one VLAN to the instance. You must have at least one forwarding port in the VLAN in order for the MISTP instance to be active.

If you are changing a switch from PVST+ mode to MISTP mode and you have other switches in the network that are using PVST+, you must first enable MISTP-PVST+ mode on each switch on which you intend to use MISTP so that PVST+ BPDUs can flow through the switches while you configure them.

When all switches in the network are configured in MISTP-PVST+, you can then enable MISTP on all of the switches.

These sections describe how to configure PVST+ on Ethernet VLANs:

Default MISTP Configuration

Enabling MISTP-PVST+ or MISTP

Enabling a MISTP Instance

Mapping VLANs to a MISTP Instance

Disabling MISTP-PVST+ or MISTP

Default MISTP Configuration

Table 7-4 shows the default configuration for MISTP and MISTP-PVST+.

Table 7-4 MISTP Default Configuration 

Feature
Default Value

Enable state

Disabled until a VLAN is mapped to a MISTP instance

MAC address reduction

Disabled

Bridge priority

32768

Bridge ID priority

32769 (bridge priority plus the system ID extension of MISTP instance 1)

Port priority

32 (global)

Port cost

Gigabit Ethernet: 4

Fast Ethernet: 10

FDDI/CDDI: 10

Ethernet: 100

Default port cost mode

Short (802.1D)

Port VLAN priority

Same as port priority but configurable on a per-VLAN basis in PVST+

Port VLAN cost

Same as port cost but configurable on a per-VLAN basis in PVST+

Maximum aging time

20 seconds

Hello time

2 seconds

Forward delay time

15 seconds


Enabling MISTP-PVST+ or MISTP

If you enable MISTP in a PVST+ network, you must be very careful to avoid bringing down the network. This section explains how to enable MISTP or MISTP-PVST+ on your network.


Caution If you have more than 4500 VLAN ports configured on your switch, your network could crash if you change from MISTP to either PVST+ or MISTP-PVST+ mode. Reduce the number of configured VLAN ports on your switch to no more than 4,500 to avoid losing connectivity.


Caution If you are working from a Telnet connection to your switch, the first time you enable MISTP-PVST+ or MISTP mode, you must do so from the switch console; do not use a Telnet connection through the data port or you will lose the connection to the switch. Once you map a VLAN to a MISTP instance, you can Telnet to the switch.

To change from PVST+ to MISTP-PVST+ or MISTP, perform this task in privileged mode:

 
Task
Command
 

Set a spanning tree mode.

set spantree mode {mistp | pvst+ | mistp-pvst+}

This example shows how to set a switch to MISTP-PVST+ mode:

Console> (enable) set spantree mode mistp-pvst+
PVST+ database cleaned up.
Spantree mode set to MISTP-PVST+.
Warning!! There are no VLANs mapped to any MISTP instance.
Console> (enable)

You can display VLAN-to-MISTP instance mapping information propagated from the root switch at runtime. This display is available only in the MISTP or MISTP-PVST+ mode. When in the PVST+ mode, use the optional keyword config, to display the list of mappings configured on the local switch.


Note MAC addresses are not displayed when the keyword config is specified.


To display spanning tree mapping, perform this task in privileged mode:

 
Task
Command

Step 1 

Set spanning tree mode to MISTP.

set spantree mode mistp

Step 2 

Show spanning tree mapping.

show spantree mapping [config]

This example shows how to display the spanning tree VLAN instance mapping in MISTP mode:

MISTP/MISTP-PVST+
Console> (enable) set spantree mode mistp
PVST+ database cleaned up.
Spantree mode set to MISTP.
Console> (enable) show spantree mapping
Inst Root Mac          Vlans
---- ----------------- --------------------------
1    00-50-3e-78-70-00 1
2    00-50-3e-78-70-00 -
3    00-50-3e-78-70-00 -
4    00-50-3e-78-70-00 -
5    00-50-3e-78-70-00 -
6    00-50-3e-78-70-00 -
7    00-50-3e-78-70-00 -
8    00-50-3e-78-70-00 -
9    00-50-3e-78-70-00 -
10   00-50-3e-78-70-00 -
11   00-50-3e-78-70-00 -
12   00-50-3e-78-70-00 -
13   00-50-3e-78-70-00 -
14   00-50-3e-78-70-00 -
15   00-50-3e-78-70-00 -
16   00-50-3e-78-70-00 -

Configuring a MISTP Instance

This section describes how to configure MISTP instances:

Configuring MISTP Bridge ID Priority

Configuring MISTP Port Cost

Configuring MISTP Port Priority

Configuring MISTP Port Instance Cost

Configuring MISTP Port Instance Priority

Configuring MISTP Bridge ID Priority

You can set the bridge ID priority for a MISTP instance when the switch is in MISTP or MISTP-PVST+ mode.

The bridge priority value is combined with the system ID extension (the ID of the MISTP instance) to create the bridge ID priority. You can set 16 possible bridge priority values: 0, 4096, 8192, 12288, 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, and 61440.

To configure the bridge ID priority for a MISTP instance, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure the bridge ID priority for a MISTP instance.

set spantree priority bridge_ID_priority [mistp-instance instance]

Step 2 

Verify the bridge ID priority.

show spantree mistp-instance instance [mod/port] active

The example shows how to configure the bridge ID priority for a MISTP instance:

Console> (enable) set spantree priority 8192 mistpinstance 1
Spantree 1 bridge ID priority set to 8193
(bridge priority: 8192 + sys ID extension: 1)
Console> (enable) show spantree mistp-instance 1
VLAN 1
Spanning tree mode          MISTP
Spanning tree type          ieee
Spanning tree enabled
VLAN mapped to MISTP Inst