生成树 STP协议

时间:2021-08-26 19:58:03

STP协议主要是保证网络中不会出现环路,防止广播风暴产生

STP协议主要进行的运行过程是
1.选举根交换机(所有交换机而言)
2.选举根端口(非根交换机)
3.选举指定端口(不同网段交换机)
选举步骤:
说明:网桥/交换机ID(下面我都直接称网桥ID):交换机的优先级和Mac地址的组合
(比较方式:先比较交换机A,B的优先级,如果交换机A的优先级数值比B的小,则称交换机A的交换机ID小于交换机B的交换机ID,如果A和B的优先级相同,则比较交换机A和交换机B的Mac地址,如果交换机A的Mac地址小于交换机B的Mac地址,则称交换机A的ID小于交换机B)
ensp可通过

[S1]stp root primary
[S2]stp root secondary

指定根交换机和备份交换机,也可指指定优先级指定数值

[S1]stp priority 0
[S2]stp priority 4096

端口ID:由端口优先级和端口编号方式组成,比较方式与网桥ID比较方式差不多
1.选举根交换机:比较网桥ID,网桥ID最小的为根交换机
2.选举根端口:比较选举端口到根交换机的路径花费,最小者胜出,如果路径花费都相同,则比较端口直连网桥ID,若直连网桥ID(该端口接收的BPDU的发送方的网桥ID)都相同,就比较端口ID,端口ID较小者胜出

3.选举指定端口:比较选举端口到根交换机的路径花费,最小者胜出,如果路径花费全都相同,则比较端口所在的网桥ID(与直连网桥ID不同,需要认真比较定义),最小者胜出,如果相同,则比较端口ID,端口ID较小者胜出

STP定时器:

  1. Hello Time::根交换机会定期(Hello Time)向下游交换机发送BPDU,下游交换机会继续向下游传递转发,以此来监测生成树的可靠性(所有交换机都使用根交换机的Hello Time)

2.Max Age:当根交换机向下发送BPDU(根交换机的BPDU携带的Max Age为0)时,之后每个非根交换机都会对BPDU中Max Age加1,并填充自己的网桥ID进行转发,这种方式能够很好的控制生成树的半径.(所有交换机都使用根交换机配置的Max Age)

3.Forward Delay :当生成树的结构发生变化时,网络需要保证以前的根交换机BPDU已经传送完毕或者老化需要等待一定的时间,一般是2倍的Forward Delay时间,而根端口和指定端口发生变化时,一般需要等待一个Forward Delay来保证网络中信息被正确的传递(类似于TCP的TIME_WAIT)

4.超时时间:超时时间 = 2 * Hello Time * TimeFactor,当下游在超时时间后未收到上游的BPDU,就假定上游交换机出现了链路故障,则老化BPDU,并重新生成拓扑结构,发送以自己为根交换机的BPDU,因为有可能上游交换机是繁忙导致无法传递BPDU,故我们需要将尝试时间设置的足够大,来避免网路资源的浪费

我们可以通过

[S1]stp timer forward-delay 1500

来重新设置STP 定时器(S1必须是根交换机,其他交换机没有效果)

我们手动设置,往往会不合理导致网络出现故障,所以我们可以通过设置生成树半径来迫使系统为我们计算所有定时器合理的值

[S1]stp birdge-diameter 3