广播风暴
当两个以上的网桥使用或交换机端口交叉连接时,网络拓扑结构会产生回路,引发转发帧的无限循环,并迅速扩散到整个网络的回路中。网络中充斥着大量广播帧导致大面积网络拥塞,这种现象就称为广播风暴(broadcast storm)。
广播风暴产生过程如下:
生成树协议
生成树协议STP(Spanning Tree Protocol)通过在每个网桥或交换机禁用某些端口来工作,这样可避免拓扑环路(即两个网桥之间不允许出现重复路径)。为实现STP还需要各网桥之间按照生成树算法要求进行信息交换,以找出根网桥及其子网桥,并禁用某些会形成环路的端口。信息交换通过网桥协议数据单元(Bridge Protocol Data Unit)来实现。
端口5种状态
网桥或交换机的端口可能有5个状态:阻塞、侦听、学习、转发和禁用。他们之间的状态转换如图所示:
上图中,实线箭头表示端口的正常转换,虚线箭头表示由管理配置引起的改变。
交换机上的端口在启动stp协议后,端口存在的五种状态:
1、禁用(disabled) - 该端口只是相应网管消息,并且必须先转到阻塞状态。这种状态可以是由于端口的物理状(如端口物理层没有up)态导致的,也可能是管理员手工讲端口关闭。
2、 阻塞(blocking) - 处于这个状态的端口不能够参与转发数据报文,但可以接收BPDU配置消息,并交给CPU处理。不过不能发送配置BPDU消息,也不能进行地址学习。
3、监听(listening) - 处于这个状态的端口不参与数据转发,也不进行地址学习,但可以接收并发送BPDU配置消息。
4、学习(learning) - 处于这个状态的端口不能转发数据,但是开始地址学习,并可以接收、处理和发送BPDU配置消息。
5、转发(forwarding) -一旦端口进入该状态,就可以转发任何数据,同时也进行地址学习和BPDU配置消息的接收、处理和发送。
总结:
状态 | 功能 |
---|---|
禁用 | 不收发任何报文 |
阻塞 | 不接收或转发数据,接收但不发送BPDU,不进行地址学习 |
监听 | 不接收或转发数据,接收并发送BPDU,不进行地址学习 |
学习 | 不接收或转发数据,接收并发送BPDU,开始地址学习 |
转发 | 接收或转发数据,接收并发送BPDU,开始地址学习 |
BPDU是运行STP的交换机之间交换的消息帧。BPDU内包含了STP所需的路径和优先级信息,STP便利用这些信息来确定根桥以及到根桥的路径。
在初始化后,端口进入阻塞状态,此状态下不进行地址学习、数据转发或BPDU发送,但它会监控接收的BPDU并在它需要被包含在将到达的根网桥的路径中的情况下使端口转换到侦听状态。在侦听状态下,该端口允许发送和接收BPDU,但不进行地址学习或数据转发。经过一个典型的15秒转发延迟,端口就进入到学习状态中,这是它被允许执行数据转发以外的所有操作。要从学习状态进入到转发状态,端口还需要等待另一个转发延迟。
端口角色
STP端口角色: 4种
根端口,指定端口,替代端口,禁用端口
端口角色 | 位置 | 解释 |
---|---|---|
禁用端口 | 存在于非根网桥和根网桥上 | 生成树中不起作用的端口 |
根端口 | 存在于非根网桥上 | 非根交换机上距离根交换机最近的端口,根端口会将数据传送给根桥用于传输,是交换机端口去往跟桥的最佳路径。 |
指定端口 | 存在于非根网桥和根网桥上 | 对于根网桥来说,所有端口都为指定端口;对于非根网桥来说,指定端口根据需要与根交换机之间收发数据。 |
替代端口 | 存在于非根网桥上 | 用来提供替代去往根网桥路径的端口,即替换当前根端口,工作在稳定拓扑中为丢弃状态。 |
备份端口 | 存在于非根网桥上 | 充当指定交换机的那个网段提供一条备份链路,工作在稳定拓扑中为丢弃状态。 |
来源:CSDN
作者:蒋慧慧
链接:https://blog.csdn.net/weixin_43957217/article/details/103610476