stp+rstp详解(代码片段)

author author     2022-12-09     416

关键词:

STP技术---生成树技术

作为二层防环的技术还包括smart-link、eth-trunk、堆叠、rrpp等;

STP技术的收敛速度为1-2s
rrpp技术的收敛速度 ms单位;

STP技术的优势

1、适应复杂网络;
2、STP机制丰富,能存在多种保护机制等;
说明:
STP技术包括:STP、RSTP、MSTP
华为设备开启,默认STP版本为MSTP

二层环路

危害:
1、 广播风暴:数据帧的数量呈指数型增长;
2、 mac地址表震荡:mac地址表不断进行刷新,无法正常地转发数据帧;
3、最终影响设备正常使用。

三大表:

mac地址表:用于指导数据帧(二层)
ARP缓存表:用于存储IP地址与mac地址的对应关系(2.5层)
路由表: 用于指导IP数据包进行转发(三层)

STP协议工作原理

通过协议计算(依赖于BPDU报文),从逻辑上阻塞端口,从而实现防环,当链路一旦出现故障时,阻塞端口重新恢复转发。

STP的限制

1、收敛慢,收敛属于秒级;
2、不适用于大型交换网络,网络直径小于等于20;
3、整网的交换设备不能超过50台;

STP的计算过程

1、选举一个根桥

根桥交换机:作为整个交换网络的数据转发中心;

选举要素1

根桥ID:优先级+mac地址
1、比较优先级,默认为32768,数值越小越优先,可调整,只能为4096的倍数;
2、比较mac地址,数值越小越优先。

如果设备收到比本身差的BPDU报文,直接丢弃;
如果设备收到比本身优的BPDU报文,将其放入端口存储并且转发出去。

全网泛洪的BPDU报文的根桥ID一致时说明交换网络中已经选出根桥交换机

2、每个非根交换机选举一个根端口

根端口(RP):转发数据的端口,用于接收最优的BPDU报文,只在非根桥交换机上有且只有一个。

选举要素2

1、根路径开销:
根路径:以一个接口为出方向,去往根桥交换机的最短路径之和,称为根路径;
2、开销:
跟接口的带宽有关;

100M=200000
1GE=20000
10GE=2000

根路径开销越小越优先:

STP的通用规则一:

非根桥交换机与根桥交换机直连接口都为RP端口。

3、每个网段选举一个指定端口

指定端口(DP):转发数据,用于转发最优BPDU,在每个网段上有且仅有一个。

通用规则二:

根桥交换机上的所有端口均为DP端口。

要素3

发送者桥ID
设备在转发BPDU报文,都会将本身的桥ID字段填充到发送者桥ID中;

比较规则与根桥ID比较规则完全一致。

4、阻塞非根、非指定端口

AP,既不是DP也不是RP端口。

要素4

端口ID:优先级+端口编号
优先级:默认为128,数值越小越优先,可调整,只能调整为16的倍数;
端口ID,数值越小越优先。

STP的端口状态机

disable:说明端口未启用STP协议;

blocking:阻塞状态,属于AP端口正常状态,进行根桥的选举;

listening:侦听状态,进行端口角色的确定;

learning:学习状态,学习mac地址表;

forwarding:转发状态,转发数据,学习mac地址;

STP的计时器

hello time:更新计时器,根桥交换机每2秒向外泛洪BPDU报文;

max age:默认为20s,端口中BPDU的老化时间,如果端口到达老化时间,BPDU会被丢弃,等同于拓扑发生变化。

message age:信息延时,时间默认为0秒,每经过一个设备,会加1。

端口真正的老化时间=max age-message age

forward delay:转发延时,默认为15s,在listen--learning-forwarding状态跳转时使用,用于防止临时环路。

STP的收敛规则

当RP端口down掉,非根桥交换机直接认为根桥交换机down 掉,以自身为根桥向外泛洪BPDU报文;

STP针对拓扑改变的刷新机制

(1)由发生拓扑变化的交换机朝着根桥泛洪TCN BPDU报文,上游交换机收到TCN BPDU报文后,先回复TCA BPDU报文,继续朝着根桥泛洪TCN BPDU;

(2)不断重复上述过程,直到根桥交换机收到TCN BPDU,回复TCA BPDU报文为止;

(3)根桥交换机会泛洪TC BPDU报文,泛洪35秒,每2秒泛洪(17个或者18个),当交换机收到TC BPDU报文后,会刷新mac地址表。

RSTP对于STP的改进

(1)BPDU

将STP的flag字段中的6bit使用,分别为agreement(A),forwarding,learning,port role,proposal(P)。

(2)P/A协商

① 所有设备在一启动RSTP时,都认为本设备是根桥,都发送出P置位的的BPDU。

② 经过对比,BPDU较差的设备会停止发送BPDU,同时将收到较优BPDU的接口置为RP端口,进入forwarding,同时会将除了边缘端口以外的其他端口阻塞。

③ RP端口进入forwarding以后,会回复A置位的BPDU。更优的设备在收到了A置位的BPDU以后,会将收到该BPDU的端口置为DP端口,同时进入转发状态。

(3)端口角色

AP:预备端口,阻塞状态,作为RP的备份,当RP出现故障以后,AP马上成为RP端口,并且进入转发状态。收到其他设备发送的BPDU是AP。

BP:备份端口,阻塞状态,作为DP的备份,当DP出现故障以后,BP会在等待一段时间后才成为DP。
收到本设备的BPDU。

(4)对于次优的BPDU会回复处理,通过P/A协商。

(5)边缘端口

不参与STP的计算,只要接口UP,立即进入forwarding状态。当边缘端口收到了BPDU以后,就会丧失边缘端口属性。

配置: stp edged-port enable

(6)拓扑变更机制

直接由发生拓扑变更的设备直接发送出TC置位的BPDU,然后将除了收到TC置位1以外的接口所学到的MAC的老化时间改为15S。

(7)将端口角色由5种变为3种

discarding:在RSTP中的阻塞状态,不学习MAC地址也不转发用户数据。

learning:学习MAC地址但是不转发用户数据。

forwarding:即学习MAC地址也转发用户数据。

(8)保护功能

① BPDU保护:保护边缘端口在收到了BPDU以后,会将该端口error-down,同时通知网管。

只能针对与边缘端口保护

配置:stp bpdu-protection //在全局试图下

② 根保护:当该端口收到更优的RST BPDU后,端口进入Discarding状态,不再转发报文。若一段时间内端口未收到更优的RST BPDU,则会自动恢复到正常的Forwarding状态

只能在指定端口上保护

配置:stp root-protection //在接口试图下

③TC-BPDU泛洪保护:当设备收到TC-BPDU以后,在单位时间内会有一个限制的次数。

配置:在系统视图下stp tc-protection threshold +可处理的报文数量

RSTP快速收敛机制

当交换机的RP端口down掉时,AP端口会立刻成为RP端口,并立刻进入forwarding状态。

BP端口选取规则

当交换机从一个接口收到一份BPDU报文,包含的发送者桥ID为本身交换机的桥ID,同时BPDU比本地接口的BPDU优时,则此接口会被选为BP端口

当DP端口down掉时,BP端口需要等待18s的时间才会成为DP端口

常见问题汇总

问题1:RSTP的BPDU保护?

答:边缘端口直接和用户终端相连,正常情况下,边缘端口不会收到BPDU报文。如果者伪造BPDU恶意交换机,当边缘端口接收到BPDU报文时,交换机会自动将边缘端口设置为非边缘端口,并重新进行生成树计算,从而引起网络震荡。

通过配置BPDU保护功能可以防止这种***。设备上使能了BPDU保护功能后,如果边缘端口收到BPDU,系统就将这些端口Shutdown。
?
问题2:stp 选举的四要素有哪些??

答:root id(根桥的优先级+mac地址)
cost(到根桥的开销(接口带宽))
发送者桥id
端口id

?

问题3:华为交换机如果接口关闭了STP,收到BPDU会如何处理?

答:BPDU报文发送的目的地址为01-80-C2-00-00-00,华为交换机如果接口关闭了STP,那么收到目的MAC地址为:01-80-C2-00-00-00组播数据帧会直接丢弃。

?
问题4:边缘端口的端口角色是什么角色?

答:DP端口,因为从该端口没有收到更优的BPDU,当一台运行STP的交换机刚启动,端口的角色为DP端口,只有收到比该端口优的BPDU才会迁移成其他的角色,边缘端口一般用于连接非交换机,不会收到BPDU,所以端口角色为DP端口。

?
问题5:如果一个端口收到比自己还要差的BPDU会怎么处理?

答:华为把这种BPDU称为次优BPDU,华为交换机收到次优BPDU会丢弃该BPDU,并发送自己接口的最优的BPDU。

?
问题6:STP中为什么要设计转发延迟时间?

答:STP如果没有forward delay带来的临时环路问题:

初始状态下SWA为根交换机,所有的交换机端口中,只有SWD的E0/2端口为Alternate Port,处于不转发状态。假设修改SWC的优先级,使SWC成为新的根交换机,SWD的E0/2接口成为新的根端口,进入转发状态,E0/1接口成为新的指定端口,处于转发状态,SWB的E0/2应当成为新的Alternate Port,进入不转发状态。如果在SWB的E0/2在从转发状态进入不转发状态之前,SWD的E0/2就从不转发状态进入转发状态,则网络中会出现临时环路。

解决临时环路的方法是:在一个端口从不转发状态进入转发状态之前(例如SWD的E0/2端口),需要等待一个足够长的时间,以使需要进入不转发状态的端口有足够时间完成生成树计算,并进入不转发状态
?
问题7:运行STP的交换机是怎么感知拓扑发送变化的,为什么要发送TC BPDU,不发会怎么样?

答:当一个接口进入转发状态时,就认为拓扑已经发生变化。
如果拓扑发生变化不发TC BPDU会导致,过时的MAC地址表无法被刷新,从而导致数据流量无法继续进行转发,要等300S的MAC地址表老化时间后,才会刷新MAC地址表;

?
问题8:华为STP有多少个版本?默认是哪个版本?

答:STP,RSTP,MSTP
MSTP
?

华为设备二层交换技术——mstp协议详解(代码片段)

...成树。可以参考博文:Cisco设备二层交换技术——STP协议详解MSTP是IEEE802.1s中提出的一种STP和VLAN结合使用的新协议,它既继承了RSTP端口快速迁移的优点,又解决了RSTP中不同VLAN必须运行在同一棵生成树上的问题。接下来我们详细... 查看详情

huaweistp-rstp-mstp(代码片段)

STP-RSTP-MST对于生成树的原理就不用过多的介绍了,如果有不明白的,可以回看CISCO部份的STP,除了cost值不同以后,好像没啥不同的 STP,标准生成树,根据交换机生成树,其特点,慢,慢,慢......真的很慢    HUA... 查看详情

笔记stp(代码片段)

STP-定义-作用-类型1、802.1d-STP:生成树协议PVST/PVST+(思科)2、802.1w-RSTP:快速生成树协议PV-RSTP(思科)3、802.1s-MSTP:多生成树协议-报文PVST:per-vlanSTP,即在每个VLAN内部都运行一个STP(802.1d);STP的工作过程:1、确定交换机的角色根交换机... 查看详情

华为设备上stp模式rstp模式下开关机是否触发tc变更(源自考官的一道追问题目)(代码片段)

声明:本实验用真机完成,终端采用了路由器和PC。华为交换测试版本:[SW2]disversionHuaweiVersatileRoutingPlatformSoftwareVRP(R)software,Version5.160(S5700V200R009C00SPC500)Copyright(C)2000-2016HUAWEITECHCO.,LTDQuidwayS5700-52P-LI-ACRou 查看详情

stp理论05-rstp拓扑变化处理

STP理论05-RSTP拓扑变化处理及与STP互操作在RSTP中检测拓扑是否发生变化只有一个标准:一个非边缘端口迁移到Forwarding状态。一旦检测到拓扑发生变化,将进行如下处理:1.首先清空状态发生变化的端口上学习到的MAC地址。2.同时... 查看详情

rstp@stp端口

RSTP:快速生成树协议(rapidspanningTreeProtocol):802.1w由802.1d发展而成,这种协议在网络结构发生变化时,能更快的收敛网络。它比802.1d多了两种端口类型:预备端口类型(alternateport)和备份端口类型。STP(SpanningTreeProtocol)是生... 查看详情

rstp@stp端口

RSTP:快速生成树协议(rapidspanningTreeProtocol):802.1w由802.1d发展而成,这种协议在网络结构发生变化时,能更快的收敛网络。它比802.1d多了两种端口类型:预备端口类型(alternateport)和备份端口类型。STP(SpanningTreeProtocol)是生... 查看详情

二层stp的原理(代码片段)

STPSTP的终极目标:从网络的任何地方,都是去往跟交换机最短的无环的数据转发路径1同一个网路:面临的第一个问题:单点故障解决方案:提供网络冗余/备份1设备的备份2链路的备份所带来的新问题:二层数据转发环路新的解... 查看详情

vrrp+mstp配置详解华为ensp实验(代码片段)

@[toc]一.前言之前我们配置了MSTP,完成了一个基础的需求,现在我们继续来完善一下,使用VRRP+MSTP配置需求如下:1.1MSTPMSTP不仅涉及多个MST(生成树实例),而且可以划分为多个MST区域(MST区域,也称为MST区域)。通常,MSTP网络... 查看详情

mstp详解和配置(代码片段)

mstp详解和配置rstp解决了stp的各种问题,比如初始化慢,直连故障要等30s,非直连要等50s,拓扑变化处理机制复杂等等rstp详解可以看这篇博客:rstp快速生成树详解mstp是为了解决他们共有的问题:所有的vlan... 查看详情

stp理论04-rstp相对stp的改进

STP理论04-RSTP相对STP的改进STP不足之处:网络拓扑收敛慢,影响了用户通信质量。如果网络中的拓扑结构频繁变化,网络也会随之频繁失去连通性,从而导致用户通信频繁中断。导致STP收敛慢的原因:1)、STP没有细致区分端口状... 查看详情

stp/rstp/mstp的区别

...必须等待2倍的forwarddelay的时间延迟,网络才能收敛。2、RSTP:IEEEStd802.1w定义,可以快速收敛,却存在以下缺陷:局域网内所有网桥共享一棵生成树,不能按vlan阻塞冗余链路。3、MSTP可以弥补这样缺陷,它允许不同vlan的流量沿各... 查看详情

stp/rstp/mstp命令

参考技术A数据链路层协议disstp---------查看stp信息stpmodestp/rstp----------------改模式为stp/rstpstppriority0----------------改交换机优先级为0(4096倍数)displaystpbrief---------------查看stp端口状态interfaceg0/0/1 stpcost10----------------------改1号口开... 查看详情

stp详解(代码片段)

STPSTP全称为“生成树协议”(SpanningTreeProtocol),是一种网络协议,用于在交换机网络中防止网络回路产生,保证网络的稳定和可靠性。它通过在网络中选择一条主路径(树形结构),并阻塞其他可... 查看详情

rstp原理

参考技术A为什么要提出RSTP(rapidspanningTreeProtocol)?首先要谈论一下STP的缺陷:核心问题是:STP的角色太少,端口状态太多。RSTP将端口状态缩减为三个:Discarding,Learning,Forwarding角色从2增加到四个:根端口、指定端口、Alternate... 查看详情

stp,rstp,pvst,mstp,msti,cist概念。

...来防止环路的网桥协议数据单元(BPDU)帧仍可继续通行。2.RSTP快速生成树协议STP(SpanningTreeProtocol)是生成树协议的英文缩写。该协议可应用于在网络中建立树形拓扑,消除网络中的二层环路,并且可以通过一定的方法实现路径冗... 查看详情

日常笔记-stp

...-作用-类型1、802.1d-STP:生成树协议PVST/PVST+(思科)2、802.1w-RSTP:快速生成树协议PV-RSTP(思科)3、802.1s-MSTP:多生成树协议-报文PVST:per-vlanSTP,即在每个VLAN内部都运行一个STP(802.1d);STP的工作过程:1、确定交换机的角色根交换机:整个交... 查看详情

rstp协议(快速生成树协议)

什么是RSTPRSTP是从STP发展而来,实现思想基本一致RSTP的标准版本为IEEE802.1wRSTP大大缩短了收敛时间,可以更快速的恢复网络连通性前提必须是点到点的链路RSTP与STP的区别RSTP减少了端口的状态RSTP增加了端口角色,把阻... 查看详情