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: ...
随机推荐
- 学习ITIL
ITIL IT运维管理体系: IT管理中的PPT(people人:process流程:technology技术): 标准化(是否有紧急故障处理流程).工具化: 备份解决方案:灾备解决方案: 监控解决方 ...
- Netty学习摘记 —— 简单WEB聊天室开发
本文参考 本篇文章是对<Netty In Action>一书第十二章"WebSocket"的学习摘记,主要内容为开发一个基于广播的WEB聊天室 聊天室工作过程 请求的 ...
- python学习笔记(四)——面向对象编程
python 支持面向过程编程和面向对象编程. 传统面向过程编程,也叫函数式编程,通过我们的需求设计成一个一个的函数来完成,对一些小规模程序来说面向过程确实简单方便不少.而随着互联网的发展,对于一些大 ...
- 订单突破10000+,仅花1小时,APPx独家深入剖析背后的秘密!
拼多多:成立三年,获客三亿,月订单成交额达到恐怖的400亿,成功上市! 糕妈优选:营销活动推送1小时,订单超过10000+,商品成功刷屏朋友圈! 寻慢:一场活动净增7000+粉丝,付款转化率高达71% ...
- Unity用Input.touches实现手机端多点触控
多点触控的方法,两边的触控互不干扰: 主要采用Input.touches的相关属性进行操作: 而采用IPointerDrag接口会造成两个drag的相互干扰: 代码如下: using System.C ...
- EF框架基础
ORM概述: ORM全称是"对象 - 关系映射" . ORM是将关系数据库中的数据用对象的形式表现出来,并通过面向对象的方式将这些对象组织起来,实现系统业务逻辑的过程. Entit ...
- java对象有什么重要的?
3.历史上讲,对象有什么重要的? [新手可忽略不影响继续学习]早期的编程主要是面向过程的编程,处理的问题都相对的简单,比较过程化,换句话说,就是一步一步从开始到结束,比如第一步进入电梯,第二步关门, ...
- CSS样式写在JSP代码中的几种方法
1.行内样式. 可以直接把css代码写在现有的HTML标签元素的开始标签里面,并且css样式代码要写在style=" "双引号中才可以, 如: <p style=" ...
- Shiro 安全框架详解一(概念+登录案例实现)
shiro 安全框架详细教程 总结内容 一.RBAC 的概念 二.两种常用的权限管理框架 1. Apache Shiro 2. Spring Security 3. Shiro 和 Spring Se ...
- Django项目引入NPM和gulp管理前端资源
前言 之前写了一篇<Asp-Net-Core开发笔记:使用NPM和gulp管理前端静态文件>,现在又来用Django开发项目了,之前我搞了一个Django的快速开发脚手架「DjangoSt ...