Prerequisite – Spanning Tree Protocol
Spanning Tree Protocol (STP) is used to make a loop free network by monitoring the network to track all the links and shut down the least redundant ones.
Root bridge is a switch in a single VLAN or whole topology (according to the type of STP standard used) which is responsible for distributing BPDUs and block the least redundant port.
Election procedure (root bridge) –
All the switches in the network declare themselves as root bridge and start exchanging their own BPDUs. The BPDU with the lowest bridge I’d will be considered as superior. Now the switch receiving the superior BPDU make changes in its own BPDU and carry forward to its neighbour switches. It changes the value of root Bridge I’d with its superior BPDU bridge I’d. This process goes on until all the switches are satisfied with which bridge have the lowest bridge I’d and hence that switch will be declared as root bridge.
Types of Spanning Tree Protocol (STP) –
- 802.1D – This is also known as CST (Common Spanning Tree). It is a spanning tree standard developed by IEEE which elects only one root bridge per whole topology. All the traffic flows over the same path (the best path to the root bridge) but this doesn’t hold good always as there can be scenarios in which the optimised path to reach a VLAN is different than the path obtained on electing the root bridge. It is very slow as it takes 32 seconds to converge.
- Less CPU and memory required.
- Lesser optimisation as the path calculated as the best cost to root bridge might not be the best path to reach a network.
- No load balancing.
- Per VLAN Spanning Tree + (PVST+) – It is a spanning tree standard developed by Cisco for its devices which finds the root bridge per VLAN. It is a Cisco default version of STP. It finds separate 802.1d spanning tree instance for each VLAN. It also provides backward comparability with 802.1d or CST. This is more optimized to the IEEE because it provides optimal path selection as separate instance of STP per VLAN is find. This is as slow as CST.
- PVST+ provides more optimization on the performance of a network than CST as it selects root bridges per VLAN.
- Bandwidth consumption is lesser than CST.
- Optimum load balancing is achieved.
- This is slow as CST i.e convergence time is slow. By default, Cisco switches take 50 seconds for converging.
- More resources (CPU and memory) is required.
- 802.1w – Rapid Spanning Tree Protocol (RSTP) – It is a spanning standard developed by IEEE which provides faster convergence than CST but holds the same idea of finding a single root bridge in the topology. The bridge resources needed in RSTP is higher than CST but less than PVST+ .
- Rapid Per VLAN Spanning Tree + (RPVST+) –This Spanning Tree standard is developed by Cisco which provides faster convergence than PVST+ and finds separate instance of 802.1w per VLAN. It requires much more CPU and memory than other STP standards.
- 802.1s (Multiple Spanning Tree) :-This standard is developed by IEEE in which grouping of VLANs is done and for each single group, RSTP is run. This is basically a Spanning Tree Protocol running over another Spanning Tree Protocol.
- High redundancy
- load balancing can be achieved.
- lower CPU and memory usage is required
- More configuration is required and not easy to implement.
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
- Computer Network | Network address translation (NAT)
- Why does DNS use UDP and not TCP?
- Simple Mail Transfer Protocol (SMTP)
- Transmission Modes in Computer Networks (Simplex, Half-Duplex and Full-Duplex)
- Computer Network | File Transfer Protocol (FTP)
- Routing Interface Protocol (RIP) V1 & V2
- Computer Network | Open shortest path first (OSPF) – Set 2
- TCP Server-Client implementation in C
- Computer Network | Birthday attack
- TCP and UDP server using select