STP 生成树协议
一、STP的概述
为了提高网络可靠性,交换网络中通常会使用一些冗余链路。然而,冗余链路会给交换网络带来环路风险,并导致广播风暴以及MAC地址表不稳定等问题,进而会影响到用户的通信质量。生成树协议STP(Spanning Tree Protocol)可以在提高可靠性的同时又能避免环路带来的各种问题。
1.交换网络环产生的影响
广播风暴的形成:交换机之间两两互相广播,无限循环
多帧复制:计算机短时间内多次收到统一主机的广播,且来源不同
MAC地址表紊乱:交换机从不同接口收到来自同一交换机的信息,导致记录的MAC地址表记录混乱
- 根据交换机的转发原则,如果交换机从一个端口上接收到的是一个广播帧,或者是一个目的MAC地址未知的单播帧,则会将这个帧向除源端口之外的所有其他端口转发。如果交换网络中有环路,则这个帧会被无限转发,此时便会形成广播风暴,网络中也会充斥着重复的数据帧。
- 主机A向外发送了一个单播帧,假设此单播帧的目的MAC地址在网络中所有交换机的MAC地址表中都暂时不存在。SWB接收到此帧后,将其转发到SWA和SWC,SWA和SWC也会将此帧转发到除了接收此帧的其他所有端口,结果此帧又会被再次转发给SWB,这种循环会一直持续,于是便产生了广播风暴。交换机性能会因此急速下降,并会导致业务中断。
二、STP的工作原理
1.生成数算法
生成树算法分为3个步骤:
选择根网桥--------就是交换机
- 第一步:交换机优先级值最小的 -------优先级的取值范围是0~65535,缺省值(默认值)为32768
- 第二步:选择网桥ID最小的 --------网桥ID(BID,交换机MAC地址)是惟一的。
- 如果不配置优先级,那么选择交换机网络中网桥ID最小的交换机成为根网桥。
网桥是唯一的,网桥的设置是选择交换网络中网桥ID最小的交换机成为根网桥,是先看优先级在看MAC地址。优先级取值范围是:0~65535,缺省值(默认值):32768
选择根端口--------根网桥上的端口是指定端口,不是根端口。
- 第一步:选择到根网桥的根路径成本最低的
根路径成本:网桥到根网桥的路径上所有链路的成本之和
选择根端口的依据是:
到根网桥最低的根路径成本
直连的网段ID最小
端口ID最小
选择指定端口(Designated Ports)
- 根桥上的端口全是指定端口
- 在每个网段上,选择1个指定端口
- 非根桥上的指定端口,选择顺序-----根路径成本较低-------所在的交换机的网桥ID的值较小------端口ID的值较小
端口和指定端口选择后,剩下的端口就是阻塞端口
-
BPDU
Bridge Protocol Data Unit -桥协议数据单元
使用组播发送BPDU
BPDU有配置BPDU和拓扑变更通告(TCN)BPDU两种类型
BPDU报文字段:根网桥、根路径成本、发送网桥ID、端口ID -
STP利用BPDU选择根网桥
当交换机启动时,假定自己是根网桥,在向外发送的BPDU中网桥字段填写自己的网桥ID
当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到网根ID中
交换机端口的STP状态
4. 生成树计时器
- STP的计时器
Hello时间
转发延迟
最大老化时间
5.交换机端口上的STP状态
STP状态表,这个表需要从下往上看
状态 | 用途 | 进入下一过程所需时间 |
---|---|---|
转发(Forwarding) | 发送/接收用户数据(进入稳定状态) | 无 |
学习(Learning) | 构建网桥表(学习MAC地址) | 15S后进入转发阶段 |
侦听(Listening) | 构建“活动”拓扑(互相发送网桥ID) | 15S进入学习阶段 |
阻塞(Blocking) | 只接收BPDU | 20S后进入侦听阶段 |
禁用(Disabled) | 强制关闭 | 无 |
三、STP配置命令
1.STP基础命令
- SMTP(多生成树协议):可为每个vlan或者多个vlan为一组,构造一个生成树,实现网络的负载分担(均衡)
配置完之后 执行 dis stp brief 命令,查看STP网络信息,端口是否阻塞。
将SW1、SW2分别做vlan10、vlan20的根网桥
[SW1]stp mode mstp #将交换机配置成MSTP模式,MSTP兼容STP/RSTP。
[SW1]stp region-configuration #进入MSTP域视图MSTP配置模式
[SW1-mst-region]region-name huawei1 #配置MSTP域的域名为huawei1,缺省为交换设备主控板上管理网口的MAC地址。