五、华为 RSTP
RSTP(Rapid Spanning Tree Protocol,快速生成树协议)是 STP 的优化版本,能实现网络拓扑的快速收敛。
一、RSTP 原理
- 快速收敛机制:RSTP 通过引入边缘端口、P/A(Proposal/Agreement)机制等,加快了网络拓扑的收敛速度。当网络拓扑发生变化时,RSTP 能够快速地重新计算生成树,从而减少网络中断的时间。
- 端口角色定义:RSTP 定义了根端口、指定端口、替代端口和备份端口等角色。根端口是交换机上到根桥路径开销最小的端口;
指定端口是负责向其所在网段转发配置 BPDU 的端口;
替代端口是根端口的备份端口,当根端口发生故障时,替代端口可以快速切换为根端口;
备份端口是指定端口的备份端口,当指定端口发生故障时,备份端口可以快速切换为指定端口 。
二、端口状态
- Discarding 状态:端口不转发用户流量也不学习 MAC 地址。此状态下端口会接收并处理 BPDU,以确定自身在生成树中的角色 。
- Learning 状态:端口不转发用户流量,但会学习 MAC 地址。在这个状态下,端口仍然会接收并处理 BPDU,以确保生成树的拓扑结构正确 。Learning 状态的持续时间由 Forward Delay 定时器控制。
- Forwarding 状态:端口既转发用户流量又学习 MAC 地址。处于 Forwarding 状态的端口是生成树拓扑中转发数据的端口 。只有根端口和指定端口最终会进入 Forwarding 状态。
三、主要参数
- Hello Time:根桥周期性发送配置 BPDU 的时间间隔,默认值为 2 秒。该参数影响网络中拓扑信息的传播频率 。可以通过命令在华为交换机上修改 Hello Time,例如:stp hello-time 3 ,将 Hello Time 设置为 3 秒。
- Forward Delay:端口状态从 Discarding 或 Learning 转换到 Forwarding 所需的时间,默认值为 15 秒。这个参数对于防止网络中临时环路的产生非常重要 。在华为交换机上修改 Forward Delay 的命令示例:stp forward-delay 20 ,将 Forward Delay 设置为 20 秒。
- Max Age:配置 BPDU 在网络中能够生存的最大时间,默认值为 20 秒。当交换机收到的配置 BPDU 的老化时间超过 Max Age 时,该 BPDU 将被丢弃 。在华为交换机上更改 Max Age 的命令示例:stp max-age 25 ,将 Max Age 设置为 25 秒。
- Path Cost:端口到根桥的路径开销,它是根据端口带宽等因素计算得出的,用于确定根端口和指定端口 。不同带宽的端口默认的 Path Cost 值不同,例如 1000Mbps 端口的默认 Path Cost 值为 2 。在华为交换机上可以手动修改端口的 Path Cost,命令示例:stp cost 50 ,将当前端口的 Path Cost 设置为 50。
四、配置命令
1、开启 RSTP
<LSW1>system-view[LSW1]stp mode rstp
2、设置交换机优先级

华为交换机的优先级取值范围是 0 - 61440,且必须是 4096 的倍数。
3、设置端口路径开销

4、设置端口优先级

华为交换机端口优先级取值范围是 0 - 255,且必须是 16 的倍数。
5、配置边缘端口
![]()
根桥不可以将端口设置为边缘口
6、配置 BPDU 保护

7、配置根保护
五、配置RSTP 功能示例
在一个复杂的网络中,网络规划者由于冗余备份的需要,一般都倾向于在设备之间部署多条物理链路,其中一条作主用链路,其他链路作备份。这样就难免会形成环形网络,若网络中存在环路,可能会引起广播风暴和MAC桥表项被破坏
配置思路
- 配置环网中的设备生成树协议工作在RSTP模式。
- 配置根桥和备份根桥设备。
- 配置端口的路径开销值,实现将该端口阻塞。
- 使能RSTP,实现破除环路,包括:
- 设备全局使能RSTP。
- 除与终端设备相连的端口外,其他端口使能RSTP
配置SRTP的基本功能
1、配置并开启生成树协议
[LSW5]stp mode rstp[LSW5]stp enableLSW1-5 配置相同
2、配置根桥和备份根桥设备
[LSW5]stp root primary 主根桥[LSW5][LSW1]stp root secondary 次要根桥[LSW1]
3、配置端口的路径开销值,实现将该端口阻塞
[LSW5]stp pathcost-standard legacyWarning: The path cost of the current process will be set to the default value because the path cost standard is changed.将端口路径开销值的计算方法为华为私有计算方法 LSW1-5配置相同
配置LSW3 LSW4的Ethernet0/0/4口的路径开销值为200000,以实现此端口为堵塞口[LSW3-Ethernet0/0/4]stp cost 200000[LSW3-Ethernet0/0/4]
[LSW4-Ethernet0/0/4]stp cost 200000[LSW4-Ethernet0/0/4]
4、使能RSTP,实现破除环路
与PC机相连的端口不用参与RSTP计算,建议将其去使能RSTP
[LSW3-Ethernet0/0/4]int e0/0/2[LSW3-Ethernet0/0/2]stp enable[LSW3-Ethernet0/0/2]int e0/0/3[LSW3-Ethernet0/0/3]stp enable
[LSW4-Ethernet0/0/4]int e0/0/2[LSW4-Ethernet0/0/2]stp enable[LSW4-Ethernet0/0/2]int e0/0/3[LSW4-Ethernet0/0/3]stp enable
5、配置保护功能
[LSW5]int g0/0/1 [LSW5-GigabitEthernet0/0/1]stp root-protection[LSW5-GigabitEthernet0/0/1]int g0/0/2[LSW5-GigabitEthernet0/0/2]stp root-protection
6、验证配置结果





六、配置文件
sysname LSW5
#undo info-center enable#stp mode rstpstp instance 0 root primarystp pathcost-standard legacy#interface GigabitEthernet0/0/1stp root-protection#interface GigabitEthernet0/0/2stp root-protection
sysname LSW1
#undo info-center enable#stp mode rstpstp instance 0 root secondarystp pathcost-standard legacy#
sysname LSW2
#undo info-center enable#stp mode rstpstp pathcost-standard legacy
sysname LSW3
#undo info-center enable#stp mode rstpstp pathcost-standard legacy#interface Ethernet0/0/4stp instance 0 cost 200000#
sysname LSW4
#undo info-center enable#stp mode rstpstp pathcost-standard legacy#interface Ethernet0/0/4stp instance 0 cost 200000#
相关文章:
五、华为 RSTP
RSTP(Rapid Spanning Tree Protocol,快速生成树协议)是 STP 的优化版本,能实现网络拓扑的快速收敛。 一、RSTP 原理 快速收敛机制:RSTP 通过引入边缘端口、P/A(Proposal/Agreement)机制等&…...
基于Java Web的网上房屋租售网站
内容摘要 本毕业设计题目为《基于Java Web的网上房屋租售网站》,是在信息化时代下充分利用互联网对传统房屋租售方式进行创新,在互联网上进行房屋租售突破了传统方式的局限性。对于房屋租售的当事人都提供了极大的便利。本稳针对了实际用户需求…...
Pyside6(PyQT5)中的QTableView与QSqlQueryModel、QSqlTableModel的联合使用
QTableView 是QT的一个强大的表视图部件,可以与模型结合使用以显示和编辑数据。QSqlQueryModel、QSqlTableModel 都是用于与 SQL 数据库交互的模型,将二者与QTableView结合使用可以轻松地展示和编辑数据库的数据。 QSqlQueryModel的简单应用 import sys from PySid…...
git常用命令学习
目录 文章目录 目录第一章 git简介1.Git 与SVN2.Git 工作区、暂存区和版本库 第二章 git常用命令学习1.ssh设置2.设置用户信息3.常用命令设置1.初始化本地仓库init2.克隆clone3.查看状态 git status4.添加add命令5.添加评论6.分支操作1.创建分支2.查看分支3.切换分支4.删除分支…...
【优选算法】7----三数之和
来了来了,他来了,又是学习算法的一天~ 今天的嘉宾是中等难度的算法题----三数之和! ------------------------------------------begin------------------------------------ 题目解析: 哇趣!又是给了一个数组&#…...
分子动力学模拟里的术语:leap-frog蛙跳算法和Velocity-Verlet算法
分子动力学模拟(Molecular Dynamics Simulation,简称MD)是一种基于经典力学原理的计算物理方法,用于模拟原子和分子在给定时间内的运动和相互作用。以下是关于分子动力学模拟的一些核心术语和概念: 定义系统&am…...
2025年数学建模美赛:A题分析(1)Testing Time: The Constant Wear On Stairs
2025年数学建模美赛 A题分析(1)Testing Time: The Constant Wear On Stairs 2025年数学建模美赛 A题分析(2)楼梯磨损分析模型 2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型 2025年数学建模美赛 A题分…...
利用 SoybeanAdmin 实现前后端分离的企业级管理系统
引言 随着前后端分离架构的普及,越来越多的企业级应用开始采用这种方式来开发。前后端分离不仅提升了开发效率,还让前端和后端开发可以并行进行,减少了相互之间的耦合度。SoybeanAdmin 是一款基于 Spring Boot 和 MyBatis-Plus 的后台管理系…...
996引擎 - 前期准备-配置开发环境
996引擎 - 前期准备 官网搭建服务端、客户端单机搭建 开发环境配置后端开发环境配置环境 前端开发环境配置环境 后端简介前端简介GUILayoutGUIExport 官网 996传奇引擎官网 所有资料从官网首页开始,多探索。 文档: 996M2-服务端Lua 996M2-客户端Lua 搭…...
Tensor 基本操作4 理解 indexing,加减乘除和 broadcasting 运算 | PyTorch 深度学习实战
前一篇文章,Tensor 基本操作3 理解 shape, stride, storage, view,is_contiguous 和 reshape 操作 | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started Tensor 基本使用 索引 indexing示例代码 加减…...
【Uniapp-Vue3】request各种不同类型的参数详解
一、参数携带 我们调用该接口的时候需要传入type参数。 第一种 路径名称?参数名1参数值1&参数名2参数值2 第二种 uni.request({ url:"请求路径", data:{ 参数名:参数值 } }) 二、请求方式 常用的有get,post和put 三种,默认是get请求。…...
【Prometheus】Prometheus如何监控Haproxy
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...
SSM开发(一)JAVA,javaEE,spring,springmvc,springboot,SSM,SSH等几个概念区别
目录 JAVA 框架 javaEE spring springmvc springboot SSM SSH maven JAVA 一种面向对象、高级编程语言,Python也是高级编程语言;不是框架(框架:一般用于大型复杂需求项目,用于快速开发)具有三大特性,所谓Jav…...
HTML5 常用事件详解
在现代 Web 开发中,用户交互是提升用户体验的关键。HTML5 提供了丰富的事件机制,允许开发者监听用户的操作(如点击、拖动、键盘输入等),并触发相应的逻辑处理。本文将详细介绍 HTML5 中的常用事件,包括鼠标…...
TCP全连接队列
1. 理解 int listen(int sockfd, int backlog) 第二个参数的作用 backlog:表示tcp全连接队列的连接个数1。 如果连接个数等于backlog1,后续连接就会失败,假设tcp连接个数为0,最大连接个数就为1,并且不accept获取连接…...
统计文本文件中单词频率的 Swift 与 Bash 实现详解
网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...
iOS 权限管理:同时请求相机和麦克风权限的最佳实践
引言 在开发视频类应用时,我们常常会遇到需要同时请求相机和麦克风权限的场景。比如,在用户发布视频动态时,相机用于捕捉画面,麦克风用于录制声音;又或者在直播功能中,只有获得这两项权限,用户…...
Excel 实现文本拼接方法
1. 使用 & 运算符 这是最常见和简单的拼接方法。你只需使用 & 来连接多个文本单元格或文本字符串。 示例公式: A1 & B1这个公式会将 A1 和 B1 单元格中的文本合并为一个字符串。 如果你希望在文本之间加入分隔符(如空格、逗号等…...
软考信安27~Windows操作系统安全相关
1、Windows账户与组管理 1.1、用户账户查看 whoami #查看当前登录的用户名称 whoami /all #查看当前系统的用户名和组信息,以及SID whoami /user #查看当前用户的SID net user #查看系统中包含哪些用户 wmic useraccount get name,sid #查看…...
从 Spark 到 StarRocks:实现58同城湖仓一体架构的高效转型
作者:王世发,吴艳兴等,58同城数据架构部 导读: 本文介绍了58同城在其数据探查平台中引入StarRocks的实践,旨在提升实时查询性能。在面对传统Spark和Hive架构的性能瓶颈时,58同城选择StarRocks作为加速引擎&…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
