一、STP协议的缺点、存在的问题

1.协议工作的时候收敛的时间较长,响应速度慢----->RSTP

2.原始的802.1d(stp)不支持多个vlan---->MSTP

STP协议虽然能够解决环路问题,但是由于网络拓扑收敛较慢,影响了用户通信质量,而且如果网络中的拓扑结构频繁变化,网络也会随之频繁失去连通性,从而导致用户通信频繁中断,这也是用户无法忍受的。

二、RSTP rapid(快速)

1.产生原因:为了解决STP收敛慢的问题

由于STP的不足,IEEE于2001年发布的802.1w标准定义了RSTP。RSTP在STP基础上进行了诸多改进优化,使得协议更加清晰、规范,同时也实现了二层网络拓扑的快速收敛。

2.具体分析一下STP的问题

问题1:慢
设备从初始化,到收敛完成,最少要经历30s的时间
为了防止临时环路的出现,采用被动等待的计时器
STP的计算,必须要等待固定的时长

问题2:交换机BP(blocked) 端口,切换到RP的时候,至少要经历两个转发延时(15*2)

问题3:交换机没有BP端口,RP端口down掉了,DP端口至少要等待50s才能进行切换

问题4:交换机连接终端的端口,切换时间过长,30-50s

问题5:STP的拓扑吧ing机制,复杂,而且效率低下

问题6:端口角色划分不充分
没有指定面向用户/终端的端口
没有备份的根端口/指定端口(30-50)

问题7:端口的状态有些重复、而且增加了转发延时

3.RSTP 对STP技术的改进:端口角色、状态

新增了两种角色:都是用来做备份的,本质上也是被阻塞的(非block状态)
去掉了 阻塞端口
backup 端口 :指定端口的备份
alternate端口 :根端口的备份

端口切换不需要尽力等待转发延时,相当于STP的uplink-fast

状态由5种缩减为三种
discarding :不转发用户流量,不学习MAC地址—》 disable blocking listening
learning :不转发用户流量,学习MAC地址
forwarding :转发用户流量,学习MAC地址

4.RSTP的其他操作

**快速收敛机制
P/A(proposal/agreement sync机制 ) 一般都是秒级
让一个指定端口,尽快进入转发状态,同时避免环路的发送

三种报文格式:P A SYNC

**端口的快速切换机制
AP—DP —针对与问题3

5.次等BPDU的处理机制

当一个接口接收到一个次等BPDU之后,马上把自身储存的(最优)BPDU返回给源端口,然后启动P/A机制
可以实现接口的秒级切换

6.边缘端口的引入

相当于Port-fast,可以让edge-port 不参加RSTP的任何活动,激活后之后就变成了转发状态
如果边缘端口接口到了BPDU,就丧失了边缘端口的属性(相当于STP的BPDU-filter)

7.拓扑变更机制的优化:

STP:逐级通报的过程
RSTP:扁平化管理,RSTP的所有的交换机都可以发送BPDU
如果出现了拓扑变更,RSTP会第一时间通知上下级交换机,清空CAM表
TC while timer 2个hello时间

8.RSTP和STP之间的兼容性 RSTP能够向下兼容

RSTP协议与STP协议完全兼容

1.SW1支持RSTP,发送的报文是STP报文 SW2仅支持STP 发送的报文是STP报文
===》STP
2.SW1支持RSTP,发送的报文是STP报文 SW3支持RSTP,发送的报文是STP报文
===》STP
3.SW1支持RSTP,发送的报文是RSTP报文 SW#支持RSTP,发送的报文是RSTP报文 ===》RSTP

9.RSTP特性

1.BPDU保护
配置边缘端口的目的
希望这些端口 以后组网的时候,连接的都是终端设备
即使边缘端口连接了交换机,也需要先把这个交换机进行BPDU参数的调试(BID,端口cost值),当交换机接入网络,即使存在STP的计算,不会再次造成网络的震荡
如果边缘端口 硬性规定为 不允许连接交换机,在这些端口上来配置BPDU-protection。

2.根桥防护
场景1.客户网络和 运营商网络 进行二层对接 ===》 根桥防护主要配置在运营商网络上
场景2.由于维护人员的错误配置或网络中的恶意攻击,网络中合法根桥有可能会收到优先级更高的RST BPDU
实现原理:一旦启用Root保护功能的指定端口收到优先级更高的RST BPDU时,端口状态将进入Discarding状态,不再转发报文。在经过一段时间,如果端口一直没有再收到优先级较高的RST BPDU,端口会自动恢复到正常的Forwarding状态。
Root保护功能只能在指定端口上配置生效

3.TC-BPDU泛洪保护
场景:黑客在边缘端口接入一台计算机不断伪造和发送TC-BPDU (对于边缘端口来说,不希望收到BPDU报文)

解决方法1:强制规定该端口为边缘端口,禁止这个端口接收BPDU—》BPDU-protection
解决方法2:(如果允许边缘端口接收BPDU),黑客想这个端口发送TC-bpdu,
在单位时间内,交换设备处理TC-BPDU报文的次数可配置,设备只会处理阈值指定的次数
如果TC-BPDU 超过了阈值设置,交换机将不在对这些TC-BPDU进行处理.

三、MSTP

1.单生成树:部分链路 vlan 不通
不能实现负载分担
对于部分vlan来讲,出现次优路径的问题

2.PVST(Cisco 私有协议) per 针对与每个vlan, 都生成一个生成树
1.PVST 最初是Cisco,每vlan生成树, PVST+ 相当于 PVST + RSTP的结合版
2.PVST 它要维护每个vlan的生成树,交换机存在多个vlan,就会给交换机的CPU带来很大的压力

3.MSTP,公有协议。多实例生成树。
实例:instance
核心理念:把每个逻辑拓扑相同的vlan,放到统一的一个实例里面来进行管理

4.MSTP 它是基于RSTP来开发的,底层就是RSTP,有相同的角色、拓扑变更机制和收敛机制

RSTP MSTP相关推荐

  1. 简洁版本 STP/RSTP/MSTP的区别以及各自的特点

    参考:https://blog.csdn.net/cisco_eigrp/article/details/47134357 生成树相关的几个概念STP/RSTP/MSTP STP:IEEE Std 8 ...

  2. STP/RSTP/MSTP协议简介

    STP/RSTP/MSTP协议简介 STP 一.STP协议 二.为什么要有STP协议? BPDU 一.什么是BPDU? 二.BPDU的功能 三.BPDU的类型 端口 一.端口角色 二.端口状态描述 三 ...

  3. 【HCIE-RS 天梯路】STP RSTP MSTP

    生成树协议 STP(Spanning Tree Protocol)用于二层破环 不使用生成树协议可能会导致:       1. 广播风暴 2. MAC地址漂移 三层口没有STP 生成树协议模式:(实例 ...

  4. STP/RSTP/MSTP的概念及特点

    STP/RSTP/MSTP的概念及特点 一.STP 1 基本概念 STP(Spanning Tree Protocol)即IEEE 802.1D,其作用主要有三个,第一是eliminate logic ...

  5. STP/RSTP/MSTP 精华详解

    STP/RSTP/MSTP 精华详解: STP 概述 : 因为二层设备的互联,并因为交换机的转发原理,会导致物理环路的产生.这时就会使用到STP协议 STP:在有环的拓扑里面形成一个无环的逻辑拓扑(从 ...

  6. STP/RSTP/MSTP帧格式、报文格式及字段说明

    STP(Spanning Tree Protocol,生成树协议)是一种二层(数据链路层)管理协议,它通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,同时具备链路的备份功能.最初被广泛应用 ...

  7. RSTP/MSTP的产生,作用及如何配置(带有小实验详解)

    RSTP/MSTP诞生的背景: 一.1.STP协议工作时间慢,响应时间长 2.单靠STP,不能维护网络中的多个VLAN形成的环路 二.RSTP 1.解决STP的问题,响应时间长 2.从初始化到收敛完成 ...

  8. STP/RSTP/MSTP经典分析与对比

    当前和STP相关的协议有:IEEE 802.1D(STP),802.1W(RSTP),802.1(MSTP).其中802.1D是最早关于STP的标准.RSTP(Rapid Spanning Tree ...

  9. STP RSTP MSTP PVST+学习 (1)

    BPDU  bridge protocol data units 802.1d  STP    802.1w  RSTP  802.1s   MSTP STP  spanning-tree proto ...

  10. HCIE 面试资料-STP/RSTP/MSTP

    STP STP介绍 STP(Spanning Tree Protocol)生成树协议 有三个版本,协议版本标识符,STP为0,RSTP为2,MSTP为3. STP的作用是进行逻辑阻断,通过堵塞端口来消 ...

最新文章

  1. 【翻译】CEDEC2012 SQUARE ENIX GPGPU实现高速GI烘培工具的方法
  2. linux显示界面指令规范,linux的常规操作命令
  3. php 巧用逻辑运算符,php的神奇逻辑运算符
  4. Android应用开发(11)---动画资源
  5. Javascript知识汇总------获取构造函数constructor名称和一些字符串处理方法
  6. Python 中的 any(Python/any)
  7. 计算机网络 电子邮件
  8. 关于微信群的一个新玩法 (月末总结)
  9. 攻防世界_mobil_app1
  10. DM36x Rate Control Modes
  11. JVM-调优《常见可视化工具与命令行的使用》
  12. 转行做程序员,你后悔了吗
  13. Git是什么?有什么用?
  14. STM32CubeMX | 31-使用硬件FMC读写SDRAM(W9825G6KH)
  15. 学波尔还是学王励勤?-----再谈正手弧圈的重心转移
  16. 图文并茂的PCA教程
  17. 不同程序用不同网络_Python3.9版本发布,不同领域程序员应该怎样学Python?
  18. 华东师大计算机系博士几年,2018华东师范大学就业结果公布!就业率超97%,博士生月薪1.1万!...
  19. AVOD——Aggregate View Object Detection代码在centos服务器上运行过程
  20. 如何用JavaScript一次性抓取网站图片、种子等资源(正则表达式的应用)

热门文章

  1. Google 开源的项目集合
  2. 【CS231n系列】
  3. JavaScript语法糖写法--JS代码优化
  4. 搭建股票数据api接口过程中会遇到什么问题?
  5. C 合成的图片文件的小练习
  6. Impala Shell 和 Impala SQL
  7. Qt创建线程两种方式的区别
  8. crackme02——Afkayas.1
  9. CSS 变形(CSS3) transform
  10. 71个外贸工具集合!2023年外贸业务员开发客户必备!