Content deleted Content added
m -duplinks |
m rm already linked |
||
(36 intermediate revisions by 20 users not shown) | |||
Line 1:
{{Short description|Network protocol that builds a loop-free logical topology for Ethernet networks}}
{{IPstack}}
{{commons category|
The '''''Multiple Spanning Tree Protocol''''' (MSTP) and [[algorithm]], provides both, simple and full, connectivity assigned to any given [[Virtual LAN]] (VLAN) throughout a Bridged Local Area Network. MSTP uses [[Bridge Protocol Data Unit|BPDUs]] to exchange information between spanning-tree compatible devices, to prevent loops in each [[Multiple Spanning Tree Protocol#Multiple Spanning Tree Instances (MSTI)|MSTI]] (Multiple Spanning Tree Instances) and in the [[Multiple Spanning Tree Protocol#Common and Internal Spanning Tree(CST/CIST)|CIST]] (Common and Internal Spanning Tree), by selecting active and blocked paths. This is done as well as in [[Spanning Tree Protocol|STP]] without the need of manually enabling backup links and getting rid of [[Bridging (networking)|bridge]] [[Switching loop|loops]] danger.▼
▲The
Moreover, MSTP allows frames/packets assigned to different VLANs to follow separate paths, each based on an independent MSTI, within MST Regions composed of [[Local area network| LANs]] and or MST Bridges. These Regions and the other Bridges and LANs are connected into a single Common Spanning Tree (CST).▼
▲Moreover, MSTP allows frames/packets assigned to different VLANs to follow separate paths, each based on an independent MSTI, within MST
== History ==▼
It was originally defined in [[Institute of Electrical and Electronics Engineers|IEEE]] 802.1s as an amendment to [[IEEE 802.1Q|802.1Q]], 1998 edition and later merged into IEEE 802.1Q-2005 Standard, clearly defines an extension or an evolution of [[Radia Perlman]]'s Spanning Tree Protocol (STP) and the [[Spanning Tree Protocol#Rapid Spanning Tree Protocol|Rapid Spanning Tree Protocol]] (RSTP). It has some similarities with [[Cisco Systems]]' Multiple Instances Spanning Tree Protocol (MISTP), but there are some differences.▼
▲== History and motivation ==
▲It was originally defined in [[
The original STP and RSTP work on the physical link level, preventing bridge loops when redundant paths are present. However, when a LAN is virtualized using VLAN trunking, each physical link represents multiple logical connections. Blocking a physical link blocks all its logical links and forces all traffic through the remaining physical links within the [[spanning tree]]. Redundant links cannot be utilized at all. Moreover, without careful network design, seemingly redundant links on the physical level may be used to connect ''different'' VLANs and blocking any of them may disconnect one or more VLANs, causing ''bad paths''.
Instead, MSTP provides a potentially better utilization of alternate paths by enabling the use of alternate spanning trees for different VLANs or groups of VLANs.
== Main Entities ==
Line 14 ⟶ 18:
=== Multiple Spanning Tree Instances (MSTI) ===
[[File:MSTI.png|thumb|Different Spanning trees created by different MSTIs on the same physical layout.]]
As MSTP enables grouping and mapping VLANs into different spanning tree instances,
Each instance defines a single forwarding topology for an exclusive set of VLANs, by contrast, STP or RSTP networks contains only a single spanning tree instance for the entire network, which contains all the VLANs. A region can include:<ref>{{cite book
|last = packard
Line 20 ⟶ 24:
|title = Multiple Instance Spanning-Tree Operation
|year = 2006
|url =
}}</ref>
* '''Internal Spanning-Tree Instance (IST)''': Default spanning tree instance in any MST region. All VLANs in this IST instance conform a '''single''' spanning tree [[Topology#Computer science|topology]], allowing only one forwarding path between any two nodes. It also provides the root switch for any VLAN configured switches which are not specifically assigned to a MSTI.
* '''Multiple Spanning Tree Instance (MSTI)''': Unlike IST, this kind of instance comprises all static VLANs specifically assigned to it and at least, must include one VLAN.
''While each MSTI can have multiple VLANs, each VLAN can be associated with only one MSTI
=== MSTP Regions ===
[[File:MST Region.png|thumb|MSTIs in different regions.]]
A set of interconnected switches that must have configured the same VLANs and MSTIs, also have the same following parameters:
* '''MST Configuration Name'''
* '''Revision Level'''
Line 39 ⟶ 43:
We can differentiate two kinds of conformated Spanning Trees into the different networks created by MSTP, these are:
* '''Common Spanning Tree (CST):''' Administers the connectivity among MST regions, [[Spanning Tree Protocol|STP]] LANs and [[Spanning Tree Protocol#Rapid Spanning Tree Protocol|RSTP]] LANs in a bridged network.
* '''Common Internal Spanning Tree (CIST):''' Identifies regions in a network and administers the CIST root bridge for the network, for each region and for each spanning tree instance in each region.
The role of the Common Spanning Tree (CST) in a network, and the Common and Internal Spanning Tree (CIST) configured on each device, is to prevent loops within a wider network that may span more than one [[Multiple Spanning Tree Protocol#MSTP Regions|MSTP Region]] and parts of the network running in legacy STP or RSTP mode.
=== MSTP
{{
BPDUs' general format comprises a common generic portion,
=== MSTP Configuration Identification ===
In case there is an allocation of [[IEEE 802.1Q#Double tagging|VIDs (VLAN IDs)]] into a MST Region which differs within the different bridges that compound it, '''frames for some VIDs might be duplicated or even not delivered to some LANs at all'''. To avoid this, MST Bridges check that they are allocating VIDs to the same spanning trees as their neighboring MST Bridges in the same Region by transmitting and receiving MST Configuration Identifiers along with the spanning tree information. These MST Configuration Identifiers, while compact, '''are designed so that two matching identifiers have a very high probability of denoting the same configuration even in the absence of any supporting management practice for identifier allocation.''' Either one of this
* '''Configuration Identifier Format Selector:''' Indicates the use which is going to be given to the following components.
* '''Configuration Name'''<ref>{{cite book
Line 60 ⟶ 61:
|publisher = IETF, D. Harrington
|year = 1998
|doi = 10.17487/RFC2271
|url = https://tools.ietf.org/html/rfc2271
}}</ref><ref>{{cite book
Line 67 ⟶ 69:
|publisher = IETF, D. Harrington
|year = 1999
|doi = 10.17487/RFC2571
|url = https://tools.ietf.org/html/rfc2571
}}</ref><ref>{{cite book
Line 74 ⟶ 77:
|publisher = IETF, D. Harrington
|year = 2002
|doi = 10.17487/RFC3411
|url = https://tools.ietf.org/html/rfc3411
}}</ref>
Line 82 ⟶ 86:
|publisher = IETF, H. Krawczyk
|year = 1997
|doi = 10.17487/RFC2104
|url = https://tools.ietf.org/html/rfc2104
}}</ref><ref>{{cite book
Line 89 ⟶ 94:
|publisher = IETF, S. Turner
|year = 2011
|doi = 10.17487/RFC2104
|url = https://tools.ietf.org/html/rfc2104
}}</ref> A 16B signature [[
This object is specific and unique of MSTP, neither STP or RSTP use it.
== Protocol Operation ==
MSTP configures for every VLAN a single spanning tree active topology in a manner that
Additionally, comparisons and calculations done by each bridge select a CIST priority vector for each [[Port (computer networking)|Port]] (based on priority vectors, MST Configuration Identifiers and on an incremental Path Cost associated to each receiving port). This leads to one bridge been selected as the CIST Root of the Bridged LAN; then, a minimum cost path to the root is shifted out for each Bridge and LANs (thus preventing loops and ensuring full connectivity between VLANs). Subsequently, in each region, the bridge whose minimum cost path to the root
In summary, MSTP encodes some additional information in its BPDU regarding region information and configuration, each of these messages conveys the spanning tree information for each instance. Each instance can be assigned several configured VLANs, frames (packets) assigned to these VLANs operate in this spanning tree instance whenever they are inside the MST region. To avoid conveying their entire VLAN to spanning tree mapping in each BPDU, bridges encode an MD5 digest of their VLAN to instance table in the MSTP BPDU. This digest is then used by other MSTP bridges, along with other administratively configured values, to determine if the neighboring bridge is in the same MST region as itself.
Line 116 ⟶ 122:
MSTP is designed to be STP and RSTP compatible and interoperable without additional operational management practice, this is due to a set of measurements based on RSTP (Clause 17 of IEEE Std 802.1D, 2004 Edition) intending to provide the capability for frames assigned to different VLANs, to be transmitted along different paths within MST Regions.
Both protocols have in common various issues such as: the selection of the CIST Root Bridge (it uses the same fundamental algorithm, 17.3.1 of IEEE Std 802.1D, 2004 Edition, but with extended priority vector components within MST Regions), the selection of the MSTI Root Bridge and computation of port roles for each MSTI, the port roles used by the CIST are the same as those of STP and RSTP (with the exception of the Master Port), and the state variables associated with each port.
Into the bargain, they also share some problems as, for instance: MSTP
For all the above, it can be concluded that MSTP is fully compatible with RSTP bridges, an MSTP BPDU can be interpreted by an RSTP bridge as an RSTP BPDU. This not only allows compatibility with RSTP bridges without configuration changes, but also causes any RSTP bridges outside of an
== Protocol configuration ==
Line 125 ⟶ 132:
=== Before configuring MSTP ===
Be sure of having configured VLANs and having associated them with switch ports, afterwards determine:
=== Configuration guidelines for MSTP ===
Line 134 ⟶ 141:
A VLAN can only be mapped to one MSTI or to the CIST. One VLAN mapped to multiple spanning trees is not allowed. All the VLANs are mapped to the CIST by default. Once a VLAN is mapped to a specified MSTI, it is removed from the CIST.To avoid unnecessary STP processing, a port that is attached to a LAN with no other bridges/switches attached, can be configured as an edge port.
An example of how to configure a simple, three switch
A good configuration view, from the
S3# '''show spanning-tree mst'''
Line 172 ⟶ 179:
==== Protocol operation ====
To set up these trees, AMSTP relies in one basic tree which will be used to obtain instances (named Alternate Multiple Spanning Tree Instances – AMSTI), until one of them is built per switch for the network. The process applied to build up the main/basic tree is the same as in RSTP. In summary, firstly a bridge must be elected as the Root Bridge (this is done by the emission of BPDUs from each switch on the network periodically, every
==== BPDUs ====
AMSTP BPDUs use the same local multicast protocol addresses than STP and have a structure that resembles MSTP BPDUs since both are comprised essentially of a basic BPDU and several AM-Records, allowing full-backwards compatibility with RSTP and STP standard protocols. Each of the AM-Records contains the data used to negotiate a specific tree instance (AMSTI). Every ABridge, except for the elected root bridge, creates an AM-Record for its own spanning tree instances. They are used by connected ports of neighboring switches to negotiate the transitions of each tree instance with a proposal/agreement mechanism.
Line 183 ⟶ 189:
|first = Guillermo, Alberto, Arturo, Ignacio
|title = Alternative Multiple Spanning Tree Protocol (AMSTP) for Optical Ethernet Backbones
|publisher = Departamento de Ingeniería Telemática, Universidad Carlos III, Madrid, Spain,
|year = 2007
|url = https://e-archivo.uc3m.es/bitstream/handle/10016/2954/COMPNW_3675_08.pdf?sequence=2&isAllowed=y
}}</ref> emphasizes in the terms of efficiency in network usage and path length.
Abridges can be described as a two-tiered hierarchy of layer-two switches in which network islands running independent rapid spanning tree protocols communicate through a core formed by island root bridges (ABridges). As it has been mentioned, it is focused in terms of efficiency, this is due to the ability of AMSTP to provide optimum paths in the core mesh and the usage of RSTP to aggregate efficiently the traffic at islands networks. Its convergence speed is as fast as RSTP and MSTP.
==== Architecture ====
[[File:Architecture ABridges.png|thumb|Two-layer network proposal for ABridges.]]
With the objective of enhancing the properties of Abridges protocol, a two-level hierarchical [[link layer]] infrastructure in which segmentation is performed at link layer is proposed. The core will be composed, primarily, by Abridges (Bridges using an implementation of AMSTP) and will oversee connecting the leaf access networks that are referred to as
==== Protocol operation ====
Line 201 ⟶ 207:
ABridges is composed by three basic functional modules, which could be resumed in:
* '''STD Bridge:''' Performs standard bridging functions with the nodes of its island. The access functionality resides on the access ports of this module, which has an equivalent behavior to a standard bridge acting as a root bridge.
* '''AMSTP Routing:''' Routes frames between Abridges and the Gateway. It has core ports, either of them interconnect ABridges, which learn root bridge IDs from the AMSTP BPDUs received and store this information in a database, known as
* '''GateWay:''' Interconnects the above-mentioned modules.
Abridges will configure each of their ports to be part either of the core or of an island, this port self-configuration is done with very simple stipulations: if a port is not connected to another Abridge using a point-to-point link, it will turn itself an access port; on the other hand, ports directly connected to another Abridge are configured as core ports. This auto-configuration mechanism is pretty like the one used in RSTP.
Line 209 ⟶ 215:
==See also==
* [[Distributed minimum spanning tree]]
* [[EtherChannel]]
Line 216 ⟶ 221:
* [[Media Redundancy Protocol]]
* [[Minimum spanning tree]]
* [[
* [[Unidirectional Link Detection]]
* [[Virtual Link Trunking]]
Line 225 ⟶ 230:
== External links ==
{{commons category|
* [
* [
* [http://www.postel.org/pipermail/rbridge/ RBridge]
* Cisco Implementations
** [https://www.cisco.com/c/en/us/support/docs/lan-switching/spanning-tree-protocol/24248-147.html] (Cisco Implementation and brief tutorial about
** [http://www.cisco.com/en/US/tech/tk389/tk621/tsd_technology_support_protocol_home.html Cisco home page for the Spanning-Tree protocol family] (discusses CST, MISTP, PVST, PVST+, RSTP, STP)
** [http://www.cisco.com/image/gif/paws/10556/spanning_tree1.swf Educational explanation of STP] www.cisco.com
Line 240 ⟶ 245:
| publisher = [[University of California at Berkeley]]
| accessdate = 2011-09-01
| archiveurl =
| archivedate = 2011-07-19
}}
* IEEE Standards
** [https://web.archive.org/web/20051210051119/http://standards.ieee.org/getieee802/download/802.1D-2004.pdf ANSI/IEEE 802.1D-2004 standard], section 17 discusses RSTP (Regular STP is no longer a part of this standard. This is pointed out in section 8.)
** [https://web.archive.org/web/20070913195704/http://standards.ieee.org/getieee802/download/802.1Q-2005.pdf ANSI/IEEE 802.1Q-2005 standard], section 13 discusses MSTP
* RFCs
** RFC 2271-1998, - An Architecture for Describing SNMP Management Frameworks
|