MSTP(多生成树协议)技术

时间:2024-10-06 07:04:39

一、为什么需要MSTP技术?

STP和RSTP上所有的vlan都公用一棵生成树,另外的被阻塞的端口不承载任何流量,导致整体的利用率不高。

二、MSTP相关概念?

1、MSTP的定义

MSTP----Multiple Spanning Tree  多生成树协议

基于实例计算出多棵生成树,实例之间实现负载分担

MSTP的协议标准为IEEE802.1s

2、MST域

拥有相同MST配置标识的网桥构成的集合。

3、CST、IST、CIST、总根和域根

IST:叫作内部生成树,下图中的四个浅橘色方框,每一个方框是一个域,可以将整个方框看作一台交换机

CST:叫作外部生成树,下图中绿色的线,用于连接各个IST;CST有且仅有一个,因为CST是依据实例0的生成图生成的,而实例0是默认的,是标准的STP

CIST:叫作公共内外生成树,由CST和IST组成

域根:每个IST中的root 根,ID最小的交换机

总根:CIST中根据STP算出来的root根

4、MSTI和MSTI域根

MSTI:多生成树实例

MSTI域根:MSTI中的root(MSTI中优先级最高的交换机)

5、端口角色

master端口

IST根桥在CIST上的根端口,即域根上连接CIST的端口

其他端口角色

如DP、RP等与RSTP中的一样

三、MSTP的工作原理

必须掌握的相关知识点

1、MSTP的BPDU报文格式

MST是CST的优先级,只有一个,因为CST只有一个

MSTI是IST中实例的优先级,IST中有几个实例,就有几个MSTI的配置信息

2、CIST的优先级向量

比较原则:最小优先

比较次序:首先是CIST总根ID(root id)-->比较CIST外部路径开销(erpc)-->比较CIST域根ID(rrootid)-->比较CIST内部路径开销(irpc)-->比较指定桥id(designate bridge id)-->比较CIST指定端口id(designate port id)-->最后比较接收端口id(rcv port id)

3、MSTI的优先级向量

比较原则:最小优先

比较次序:首先MSTI域根id(rrootid)-->MSTI内部路径开销(irpc)-->MSTI指定桥id(designate bridge id)-->MSTI指定端口id(designate port id)-->最后MSTI接收端口id(rcv port id)

4、MSTP计算方法

CST/IST计算和RSTP类似

MSTI的计算仅限于区域内(多生成树实例在区域内)

MSTI计算参数包含在IST BPDU中,和IST的计算同步完成

MSTP工作原理

1、计算CST

将每个IST看作一台交换机,像STP中计算生成树方法一样计算CST

2、计算IST

每个IST域像STP计算生成树一样计算

3、计算MSTI

Region 1

Region 2

其他同理计算

4、MSTP计算结果

5、MSTP计算分析

hostA通过vlan2访问hostB,域中有vlan2则走vlan2路线,没有则走vlan other to ist路线

MSTP的P/A机制

上游桥发送的proposal bpdu中,P标志位和A标志位都置位;

下游收到P标志位和A标志位都置位的proposal bpdu,在将端口同步后会回应agreement bpdu,使得上游的指定端口快速进入转发状态。

四、MSTP兼容性

1、MSTP和RSTP的互操作

RSTP桥将MSTP域看作一个桥ID为域根ID的RSTP桥;

实例0就是标准的RSTP,MSTP使用实例0与STP/RSTP对接。

2、MSTP工作模式

[SWA]stp mode stp

[SWA]stp mode rstp  #默认打开是STP模式,将前面的模式改为后面的模式

[SWA]stp mode mstp

[SWA]stp mcheck  #将端口手动迁移到rstp/mstp

工作模式 描述
STP 只能和STP交换机交互,只能在端口上收发配置BPDU
RSTP 运行RSTP,如果检测到端口相邻的交换机运行在STP模式下,则运行STP
MSTP 运行MSTP,如果检测到端口相邻的交换机运行在RSTP/STP模式下,则运行RSTP/STP

五、保护机制

1、BPDU保护机制

边缘端口受到攻击(如果一个边缘端口接受到配置信息,将从边缘端口转换成非边缘端口,从而导致生成树重新计算)。

启动了BPDU保护功能后,如果边缘端口收到了配置消息,MSTP就将这些端口关闭。

[H3C] stp bpdu-protection

2、根桥保护机制

根桥的错误切换(合法根桥收到优先级更高的配置信息,失去根桥地位,引起网络拓扑接口变动)。

对于设置了根保护功能的端口,一旦该端口收到某实例优先级更高的配置信息,立即将还实例端口设置为侦听状态,不再转发报文。

[H3C] stp root-protection

3、环路保护机制

由于链路拥塞或者单向链路故障,端口会收不到上游设备的BPDU报文,此时下游设备从新选择端口角色,会导致环路的产生。

配置了环路保护的端口,当接收不到上游设备发送的BPDU报文时,环路保护生效。如果该端口参与了STP计算,则不论其角色如何,该端口在所有实例都将处于discarding状态。

[H3C-Ethernet1/0/1] stp loop-protection

[H3C-Ethernet1/0/2] stp loop-protection

4、TC保护机制

在有伪造的TC-BPDU报文而已攻击设备时,设备短时间内会收到大量的TC-BPDU报文,频繁的删除操作会给设备带来很大的负担,给网络的稳定性带来很大的隐患。

设置设备在收到TC-BPDU报文后10S内,进行地址表项删除操作的最多次数;

监控在该时间段内收到的TC-BPDU报文数是否大于门限值。

如有错误,欢迎批评指正!!!