HCNP Routing&Switching之MSTP
前文我们了解了RSTP保护相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16255918.html;今天我们来了解下MSTP相关话题;
MSTP技术背景
我们知道RSTP在STP的基础上进行了改进,实现了网络拓扑快速收敛;但是由于局域网内所有vlan共享一棵生成树,因此被阻塞后的链路将不承载任何流量,无法实现vlan间流量的负载分担,从而造成带宽浪费;除此以外,部分vlan间通讯也可能出现次优路径;为了弥补STP和RSTP的这些缺陷,IEEE于2002年发布的802.1s标准定义了MSTP;MSTP兼容STP和RSTP,即可以实现快速收敛,又提供了数据转发的多条冗余路径,在数据转发过程中实现了VLAN数据的负载分担;

提示:如上所示,在STP和RSTP中如果某条链路被阻塞,那么该链路将不承载任何流量,即交换机B下所有vlan访问server将会绕路;从拓扑来看这很显然不是一个很合理的拓扑;
MSTP:Multiple STP,多生成树协议;该协议可实现设置VLAN映射表,将一个或多个VLAN映射到一个多生成树实例上,基于实例计算出多棵生成树,实现实例间负载分担;并且该协议具有RSTP快速收敛兼容STP和RSTP;

提示:有了MSTP我们就可以将不同VLAN映射到不同实例上,根据实例来算生成树;这样一来我们可以实现实例和实例的负载均衡;简单讲,就是从原来的一颗生成树,变成多棵生成树;当然不同生成树,树根不同,对应通信流量转发路径也就不同,从而利用了被阻塞链路,实现流量的负载分担;

提示:如图,两个5700交换机,根据不同实例映射不同的vlan实现了实例1包含vlan2,实例2包含vlan3;同时stp计算也是根据不同实例的映射,分别算出两棵生成树,对于实例1来说,5700-a是根桥,5700-b是备份根桥;对于实例2来说5700-b是根桥,5700-a是备份根桥;所以在3700上,对于不同vlan,它们阻塞的端口不同,当然数据转发路径也就不同;
MSTP术语
MST实例:Instance,实例,由MSTID标志,两字节的整数(16位2进制,即实例理论范围是0-65535);不同型号交换机,性能配置高低可能影响支持创建实例的数量;比如华为vrp平台支持49个mst 实例(0-48),而有的真机支持4095个(0-4094)实例;一般来说性能越好,对应支持创建实例数量也就越多;默认rstp是把所有vlan映射到mst instance 0上;
MST区域:Region,所谓区域是指一组相邻的交换机组成的一个区域;对于同一个区域内地设备具有如下特点:
1、都启用了MSTP;
2、具有相同的区域名称;
3、具有相同实例的映射;
4、具有相同的修订级别(版本);
MST配置标识:MST Configuration Identifier,标识自己所在的区域,被封装在交换机相互发送的BPDU中,如下图

提示:MST配置标识,占1字节,默认是0;同一个区域的所有交换机必须满足区域名称要相同,修订级别要一样,实例映射要一致;
MST各种树

IST:内部生成树(Internal Spanning Tree),MST 域内实例0上的生成树;
CST:公共生成树(Common Spanning Tree),连接所有MST域的一颗生成树,即把每个区域当作一个设备所形成的生成树;
CIST:公共和内部生成树,连接所有设备的一颗生成树,由IST和CST共同构成;
MSTI:多生成树实例,每个域内可以存在多棵生成树,每棵生成树和相应的VLAN对应;
总根:CIST实例桥ID最优的桥,即公共和内部生成树组成的总生成树的根桥;
域根:MST域内各棵生成树的拓扑不同,域根也可能不同;
MSTI和MSTI域根

提示:一个区域里可有多棵生成树,即一个实例对应一棵生成树;上图表示区域3里有3棵生成树,除了IST实例0以外,其中实例3的域根是swb(红色虚线),实例5的域根是swc(蓝色虚线);这意味着不同实例通信数据转发路径的不同;
MSTP计算方法

提示:CST/IST的计算和RSTP类似;MSTI的计算仅限于区域内,MSTI计算参数包含在IST BPDU中,和IST计算同步完成;这里需要注意的是只有CIST的配置信息会发往其他区域,各MSTI配置信息只在该区域内传播;
CST计算结果

提示:从上图可以看到通过各个区域发送的CIST配置信息,从而计算出一颗CST生成树,并阻塞对应链路来防止环路;
IST计算结果

提示:IST就是实例0所形成的生成树,所以该生成树是各区域内部的MSTI信息计算出各个区域内的一个棵树,上图黑色实线就是IST;
MSTP计算结果分析

提示:如上图所示,hostB和hostA通信,hostB在区域4里,属于vlan2;首先在区域4里查看是否有vlan2的实例映射,如果有,就按照对应实例的生成树线路转发数据;如果没有,就走IST线路;可以看到区域4里并没有VLAN2的实例映射,所以数据转发路径走IST,然后从IST的根桥转发给其他区域;但数据到达区域3时,还是同样的方式,查看对应区域3是否有vlan2的实例映射,如果有,就走对应实例MSTI生成树对应路径,如果没有就走IST;可以看到区域3也没有VLAN的映射,所以通信路径还是会沿着IST的路径从IST的根桥发送出去;但数据来到区域1时也是先看有没有对应实例的映射,如果有就走对应实例MSTI对应的路径,如果没有就走IST;可以看到区域1里有vlan2的映射,所以在区域1里对应数据会沿着红色虚线进行转发,到达对应msit的根桥,然后发送给下一个区域;同理区域2里也有vlan2的实例,所以数据会沿着红色虚线进行转发,最后到达hostA;当然最开始会看CIST,判断出对应那条链路阻塞;然后在根据各个区域里的实例映射关系,来转发数据;
STP、RSTP和MSTP兼容性

提示:三种工作模式总的原则就是向下兼容,MSTP兼容RSTP,RSTP兼容STP;如果MSTP交换机的端口上曾经连接有STP或RSTP交换机,则对应端口会被迁移到STP或RSTP兼容工作模式;如果STP/RSTP交换机被关机,该端口无法自动迁移到MSTP模式工作,此时如果在端口上执行mcheck操作,则该端口会重新迁移到MSTP模式下工作;
STP各版本对比

MSTP配置
1、进入mstp域配置模式

2、配置MSTP域名

3、配置MSTP修订级别,范围0-65535,默认为0

4、配置实例与vlan的映射,默认所有vlan都映射到实例0上

提示:上述MSTP域名,修订级别和实例映射关系,在同一区域内的所有交换机必须相同;
5、激活mstp域配置

提示:默认配置完域名,修订级别和实例映射以后,对应在区域配置里看不到任何配置,原因是没有激活,必须激活区域配置,对应配置信息才会在区域配置模式里显示;
6、查看MSTP区域配置信息

提示:可以看到对应实例里有哪些VLAN,默认没有配置实例,就只有实例0,即所有VLAN都映射在实例0上; 所以我们把实例0称作内部生成树即IST;
7、调整实例优先级

提示:这个实例优先级调整和STP类似,命令不同之处在于MSTP需要加上实例号,即表示对那个实例进行调整;如上述命令表示把实例10的stp优先级设置为0,即实例0的主根桥;把实例20的stp优先级设置为4096,即设置实例20的备用根桥;
HCNP Routing&Switching之MSTP的更多相关文章
- HCNP Routing&Switching之IS-IS报文结构和类型
前文我们了解了IS-IS动态路由协议基础相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15249328.html:今天我们来聊一聊IS-IS动态路由协 ...
- HCNP Routing&Switching之组播技术-组播协议IGMP
前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...
- HCNP Routing&Switching之链路聚合
前文我们了解了MSTP相关话题,回顾清参考https://www.cnblogs.com/qiuhom-1874/p/16268682.html:今天我们来聊一聊链路聚合相关话题: 链路聚合是链路高可 ...
- HCNP Routing&Switching之OSPF网络类型
前文我们了解了PPPoE协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15182512.html:今天我们聊聊一聊OSPF中的网络类型相关话题: ...
- HCNP Routing&Switching之OSPF虚连接
前文我们了解了OSPF的网络类型.帧中继交换机映射以及路由器帧中继映射相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15195762.html:今天我 ...
- HCNP Routing&Switching之OSPF LSA类型
前文我们了解了OSPF中的虚连接相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15202348.html:今天我们来聊一聊OSPF数据包中LSA类型相 ...
- HCNP Routing&Switching之OSPF LSA类型(二)
前文我们了解了OSPF的一类.二类.三类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15209829.html:今天我们来聊一聊OSPF的四类和五类L ...
- HCNP Routing&Switching之OSPF外部路由类型以及forwarding address
前文我们了解了OSPF的4类.5类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15222969.html:今天我们来聊一聊外部路由类型和forward ...
- HCNP Routing&Switching之OSPF LSA更新规则和路由汇总
前文我们了解了OSPF外部路由类型以及forwarding address字段的作用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15225673.html: ...
随机推荐
- 决策树算法4:CHAID
原理: 其中 n = a+b+c+d 卡方计算(例子)使用 sklearn完成 data.csv中的部分数据 #如何使用卡方检测相关度 from sklearn.feature_selection i ...
- React+Webpack+ES6 兼容低版本浏览器(IE9)解决方案
虽然过了兼容IE6的噩梦时代,IE依旧阴魂不散,因为你可能还要兼容IE9.在ES6已经普及的今天,用ES6写react已经成了标配.但是babel编译的js语法,由于某些不规范的写法,可能在IE9下不 ...
- 使用 Vuex + Vue.js 构建单页应用【新篇】
使用 Vuex + Vue.js 构建单页应用[新篇] 在去年的七月六号的时候,发布了一篇 使用 Vuex + Vue.js 构建单页应用 的文章,文章主要是介绍 vuex 的基本使用方法,发现对大部 ...
- CSRF浅析
概念 CSRF,Cross Site Request Forgery,跨站请求伪造. 为什么跨站的请求需要伪造? 因为浏览器实现了同源策略,这里可以将站和源视为同一个概念. 同源策略 The same ...
- js随手笔记-------理解JavaScript碰撞检测算法核心简单实现原理
碰撞检测在前端游戏,设计拖拽的实用业务等领域的应用场景非常广泛,今天我们就在这里对于前端JavaScript如何实现碰撞检测算法进行一个原理上的探讨,让大家能够明白如何实现碰撞以及碰撞的理念是什么:1 ...
- spark-shell报错java.lang.IllegalArgumentException: java.net.UnknownHostException: namenode
在使用spark on yarn启动spark-shell时,发现报错: 是说找不到主机名为namenode的主机,那么应该是配置文件出错了. 经过检查,发现是spark-defaults.conf文 ...
- JavaScript遍历表单元素
运行效果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta char ...
- CPUs Intel 925X/915 Chipset (925X主板芯片组)
这个是2004年的intel产品的设计(主板,主板芯片组,北桥,南桥),结构也比较清晰,主要想看南桥和北桥的设计. 一些英文解释 ECC是一种能够实现"错误检查和纠正"的技术D92 ...
- C++STL 中的数值算法(iota、accumulate、adjacent_difference、inner_product、partial_sum)
以下算法均包含在头文件 numeric 中 ##1.iota 该函数可以把一个范围内的序列从给定的初始值开始累加 先看用法. 例: 假设我需要一个长度为10,从5开始递增的序列 vector<i ...
- 那些年uniapp踩过的坑之-------搜索框插件uni-search-bar字体和图标居中的问题
用uniapp必不可少的就是搜索框 但是公司要求的是这样滴 但是 uni-search-bar这个插件给我的偏偏是这样子滴 这个时候我以为是简简单单的样式问题,但是多方调试无果之后才发现,这两个根本不 ...