1-14Port statesIn MSTP, port states fall into the following three:z Forwarding: the port learns MAC addresses and forwards user traffic;z Learning: the port learns MAC addresses but does not forward user traffic;z Discarding: the port neither learns MAC addresses nor forwards user traffic.When in different MSTIs, a port can be in different states.A port state is not exclusively associated with a port role. Table 1-6 lists the port state(s) supported byeach port role (“√” indicates that the port supports this state, while “—“ indicates that the port does notsupport this state).Table 1-6 Port states supported by different port rolesPort role (right)Port state(below)Root port/masterport Designated port Alternate port Backup portForwarding √ √ — —Learning √ √ — —Discarding √ √ √ √How MSTP WorksMSTP divides an entire Layer 2 network into multiple MST regions, which are interconnected by acalculated CST. Inside an MST region, multiple spanning trees are calculated, each being called anMSTI. Among these MSTIs, MSTI 0 is the IST, while all the others are MSTIs. Similar to STP, MSTPuses configuration BPDUs to calculate spanning trees. The only difference between the two protocols isthat an MSTP BPDU carries the MSTP configuration on the device from which this BPDU is sent.CIST calculationThe calculation of a CIST tree is also the process of configuration BPDU comparison. During thisprocess, the device with the highest priority is elected as the root bridge of the CIST. MSTP generatesan IST within each MST region through calculation, and, at the same time, MSTP regards each MSTregion as a single device and generates a CST among these MST regions through calculation. The CSTand ISTs constitute the CIST of the entire network.MSTI calculationWithin an MST region, MSTP generates different MSTIs for different VLANs based on theVLAN-to-instance mappings. MSTP performs a separate calculation process, which is similar tospanning tree calculation in STP, for each spanning tree. For details, refer to How STP works.In MSTP, a VLAN packet is forwarded along the following paths: