首页 > 其他分享 >RSTP相对STP的改进之处

RSTP相对STP的改进之处

时间:2024-12-19 22:27:15浏览次数:4  
标签:BPDU RSTP 报文 端口 接口 改进 STP

希望以更简单的大家都能理解的方式了解网络

这里排版比较乱,可以参考我的有道笔记(点我跳转的有道笔记)这里有时间会整理一下的

!!!!不是卖课的!!!!

有道笔记不需登录、即点即看

—————————————————正文————————————————————

相对STP,RSTP在原有的基础上进行了一些优化

1. 端口角色

将阻塞接口细分为:Alternate port(AP),Backup port(BP)

 Alternate port(AP):他是由于学习到了其他网桥发送的BPDU而阻塞的接口,作为根端口的备份端口,它提供了一条到达根桥的可切换路径
 Backup port(BP):他是由于学习到自己的BPDU(自环)报文而阻塞的端口,他作为指定端口的备份

2. 端口状态

将5中端口状态优化为3种

STP角色RSRP角色端口在拓扑中的角色
DisabledDiscardingAP、BP
BlockingDiscardingAP、BP
ListeningDiscardingAP、BP
LearningLearningDP、RP
ForwardingForwardingDP、RP

Discarding:不转发用户流量也不学习MAC地址
Learning:不转发流量但学习mac地址
Forwarding:转发用户流量也学习mac地址

3. Flag位

 RSTP的配置BPDU充分利用了STP报文中的fag字段,明确了端口角色
 除了保证和STP格式基本一致之外,RSTP作了如下变化:
 Type字段:配置BPDU类型不再是0而是2,所以运行STP的设备收到RSTP的配置BPDU时会丢弃。
 Flag字段:使用了原来保留的中间6位,这样改变的配置BPDU叫做RST BPDU。
RSTP的报文格式:
在这里插入图片描述
报文内容对比:
stp
↑stp,可以看到type值为0,代表他是stp的报文,flags位只用到了bite0和bite7
RSTP
↑rstp,可以看到type值为1,代表他是rstp的报文,flags位全部都被使用了

4. BPDU的处理

(1)每台设备都能主动发出BPDU

在拓扑稳定后,无论非根桥设备是否接收到根桥传来的配置BPDU报文,非根桥设备仍然按照Hello Time规定的时间间隔发送配置BPDU,该行为完全由每台设备自主进行

(2)更短的超时时间

端口在超时时间内没有收到上有的BPDU,则认为协议失败
正常:hello time * 3 = 6s (hello默认2s)
华为:hello time * 3 * timer factor= 18s (timer factor时间因子默认3s)

(3)处理次优BPDU

STP种接受到次优BPDU直接丢弃
在RSTP中,如果一个设备收到次优BPDU,不仅会丢弃,然后会直接回复发送设备自身缓存的BPDU,从而加快收敛

5. 快速收敛机制

(1)根端口快速切换

由于存在AP接口,当网络中的RP接口出现问题,最优的AP接口将直接切换为RP,直接进入Forwading状态,不用等待30s-50s的收敛

(2)边缘端口

可以将连接终端的接口配置为边缘端口
边缘端口不参与RSTP计算,会直接进入forwarding状态
但是一旦边缘端口说到BPDU就会丧失边缘端口属性,可能会引起网络震荡,针对此种问题可以开启BPDU保护

(3)Proposal/Agreement 机制

(详细机制查看【P/A机制详解】)
简称P/A机制
通过此机制能够加快上游端口进入forwarding的速度

6. 拓扑变更机制(TC报文)

 拓扑变更的判定:一个非边缘端口状态变为forwarding
 TC报文:一个普通的BPDU报文flag中TC位置1,则称其为TC报文
下图对比STP与RSTP机制的不同
在这里插入图片描述

由于STP中只有根桥能够向下主动发送BPDU所以要层层向上汇报,变得非常繁琐
在RSTP中所有交换机都能主动发发出BPDU,能够快速泛洪整个网络

7. 保护功能

(1)BPDU保护

 正常情况下,边缘端口不会收到RST BPDU。如果有人伪造RST BPDU恶意攻击交换设备,当边缘端口接收到RST BPDU时,交换设备会自动将边缘端口设置为非边缘端口,并重新进行生成树计算,从而引起网络震荡。交换设备上启动了BPDU保护功能后,如果边缘端口收到RST BPDU,边缘端口将被error-down但是边缘端口属性不变,同时通知网管系统。

[接口下] STP edged-port enable \\设置为边缘端口

[] stp bpdu-protection \\开启bpdu保护

接口进入error-down可以使用下面两种方法重新启用
[接口下] undo shutdown \\进入接口手动启动
[] error-down auto-recovery cause bpdu-protection interval [秒数] \\当因为bpdu保护引起的error-down将接口禁用一定秒数
(2)根保护

启动根保护功能的交换机,他的端口只能保持为指定端口
一旦启用根保护功能的指定端口收到优先级更高的RST BPDU时,指定端口将进入Discarding状态,不再转发报文。经过一段时间(通常为两倍的Forward Delay),如果端口一直没有再收到优先级较高的RST BPDU,端口会自动恢复到正常的Forwarding状态。
如此可以保护根桥不被其他交换机抢夺根桥身份

[指定接口下]  stp root-protection    \\开启该接口的根保护功能

问题:
 什么接口需要开启根保护功能?
  根桥的DP接口、接终端的DP接口

(3)环路防护

虽然stp能够堵塞接口破除环路,但是当出现单向链路故障,可能会引起环路
在这里插入图片描述

 在启动了环路保护功能后,如果根端口或Alternate端口长时间收不到来自上游设备的BPDU报文时,则向网管发出通知信息(此时根端口会进入Discarding状态,角色切换为指定端口),而Alternate端口则会一直保持在Discarding状态,不转发报文,从而不会在网络中形成环路。
 直到链路不再拥塞或单向链路故障恢复,端口重新收到BPDU报文进行协商,并恢复到链路拥塞或者单向链路故障前的角色和状态。
 当RP口收不到BPDU且开启环路保护后,会变为DP进入Discarding状态 ,AP切换为RP状态为Forwarding
 当AP口收不到BPDU且开启环路保护后,会变为DP进入Discarding状态,RP依旧为RP状态为Forwarding

[DP\AP下] stp loop-protection  \\开启环路保护功能 
(4)防TC攻击保护

 为防止恶意用户频繁向交换机发送TC置位的BPDU报文,导致交换机频繁删除mac地址表,给设备造成巨大负担
 对此可以可以启用防TC攻击保护,来设置交换机单位时间内最多处理TC报文的次数
 如果在单位时间内,交换设备在收到TC BPDU报文数量大于配置的阈值,那么设备只会处理阈值指定的次数。
 对于其他超出阈值的TC BPDU报文,定时器到期后设备只对其统一处理一次。这样可以避免频繁的删除MAC地址表项,从而达到保护设备的目的。

stp tc-protection threshold [次数]  \\设置单位时间处理次数(默认1)


             ------下篇将介绍MSTP相关内容------

标签:BPDU,RSTP,报文,端口,接口,改进,STP
From: https://blog.csdn.net/qq_45992779/article/details/144587685

相关文章

  • YOLOv8模型改进 第二十三讲 添加自适应特征增强(AFE)模块 提高复杂场景中的检测精度
            随着计算机视觉技术的发展,语义分割在诸多领域发挥着关键作用,但现有方法在复杂场景下面临困境。传统CNN方法受限于固定结构,难以处理长程依赖;视觉变换器方法虽引入新机制,却在语义级上下文、细节捕捉和数据需求上存在问题;混合注意力模型在杂乱背景及半透明对象......
  • MSTP+VRRP典型案例(二层)
    拓扑图接口说明VLAN10对应的网段为192.168.10.0/24;VLAN20对应的网段为192.168.20.0/24;VLAN30对应的网段为192.168.30.0/24;VLAN40对应的网段为192.168.40.0/24;各VLAN的网关均为.254的地址,该地址为VRRP组的虚拟地址;LSW1的vlanif10和vlanif20的IP地址分别为:192.168.10.253......
  • HCIE学习 — STP生成树
    希望以更简单的大家都能理解的方式了解网络这里排版比较乱,可以参考我的有道笔记(点我跳转的有道笔记)这里有时间会整理一下的!!!!不是卖课的!!!!有道笔记不需登录、即点即看————————————————————正文—————————————————————STP称作生成......
  • Spring源码分析之ConfigurationClassPostProcessor
    前言 在通过Spring源码分析之容器Refresh()方法_spring源码中refresh()方法-CSDN博客我们知到其中有一个步骤就是说会将满足条件的类注册为BeanDefinition然后放入到Spring容器中,这个主要就是存在于invokeBeanFactoryPostProcessors这个方法中进行的这个就是说具体是怎么......
  • YOLOv10改进,YOLOv10利用DLKAttention融合DCNv3、DCNv4形成全新的可变形大核注意力,并二
    理论介绍完成本篇需要参考以下三篇文章,并已添加到YOLOv10代码中YOLOv10改进,YOLOv10添加DCNv3可变性卷积与C2f结构融合(无需编译)YOLOv10改进,YOLOv10添加DCNv4可变性卷积(windows系统成功编译),全网最详细教程YOLOv10改进,YOLOv10添加DLKA-Attention可变形大核注意力,WA......
  • Yolo11改进策略:卷积篇|DSConv,高效卷积算子|附代码|即插即用
    摘要论文介绍研究背景:神经网络量化是提升速度和降低内存使用量的常用方法,但无标记数据的量化问题受到的关注较少。研究目的:引入DSConv卷积算子,旨在生成更小且推理速度更快的神经网络,同时保持高精度。实验验证:在最流行的神经网络架构(ResNet、DenseNet、GoogLeNet、AlexNet......
  • Debiasing Model Updates for Improving Personalized Federated Training为改进个性
    第一部分:解决的问题联邦学习(FL)是一种分布式机器学习方法,允许设备在不共享本地数据的情况下协同训练模型。在个性化联邦学习中,目标是为每个设备训练个性化模型,而不是一个通用的全局模型。然而,由于设备之间数据分布的异质性,传统方法会导致模型偏差。第二部分:解决的方法/idea......
  • 微软推出Phi-4生成式AI模型 改进数学能力与训练数据质量
    微软宣布,其Phi系列生成式AI模型迎来了新成员——Phi-4。与之前的版本相比,Phi-4在多个方面有所改进,尤其在数学问题的解决能力上表现突出,这得益于训练数据质量的提升。截至周四晚上,Phi-4的访问权限相对有限,仅在微软最新推出的AzureAIFoundry开发平台上可用,且仅限于微软研究......
  • 商城项目分布式事务控制改进-----商城项目
    Seata是Ali系的Cloud分布式事务解决方案,致力于高性能和简单易用的分布式事务提供了AT,TCC,SAGA,XA事务模型AT即AutoTransaction自动事务Seata是Ali系的Cloud分布式事务解决方案,致力于高性能和简单易用的分布式事务提供了AT,TCC,SAGA,XA事务模型AT即AutoTransaction自动......
  • 传知代码-改进贪心算法(NGSOR)
    一、算法背景及意义(一)背包问题背景背包问题是组合优化领域中的经典问题,具有广泛的实际应用场景,如资源分配、项目投资决策等。扩展简化折扣{0-1}背包问题(ESD{0-1}KP)是背包问题的一种变体,它在传统背包问题的基础上增加了一些复杂的约束条件,如物品的折扣系数以及每个项集中多个......