STP生成树协议

1.STP协议介绍

在一个复杂的网络环境中,难免会出现环路。由于冗余备份的需要,网络设计者都倾向于在设备之间部署多条物理链路,其中一条作主用链路,其他链路作备份,这样都有可能会导致环路产生。交换机根据MAC地址表转发数据帧,如果地址未知,则广播,当网络中存在物理环路,会产生网络风暴。
STP(Spanning Tree Protocol)(生成树协议)可以从逻辑上断开环路,防止广播风暴的产生。运行该协议的设备通过彼此交互信息发现网络中的环路,并有选择的对某个端口进行阻塞,最终将环形网络结构修剪成无环路的树形网络结构,从而防止报文在环形网络中不断循环,避免设备由于重复接收相同的报文造成处理能力下降。若线路出现故障,断开的接口会被激活,恢复通信,起到备份线路的作用。

2.STP 的算法

STP将一个环形网络生成无环拓朴的步骤:
第一步:选择根网桥(Root Bridge)
第二步:选择根端口(Root Ports)
第三步:选择指端口(Designated Ports)

3.选择根网桥(Root Bridge)

网桥的选择:根据网桥ID(BID)选择根网桥,谁的优先级小,谁就是根桥。如果优先级相同,谁的MAC地址小谁就是根桥。

每个网络只能有一个根桥,根桥具有最低的桥ID,根桥上的所有端口都是指派端口,选择根网桥的目的是为了给将生成的树形结构确定一个树根。
例:
STP生成树协议_第1张图片

4.选择根端口(Root Ports)

在非根网桥上选择一个到根网桥最近的端口作为根端口 选择根端口的依据是:
根路径成本(cost值)【从端口出发到根桥】最低
直连网桥的网桥ID最小
直连网桥的端口ID最小

cost值:根路径成本是网桥到根网桥的路径上所有链路的成本之和。
根路径成本表
在这里插入图片描述

STP生成树协议_第2张图片STP生成树协议_第3张图片

5.选择指定端口

在每个网段上,选择1个指定端口,根桥上的端口全是指定端口。
非根桥上的指定端口:
根路径成本【从非根桥到根桥】最低
端口所在的网桥的ID值较小
直连网桥的端口ID值较小
例:
STP生成树协议_第4张图片

6.端口状态
状态 用途
转发(Forwarding) 发送和接收用户数据
学习(Learning) 构建网桥表
侦听(Listening) 构建“活动”拓扑选举根桥、根端口、指定端口
阻塞(Blocking) 只有接收BPDU
禁用(Disable) 强制关闭
7.定时器
定时器类型 说明
Hello Time Hello Timer定时器时间的大小控制配置BPDU发送间隔
Forward Delay Timer Forward Delay Timer定时器时间的大小控制端口在Listening和Learning状态的持续时间。
Max Age Max Age定时器时间的大小控制存储配置BPDU的超时时间,超时认为根桥连接失败。
8.BPDU(重要)

1)BPDU是什么
交换机怎么知道其他交换机的网桥ID?怎么知道哪个端口的根路径成本最小?
是因为交换机之间使用BPDU来交换STP信息,BPDU(Bridge Protocol Data Unit)使用组播发送BPDU,组播地址为:01-80-c2-00-00-00。
BPDU分为2种类型:
配置BPDU - 用于生成树计算
拓朴变更通告(TCN)BPDU - 用于通告网络拓朴的变化
STP生成树协议_第5张图片
2)STP使用BPDU选择根网桥
交换机启动时,假定自己是根网桥,在向外发送的BPDU中,
根网桥ID字段填写自己的网桥ID。
STP生成树协议_第6张图片
当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到根网桥ID中。
STP生成树协议_第7张图片
3)STP使用BPDU计算根路径成本
根网桥发送根路径成本为0的BPDU
STP生成树协议_第8张图片
其他交换机接收到根网桥的BPDU后,在根路径成本上添加接收接口的路径成本,然后转发。
STP生成树协议_第9张图片

你可能感兴趣的:(网络安全)