5

HCNP Routing&Switching之MSTP - Linux-1874

 1 year ago
source link: https://www.cnblogs.com/qiuhom-1874/p/16268682.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

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数据的负载分担;

1503305-20220513213536358-162606137.jpg

  提示:如上所示,在STP和RSTP中如果某条链路被阻塞,那么该链路将不承载任何流量,即交换机B下所有vlan访问server将会绕路;从拓扑来看这很显然不是一个很合理的拓扑;

  MSTP:Multiple STP,多生成树协议;该协议可实现设置VLAN映射表,将一个或多个VLAN映射到一个多生成树实例上,基于实例计算出多棵生成树,实现实例间负载分担;并且该协议具有RSTP快速收敛兼容STP和RSTP;

 

1503305-20220513214340834-452519615.png

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

1503305-20220513214646025-2059697124.png

  提示:如图,两个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中,如下图

1503305-20220513220115567-1309457729.png

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

  MST各种树

1503305-20220513222434081-1378903276.png

  IST:内部生成树(Internal Spanning Tree),MST 域内实例0上的生成树;

  CST:公共生成树(Common Spanning Tree),连接所有MST域的一颗生成树,即把每个区域当作一个设备所形成的生成树;

  CIST:公共和内部生成树,连接所有设备的一颗生成树,由IST和CST共同构成;

  MSTI:多生成树实例,每个域内可以存在多棵生成树,每棵生成树和相应的VLAN对应;

  总根:CIST实例桥ID最优的桥,即公共和内部生成树组成的总生成树的根桥;

  域根:MST域内各棵生成树的拓扑不同,域根也可能不同;

  MSTI和MSTI域根

1503305-20220513222744859-2142310743.png

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

  MSTP计算方法

 

1503305-20220513224029705-1494213048.png

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

  CST计算结果

1503305-20220513224914454-1908480746.png

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

  IST计算结果

1503305-20220513225158442-1938493993.png

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

  MSTP计算结果分析

1503305-20220513230113393-82709918.png

  提示:如上图所示,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兼容性

1503305-20220513232332516-848204058.png

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

  STP各版本对比

1503305-20220513232825764-495668175.png

  MSTP配置

  1、进入mstp域配置模式

1503305-20220513233226561-588165018.png

  2、配置MSTP域名

1503305-20220513233359610-131963800.png

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

1503305-20220513233450716-1956189400.png

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

1503305-20220513233623045-1303652247.png

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

  5、激活mstp域配置

1503305-20220513233801503-1388201446.png

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

  6、查看MSTP区域配置信息

1503305-20220513234005461-31621876.png

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

   7、调整实例优先级

1503305-20220513234324916-482532228.png

  提示:这个实例优先级调整和STP类似,命令不同之处在于MSTP需要加上实例号,即表示对那个实例进行调整;如上述命令表示把实例10的stp优先级设置为0,即实例0的主根桥;把实例20的stp优先级设置为4096,即设置实例20的备用根桥;


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK