首页 > 技术文章 > stp知识点

haoniubi 2021-12-22 16:52 原文

STP 生成树协议

工作原理:

在冗余的环境中,首先确定网络中的最优路径和次优路径,通过阻塞次优路径来消除链路中可能出现的环路,并实时监测链路状态;当最优路径出现故障时,通过激活次优路径来使网络恢复连通性。

stp中的各种参数:

PID(协议ID)

PVI(协议版本)

BPDU Type(配置BPDU/TCN -BPDU)

Flags (特殊标识,共8位,可以区分TCA-BPDU、TC-BPDU)

根桥ID(root ID):由根桥的优先级和MAC地址组成,每个STP网络中有且仅有一个根桥

根路径开销(RPC):到根交换机的最短路径开销

指定桥ID(bridge ID):由指定桥的优先级和MAC地址组成(指定桥的优先级可以手工方式修改前4bit值,修改后的数值必须为4096的倍数,以小为优)

扩展系统ID :使用优先级字段中的后12bit,取值范围 0 - 4095

指定端口 ID (port ID):由指定端口的优先级和端口号组成(指定端口的优先级可以手工方式修改,修改后的数值必须为16的倍数,以下为优)

Message age :配置BPDU在网络中传播的距离,最大20跳(功能类似TTL)

MAX age :配置BPDU在设备中能够保存的最大生存期,默认值20秒

hello time :配置BPDU 发送的周期,默认时间2秒

forward delay :端口状态迁移的延时,默认时间15秒

以下三个端口以及单词必须熟记

根端口      root

替代端口  alte

指定端口  desi  

接下来介绍一下生成树协议的选举过程:   根桥(核心)、指定端口(发送)、根端口(接收)

第一步:

根桥选举 Root bridge (最核心的交换机,首发配置BPDU消息)

根桥选举依据是 根桥 ID ,ID 的值越小越优先  

补充:桥ID由16位的桥优先级和48位的mac地址构成,桥优先级是可以配置的,取值范围是0 ~65535,默认值是32768。如果优先级相同,则比较MAC地址,同样是地址越小越优先。

第二步:

指定端口选举/DP  ↓

指定端口用于发送BPDU消息,在链路两端,指定端口有且只有一个,指定端口是链路两端去往根桥最优路径的接口;根桥的所有端口都是指定端口,除非根桥在物力上存在的环路

选举步骤如下:

1.比较链路两端接口发送BPDU消息中的Root ID

2.比较链路两端接口发送BPDU消息中的根路径开销RPC;思科设备的cost 值以带宽来计算的,如:100M/19;1000M/4

3.比较链路两端接口发送BPDU消息中的Bridge ID(转发者的Bridge ID)

4.比较链路两端接口发送BPDU消息中的Port ID(交换机运行STP的Port ID)

第三步:

根端口选举  RP

根端口用于接受BPDU消息,在非根桥设备上,根端口有且只有一个,根端口是非分桥设备去往根桥最优路径的接口;

选举步骤如下:

1.比较这些接口接收到的BPDU消息总的Root ID

2.比较这些接口接收到BPDU消息中的累加的根路径开销RPC (思科设备的cost值用带宽来计算的)

3.比较这些接口接受到BPDU消息中的Port ID

5.比较交换机自身接口Port ID

运行STP的设备上端口状态有5种:

Forwarding:转发状态。端口既可以转发用户流量也可以转发BPDU报文,只有根端口或指定端口才能进入 Forwarding状态 DP/RP

Learning: 学习状态(过渡状态)端口可以根据收到的用户流量构建MAC地址表,但不转发用户流量。增加Learning状态是为防止临环路    DP/RP

Listenini:侦听状态(过渡状态)。端口可以转发BPDU报文,但不能转发用户流量  DP/RP

Blocking :阻塞状态。端口仅仅能接受并处理BPDU,不能转发BPDU,也不能转发用户流量---NDP

Disabled :禁用状态。端口既不处理和转发报文,也不转发用户流量(一般情况下是被管理员禁用的端口)

 

 

配置命令

stp bpdu-protection 开启BPDU防护

stp edged-port enable 配置为边缘端口(不参与生成树计算)

stp mode rstp 运行rstp

stp mode mstp运行mstp

stp root primary 指定此交换机为根桥

stp root secondary 指定此交换机为备份根桥

stp cost 300000 将端口的cost值设置为300000

stp tc-protection threshold 100开启TC泛洪保护,在单位时间(2S)只能处理100个BPDU

推荐阅读