MSTP Topology Calculation
MSTP Principle
MSTP can divide the entire Layer 2 network into multiple MST regions and calculate the CST. In an MST region, multiple spanning trees are calculated, each of which is called an MSTI. Of these MSTIs, MSTI 0 is also known as the internal spanning tree (IST). Like STP, MSTP uses configuration messages to calculate spanning trees, but the configuration messages are MSTP-specific.
Vectors
Both MSTIs and the CIST are calculated based on vectors, which are carried in MST BPDUs. Therefore, switching devices exchange MST BPDUs to calculate MSTIs and the CIST.
Vectors are described as follows:
The following vectors participate in the CIST calculation:
{ root ID, external root path cost, regional root ID, internal root path cost, designated switching device ID, designated port ID, receiving port ID }
The following vectors participate in the MSTI calculation:
{ regional root ID, internal root path cost, designated switching device ID, designated port ID, receiving port ID }
The vectors in braces are in descending order of priority, from left to right.
Table 10-7 describes the vectors.
Table 10-7 Vector descriptionVector Name
Description
Root ID
Identifies the root switching device for the CIST. The root ID consists of the priority value (16 bits) and MAC address (48 bits).
The priority value is the priority of MSTI 0.
External root path cost (ERPC)
Indicates the path cost from a CIST regional root to the root. ERPCs saved on all switching devices in an MST region are the same. If the CIST root is in an MST region, ERPCs saved on all switching devices in the MST region are 0s.
Regional root ID
Identifies the MSTI regional root. The regional root ID consists of the priority value (16 bits) and MAC address (48 bits).
The priority value is the priority of MSTI 0.
Internal root path cost (IRPC)
Indicates the path cost from the local bridge to the regional root. The IRPC saved on a regional edge port is greater than the IRPC saved on a non-regional edge port.
Designated switching device ID
Identifies the nearest upstream bridge on the path from the local bridge to the regional root. If the local bridge is the root or the regional root, this ID is the local bridge ID.
Designated port ID
Identifies the port on the designated switching device connected to the root port on the local bridge. The port ID consists of the priority value (4 bits) and port number (12 bits). The priority value must be a multiple of 16.
Receiving port ID
Identifies the port receiving the BPDU. The port ID consists of the priority value (4 bits) and port number (12 bits). The priority value must be a multiple of 16.
The vector s are compared as follows:
For a vector, the smaller the priority value, the higher the priority.
If the priority of a vector carried in the configuration message of a BPDU received by a port is higher than that in the configuration message saved on the port, the port replaces the saved configuration message with the received one. In addition, the port updates the global configuration message saved on the device.
If the priority of a vector carried in the configuration message of a BPDU received on a port is lower than that in the configuration message saved on the port, the port discards the BPDU.
If the priority of a vector carried in the configuration message of a BPDU received on a port is equal to that in the configuration message saved on the port, the next vector is compared until one is found to be higher or lower. If they are all equal, the port discards the BPDU.
Vectors are compared in the following order: root IDs, ERPCs, regional root IDs, IRPCs, designated switching device IDs, designated port IDs, receiving port IDs.
CIST Calculation
After completing the configuration message comparison, the switching device with the highest priority on the entire network is selected as the CIST root. MSTP calculates an IST for each MST region, and calculates a CST to interconnect MST regions. On the CST, each MST region is considered a switching device. The CST and ISTs constitute a CIST for the entire network.
MSTI Calculation
In an MST region, MSTP calculates an MSTI for each VLAN based on mappings between VLANs and MSTIs. Each MSTI is calculated independently. The calculation process is similar to the process in which STP calculates a spanning tree. For details, see STP Topology Calculation.
The spanning tree is calculated independently for each MSTI, and spanning trees of MSTIs are independent of each other.
Spanning trees of MSTIs can have different roots and topologies.
Each MSTI sends BPDUs in its spanning tree.
The topology of each MSTI is configured by commands.
A port can be configured with different parameters for different MSTIs.
A port can play different roles or have different states in different MSTIs.
- Along an MSTI (in an MST region)
- Along a CST (between MST regions)
MSTP Response to Topology Changes
MSTP topology changes are processed in the manner similar to that in RSTP. For details about how RSTP processes topology changes, see Technical Details of RSTP.