STP(802.1D)

news2024/11/11 6:07:48

802.1D:也成为生成树协议(Spanning Tree Protocol,STP),是一种工作在数据链路层的通信协议

作用:防止交换机冗余链路产生的环路,确保以太网中无环路的逻辑拓扑结构,从而避免广播风暴和大量占用交换机的资源

工作原理:当交换机中存在到达根网桥的两条或两条以上的链路时,STP会根据算法选择其中一条作为活动链路,而将其余链路置于阻塞状态,确保任意两条交换机只有一条单一且尽量最短的活动链路。当最佳路径故障时,自动打开部分阻塞端口,来实现线路备份的作用。生成树在生成过程中,应该尽量的生成一棵星型结构且最短路径树。

        当冗余链路导致二层的桥接环路时,会导致广播风暴、对统一数据帧反复拷贝、MAC地址表不断刷新翻滚,这三个问题会不断占用硬件资源,逐渐导致设备性能极限,设备过热保护,重启或关机

BPDU:网桥协议数据单元,是交换机间沟通互动收发的协议报文,用于确定网络拓扑结构和根网桥

BPDU主要有两种类型:配置BPDU和拓扑变更通知BPDU

1)配置BPDU:只有根网桥可以发送,在交换网络初始状态时,所有交换机均定义本地为根网桥,进行BPDU的发送;使得网络中所有交换机均收到其他设备的BPDU,之后基于数据中的参数进行比对,选举出根网桥。然后所有非根网桥不再发送BPDU,而是仅接收和转发根网桥的BPDU。周期2s发送,hold time 20s

2)拓扑变更通知BPDU(TCN BPDU):本地交换机链路故障后,STP重新收敛,为了快速刷新全网所有交换机的MAC表,将向本地所有STP接口发送TCN(标记位中的TCN位置1),邻居交换机收到TCN后,先标记为ACK位为回复,用于可靠传输消息;之后将TCN逐级转发到根网桥处,由根网桥回复TC消息来逐级回复到所有交换机;使所有交换机临时将MAC表的老化时间修改为15s(默认的,转发延时)

802.1D选举机制

选举角色:

  1. 根网桥(Root Bridge):整个树形结构中有且仅有一台交换机成为根网桥,其作用是周期发送BPDU并计算和指挥整棵树的收敛
  2. 根端口(Root Port):每台交换机上有且仅有一个接口成为根端口,为每个非根交换机上离根桥最近的端口,用于接收来自根的BPDU和转发用户的数据
  3. 指定端口(Designated Port):在每一条两端均运行STP的物理链路上,有且仅有一个接口成为指定端口,用于准发来自根桥的BPDU,也正常转发用户的数据
  4. 非指定端口(Blocking Port):无上面三种角色的端口都为非指定端口,只接收数据,不转发数据

1)根网桥选举:比较BID(小优),BID由优先级和MAC地址组成。即先比较优先级(默认为32768,取值范围为0-65535),如果优先级相同则比较MAC地址(小优)

支持STP的交换机,一定也支持SVI技术。因为SVI可以让交换机配置IP地址,因此能使用SVI技术的设备,自然出厂时会携带MAC地址,而STP技术就是借用该MAC地址

2)根端口选举:

  1. 比较从根网桥发出的BPDU,通过该接口进入时的最小cost值。
  2. 若入向cost值相同,则比较对端上级设备的BID,BID小的设备对应的接口为根端口
  3. 若上级设备的BID相同,则比较上级接口的PID

当cost值相同时,该选择两条链路的意义已经不大,所以比较上级设备的BID,来决定哪个设备更可能会成为新的根桥,当成为新根桥时,其链路的角色不会发生变化

PID由接口优先级(小优)和接口编号(小优)组成,先比较接口优先级(默认128,取值范围为0-255),再比较接口编号(如g/0/0/0)

3)指定端口选举:根端口对端为指定端口,根网桥上所有接口都为指定端口

  1. 比较从根网桥发出BPDU,通过该接口转发的最小cost值
  2. 比较本地BID(小优)
  3. 比较本地PID(小优)
  4. 直接阻塞(这种情况一般是同一根线插在了透明交换机的两个接口,即一根线的两端在同一边)

4)非指定端口选举:等待以上角色选举完成后,剩余没有角色的端口全部变成非指定端口

cost值计算:每条链路根据带宽决定它的cost值

802.1D标准802.1T标准
10M = 10010M = 2000000
100M = 19100M = 200000

1000M = 4

1000M = 20000

10000M = 2

10000M = 2000
>100000M = 1以此类推......

端口状态

1)down:STP未运行,没有BPDU收发,一旦可以进行BPDU收发进入下一状态

2)监听:强制15s,所有交换机进行BPDU收发,选举所有角色。接口角色为非指定端口直接进入阻塞状态。若为指定端口和根端口进入下一状态

3)学习:强制15s,指定端口和根端口学习所有接口连接设备的MAC地址,生成MAC表。之后进入下一状态

4)转发:指定端口和根端口只有进入转发状态后,才可以转发用户报文

5)阻塞:逻辑阻塞

注意:只有到接口进入到转发状态后,才能为用户转发数据报文,之前的30s不能转发任何数据

802.1D缺点:

  1. 收敛慢
  2. 链路利用率低

802.1D算法的收敛时长:

1)初次收敛:30S = 15S侦听 + 15S学习

2)结构变化:

  • 30S
  • 50S

存在直连检测:本地仅存在一个阻塞端口接收到根网桥的BPDU,其他端口已断开,该阻塞端口马上进入15是侦听(选举);结果若为启用,那么将再进入15s学习---总30s

没有直连检测:本地不存在阻塞端口,若某个端口断开,将发送次优BPDU(以本地为根)给其他邻居交换机,其他交换机无视该数据,进行20s hold time计时,到时阻塞接口进入15s侦听,15s学习=总50s

配置命令

1、修改为802.1D算法,当下华为默认为MSTP
[sw1]stp mode stp   

2、修改网桥优先级,取值范围为0-61440
[sw1]stp priority 4096    

3、修改接口cost值,取值范围为1-200000000
[sw1-GigabitEthernet0/0/1]stp cost 10

4、修改接口优先级,取值范围为0-240
[sw1-GigabitEthernet0/0/1]stp port priority 10

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MacBook电脑远程连接Linux系统的服务器方法

一、问题简介 Windows 操作系统的电脑可使用Xshell等功能强大的远程连接软件。通过连接软件,用户可以在一台电脑上访问并控制另一台远程计算机。这对于远程技术支持、远程办公等场景非常有用。但是MacBook电脑的macOS无法使用Xshell。 在Mac上远程连接到Windows服…

昇思25天学习打卡营第18天 | 基于MindSpore的GPT2文本摘要

昇思25天学习打卡营第18天 | 基于MindSpore的GPT2文本摘要 文章目录 昇思25天学习打卡营第18天 | 基于MindSpore的GPT2文本摘要数据集创建数据集数据预处理Tokenizer 模型构建构建GPT2ForSummarization模型动态学习率 模型训练模型推理总结打卡 数据集 实验使用nlpcc2017摘要数…

详解MLOps,从Jupyter开发到生产部署

大家好,Jupyter notebook 是机器学习的便捷工具,但在应用部署方面存在局限。为了提升其可扩展性和稳定性,需结合DevOps和MLOps技术。通过自动化的持续集成和持续交付流程,可将AI应用高效部署至HuggingFace平台。 本文将介绍MLOps…

网安播报|Python 的 GitHub 核心资源库 token 意外曝光,风险巨大

1、Python 的 GitHub 核心资源库 token 意外曝光,风险巨大 网络安全专家发现了意外泄露的 GitHub token,能以最高权限访问 Python 语言、Python 软件包索引(PyPI)和 Python 软件基金会(PSF)存储库。如果该 …

如何确保微型导轨电能表的精准计量?

微型导轨电能表是一种小型化的电表,通常用于精密仪器和设备中。采用模数化设计,精确度高,具有体积小,易安装,易组装等优点。易于实现终端照明电能计量,便于照明系统加装电度表的改造。 对于用户来说&#x…

2024北京国际智能工厂及自动化展览会亮点前瞻

随着“工业创新,智造未来”的浪潮席卷而来,2024年度北京国际智能工厂及自动化与工业装配展览会定于8月1日至3日在中国国际展览中心(顺义新馆)盛大开幕。本次展会汇聚了智能制造与自动化技术的最新成果,通过三展联动的创…

ozon计算器5.0版本,ozon计算器5.0定价产品价格

在跨境电商的浩瀚星海中,俄罗斯Ozon电商平台以其庞大的市场规模和快速增长的势头,成为了众多卖家竞相布局的蓝海。然而,在这片充满机遇的土地上,如何精准定价,确保利润最大化,同时又能吸引消费者&#xff0…

【Git分支管理】分支策略 | Bug分支

目录 1.分支策略 2.特殊场景-Bug分支 2.1 master出现bug ​2.2 dev2正在开发☞stash区域 2.3 dev2正在开发master出现bug 2.3.1 fix_bug修复bug和master合并 2.3.2 dev2分支开发完和master合并 合并冲突:merge☞手动解决☞提交没有合并冲突:mer…

基于Go语言快速开发抖音小程序 提高性能、效率和降低成本开发框架 让开发变得极简单 开箱即用省时又省钱

前言 用Go语言Arco Design集成后台框架,我们把日常开发常用的基础开发成基础包,等到有项目时安装、下载基础代码就可以马上开发业务,您可以快速搭建好抖音小程序应用开发,为大家搭建抖音后台管理、抖音原生开发模板、小程序登录、…

大模型-Bert+PET实战

PET(Pattern-Exploiting Training) 背景:预训练语言模型(比如BERT)知识全面,但是没有针对下游任务做针对训练,所以效果一般,所以需要根据任务做微调。 核心思想:根据先…

langchain 简介

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 LangChain 是一个用于语言模型和应用程序开发的框架,它提供了一系列工具和组件, 帮助开发者更轻松地构建基于大型…

【JVM基础02】——组成-程序计数器解读

目录 1- 引言:程序计数器1-1 程序计数器是什么?为什么用程序计数器?(What)(Why) 2- 核心:程序计数器的原理(How)2-1 使用 javap 查看程序计数器的作用2-2 多线程下程序计数器原理举例 3- 小结:什…

Linux HOOK机制与Netfilter HOOK

一. 什么是HOOK(钩子) 在计算机中,基本所有的软件程序都可以通过hook方式进行行为拦截,hook方式就是改变原始的执行流。 二. Linux常见的HOOK方式 1、修改函数指针。 2、用户态动态库拦截。 ①利用环境变量LD_PRELOAD和预装载机…

Calibre:soft check

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 soft check检查在lvs检查中属于必看的类型,往往是因为衬底没有硬连接,接pg stripe造成的 下图是一个soft check的错误报告,重要信息有两个: 1)问题在ntap上,也就是着重检查power pin相关的连…

七款最佳公司电脑屏幕监控软件推荐|2024年屏幕监控软件超全盘点!

在当今企业管理中,电脑屏幕监控软件已成为保障数据安全和提升员工生产力的关键工具。选择一款合适的监控软件,可以帮助管理者有效监督员工的电脑使用行为,防止潜在的安全威胁和不当行为。小编分享七款备受好评的电脑屏幕监控软件,…

揭秘!SmartEDA何以成为新生代国产EDA领军者?

在当下科技日新月异的时代,EDA(电子设计自动化)作为集成电路设计的核心工具,其重要性不言而喻。而在这一领域中,SmartEDA凭借其卓越的性能和创新能力,迅速崭露头角,成为新生代国产EDA的领军者。…

2024可信数据库发展大会|存算分离架构驱动电信数据平台革新

7 月 16 日 - 17 日,由中国通信标准化协会和中国信息通信研究院主办,大数据技术标准推进委员会承办,InfoQ 联合主办的「2024 可信数据库发展大会」(TDBC)在北京召开。 酷克数据解决方案架构师吴昊受邀参与“电信行业数…

PyTorch使用细节

model.eval() :让BatchNorm、Dropout等失效; with torch.no_grad() : 不再缓存activation,节省显存; 这是矩阵乘法: y1 tensor tensor.T y2 tensor.matmul(tensor.T)y3 torch.rand_like(y1) torch.matm…

破解反爬虫策略 /_guard/auto.js(一) 原理

背景 当用代码或者postman访问一个网站的时候&#xff0c;访问他的任何地址都会返回<script src"/_guard/auto.js"></script>&#xff0c;但是从浏览器中访问显示的页面是正常的&#xff0c;这种就是网站做了反爬虫策略。本文就是带大家来破解这种策略&…

USB3200N模拟信号采集卡12位8路500K采样带DIO带计数器

1、概述&#xff1a; USB3200N多功能数据采集卡&#xff0c;LabVIEW无缝连接&#xff0c;提供图形化API函数&#xff0c;提供8通道&#xff08;RSE、NRSE&#xff09;、4通道&#xff08;DIFF&#xff09;模拟量输入&#xff0c;4路可编程数字I/O&#xff0c;1路计数器。 USB3…