RSTP的工作过程

RSTP简介:

生成树协议(STP)用于在网络中防止环路产生,但 STP 的收敛速度较慢。

RSTP(Rapid Spanning Tree Protocol )快速生成树协议:RSTP 是对 STP 的改进,它能在网络拓扑发生变化时更快地重新计算生成树,实现网络的快速收敛。

RSTP是STP的改进版本,消除环路的基本思想与STP一致,具备STP所有功能,兼容STP。

RSTP和STP的不同之处

  • 减少了端口状态;
  • 增加了端口角色;
  • BPDU格式和发送方式不同;
  • 能快速收敛网络拓扑。

RSTP的端口角色

端口角色描述
根端口
Root Port
非根交换机上到根交换机开销最小的端口,处于转发状态。
指定端口
Designated Port
转发所连接的网段发往根交换机方向的数据;
从根交换机发往所连网段的数据,处于转发状态。
预备端口
Alternate Port
根端口备份端口,不处于转发状态。
备份端口
Backup Port
指定端口备份端口,不处于转发状态。

RSTP的P(Proposal)/A(Agreement)机制(请求/确认机制)

P/A机制        P:Proposal-协商        A:Agreement-同意
        P/A机制要求两台交换设备之间链路必须是点对点的全双工模式,一旦P/A协商不成功,指定端口到转发状态就需要等待两个转发延时(30秒),协商过程与STP一样。

        RSTP选举原理和STP本质上相同:选举根交换机->选举非根交换机上的根端口->选举指定端口->选举预备端口和备份端口。

        但是RSTP在选举的过程中加入了“发起请求-回复同意”(P/A机制)这种确认机制,由于每个步骤有确认就不需要依赖计时器来保证网络拓扑无环后才去转发,只需要考虑BPDU发送报文并计算无环拓扑的时间(一般都是秒级)。解决了STP网络收敛慢问题。

总结:RSTP通过P/A机制来保证一个指定接口得以从丢弃状态快速进入转发状态,从而加速了生成 树的收敛速度。在P/A机制中,存在一个“同步状态”,实际上就是将其他接口设置为丢弃状态,防止临时 环路产生。

RSTP快速收敛机制

1.P/A机制

2.根端口和指定端口的快速切换

  3.  直连链路故障,预备端口可快速切换成根端口并进入转发状态。

 RSTP次优BPDU处理机制

    预备端口快速切换为指定端口。

      非直连链路故障,预备端口可快速切换成指定端口并进入转发状态。

STP中,当指定接口收到次优BPDU报文时,则立即发送自己的BPDU报文。而对于非指定接口而 言,收到次优BPDU报文后,将等待接口所保存的BPDU报文老化以后,再重新计算新的BPDU报文,并 且将新的BPDU报文发送出去。

RSTP中,无论接口角色是何种,只要接口收到了次优BPDU报文,则立即发送自己的BPDU报 文。

RSTP引入边缘端口

  RSTP交换机连接终端的边缘端口可立即进入转发状态。

 RSTP交换机连接终端的边缘端口可立即进入转发状态,边缘端口收到BPDU后,就丧失了边缘端口属性,成为普通STP端口,重新进行生成树计算(STP)。

RSTP的保护功能

BPDU保护

当边缘端口收到BPDU后,立即会变成普通端口。引发网络RSTP的重新收敛。

在不影响边缘端口正常发送BPDU效果的同时,来避免收到BPDU从而引发拓扑收敛问题。

当交换机激活该功能后,如果边缘端口收到了BPDU报文,则交换机立即将边缘端口关闭,同 时发送告警日志信息。

如果受保护的边缘端口因为收到BPDU,而被关闭,缺省情况下是不会自动恢复的,需要网络 管理员手工开启。

根保护

在STP网络中,如果根网桥角色发生变化,则一定会导致全网拓扑变更,并且业务流量收到影 响。

一般来说,会将根网桥设备的桥优先级设定为0,但是该措施不能保证该设备永远是根网桥, 毕竟根桥的角色是可强占的。

   如果新加入的设备BID小于根网桥,则会引发根网桥角色变更,网络重新收敛。

部署根保护后,当根网桥设备收到更优的配置BPDU以后,会忽略这个BPDU报文,并且将接 口切换为丢弃状态。

环路保护

交换机的根接口和处于丢弃状态的替代端口都肯能出现该问题。

在网络正常时,这些接口会持续性收到BPDU报文。当网络出现单向故障,这些接口无法正常 收到BPDU报文,会导致最大生存时间超时,然后交换机会打开该接口,重新选举接口角色, 此时因为被阻塞的接口被打开,所以会存在环路隐患。

根端口激活该功能后--->如果长时间没有收到BPDU报文,则接口状态会切换为丢弃状态,并 将接口角色切换为指定接口。

替代端口激活该功能后--->接口角色切换为指定接口。接口状态保持在丢弃状态。

简述RSTP工作过程

当启动RSTP协议后,进入初始化状态先开始根桥的选举每台交换机都认为自己是根桥,与此同时所有端口都为指定端口并向外发送BPDU报文交换机通过比较收到BPDU和自己的BPDU来确定更优的根桥,此时的端口状态处于丢弃状态,然后RSTP会使用P/A机制加速端口状态的转变,此时根网桥的指定接口会发送P置位的的报文给根端口,除了根端口的其他端口都会置为阻塞状态,此时就不会产生环路,根端口会发送A置位的报文回给根网桥的指定端口此时的指定端口与另外一个路由器的根端口或者非指定端口的状态就会变为转发状态,然后另外端口与所连的路由器就会称为新的指点端口与非指定端口于此类推使用P/A机制来达到快速收敛,为了加快收敛除了P/A机制还有根端口与指定端口的快速切换,因为存在替代端口与备份端口当网络发生故障,端口收到次优BPDU就会立马转发自身BPDU,在连接PC与终端的交换机端口还可以设为边缘端口来不参与RSTP的工作过程

关于RSTP配置命令

命令说明
stp mode rstp配置RSTP模式
display stp显示RSTP配置信息和参数
stp edged-port enable配置某个端口为边缘端口
stp edged-port default配置所有端口为边缘端口
stp edged-port disable禁用边缘端口

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/884272.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML 结构化标签完全指南:<html>、<head>、<body> 和布局标签 <div>、<span> 的功能及其在网页中的应用

文章目录 1. <html> 标签2. <head> 标签3. <body> 标签4. <div> 标签5. <span> 标签小结 在 HTML 文档中&#xff0c;使用特定的结构标签可以有效地组织和管理网页内容。这些标签不仅有助于浏览器正确解析和渲染页面&#xff0c;还能提高网页的可…

Vue3 生命周期 - 2024最新版前端秋招面试短期突击面试题【100道】

Vue3 生命周期 - 2024最新版前端秋招面试短期突击面试题【100道】 &#x1f504; 在Vue.js中&#xff0c;生命周期钩子是组件从创建到销毁过程中的一系列事件。理解Vue的生命周期对于掌握组件的行为和调试至关重要。Vue 3引入了Composition API&#xff0c;改变了生命周期函数…

刘艳兵-DBA021-升级到Oracle Database 12c时,关于使用Export/Import方法迁移数据的说法是正确的?

升级到Oracle Database 12c时&#xff0c;关于使用Export/Import方法迁移数据的说法是正确的&#xff1f; A 仅当源数据库在只读模式下没有任何表空间时&#xff0c;才可以使用它来迁移数据库。 B 仅当源数据库和目标数据库字节序相同时&#xff0c;才可以使用它来迁移数…

php把十六进制转化成字符串 和 字符串转十六进制

最近项目中碰到需要把接收十六进制的数据&#xff0c;十六进制的数据不便阅读 方法一&#xff0c;只是不同的函数 // 十六进制转字符串 function hexToStr($hex) {$hex str_replace( , , $hex); // 去除空格$string ;for ($i 0; $i < strlen($hex) - 1; $i 2) {$st…

异步编程的利之Future模式深入解析(In Depth Analysis of Future Patterns)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 本人主要分享计算机核心技…

Q_GLOBAL_STATIC使用

作用&#xff1a;线程安全的全局静态变量初始化 声明&#xff1a; Q_GLOBAL_STATIC(MyType,globalState) Q_GLOBAL_STATIC_WITH_ARGS(MyType, globalState, (42, "Hello", "World")) //带参数的初始化 注&#xff1a; 构造函数和析构函数必须是公有的 如果…

《TCP/IP网络编程》学习笔记 | Chapter 1:理解网络编程和套接字

《TCP/IP网络编程》学习笔记 | Chapter 1&#xff1a;理解网络编程和套接字 《TCP/IP网络编程》学习笔记 | Chapter 1&#xff1a;理解网络编程和套接字基本概念服务端客户端 基于 Linux 平台的 "Hello world!" 服务端和客户端基于 Linux 的文件操作打开文件关闭文件…

代理人工智能如何应对现代威胁的速度和数量

Seven AI首席执行官 Lior Div 讨论了代理 AI 的概念及其在网络安全中的应用。他解释了代理 AI 与传统自动化安全系统的区别&#xff0c;即代理 AI 具有更大的自主性和决策能力。 Div 强调&#xff0c;通过实时处理大量警报&#xff0c;代理 AI 特别适合对抗现代 AI 驱动的威胁…

Supabase:当开源遇上实时数据库服务

在当代应用开发的浪潮中,我们见证了无服务器架构和实时数据库服务的崛起。Firebase 的成功验证了这一方向,但同时也带来了供应商锁定的困扰。正是在这样的背景下,Supabase 横空出世,以开源的姿态为开发者提供了一个全新的选择。 为什么 Supabase 值得关注&#xff1f; 当我们…

【华为HCIP实战课程二十九】中间到中间系统协议IS-IS邻居关系建立和LSP详解,网络工程师

一、广播环境邻居关系建立详解 1、广播环境邻居关系建立 广播邻居关系采用三次握手,携带的邻居列表为接口的MAC来标识 2、LSP同步:3种报文(CSNP和PSNP和具体的LSP) CSNP作用类似DBD,请求者发送PSNP(类似LSR)来请求具体的LSP 广播网络LSP交互过程: R1-R2(DIS)--R3…

<HarmonyOS第一课>应用/元服务上架的课后习题

善者&#xff0c;吾善之&#xff1b; 不善者&#xff0c;吾亦善之&#xff0c;德善。 信者&#xff0c;吾信之&#xff1b; 不信者&#xff0c;吾亦信之&#xff0c;德信。 圣人在天下&#xff0c;歙歙焉为天下浑其心&#xff0c;百姓皆注其耳目&#xff0c;圣人皆孩之。 通过&…

游戏引擎中Static,Kinematic,Dynamic三种刚体属性

一.刚体属性 为了提高物理检测效率和内存使用,引擎只对特殊标识的刚体属性进行检测。包括常用的RayCast检测,BoxCast检测,AABB包围盒检测。 Static:实际游戏中不可能发生移动的房子,树木,建筑物等。引擎初始化进行Collider刷新 Kinematic:实际游戏中奇特的物体,传送门,陷阱等, …

【系统架构设计师】预测试卷一:论文(包括4篇论文主题对应的写作要点分析)

更多内容请见: 备考系统架构设计师-专栏介绍和目录 文章目录 试题一:论面向服务的架构设计与应用试题一写作要点试题二:论软件架构的脆弱性试题二 写作要点试题三:论分布式存储系统架构设计试题三 写作要点试题四:论网络安全体系架构设计及应用试题四 写作要点试题一:论面…

【如何获取股票数据30】Python、Java等多种主流语言实例演示获取股票行情api接口之沪深A股炸板股池数据获取实例演示及接口API说明文档

最近一两年内&#xff0c;股票量化分析逐渐成为热门话题。而从事这一领域工作的第一步&#xff0c;就是获取全面且准确的股票数据。因为无论是实时交易数据、历史交易记录、财务数据还是基本面信息&#xff0c;这些数据都是我们进行量化分析时不可或缺的宝贵资源。我们的主要任…

SpringBoot实现国密通信

SpringBoot实现国密通信 1. 生成支持国密的证书1.1 安装 GMSSL&#xff08;如果未安装&#xff09;1.2 生成 SM2 密钥对和证书 2. 配置 Spring Boot 项目使用 HTTPS2.1 项目 B&#xff1a;提供 HTTPS 接口2.2 项目 A&#xff1a;使用 HTTPS 调用项目 B 3. 启动和测试备注如何验…

九识智能与徐工汽车达成战略合作,共绘商用车未来新蓝图

近日&#xff0c;九识智能与徐工汽车签署战略合作协议&#xff0c;标志着双方在智能驾驶技术与新能源商用车融合应用、联合生产及市场推广等方面迈入深度合作的新篇章&#xff0c;将共同引领智能驾驶技术商业化浪潮。 近年来&#xff0c;在国家智能化发展战略的引领下&#xff…

基于深度学习的社交网络中的社区检测

在社交网络分析中&#xff0c;社区检测是一项核心任务&#xff0c;旨在将网络中的节点&#xff08;用户&#xff09;划分为具有高内部连接密度且相对独立的子群。基于深度学习的社区检测方法&#xff0c;通过捕获复杂的网络结构信息和节点特征&#xff0c;在传统方法基础上实现…

根据Redis漏洞通知的整改修复过程

一、收到通知&#xff1a; 二、查看本校“宝山商城&#xff08;教学&#xff09;”已安装的Redis版本号 对照影响范围的版本号&#xff0c;在其内&#xff0c;所以需要升级Redis版本。 三、升级centos中的Redis版本 在Cent0S系统中&#xff0c;如果我们需要升级Redis版本&…

如何修改远程分支?修改了会影响什么?

要修改 Git 远程仓库中的分支名称&#xff0c;可以按照以下步骤操作&#xff1a; 首先&#xff0c;在本地仓库中重命名分支。使用以下命令将当前分支重命名为新名称&#xff1a; git branch -m <old-branch-name> <new-branch-name>例如&#xff0c;如果你想要将名…

12. 内存管理

一、内存的组织方式 程序员编写完程序之后&#xff0c;程序要先加载在计算机的内存中&#xff0c;再运行程序。在 C 中&#xff0c;不同数据在内存中所存储的位置也不一样。全局变量存储在内存中的静态存储区&#xff0c;非静态的局部变量存储在内存中的动态存储区&#xff08;…