RSTP介绍加实操

发布于:2025-05-31 ⋅ 阅读:(20) ⋅ 点赞:(0)

简介

 STP协议虽然能够解决环路问题,但是收敛速度慢,影响了用户通信质量。如果STP网络的拓扑结构频繁变化,网络也会频繁失去连通性,从而导致用户通信频繁中断。IEEE于2001年发布的802.1w标准定义了快速生成树协议RSTP(Rapid Spanning-Tree Protocol),RSTP在STP基础上进行了改进,实现了网络拓扑快速收敛

主要特点

  • 快速收敛

    • RSTP通过优化端口状态转换机制,大大加快了网络的收敛速度。例如,当链路故障发生时,RSTP能够快速检测到故障并重新计算生成树,将收敛时间从STP的数十秒缩短到几秒甚至更短。

    • RSTP引入了“快速收敛”机制,允许端口在某些情况下直接从丢弃状态进入转发状态,而不需要经过侦听和学习阶段。

  • 边缘端口(Edge Port)

    • RSTP引入了边缘端口的概念,边缘端口是指直接连接终端设备(如计算机、打印机等)的端口,而不是连接到其他交换机的端口。边缘端口可以直接进入转发状态,而不需要经过侦听和学习阶段,这进一步加快了收敛速度。

    • 例如,在一个企业网络中,当新设备接入网络时,如果连接该设备的端口被配置为边缘端口,那么该端口可以立即开始转发数据帧,而不会像STP那样需要等待较长时间。

  • 多种端口角色

    • RSTP定义了多种端口角色,包括根端口(Root Port)、指定端口(Designated Port)、替代端口(Alternate Port)和备份端口(Backup Port)。这些端口角色的定义使得RSTP能够更灵活地处理网络拓扑变化。

    • 根端口是指从该端口到根桥的路径成本最低的端口;指定端口是指在某个网段上被选为转发数据帧的端口;替代端口是指在根端口或指定端口故障时可以替代它们的端口;备份端口是指在指定端口故障时可以替代它的端口。

  • BPDU保护

    • RSTP增强了BPDU(Bridge Protocol Data Unit)的保护机制。BPDU是交换机之间传递的协议数据单元,用于确定网络的拓扑结构。RSTP通过BPDU保护机制,可以防止恶意设备发送伪造的BPDU,从而保护网络的稳定性。

    • 例如,当交换机检测到某个端口收到的BPDU优先级高于自己发送的BPDU时,它会采取相应的措施,如关闭该端口,以防止网络拓扑被错误地改变。

(P/A)机制

快速生成树协议(Rapid Spanning Tree Protocol,RSTP)的Proposal/Agreement(P/A)机制是其快速收敛的核心机制之一。以下是P/A机制的详细工作原理:

工作原理

  1. Proposal阶段:当交换机端口处于丢弃(Discarding)状态且角色为指定端口(Designated Port)时,会发送一个带有Proposal位和Agreement位都为1的BPDU给对端交换机。这表示该端口希望成为指定端口,并请求对端交换机的同意。

  2. 同步过程:对端交换机收到Proposal BPDU后,会判断接收端口是否即将成为根端口(Root Port)。如果是,对端交换机会进入同步(Sync)过程,阻塞所有非边缘指定端口,以防止临时环路的产生。

  3. Agreement阶段:同步过程完成后,对端交换机会回应一个带有Agreement位为1的BPDU给发送方交换机。这表示对端交换机同意该端口成为指定端口。

  4. 快速切换:发送方交换机收到Agreement BPDU后,端口状态直接变为转发(Forwarding)状态,从而实现链路的快速收敛。

运行条件

  • P/A机制只能在点对点的全双工链路上运行。交换机通过自动协商来识别链路类型。默认情况下,生成树协议会自动检测与接口相连的链路是否为点对点链路。如果交换机从某个接口收到了来自不同发送者的两种BPDU,就会认为该接口连接到了共享型链路,此时P/A机制无法运行。

优势

  • 快速收敛:通过P/A机制,RSTP可以将端口从阻塞状态切换到转发状态的时间从传统STP的30秒缩短到几秒钟。

  • 逐链路收敛:P/A机制允许网络拓扑的逐链路收敛,而不必像STP那样需要被动等待全网实现收敛。

注意事项

  • 如果指定端口发出的Proposal BPDU后没有收到Agreement BPDU,则该端口将切换到STP方式,需要等待30秒时间才能进入转发状态

通过P/A机制,RSTP能够快速确定指定端口,显著提高了网络的收敛速度

BPDU(Bridge Protocol Data Unit)

在快速生成树协议(Rapid Spanning Tree Protocol,RSTP)中,BPDU(Bridge Protocol Data Unit)是交换机之间用于交换生成树信息的关键数据包。RSTP对BPDU进行了优化和扩展,以支持快速收敛机制。以下是关于RST BPDU的详细介绍:

1.RST BPDU的类型

RSTP定义了两种类型的BPDU:

  • 配置BPDU(Configuration BPDU):用于交换机之间传递生成树信息,包括桥ID、端口ID、路径成本等。

  • 拓扑变更通知BPDU(Topology Change Notification BPDU,TCN BPDU):用于通知其他交换机网络拓扑发生了变化。

2.RST BPDU的格式

RST BPDU的格式在传统STP的基础上进行了扩展,增加了新的字段和标志位,以支持RSTP的快速收敛机制。以下是RST BPDU的主要字段:

表格

复制

字段名称 长度(字节) 描述
协议标识符 2 固定值0x0000,标识生成树协议
协议版本标识符 1 RSTP的版本号,固定值0x02
BPDU类型 1 0x00表示配置BPDU,0x80表示TCN BPDU
标志字段 1 包含Proposal、Agreement、Learning、Forwarding等标志位
根桥ID 8 根桥的桥ID,包括优先级和MAC地址
根路径成本 4 到根桥的路径成本
桥ID 8 发送BPDU的桥ID
端口ID 2 发送BPDU的端口ID
消息优先级 2 消息的优先级
最大跳数 1 最大跳数,用于防止BPDU无限循环
消息老化时间 2 BPDU消息的老化时间
拓扑改变标志 1 拓扑改变标志,用于通知拓扑变化
拓扑改变确认标志 1 拓扑改变确认标志,用于确认拓扑变化
拓扑改变通知标志 1 拓扑改变通知标志,用于通知拓扑变化

3.RST BPDU的作用

  • 配置BPDU的作用

    • 传递生成树信息:配置BPDU用于交换机之间传递生成树信息,包括根桥ID、路径成本、桥ID、端口ID等。这些信息用于确定网络的拓扑结构。

    • Proposal/Agreement机制:通过配置BPDU中的Proposal和Agreement标志位,支持RSTP的快速收敛机制。Proposal标志位用于请求对端交换机的同意,Agreement标志位用于确认对端交换机的请求。

    • 端口角色和状态的确定:配置BPDU中的信息用于确定端口的角色(如根端口、指定端口、替代端口等)和状态(如丢弃、学习、转发)。

  • 拓扑变更通知BPDU的作用

    • 通知拓扑变化:当网络拓扑发生变化时(如链路故障、端口状态变化等),交换机会发送TCN BPDU通知其他交换机。TCN BPDU用于触发生成树的重新计算,确保网络的稳定运行。

    • 快速响应拓扑变化:通过TCN BPDU,交换机可以快速响应拓扑变化,重新计算生成树,恢复网络通信。

4.RST BPDU的处理

  • 接收BPDU的处理

    • 当交换机收到一个BPDU时,会根据BPDU中的信息更新生成树状态。例如,如果收到的BPDU中的根桥ID更优,则会更新根桥信息,并重新计算路径成本。

    • 如果收到的BPDU是Proposal BPDU,交换机会根据P/A机制进行处理。如果交换机同意该端口成为指定端口,则会发送一个Agreement BPDU。

  • 发送BPDU的处理

    • 交换机会定期发送配置BPDU,以维持生成树的稳定运行。配置BPDU的发送间隔通常为2秒。

    • 当网络拓扑发生变化时,交换机会发送TCN BPDU,通知其他交换机拓扑变化。

5.与STP BPDU的比较

  • 格式扩展:RST BPDU在STP BPDU的基础上增加了新的字段和标志位,以支持快速收敛机制。例如,增加了Proposal和Agreement标志位。

  • 快速收敛:RST BPDU通过P/A机制,能够快速确定端口角色和状态,显著提高了网络的收敛速度。

  • 兼容性:RST BPDU与STP BPDU是兼容的,RSTP交换机可以与STP交换机一起工作。当RSTP交换机与STP交换机相连时,RSTP交换机会自动将自己配置为STP模式。

通过优化BPDU的格式和处理机制,RSTP能够快速适应网络拓扑变化,提高网络的稳定性和收敛速度。

工作原理

配置RSTP命令

  • 启用RST

    [Huawei] stp mode rstp

    这条命令将交换机的生成树模式设置为RSTP模式。

  • 配置端口优先级

    [Huawei-GigabitEthernet0/0/1] stp port-priority 32

    通过设置端口优先级,可以影响端口在生成树中的角色。优先级越低,端口越有可能成为根端口或指定端口。

  • 配置根保护

[SWA-GigabitEthernet0/0/1]stp root-protection

由于错误配置根交换机或网络中的恶意攻击,根交换机有可能会收到优先级更高的BPDU报文,使得根交换机变成非根交换机,从而引起网络拓扑结构的变动。这种不合法的拓扑变化,可能会导致原来应该通过高速链路的流量被牵引到低速链路上,造成网络拥塞。交换机提供了根保护功能来解决此问题。根保护功能通过维持指定端口角色从而保护根交换机。一旦启用了根保护功能的指定端口收到了优先级更高的BPDU报文时,端口会停止转发报文并且进入Listening状态。经过一段时间后,如果端口一直没有再收到优先级较高的BPDU报文,端口就会自动恢复到原来的状态。根保护功能仅在指定端口生效,不能配置在边缘端口或者使能了环路保护功能的端口上

  • 配置边缘端口

  • [Huawei-GigabitEthernet0/0/1] stp edged-port enable

    将端口配置为边缘端口,边缘端口可以直接进入转发状态,加快收敛速度。

  • 配置BPDU保护

    [Huawei-GigabitEthernet0/0/1] stp bpdu-protection

    启用BPDU保护功能,防止恶意设备发送伪造的BPDU,保护网络拓扑的稳定性。

3.华为交换机中RSTP的监控和维护

华为交换机提供了丰富的命令和工具来监控和维护RSTP的运行状态:

  • 查看生成树状态

    [Huawei] display stp brief

    这条命令可以显示生成树的简要信息,包括根桥信息、端口角色、端口状态等。

  • 查看端口状态

    [Huawei-GigabitEthernet0/0/1] display stp interface gigabitethernet 0/0/1

    通过指定端口,可以查看该端口的生成树状态,包括端口角色、端口状态、路径成本等。

  • 查看BPDU信

    [Huawei] display stp bpdu

    查看BPDU的发送和接收情况,帮助诊断网络拓扑问题。