集团站切换校区

验证码已发送,请查收短信

复制成功
微信号:togogoi
添加微信好友, 详细了解课程
已复制成功,如果自动跳转微信失败,请前往微信添加好友
打开微信
图标

业界新闻

当前位置:首页 > >业界新闻 > >

生成树协议的算法

发布时间: 2022-09-13 15:18:21

生成树协议的算法,我们都知道,在树形结构中,一定是有一个根的。在生成树协议里,也要确定一个根,即一台交换机作为根交换机,我们称为根桥。根桥的作用,就是作为一个生成树形结构的参考点,以决定在环路中哪个端口应该是转发状态,哪个端口应该是阻塞状态。我们以图1为例讲解生成树协议的算法。



图1 生成树协议算法基本图

生成树协议算法的第一步,就是要确定哪台交换机是根桥。确定根桥的算法是比较交换机之间的优先级加MAC地址所得来的值。思科的交换机的优先级可以是0~65535 范围里的值。

但是由于思科的交换机默认的优先级是32768,如果不使用命令改变优先级的话,所有思科的交换机的优先级都是一样的。结果,在确定根桥时,往往是比较根桥的MAC地址,MAC地址最小的交换机就成为根桥。

在图1中,交换机A就是根桥,因为它的MAC地址最小。如果想要人为地让某台交换机成为根桥,那么需要改变交换机的优先级,把交换机的优先级改成1,则该交换机将成为根桥。

交换机A成为根桥,意味着交换机A上的所有端口都成为标志端口(Designated Port),如图2所示。



图2 根桥上的所有端口都是标志端口

在每个网络分段上,距离根桥最近的端口就是标志端口,拥有那个端口的交换机叫做标志交换机,每个网络分段上的流量都会通过标志端口从标志交换机上转发向根桥。所以,根桥的所有端口都是它所连接的网络分段上的标志端口。根桥的所有端口都不能是阻塞状态。

那么,图1中环路的阻塞只能在交换机B或者交换机C上。该阻塞哪个交换机的哪个端口呢?要回答这个问题,首先要弄清楚,这两台交换机上有哪些端口不能被阻塞。请看图3。



图3 到达根桥路径开销最小的端口是根端口

每一台非根桥的交换机,都有一个端口成为根端口。根端口是该交换机上到达根桥路径开销最小的端口,该端口不能被阻塞。

什么是路径开销呢?我们要先了解什么是端口开销。

交换机上的每个端口都有端口开销,它的大小根据端口所连接的介质不同而不同,如表1所示。

表1 各种介质的开销



那么,端口上的路径开销就是到达某个目的设备的路径上一系列端口开销的和。例如,在图3中,所有的链路都是100Mb/s的以太线,那么交换机C上的端口1/1和端口1/2的端口开销都是19,但是端口1/1到达根桥的路径开销是19,而端口1/2到达根桥的路径开销是19,而端口1/2到达根桥的路径开销是38,所以端口1/1是根端口。同理,交换机B的1/1端口是根端口,而1/2端口不是。

如果我们将这个拓扑结构稍做变化,如图4所示,将交换机A与交换机C之间的以太线换成10Mb/s的,那么根端口就不同了。交换机C的1/1端口路径开销就变成了100,而1/2端口的开销还是38,1/2端口变成了根端口。



图4 拓扑结构变化图

我们还是回到图3。现在,只剩下交换机B和交换机C的1/2端口了,在这两个端口中将要阻塞一个端口,到底阻塞谁呢?

两台交换机依然是采取比较MAC地址的办法决定阻塞哪个端口。MAC地址较大的交换机上的1/2端口被阻塞,所以交换机C上的1/2端口被阻塞,交换机B上的1/2端口是转发状态。同时,交换机B的1/2端口也成为标志端口,如图5所示。



图5 生成树协议计算完毕

这样,这个环路的生成树协议就计算完毕了。

但是,这个例子还不包括所有的情况,比如图6 所示的情况:两台交换机用两根100Mb/s的网线相连,交换机A是根端口,交换机B上哪一个是根端口,哪一个端口应该被阻塞呢?



图6 两台交换机组成的环路

由于在图6中,交换机B的两个端口到根桥的路径开销相同,交换机B会把端口ID小的端口作为根端口,而端口ID大的端口被阻塞,如图7所示。



图7 两台交换机组成的环路的根端口选择

从生成树协议的算法我们可以看出,生成树协议是根据交换机的MAC地址及链路上的路径开销等因素来计算应该阻塞哪台交换机的哪个端口的。

上一篇: 交换机之间使用BPDU传递交换机的信息

下一篇: 交换机的默认配置

在线咨询 ×

您好,请问有什么可以帮您?我们将竭诚提供最优质服务!