1、根桥的选举。(有且只有一台,整个网络中心)
2、所有非根桥上根端口的选举。
怎样确定链路是不通的?
定义了一系列的计时器与报文的发送来完成链路的状态监控。
只有根桥周期性发送BPDU。2S一次发送Hello时间。以组播的方式来发送。BPDU本身的发送肯定存在环。
为了顺利发送BPDU,会提出一些限制性的规则,
STP中的规则是:
始发者:Root Bridge
接口:(DP:Designated Port)发送BPDU,交换机中两端接口中一定存在DP。DP对端的接口是RP或者NDP。(一个冲突域内DP只有一个)
作为DP的端口所需要符合的条件:
1、比较链路两端接口发送的BPDU中的RID。
2、比较链路两端接口发送的BPDU中的RPC。
转发:(RP:Root Port)接收BPDU并转发,通过自身的BP接口转发。
3、比较链路两端接口发送的BPDU中包含的转发者BID谁小。
4、比较通过接口发送的BPDU中包含的Port ID,谁小谁是。
计时器有:
Message Age---消息老化计时器 最大BPDU值是20。必须小于Max Age。为了防止环路。
Max Age---固定默认值是20S。
Hello Time---默认值是2S,根桥发送BPDU的频率。
Fwd Delay---转发延迟---默认值是15S。---------------为了防止临时防环。
RP/DP Forwarding 能顺利收发数据。
NDP Blocking 不能发也不能收任何数据。收到的帧不会基于源MAC表项进行地址学习。
生成树的选举效率非常高。
生成树是基于计时器的真题收敛,先收敛的交换机等待后收敛的交换机,当端口角色都确定完毕了,才让DP跟RP工作的Forwarding状态,才能保证没有环路。
Blocking对应的NDP。
20S+30S
--------------------
生成树是一个共有协议,分为三类:
1、IEEE802.1D STP 慢、兼容性不好
华为华三这些厂商的交换机上使用的STP叫CST(通用生成树协议)
Cisco采用的叫做PvST+,基于VLAN的生成树协议。
CST与PvST+彼此直接不兼容。CST是无视WLAN的(不管有多少WLAN存在,每个交换机都只会启用一个生成树进程。端到端只能有一个根桥,只能有一个根路径),对资源消耗少。
PvST+:能做到负载均衡。
2、IEEE802.1W RSTP 增加了收敛的效率,无环的超高速收敛。兼容性还是不好。
3。IEEE802.1S MSTP 是基于1W设计的,所以收敛速度很快。在1S中,思科跟华为的生成树架构一样了,可以通过DIY的方式,手工控制。
混合厂商设备一点要注意最好是使用IEEE802.1S。
但是在高大上的数据中心环境中最好是一定要用: Fabricpath 、Trill。
----------
非直连链路故障
间接拓扑变更
链路奔溃后导致某台非根桥无法通过任何接口接收根桥BPDU
交换机连接PC是不会出现环路的。
在交换机连接PC的端口上启用Portfast,只有思科能用。
其他的至少要是IEEE802.1W Edge Port
一条链路只有有一端是NDP,那么这条链路就相当于被阻塞了,数据流量就通过不了。
MAC的老化计时器---300S
为了定义一个新的切换,802.1D定义了一个新的BPDU------> TCN-BPDU 拓扑变更通告BPDU。由RP发送,DP接收。
TCA 配置BPDU。
TCA 配置BPDU
根桥发送TC置位的 配置BPDU
TC:拓扑变更
TCN:拓扑变更通道
TCA:拓扑变更确认
简言之:谁发现了拓扑改变,谁就会通过自己的IP向上游发送TCN。上游交换机收到TCN之后,通过DP接收,会通过RP发送过去,同比返还一个TCA置位的配置BPDU。
TCN只有前三个字段,只有配置BPDU才拥有完整的字段。
0X00:普通的配置BPDU
0X80:TCN
-----------------------
STP配置
stp mode?
基本能配的有三种
1、BID的优先级:stp priority 4096----后面数的值必须是4096的倍数。前4bit是优先级,后12bit是扩展系统ID。4的12次方:4096
修改优先级是用来改变根桥的选举。
2、接口的cost值:stp cost 2000
3、配置修改接口的port ID的优先级,完成链路切换。
----
链路类型有两种:一种是共享, 一种是点到点。
休该根桥优先级,就是将值改小 (spanning-tree vlan 10 priority 28672) 当值不是4096的倍数时,会提示。
备份根桥:BID比仅次于根桥,当根桥shutdown的时候,这个备份根桥就会成为根桥来传输数据。(spanning-tree vlan 10 root secondary)