RSTP


(一)、RSTP协议原理(RSTP和STP有兼容性的问题)

  一、RSTP产生的背景

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

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

  二、STP的不足

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

    

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

   

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

 

    

      ##注解 :RP:root port 根端口   DP: 指定端口   BP:阻塞端口

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

  

     问题5.STP的拓扑变更机制,复杂,而且效率低下

   

    问题6.端口角色划分不充分

    *没有指定面向用户/终端的端口

    *没有备份的根端口/指定端口(30-50)

   

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

      

  三、RSTP =》对STP技术的改进:端口角色、状态等

   1.端口角色的重新划分 

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

      backup 端口  :指定端口的备份

      alternate端口 :根端口的备份

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

      

     2. 端口状态的重新划分

      状态由5种缩减为三种

     

    3.快速收敛机制

    a)、针对问题1:P/A机制

    

       

    

     解析:阶段一:设备刚刚启动,RSTP协议刚刚启用,所有交换机都认为自己是根桥,向其他交换机发送P置位的BPDU,并把发送P消息的端口变成DP口,同时接口处在Discarding状态。

        阶段二:交换机SWA收到SWB和SWC的P消息会置之不理,因为他的桥优先级最高。交换机SWB和SWC收到SWA的P消息后,由于认同SWA是最优的根桥,会根据P/A协商流程回复A消息,并把发送端口变成RP端口,同时接口处在Forwarding状态。(非根桥交换机配合根桥完成PA,进行STNC同步,把除RP端口外的所有端口(不包括边缘端口,阻塞端口),都阻塞。B,C向A发送A置为的BPDU)

        阶段三:SWA与SWB,SWA与SWB的P/A协商已经完成,接下来是SWB和SWC的P/A协商。

             *SWB和SWC都会发送根桥为SWA的P消息给对方。

             *SWC收到SWB的P消息后,发现P消息里虽然根桥和自己认可的一样,但是发送者的桥优先级比自己高(SWB>SWC),所有马上停止发送P消息,但是由于已经有端口是RP口,也不会回A消息。

                *SWB收到SWC的P消息后,发现P消息里虽然根桥和自己认可的一样,但是发送者的桥优先级比自己低(SWB>SWC),会不停的发送P消息。 以上状态在等待2个Forward Delay时间后,SWB端口为DP端口,处在Forwarding状态, SWC端口为AP端口,处在Discarding状态。

                *实际上SWB与SWC之间的协商等同于退回到STP的模式,但是反正是Discarding状态,根本不影响其他业务转发。

   ##注解:1.快速收敛机制

        P/A(proposal/agreement sync机制 ) 一般都是秒级

        让一个指定端口,尽快进入转发状态,同时避免环路的发送

        三种报文格式:P     A    SYNC

         2.端口的快速切换机制

        AP---DP ---针对与问题3 

    b)、针对问题2.根端口快速切换机制

      

    c)、针对问题3.次等BPDU处理机制

     

    ##注释:次等BPDU的处理机制

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

        d)、针对问题4.边缘端口的引入

      

      4.拓扑变化处理机制    

        e)、针对问题5.拓扑变更机制优化(扁平化管理)

       

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

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

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

    5.STP和RSTP的兼容性(RSTP能够向下兼容)

    RSTP协议与STP协议完全兼容

    RSTP协议根据收到的BPDU版本号来自动判断与之相连的交换机支持STP协议还是RSTP协议

    

    解析:a.SW1支持RSTP,发送的报文是STP报文 SW2仅支持STP 发送的报文是STP报文 ===》STP

       b.SW1支持RSTP,发送的报文是STP报文 SW3支持RSTP,发送的报文是STP报文 ===》STP

       c.SW1支持RSTP,发送的报文是RSTP报文 SW#支持RSTP,发送的报文是RSTP报文 ===》RSTP

    6.保护功能

    1.BPDU保护

     配置边缘端口的目的:希望这些端口以后组网的时候,连接的都是终端设备

               即使边缘端口连接了交换机,也需要先把这个交换机进行BPDU参数的调试(BID,端口cost值),当交换机接入网络,即使存在STP的计算,不会再次造成网络的震荡

               如果边缘端口硬性规定为不允许连接交换机,在这些端口上来配置BPDU-protection。

    

      实现原理:配置BPDU保护功能后,如果边缘端口收到BPDU报文,边缘端口将会被立即关闭。

    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.

       

      *stp enable //全局开启

      *STP stp mode rstp //配置STP模式为RSTP

      *stp root primary //配置SWA为根桥

      *stp bpdu-protection //全局开启BPDU防护,配合边缘端口一起使用

      *stp edged-port enable //配置端口为边缘端口

      *display interface brief //查看端口信息

    2.

      


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM