0x00 STP背景
1、冗余(Redundancy)
冗余(Redundancy)的部署使业务流量在故障发生时能够通过冗余的设备及链路进行转发,从而增加网络可靠性。
交换网络内的冗余拓扑:
2、二层环路(Layer 2 Loop)
虽然冗余会增加可靠性,但是在组网过程中会形成二层环路(Layer 2 Loop),从而引发
- 广播风暴:广播信息在网络中不停地转发,直至导致交换机出现超负荷运转,最终耗尽所有带宽资源、阻塞全网通信
- 多帧复制:单播的数据帧被多次复制传送到目的站点
- MAC地址紊乱:由于相同帧的拷贝在交换机的不同端口上被接收而引起的 MAC地址表不稳定
等一系列问题,严重时则会导致网络瘫痪。
3、生成树协议STP(Spanning Tree Protocol)
解决以太网二层环路问题的最典型的解决方案之一,就是生成树协议(STP)
- 使冗余端口置于“阻塞状态”(从逻辑上),实现物理链路正常链接,逻辑上关闭(Down),避免环路的危害
- 网络中的计算机在通信时,只有一条链路生效
- 当这个链路出现故障时,将处于“阻塞状态”的端口重新打开,从而确保网络连接稳定可靠
主要目的:实现冗余,解决环路
实现方法:逻辑上“关闭”冗余链路
0x01 STP的基本概念
1、基本角色
2、BPDU
交换机或者网桥之间周期性地发送STP的BPDU(Bridge Protocol Data Unit ,桥接协议数据单元),用于实现STP的功能
- 每2秒发送一次的二层报文
- 组播发送,组播地址为:01-80-C2-00-00-00
2、BPDU的传播
交换机启动时,每台交换机都认为自己是根网桥,通过指定端口(DP)向外泛洪BPDU,当交换机的一个端口收到高优先级的BPDU,就在该端口保存这些信息,同时向所有端口更新并传播信息,如果收到比自己低优先级的BPDU,交换机就