生成树协议(Spanning Tree Protocol ,STP)能够有效解决冗余链路带来的环路问题,大大提高了网络的健壮性、稳定性、可靠性和容错性。

一、STP树的生成过程

1、选举根桥,作为整个网络的根

  • 什么是根桥?
    根桥是STP的根节点。要生成一棵STP树,首先要确定出一个根桥。根桥是整个交换网络的逻辑中心,但不一定是物理中心。当网络的拓扑发生变化时,根桥也可能会发生变化。

  • 了解BPDU
    运行STP的交换机(简称STP交换机)会相互交换STP协议帧,这些协议帧的荷载数据被称为网桥协议数据单元(Bridge Protocol Data Unit,BPDU)。BPDU中包含了与STP相关的所有信息,如BID。

  • 交换机间选举根桥的主要步骤
    (1)STP交换机初始启动之后,会认为自己是根桥,并在发送给其他交换机的BPDU中宣告自己是根桥。
    (2)当交换机从网络中收到其他设备发送过来的BPDU的时候,会比较BPDU中的根桥BID和自己BID,较小的BID将作为根桥BID。
    (3)交换机间不断地交互BPDU,并对BID进行比较,直至最终选举出一台BID最小的交换机作为根桥。

2、确定根端口,确定非根桥与根桥连接的最优端口。

  • 什么是根端口?
    根桥确定后,其他没有成为根桥的交换机都被称为非根桥。在从非根桥到根桥之间通信的多个端口中工作路径最优且唯一的端口为根端口。(一个非根桥设备上最多只能有一个根端口)
  • 根端口的确定过程
    (1)比较根路径开销(Root Path Cost,RPC),路径开销较小的为根端口。
    (2)比较上行设备的BID,BID较小的端口为根端口。
    (3)比较发送方端口ID,端口ID较小的为根端口。

3、确定指定端口,确定每条链路与根桥连接的最优端口。

  • 什么是指定端口?
    当一个网段有两条及两条以上的路径通往根桥时,每个网段都必须确定一个端口为指定端口(每个网段中唯一)。

  • 确定指定端口
    指定端口也是通过比较RPC来确定的,RPC较小的端口将成为指定端口。如果RPC相同,则需要比较BID、PID等。

4、阻塞备用端口(Alternate Port , AP),形成一个无环网络
  在确定了根端口和指定端口之后,交换机上所有剩余交换机互连的端口都被称为备用端口。STP树会对备用端口进行逻辑阻塞。
  逻辑阻塞是指这些备用端口不能转发用户数据帧(由终端计算机产生并发送的帧),但可以接收并处理STP帧。
  根端口和指定端口既可以发送和接收STP帧,又可以转发用户数据帧。

二、STP的端口状态

  • 禁用(Disabled):禁用状态的端口无法接收和发送任何帧,端口处于关闭(Doen)状态。
  • 阻塞(Blocking):阻塞状态的端口只能接收STP帧,不能发送STP帧,也不能转发用户数据帧。
  • 侦听(Listening):侦听状态的端口可以接收并发送STP帧,但不能进行MAC地址学习,也不能转发用户数据帧。
  • 学习(Learning):学习状态的端口可以接收并发送STP帧,也可以进行MAC地址学习,但是不能转发用户数据帧。
  • 转发(Forwarding):转发状态的端口可以接收并发送STP帧,也可以进行MAC地址学习,还能够转发用户数据帧。

三、STP 配置

拓扑图
在这里插入图片描述
(1)配置STP模式

  • 默认情况下,STP是启用STP功能的。如果STP处于关闭状态,则在系统视图下使用【stp enable】命令开启
  • 交换机上生成树的工作模式分别为MSTP、RSTP、STP。默认工作模式是MSTP。
  • 配置所有交换机上生成树的工作模式为STP。
    在这里插入图片描述
    修改交换机的名字的命令,例如修改SW1的【sysname SW1】

(2)配置交换机SW1为根桥

  • STP会自动选举出根桥,但管理员也可以通过修改交换机的桥优先级值来保证某一个交换机被选举成为根桥。(桥优先级值默认值为32768,该值要求设置为4096的倍数,如4096、8192等)
    在这里插入图片描述
  • 也可以指定某个交换机为根桥
    在这里插入图片描述

设备配置此命令后,设备的桥优先级的值会被自动设为0,并且不能使用【stp priority 优先级值】修改桥优先级。
(3)配置交换机为备份根桥

  • 桥优先级第二小的会成为备份根桥,使用【stp root secondary】命令,设备桥优先级自动设为4096,且不能使用【stp priority 优先级值】修改。
    在这里插入图片描述

(4)案例验证

  • SW1交换机为根桥,查看它的各端口角色

    可以看到各端口角色为DESI(指定端口),状态为转发状态

  • SW2为备用根桥
    在这里插入图片描述
    ROOT指根端口

  • SW4交换机
    在这里插入图片描述
    ALTE指阻塞端口

(5)调节STP计时器参数
在STP网路中,STP树的完全收敛需要依赖定时器的计时,为了加快STP的收敛速度,可以手动修改STP的计时器参数。影响STP收敛的计时器参数主要有Forward Delay 和BPDU Max Age。

  • 修改每个交换机的Max Age 为6s,Forward Delay为4s。
    在这里插入图片描述
    查看生成树的状态信息
    在这里插入图片描述
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐