当前位置: 首页 > news >正文

生成树协议 STP(spanning-tree protocol)

、STP作用

1、消除环路:通过阻断冗余链路来消除网络中可能存在的环路。

2、链路备份:当活动路径发生故障时,激活备份链路,及时恢复网络连通性。

二、STP选举机制

1、目的:找到阻塞的端口

2STP交换机的角色根交换机非根交换机

3STP的选举字段

STP的选举是通过比较BPDU(Bridge Protocol Date Unit 桥协议数据单元)的字段

BPDU主要比较以下字段:

 ①根桥ID(根桥的桥ID)(Root Bridge ID)

桥ID=桥优先级+MAC地址

桥优先级:默认32768,范围0--65535,步长4096(0-61440),越小越优

MAC地址:dis stp//dis interface +接口号,越小越优

②根路径开销(Root Path Cost)默认接口开销为20万

非根桥通过对比多条路径的路径开销,选出到达根桥的最短路径,这条最短路径的路径开销被称为RPC(Root Path Cost,根路径开销)

③桥ID(Bridge ID)

桥优先级+MAC地址

④接口ID(Port ID)

接口优先级+接口号

接口优先级:默认128,范围0-240,步长16,越小越优

接口号: 越小越优

4、选举过程

①选举一个根桥交换机。

②每个非根交换机选举一个根端口。

根端口是非根桥到根桥开销最小的端口。

A、端口的根路径开销、对端BID(Bridge桥 ID)、对端PID(Port ID)和本端PID

③每个链路选举一个指定端口。

累计路径开销、桥ID、端口ID

每个链路都应该有一个指定端口,根桥的所有端口都是指定端口(除非根桥在物理上存在环路)。

④阻塞非根、非指定端口。

三、过程演示

1、选举根交换机  (先比较Root Bridge ID的优先级,若优先级一样再比较MAC地址)

在选举出根交换机之前,所有的交换机都会认为自己是根交换机,每个都会发送BPDU,

通过比较BPDU的Root Bridge ID字段,从图中可知LSW1的MAC地址最小最优先,所有LSW1为根交换机。

2.每个非根交换机选举一个根端口。

根端口是非根桥到根桥开销最小的端口。

A、端口的根路径开销、对端BID(Bridge桥 ID)、对端PID(Port ID)和本端PID

3.每个链路选举一个指定端口。

累计路径开销、桥ID、端口ID

每个链路都应该有一个指定端口,根桥的所有端口都是指定端口(除非根桥在物理上存在环路)。

4.选举出阻塞端口

最后,除了根端口,和指定端口,剩下的接口就是阻塞端口啦。

相关文章:

生成树协议 STP(spanning-tree protocol)

一、STP作用 1、消除环路:通过阻断冗余链路来消除网络中可能存在的环路。 2、链路备份:当活动路径发生故障时,激活备份链路,及时恢复网络连通性。 二、STP选举机制 1、目的:找到阻塞的端口 2、STP交换机的角色&am…...

【LeetCode】312.戳气球

题目 有 n 个气球,编号为0 到 n - 1,每个气球上都标有一个数字,这些数字存在数组 nums 中。 现在要求你戳破所有的气球。戳破第 i 个气球,你可以获得 nums[i - 1] * nums[i] * nums[i 1] 枚硬币。 这里的 i - 1 和 i 1 代表和…...

商业数据分析概论

🐳 我正在和鲸社区参加“商业数据分析训练营活动” https://www.heywhale.com/home/competition/6487de6649463ee38dbaf58b ,以下是我的学习笔记: 学习主题:波士顿房价数据快速查看 日期:2023.9.4 关键概念/知识点&…...

Golang GUI框架

Golang GUI框架fyne fyne简介第一个fyne应用fyne应用程序和运行循环fyne更新GUI内容fyne窗口处理fyne解决中文乱码问题fyne应用打包fyne画布和画布对象fyne容器和布局fyne绘制和动画fyne盒子布局fyne网格grid布局fyne网格包裹布局fyne边框布局fyne表单布局fyne中心布局fyne ma…...

LeetCode刷题笔记【24】:贪心算法专题-2(买卖股票的最佳时机II、跳跃游戏、跳跃游戏II)

文章目录 前置知识122.买卖股票的最佳时机II题目描述贪心-直观写法贪心-优化代码更简洁 55. 跳跃游戏题目描述贪心-借助ability数组贪心-只用int far记录最远距离 45.跳跃游戏II题目描述回溯算法贪心算法 总结 前置知识 参考前文 参考文章: LeetCode刷题笔记【23】…...

游戏出现卡顿有哪些因素

一、服务器CPU内存占用过大会导致卡顿,升级CPU内存或者优化自身程序占用都可以解决。 二、带宽跑满导致卡,可以升级带宽解决。 二、平常不卡,有大型的活动的时候会卡,这方面主要是服务器性能方面不够导致的,性能常说…...

学习Bootstrap 5的第八天

目录 加载器 彩色加载器 实例 闪烁加载器 实例 加载器大小 实例 加载器按钮 实例 分页 分页的基本结构 实例 活动状态 实例 禁用状态 实例 分页大小 实例 分页对齐 实例 面包屑(Breadcrumbs) 实例 加载器 彩色加载器 在 Bootstr…...

vue中自定义指令

什么是指令 在Vue.js中,指令是一种特殊的 token,用于在模板中以声明式方式将响应式数据绑定到 DOM 元素上,从而实现与 DOM 元素的交互和操作。指令以 “v-” 前缀开始,后跟指令的名称,例如 v-model、v-bind 和 v-on。…...

Python:安装Flask web框架hello world

安装easy_install pip install distribute 安装pip easy_install pip 安装 virtualenv pip install virtualenv 激活Flask pip install Flask 创建web页面demo.py from flask import Flask app Flask(__name__)app.route(/) def hello_world():return Hello World! 2023if _…...

小程序点击复制功能制作

在wxml文件中添加一个按钮或需要点击的元素&#xff0c;并绑定点击事件监听器2 <button bindtap"copyText">点击复制</button> 2 在对应的js文件中定义点击事件处理函数&#xff0c;并在函数中调用小程序的API进行复制操作&#xff0c; copyText(e){co…...

20230909java面经整理

1.java常用集合 ArrayList动态数组&#xff0c;动态调整大小&#xff0c;实现List接口 LinkedList双向链表&#xff0c;实现list和queue接口&#xff0c;适用于频繁插入和删除操作 HashSet无序&#xff0c;使用哈希表实现 TreeSet有序&#xff0c;使用红黑树实现 HashMap无序&…...

常用的css命名规则

一、命名规则说明&#xff1a; 1&#xff09;、所有的命名最好都小写 2&#xff09;、属性的值一定要用双引号(“”)括起来 3&#xff09;、给图片加上alt标签 4&#xff09;、尽量使用英文命名原则 5&#xff09;、尽量不缩写&#xff0c;除非一看就明白的单词 二、相对网页外…...

【Linux编程Shell自动化脚本】03 shell四剑客(find、sed、grep、awk)

文章目录 一、find1. 常用expression2. 时间参数3. 其他选项参数3.1 查找深度3.2 执行命令 二、sed1. 常用命令选项2. 常用动作脚本命令2.1 s 替换2.2 已匹配字符串标记&2.3 在当前行前后插入文本 a\ 和 i\2.4 p 打印指定行2.5 匹配行的方式2.5.1 以数字形式指定行区间2.5.…...

java的springboot框架中使用logback日志框架使用RabbitHandler注解为什么获取不到消费的traceId信息?

当使用 Logback 日志框架和 RabbitMQ 的 RabbitHandler 注解时&#xff0c;如果无法获取消费的 traceId 信息&#xff0c;可能是因为在处理 RabbitMQ 消息时&#xff0c;没有正确地将 traceId 传递到日志中。 为了将 traceId 传递到日志中&#xff0c;你可以利用 MDC&#xff…...

初探Vue.js及Vue-Cli

一、使用vue框架的简单示例 我们本次的vue系列就使用webstorm来演示&#xff1a; 对于vue.js的安装我们直接使用script的cdn链接来实现 具体可以参考如下网址&#xff1a; https://www.bootcdn.cn/ 进入vue部分&#xff0c;可以筛选版本,我这里使用的是2.7.10版本的&#xff…...

大数据课程K21——Spark的SparkSQL基础语法

文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 掌握Spark的SparkSQL通过方法来使用; ⚪ 掌握Spark的SparkSQL通过sql语句来调用; 一、SparkSQL基础语法——通过方法来使用 1. 查询 df.select("id","name").show()…...

【实践篇】Redis最强Java客户端(三)之Redisson 7种分布式锁使用指南

文章目录 0. 前言1. Redisson 7种分布式锁使用指南1.1 简单锁&#xff1a;1.2 公平锁&#xff1a;1.3 可重入锁&#xff1a;1.4 红锁&#xff1a;1.5 读写锁&#xff1a;1.6 信号量&#xff1a;1.7 闭锁&#xff1a; 2. Spring boot 集成Redisson 验证分布式锁3. 参考资料4. 源…...

卫星通话过后,卫星导航产业被彻底激活

华为新手机发布后&#xff0c;其主打的卫星通话功能备受热议。在卫星产业链发展的背后&#xff0c;下一个大产业在哪里让人颇为好奇。 目前&#xff0c;卫星导航颇被看好&#xff0c;或将引领下一个技术狂潮。它的特点是产业大、发展快、参与者多。继电动汽车、新能源和芯片产…...

【算法训练-链表 七】【排序】:链表排序、链表的奇偶重排、重排链表

废话不多说&#xff0c;喊一句号子鼓励自己&#xff1a;程序员永不失业&#xff0c;程序员走向架构&#xff01;本篇Blog的主题是【链表的排序】&#xff0c;使用【链表】这个基本的数据结构来实现&#xff0c;这个高频题的站点是&#xff1a;CodeTop&#xff0c;筛选条件为&am…...

LGB的两种写法

方法一 import lightgbm as lgb import pandas as pd from sklearn.model_selection import train_test_split, KFold from sklearn.metrics import accuracy_score# 读取训练集和测试集数据 train_data pd.read_csv(train.csv) test_data pd.read_csv(test.csv)# 分割特征和…...

保姆级教程:用PennyLane和泰坦尼克号数据集,5分钟上手你的第一个量子分类器(VQC)

量子机器学习实战&#xff1a;用PennyLane构建泰坦尼克号生存预测模型 量子计算正从实验室走向实际应用&#xff0c;而量子机器学习作为交叉领域的前沿方向&#xff0c;为传统算法提供了新的可能性。本文将带您用PennyLane框架&#xff0c;在经典数据集上完成一次完整的量子分类…...

钱学森物理大一统:宇宙速度阶梯尺 全套公版正式文档(带可计算代码)

宇宙速度阶梯尺 全套公版正式文档 &#xff08;无版权全开源全民通用可直接印刷发布/平台投稿/社区分发&#xff09; 开篇总纲 定名&#xff1a;本源速度阶梯尺 核心主旨&#xff1a;大道至简&#xff0c;以地球天然标准音速为万物速度本源基底&#xff0c;以宇宙真空光速为速度…...

基于Magisk挂载机制的Android HTTPS流量监控完整技术方案

基于Magisk挂载机制的Android HTTPS流量监控完整技术方案 【免费下载链接】httpcanary-magisk 项目地址: https://gitcode.com/gh_mirrors/ht/httpcanary-magisk 现代Android系统安全架构的演进为应用开发者带来了新的技术挑战&#xff0c;特别是在HTTPS流量监控领域。…...

从LED灯珠到手机屏幕:一文搞懂色温、显色指数(CRI)怎么选,告别‘卖家秀’惨案

从LED灯珠到手机屏幕&#xff1a;色温与显色指数的科学选购指南 深夜伏案工作时&#xff0c;你是否总觉得眼睛干涩疲劳&#xff1f;网购衣物到手后颜色总与屏幕显示相差甚远&#xff1f;餐厅美食拍出来总是暗淡无光&#xff1f;这些困扰的根源往往在于——光源质量。当我们面对…...

MA730/MT6835/MT6825/MT6709磁编码器SPI通信实战:从寄存器配置到角度解析

1. 磁编码器SPI通信基础与选型指南 磁编码器作为现代电机控制和机器人系统中的核心传感器&#xff0c;其精度和响应速度直接影响整个系统的性能。MA730、MT6835、MT6825和MT6709这几款磁编码器在工业界应用广泛&#xff0c;它们都采用SPI接口进行通信&#xff0c;但在具体实现上…...

如何为 Claude Code 配置 Taotoken 的稳定 API 连接

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 如何为 Claude Code 配置 Taotoken 的稳定 API 连接 Claude Code 作为一款强大的 AI 编程助手&#xff0c;其原生服务在某些地区可…...

【独家首发】ElevenLabs未公开马拉地语音素映射表(含Devanagari Unicode对照),仅开放48小时下载

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ElevenLabs马拉地语音素映射表的发现背景与战略价值 ElevenLabs 作为前沿语音合成平台&#xff0c;其多语言支持能力持续扩展&#xff0c;但官方文档中并未公开马拉地语&#xff08;Marathi&#xff09…...

告别Keil!用STM32CubeIDE给STM32F103C8T6做双路ADC采样,DMA+中断实战避坑

从Keil到STM32CubeIDE&#xff1a;双路ADC采样与DMA中断实战全解析 当传统嵌入式开发遇上现代化工具链&#xff0c;迁移过程中的技术决策往往比想象中更复杂。对于长期使用Keil MDK的开发者而言&#xff0c;转向STM32CubeIDE不仅意味着开发环境的改变&#xff0c;更涉及从寄存器…...

英雄联盟终极工具箱:5个实用技巧让你游戏效率翻倍

英雄联盟终极工具箱&#xff1a;5个实用技巧让你游戏效率翻倍 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League Akari英雄联盟工具箱是一…...

输入输出:iostream 为什么不是 printf 的替代品

文章目录引言一、printf 的优雅与致命缺陷1.1 printf 为什么好用1.2 三个致命缺陷二、iostream 的哲学&#xff1a;类型安全 可扩展2.1 基本用法2.2 标准流一览2.3 输入&#xff1a;cin 为什么比 scanf 安全三、自定义类型的输出&#xff1a;让 printf 永远做不到的事四、格式…...