一、为什么要用STP
为了提高网络可靠性,交换网络中通常会使用冗余链路。然而,冗余链路会给交换网络带来环路风险,并导致广播风暴以及MAC地址表不稳定等问题,进而会影响到用户的通信质量。生成树协议STP(Spanning Tree Protocol)可以在提高可靠性的同时又能避免环路带来的各种问题。
二、STP的作用
a)Stp通过阻塞端口来消除环路,并能够实现链路备份目的
b)消除了广播风暴
c)物理链路冗余,网络变成了层次化结构的网络
三、STP操作
1.选举一个根桥
2.每个非根交换机选举一个根端口
3.每个网段选举一个指定端口
4.阻塞非根,非指定端口
四、STP名词解释:
-
根桥:生成树里面的‘老大’,桥id最小
-
备份根桥:生成树里面的“二把手”,老大挂了的时候,我当老大,桥ID第二小。
-
非根交换机:干活的小弟,都有一个根端口
-
根端口:离根桥最近的端口
-
指定端口:根桥所有参与生成树选举的端口,都一定是指定端口
-
非根非指定端口:被阻塞的端口---备用链路的端口
-
路径开销:是端口Cost值,可以用来选择最优的路径,值越小越优。根路径开销是端口到达根桥的过程中累计的路径开销。
-
BID:桥ID:是由桥优先级和桥MAC地址构成,桥优先级为高16位,MAC地址是低48位。
-
PID:端口ID:是由端口优先级和端口号构成,端口优先级为高4位,端口号
五、生成树选举办法
1.根桥交换机,备份根桥交换机,非根交换机
2.根端口,指定端口,非根非指定端口(阻塞端口/预备端口)
六、生成树选举因素
1.第一种根桥选举因素:优先级,MAC地址
2.第二种端口选举因素:路径开销>桥ID>对端端口ID>本端端口ID
3.如果我们要改变根桥直连端口的接口属性,要修改 路径开销。
七、根桥选举:
1.刚启动STP时,每台交换机都认为自己是根桥
2.根桥所有参与生成树选举的端口,都一定是指定端口
3.根桥交换机指定端口直连的交换机端口,都一定是指定端口
4.根桥:在参与生成树选举的网络里面 桥id肯定是最小的
5.备份根桥:在参与生成树选举的网络里面 桥id肯定是次优的存在影响根桥选举的因素:
1)优先级(交换机默认优先级是32768)越小越优先,0的优先级最高。 2)优先级一样,看MAC地址表,最小的就是根桥。
3)两种方式:优先级最小、MAC地址最小
八、根端口的选举
1.非根交换机在选举根端口时分别依据该端口的根路径开销、桥ID、对端PID和本端PID(接了hub的情况才会用到本端PID)
2.未被选举为根端口或指定端口的为预备口
九、端口状态
1.disable(端口未启用状态或初始状态,端口不处理任何数据端口状态为down)
2.blocking(阻塞状态,维持20秒)
3.listening(监听状态,参与生成树计算,接受并发送BPDU报文维持15秒)
4.learning(学习状态,端口不转发用户流量,学习MAC表,参与生成树计算,接受并发送BPDU报文,防止环路维持15秒)
5.forwarding(转发状态)
十、定时器
a)Hello Time:指允许STP的设备发送BPDU的时间间隔。当网络拓扑稳定之后,若要修改该定时器,只有在根桥修改才能生效。
b)Forward Delay:指接口进行状态更换的延迟时间。也就是在处于Listening和Learning的持续时间,缺省值为15秒。
c)Max Age: 指接口的BPDU老化时间。BPDU从根桥被发出的时候,Message Age值为0,每经过一个桥设备,其值加1。当非根桥设备收到BPDU后,会比较Message Age和Max Age的大小。如果前者小于等于后者,该非根桥设备继续转发该BPDU;如果前者大于后者,该BPDU将被丢弃,此时可以认为网络直径过大,根桥连接失败。
在同一个拓扑中,Max Age是相同的,可在根桥上修改该值。
十一、故障恢复时间
1. 根桥故障恢复时间是max age+2*forwading Delay=20+15*2=50s(发送TCPBDU)
2.直连链路故障回复时间是2*forwading Delay=15*2=30s
3.间接链路故障恢复时间是max age+2*forwading Delay=20+15*2=50s
十二、广播风暴
1.物理上存在环路
2.技术层面,交换机不能拒接广播,当收到广播时,会进行泛洪
十三、广播风暴危害
1.影响网络的效率
2.占用了大量的网络带宽
3.MAC地址会出现震荡(漂移)
4.数据无法正常传递
5.网络会瘫痪
十四、BPDU组成
为了计算生成树,交换机之间需要交换相关的信息和参数,这些信息和参数被封装在BPDU ( Bridge Protocol Data Unit )中。
BPDU 有两种类型:配置 BPDU 和 TCN BPDU 。
配置BPDU 包含了桥 ID 、路径开销和端口 ID 等参数。STP 协议通过在交换机之间传递配置 BPDU 来选举根交换机,以及确定每个交换机端口的角色和状态。在初始化过程中,每个桥都主动发送配置 BPDU 。在网络拓扑稳定以后,只有根桥主动发送配置 BPDU ,其他交换机在收到上游传来的配置 BPDU 后,才会发送自己的配置 BPDU 。
TCN BPDU是指下游交换机感知到拓扑发生变化时向上游发送的拓扑变化通知。
十五、STP的一些命令
注意:想要一个交换机一定为根桥,修改优先级,优先级可以为0。
在后面加入新设备时,要使原根桥不变可以增大加入的新设备的优先级。
交换机默认情况下直连的路径开销最小,但人工修改后则修改的可以为最小。