【杂记-浅谈STP生成树】

一、什么是STP生成树

1、概述
STP,Spanning Tree Protocol,即生成树协议。
STP通过运行算法,选举出一个根桥(Root Bridge),并在网络中选择最佳路径,将多余的链路阻塞,形成一个无环的树形结构,确保网络的稳定性和安全性。
STP是一种网络协议,用于防止网络中因存在冗余路径导致的环路问题。在复杂的网络环境下,交换机间的连接可能会形成环路,这会导致广播风暴、MAC地址表的不稳定等一系列问题,严重影响网络的正常运作。STP通过逻辑上阻塞一部分端口,使得原本可能形成环路的物理连接转变为无环的树形结构,从而解决了这些问题。
2、优点
STP作为网络协议的一个重要组成部分,对于保障网络的可靠性和稳定性起着至关重要的作用。随着网络技术的不断进步,STP也在不断的演进中,未来的发展可能会更加注重协议的快速收敛能力和对复杂网络环境的适应性。
3、作用
1、消除环路:通过阻塞不必要的端口,防止网络中环路的形成。
2、链路备份:虽然被阻塞的端口不参与数据传输,但在网络发生故障时,这些端口可以迅速转换为活动状态,起到链路备份的作用。
3、防止广播风暴:消除环路后,减少了广播流量,降低了网络拥塞。
4、提高网络稳定性:通过定期发送BPDU(Bridge Protocol Data Unit)报文,保持网络的稳定状态。
4、端口开销与带宽的关系
在STP中,端口开销(Port Cost)是用来衡量一个端口到根桥路径的成本,通常与端口的带宽有关。带宽越大,其开销越小,这是因为STP假定较高的带宽意味着更高的传输能力,因此在计算路径成本时给予较低的权重。例如,10 Mbps端口的默认开销为100,而1 Gbps端口的默认开销仅为4。

三、STP的工作原理

1、根桥的选举
根桥是STP网络的中心,所有的交换机通过BPDU(Bridge Protocol Data Units)报文进行通信,并最终选举出一个具有最低桥ID(Bridge ID)的交换机作为根桥,所有交换机初始时都认为自己是根桥,并通过BPDU报文交换信息,最终选出具有最小桥ID的交换机作为根桥。
桥ID由优先级(Priority)和MAC地址组成,优先级的默认值通常是32768,且必须是4096的倍数。如果优先级相同,则会比较MAC地址,最小的MAC地址将被选为根桥。
2、根端口的选举
每个非根交换机都会选举一个根端口,这是该交换机通往根桥的最佳路径,每个非根交换机选择一个通往根桥路径代价最小的端口作为根端口。
选举过程基于到达根桥的总成本(累计路径开销),成本最小的端口被选为根端口。如果成本相同,则比较发送方的桥ID和端口ID,选择最小的作为根端口。
3、指定端口的选举
指定端口是每个网段中通往根桥的最佳路径,在每个网段中选择一个指定端口,该端口负责在此网段转发BPDU报文。
选举过程基于到达根桥的总成本,成本最小的端口被选为指定端口。如果成本相同,则比较发送方的桥ID和端口ID,选择最小的作为指定端口。
4、阻塞端口
除了根端口和指定端口外,其他的端口被称为阻塞端口,除了根端口和指定端口,其他端口都被阻塞,不参与数据传输。
这些端口在STP中被阻塞,以防止环路的形成,一旦网络拓扑发生变化,STP会重新计算生成树,可能会解除某些阻塞端口的状态,使其能够转发数据。

三、STP端口状态和端口角色

1、端口状态
STP协议中,端口状态有五种:
1、禁用状态(Disabled):端口不处理和转发BPDU报文,也不转发用户流量。
2、阻塞状态(Blocking):端口仅能接收并处理BPDU,不能转发BPDU或用户流量。
3、侦听状态(Listening):端口可以接收和发送BPDU,但不转发用户流量。
4、学习状态(Learning):端口可以接收和发送BPDU,开始构建MAC地址表,但不转发用户流量。
5、转发状态(Forwarding):端口可以接收、处理和发送BPDU,并转发用户流量。
当端口处于阻塞状态时,它仅能接收BPDU,不能发送BPDU,也不能转发数据帧。端口从阻塞状态转移到转发状态需要经过一系列的状态变化,首先是侦听状态,其次是学习状态,最后是转发状态。
2、端口角色
1、根端口(Root Port):非根交换机上通往根桥路径代价最小的端口
2、指定端口(Designated Port):在每个网段中,负责转发数据到根桥的端口
3、阻塞端口(Blocking Port):不被选为根端口或指定端口的端口,将被阻塞,不参与数据转发
3、计时器
STP协议中有三个重要的计时器:Hello Timer(hello时间)、Forward Delay(转发延迟)和Max Age(最大生存时间)。
1、Hello Timer决定了BPDU的发送频率,默认为2秒。
2、Forward Delay决定了从侦听状态到学习状态,以及从学习状态到转发状态的时间,默认为15秒。
3、Max Age是BPDU的最大生存时间,如果在20秒内没有收到BPDU,则会认为拓扑发生变化,开始进入侦听和学习状态。
当一个端口从阻塞状态转变为转发状态时,它首先需要经过侦听状态,这个过程持续15秒。接着,端口进入学习状态,这个过程同样持续15秒。最后,端口进入转发状态,开始转发数据帧。

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值