华为HCIA课堂笔记第九章 STP生成树

第九章 STP生成树

9.1 生成树的工作原理

  1. 选举一个根桥(根交换机)
  2. 每一个非根桥上选举一个根端口(去往根桥最近的端口)
  3. 在每一个链路上选举一个指定端口(向树的下游转发数据)
  4. 阻塞剩余的非根端口,非指定端口。

9.2 基本概念

  1. 根桥:生成树的树根
    1. 通过比较桥ID(称为BID),选择所有的相连二层设备中的桥 ID,越小越优
    2. 桥ID:由桥优先级(16bit)和桥MAC地址(48bit)组成(先比较桥优先级,再比较桥MAC地址)
    3. 桥优先级16bit中,仅高4bit位有效,高四位没变化一次,是一个新的优先级。即桥优先级的步长是4096,默认值是32768。
  2. Cost值:每一个启用生成树的接口维护一个STP Cost值,具体默认Cost值与接口的工作模式,带宽大小相关,带宽越大,Cost值越小。
  3. RPC(根路径开销):从本设备的接口到达根桥沿途的出接口的开销值之和。
  4. PID(接口ID):接口优先级和接口编号组成,高4bit位为接口优先级,默认128;低12bit位为接口编号。接口优先级的步长16。
  5. BPDU(桥协议数据单元):交换机通过交互BPDU携带必要参数,完成STP的选举过程。配置BPDU、TCN BPDU

9.3 BPDU报文的内容

按照三个区域记忆:

  1. 报文本身的参数:PID(Protocol ID)、PVID、BPDU type、Flags
  2. 选举参数:Root ID、RPC、BID、PID(port ID)
  3. 时间参数:消息寿命、Max Age、Hello time、Forward Delay

9.4 BPDU的传递

9.5 STP的端口角色

  1. RP端口(root port):根端口,非根交换机上距离根桥最近的端口(非根交换机上所有接口中收到最优BPDU的接口),连接根桥方向(上游)的端口
  2. DP端口(Design port):指定端口,连接下游交换机的端口。
  3. AP端口(Alternate port):去往根桥方向(上游)的RP端口的备份端口,代表去往根桥的另一路径。

9.6 STP的端口状态

|---------|---------|----------|-----------|----------|------------|
| 接口状态 | Disable | Blocking | Listening | Learning | Forwarding |
| 收发BPDU | × | 接受不发 | √ | √ | √ |
| 学习MAC地址 | × | × | × | √ | √ |
| 转发业务 | × | × | × | 只接不转发 | √ |

状态切换:

  1. 设备的所有接口开始的时候都是DP角色,Blocking状态
  2. 接口状态由Blocking状态自动切换为Listening状态,开始收发BPDU
  3. 如果设备DP端口经过选举之后成为AP接口,则端口状态切换为Blocking状态。
  4. 时间推移,如果DP端口没有被选举为AP端口,则经过Forwarding Delay时间(转发延迟时间15s)后,状态由Listening状态切换为Learning状态(15s预留给拓扑收敛的)
  5. 时间推移,DP端口没有被选举为AP端口,则再次经过Forwarding Delay时间(转发延迟时间15s)后,状态由Learning切换为Forwarding状态。(15s,预留给MAC地址学习的,避免学习到错误的MAC地址。)

9.7 STP故障恢复

  1. 根桥故障:非根桥需要老化根桥的BPDU(20s),需要重新选举根桥,接口状态切换为转发状态(2转发延迟=30s),最终需要50s恢复。
  2. 直连故障:设备仍然能接收到根桥的BPDU,不需要进行BPDU老化,只需要切换AP接口到RP,经过2个转发延迟时间(30s),进入到转发状态。
  3. 非直连故障:设备无法收到根桥的的BPDU,也没有AP作为RP的备份,此时,原RP端口故障,则需要等待20sBPDU老化时间,以及状态切换后重新选举接口角色重新确定后,进入到转发状态的时间(2个转发延迟时间)。总共50s左右。

9.8 STP拓扑变更机制

拓扑变更以及MAC地址表项更新的具体过程如下:

  1. SW3感知到网络拓扑发生变化后,会不间断地向SW2发送TCN BPDU报文。
  2. SW2收到SW3发来的TCN BPDU报文后,会把配置BPDU报文中的Flags的TCA位设置1,然后发送给SW3,告知SW3停止发送TCN BPDU报文。
  3. SW2向根桥转发TCN BPDU报文。
  4. SW1把配置BPDU报文中的Flags的TC位设置为1后发送,通知下游设备把MAC地址表项的老化时间由默认的300 s修改为Forward Delay的时间(默认为15 s)。

最多等待15 s之后,SW2中的错误MAC地址表项会被自动清除。此后,SW2就能重新开始MAC表项的学习及转发操作。

相关推荐
ssf-yasuo7 分钟前
SPIRE: Semantic Prompt-Driven Image Restoration 论文阅读笔记
论文阅读·笔记·prompt
ajsbxi20 分钟前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
萨格拉斯救世主34 分钟前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
无所谓จุ๊บ35 分钟前
树莓派开发相关知识十 -小试服务器
服务器·网络·树莓派
Jtti37 分钟前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows
TeYiToKu40 分钟前
笔记整理—linux驱动开发部分(9)framebuffer驱动框架
linux·c语言·arm开发·驱动开发·笔记·嵌入式硬件·arm
dsywws43 分钟前
Linux学习笔记之时间日期和查找和解压缩指令
linux·笔记·学习
道法自然040244 分钟前
Ethernet 系列(8)-- 基础学习::ARP
网络·学习·智能路由器
yeyuningzi1 小时前
Debian 12环境里部署nginx步骤记录
linux·运维·服务器
SuperHeroWu71 小时前
【HarmonyOS】键盘遮挡输入框UI布局处理
华为·harmonyos·压缩·keyboard·键盘遮挡·抬起