前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除

本篇笔记是根据B站上的视频教程整理而成,感谢UP主的精彩讲解!如果需要了解更多细节,可以参考以下视频:

https://www.bilibili.com/video/BV1rdT6zQEMg/?spm_id_from=333.788.videopod.episodes&vd_source=e539f90574cdb0bc2bc30a8b5cb3fc00&p=6https://www.bilibili.com/video/BV1rdT6zQEMg/?spm_id_from=333.788.videopod.episodes&vd_source=e539f90574cdb0bc2bc30a8b5cb3fc00&p=6https://www.bilibili.com/video/BV1rdT6zQEMg/?spm_id_from=333.788.videopod.episodes&vd_source=e539f90574cdb0bc2bc30a8b5cb3fc00&p=6https://www.bilibili.com/video/BV1rdT6zQEMg/?spm_id_from=333.788.videopod.episodes&vd_source=e539f90574cdb0bc2bc30a8b5cb3fc00&p=6https://www.bilibili.com/video/BV1rdT6zQEMg/?spm_id_from=333.788.videopod.episodes&vd_source=e539f90574cdb0bc2bc30a8b5cb3fc00&p=6https://www.bilibili.com/video/BV1rdT6zQEMg/?spm_id_from=333.788.videopod.episodes&vd_source=e539f90574cdb0bc2bc30a8b5cb3fc00&p=6


一、生成树技术概述

背景:二层交换机网络的冗余性与环路、人为导致的二层环路带来:广播风暴、MAC地址漂移

1、生成树协议

在网络中部署生成树协议后,交换机会通过交互生成树协议报文进行无环拓扑计算,最终阻塞某些接口以打破环路

2、生成树能动态响应网络拓扑变化调整阻塞接口

生成树协议持续监控网络拓扑结构,当拓扑发生变化时,能自动感知并调整。它既能解决二层环路问题,也为网络的冗余性提供了方案

3、二层及三层环路

4、STP概述

STP用于局域网中消除环路,通过设备间交互信息发现环路并阻塞某些接口以消除环路。它持续监控网络状态,感知拓扑变更并自动响应,适应新的拓扑结构,保证网络可靠性。随着局域网规模增长,STP已成为最重要的局域网协议之一

二、STP的基本概念及工作原理

1、STP的基本概念

(1)桥ID

  • BID构成:由16位的桥优先级(Bridge Priority)与桥MAC地址构成,桥优先级需是4096倍数,且默认优先级是32768
  • 唯一性:每一台运行STP的交换机都拥有一个唯一的BID
  • 结构:BID中桥优先级占据高16bit,其余的低48bit是桥MAC地址
  • 根桥选举:在STP网络中,BID最小的设备会被选举为根桥

此处网桥(Bridge),或者桥也就是交换机

(2)根桥

  • STP树的树根:STP的主要作用之一是计算出一棵无环的"树"(STP树),根桥是这棵树的“树根”。
  • 拓扑计算参考点:根桥是STP计算得出的无环拓扑的“树根”,是生成树进行拓扑计算的重要“参考点”。
  • 根桥选举规则
    • 在STP网络中,桥ID最小的设备会被选举为根桥
    • 比较BID时,首先比较桥优先级,值越小越优先。
    • 如果优先级相等,则比较MAC地址,拥有最小MAC地址的交换机会成为根桥。
(3)Cost
  • Cost作用:每个激活了STP的接口维护一个cost值,用于计算到达根桥的根路径开销
  • Cost影响因素
    • 与接口的速率工作模式有关。
    • 与交换机使用的STP Cost计算方法有关。
  • Cost与带宽关系:接口带宽越大,Cost值越小
  • Cost调整:用户可以根据需要通过命令调整接口的cost
(4)RPC

在STP中,根路径开销(RPC)是到达根桥的总成本,由沿途接口的Cost累加计算。RPC决定最佳路径选择,影响网络性能

(5(Port ID)

接口ID(Port ID,PID):STP中用于标识交换机接口,主要用于选举指定接口。由接口优先级(高4位)和接口编号(低12位)构成。默认接口优先级通常为128,但用户可修改

(6)BPDU

BPDU(Bridge Protocol Data Unit,网桥协议数据单元):STP正常工作的基础,是STP的协议报文。STP交换机通过交互BPDU报文来交换重要信息,确保STP顺利进行。BPDU有两种类型:

  • 配置BPDU(Configuration BPDU):STP进行拓扑计算的关键。
  • TCN BPDU(Topology Change Notification BPDU):仅在网络拓扑发生变更时触发。

配置BPDU的报文格式:略

配置BPDU的比较原则:STP按以下顺序选择最优的配置BPDU:1、最小的根桥ID。2、最小的RPC。3、最小的网桥ID。4、最小的接口ID

配置BPDU的转发过程:

2、STP的计算过程

(1)选举根桥

  • 每个交换机发送配置BPDU,包含自己的桥ID。
  • 网络中桥ID最小的交换机成为根桥
  • 根桥角色可抢占,建议提前规划并设置桥优先级为0。
(2)选举根接口

  • 非根桥选举一个接口为根接口,接收最优配置BPDU的接口(根路径开销(RPC)小
  • 根接口是“朝向”根桥的接口

(3)选举指定接口

  • 非根桥使用根接口上的最优BPDU与其他接口的BPDU比较(比较原则见上
  • 更优的为指定接口,否则为非指定接口
  • 根桥的所有接口通常都是指定接口
(4)阻塞非指定接口

非指定接口被阻塞,消除二层环路

3、STP的接口状态

4、STP的接口状态迁移

5、拓扑变化

(1)根桥故障
  • SW1(根桥)发生故障,停止发送BPDU报文,SW2等待Max Age计时器(20秒)超时,确认BPDU失效且无法接收到新的BPDU,意识到上游故障
  • 非根桥互相发送配置BPDU,启动新的根桥选举
  • 选举完成后,如SW3的A端口经过两个Forward Delay(15秒)时间恢复转发状态
  • 根桥故障导致网络恢复时间为约50秒,包括BPDU老化和新的根桥选举时间
(2)物理链路故障
  • 当交换机SW2检测到根端口的链路发生故障时,其备用端口会经过两倍的Forward Delay(即30秒)时间后进入用户流量转发状态
  • SW2在检测到直连链路物理故障后,会将预备端口转换为根端口
  • 直连链路故障后,备用端口将在30秒恢复转发状态,从而实现流量的重新导向
(3)非物理链路故障

非直连链路故障后,sW3的备用端口恢复到转发状态,非直连故障会导致50s左右的恢复时间

6、拓扑改变导致MAC地址表错误

  • 网络拓扑结构变化可能引起MAC地址表不一致
  • 生成树协议(STP)通过阻塞某些端口来避免环路,拓扑变更时,这些端口状态改变可能导致MAC地址表更新
  • MAC地址漂移:拓扑改变后,原路径不可用,数据包可能通过新路径到达目的地,导致MAC地址表中记录的端口信息过时
  • 需要老化机制来清除过时的MAC地址条目,更新为新的有效路径
  • STP的TCN BPDU机制通知拓扑变化,触发重新收敛过程,修正MAC地址表

三、STP的基础配置

1、STP的基础配置命令

 --生成树工作模式[Huawei]stp mode { stp | rstp | mstp }​--(可选)配置根桥[Huawei]stp root primary--(可选)备份根桥[Huawei]stp root secondary--(可选)配置交换机的STP优先级[Huawei]stp priority /priority/     --缺省情况下,交换机取值是32768--(可选)配置接口路径开销[Huawei]stp pathcost-standard { dot1d-1998 | dot1t | legacy }--设置当前接口的路径开销值[Huawei-GigabitEthernet0/0/1]stp cost /cost/​--(可选)配置接口优先级[Huawei-intf]stp priority /priority/    --默认128​--启动STP/RSTP/MSTP[Huawei]stp enable      --默认都是启用状态

2、案例

在下述三台交换机上部署STP,以便消除网络中的二层环路,通过配置,将SW1指定为根桥,并使SW3的G0/0/22接口被STP阻塞

 --SW1配置:[SW1]stp mode stp[SW1]stp enable[SW1]stp priority 0​--SW2配置:[SW2]stp mode stp[SW2]stp enable[SW2]stp priority 4096​--SW3配置:[SW3]stp mode stp[SW3]stp enable

四、RSTP对STP的改进

1、STP的局限性

收敛速度慢、接口状态与角色区分不足、角色与状态的独立性、被动算法、BPDU传播

2、RSTP概述

RSTP(Rapid Spanning Tree Protocol)是IEEE 802.1w标准定义的STP改进版本,具有更快的收敛速度且兼容STP。RSTP通过引入新接口角色优化了网络性能,包括替代接口和备份端口,以快速响应根接口失效并提供备份路径。状态从STP的5种缩减至3种,基于端口是否转发流量和学习MAC地址。此外,RSTP引入边缘接口概念,允许直接连接终端设备的接口快速进入转发状态,从而提高网络工作效率。

3、RSTP对STP的其他改进

配置BPDU处理优化、次等BPDU处理优化、配置BPDU格式改变、RSTP拓扑变化处理

4、端口角色不同

5、边缘端口

不再与任何交换设备连接,位于整个域的边缘,这种端口叫做边缘端口,边缘端口一般与用户终端设备直接连接,可以由Disabled状态直接转到Forwarding状态

6、端口状态不同

  •  如果不转发用户流量也不学习MAC地址,那么接口状态就是Discarding状态
  • 如果不转发用户流量但是学习MAC地址,那么接口状态就是Learning状态
  • 如果既转发用户流量又学习MAC地址,那么接口状态就是Forwarding状态

五、生成树技术进阶

1、STP/RSTP缺陷

所有VLAN共享一颗生成树,因此无法在VLAN间实现数据流量的负载均衡,链路被阻塞后将不承载任何流量,还可能造成部分VLAN的报文无法转发

2、VBST:基于VLAN的生成树

华为公司提出的VBST (VLAN-Based Spanning Tree) 是一种基于VLAN的生成树解决方案。该方案允许不同VLAN间形成相互独立的生成树,使得不同VLAN内的流量可以沿着各自的生成树进行转发。这种机制可以实现流量的负载分担,提高网络的效率和可靠性

3、MSTP概述

  • MSTP将交换网络划分为多个,每个域内形成多棵生成树,各生成树相互独立。
  • 每棵生成树称为一个多生成树实例(MSTI),即一组VLAN的集合对应的生成树。
  • 通过将多个VLAN捆绑到一个实例,节省通信开销和资源占用,实现负载均衡。
  • MSTP中各实例拓扑计算独立,VLAN的转发状态取决于接口在对应实例的状态。

4、堆叠与园区网络树形结构组网形态

5、Smart Link

 学习永无止境,让我们共同进步!!  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/87816.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/87816.shtml
英文地址,请注明出处:http://en.pswp.cn/web/87816.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于内网穿透技术的Stable+Diffusion+3.5本地化部署与远程图像生成架构

文章目录 前言1. 本地部署ComfyUI2. 下载 Stable Diffusion3.5 模型3. 演示文生图4. 公网使用Stable Diffusion 3.5 大模型4.1 创建远程连接公网地址 5. 固定远程访问公网地址 前言 在数字内容创作行业中,利用本地化服务器进行人工智能部署的策略正逐步成为优化制作…

私有云平台实战-OpenStack入门体验

目录 #1.1云计算概述 1.1.1什么是云计算 1.1.2云计算的服务模型 1.1.3OpenStack概述 #2.1OpenStack一键部署 2.1.1在线安装 2.1.2使用本地仓库离线安装 2.1.3创建云主机 1.1云计算概述 云计算是一种基于互联网的计算方式,通过网络将共享的软硬件资源和信息按需提供…

专题:2025即时零售与各类人群消费行为洞察报告|附400+份报告PDF、原数据表汇总下载

原文链接:https://tecdat.cn/?p42808 即时零售的崛起正在重塑消费市场的时间与空间边界。从清晨的第一杯咖啡到深夜的应急零食,消费者的需求不再受限于传统营业时间。与此同时,不同人群的消费习惯呈现出鲜明差异,Z世代沉迷线上娱…

【一起来学AI大模型】算法核心:数组/哈希表/树/排序/动态规划(LeetCode精练)

以下是五大核心算法的重点解析和LeetCode经典题解,包含最优解法和模板代码:一、数组操作(双指针/滑动窗口)核心思想:通过索引指针高效遍历与操作数组1. 移动零(No.283)def moveZeroes(nums):slo…

CSS之基础语法一文全解析

CSS之基础语法一文全解析 一、CSS语法核心结构:选择器声明块1.1 基础语法模板1.2 关键组成部分 二、选择器全解析:精准定位目标元素2.1 基础选择器(必掌握)2.1.1 标签选择器(类型选择器)2.1.2 类选择器&…

vue 前端动态导入文件 import.meta.glob 导入图片

背景: 在开发过程中,前端会引入资源文件,这里主要是引入图片。在开发环境,导入的图片显示正常,但是打包部署后,导入的图片就不能正常显示。 原因分析,可能有如下几点: 1.图片不能显示…

RocketMQ-Dashboard页面报Failed to fetch ops home page data错误

今天安装RocketMQ-Dashboard,访问主页,页面弹框提示Failed to fetch ops home page data,F12发现控制台输出网络请求跨域。解决:不要用127.0.0.1访问,用localhost就不报错了

0704-0706上海,又聚上了

上次,还是0413,当时写了一篇,下次相见是何时?也鼓励自己下次相见是找到工作(实习也算),没想到真找到了,DW App 说到实习,其实没认真投递很多,互联网公司除了阿…

【win电脑-程序CMD自启动问题-开机就自启动-查找原因-解决方式】

【win电脑-程序CMD自启动问题-开机就自启动-查找原因-解决方式】 1,情况说明:2,问题描述1-这是什么窗口 2-原因分析:3-我的努力-尝试解决:1,任务管理器中查看状态2,查看启动文件夹3,…

Go语言实现双Token登录的思路与实现

Go语言实现双Token登录的思路与实现 引言 在现代Web应用中,身份认证是保障系统安全的重要环节。传统的单Token认证方式存在一些安全隐患,如Token泄露可能导致长期风险。双Token机制(Access Token Refresh Token)提供了更好的安全…

映射阿里云OSS(对象存储服务)

参考:使用阿里云进行OSS对象存储(超详细) 一文掌握SpringBoot注解之Component 知识文集(1) ConfigurationProperties注解原理与实战 1.配置属性类 AliOssProperties package com.sky.properties;import lombok.Data; import org.springframe…

Java操作word实战

文章目录简介段落页头与页脚页码表格图片批注文本框目录图表简介 Word编程最重要的类是org.apache.poi.xwpf.usermodel.XWPFDocument。涉及的东西十分复杂。而且Apache poi操作word的技术非常不成熟。代码中本身有很多bug。   Maven的依赖为 <dependency><groupId&…

【Flask】flask中get方法和post方法区别

对于post和get在我以前的认知下一直认为是&#xff1a; 前端发送给后端就称为post 前端需要从后端返回就用get 但是在开发过程中发现了不仅仅如此 区别 GET 意图&#xff1a;获取&#xff08;GET&#xff09; 信息。你只是想读取服务器上已经存在的资源&#xff0c;你不打算改变…

Linux sudo升级

应对 Linux sudo 本地提权漏洞&#xff1a;离线升级 Sudo 到安全版本 一、引言 在 Linux 系统中&#xff0c;sudo&#xff08;superuser do&#xff09;是一个非常重要的工具&#xff0c;它允许授权用户以超级用户&#xff08;root&#xff09;的权限执行命令。然而&#xff0c…

ubuntu 6.8.0 安装xenomai3.3

通过以下步骤来获取和准备 Linux 内核 6.8.0 的源码&#xff0c;并应用 Xenomai 补丁&#xff1a; 1. 下载 Linux 内核 6.8.0 源码 你可以从 The Linux Kernel Archives 下载 Linux 内核 6.8.0 的源码。以下是具体步骤&#xff1a; 访问内核官方网站&#xff1a; 打开 The Li…

drawRect 触发时机

在 iOS 开发中&#xff0c;UIView 的 drawRect: 方法&#xff08;或其底层 CALayer 的绘制&#xff09;的触发时机是由系统控制的&#xff0c;开发者不能直接调用这些方法。以下是触发视图绘制的完整机制&#xff1a;一、核心触发时机 1. 视图首次显示 当视图被添加到视图层级时…

1.1_4 计算机网络的分类

在这个视频中我们会探讨计算机网络的分类&#xff0c;从不同的角度可以对计算机网络进行不同的分类&#xff0c;我们会从分布范围、传输技术、拓扑结构、使用者和传输介质这样的几个维度进行讨论&#xff0c;在这门课当中需要注意的是标红色的几个分类&#xff0c;其他的类别简…

03每日简报20250705

每日简报 新闻简报&#xff1a;AI行业信任危机浮现 标题&#xff1a;知名科技作者Alberto Romero发文《我对AI行业正在失去所有信任》 来源&#xff1a;The Algorithmic Bridge&#xff08;算法之桥&#xff09; 核心内容&#xff1a; 作者立场&#xff1a;长期支持AI技术…

Python 多版本环境治理理念驱动的系统架构设计:三维治理、四级隔离、五项自治 原则

Python 多版本与开发环境治理架构设计-CSDN博客 Python 多版本治理理念&#xff08;Windows 平台 零基础友好&#xff09;-CSDN博客 Python 多版本开发环境治理&#xff1a;理论架构与实践-CSDN博客 【终极实战】Conda/Poetry/Virtualenv/Pipenv/Hatch 多工具协同 AnacondaP…

C++ 第四阶段 文件IO - 第一节:ifstream/ofstream操作

目录 一、文件 IO 的基本概念 二、文件流的基本操作 1. 打开文件 2. 关闭文件 3. 检查文件是否成功打开 三、文本文件的读写操作 1. 写入文本文件&#xff08;ofstream&#xff09; 2. 读取文本文件&#xff08;ifstream&#xff09; 四、二进制文件的读写操作 1. 写…