No Slide TitleSpanning Tree Protocol (STP)
Having redundancy in a network is important, and allows the network
to be fault tolerant. That is, when faults occur the networking is
not shut downed.
However, redundant topologies that are based on switches and
bridges are susceptible to:
Broadcast storms
Cisco 3 – Switching STP
What is redundancy?
Ideally for business, it is 24/7 uptime. Though this is some what
impossible, so business are looking for “5 nines”, 99.999%. Which
would be 5.25 minutes of downtime per year!
The goal of redundant topologies is to eliminate network outages
that are caused by a single point of failure.
So if you have redundant switches for reliability, then until the
switches learn the MAC address of all devices, this topology will
cause:
Broadcast storms
Cisco 3 – Switching STP
Spanning Tree Protocol (STP)
So when broadcast occurs, sending of multicasts and broadcast
messages flood the network. The frame is sent out all ports except
the one on which the frame was received.
Cisco 3 – Switching STP
When server/host sends a message such as an ARP,
switch A will broadcast it out to every port.
When switch B gets the ARP, it will broadcast it out every
port;
then switch A will broadcast it again out every port;
switch B will then broadcast it out every port; and on, and
on.
This is called a broadcast storm.
The switches continue to propagate broadcast traffic, and become so
busy processing the broadcasts that user traffic will eventually
not flow.
switch A
switch B
Multiple Frame Transmission
Most protocols are designed to ignore or cope with duplicate
transmissions.
In general, protocols that make use of a sequence numbering
mechanism assume that many transmissions have failed and that the
sequence number has recycled.
Other protocols attempt to hand the duplicate transmission to the
appropriate upper-layer protocol, with unpredictable results.
Cisco 3 – Switching STP
Multiple Frame Transmission
When host X sends a unicast frame to router Y, one copy is received
over the segment 1, while switch A receives a copy & puts it
into its buffers.
if switch A examines the destination address field in the frame and
finds no entry in the MAC address table for router Y, it floods the
frame on all ports except for the originating port.
when switch B receives a copy of the frame through switch A on
segment 2, it also forwards a copy of the frame onto segment 1 if
there is not entry in the MAC address table for router Y.
router Y receives a copy of the same frame for the second
time!
A loop avoidance solution would eliminate the problem of duplicate
transmissions by logically breaking the loop & preventing one
of the four interfaces from transmitting frames during normal
operation.
switch A
switch B
Server/host X
Router Y
segment 1
segment 2
MAC Database Instability
Switch B initiates a mapping between the MAC address of Host X and
its Port 0, which connects to segment 1 when the first frame
arrives.
Sometime later, when the copy of the frame that was transmitted
through switch A arrives at port 1 of switch B, switch B must
remove the first entry and install one that incorrectly maps the
MAC address of station X to the Port 1 that connects to segment
2.
Depending on the internal architecture of the switch, it might or
might not cope well with rapid changes in its MAC database.
So a loop-avoidance solution would eliminate the problem of the
switch not coping well with the rapid change of the MAC
address.
switch A
switch B
Server/host X
Router Y
segment 1
segment 2
PORT 0
PORT 1
PORT 0
PORT 1
The solution for this problem is STP (Spanning Tree
Protocol).
It is a Layer 2 link-management protocol that is used to maintain a
loop-free network.
Digital (Digital Equipment Corporation) originally developed STP.
The IEEE 802 committee subsequently revised the Digital spanning
tree algorithm and published it in the IEEE 802.1d
specification.
The purpose of STP is to maintain a loop-free network topology. A
loop-free topology is accomplished when the switch or bridge
recognizes a loop in the topology and logically blocks one or more
redundant ports automatically.
Remember the states:
smaller collision domains,
full duplex operation
But most importantly, the ultimate benefit of the switch is
performance.
When a component of the active topology fails, a new loop-free
topology must be identified and incorporated. A recalculation or
convergence onto a new loop-free topology must quickly occur to
reduce unavailable time experienced by the end stations. STP,
defined by IEEE 802.1d, is too slow in converging on a new topology
for today’s network.
A new standard, IEEE 802.1w (RSTP) ,Rapid STP, has been developed
to over come 802.1d limitations.
Cisco 3 – Switching STP
Root Bridge:
The root bridge is determined by combining the priority of the
bridge and the MAC address. (If two bridges/switches have the same
priority value, then the MAC address is used to determine which one
has the lowest ID.)
There is only one (1) root bridge per network
Designated ports:
Each segment will have one designated port selected
Non-root Bridges:
Root port
Is the port with lowest cost (determined by a link’s bandwidth) to
the root bridge
Cisco 3 – Switching STP
switch A ( same priority, but lowest MAC address)
Hence PORT 0 & PORT 1 on switch A are the “designated
port”.
Which switch is/are non-root bridges?
switch B
Which ports are “root ports”?
PORT 0 of switch B
Because the connection from switch B to the root switch (A) is from
PORT 0 using a 100Mbps link and has the best cost.
Designated ports on other switches?
Each segment has one designated port. Since PORT 0 & PORT 1 of
switch A are “designated ports” (because it is the root bridge)
there are no other “designated ports.”
STP will block PORT 1 of switch B to make it ‘loop-free’.
switch A
switch B
one root bridge exists per network
one root port exists per non-root bridge
one designated port exists per segment
undesignated ports are unused
Root ports and designated ports are used for Forwarding (F) data
traffic.
Undesignated ports discard data traffic. These are called Blocking
(B) or discarding ports.
Every non-root bridge must select one root port.
Cisco 3 – Switching STP
Chapter 7
Switches flood traffic out all ports when to a destination that is
not yet known. Broadcast and multicast traffic is forwarded out
every port other than the port on which the traffic arrived
(floods).
This traffic is caught in a loop, because the Layer 2 header has no
TTL (time to live). [Layer 3 devices have TTL].
A physical topology may contain switching or bridging loops
necessary for redundancy and reliability,
Hence, physical loops must be allowed but a loop-free logical
topology must be created.
The loop-free logical topology that is created is called a
tree.
Spanning Tree
Chapter 7
STP establishes a root node, called the root bridge, and constructs
a topology that has one path for reaching every network node. The
resulting tree originates from the root bridge.
Redundant links that are not part of the shortest path tree are
blocked.
A loop-free topology is possible because certain paths are blocked.
Data frames that are received on blocked links are dropped.
STP requires network devices to exchange messages to detect
bridging loops.
The messages that switches send that allow the forming of a
loop-free logical topology are called BPDUs (bridge protocol data
units).
Spanning Tree Algorithm
Chapter 7
The BPDUs contain enough information so that all switches can do
the following:
select a single switch that will act as the root of the spanning
tree.
calculate the SP (shortest path) from itself to the root
switch
for each LAN segment, designate one of the switches as the closest
one to the root. This bridge is called the designated switch. The
designated switch handles all communication from that LAN toward
the root bridge.
each non-root switch chooses one of its ports as its root port.
This is the interface that gives the best path to the root
switch.
select ports that are part of the spanning tree, the designated
ports. Non-designated ports are blocked.
Spanning Tree Algorithm
Chapter 7
When the spanning tree is creating a loop-free logical topology, it
always uses the same 4-step decision sequences. As every BPDU
arrives, it is checked against this 4-step sequence to see if it
has a lower value than the existing BPDU that is saved for that
port.
Lowest root BID (bridge ID)
Lowest path cost to root bridge
Lowest sender bridge ID
Lowest port ID
When a bridge first becomes active, all of its ports are sending
BPDUs every 2 seconds (default).
Spanning Tree Algorithm
Chapter 7
When STP is enabled, every bridge in the network goes through the
blocking and transitory states of listening and learning at power
up.
Spanning Tree Algorithm
When a port is in the transitional listening state, it can send
& receive BPDUs to determine the active topology. At this
point, no user data is being sent.
When the bridge first boots up, it thinks it is the root bridge and
transitions to the listening state.
Two transitional states, listening & learning, occur when a
bridge recognizes a change in the network topology.
If ports are properly configured, they then stabilize to the
forwarding or blocking state.
Forwarding ports provide the lowest-cost path to the root
bridge.
Cisco 3 – Switching STP
Chapter 7
Ports that remain as designated or root ports after 15 seconds
(forward delay) transition to the learning state. When the port is
in a learning state, it can populate its MAC address table with MAC
addresses that are heard on its port, but does not yet forward user
frames.
Spanning Tree Algorithm
The time that it takes for a port to transition from the listening
state to the learning state or from the learning state to the
forwarding state is called the forward delay (default value 15
seconds.)
The normal time that it takes for a port to transition from the
blocking state to the forwarding state is 30 to 50 seconds.
Ports that are not the designated or root ports transition back to
the blocking state.
Cisco 3 – Switching STP
Note:
Each segment in a bridged network has one designated port. This
port functions as the single bridge port that both sends and
receives traffic to and from that segment and the root
bridge.
The idea behind this is that if only one port handles traffic for
each link, all the loops have been broken.
Note:
When STP is faced with a tie, it goes with the lowest BID.
Spanning Tree Algorithm
Chapter 7
Spanning-tree path cost is an accumulated total path cost based on
the bandwidth of all the links in the path.
With the introduction of 10 Gigabit Ethernet, IEEE had to revise
its path cost.
Link Speed Cost(revised) Cost(previous)
10 Gbps 2 1
1 Gbps 4 1
100 Mbps 19 10
10 Mbps 100 100
Spanning Tree Path Cost
Cisco 3 – Switching STP
BPDUs by the root bridge.
Forward Delay Duration of listening & learning states 15
seconds
Max Age Time BPDU stored 20 seconds
Spanning Tree Timers
Chapter 7
Converged in STP means a state in which all the switch and bridge
ports have transitioned to either the forwarding or the blocking
state.
Spanning Tree Convergence
Chapter 7
RSTP (Rapid Spanning Tree Protocol), IEEE 802.1 w is designed to
significantly speed the recalculation of the spanning tree when the
network topology changes.
The rapid transition is the most important feature introduced with
RSTP. Before 802.1w, the spanning-tree algorithm waited passively
for the network to converge before transitioning a port to the
forwarding state
The new RSTP actively confirms that a port can safely transition to
forwarding without relying on a timer configuration.
Rapid Spanning Tree Protocol (RSTP)
Cisco 3 – Switching STP
Chapter 7
To achieve fast convergence on a port, the protocol relies on two
new variables:
Edge port
Link type (point-to-point)
Edge ports are those that are directly connected to end
stations.
Though RSTP is only able to achieve rapid transition to forwarding
on edge ports and on point-to-point links.
Rapid Spanning Tree Protocol (RSTP)
Cisco 3 – Switching STP
Redundancy
Redundancy in a network is needed in case there is loss of
connectivity in one segment.
But redundancy in itself presents problems – loops.
The Spanning-Tree Protocol is used in switched networks to create a
loop free logical topology from a physical topology that has
loops.
Links, ports, and switches that are not part of the active loop
free topology do not participate in the forwarding of data
frames.
Cisco 3 – Switching STP
Redundancy
Companies want 100% uptime, but 99.999% (5 nines) is the
goal.
Remember the goal is reliability without faults. Fault tolerance is
achieved by redundancy.
Example of having 1 car versus 2 cars – 1 is always available –
redundancy
So companies should:
Cisco 3 – Switching STP
Chapter 7
Reliability and 24x7 network demands have compelled LAN designers
to construct multiple paths between user and resource
Cisco 3 – Switching STP
Redundant Switched Topologies
Again, if one path fails, the other path or device can take
over.
This is good, but there is a downside that has to be accounted
for:
Broadcast storms
MAC address table instabilities
Cisco 3 – Switching STP
Cisco 3 – Switching STP
Port 1
Port 1
Port 2
Port 2
LAN Switch 1
LAN Switch 2
(1) 00-A1 sends frame to CC-23 Switch 1 and Switch 2 learn about
00-A1
Cisco 3 – Switching STP
Port 1
Port 1
Port 2
Port 2
LAN Switch 1
LAN Switch 2
(2) LAN Switch 1 Floods packet out Port 2 since CC-23 is not
known
Cisco 3 – Switching STP
Port 1
Port 1
Port 2
Port 2
LAN Switch 1
LAN Switch 2
(3) LAN Switch 2 learns (incorrectly) that (Source MAC ) 00-A1 is
on Port 2
Cisco 3 – Switching STP
10BaseT Ports (12)
10BaseT Ports (12)
00-90-27-76-96-93
00-90-27-76-5D-FE
Hub
Because it is a Layer 2 broadcast frame, both switches, Switch A
and Switch B, flood the frame out all ports, including their port
A’s.
Host B
00-90-27-76-96-93
00-90-27-76-5D-FE
Hub
Duplicate
frame
Duplicate
frame
Both switches receive the same broadcast, but on a different port.
Doing what switches do, both switches flood the duplicate broadcast
frame out their other ports.
Host B
00-90-27-76-96-93
00-90-27-76-5D-FE
Hub
Duplicate
Frame
Duplicate
Frame
Here we go again, with the switches flooding the same broadcast
again out its other ports. This results in duplicate frames, known
as a broadcast storm!
Host A
Host B
00-90-27-76-96-93
00-90-27-76-5D-FE
Hub
Layer 2 broadcasts not only take up network bandwidth, but must be
processed by each host. This can severely impact a network, to the
point of making it unusable.
Host A
Host B
Chapter 7
Redundant Topology
The traffic that switches flood out all ports can be caught in a
loop, because in the Layer 2 header there is no TTL.
(Remember that in Layer 3 the TTL is decremented and the packet is
discarded when the TTL reaches 0)
You need switching (bridging) for reliability, but now the problem
of loops – a switched network cannot have loops if it is to do what
it is supposed to do.
Solution? Allow physical loops, but create a loop-free
topology
Cisco 3 – Switching STP
Allows redundant links
Prunes topology to a minimal spanning tree
Resilient to topology changes and device failures
Main function of the Spanning Tree Protocol (STP) is to allow
redundant switched/bridged paths without suffering the effects of
loops in the network
5.unknown
6.unknown
7.unknown
8.unknown
A
B
C
H
J
I
E
G
F
D
The STA is used to calculate a loop-free logical topology.
Spanning-tree frames called bridge protocol data units (BPDUs) are
sent and received by all switches in the network at regular
intervals and are used to determine the spanning tree
topology.
These BPDUs are used to determine the shortest path to the root
bridge, and which ports will forward frames as part of the spanning
tree – BPDUs sent out every 2 seconds
A separate instance of STP runs within each configured VLAN.
Cisco 3 – Switching STP
One designated port per segment
Unused, non-designated ports
Step 1: Electing a Root Bridge
Bridge Priority
Bridge ID
Root Bridge
Root Path Cost
Root Path Cost
Step 1: Electing a Root Bridge
The first step is for switches to select a Root Bridge.
The root bridge is the bridge from which all other paths are
decided.
Only one switch can be the root bridge.
Election of a root bridge is decided by:
1. Lowest Bridge Priority
Cisco 3 – Switching STP
This is a numerical value.
The switch with the with the lowest bridge priority is the root
bridge.
The switches use BPDU’s to accomplish this.
All switches consider themselves as the root bridge until they find
out otherwise.
All Cisco Catalyst switches have the default Bridge priority of
32768.
Cisco 3 – Switching STP
----------------------- Information
------------------------------------
----------------------- Settings
---------------------------------------
[M] Max age when operating as root 20 second(s)
[H] Hello time when operating as root 2 second(s)
[F] Forward delay when operating as root 15 second(s)
Cisco 3 – Switching STP
In case of a tie, the Bridge ID is used…
Bridge ID
The Bridge ID is the MAC address assigned to the individual
switch.
The lower Bridge ID (MAC address) is the tiebreaker.
Because MAC addresses are unique, this ensures that only one bridge
will have the lowest value.
NOTE: There are other tie breakers, if these values are not unique,
but we will not cover those situations.
Cisco 3 – Switching STP
All rights reserved.
Enterprise Edition Software
Ethernet Address: 00-B0-64-26-6D-00
PCA Number: 73-3122-04
Cisco 3 – Switching STP
A B
Server ports can be configured to
immediately enter STP forward mode
Understanding STP States
Listening - No frames forwarded, listening for frames
Learning - No frames forwarded, but learning MAC addresses
Forwarding – Receiving BPDUs, Forwarding data traffic, receiving
data traffic, learns MAC addresses
Disabled - No frames forwarded, no BPDUs heard
Understanding STP States
Cisco 3 – Switching STP
Port states and roles will be clarified
A set of link types will be defined that will allow going to a
forwarding stage quicker
All switches will generate their own BPDUs instead of relying on
the root bridge.
Link types would be:
Cisco 3 – Switching STP
Switch 1 and Switch 2 learn about 00-A1
00-A1 BB-44
AA-11 CC-23
(2) LAN Switch 1 Floods packet out Port 2
since CC-23 is not known
00-A1 BB-44
AA-11 CC-23
(3) LAN Switch 2 learns (incorrectly) that
(Source MAC ) 00-A1 is on Port 2
Catalyst 1900
-
[M] Max age when operating as root 20 second(s)
[H] Hello time when operating as root 2 second(s)
[F] Forward delay when opera
ting as root 15 second(s)
Catalyst 1900 Management Console
-