实验拓扑如下:SWA和SWB由两条等代价的线路相连,SWA桥ID较低,为跟桥
我们来分析一下STP的过程:
首先介绍一下BPDU:
桥协议数据单元(Bridge Protocol Data Unit)。是一种生成树问候数据包,它以可配置的间隔发出,用来在网络的网桥间进行信息交换。
当一个网桥开始变为活动时,它的每个端口都是每2s(使用缺省定时值时)发送一个BPDU。然而,如果一个端口收到另外一个网桥发送过来的BPDU,而这个BPDU比它正在发送的BPDU更优,则本地端口会停止发送BPDU。如果在一段时间(缺省为20s)后它不再接收到邻居的更优的BPDU,则本地端口会再次发送BPDU。
BPDU帧格式:
判断一个BPDU的优劣的顺序:
1,比较桥ID(优先级+MAC)越低越好,选出跟桥
2,比较到跟桥的路径代价,越低越好
3,在代价相同是比较桥ID,越低越好
4,在桥ID相同时比较端口ID(优先级+PN),越低越好
下面做STP的分析:
1,A和B 首先PK桥优先级,A获胜成为跟桥,从而A的两个端口都为DP,所以B上必有一个端口会被Block掉,
2,那么到底是block哪一个端口呢,首先我们看B的两个端口到跟桥的路径代价都相同,那么我们就要在比较桥ID了,但是两个端口都在一个交换机上,那么就是桥ID相同了,现在只能比较端口ID了,但要记住,B的两个端口接收的是来自A的BPDU,由于是默认设置,A的端口优先级都相同,只有端口号不同,因此只有PK端口号了,由于A的0/2端口较大,所以在PK中落败,因此与之相连接的B的0/2端口被Block掉。
假如连接A和B的两根线交叉一下:
同理,block掉的依然是与A的0/2端口相连的 端口,即B的0/1端口。
转载于:https://blog.51cto.com/gordonwei/762270