云计算~生成树协议STP
交换机构成环路的影响
广播风暴
交换机之间形成环路,数据包在交换机之间相互循环传输。
多帧复制
一个数据帧在环路中重复发送。
MAC地址表紊乱
数据帧从多分设备进行转发。
生成树协议原理—STP
- 逻辑上断开环路,防止广播风暴产生。
- 当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用。
生成树算法的三步走
- 选择根网桥。
- 选择根端口。
- 选择指定端口。
网桥ID
特点
- 网桥ID是唯一的
- 选择交换中网桥ID最小的交换机成为根网桥。
组成与说明
由网桥优先级和网桥MAC地址组成,分别占用了2字节,6字节,而优先级的取值范围在0 ~ 65535之间,默认值为32768.
选择根端口的依据
- 到根网桥最低的跟路径成本。根路径成本:根网桥上所有链路的成本之和。(10Mbps—100成本,100Mbps—19成本)
- 直连的网桥ID最小
- 端口ID最小(物理设备上端口号存在一种联系)。端口ID:由端口优先级与端口编号组成,取值范围0~ 255之间,默认值为128。
桥协议数据单元——BPDU
BPDU认识
- 一般使用组播发送BPDU
- 由根网桥ID、根路径成本、发送网桥ID、端口ID组成。
BPDU的工作过程
- 当交换机启动时,假定自己是根网桥,在向外发送的BPDU中根网桥ID字段填写自己的网桥ID。
- 当收到其他交换机发出的BPDU后,比较网桥的ID,选择较小的添加到根网桥ID中。
- 当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到根网桥ID中。
- 当全网所有的交换机接收到全部的BPDU并比较后,就可以选择出唯一的一个根网桥。
STP的五大状态
- 转发(Forwarding):发送/接收用户数据
- 学习(Learning):构建网桥表
- 侦听(Listening):构建“活动”拓扑
- 阻塞(Blocking):只能接收BPDU
- 禁用(Disabled):强制关闭
STP的计时器
STP在交换机相互发送BPDU报文时,尽力形成一个无环路的拓扑。BPDU从一台交换机传到另一台交换机时,总要花费一定的时间。另外,当拓扑改变(如线路或根网桥故障)的消息从网络的一侧传送到另一侧时,也要经历一定的传播延迟。由于存在这些延迟,所以需要为交换机设置足够的时间来完成BPDU的转发和生成树的运算,因袭,在交换机内部设置了一些计时器来控制每个阶段的时间长度。
STP利用三种计时方法来确定一个网络正确的收敛。现将STP计时器及它们的默认值描述如下:
-
Hello时间:网桥发送配置BPDU报文之间的时间间隔。IEEE802.1q标准规定的默认访问时间为两秒。
-
转发延迟:一个交换机端口在Listening(侦听)和Learning(学习)状态所花费的时间间隔,它的默认值各为15S。
-
最大老化时间:交换机在丢失BPDU报文之前存储它的最大时间。
侦听和学习都是生成树所实施的过渡状态,用来强迫端口等待来自其他交换机上的所有BPDU。典型的端口过渡如下:
A.从阻塞到侦听(20s)
B.从侦听到学习(15s)
C.从学习到侦听(15s)
当启用STP时,VLAN上面的每台交换机在加电以后都经过从给阻塞到侦听、学习的过渡状态。
STP计时器可以用命令予以配置和调整。不过,如不是经过认真考虑和规划,建议不要轻易改变计时器的默认值。
VLAN与STP关系
用于VLAN在交换机中传输,避免链路断开的时候,正好也阻断了其中一个vlan,使用PSVT还能实现线路的负载均衡。
MSTP:实现网络的负载分担。实现单个VLAN对应一个生成树。
可以设置多条实例:将VLAN加入,可以选择实例一或二作为主或备的根网桥。