(PS - I hope over the year my studying will become more insightful :P)
The default timers for Spanning Tree are:
Hello = 2s
Max-age = 20s
To speed up spanning-tree convergence, these timers can by modified.
- Timers are always learnt from the root bridge.
- The forward-delay is how long the port stays in each the listening and learning states. So if the forward-delay is set to 15s it will take 30s for the port to move to the forwarding state
Portfast makes a port go straight to forwarding. It can be enabled on an interface or set as the default in global configuration, only affecting access ports.
- You can force portfast on a trunk port by using the command "spanning-tree portfast trunk". This is useful for servers such as ESX which may have a trunk to it.
- Portfast should never be used on a port connecting to another switch, but if a port configured for portfast receives a BPDU it will process it and can move into blocking if needed.
An example below of bringing up a port that is configured as a trunk for portfast. Each VLAN goes directly to forwarding.
This is a Cisco propriety feature only available for use with 802.1D because all of the rapid spanning tree protocols have their own means for speeding up convergence of STP
This is set with a global configuration command and speeds up convergence for a direct failure of the root port happens.
The example below shows how when the root port is shut down a new root port is immediately moved into forwarding.
BackboneFast is similar to UplinkFast in that it is Cisco Proprietry, also only useful with 802.1D and is a global configuration command. It speeds up convergence when an indirect failure occurs by sending our Root Link Queries (RLQ)
Something else I learnt today while reading about RPVST+ is that portfast is a necessity, not just something that is nice to have.