实验目的

  1. 理解生成树协议的基本原理及其在二层网络中的作用

  2. 掌握华为MSTP协议的工作原理与优势

  3. 学习华为交换机MSTP的基本配置方法

  4. 掌握MSTP域、实例和VLAN映射的配置

实验背景

某公司财务部和销售部的PC通过两台核心交换机实现互联。为提高网络的可靠性和可用性,网络管理员部署了冗余链路,以防止单点故障导致业务中断。然而,物理上的冗余链路带来了二层环路风险,可能引发广播风暴、MAC地址表震荡等问题。为解决此问题,需要在交换机上部署多生成树协议(MSTP),在消除环路的同时,实现部门间流量的负载分担

技术原理:

多生成树协议(MSTP):在RSTP的基础上,通过将多个VLAN映射到不同的生成树实例,实现不同VLAN流量的负载分担。MSTP既保持了RSTP的快速收敛特性,又能够通过多个生成树实例优化网络流量路径,提高链路利用率。

协议版本:STP(生成树协议)、RSTP(快速生成树协议)、MSTP(多生成树协议)。

MSTP核心组件

MST域(MST Region):一组具有相同MST配置的交换机构成的区域,域内包含三个关键参数:域名(Region Name)、修订级别(Revision Level)、VLAN到生成树实例的映射表(VLAN-to-Instance Mapping Table),这三个参数必须在域内所有交换机上保持一致。

生成树实例

  • CIST(公共和内部生成树,实例0):连接整个交换网络的单一生成树,所有未明确映射的VLAN默认属于CIST,负责选举总根桥和连接不同MST域

  • MSTI(多生成树实例,实例1-4094):用户定义的生成树实例,每个实例独立计算拓扑,实现不同VLAN的路径优化

生成树算法(STA)在MSTP中的扩展

选举总根桥(CIST Root):在整个网络范围内选举桥ID最小的交换机作为总根桥

选举域根桥(MSTI Regional Root):在每个MST实例中选举域根桥,不同实例可以有不同的域根桥

计算到域根桥的最佳路径:基于端口开销、桥ID和端口ID确定每个实例中的最优路径

MSTP端口角色:在RSTP的基础上,MSTP增加了以下端口角色:

  • 主端口(Master Port):连接MST域到总根桥的端口,位于域边界

  • 域边界端口:连接不同MST域的端口

  • 内部端口:MST域内部的端口

MSTP端口状态:继承了RSTP的快速状态转换机制,包含三种状态:

  • 丢弃(Discarding):不学习MAC地址,不转发用户数据帧,只处理BPDU报文

  • 学习(Learning):学习MAC地址,构建MAC地址表,但不转发用户数据帧

  • 转发(Forwarding):正常学习和转发用户数据帧

MSTP收敛机制:当网络拓扑发生变化时,MSTP可以实现小于1秒的快速收敛,具体机制包括:

  • 提议/同意机制(Proposal/Agreement):通过P/A机制快速将指定端口转换为转发状态

  • 快速端口角色转换:替代端口(Alternate Port)和备份端口(Backup Port)可直接转换为根端口或指定端口

  • 拓扑变化机制优化:只在域边界传播拓扑变化通知,减少影响范围

MSTP负载分担原理:通过将不同VLAN映射到不同的MST实例,每个实例独立计算生成树,使得不同VLAN流量可以沿着不同的最优路径转发,实现链路负载分担。在本次实验中,财务部VLAN 10映射到实例1,销售部VLAN 20映射到实例2,两个部门的流量将沿着不同的最优路径传输。

实验设备:S5700 2台;PC 4台;直通线;交叉线。

实验步骤

步骤1:按拓扑图搭建网络,并为交换机提供冗余链路
按实验拓扑连接两台华为交换机SW1和SW2,配置交换机间的物理链路,创建冗余连接。

步骤2:基础VLAN与接口配置
在SW1和SW2上创建VLAN并配置接入端口。

# SW1配置
system-view
sysname SW1
vlan batch 10 20
interface GigabitEthernet 0/0/1
 port link-type access
 port default vlan 10
interface GigabitEthernet 0/0/2
 port link-type access
 port default vlan 20

# SW2配置
system-view
sysname SW2
vlan batch 10 20
interface GigabitEthernet 0/0/1
 port link-type access
 port default vlan 10
interface GigabitEthernet 0/0/2
 port link-type access
 port default vlan 20

步骤3:配置Trunk互联端口
将两台交换机之间的互联端口配置为Trunk模式。

# SW1配置
interface GigabitEthernet 0/0/23
 port link-type trunk
 port trunk allow-pass vlan all
interface GigabitEthernet 0/0/24
 port link-type trunk
 port trunk allow-pass vlan all

# SW2配置
interface GigabitEthernet 0/0/23
 port link-type trunk
 port trunk allow-pass vlan all
interface GigabitEthernet 0/0/24
 port link-type trunk
 port trunk allow-pass vlan all

步骤4:全局启用MSTP
华为交换机默认情况下STP是启用的,需要配置为MSTP模式。

# SW1和SW2上都执行
stp mode mstp
stp enable

步骤5:配置MST域参数
在所有交换机上配置相同的MST域参数。通过交换机之间传送MST BPDU报文,选举总根桥、域根桥、根端口等,确定每个MST实例中端口的转发状态。

# SW1配置MST域
stp region-configuration
 region-name TEST_LAB
 revision-level 1
 instance 1 vlan 10
 instance 2 vlan 20
 active region-configuration

# SW2配置MST域(必须与SW1完全一致)
stp region-configuration
 region-name TEST_LAB
 revision-level 1
 instance 1 vlan 10
 instance 2 vlan 20
 active region-configuration

步骤6:配置MSTP实例优先级
通过为不同实例设置不同的根桥,实现不同VLAN流量的负载分担。

# SW1配置
stp instance 1 root primary
stp instance 2 root secondary

# SW2配置
stp instance 2 root primary
stp instance 1 root secondary

注意: 只有当两台交换机都配置完MSTP后,再将交换机连接起来。如果先连线再配置会造成广播风暴,影响交换机的正常工作。

步骤7:查看交换机生成树协议配置

# 查看MSTP摘要信息
display stp brief

# 查看详细MSTP信息
display stp

# 查看MST域配置
display stp region-configuration

步骤8:测试
当主链路处于down状态时,MSTP能够自动地切换到备份链路,保证数据的正常转发。

# 测试步骤:
# 1. 断开SW1的GigabitEthernet 0/0/23端口
interface GigabitEthernet 0/0/23
 shutdown

# 2. 查看MSTP状态变化
display stp brief

# 3. 测试连通性
# 使用PC测试VLAN 10和VLAN 20的通信

# 4. 恢复链路
interface GigabitEthernet 0/0/23
 undo shutdown

# 5. 观察收敛过程
display stp brief
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐