前言
上一篇文章我们介绍了stp的起源和一些相关术语,接下来我们就正式开始介绍stp的工作原理与配置,配置说实话很简单,但是stp难就难在它的思想,理解stp思想才是关键。
一、stp工作原理
运行stp服务的设备彼此之间可以交互各自的设备相关信息(BPDU)从而发现网络中的环路,并通过一系列计算阻塞其中一个端口从而达到破除环路的目的,最开始未被阻塞端口假如损坏的话,被阻塞端口就会重新运行,有点像链路备份的意思。
二、stp计算过程/工作步骤
-
选举根桥(比桥id)
-
选举根端口(比较RPC,对端桥ID,对端端口ID)每一台非根桥上都有且只有一个根端口
-
选举指定端口(比较RPC,链路对端桥ID,链路对端端口ID)每条链路上有且只有一个指定端口
-
选举预备端口 不是根端口也不是指定端口的就是预备端口(阻塞端口)
-
stp完成
-
1、比root
-
2、cost(根发送bpdu入口方向的cost值)
-
3、比桥id
-
4、比portid
1.选举根桥
stp在交换网络中最开始工作后,每个交换机都认为自己是根桥,所以都对外发送配置BPDU,但是互相比较后选择出拥有最小桥ID的交换机作为根桥(也就是先比较优先级后比较mac地址 桥id=优先级+mac地址)。
2.选举根端口
在非根桥交换机上选择一个距离根桥最近的端口作为根端口(一个非根桥设备上最多只能有一个根端口,根桥上当然是一个都没有 哈哈),用来接收根桥不断发送的BPDU。
作用:保证了交换机与根桥之间只有唯一确定且是最优的一条工作路径。
根端口比较过程:首先比较路径上的Cost值,cost相同的话比较对端的桥ID,对端桥ID如果还相同的就比较对端的端口ID(PID),对端端口如果还相同的话(接在hub上 几乎绝迹,理论存在)就比较自己的PID(都是越小越优先)。
小窍门:一般和根桥相对的端口就是根端口,因为一般情况下它距离根端口最近嘛
3.选举指定端口
因为一般一台交换机上可能接入多个设备,所以必须选举出一个固定的接受BPDU的端口(根端口),以及一个固定的向其他交换机发送BPDU信息的端口(指定端口),每一条链路只有一个指定端口发送BODU信息即可,一般根桥上都是指定端口。
指定端口比较过程:先比较RPC,相同的话比较链路两端的桥ID,还相同的比较链路两边的端口ID(都是越小越优先)。
4.确立阻塞端口
我们在stp网络中确立了根端口和指定端口后,交换机上剩余的所有非根端口和指定端口都为预备端口(阻塞端口),stp会对这些预备端口进行逻辑上的阻塞,使这些端口不能转发用户数据帧,当stp拓扑网络中产生了阻塞端口后,stp网络内也就没有了环路
三、例题:
- 解析
- 如图所示,首先选出根桥,4台交换机的桥优先级相同。 然后比较桥的MAC地址,MAC地址最小的优先。 最后,SW1被选为根桥。
- 因此,SW2的GEO/0/1是根端口,SW3的GEO/0/2也是根端口。 SW4两端的ORPCS是一样的。 然后比较GO/0/1对应的SW2 BID与GO/0/2 SW4的GEO/0/1端口为根端口; SW4的GEO/0/1端口是根端口; SW4的GEO/0/1端口是根端口。
- SW1是根桥,所以SW1上的GEO/0/0和GEO/0/1端口是指定端口。 SW2的GEO/0/2端口收到SW4的配置BPDU(不太李姐)。 SW2的GEO/0/2端口的BID比SW4好,所以SW2的GEO/0/2端口是指定端口。
- 最后一个非根端口,即SW4的GEO/0/2端口(非指定端口),为预备端口
四、stp基础配置
1.配置生成树模式
[huawei]stp mode {stp | rstp |mstp }
2.配置根桥(非)
[huawei]stp root primary
3.配置根桥(非)
[huawi]stp root sencondary //默认没有备份根桥,配置后优先级默认为4096,且无法更改
4.配置交换机的stp优先级(非)
[huawei]stp piority priority //默认优先级为32768
5.配置当前接口路径开销(非)、
[huawei-g 0/0/0]stp cost [cost值]
6.配置接口优先级pid
[huawei-g 0/0/0]stp priority [优先级数值] //默认为128
7.启动stp/rstp/mstp
[huawei]stp enable //默认是启动状态