STP学习的第一篇

1 .STP****的基本概念:根桥

(1)STP的主要作用之一是在整个交换网络中计算出一棵无环的"树"(STP树)。

(2)根桥是一个STP交换网络中的"树根"。

(3)STP开始工作后,会在交换网络中选举一个根桥,根桥是生成树进行拓扑计算的重要"参考点",是STP计算得出的无环拓扑的"树根"。

(4)在STP网络中,桥ID最小的设备会被选举为根桥。

(5)在BID的比较过程中,首先比较桥优先级,优先级的值越小,则越优先,拥有最小优先级值的交换机会成为根桥;如果优先级相等,那么再比较MAC地址,拥有最小MAC地址的交换机会成为根桥。

2.STP的基本概念:Cost

(1)每一个激活了STP的接口都维护着一个Cost值,接口的Cost主要用于计算根路径开销,也就是到达根的开销。

(2)接口的缺省Cost除了与其速率、工作模式有关,还与交换机使用的STP Cost计算方法有关。

(3)接口带宽越大,则Cost值越小。

(4)用户也可以根据需要通过命令调整接口的Cost。

3.STP的基本概念:RPC 根路径开销(Root Path Cost) 根路径开根路径开销(Root Path Cost)销(Root Path Cost**)**

(1)在STP的拓扑计算过程中,一个非常重要的环节就是"丈量"交换机某个接口到根桥的"成本",也即RPC。

(2)一台设备从某个接口到达根桥的RPC等于从根桥到该设备沿途所有入方向接口的Cost累加。

4.STP的基本概念:Port ID

(1)运行STP的交换机使用接口ID来标识每个接口,接口ID主要用于在特定场景下选举指定接口。

(2)接口ID由两部分构成的,高4 bit是接口优先级,低12 bit是接口编号。

(3)激活STP的接口会维护一个缺省的接口优先级,在华为交换机上,该值为128。用户可以根据实际需要,通过命令修改该优先级。

**5.STP****的基本概念:**BPDU

(1)BPDU是STP能够正常工作的根本。BPDU是STP的协议报文。

(2)STP交换机之间会交互BPDU报文,这些BPDU报文携带着一些重要信息,正是基于这些信息,STP才能够顺利工作。

(3)BPDU分为两种类型:配置BPDU(Configuration BPDU)、TCN BPDU(Topology Change Notification BPDU)

(4)配置BPDU是STP进行拓扑计算的关键;TCN BPDU只在网络拓扑发生变更时才会被触发。

6 .配置BPDU的比较原则

STP按照如下顺序选择最优的配置BPDU:

1.最小的根桥ID。2.最小的RPC。3.最小的网桥ID。4.最小的接口ID。备注(第一条原则主要用于在网络中选举根桥,后面的原则主要用于选举根接口及指定接口。)

7.STP的计算过程 (在交换网络中选举一个根桥)

(1)STP在交换网络中开始工作后,每个交换机都会向网络中发送配置BPDU。配置BPDU中包含交换机自己的桥ID。

(2)网络中拥有最小桥ID的交换机成为根桥。

(3)在一个连续的STP交换网络中只会存在一个根桥。

(4)根桥的角色是可抢占的。

(5)为了确保交换网络的稳定,建议提前规划STP组网,并将规划为根桥的交换机的桥优先级设置为最小值0。

7.STP的计算过程 (在每台非根桥上选举一个根接口)

(1)每一台非根桥交换机都会在自己的接口中选举出一个接口。

(2)非根桥交换机上有且只会有一个根接口。

(3)当非根桥交换机有多个接口接入网络中时,根接口是其收到最优配置BPDU的接口。

(4)可以形象地理解为,根接口是每台非根桥上"朝向"根桥的接口。

7.STP的计算过程 (在每条链路上选举一个指定接口)

(1)根接口选举出来后,非根桥会使用其在该接口上收到的最优BPDU进行计算,然后将计算得到的配置BPDU与除了根接口之外的其他所有接口所收到的配置BPDU进行比较:

(2)如果前者更优,则该接口为指定接口;

(3)如果后者更优,则该接口为非指定接口。
一般情况下,根桥的所有接口都是指定接口。
7.STP的计算过程 (非指定接口被阻塞)
(1) 一台交换机上,既不是根接口,又不是指定接口的接口被称为非指定接口。
(2) STP 操作的最后一步是阻塞网络中的非指定接口。这一步完成后,网络中的二层环路就此消除。


• 图中所示为 STP 的端口状态迁移机制,运行 STP 协议的设备上端口状态有 5 种:
▫ Forwarding :转发状态。端口既可转发用户流量也可转发 BPDU 报文,只有根端口或指定端口才能进入 Forwarding 状态。
▫ Learning :学习状态。端口可根据收到的用户流量构建 MAC 地址表,但不转发用户流量。增加 Learning 状态是为了防止临时环路。
▫ Listening :侦听状态。端口可以转发 BPDU 报文,但不能转发用户流量。
▫ Blocking :阻塞状态。端口仅仅能接收并处理 BPDU ,不能转发 BPDU ,也不能转发用户流量。此状态是预备端口的最终状态。
▫ Disabled :禁用状态。端口既不处理和转发 BPDU 报文,也不转发用户流量。
案例 1 STP 的基础配置

SW1 的配置如下:
[czySW1]stp mode stp
[czySW1]stp enable
[czySW1]stp priority 0

SW2的配置如下:

[czySW2]stp mode stp

[czySW2]stp enable

[czySW2]stp priority 4096

SW3的配置如下:

[czySW3]stp mode stp

[czySW3]stp enable

通过配置,将SW1指定为根桥,并使SW3的e0/0/2接口被STP阻塞。

在LSW3上查看stp接口状态摘要

8.STP的不足

(1)STP协议虽然能够解决环路问题,但是由于网络拓扑收敛慢,影响了用户通信质量。如果网络中的拓扑结构频繁变化,网络也会随之频繁失去连通性,从而导致用户通信频繁中断,这是用户无法忍受的。

(2)STP没有细致区分接口状态和接口角色,不利于初学者学习及部署。

(3)网络协议的优劣往往取决于协议是否对各种情况加以细致区分。

从用户角度来讲,Listening、Learning和Blocking状态并没有区别,都同样不转发用户流量。

从使用和配置角度来讲,接口之间最本质的区别并不在于接口状态,而是在于接口扮演的角色。

根接口和指定接口可以都处于Listening状态,也可能都处于Forwarding状态。

(4)STP算法是被动的算法,依赖定时器等待的方式判断拓扑变化,收敛速度慢。

(5)STP算法要求在稳定的拓扑中,根桥主动发出配置BPDU报文,而其他设备进行处理,传遍整个STP网络。这也是导致拓扑收敛慢的主要原因之一。

9.RSTP通过接口角色的增补,简化了生成树协议的理解及部署

10.总结

1、选举根桥,根桥有且只有一个,除此之外都是非根桥;

2、非根桥有且只有一个根端口(到达根桥最近cost);

3、每段链路选举唯一 一个指定端口。

4、既不是根端口也不是指定端口,则会被称为阻塞端口(逻辑关闭);

选举规则:

1、根桥选举:最小的BID,具体看下面;

2、非根桥根端口选举:

2.1 先比较RPC

2.2 比较对端的BID

2.3 比较对端的PID

2.4 比较本端的PID

3、指定端口:

3.1 先比较RPC

3.2 比较发送者的BID

3.3 比较发送者的PID

相关推荐
蜡笔小新星9 分钟前
Python Kivy库学习路线
开发语言·网络·经验分享·python·学习
攸攸太上22 分钟前
JMeter学习
java·后端·学习·jmeter·微服务
Ljubim.te1 小时前
Linux基于CentOS学习【进程状态】【进程优先级】【调度与切换】【进程挂起】【进程饥饿】
linux·学习·centos
yngsqq1 小时前
031集——文本文件按空格分行——C#学习笔记
笔记·学习·c#
zengy52 小时前
Effective C++中文版学习记录(三)
数据结构·c++·学习·stl
cyt涛2 小时前
MyBatis 学习总结
数据库·sql·学习·mysql·mybatis·jdbc·lombok
Willliam_william2 小时前
SystemC学习(1)— SystemC安装与HelloWorld
学习
sealaugh322 小时前
aws(学习笔记第一课) AWS CLI,创建ec2 server以及drawio进行aws画图
笔记·学习·aws
布丁不叮早起枣祈2 小时前
10.5学习
学习
向上的车轮2 小时前
Django学习笔记五:templates使用详解
笔记·学习·django