How does STP convergence work?
up vote
3
down vote
favorite
Consider the IEEE 802.1D (first revision) Spanning Tree Protocol. I have read a lot of articles and forum entries about STP convergence. Often I do find contradictions about the convergence mechanics. Some people state that convergence follows this schematics:
- Root bridge election
- Root port selection
- Designated ports selection
- Non-designated port selection
Others state that each port cycles through 4 states (Blocking, Listening, Learning, Forwarding). I don't understand how they each connect and how the root bridge election for example takes part in those 4 states. For me, both "models" don't go along with each other, but each part of both of them are neccessary to make STP work in my opinion. The problem, however, is not understanding how each state behaves in terms of packet discarding/MAC learning/etc.. The problem is understanding how it all works together.
Unfortunately, the IEEE standard doesn't help with unterstanding, yet it makes things harder to grasp for me.
Edit: my question was marked as a duplicate to Spanning tree - port roles and status during root bridge election. First of all, the answer doesn't explain the whole convergence process. Furthermore, I don't understand how a bridge decides that it is not connected to another bridge performing STP. How long will it until it decides it is alone and probably the root bridge? When does it stop propagating this?
Edit2: after understanding that the port role is decided when a better BPDU in terms of SPT tie breaking mechanism is received, I still don't get how a switch decides which port is designated.
spanning-tree layer2 redundancy loop
New contributor
|
show 1 more comment
up vote
3
down vote
favorite
Consider the IEEE 802.1D (first revision) Spanning Tree Protocol. I have read a lot of articles and forum entries about STP convergence. Often I do find contradictions about the convergence mechanics. Some people state that convergence follows this schematics:
- Root bridge election
- Root port selection
- Designated ports selection
- Non-designated port selection
Others state that each port cycles through 4 states (Blocking, Listening, Learning, Forwarding). I don't understand how they each connect and how the root bridge election for example takes part in those 4 states. For me, both "models" don't go along with each other, but each part of both of them are neccessary to make STP work in my opinion. The problem, however, is not understanding how each state behaves in terms of packet discarding/MAC learning/etc.. The problem is understanding how it all works together.
Unfortunately, the IEEE standard doesn't help with unterstanding, yet it makes things harder to grasp for me.
Edit: my question was marked as a duplicate to Spanning tree - port roles and status during root bridge election. First of all, the answer doesn't explain the whole convergence process. Furthermore, I don't understand how a bridge decides that it is not connected to another bridge performing STP. How long will it until it decides it is alone and probably the root bridge? When does it stop propagating this?
Edit2: after understanding that the port role is decided when a better BPDU in terms of SPT tie breaking mechanism is received, I still don't get how a switch decides which port is designated.
spanning-tree layer2 redundancy loop
New contributor
Possible duplicate of Spanning tree - port roles and status during root bridge election
– Zac67
Nov 27 at 21:17
1
I guess the part you are missing is that STP is always sending BPDUs.
– Ron Maupin♦
Nov 27 at 21:47
@RonMaupin is STP also sending BPDUs if a port is blocked?
– cmatef8
Nov 27 at 21:53
2
Yes. It is blocking data frames from being received, but it needs to be able to determine topology changes.
– Ron Maupin♦
Nov 27 at 21:55
1
BPDUs are sent out of every port regardless of the state or mode.
– Ron Trunk
Nov 28 at 2:29
|
show 1 more comment
up vote
3
down vote
favorite
up vote
3
down vote
favorite
Consider the IEEE 802.1D (first revision) Spanning Tree Protocol. I have read a lot of articles and forum entries about STP convergence. Often I do find contradictions about the convergence mechanics. Some people state that convergence follows this schematics:
- Root bridge election
- Root port selection
- Designated ports selection
- Non-designated port selection
Others state that each port cycles through 4 states (Blocking, Listening, Learning, Forwarding). I don't understand how they each connect and how the root bridge election for example takes part in those 4 states. For me, both "models" don't go along with each other, but each part of both of them are neccessary to make STP work in my opinion. The problem, however, is not understanding how each state behaves in terms of packet discarding/MAC learning/etc.. The problem is understanding how it all works together.
Unfortunately, the IEEE standard doesn't help with unterstanding, yet it makes things harder to grasp for me.
Edit: my question was marked as a duplicate to Spanning tree - port roles and status during root bridge election. First of all, the answer doesn't explain the whole convergence process. Furthermore, I don't understand how a bridge decides that it is not connected to another bridge performing STP. How long will it until it decides it is alone and probably the root bridge? When does it stop propagating this?
Edit2: after understanding that the port role is decided when a better BPDU in terms of SPT tie breaking mechanism is received, I still don't get how a switch decides which port is designated.
spanning-tree layer2 redundancy loop
New contributor
Consider the IEEE 802.1D (first revision) Spanning Tree Protocol. I have read a lot of articles and forum entries about STP convergence. Often I do find contradictions about the convergence mechanics. Some people state that convergence follows this schematics:
- Root bridge election
- Root port selection
- Designated ports selection
- Non-designated port selection
Others state that each port cycles through 4 states (Blocking, Listening, Learning, Forwarding). I don't understand how they each connect and how the root bridge election for example takes part in those 4 states. For me, both "models" don't go along with each other, but each part of both of them are neccessary to make STP work in my opinion. The problem, however, is not understanding how each state behaves in terms of packet discarding/MAC learning/etc.. The problem is understanding how it all works together.
Unfortunately, the IEEE standard doesn't help with unterstanding, yet it makes things harder to grasp for me.
Edit: my question was marked as a duplicate to Spanning tree - port roles and status during root bridge election. First of all, the answer doesn't explain the whole convergence process. Furthermore, I don't understand how a bridge decides that it is not connected to another bridge performing STP. How long will it until it decides it is alone and probably the root bridge? When does it stop propagating this?
Edit2: after understanding that the port role is decided when a better BPDU in terms of SPT tie breaking mechanism is received, I still don't get how a switch decides which port is designated.
spanning-tree layer2 redundancy loop
spanning-tree layer2 redundancy loop
New contributor
New contributor
edited Nov 28 at 20:03
New contributor
asked Nov 27 at 21:07
cmatef8
164
164
New contributor
New contributor
Possible duplicate of Spanning tree - port roles and status during root bridge election
– Zac67
Nov 27 at 21:17
1
I guess the part you are missing is that STP is always sending BPDUs.
– Ron Maupin♦
Nov 27 at 21:47
@RonMaupin is STP also sending BPDUs if a port is blocked?
– cmatef8
Nov 27 at 21:53
2
Yes. It is blocking data frames from being received, but it needs to be able to determine topology changes.
– Ron Maupin♦
Nov 27 at 21:55
1
BPDUs are sent out of every port regardless of the state or mode.
– Ron Trunk
Nov 28 at 2:29
|
show 1 more comment
Possible duplicate of Spanning tree - port roles and status during root bridge election
– Zac67
Nov 27 at 21:17
1
I guess the part you are missing is that STP is always sending BPDUs.
– Ron Maupin♦
Nov 27 at 21:47
@RonMaupin is STP also sending BPDUs if a port is blocked?
– cmatef8
Nov 27 at 21:53
2
Yes. It is blocking data frames from being received, but it needs to be able to determine topology changes.
– Ron Maupin♦
Nov 27 at 21:55
1
BPDUs are sent out of every port regardless of the state or mode.
– Ron Trunk
Nov 28 at 2:29
Possible duplicate of Spanning tree - port roles and status during root bridge election
– Zac67
Nov 27 at 21:17
Possible duplicate of Spanning tree - port roles and status during root bridge election
– Zac67
Nov 27 at 21:17
1
1
I guess the part you are missing is that STP is always sending BPDUs.
– Ron Maupin♦
Nov 27 at 21:47
I guess the part you are missing is that STP is always sending BPDUs.
– Ron Maupin♦
Nov 27 at 21:47
@RonMaupin is STP also sending BPDUs if a port is blocked?
– cmatef8
Nov 27 at 21:53
@RonMaupin is STP also sending BPDUs if a port is blocked?
– cmatef8
Nov 27 at 21:53
2
2
Yes. It is blocking data frames from being received, but it needs to be able to determine topology changes.
– Ron Maupin♦
Nov 27 at 21:55
Yes. It is blocking data frames from being received, but it needs to be able to determine topology changes.
– Ron Maupin♦
Nov 27 at 21:55
1
1
BPDUs are sent out of every port regardless of the state or mode.
– Ron Trunk
Nov 28 at 2:29
BPDUs are sent out of every port regardless of the state or mode.
– Ron Trunk
Nov 28 at 2:29
|
show 1 more comment
1 Answer
1
active
oldest
votes
up vote
6
down vote
I don't understand how a bridge decides that it is not connected to
another bridge performing STP.
If it doesn't hear BPDUs, then there's no bridge connected.
How long will it until it decides it is alone and probably the root
bridge?
It starts out assuming it's "alone." That is, the bridge sends BPDUs with its bridge ID as the root until it hears a better one.
When does it stop propagating this?
If by "this" you mean the ID of the root bridge, it's in every BPDU sent.
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
|
show 4 more comments
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
6
down vote
I don't understand how a bridge decides that it is not connected to
another bridge performing STP.
If it doesn't hear BPDUs, then there's no bridge connected.
How long will it until it decides it is alone and probably the root
bridge?
It starts out assuming it's "alone." That is, the bridge sends BPDUs with its bridge ID as the root until it hears a better one.
When does it stop propagating this?
If by "this" you mean the ID of the root bridge, it's in every BPDU sent.
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
|
show 4 more comments
up vote
6
down vote
I don't understand how a bridge decides that it is not connected to
another bridge performing STP.
If it doesn't hear BPDUs, then there's no bridge connected.
How long will it until it decides it is alone and probably the root
bridge?
It starts out assuming it's "alone." That is, the bridge sends BPDUs with its bridge ID as the root until it hears a better one.
When does it stop propagating this?
If by "this" you mean the ID of the root bridge, it's in every BPDU sent.
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
|
show 4 more comments
up vote
6
down vote
up vote
6
down vote
I don't understand how a bridge decides that it is not connected to
another bridge performing STP.
If it doesn't hear BPDUs, then there's no bridge connected.
How long will it until it decides it is alone and probably the root
bridge?
It starts out assuming it's "alone." That is, the bridge sends BPDUs with its bridge ID as the root until it hears a better one.
When does it stop propagating this?
If by "this" you mean the ID of the root bridge, it's in every BPDU sent.
I don't understand how a bridge decides that it is not connected to
another bridge performing STP.
If it doesn't hear BPDUs, then there's no bridge connected.
How long will it until it decides it is alone and probably the root
bridge?
It starts out assuming it's "alone." That is, the bridge sends BPDUs with its bridge ID as the root until it hears a better one.
When does it stop propagating this?
If by "this" you mean the ID of the root bridge, it's in every BPDU sent.
answered Nov 27 at 21:38
Ron Trunk
33.4k22970
33.4k22970
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
|
show 4 more comments
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
A Cisco manual states that BPDUs are stored port-wise. So is this true? Furthermore, does each port have their own mind about which Bridge is the root Bridge? How are bdpus shared among ports?
– cmatef8
Nov 28 at 8:56
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
I'm not sure what you mean by "port-wise," but the bridge is a unit - ports aren't independent. The bridge determines who the root bridge is and which port has the lowest cost to it.
– Ron Trunk
Nov 28 at 13:31
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Ok, but when the whole unit itself has one configurational state, the current BPDU, how a desginated port is chosen? The unit has to consider which port received what BPDU most recent to be able to check whether the sending BPDU is inferior or the received one is inferior.
– cmatef8
Nov 28 at 19:59
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
Here is the basic process: 1. Decide which port has the lowest cost to the root. That becomes the root port. 2. For every other port, is the BPDU you are advertising better than the one you are receiving? That port is a designated port and goes into forwarding. 3. All other ports are blocked. And again, ports continue to send periodic BPDUs regardless of the state.
– Ron Trunk
Nov 28 at 20:02
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
As you stated, first the root port is decided among all ports, then the des. ports are decided. What has to happen so the unit decides that it can move to choosing des. ports? It could theoretically happen that a assumed root port provides no longer the best costs to root. As i understood both processes do not happen in a certain order
– cmatef8
Nov 28 at 20:09
|
show 4 more comments
cmatef8 is a new contributor. Be nice, and check out our Code of Conduct.
cmatef8 is a new contributor. Be nice, and check out our Code of Conduct.
cmatef8 is a new contributor. Be nice, and check out our Code of Conduct.
cmatef8 is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Network Engineering Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f55040%2fhow-does-stp-convergence-work%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Possible duplicate of Spanning tree - port roles and status during root bridge election
– Zac67
Nov 27 at 21:17
1
I guess the part you are missing is that STP is always sending BPDUs.
– Ron Maupin♦
Nov 27 at 21:47
@RonMaupin is STP also sending BPDUs if a port is blocked?
– cmatef8
Nov 27 at 21:53
2
Yes. It is blocking data frames from being received, but it needs to be able to determine topology changes.
– Ron Maupin♦
Nov 27 at 21:55
1
BPDUs are sent out of every port regardless of the state or mode.
– Ron Trunk
Nov 28 at 2:29