STP+RSTP详解

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
?

原文地址:https://blog.51cto.com/13435327/2393059

时间: 2024-11-06 07:31:14

STP+RSTP详解的相关文章

计算机网路中CDP,LLDP,STP的详解

CDP,LLDP,STP知识详解 (1) CDP CDP(Cisco Discovery Protoco:Cisco发现协议)是Cisco专有的用来发现邻接点的协议 ,所有的Cisco产品都支持CDP.CDP只显示直接相连的邻居信息,如果中间隔了一个其他设备,也就是跨设备的话,CDP是不能发现的,所以CDP的目的是获取直接相邻设备的信息.CDP非常有助于验证一台路由器是否连在它邻居的适当端口. 要运行CDP协议,物理介质必须支持SNAP协议(SubNetwork Access Protocol:

STP原理详解及SMTP案例分析

STP工作原理:MSTP案例分析 一. STP概述:逻辑上断开环路,防止广播风暴的产生 ,当线路故障阻塞接口被激活,恢复通信,起到备份线路的作用.二.STP工作原理 确定交换机角色: 根交换机---在一个VLAN中,有且只有一个根交换机.2.非根交换机--除了跟交换机意外,其他交换机都是非根交换机.确定原则:各交换机之前的相互比较:BID(Birdge ID)优先级 MAC2字节 6字节首先比较优先级,越小越好,默认值:32768 如果优先级相同,比较MAC,越小越好. 验证命令: Displa

华为设备二层交换技术——MSTP协议详解

前面提到的STP协议以及Cisco的私有协议PVST+都属于单生成树(SST)协议,也就是对于支持多VLAN的设备只能运行单一的生成树.可以参考博文:Cisco设备二层交换技术--STP协议详解 MSTP是IEEE 802.1s中提出的一种STP和VLAN结合使用的新协议,它既继承了RSTP端口快速迁移的优点,又解决了RSTP中不同VLAN必须运行在同一棵生成树上的问题.接下来我们详细了解一下MSTP协议. MSTP协议是一个公有的生成树协议,在实际生产环境中得到了广泛的应用. 一.MSTP概述

生成树详解

局域网交换技术,也称为层2交换技术,内容主要包括层2交换的工作 原理.网络环路.如何利用Spanning-Tree Protocol 来解决网络环路.VLAN及VTP技术,闲话少说,书归正传.我们在介绍交换技术之前不得不提一下传统的共享以太网的工作方式,了解一下冲突域,广播域以 及网络分段是怎么回事,这些知识在网络基础里大家应该有所了解,我在这里再简单介绍一下: 大家都知道传统共享以太网使用的是CSMA/CD机制,即载波侦听多路访问/冲突检测.我们来详细分析一下: CSMA/CD是一种分布式介质

53 kvm及libvirt、使用virsh管理kvm虚拟机、网络虚拟化技术基础、网络名称空间netns用法详解

01 kvm及libvirt [[email protected] ~]# yum install libvirt libvirt-client python-virtinst virt-manager virt-install -y [[email protected] ~]# yum -y install qemu-kvm [[email protected] ~]# systemctl start libvirtd.service #创建桥 [[email protected] ~]# v

详解路由策略和策略路由

在网络设备维护上,现在很多维护的资料上都讲到“路由策略”与“策略路由”这两个名词,但是有很多搞维护的技术人员对这两个名词理解的还不是很透彻,无法 准确把握这两者之间的联系与区别.本文简单分析一下这两者之间的概念,并介绍一些事例,希望大家能从事例中得到更深的理解. 一.路由策略 路由策略,是路由发布和接收的策略.其实,选择路由协议本身也是一种路由策略,因为相同的网络结构,不同的路由协议因为实现的机制不同.开销计算规则 不同.优先级定义不同等可能会产生不同的路由表,这些是最基本的.通常我们所说的路由

Docker网络详解

Docker网络详解 转载请注明来自:http://blog.csdn.net/wsscy2004 网络基础 Docker使用linux桥接,在主机虚拟一个docker0网络接口,在主机中运行命令查看: # List host bridges $ sudo brctl showbridge name bridge id STP enabled interfacesdocker0 8000.000000000000 no # Show docker0 IP address $ sudo ifcon

VLAN详解

VLAN的作用:N1P429 1. 控制广播 2. 确保安全 3. 灵活扩展 VLAN类型 静态VLAN(基于端口) 动态VLAN(基于MAC地址) 通过VPMS VLAN帧标识 [N6eP301] 传统交换机:数据帧进入交换机,交换机只检查目的MAC地址,参照MAC地址表转发到适当端口,而不考虑数据帧从哪里来的.如果不知道目的MAC,交换机则开始泛洪. VLAN交换机:数据帧进入交换机 - 获取VLAN_ID - 匹配过滤表 同时将数据帧转发给trunk口,trunk口不删除VLAN ID -

华为网络技术大赛模拟题答案详解

华为网络技术大赛模拟题答案详解 [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/51354514 一.判断题 (1)VLSM的作用是:在有类的IP地址基础上,从主机位部分划分出相应的位数做为网络位.但是在路由器上部署时,需要路由协议的支持. [解释]对,VLSM=Variable Length Subnet Mask,可变长子网掩码 (2)有效的沟通是任何组织和任何项目的基础,项目经理可以花90%或者更多的时间在沟通这方