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


  1. STP 协议工作时间收敛慢,响应时间长---------->RSTP

  2. 原始的802.1d(stp)不支持多个vlan---->(PVST===>把一个单独的 vlan 添加为一个实例)--->MSTP

二、RSTP rapid


  1. 为了解决STP收敛慢的问题

  2. STP的问题 RP:root port 根端口 DP: 指定端口 BP:阻塞端口

    • 问题1:慢:设备从初始化,到收敛完成,最少要经历30s的时间,最长50s

      为了防止临时环路的出现,采用被动等待的计时器

      STP的计算,必须要等待固定的时长

    • 问题2:交换机BP端口切换RP端口的等待延时

      SWC与SWA的直连链路down掉,SWC默认自己为根桥(根桥不存在BP端口)将其BP端口从阻塞

      状态激活成->监听(15s)->学习(15s)切换成RP端口并进入转发状态至少需要经过30s

    • 问题3:交换机没有BP端口,RP端口down掉,DP端口至少需要等待50sオ能切換



         BPDU老化机制:SWC的BP端口接受SWA->SWB->SWC的BPDU,超过20s未收到,则老化。

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

    • 问题5:拓扑变更机制,复杂且效率低下

    • 其他不足之处:端口角色



  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--- ---针对与问题3
      • backup --- 针对于问题2
    • 特点:由于有来回确认机制和同步变量机制,就无需依靠计时器来保障无环。

  5. 次等BPDU的处理机制

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

  6. 边缘端口的引入

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

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

    • STP:逐级通报的过程

    • RSTP:扁平化管理,RSTP的所有的交换机 都可以发送BPDU(TC)

    • 如果出现了拓扑变更,RSTP会第一时间通知上下级交换机,清空CAM表



      解析:一旦检测到拓扑发生变化,将进行如下处理:

      为本交换设备的所有非边缘指定端口启动一个TC While Timer,该计时器值是Hello Time的两倍。在这个时间内,清空状态发生变化的端口上学习到的MAC地址。同时,由这些端口向外发送RST BPDU,其中TC置位。一旦TC While Timer超时,则停止发送RST BPDU。

      其他交换设备接收到RST BPDU后,清空所有端口学习到MAC地址,除了收到RST BPDU的端口。然后也为自己所有的非边缘指定端口和根端口启动TC While Timer,重复上述过程。 如此,网络中就会产生RST BPDU的泛洪。

  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进行处理。

三、RSTP配置实现

  1. RSTP配置需求



    如图所示,SWA、SWB和SWC组成了一个环形的交换网络,为了消除环路对网络的影响,故使交换机都运行RSTP,最终将环形网络结构修剪成无环路的树形网络结构。

  2. RSTP配置实现

     SWA
    stp enable 开启STP
    stp mode rstp 将模式切换RSTP
    stp root primary 将SWA设为根桥 SWB
    stp enable 开启STP
    stp mode rstp 将模式切换RSTP
    stp bpdu-protection 开启BPDU保护
    interface GigabitEthernet 0/0/4
    stp edged-port enable 将当前端口配置成边缘端口 SWC
    stp enable 开启STP
    stp mode rstp 将模式切换RSTP
    stp bpdu-protection 开启BPDU保护
    interface GigabitEthernet 0/0/4
    stp edged-port enable 将当前端口配置成边缘端口
  3. RSTP配置验证

    在SWA上查看生成树信息:

RSTP的更多相关文章

  1. Android视频直播解决方案(rstp、udp)

    做局域网视频直播有两种方案,通过rstp或udp协议. 1.rstp协议,网络上有个开源项目,基于Android,且这个项目也是一个服务端,里面也集成了http访问页面,可以通过http或者rstp直 ...

  2. iOS使用ffmpeg播放rstp实时监控视频数据流

    一.编译针对iOS平台的ffmpeg库(kxmovie) 最近有一个项目.须要播放各种格式的音频.视频以及网络摄像头实时监控的视频流数据,经过多种折腾之后,最后选择了kxmovie,kxmovie项目 ...

  3. 配置STP、RSTP以及负载均衡

    生成树协议是一种二层管理协议,它通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,同时具备链路的备份功能. 每个VLAN都生成一棵树是一种比较直接,而且最简单的解决方法.它能够保证每一个VL ...

  4. STP RSTP

    一.透明网桥 1.对于一般的透明网桥来说,通常都具有以下的特点: +拓展LAN的能力 +自主动态学习站点的地址信息 当网桥的某个端口上收到含有某个源MAC地址的数据帧时,它就把该MAC地址和接收该数据 ...

  5. BPDU报文(RSTP)

    与STP 的BPDU报文格式相同,就是在flags字段报文中间几位得到应用 主要原理:利用flages位中的Proposal与Agreement来进行协商,从而快速从 discarding 转成 fo ...

  6. RSTP介绍

    1. 介绍 RSTP(Rapid Spanning Tree Protocol),快速生成树协议,标准为802.1w(已合入802.1D-2004)RSTP是对STP技术的修改和补充,最大特点就是快速 ...

  7. STP-9-处理RSTP中的拓扑变化

    STP能识别四种不同的拓扑变化事件, 而RSTP只有当非边界端口从非转发状态变为转发状态才认为发生了拓扑变化事件 因为刚变为转发状态的端口可以为一些mac地址提供比之前更好的路径,CAM表需要更新.失 ...

  8. 华为eNSP路由交换实验-生成树之RSTP

    RSTP基础配置 实验拓扑图 实验步骤 1.基本配置 根据实验编址表进行相应的基本IP配置. 2.配置RSTP基本功能. (1)把生成树模式由默认的MSTP(华为交换机默认开启)改为RSTP. [FW ...

  9. RSTP基本配置

    1.用四台S3700交换机,2台PC机,一台HUB,组建网络拓扑 2.测试主机间的连通性 3.配置rstp基本功能 (1)把交换机stp模式由默认的mstp变为rstp.在华为交换机上默认开启了mst ...

  10. 实验之RSTP基础配置

    STP升级版之RSTP 实验环境 实验拓扑图 实验编址 实验步骤 1.基本配置配置PC端 测试i相通性 2.配置RSTP基本功能在S1-S4上都使用命令stp mode rstp更改生成树模式(因为华 ...

随机推荐

  1. 30K入职腾讯,全靠这份606页的Android面试指南

    前言 光阴似箭,日月如梭,时间真的过得飞快. 加上实习,从事 Android 开发,差不多有 5 年了.在上家公司职务.薪酬感觉已经到达了天花板,没有上升的余地.而且在这家公司过于安逸了,想换个有挑战 ...

  2. JQuery常用属性操作,动画,事件绑定

    jQuery 的属性操作        html() 它可以设置和获取起始标签和结束标签中的内容. 跟 dom 属性 innerHTML 一样.        text() 它可以设置和获取起始标签和 ...

  3. Java Swing 空布局

    Swing 空布局 试了盒布局,说实话不太会用,很多地方都没法更加的细节,又翻了翻资料,知道了还有一个空布局,一看,真不错,很适合我这种菜鸡 用坐标就可以完成界面的布局,不错 话不多说,直接代码 pa ...

  4. Linux UDP服务器编程

    UDP主要使用sendto()和recvfrom() recvfrom() 函数原型如下: #include <sys/types.h> #include <sys/socket.h ...

  5. WPF下获取文件运行路径、运行文件名等

    在客户端开发过程中,经常需要获取相对路径的一些资源,而相对路径的就与客户端运行文件的路径息息相关了.在以前的winform开发中,我们可以使用 System.Windows.Forms.Applica ...

  6. NOIP 模拟 6 模板

    题目 题解 这道题是一道启发式合并的题目,每次合并完重构一下线段树就可以,不用线段树合并. 以操作时间为下标,建立一颗线段树,维护小球的个数与小球的颜色数,最后线段树上二分查找. 我们先不用考虑每个节 ...

  7. 网络游戏逆向分析-4-分析喊话call参数来源

    网络游戏逆向分析-4-分析喊话call参数来源 好久没更新了,去实习去了,大家见谅一下. 前面找到了喊话功能call函数,然后分析了它的参数有五个,分别的四个push的和一个ecx: 第一次edx = ...

  8. COM笔记-关于HRESULT

    HRESULT HRESULT(Here's the RESULT)值分成32位值, HRESULT值中16到30这15个比特位包含的是设备代码.设备代码标识的是可以返回HRESULT返回代码的操作系 ...

  9. QT 资源文件的添加

  10. Java中的比较器(排序)

    "顺序"在任何一个领域里都是非常重要的一个概念,程序也不例外.不同的执行顺序,能对你的执行结果产生直接影响. 既然涉及到顺序,那就要求排序.所以本文讨论的就是排序中使用到的比较器C ...