先选出一个根网桥(通过判断根网桥ID,优先值加上mac地址,mac地址也就是背板的mac地址)
然后依据五步规则来选择非根网桥的根端口和指定端口:
1.最低的根网桥ID
2.最低的到根网桥的路径开销
3.最低的发送方网桥ID
4.最低的发送方端口ID(优先值加上端口号)
5.最低的端口ID(优先值加上端口号)
特举三例:
这里的网桥优先值都为32769,端口优先值为128
从mac地址可以看出S1为根网桥,根网桥的所有端口都是指定端口,向外发送BPDU
接着判断非根网桥的根端口和指定端口,S2的F0/1和S3的F0/2根据第二步规则,可以判断是根端口
S2的F0/3和S3的F0/3,根据五步规则,直接跳到第三步,网桥ID优先值都一样,越低的网桥mac,那个端口也就是指定端口,S3的mac地址低,所以S3的F0/3也就是指定端口
S2的F0/3也就是BLOCK端口
这里的网桥优先值都为32769,端口优先值为128
从mac地址可以看出S4为根网桥,根网桥的所有端口都是指定端口,向外发送BPDU
接着判断各非根网桥的根端口,S2的F0/2和S3的F0/3直接依据五步规则的第二步,可以判断是根端口,然后来判断S1的根端口,依据五步规则的第三步,因为S2的mac地址比S3的mac地址低,所以S1的F0/1成为根端口
最后S1的F0/4成为BLOCK端口
这里的网桥优先值都为32769,端口优先值为128
从mac地址可以看出S1为根网桥,根网桥的所有端口都是指定端口,向外发送BPDU
接着判断S2哪个端口是根端口,哪个端口是指定端口,S2的F0/1和F0/2进行判断,根据五步规则的第四步,哪个发送端口ID小哪个端口就是根端口,另一个就是BLOCK端口
所以F0/1就是根端口,F0/2就是BLOCK端口
这里Hub和S2相连的两条线应该有一条是block的,根据五部规则的第五步,可以判断本地的端口ID小的成为根端口