华为HCIE R&S笔记-07多实例生成树MSTP

802.1S多实例生成树MSTP:
RSTP和STP都存在了一个缺陷,即由于局域网内所有的VLAN共享一棵生成树,链路被阻塞后将不承载任何流量,造成带宽浪费,因此无法在VLAN间实现数据流量的负载均衡,还有可能造成部分VLAN的报文无法转发。MSTP(Multiple Spanning Tree Protocol)基于实例进行负载分担,解决了RSTP链路带宽浪费的问题。

  1. Region-configuration:
    MSTP为区域化,每一个域为一个region-configuration。
    一个区域的特征包含以下几个方面(全部都要相同)
    ① region name
    ② reivision-level
    ③ Instance
    域名、配置修订号、和实例映射会生成一串哈希值,每台交换机都会交换哈希值,哈希值相同的交换机为一个region-configuration,同一个region-configuration在计算生成树时为一个整体。
  2. Instance:
    实例,MSTP为了实现负载分担的效果,将VLAN放入Instance中,端口的状态基于实例的不同而不同。
    实例内可以包含多个VLAN。通过将多个VLAN映射到同一个实例内,可以节省通信开销和资源占用率。MSTP各个实例拓扑的生成树计算相互独立,通过这些实例可以实现负载均衡。
    注:Instance0为默认实例,所有的VLAN默认存在于Instance0中。
    MSTP配置:
    华为HCIE R&S笔记-07多实例生成树MSTP_第1张图片

LSW1:
[Huawei]STP mode mSTP
[Huawei]STP region-configuration
[Huawei-mst-region]region-name Huawei
[Huawei-mst-region]revision-level 1
[Huawei-mst-region]instance 1 vlan 10 100
[Huawei-mst-region]instance 2 vlan 20 200
[Huawei-mst-region]active region-configuration
[Huawei]STP instance 1 root primary
[Huawei]STP instance 2 root secondary
3. MSTP-BPDU:
(1) Configuration BPDU:
Configuration BPDU中在RSTP的基础上增加了MST Extension协议字段,用于支持对多实例和多配置域的支持,一份Configuration BPDU中包含本交换机所有的Instance映射,当在一个配置与内某台交换机称为某个或多个实例的Root,此时会周期的发送Configuration BPDU,由于一份报文,实际上Root发送的Configuration BPDU包含此交换机所有的实例映射关系
华为HCIE R&S笔记-07多实例生成树MSTP_第2张图片

① Protocol ID:协议ID,该值总为0
② Protocol Version ID:协议版本ID,STP的版本(802.1D为0;802.1W为2;802.1S为3)
③ BPDU Type:BPDU类型,分为两种,配置BPDU为0;TCN BPDU为80
④ FLags:分七个置位符:
TCA:Topology Change Acknowledgment,拓扑变更确认信息
Agreement:PA机制中的Agreement置位符
Forwarding:端口状态“转发”
Learning:端口状态“学习”
状态 Forwarding Learning
Discarding 0 0
Leaning 0 1
Forwarding 1 1

Port Role:端口角色,2bit,可以表示四种角色:
组合数值 含义
00 Unknown
01 Alternate Port/Backup Port
10 Root Port
11 Designated Port
Proposal:PA机制中的proposal置位符
TC:Topology Change,拓扑变更
⑤ Root Identifier:CIST的总根交换机ID
⑥ RPC:Root Path Cost,到CIST Root的开销值,只计算配置域的外部链路开销
⑦ Bridge ID:在MSTP中,此字段用来CIST的域根交换机ID,即IST Master的ID。 如果总
根在这个域内,那么域根交换机ID就是总根交换机ID
⑧ Port ID:端口ID,每经过一个交换机的端口,Port ID变为此端口的ID
⑨ Message Age:配置BPDU在网络中传播的生存期,默认每经过一跳,Message Age+1
⑩ Max Age: Message Age最大老化时间,默认为20S
⑪ Hello time:探测时间,默认为2S
⑫ forward Delay:转发延迟,默认为15S
⑬ Version 1 Length:Version1 BPDU的长度,值固定为0
⑭ Version 3 Length:Version3 BPDU的长度
⑮ MST Configuration Identifier:MST配置标识,表示MST域的标签信息,包含4个字段:
Configuration Identifier Format Selector:固定为0
Configuration Name:“域名”,32字节长字符串
Revision Level:2字节非负整数
Configuration Digest:利用HMAC-MD5算法将域中VLAN和实例的映射关系加密成
16字节的摘要。只有MST Configuration Identifier中的四个字段完全相同的,并且互联的交换机,才属于同一个域
⑯ CIST Internal Root Path Cost:CIST内部路径开销指从本端口到IST Master交换机的累计路
径开销。CIST内部路径开销根据链路带宽计算
CIST Bridge Identifier:CIST本交换机ID
CIST Remaining Hops:BPDU报文在CIST中的剩余跳数
MSTI Configuration Messages:MSTI配置信息。每个MSTI的配置信息占16 bytes
MSTI Flags:MSTI标志
MSTI Regional Root Identifier:MSTI域根交换机ID
MSTI Internal Root Path Cost:MSTI内部路径开销指从本端口到MSTI域根交换机的
累计路径开销。MSTI内部路径开销根据链路带宽计算
MSTI Bridge Priority:本交换机在MSTI中的指定交换机的优先级
MSTI Port Priority:本交换机在MSTI中的指定端口的优先级
MSTI Remaining Hops:BPDU报文在MSTI中的剩余跳数
(2) TC BPDU:
传统STP中,只有根桥才会发送TC置位的configuration BPDU通告下游路由器用来缩短Mac地址表的生存时间。和RSTP一样,MSTP不存在TCN BPDU,一旦交换机发现自己的端口和对端交换机端口链路出现问题后,除了使用PA机制更改端口外,立刻向RP端口和DP端口发送将TC置位的configuration BPDU通告其余交换机,其余交换机收到TC置位的BPDU后,会立刻删除自己的mac表
注:由于从某个端口收到TC置位的BPDU,说明该端口为Forwarding 状态,所以会保留收到configuration BPDU端口对应的MAC地址映射和配置边缘的端口的MAC地址映射。
4. Multi Region-configuration:
当Region-configuration的哈希不同时,此时两台路由器为不同的Region-configuration,Multi Region-configuration存在无法实现负载分担,次优路径的问题
(1)CIST Root:
① IST:
实例0,每个Region-configuration都存在实例0
② CST:
相同的配置域之间互联称为CST
③ CIST:
多个Region-configuration相互连接,为Multi Region-configuration,称为CIST
④ CIST Root:
Multi Region-configuration互联,由于都包含实例0,Multi Region-configuration中实例0中最
小的Root id为CIST Root
(2)Region-configuration Root:
每个Region-configuration都有一个Region-configuration Root,Region-configuration Root为每
个Region-configuration内离CIST Root的cost最小的边缘交换机,CIST Root也是本区域的
Region-configuration Root,Region-configuration Root的作用为Region-configuration内的交
换机访问其他Region-configuration必经的路径交换机
边缘交换机选举规则:
① 到CIST Root区域间干线开销最小的边缘交换机
② Root ID最小的边缘路由器
(3)Mast Port:
当选举出Region-configuration Root后,此时访问Multi Region-configuration时,此Region-configuration Root位本区域的穿越设备,如果Region-configuration Root存在多条链路同时去往CIST Root,此时会选举出一条RP端口作为去往CIST Root最优的端口,这个RP端口对本配置域的其他实例称为Mast Port
Mast Port选举规则:
① CIST根桥标识符
② CIST外部根路径开销
③ CIST域根标识符
④ CIST内部根路径开销
⑤ CIST指定桥标识符
⑥ CIST指定端口标识符
⑦ CIST接收端口标识符
多区域只使用Instance 0进行选举CIST Root,所以Multi Region-configuration为单实例的STP,所以在实际部署中使用单个Region-configuration,负载分担只在同一个Region-configuration内。
(3)Multi Region-configuration选路:
华为HCIE R&S笔记-07多实例生成树MSTP_第3张图片

① 各个配置Region-configuration中基于实例的Bridge ID选举基于Instance的Root:
a)在Region-configuration 1中LSW3为Instance 1的Root,LSW4为Instance 0的Root
b)在Region-configuration 2中LSW1为Instance 10的Root,LSW6为Instance 0的Root
② 选择CIST Root,各台交换机根据BPDU中的Root ID字段选举出CIST Root,最后LSW4为CIST Root
③ 每个Region configuration中根据Region-configuration区域间的链路开销、Root ID选择Region-configuration Root:
a)Region-configuration 1中LSW4为Region-configuration Root
b)Region-configuration 2中LSW5为Region-configuration Root
④ Region-configuration 2中的Region-configuration Root LSW5存在多条等价路径去往Region-configuration 1,根据选路规则选出最好的端口G0/0/1作为Mast Port
⑤ PC2访问PC1,发送数据包给LSW6,LSW6从G0/0/1送给LSW1,LSW1将数据包送给Region-configuration Root LSW5,LSW5的G0/0/1端口为Master端口,LSW5将数据包从G0/0/1端口送到Region-configuration 1中,LSW4接收后传递给LSW3,LSW3传递给CIST Root LSW2,LSW2传递给PC1
五. STP兼容模式:
华为交换机默认STP和RSTP默认兼容模式,当一台运行RSTP的交换机在连续收到两次(4S)传统STP的configuration BPDU后,会自动迁移到传统STP模式进行兼容,但此时会丧失RSTP的优势,当传统STP撤离时,会自动迁移回RSTP。
六. STP保护机制:
STP保护机制分为:
① root protection
② BPDU protection
③ loop-protection
④ TC-protection

  1. Root protection:
    根保护,由于维护人员的错误配置或网络中的恶意攻击,网络中的合法交换机有可能会收到优先级更高的BPDU,使的原来合法根交换机失去根交换机的地位,从而引起网络拓扑的错误变动。这种不合法的拓扑变化,可能会导致原来应该通过高速链路的流量被牵引到低速链路上,造成网络拥塞。对于启用了根保护功能的指定端口,其端口角色不能成为根端口。一段启用了根保护功能的指定端口收到优先级更高的BPDU时,端口将将进入Discarding状态,不在转发报文。在经过一段时间(约为2倍Forward Delay)后,如果端口一直没有在收到优先级更高的BPDU,端口会自动恢复到正常的Forwarding状态。
    在所有指定端口上敲命令:STP root protection
  2. BPDU protection:
    BPDU保护,当边缘端口收到BPDU之后,设备会自动将边缘端口设置为非边缘端口,并重新进行生成树的计算,从而引起网络动荡。配置BPDU保护功能后,如果边缘端口收到BPDU报文,边缘端口将会被立即关闭,并通知网管系统,被关闭的边缘端口通过管理员手动恢复,也可以使用命令error-down auto-recovery cause BPDU-protection interval 30配置30S恢复。
    在全局模式下敲命令:STP BPDU-protection
  3. Loop-protection:
    环路防护,在运行STP的网络中,根端口和其他阻塞端口的状态是依靠上游交换设备不断发来的BPDU进行维持的。当由于链路阻塞或者单向链路故障导致这些端口收不到来自上游交换设备的BPDU时,交换设备就会重新选举根端口。原先的根端口会转变为指定端口,而原先的阻塞端口会迁移到转发状态,从而造成交换网络中可能产生的环路。在启动了环路保护功能后,如果根端口或Alternate端口长时间收不到来自上游的BPDU,则会向网管发送通知消息,如果是根端口则进入Discarding状态,阻塞端口则会一致保持在阻塞状态,并且不会称为DP端口,不转发报文,从而不会再网络中形成环路。直到根端口或Alternate端口收到BPDU后,端口状态才恢复到Forwarding状态。
    在RP端口或AP接口下使用命令: STP loop-protection开启环路保护。
    华为HCIE R&S笔记-07多实例生成树MSTP_第4张图片

在光纤网络中,光纤分为两个接口,一接一收,当SW3可以发送BPDU给SW1,但是由于接收口down掉,收不到SW1的BPDU,此时SW3会认为链路出现故障,于是将原先阻塞状态的G0/0/2变为转发状态,造成一个单向的网络环路。
4. TC-protection:
交换设备在接收到TC BPDU报文后,会执行MAC地址表项和ARP表项的删除操作。如果有人伪造TC BPDU报文恶意攻击交换设备,交换设备会在短时间内收到很多TC BPDU报文,频繁的删除操作会给设备造成很大的负担,给网络的稳定性带来很大的隐患。启用防TC-BPDU报文攻击功能后,可以配置交换设备在单位时间内处理TC BPDU报文的次数。如果在单位时间内,交换设备收到的TC BPDU报文数量大于配置的阀值,交换设备只会处理阀值指定的次数。对于其他超出阀值的TC BPDU报文,定时器到期后设备只会对其统一处理一次。
全局模式下使用命令:STP tc-protection开启防止TC-BPDU保护;
全局模式下使用命令:STP tc-protection threshold 2配置单位时间内(与RSTP Hello时间间隔一致),允许在收到TC-BPDU报文后立即进行地址表项删除操作的最大次数为两次。
5. BPDU-filter:
BPDU过滤,在接口或全局下使用命令stp bpdu-filter default,将不会发送也不会接口BPDU,
可以结合边缘端口一起使用

你可能感兴趣的:(华为HCIE-RS,华为)