vlan配置实例详解_【精品网络干货】二层MSTP防环技术详解

c141c7f599d78f74fa9eb4e8b51d298b.png

7e67ef39e75374c073005dc6a613c2e3.png

一、MSTP 出现的背景:

RSTP 在 STP 基础上进行了改进,实现了网络拓扑快速收敛。但 RSTP 和 STP 还存在同一个缺陷:由于局域网内所有的 VLAN 共享一棵生成树,因此无法在 VLAN 间实现数据流量的负载均衡,链路被阻塞后将不承载任何流量,造成带宽浪费,还有可能造成部分 VLAN 的报文无法转发。

为了弥补 STP 和 RSTP 的缺陷, IEEE 于 2002 年发布的 802.1S 标准定义了 MSTP。 MSTP 兼容 STP和 RSTP,既可以快速收敛,又提供了数据转发的多个冗余路径,在数据转发过程中实现 VLAN 数据的负载均衡。


通过 MSTP 把一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼此独立。每棵生成树叫做一个多生成树实例 MSTI(Multiple Spanning Tree Instance),每个域叫做一个 MST域(MST Region: Multiple Spanning Tree Region)。

说明:
所谓实例就是多个 VLAN 的一个集合。通过将多个 VLAN 捆绑到一个实例,可以节省通信开销和资源占用率。 MSTP 各个实例拓扑的计算相互独立,在这些实例上可以实现负载均衡。可以把多个相同拓扑结构的 VLAN 映射到一个实例里,这些 VLAN 在端口上的转发状态取决于端口在对应MSTP 实例的状态。

MSTP 通过设置 VLAN 映射表(即 VLAN 和 MSTI 的对应关系表),把 VLAN 和MSTI 联系起来。每个 VLAN 只能对应一个 MSTI,即同一 VLAN 的数据只能在一个 MSTI 中传输,而一个 MSTI 可能对应多个 VLAN。

二、MSTP 基本概念

1、MSTP 的网络层次

如图所示, MSTP 网络中包含 1 个或多个 MST 域(MST Region),每个 MST Region 中包含一个或多个 MSTI。组成 MSTI 的是运行 STP/RSTP/MSTP 的交换设备, MSTI 是所有运行STP/RSTP/MSTP 的交换设备经 MSTP 协议计算后形成的树状网络。

86a8be5f12ece01b1a4f6646872964ad.png

2、MST 域(MST Region)

MST 域是多生成树域(Multiple Spanning Tree Region),由交换网络中的多台交换设备以及它们之间的网段所构成。同一个 MST 域的设备具有下列特点:
都启动了 MSTP。
具有相同的域名。
具有相同的 VLAN 到生成树实例映射配置。
具有相同的 MSTP 修订级别配置。
一个局域网可以存在多个 MST 域,各 MST 域之间在物理上直接或间接相连。用户可以通过 MSTP配置命令把多台交换设备划分在同一个 MST 域内。

如图所示的 MST Region D0 中由交换设备 S1、 S2、 S3 和 S4 构成,域中有 3 个 MSTI。

8156e4cd3997f62ce3a65ad54d44bab0.png

3、VLAN 映射表

VLAN 映射表是 MST 域的属性,它描述了 VLAN 和 MSTI 之间的映射关系。
如上图所示, MST 域 D0 的 VLAN 映射表是:
VLAN1 映射到 MSTI1
VLAN2 和 VLAN3 映射到 MSTI2
其余 VLAN 映射到 MSTI0

4、域根

域根(Regional Root)分为 IST(Internal Spanning Tree)域根和 MSTI 域根。
IST 生成树中距离总根(CIST Root)最近的交换设备是 IST 域根
一个 MST 域内可以生成多棵生成树,每棵生成树都称为一个 MSTI。 MSTI 域根是每个多生成树实例的树根。如图所示,域中不同的 MSTI 有各自的域根

2ff5b4205567990bcb023690e64b4f7a.png

MSTI 之间彼此独立, MSTI 可以与一个或者多个 VLAN 对应。 但一个 VLAN 只能与一个 MSTI 对应。

5、主桥

主桥(Master Bridge)也就是 IST Master,它是域内距离总根最近的交换设备。
如果总根在 MST 域中,则总根为该域的主桥。

6、总根

总根是 CIST(Common and Internal Spanning Tree)的根桥,如下图总根是区域 A0 中的某台设备。

cdfe31802145233798a06c03d004f64e.png

7、CST

公共生成树 CST(Common Spanning Tree)是连接交换网络内所有 MST 域的一棵生成树。
如果把每个 MST 域看作是一个节点, CST 就是这些节点通过 STP 或 RSTP 协议计算生成的一棵生成树。
如上图所示,较粗的线条连接各个域构成 CST。

8、IST
内部生成树 IST(Internal Spanning Tree)是各 MST 域内的一棵生成树。
IST 是一个特殊的 MSTI, MSTI 的 ID 为 0,通常称为 MSTI0。
IST 是 CIST 在 MST 域中的一个片段。
如上图所示,较细的线条在域中连接该域的所有交换设备构成 IST。

9、SST
构成单生成树 SST(Single Spanning Tree)有两种情况:
运行 STP 或 RSTP 的交换设备只能属于一个生成树。

MST 域中只有一个交换设备,这个交换设备构成单生成树。
如上图所示, B0 中的交换设备就是一棵单生成树。

10、端口角色

MSTP 在 RSTP 的基础上新增了 2 种端口, MSTP 的端口角色共有 7 种:根端口、指定端口、 Alternate端口、 Backup 端口、边缘端口、 Master 端口和域边缘端口。
根端口、指定端口、 Alternate 端口、 Backup 端口和边缘端口的作用同 RSTP 协议中定义, MSTP中定义的所有端口角色如表所示。

根端口

在非根桥上,离根桥最近的端口是本交换设备的根端口。根交换设备没有根端口。根端口负责向树根方向转发数据。

指定端口

对一台交换设备而言,它的指定端口是向下游交换设备转发 BPDU 报文的端口

Alternate 端

从配置 BPDU 报文发送角度来看, Alternate 端口就是由于学习到其它网桥发送的配置 BPDU 报文而阻塞的端口。
从用户流量角度来看, Alternate 端口提供了从指定桥到根的另一条可切换路径,作为根端口的备份端口。

Backup 端

从配置 BPDU 报文发送角度来看, Backup 端口就是由于学习到自己发送的配置BPDU 报文而阻塞的端口。
从用户流量角度来看, Backup 端口作为指定端口的备份,提供了另外一条从根节点到叶节点的备份通路。

Master端口

Master 端口是 MST 域和总根相连的所有路径中最短路径上的端口,它是交换设备上连接 MST 域到总根的端口。
Master 端口是域中的报文去往总根的必经之路。
Master 端口是特殊域边缘端口, Master 端口在 CIST 上的角色是 Root Port,在其它各实例上的角色都是 Master 端口。

域 边 缘 端

域边缘端口是指位于 MST 域的边缘并连接其它 MST 域或 SST 的端口。进行 MSTP 计算时,域边缘端口在 MSTI 上的角色和 CIST 实例的角色保持一致。即如果边缘端口在 CIST 实例上的角色是 Master 端口(域和总根相连的所有路径中最短路径上的端口),则它在域内所有 MSTI 上的角色也是 Master 端口。

边缘端口

如果指定端口位于整个域的边缘,不再与任何交换设备连接,这种端口叫做边缘端口。
边缘端口一般与用户终端设备直接连接。

说明:
除边缘端口外,其他端口角色都参与 MSTP 的计算过程。
同一端口在不同的生成树实例中可以担任不同的角色。

MSTP 的端口状态

f97480a7b91d8613317ec94fba4d73d9.png

端口状态和端口角色对应表

9e082d9e232bec57ea987e912f090666.png

说明:
Yes:表示端口支持的状态。
No:表示端口不支持的状态。

三、MSTP 报文

MSTP 使用多生成树桥协议数据单元 MST BPDU(Multiple Spanning Tree Bridge Protocol Data Unit)作为生成树计算的依据。 MST BPDU 报文用来计算生成树的拓扑、维护网络拓扑以及传达拓扑变化记录。
STP 中定义的配置 BPDU、 RSTP 中定义的 RST BPDU、 MSTP 中定义的 MST BPDU 及 TCN BPDU差异对比如表所示。

db1afbb55ed75db855c2d7451e929ff0.png

MSTP 报文格式

6edd666e0ff78e02ef3f809edab4f4c0.png

无论是域内的 MST BPDU 还是域间的,前 36 个字节和 RST BPDU 相同。
从第 37 个字节开始是 MSTP 专有字段。最后的 MSTI 配置信息字段由若干 MSTI 配置信息组连缀而成。

350782669ff4fafd9cf91a0afa41ad85.png

45d7ee1ba7f5f8b7ad97ecf5eafa475e.png

7f2e181eb9b33911de53fe64aa7fbfb7.png

MSTP 报文格式可配置:

目前 MSTP 的 BPDU 报文存在两种格式:
dot1s: IEEE802.1s 规定的报文格式。
legacy:私有协议报文格式。
如果端口收发报文格式为默认支持 dot1s 或者 legacy,这样就存在一个缺点:需要人工识别对端的BPDU 报文格式,然后手工配置命令来决定支持哪种格式。人工识别报文格式比较困难,且一旦配置错误,就有可能导致 MSTP 计算错误,出现环路。
华为采用的端口收发 MSTP 报文格式可配置(stp compliance)功能,能够实现对 BPDU报文格式的自适应:
auto
dot1s

legacy
这样报文收发不但支持 dot1s 和 legacy 格式,还能通过 auto 方式根据收到的 BPDU 报文格式自动切换端口支持的 BPDU 报文格式,使报文格式与对端匹配。在自适应的情况下,端口初始支持 dot1s格式,收到报文后,格式则和收到的报文格式保持一致。

每个 Hello Time 时间内端口最多能发送 BPDU 的报文数可配置。

Hello Time 用于生成树协议定时发送配置消息维护生成树的稳定。如果交换设备在一段时间内没有收到 BPDU 报文,则会由于消息超时而对生成树进行重新计算。
当交换设备成为根交换设备时,该交换设备会按照该设置值为时间间隔发送 BPDU 报文。非根交换设备采用根交换设备所设置的 Hello Time 时间值。
华为数据通信设备提供的每个 Hello Time 时间内端口最多能够发送的 BPDU 报文个数可配置(Max Transmitted BPDU Number in Hello Time is Configurable)功能,可以设定当前端口在 Hello Time 时间内配置 BPDU 的最大发送数目。用户配置的数值越大,表示每 Hello Time 时间内发送的报文数越多。适当的设置该值可以限制端口每 Hello Time 时间内能发送的 BPDU 数目,防止在网络拓扑动荡时, BPDU 占用过多的带宽资源

四、MSTP 拓扑计算

1、MSTP 的基本原理
MSTP 将整个二层网络划分为多个 MST 域,各个域之间通过计算生成 CST。域内则通过计算生成多棵生成树,每棵生成树都被称为是一个多生成树实例。其中实例 0 被称为 IST,其他的多生成树实例为 MSTI。 MSTP 同 STP 一样,使用配置消息进行生成树的计算,只是配置消息中携带的是设备上 MSTP 的配置信息。

2、优先级向量

MSTI 和 CIST 都是根据优先级向量来计算的,这些优先级向量信息都包含在 MST BPDU 中。各交换设备互相交换 MST BPDU 来生成 MSTI 和 CIST。
参与 CIST 计算的优先级向量为:
{ 根交换设备 ID,外部路径开销,域根 ID,内部路径开销,指定交换设备 ID,指定端口 ID,接收端口 ID }
参与 MSTI 计算的优先级向量为:
{ 域根 ID,内部路径开销,指定交换设备 ID,指定端口 ID,接收端口 ID }
括号中的向量的优先级从左到右依次递减。

4e90c3c4e4826f8ff8b51aabbbbe501a.png

1885ea8323176391ae5c958a9e0811dd.png

比较原则
同一向量比较,值最小的向量具有最高优先级。
优先级向量比较原则如下。
1. 首先,比较根交换设备 ID。
2. 如果根交换设备 ID 相同,再比较外部路径开销。
3. 如果外部路径开销相同,再比较域根 ID。
4. 如果域根 ID 仍然相同,再比较内部路径开销。
5. 如果内部路径仍然相同,再比较指定交换设备 ID。
6. 如果指定交换设备 ID 仍然相同,再比较指定端口 ID。
7. 如果指定端口 ID 还相同,再比较接收端口 ID。

如果端口接收到的 BPDU 内包含的配置消息优于端口上保存的配置消息,则端口上原来保存的配置消息被新收到的配置消息替代。端口同时更新交换设备保存的全局配置消息。反之,新收到的 BPDU 被丢弃。

3、CIST 的计算

经过比较配置消息后,在整个网络中选择一个优先级最高的交换设备作为 CIST 的树根。在每个MST 域内 MSTP 通过计算生成 IST;同时 MSTP 将每个 MST 域作为单台交换设备对待,通过计算在 MST 域间生成 CST。 CST 和 IST 构成了整个交换设备网络的 CIST。

4、MSTI 的计算
在 MST 域内, MSTP 根据 VLAN 和生成树实例的映射关系,针对不同的 VLAN 生成不同的生成树实例。每棵生成树独立进行计算,计算过程与 STP 计算生成树的过程类似,请参见 STP 拓扑计算。

MSTI 的特点:
每个 MSTI 独立计算自己的生成树,互不干扰。
每个 MSTI 的生成树计算方法与 STP 基本相同。
每个 MSTI 的生成树可以有不同的根,不同的拓扑。
每个 MSTI 在自己的生成树内发送 BPDU。
每个 MSTI 的拓扑通过命令配置决定。
每个端口在不同 MSTI 上的生成树参数可以不同。
每个端口在不同 MSTI 上的角色、状态可以不同。
在运行 MSTP 协议的网络中,一个 VLAN 报文将沿着如下路径进行转发:
在 MST 域内,沿着其对应的 MSTI 转发。
在 MST 域间,沿着 CST 转发。

5、MSTP 对拓扑变化的处理
MSTP 拓扑变化处理与 RSTP 拓扑变化处理过程类似,请参见 RSTP 技术细节中的 RSTP 拓扑变化处理。

五、MSTP 快速收敛机制

MSTP 支持普通方式和增强方式两种 P/A(Proposal/Agreement)机制:
普通方式
MSTP 支持普通方式的 P/A 机制实现与 RSTP 支持的 P/A 机制实现相同

增强方式

72610c12df406250e149b525e2011f5b.png

如图所示,在 MSTP 中, P/A 机制工作过程如下:
1. 上游设备发送 Proposal 报文,请求进行快速迁移。下游设备接收到后,把与上游设备相连的端口设置为根端口,并阻塞所有非边缘端口。
2. 上游设备继续发送 Agreement 报文。下游设备接收到后,根端口转为 Forwarding 状态。
3. 下游设备回应 Agreement 报文。上游设备接收到后,把与下游设备相连的端口设置为指定端口,指定端口进入 Forwarding 状态。

缺省情况下,华为数据通信设备使用增强的快速迁移机制。如果华为数据通信设备和其他制造商的设备进行互通,而其他制造商的设备 P/A 机制使用普通的快速迁移机制,此时,可在华为数据通信设备上通过设置 P/A 机制为普通的快速迁移机制,从而实现华为数据通信设备和其他制造商的设备进行互通。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值