cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2547
Views
5
Helpful
3
Replies

Why STP Learning State Exist?

Hi everyone,

As far as I know, for traditional STP, switches finish all the negotiation process of STP in listening state. On learning state, they just learn MAC addresses. In those conditions, I think there would be not much impact if learning state does not exist.

Is there any other  operation done in learning state except MAC learning?

If not, why do switches have to wait extra 15 seconds for just MAC learning? Why was the protocol invented like that?

Kind Regards,

Ahmet Mustafa

1 Accepted Solution

Accepted Solutions

Rolf Fischer
Level 9
Level 9

Hi,

the STP inventor herself, Radia Perlman, provides an interesting answer in her best-known book "Interconnections":

"The 802.1 standard actually calls for two intermediate states. This arrangement is designed to minimize learning of incorrect station locations while the topology has not yet stabilized. To minimize unnecessarily forwarded frames, the committee deemed it desirable not to allow a bridge to start forwarding until it has built up its learned cache. During the initial portion of the intermediate state, the bridge does not learn station addresses; then during the latter part, the bridge still does not forward packets over that port, but it does start learning station locations on that port. In other words, the intermediate state is subdivided into two substates: listening and learning.
Note: in the original spanning tree algorithm, I had only a single intermediate state, known as preforwarding. The committee asked whether bridges should learn station addresses in the preforwarding state. I said I didn't think it mattered. The committee decided to break preforwarding into the two aforementioned states. I believe that having two states is unnecessary and that bridges would work fine whether or not they learn station addresses in preforwarding. Breaking this period into two states makes the algorithm more complicated but does no harm. (...)"

I guess she would be pleased to see that you came to the same conclusion ;)

HTH
Rolf

View solution in original post

3 Replies 3

Rolf Fischer
Level 9
Level 9

Hi,

the STP inventor herself, Radia Perlman, provides an interesting answer in her best-known book "Interconnections":

"The 802.1 standard actually calls for two intermediate states. This arrangement is designed to minimize learning of incorrect station locations while the topology has not yet stabilized. To minimize unnecessarily forwarded frames, the committee deemed it desirable not to allow a bridge to start forwarding until it has built up its learned cache. During the initial portion of the intermediate state, the bridge does not learn station addresses; then during the latter part, the bridge still does not forward packets over that port, but it does start learning station locations on that port. In other words, the intermediate state is subdivided into two substates: listening and learning.
Note: in the original spanning tree algorithm, I had only a single intermediate state, known as preforwarding. The committee asked whether bridges should learn station addresses in the preforwarding state. I said I didn't think it mattered. The committee decided to break preforwarding into the two aforementioned states. I believe that having two states is unnecessary and that bridges would work fine whether or not they learn station addresses in preforwarding. Breaking this period into two states makes the algorithm more complicated but does no harm. (...)"

I guess she would be pleased to see that you came to the same conclusion ;)

HTH
Rolf

Excellent answer! Thank you so much guys.

Kind Regards,

Ahmet Mustafa

salemmahara
Level 3
Level 3

When a switch wants to use its interface to flood frames , it needs to learn some information and also mac addresses . Learning mac addresses helps switch to work more efficient at the beginning. An updated CAM table will be useful ;)