生成树STP

一、STP概述

1.1 交换网络环路的产生

1.广播风暴的形成
PC1向外发送广播消息,SW1和SW2从所有非接收端转发广播,最终形成广播风暴

2.多帧复制
一台PC收到了从不同交换机发送过来的数据

3.MAC地址表紊乱
同一台交换机上的不同端口收到了相同的MAC地址,影响交换机的MAC地址缓存表

1.2 STP的简介


STP(Spanning Tree Protocol),生成树协议,逻辑上断开环路,防止广播风暴的产生。当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用。

二、STP的工作原理

2.1 生成树算法

生成树算法分为3个步骤:选择根网桥,选择根端口,选择指定端口

2.1.1 根网桥

选择优先级小的,如果优先级一样,选择MAC地址小的作为根网桥

2.1.2 根端口

不在根网桥上,选择的依据:1)到根网桥最低的根路径成本 2)直连的网桥ID最小 3)端口IP最小
注:1)路径成本是网桥到根网桥的路径上所有链路的成本之和,比如SW1到SW2的路径成本是10,SW2到SW3的成本是20,那么SW1到SW3的成本是30,我们一般都用带宽来表示路径成本。

2)网桥ID是惟一的

3)端口ID

2.1.3 指定端口

1.根网桥上的端口全是指定端口
2.在每个网段上,选择一个指定端口
3.非根网桥上的指定端口,选择顺序:根路径成本较低;所在交换机的网桥ID值较小;端口ID的值较小
4.既不是根端口,也不是指定端口,STP会将这个端口阻塞
举例:

SW2是根网桥(优先级小),SW1的两个端口是指定端口
SW1连接SW2的端口是根端口,连接SW3的端口是阻塞端口
SW3连接SW2的端口是根端口,连接SW1的端口是指定端口

SW1和SW3会形成一条备用链路

2.1.4 验证





SW1上有一个端口e0/0/2是阻塞口,我们在e0/0/2c处抓个包


然后我们断开SW1的e0/0/1,再一次抓包

两次的MAC地址不一样,STP都能通,备用链路生效

2.2 BPDU

1.概念:网桥协议数据单元,使用组播发送BPDU
2.类型:配置BPDU和拓扑变更通告(TCN)BPDU
3.报文字段:根网桥ID、根路径成本、发送网桥ID、端口ID
4.作用:STP可以利用BPDU选择根网桥:
1)当第一台交换机第一次启动时,先假定自己是跟网桥,在BPDU报文中的根网桥ID 字段填入自己的网桥ID,并向外发送
2)交换机接收到BPDU报文中的根网桥ID与自己的网桥ID的值哪个更小,如果小于自己的值,就用接受到的ID代替自己的ID,并向外转发。交换机会继续接受其他交换机发来爱的BPDU,并继续进行比较,只要接收到的根网桥ID比自己的小,就进行替换。当所有交换机都接受全部BPDU后,选出公认的根网桥

三、STP收敛

3.1 STP端口状态

STP在交换机中自动运行,交换机开机时,交换机的指示灯显示为黄色,并且大约有30s的时间不能转发数据,这时交换机做STP计算。直到交换机的STP计算完毕,有些端口可以转发数据,有些端口被阻塞,也就是网络收敛后,交换机才开始转发数据,当网络拓扑发生变化是,交换机会重新运行STP计算,交换机的每一个端口都必须依次经历好几种状态:
1)转发(Forwarding):发送/接收用户数据
2)学习(Learning):构建网桥表
3)倾听(Listening):构建“活动”拓扑
4)阻塞(Blocking):只接受BPDU
5)禁用(Disabled):强制关闭

3.2 STP计时器


1.Hello时间:网桥发送配置BPDU报文之间的时间间隔,一般为2s
2.转发延迟:一个交换机端口在倾听(Listening)和学习(learning)状态所花费的时间间隔,默认值各为15s
3.最大老化时间:出现在阻塞到倾听的过程中,一个交换机丢弃BPDU报文之前存储它的最大时间,在执行STP时,每一个交换机端口都保存一份它所倾听的BPDU备份,如果源BPDU失去了与交换机端口的联系,交换机则在最大老化时间之后通知网络已经发送了拓扑结构方面的变化。最大老化时间的默认值是20s
所以,阻塞到转发过程一般默认时间大概为50s

posted @ 2021-05-28 09:09  落寞1111  阅读(323)  评论(0编辑  收藏  举报