计算机网络-MSTP工作原理

前面大致学习了MSTP基础概念与组成,今天来了解MSTP的工作原理。

一、MSTP拓扑计算:

MSTP可以将整个二层网络划分为多个MST域 ,各个域之间 通过计算生成CST ,域内生成IST ,CST和IST构成了整个交换设备网络的CIST。

域内还可以基于实例计算生成多棵生成树,每棵生成树都被称为是一个MSTI。 简单理解就是通过分区域进行计算生成域内和域间的生成树,构成CIST。
CIST MSTP构成

CIST和MSTI都是根据优先级向量来计算的,这些优先级向量信息都包含在MST BPDU中。各交换设备互相交换MST BPDU来生成CIST和MSTI :

  • 参与CIST计算的优先级向量为:{ 根交换设备ID,外部路径开销,域根ID,内部路径开销,指定交换设备ID,指定端口ID,接收端口ID }
  • 参与MSTI计算的优先级向量为:{ 域根ID,内部路径开销,指定交换设备ID,指定端口ID,接收端口ID }

注意:括号中的向量的优先级从左到右依次递减,值越小越优先。

优先级向量说明:

  • 根交换设备ID:根交换设备ID用于选择CIST中的根交换设备。根交换设备ID = Priority(16 bit) + MAC(48 bit)。其中Priority为MSTI0的优先级,示例:32768.4c1f-ccb1-1240
  • 外部路径开销(External Root Path Cost,ERPC):从CIST的域根到达总根的路径开销。MST域内所有交换设备上保存的外部路径开销相同。若CIST根交换设备在域中,则域内所有交换设备上保存的外部路径开销为0。
  • 域根ID:域根ID用于选择MSTI中的域根。域根ID = Priority(16 bit) + MAC(48 bit)。其中Priority为MSTI0的优先级。
  • 内部路径开销(Internal Root Path Cost,IRPC):本桥到达域根的路径开销。域边缘端口保存的内部路径开销大于非域边缘端口保存的内部路径开销。
  • 指定交换设备ID:CIST或MSTI实例的指定交换设备是本桥通往域根的最邻近的上游桥。如果本桥就是总根或域根,则指定交换设备为自己。
  • 指定端口ID:指定交换设备上同本设备上根端口相连的端口。Port ID = Priority(4 bit) + 端口号(12 bit)。端口优先级必须是16的整数倍。示例:128.1
  • 接收端口ID:接收到BPDU报文的端口。Port ID = Priority(4 bit) + 端口号(12 bit)。端口优先级必须是16的整数倍。

二、CIST计算

经过比较MST BPDU消息后,在整个网络中选择一个优先级最高的交换设备作为CIST的树根,即总根。

在每个MST域内,MSTP通过计算生成IST;同时MSTP将每个MST域作为单台交换设备对待,通过计算在MST域间生成CST。CST和IST构成了整个交换设备网络的CIST。
CIST计算

选择一个整个MSTP网络的最优设备作为总根,然后每个域内选择一个域根,构成CIST。

三、MSTI计算

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

MSTI的特点:

  • 每个MSTI独立计算自己的生成树,互不干扰。
  • 每个MSTI的生成树计算方法与STP基本相同。
  • 每个MSTI的生成树可以有不同的根,不同的拓扑。
  • 每个MSTI在自己的生成树内发送BPDU。
  • 每个MSTI的拓扑通过命令配置决定。
  • 每个端口在不同MSTI上的生成树参数可以不同。
  • 每个端口在不同MSTI上的角色、状态可以不同。

根桥和备份根桥:可以通过计算来自动确定生成树的根桥,用户也可以手动配置设备为指定生成树的根桥或备份根桥。

  • 设备在各生成树中的角色互相独立,在作为一棵生成树的根桥或备份根桥的同时,也可以作为其它生成树的根桥或备份根桥;但在同一棵生成树中,一台设备不能既作为根桥,又作为备份根桥。
  • 在一棵生成树中,生效的根桥只有一个;当两台或两台以上的设备被指定为同一棵生成树的根桥时,系统将选择MAC地址最小的设备作为根桥。
  • 可以在每棵生成树中指定多个备份根桥。当根桥出现故障或被关机时,备份根桥可以取代根桥成为指定生成树的根桥;但此时若配置了新的根桥,则备份根桥将不会成为根桥。如果配置了多个备份根桥,则MAC地址最小的备份根桥将成为指定生成树的根桥。

四、MSTP网络数据转发

在运行MSTP协议的网络中,一个VLAN报文将沿着如下路径进行转发:

  • 在MST域内,沿着其对应的MSTI转发。
  • 在MST域间,沿着CST转发。

数据转发1 数据转发2

先从MSTI内部走,然后经过CST骨干路径转发到其他域。

总结:MSTP的工作原理大致是先确定整个MSTP域的总根 ,不同的MSTP域的域根连接总根构成CST ,然后不同的MSTP域内部确定一个无环的内部生成树IST ,选举规则依据优先级向量决定,值越小越优先。在MST域内依据不同创建不同实例并映射VLAN形成MSTI,内部生成树实例。数据转发先在域内沿着IST转发 ,然后域间通过CST转发。

本文由mdnice多平台发布

相关推荐
墨子夕1 天前
新造的人(卷一 烟火人间)
人工智能·程序人生·未来生活
一麻袋土豆灬1 天前
Workbuddy模型名后面那个 0.11x 是什么意思
大数据·程序人生·语言模型·ai编程
可爱系程序猿3 天前
模型推理任务弹出找不到 cublas64_12.dll,CUDA 12 矩阵计算库按安装包核对
程序人生·线性代数·矩阵·电脑
涵美女程序猿3 天前
ChatCut online 剪微服务熔断测试录屏:仪表盘告警、降级日志与恢复时刻怎样对应
程序人生·微服务·云原生·架构·电脑
郝学胜-神的一滴3 天前
Python浏览器自动化:Selenium与Playwright实战对比,网页爬虫&自动操作一站式指南
开发语言·爬虫·python·selenium·程序人生·自动化
郝学胜-神的一滴4 天前
NumPy深度解析|Python数值计算的基石,告别低效for循环
开发语言·人工智能·python·程序人生·numpy·量化投资
Pin_Qing4 天前
同一天,谷歌半价卖旗舰,阶跃翻倍收缓存
大数据·开发语言·人工智能·程序人生·缓存
郝学胜-神的一滴4 天前
金融数据分析实战:从数据清洗到策略回测,Python全链路落地
开发语言·python·程序人生·金融·数据挖掘·数据分析