So, first a little history on Spanning tree protocol (STP). Based on an algorithm created by Radia Pearlman in 1985. http://en.wikipedia.org/wiki/Radia_Perlman
Became a standard IEEE protocol in 1990. Still widely deployed. Flavors of spanning tree. 802.1d (ieee), 802.1w (rapid), and 802.1s (mst). Evolution of STP, Cisco vPC (2-way non blocking, still requires STP) and Fabric Path (eliminates STP completely). TRILL is a standardized version of Fabric Path. Both TRILL and Fabric Path utilize a link state protocol (IS-IS) as their loop prevention method.
Specific Cisco enhancement to 802.1d (prior to 802.1w): UplinkFast and BackboneFast
UplinkFast: The UplinkFast feature is designed to run in a switched environment when the switch has at least one alternate/backup root port (port in blocking state), that is why Cisco recommends that UplinkFast be enabled only for switches with blocked ports, typically at the access-layer. Do not use on switches without the implied topology knowledge of a alternative/backup root link typically to distribution and core switches in Cisco multilayer design. ONLY enable on NON-ROOT switches.
In order to be effective, the feature needs to have blocked ports that provides redundant connectivity to the root. As soon as Uplink Fast is configured on a switch, switch automatically adjusts some STP parameters are adjusted in order to help achieve this:
- The bridge priority of the switch is increased to a significantly higher value than the default. This ensures that the switch is not likely to be elected root bridge, which does not have any root ports (all ports are designated).
- All the ports of the switch have their cost increased by 3000. This ensures that switch ports are not likely be elected designated ports.