RSTP比STP快在哪?

本文主要总结RSTP比STP“快”的原因,想要理解本文,需要读者有一定的STP和RSTP的理论功底。
作为STP协议的升级版本,RSTP在算法和协议上做了很大的改变极大的提升了STP的效率,RSTP相比于STP主要“快”在以下几个方面:

1、改进了端口类型

在STP协议中,一共定义了三种端口类型——根端口、指定端口、非指定端口。而RSTP对上述端口进行了细分,将非指定端口分为两类——替代端口和备份端口,因此,RSTP一共有四种端口,这样做有什么好处就是方便链路出现故障时的快速切换。
在RSTP中规定,因为收到其他交换的BPDU报文而阻塞的端口,因为受到本交换机BPDU报文而阻塞的端口成为备份端口。
以下图为例:
在这里插入图片描述
假设SW1是根交换机,图中SW3的G0/0/2口和G0/0/4口被阻塞,那么SW3的G0/0/2成为替代端口,而G0/0/4则成为备份端口。这是因为之所以SW3 的G0/0/2被阻塞,是因为受到了SW2的BPDU报文,发现对方比自己更加“优先”,而G0/0/4端口被阻塞是因为受到了SW3自身的BPDU报文,发现对方比自己更“优先”。
此外,RSTP还规定,交换机一旦检测到根端口故障,那么替代端口立刻进入转发状态,一旦指定端口故障,那么备份端口立即进入转发状态,这样就节省了在网络拓扑改变情况下的阻塞时间。
注:如果同时存在多个替代端口,则会且只会将最优的替代端口立即转换到转发状态。

2、改进了端口状态

除了对端口类型进行了改变,RSTP还改进了端口状态。
STP定义了5种端口状态:禁用、阻塞、侦听、学习、转发。
而RSTP则定义了3种端口状态:丢弃、学习、转发。
RSTP将STP的禁用、阻塞和侦听结合到了一起,有效的简化了一个端口从阻塞状态到转发状态的时间。
在STP协议中,一个阻塞端口如果因为网络拓扑的改变需要从阻塞态转变到转发态,则需要经历侦听和学习两个状态。而这从侦听转变到学习状态和从学习转变到转发状态分别需要15s的时间,因此STP在这个过程中最少需要花费30s。而RSTP从丢弃状态到转发状态只需要经历一个学习状态,在这个过程中只需要花费15s的时间,因此在这一点上RSTP又对STP进行了很大的改进。

3、运用了P/A机制

此外,RSTP还创造性的使用了P/A机制,来保证一个新的端口接入时从丢弃状态快速进入到转发状态,这个是RSTP独有,STP并没有P/A机制。
P/A机制,即proposal/agreement(提议/同意机制),主要作用时加快RSTP收敛,加快初始状态下和新增连线状态下状态快速切换。
假设有一个交换机新链接如网络,在STP状态下,该交换机需要经过一个完整的STP建立过程,链接进入网络的端口从阻塞进入转发状态,需要经过一个完整的阻塞——侦听——学习——转发状态,而这个过程需要30s以上的时间。
而在采用RSTP的情况下,当一个交换机刚开始运行RSTP的时候,会假设自己是根桥,发送BPDU报文,如果发现自己不是根桥,那么会选择一个收到最优BPDU报文的端口运行P/A机制(在RTSP协议中,每个交换机都会发送BPDU报文,一个交换机也会存储自己收到的BPDU报文并进行比较,根据BPDU报文中的桥ID判断根桥),同样的,在与之相连的交换机的指定端口上,也会运行P/A机制。
P/A机制过程如下:
由优先级更高的交换机发出提议(proposal),此时该交换机会把发出提议的端口设置为丢弃状态,在收到提议后,该交换机会把除收到提议的端口之外的其他端口都设置为丢弃状态,以防止发生环路,之后将收到提议的端口设置为转发,并发送同意(agreement)。发送提议的交换机在收到对方发送的同意(agreement)后,立即把该端口设置为转发。
需要注意的是,P/A协议只会发生在一个交换机通过根端口与另一个交换机的指定端口相连接的线路上,其他线路的端口状态还是要还原为STP的状态建立过程。

4、加入了边缘端口的概念

边缘端口也是RSTP新提出的概念,对于一个二层网络而言,总是有一些端口连接主机,路由器等等,对于这些确定不会链接交换机的端口,RSTP支持将其设置为边缘端口,该端口始终处于转发状态(除非该端口收到BPDU报文),这样就免除了不必要的从阻塞到转发的延迟时间。

5、更新了拓扑更新机制

如果二层网络拓扑发生了改变,那么之前学习到的MAC地址表可能会出现问题,这个时候就需要交换机刷新MAC地址表,STP和RSTP协议都必须考虑这个问题。
在STP协议中,当交换机发生网络拓扑发生变化后,需要发送TCN报文通知上游交换机,上游交换机会恢复TCA报文,知道通知到根桥,根桥再发送TC报文,并通告全网,其他交换机在收到TC报文后,就会明白网络拓扑发生改变,这样之前学习到的MAC地址表就无法继续使用,需要刷新MAC地址表并重新生成。
上述过程,即所有的交换机在发现网络拓扑改变后都会通知根桥,根桥之后通知所有的交换机刷新MAC地址表。其实这个过程时非常缓慢的,也因此会耽误一些时间。
RSTP对上述过程进行了改变,在RSTP中,不仅仅是根桥,所有的交换机都会发送BPDU报文,所有的交换机也可以通知其他的交换机网路拓扑发生改变,运行RSTP的交换机在收到其他任意交换机的TC报文后,都会刷新自己的MAC地址表,这样就不用先通知根桥,再由根桥通知其他交换机,从而省下了一些时间。
此外,RSTP规定,一个交换机在收到拓扑改变通知后,会删除掉除了受到TC报文端口的MAC地址表,而不是像STP一样删除所有的MAC地址表,这样也加快了MAC地址表重新构建的速度,因此又比STP快了一些。
以上是我总结的RSTP相比STP“快”的地方,不知道其他同学还有什么想法呢?欢迎在评论区一起讨论!
原创不易,转载请说明出处,原文链接:https://blog.csdn.net/weixin_40228200/article/details/118160834

<think>好的,用户想了解STPRSTP之间的详细区别。我需要根据提供的引用材料来整理答案。首先,引用1提到主要区别在端口状态、收敛速度等方面,RSTP改进了STP的不足,特别是在需要速响应拓扑变化的场景下表现更好。引用2指出STP收敛慢是因为根桥主动发出BPDU,其他设备处理后再传递,而RSTP可能改进了这一点。引用3详细列举了端口状态、端口角色和收敛机制的不同。 接下来要分点对比。首先端口状态,STP有5种,RSTP简化为3种。例如,STP的禁用、阻塞、侦听、学习、转发,而RSTP合并为丢弃、学习、转发。需要具体说明每个状态的功能变化,比如RSTP的丢弃状态对应了STP的禁用、阻塞和侦听。 然后是端口角色,引用3提到RSTP增加了备份端口和边缘端口。需要解释这些新角色的作用,比如备份端口作为指定端口的冗余,边缘端口直接进入转发状态加接入。 收敛机制方面,STP依赖计时器,而RSTP使用Proposal/Agreement机制,主动确认,减少延迟。BPDU的处理方式也不同,RSTP中所有交换机都可以生成BPDU,而STP只有根桥发送,这加收敛。 最后总结适用场景,根据引用1,高可靠性环境可能仍用STP,而需要收敛RSTP。还要确保使用正确的格式,比如行内公式用$...$,独立公式用$$...$$,但这里可能用不上数学公式,所以注意不要误用。同时生成相关问题,比如收敛机制差异、边缘端口的作用、RSTP如何改进收敛速度等。</think>### STPRSTP的详细对比 #### 1. **端口状态差异** - **STP**定义了5种端口状态: 1. **禁用(Disable)**:不处理BPDU,不转发数据。 2. **阻塞(Blocking)**:接收BPDU但不转发数据,用于选举根桥。 3. **侦听(Listening)**:处理BPDU但不学习MAC地址,用于选举端口角色(15秒延迟)。 4. **学习(Learning)**:学习MAC地址但仍不转发数据(15秒延迟)[^3]。 5. **转发(Forwarding)**:正常处理BPDU、MAC地址和数据流量。 - **RSTP**简化为3种状态: 1. **丢弃(Discarding)**:仅接收BPDU,不学习MAC地址或转发数据(合并了STP的禁用、阻塞和侦听状态)。 2. **学习(Learning)**:学习MAC地址但仍不转发数据。 3. **转发(Forwarding)**:功能与STP相同,但收敛[^3]。 #### 2. **端口角色扩展** - **STP**仅支持3种角色: - 根端口(RP)、指定端口(DP)、阻塞端口(AP)。 - **RSTP**新增两种角色: 1. **备份端口(Backup)**:作为指定端口的冗余备份。 2. **边缘端口(Edge Port)**:直接进入转发状态,用于连接终端设备(如PC),避免触发拓扑变更[^3]。 #### 3. **收敛机制优化** - **STP依赖计时器**: - 端口从侦听到转发需经历30秒(15秒侦听 + 15秒学习)。 - 根桥主动发送BPDU,其他设备仅转发,导致收敛延迟[^2][^3]。 - **RSTP引入主动协商**: - **Proposal/Agreement机制**:通过主动协商速确认端口角色,消除计时器依赖。 - **BPDU自主动发送**:所有交换机均可生成并发送BPDU,加拓扑同步[^2][^3]。 #### 4. **BPDU处理方式** - **STP**: - BPDU仅由根桥生成,其他设备仅转发。 - 若根桥失效,需重新选举(约50秒)[^2]。 - **RSTP**: - 所有交换机均可生成BPDU,并包含拓扑变更信息。 - 通过BPDU超时机制(3个Hello周期未收到则判定链路故障),加故障检测。 #### 5. **拓扑变更处理** - **STP**: - 拓扑变更需从根桥发起TCN(Topology Change Notification),逐级传递至根桥,再由根桥广播TC报文。 - 过程耗时,影响网络稳定性。 - **RSTP**: - 本地交换机可直接生成TC报文,并泛洪至全网。 - MAC地址表老化时间缩短,加速收敛。 --- ### 总结 | **对比项** | **STP** | **RSTP** | |------------------|------------------------------------|------------------------------------| | 收敛时间 | 30-50秒 | 1-2秒 | | 端口状态 | 5种 | 3种 | | BPDU生成 | 仅根桥 | 所有交换机 | | 适用场景 | 稳定网络、高可靠性需求 | 动态网络收敛需求 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值