华为mstp多生成树配置_网络工程师(30):多实例生成树如何计算

多实例生成树MSTP包括域间的外部生成树CST和域内的内部生成树IST,我们通称为CIST。

我们先讨论CST的计算。在CST中,一个MST域看作是一台"交换机",那么在进行CST计算时,这台"交换机"的桥ID是多少呢?

是域根的桥ID。一个MST域中IST的根桥ID,就是该域的桥ID,代表这个域参与CST计算。

如果一个域根的桥ID是所有域根中最优的,那么这个域根叫做CIST总根。CIST总根所在的域,就是CST的根桥。

889d1456b69921a32e8b2481fe6dcb6f.png

CST的BPDU与RSTP的RST BPDU完全相同,只是我们把CST的BPDU中根桥ID看作是CIST总根,RPC改叫ERPC(外部根路径开销,图中蓝色链路的开销),指定桥ID就是每个MST域内域根的桥ID。

理解了这些,CST的计算实际上就是RSTP的计算。

IST的计算稍复杂,我们一会详细分析。

CST和IST的计算是同步完成的,叫做CIST计算。

可是我们发现了一个问题:CST的BPDU是公共的,可是IST的BPDU每个域都不同呀,怎么同步计算呢?

我们刚才说过,CST的BPDU与RSTP的BPDU完全相同,这个BPDU在进入一个MST域时,会添加这个域内的信息,我们把这些信息叫"MST专有字段",主要包括:

域配置信息:域名、修订级别、VLAN映射关系;

IRPC:内部根路径开销,域内其他交换机到达域根的链路开销;

CIST指定桥ID:域内除域根外其他交换机的桥ID。域根的桥ID在CST的BPDU里是指定桥ID,代表一个域参与CST计算。

MSTI配置信息:每一个实例(除实例0外)的生成树信息,包括MSTI域根、MSTI IRPC、MSTI指定桥ID等。

IST计算示意图如下:

3d3de3fb5f9f2d27639ae570a461c75b.png

IST BPDU中包含了CIST的配置信息,共有七项:

CIST总根ID:所有MST域中域根ID最优的;

ERPC:其他域到达CIST总根所在域的链路开销,可以理解为CST"交换机"到达CST根桥的链路开销;

域根ID:MST域内实例0的根桥ID;

IRPC:MST域内其他交换机到达域根的链路开销;

指定桥ID:MST域内除域根外其他交换机的桥ID;

指定端口ID:MST域内交换机发出IST BPDU的端口ID;

接收端口ID:MST域内交换机接收IST BPDU的端口ID。

CST的计算,通过以上前三项信息就可以完成;而IST的计算,每个MST域各不相同,通过以上七项配置信息来完成。

CIST的计算搞清楚了,再来看看MSTI的计算。

简单来说,MSTI是一个域内每个实例(除实例0)的生成树,这棵生成树是独立的,只存在于域内,和其他任何生成树都没有关系。每个MSTI的BPDU寄生在CIST的BPDU内,与CIST同步完成计算。域内交换机收到CIST BPDU后,把本域内各MSTI配置信息加上,就构成了本域的IST BPDU。发给其他域时,再把本域内的MSTI配置信息去掉。

域内每个MSTI的配置信息共有五项:

MSTI域根ID:每个实例(除实例0)的根桥;

IRPC:域内其他交换机到达本实例根桥的链路开销;

指定桥ID:除本实例根桥外其他发送本实例BPDU的交换机桥ID;

指定端口ID:发送本实例BPDU的端口ID;

接收端口ID:接收本实例BPDU的端口ID。

这些配置信息和普通的RSTP BPDU也完全相同,只是有的换了个叫法而已。比如MSTI域根ID,在RSTP中叫根桥ID。

对于MSTP的计算,我们可以总结一下:

首先,CST、IST、各MSTI的计算是同步完成的;

其次,CST是公共生成树,IST是域内实例0的生成树,统一称为CIST;

再次,域内其他手工配置的实例映射到不同的MSTI生成树,是独立的生成树,其内容寄生在CIST内。

下文我们来详细分析MSTP的BPDU报文内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526502.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

url中能出现的字符_python爬虫,解决大众点评字符库反爬机制的经验

刚开始写文章还希望大家可以喜欢,对于爬虫只是个人整理出的方法,爬虫大牛请嘴下留情。“”仅限学术交流,如有冒犯请联系作者删除“”话不多说,想分析天津地区餐饮行业的大致情况,要爬出(商铺名称&#xff0…

上课点名app_【APP种草】网瘾少年的自我救赎之最强锁机软件

相信在这个魔幻的2020,大家都经历了很多个不寻常吧。作为学生党,算是圆梦了在家学习的愿望,可当这一切都变成现实的时候,也还是没逃过点名、没逃过网课,这不,连期末考也又双叕叕地来了。作为一名需要在家完…

qrcode生产带logo_比亚迪换新标?新Logo的含义你了解吗?

对于许多制造业品牌来说,由于时代发展的速度太快,科技的力量进步太快,即便是规模庞大的老牌企业,也需要不断改变自己,以此来适应社会的改变求得生存。这就意味着,无论是什么品牌,都需要定期改变…

超前进位加法器实验报告_干货 | 加法器与反相加法器原理解析

什么是加法器加法器是为了实现加法的,即是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。常用作计算机算术逻辑部件,执行逻辑操作、…

php 支付宝小程序授权登陆验签_星巴克“啡快”登陆支付宝小程序,让你“飞快”取到咖啡...

当代年轻人的生活方式是怎样的?靠地铁通勤,靠咖啡续命早上睁不开眼,咖啡来一杯中午昏昏欲睡,咖啡来一杯晚上熬夜加班,咖啡来一杯喝完这杯,还有一杯“宁可食无肉,不可早无星”是当代年轻人的座右…

python导入同一文件夹下的类_python自定义模块

模块的引入方式:1.import 模块名:导入模块中的所有内容(引入多个用逗号分隔)import random,time2.from 模块名 import 函数名1,函数名2...导入部分模块(导入部分的话直接使用)3.from 模块名 imp…

上河南星海科技_揭秘丨赣江新区网红打卡点,为你按下科技快进键!

人类对科学和未来永无止境的求知欲,是人类社会发展的根本动力之一。整合历史长河中积累的科学文明,探索和体验未来的黑科技,在赣江新区,一座国际创新科技馆在全城翘首中揭开了神秘面纱,一举跃升为赣江新区的网红打卡点…

模糊匹配查询_必须掌握的6个查询函数应用技巧,办公必备,收藏备用!

在Excel中,有一类函数被称为查找和引用函数,今天,小编给大家分享6个查询函数(Choose、Lookup、Hlookup、Vlookup、Match、Index)的应用技巧,可以收藏备用哦!一、Choose。功能:根据序…

共阳极管的代码_共阳极数码管-共阳极数码管显示

共阴极数码管高电平驱动,公共端是负极 共阳极数码管低电平驱动,公共端是正极共阳极七段数码管,如果要显示字母L,则abcdefg七段对应的段应该接电平是答案是:A1110001最低027元/天开通百度文库会员,可在文库查…

python环境介绍_Python介绍以及Python环境搭建

Python介绍以及Python环境搭建1.Python 发展历史Python是由Guido van Rossum在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的,据说是在圣诞节花了一个圣诞节的时间用C语言创造出来的,Python用一部他喜欢的英国喜剧《Mo…

oracle非常量不能用于privot_Oracle 行列转换函数pivot、unpivot的使用(二)

一、行转列pivot关键函数pivot,其用法如下 pivot(聚合函数 for 列名 in(类型))select * from table_name pivot(max(column_name) --行转列后的列的值value,聚合函数是必须要有的for column_name in(value_1,value_2,value_3…

python安装poi第三方库_使用Python获取城市POI数据

1.数据接口:本次使用百度地图开放平台中的地点检索API来获取城市POI数据,此次以矩形区域检索为例。2.获取思路:因为百度出于数据保护目的,单次访问服务最多同时返回400条数据,不过官方也给出了解决方案,即通…

oracle 对两列加唯一性束_oracle中创建unique唯一约束(单列和多列) 。

oracle中的unique约束是用来保证表中的某一类,或者表中的某一类组合起来不重复的一种手段。我们在可以在创建表时或者创建好后通过修改表的方式来创建oracle中的unique约束。下面是一些创建unique约束的例子:create table unique_test(id number,fname varchar2(20)…

foc 电流环解耦_永磁同步电机矢量控制的解耦及电流环的设计

闸的情况下,系统的初始加速度均为LTJ,如此看来,不管如何优化设定系统的参数,能够改变的仅仅是加速度的变化模式及其经历过程的时间长短,而其最大加速度数值是无法改变的。实际系统当然不会这么理想,至少传…

vivoy9s怎么设置返回键_vivoy9s怎么设置返回键 可以使用虚拟导航键

vivoy9s是支持全面屏手势的,若用户想要返回操作的话,主要看用户选择的手势导航方式,一般来说可以通过上滑返回到手机桌面,当然了,若用户不习惯手势导航,可以设置虚拟导航键,这样的话手机屏幕下方…

1万并发服务器配置_小程序后端服务器搭建:云服务器配置(1)

起因最近在搞小程序,有一个留言与图片上传并展示的功能,用小程序自带云服务器也可以实现,但如果与别的端进行多端互动就需要一个服务器来做为后端,进行图片与留言的上传,并把留言内容和上传后的图片地址保存到sql数据库…

cgo的效率 golang_golang CGO FAQ TIPS : cgo 从 C 传递 slice 到 go

cgo 从 C 传递 slice 到 go这里一般会用在c的callback中。需要加一个wrapper,比直接调用go函数中间多了一个转换步骤,但方便了许多。执行流程为,c调用发起 -> c wrapper -> go export.go://export a_function_callbackfunc a_function_…

php 图片印章_php工具型代码之印章抠图

能将白底红字的印章抠出来,用的是php,框架是laravel,其他框架请自行调节。扣其他颜色也可以,把里面的那段rgb参数判断改改就行了,最后抠出来的效果就是白底变透明,然后只留下红色的章,放在其他页…

vb mysql_VB连接MYSQL实例

VB连接MYSQL实例电脑需安装数据库mysql server和mysql connector net相关版本软件。在工程的‘项目’-‘添加引用’中添加引用‘mysql.data’实现代码如下:Imports System.IOImports SystemImports System.DataImports System.Windows.FormsImports MySql.Data.MySq…

c web mysql数据库_C连接Mysql数据库代码

//vc工具中添加E:\WAMP\BIN\MYSQL\MYSQL5.5.8\LIB 路径//在工程设置-》链接》库模块中添加 libmysql.lib#include #include #include #include #include "E:\wamp\bin\mysql\mysql5.5.8\include\mysql.h"void main(){MYSQL *conn;MYSQL_RES *res;MYSQL_ROW row;char …