RSTP与MSTP
admin
2024-03-05 06:52:37
0

RSTP

RSTP快速生成树树协议

  • 生成树:为了防止二层网络中存在链路冗余时出现环路
  • STP:生成树协议,802.1D标准定义
  • RSTP:快速生成树协议,802.1w标准定义
  • MSTP:多实例生成树协议,802.1s标准定义

STP的工作原理

  1. 选举根桥
    • 比较根桥ID=桥优先级+MAC地址
    • 桥优先级:2B,以小为优,默认32768,步长4096,取值范围0~61440
    • MAC地址:6B,以小为优
  2. 在非根交换机上选举一个根端口(RP)
    • RP有且只有一个
      1. 先比较RPC(跟路径开销),以小为优
      2. 比较对端BID(桥ID),以小为优
      3. 比较对端的PID,以小为优
        • PID(2B)=端口优先级(1B)+端口号(1B)
        • 端口优先级:默认128,步长16,取值范围0~240,以小为优
        • 端口号:以小为优
      4. 比较本端的PID
  3. 在每条链路上选举一个指定端口(DP)
    • 先比较RPC,以小为优;
    • 本端的BID,以小为优;
    • 本端的PID,以小为优;
  4. 阻塞所有非根非指定端口(AP)

STP报文类型

  • 配置BPDU:计算生成和维护最短路径树
  • TCN BPDU:通知拓扑出现变更

STP计时器

  • message age:消息生存时间,BPDU报文每经过一台交换机加1
  • MAX age:最大生存时间,20s
  • hello time:根桥周期发送BPDU的间隔时间,默认2s
  • forward delay:转发延迟,端口状态迁移的延迟时间,15s

RSTP对STP的改进

端口角色的改变:

  • 新增了两种端口角色

    1. AP:替代端口,作为RP的备份
      • 提供了去往根桥的另外一条备份路径
      • 当接收到其他交换机发送的配置BPDU时,成为AP口
    2. BP:备份端口,作为DP的备份
      • 为根桥提供了去往目的网段的另一条备选路径
      • 当接收到自己发送的配置BPDU时,成为BP口

端口状态的改进

  • 由STP中的5种状态缩减至3种:
    1. discarding状态:禁用状态,不转发业务流量,也不学习MAC地址
    2. learning状态:学习状态,只学习MAC地址,但是不转发业务流量
    3. forwarding状态:转发状态,学习MAC地址,转发业务流量

报文类型的变化

  • RSTP的报文类型:RST配置BPDU

  • 报文内容的变化

    1. 报文类型字段:

      • BPDU type==0x00:配置BPDU

      • BPDU type==0x80:TCN BPDU

      • BPDU type==0x02:RST/MST 配置BPDU

        当STP接收到type==0x02的配置BPDU时,直接丢弃

        RSTP可以向下兼容

    2. flag:8bit

      • 由STP中只使用最高位和最低位两个比特位,改为8个比特位都使用

      • TCAaggregate(同意)forwardinglearningport roleproposalTC
        7bit6bit5bit4bit3-2bit1bit0bit
        确认收到TCN BPDU报文用于P/A协商机制端口状态端口状态端口角色用于P/A协商机制用于通知拓扑出现变更
        • 第7bit位:TCA,确认收到TCN BPDU报文

        • 第6bit位:aggregate(同意),用于P/A 协商机制

        • 5bit位:forwarding

        • 第4bit位:learning

        • 4、5位共同表示端口状态

        • 第2|3bit位:端口角色:

          00 :未知,保留

          01:AP/BP

          10:RP

          11:DP

配置BPDU报文处理过程的变化

  1. 非根交换机无需等待根桥的配置BPDU,可以独立自主的按照Hello time的间隔周期性发送配置BPDU
  2. 配置BPDU的老化时间不再依赖MAX age,老化时间变更为3倍的Hello time(缺省 6s)
  3. RSTP交换机可以处理次优配置BPDU

快速收敛机制

  1. 根端口和指定端口的快速切换:

    • AP口作为RP口的备份,当RP出现故障,最优的AP成为新的RP口进入转发状态
    • BP口作为DP的备份,当DP口出现故障,最优的BP成为新的DP口进入转发状态
  2. 引入边缘特性(edge port)

    • 应用场景
      • 通常用于连接终端设备,如PC、服务器、路由器等,通常将交换网络的边界,不会再连接其他二层网络的端口配置成边缘端口
    • 边缘端口的特点
      1. 边缘端口可以直接进入转发状态(forwading)
      2. 边缘端口时DP口,会周期性发送配置BPDU
      3. 当边缘端口接收到配置BPDU时,会丧失边缘端口特性
      4. 边缘端口不参与STP计算,接收到TC置位的配置BPDU时,不会清除端口MAC地址表项
      5. 边缘端口进入到forwarding状态,不会触发拓扑变更机制(不会触发TC置位的配置BPDU)
      6. P/A协商时,不会阻塞边缘端口
  3. P/A协商机制:

    • 作用:让指定端口快速进入转发状态

    • P/A协商必须在全双工点到点的链路上进行

    • 协商过程:一根桥为起点,自上而下,逐跳进行

    • image-20221130100518777
      1. 首先交换机A/B/C运行RSTP后,都认为自己是根桥,所有端口都是DP,发送RST配置BPDU

      2. 通过交互RST BPDU后,知晓交换机A位根桥,于是B/C先与A进行P/A协商

      3. A朝B/C发送P置位的RST BPDU

      4. B/C接收到A发送的P置位的RST BPDU后,同步变量,阻塞除边缘端口以外的所有端口

      5. B/C的RP口进入forwarding状态,并回复A置位的RST BPDU

      6. A接收到A置位的RST BPDU后,DP口进入转发状态

        至此,A与B/C之间的P/A协商已完成

      B/C之间继续进行P/A协商

      1. B和C之间交互P置位的RST BPDU,确定B的端口为DP,C的端口为AP口
      2. B设备不停向C发送P置位的RST BPDU,优于C的端口为AP口,不会给B回复A置位的RST BPDU,故B的DP口只能等待2个forwarding delay后进入转发状态

拓扑变更机制

  • 在STP中判断拓扑出现改变的标准是接口UP/Down

  • 在RSTP中,判断拓扑出现改变的唯一标准是非边缘端口进入forwarding状态

  • 所以当检测到非边缘端口进入forwarding状态会触发拓扑变更机制

    • 出现拓扑变更的设备

      1. 给设备会删除状态出现改变的接口学习到的MAC地址表项,并且向出边缘端口外的其他端口泛洪TC置位的RST BPDU,同时给每个转发TC置位的RST BPDU报文的皆苦开启TC while timer计时器(通常收hello time的两倍),计时器超时后则停止发送TC置位的RST BPDU报文

      2. 接收到TC置位的RST BPDU的设备,除了边缘端口和接收该报文的接口以外,清楚其他所有端口学习到的MAC地址表项,并泛洪TC置位的RST BPDU,同时开启TC while timer计时器

      3. 重复以上动作,直至TC置位的RST BPDU泛洪至全网

        注意:如果是边缘端口故障,则不会触发拓扑变更机制

保护机制

  1. BPDU保护

    • 默认关闭,需要手动开启,在系统视图下配置,配置命令

      [huawei]stp bpdu-protection
      
    • 当边缘端口接收到RST BPDU时,会丧失边缘端口特性,配置了BPDU保护功能后,边缘端口如果接收到BPDU报文,直接关闭(error-down),此时能通过手动开启(undo shutdown),端口再次进入forwarding状态,边缘端口特性不会丢失

  2. 根保护

    • 默认关闭,需要手动开启,在指定端口下配置,配置命令

      • int g0/0/4
        stp root-prote
        
    • 作用:保护根桥地位不被抢占,防止非法用户或错误接入导致更高优先级设备抢占根桥地位,可能导致数据外泄和网络拥塞等问题

    • 配置跟保护后,当DP接收到更优的BPDU报文后,端口角色不改变,并且将端口状态切换至discarding,一段时间后(通常是2个forward delay)没有再接收到更优的BPDU,端口再次进入forwarding状态

  3. 环路保护

    • 默认关闭,需要手动开启,在根端口和阻塞端口下配置,配置命令

      • int g0/0/01
        stp loop-protection
        
    • 作用:用于防止优于单通链路故障或者网络拥塞导致的环路

    • 优于非根交换机单通链路故障或者网络拥塞导致长时间没有接收到根桥的RST BPDU报文,RP成为DP,AP切换成RP,此时都处于forwarding状态,从而造成单向的环路问题

      • 配置了环路保护功能后,RP成为DP后停留在discarding状态,AP成为新的RP后处于forwarding状态,从而防止了单向环路产生,直到单向链路故障恢复或者网络拥塞解除,接收到根桥的BPDU后,重新确定端口角色
  4. 防TC BPDU攻击

    • 默认关闭,需要手动开启,在系统视图下配置,配置命令

      • stp tc-protection-------------开启TC BPDU保护功能
        stp tc-protection threshold 2---------配置单位时间内处理的次数
        stp timer hello 200-----------------配置单位时间间隔(单位厘秒,默认200)
        
    • 作用:防止网络设备因频繁接收到TC 置位的BPDU导致,MAC地址表项频繁变更,造成网络震荡

    • 配置TC-bpdu保护功能后,在单位时间内只能处理优先次数的TC-BPDU报文,默认单位时间为一个hello time只处理一次TC BPDU报文,时间间隔处理次数都已手动配置,对于超出的部分,只能等计时器超出后再统一一次性处理

MSTP多实例生成树

STP/RSTP的缺陷

  • 只能生成一棵树,所有vlan数据都按照该生成树进行转发,可能导致的问题:
    1. 无法实现vlan间负载分担,链路利用率低,设备利用率低
    2. 存在次优路径
    3. 部分vlan业务无法通信

MSTP的优点

  • 都能够生成多颗生成树,实现负载分担,提高链路利用率,各个生成树之间相互独立

MSTP的缺点

  • 配置过于复杂,开销(BPDU报文传输的开销和计算的开销)额外大一些,CST上没有负载分担能力(只实现了域内的负载分担,没有实现域间的负载分担),域间通信存在次优路径
  • 华为提出自己的私有协议VBST,一个vlan计算一颗生成树

术语解释

  1. MST域:

    • 通过域名、修订级别、实例与vlan的映射关系可以唯一标识一个MST域
    • 一个交换网络可以划分成多个MST域,一个域中可以生成1棵或多棵树
  2. MSTI:多生成树实例

    • 一个MST域中可以有多个实例,每个实例就是一棵生成树,一个实例可以与多个vlan映射,一个vlan只能属于一个实例,不同实例通过instance id标识
  3. CST:公共生成树

    • 将MST域看作一台交换机,域与域之间计算出的生成树称为公共生成树
  4. IST:内部生成树

    • 是一个特殊的MSTI,也就是MSTI 0,除了绑定到其他实例的vlan,剩余所有的vlan都属于MSTI 0
  5. CIST:公公和内部生成树

    • 就是IST+CST,通告生成树协议计算的,连接交换网络中所有设备的单生成树
  6. SST:单生成树

    • 运行STP/RSTP的交换设备计算出的生成树或者MST域中只存在一台交换设备,生成的最短路径树称为单生成树(CST也是单生成树)
  7. 总根

    • CIST的根桥,在MSTP网络中桥优先级最高的设备
  8. 域根

    • 分为IST域根和MSTI域根
      • IST域根:IST生成树中距离总根所在域最近的交换设备
        • 单域情况下:IST中优先级最高的交换机就是IST域根,此时也是总根
        • 多域情况下:
          • IST域根与总根处于同一个域时,总根即是IST域根
          • IST域根与总根处于不同的域时,IST中离总根所在域最近的交换设备是IST域根
            • 比较规则:
              1. 比较根路径开销,本桥去往总根所在域的开销总和
              2. 开销一样,则比较桥ID
      • MSTI域根:每一个MST域中,每一棵实例树的根桥就是MSTI域根
  9. 主桥

    • MSTI 0中距离总根最近的交换设备

    • 如果MSTI 0所在域即是总根所在域,则总根就是主桥

      注意:总根一定是IST的根桥,但IST根桥不一定是总根

新增两种端口角色

  1. 域边缘端口:
    • 与其他域或者SST相连的端口,处于域的边缘(也就是CST上的所有非阻塞端口),域边缘端口在CIST中的角色可以是RP也可以是DP
  2. master端口:
    • 特殊的域边缘端口是域来凝结总根所有路径中最近的端口,在CIST中的端口角色是RP,在其他实例是master端口

MSTP中端口的状态域RSTP中的级别一致

  1. discarding:
    • 禁用状态,可以接收配置BPDU,不学习MAC地址,不转发业务流量,RP\DP\AP\BP\边缘端口\master端口
  2. learning:
    • 学习状态,可以接收、转发配置BPDU,可以学习MAC地址,不可以转发业务流量,RP\DP\域边缘端口\master端口
  3. forwarding:
    • 转发状态,可以接收、转发配置BPDU,可以学习MAC地址和转发业务流量,RP\DP\域边缘端口\master端口

MSTP BPDU报文参数

  • protocol id:2B,协议标识符,固定为0,0x0000

  • protocol version id:1B,协议版本标识符,stp为0x00,RSTP为0x02,Mstp为0x03

  • BPDU type:1B,BPDU报文类型

    • 0x00:STP的配置BPDU
    • 0x80:STP的TCN BPDU
    • 0x02:RST/MST配置BPDU
  • CIST flag:1B,CIST标志字段

  • CIST root id:8B,CIST的总根的BID

  • CIST external path cost:4B,CIST外部路径开销指从本设备所属的MST域到CIST总根所属的MST域的累计路径开销。CIST外部路径开销根据链路带宽计算

  • CIST regional root id:8B,CIST域根的BID,即IST master的ID。如果总根在这个域内,那么域根ID就是总根BID

  • CIST port id:2B,本端口在IST中的指定端口ID

  • message age:2B,BPDU报文的生存时间

  • MAX age:2B,BPDU报文的最大生存时间,超时则认为到根交换机的来南路故障

  • hello time:2B,BPDU报文发送的间隔时间,缺省2s

  • forward delay:2B,转发延迟定时器,缺省15s

  • version 1 length:1B,version 1 BPDU的长度

    以上36字节为RSTP BPDU的长度

  • version 3 length:2B,MSTP BPDU的长度

  • MST configuration id :51 B,MST配置标识符。标识MST域的标识信息,包含4个字段

  • CIST internal path cost:4B,CIST内部路径开销指从本端口到主桥(IST master交换设备)的累计路径开销。CIST内部路劲开销根据链路带宽计算

  • CIST bridge id:8B,CIST的指定交换设备的ID

  • CIST remaining hops:1B,BPDU报文在CIST中剩余跳数

  • MSTI configuration messages:16B,如果有n个MSTI就占用n*16B

MSTP拓扑计算过程

  1. 选举总根
  2. 域与域之间计算CST,每个域内计算IST,CST+IST构成了CIST
  3. 每个MST域单独计算MSTI

相关内容

热门资讯

千元户外品牌,一股班味 北京世纪金源,曾经的“亚洲最大购物中心”,最近换了一副面孔。 这里俨然成了一座“户外痛城”。从外面看...
千亿分红如期派发,银行股为何依... 如何穿越周期、构建新的护城河,不仅是对银行战略定力的考验,更是其估值能否真正筑底回升的决定性变量 文...
如何选择广州OPC一人轻资产跨... 当下,出海创业成为不少个体经营者和中小企业拓展市场的选择,其中OPC一人轻资产模式因投入低、灵活性高...
原创 若... 时间来到2026年7月,翻看这半年的账本会发现一件挺矛盾的事,家里餐桌上的菜价、货架上的日用品价格几...
欧美企业掀起向中国AI基础设施... 2026年6月,多家海外企业转向中国AI:加密货币交易平台Coinbase将其定为工程师默认工具,美...
天风·轻纺 | 九部门发文鼓励... 我们认为本次文件或更多从供给侧推动零售业升级,鼓励新型优质零售;从网点布局、产品品质、定价体系,消费...
华夏基金(香港)行政总裁甘添专... 中国基金报记者 叶诗婕 在互联互通机制持续深化、全球资产配置需求蓬勃涌现的当下,香港ETF市场正经历...
华尔街的新策略:剔除马斯克 华尔街正将“剔除马斯克”变为一种交易策略。 随着SpaceX以创纪录速度“闪电入指”,引发被动资金大...
500万人的牵挂,有了暖心答案 大众卫生报·新湖南客户端7月9日讯(通讯员 肖心玥 禹晓东)50多天前,一段重型货车碾压伤患者的急诊...
杨山海:黄金,白银下周有放量上... 杨山海:黄金,白银下周有放量上涨的可能! 趁着周末有空,我给大家好好复盘下上周的黄金、白银行情,...
原创 马... #马斯克再出狂言 #:# 马斯克要让 SpaceX 价值超整个地球 #,马斯克又一次凭借魔幻言论刷屏...
AI存储巨头遭遇冰火两重天:S... 存储巨头SK海力士带着265亿美元的庞大募资计划,强势叩开美国资本市场的大门。7月10日,SK海力士...
为什么基金合同要明确投资限制? 基金合同明确投资限制具有多方面的重要意义,对投资者、基金管理人以及整个金融市场都有着不可忽视的作用。...
基金运作如何影响申赎安排更稳妥... 基金的运作机制与申赎安排之间存在着紧密的联系,合理的申赎安排能够确保基金的平稳运作,同时保障投资者的...
破解市场算法的人:粒子物理学博... 萨米尔·瓦尔马博士(Dr. Samir Varma)是一位非常特殊的交易者。他拥有粒子物理学博士背景...
曙光8000正式落成 中国AI... 上证报中国证券网讯(记者 王乔琪)7月9日至7月11日,光合组织2026智能计算应用大会在郑州举行,...
CEO亲自来华,5年在华酒店近... 台州仙居铂尔曼酒店。源自:企业官网 本报(chinatimes.net.cn)记者张蓓 黄指南 深圳...
MiniMax再跌10%!CE... 瑞财经 严明会7月10日,MiniMax(0100.HK)完成新一轮160亿港币融资。当日早盘,Mi...
原创 中... 新能源越跑越快,镍一下子成了绕不过去的原材料“风口”,可就在全球汽车行业拼新能源的时候, 印尼悄悄收...