STP生成树——解决二层组网环路

目录

一.二层组网环路

1.广播风暴

2.MAC地址漂移

3.有没有三层环路

二.STP生成树

(1)工作原理

(2)STP概念

1.桥ID(BID)

2.根桥

3.COST

4.RPC

5.  Rort ID ——本端

6.BPDU报文

7.PID(Port ID)

(3)STP计算

1.选举根桥

2.非根交换机选举根接口

3.选取指定端口(每条链路)

4.堵塞非根接口并且非指定端口的端口

三.实例

   1.选根桥

2.选举根接口

3.选举指定端口

4.堵塞SWCG0/0/2(非根接口并且非指定端口)


一.二层组网环路

一般的二层交换机组网缺乏冗余,一旦交换机产生问题,网络就会产生影响。

例如这个拓扑,交换机接口产生问题,网络收到影响。

为了解决这个问题,我们需要增强组网的冗余性。

这样有一个端口不能使用,我们也有其他的端口(或交互机)可以使用。

但这样容易产生广播风暴,和MAC地址漂移(MAC地址不稳定)的问题。

1.广播风暴

交换机在传输数据时泛洪(就是把数据帧复制好几份,发出去),会导致广播风暴。

广播风暴对网络的危害是非常大的,将严重消耗设备资源及网络带宽,最终导致网络瘫痪,是需要格外注意的问题。

2.MAC地址漂移

首先我们要知道,交换机通过接受到的数据帧中的源MAC地址生成MAC表项

1.pc2发送数据帧给服务器

2.LSW3MAC表中没有匹配的目的MAC,进行泛洪

3.LSW1,2接到数据帧,学习源MAC,他们的MAC表中也没有匹配的目的MAC,进行泛洪

3.LSW1,2由从自己的另一个端口接收到数据帧,学习到源MAC,MAC表又一次发生转变

这就导致了MAC表漂移,无法将报文从正确的接口发出去。(虽然已经找到了服务器的MAC地址,但回不去了。这就是来时候好好的,回回不去了

3.有没有三层环路

没有滴。

三层网络的设备有三层交换机和路由器

路由器有静态路由和动态路由,静态路由还是有可能产生环路的,但这一般不用与大型网络,因为需要手工配置。

动态路由RIPOSPFRIP有跳数限制,一般不用与大型网络,而且超过15跳就不能发送了。

OSPF是链路状态协议,通过SPF算法计算出一根以自己为根的,无环的,拥有最短路径的树

动态路由协议——OSPF-CSDN博客

二.STP生成树

工作在二层网络

(1)工作原理

打破环路,计算出对网络影响最小的接口,逻辑上堵塞这个接口。

(2)STP概念

1.桥ID(BID)

交换机叫网桥,所以叫桥ID。

BID= 优先级+MAC地址

缺省情况下,交换机的桥优先级取值是32768

一般情况下设定为4096,或4096的倍数

2.根桥

根桥就是STP生成树逻辑上的根桥ID最小的是根桥(二层是小而优,三层是大而优)

3.COST

带宽大,开销小

4.RPC

路由表开销,源到目的所有入接口开销之和

5.  Rort ID ——本端

优先级+端口号(0—255,default_128)

6.BPDU报文

BPDU主要进行根桥、端口角色的选举和通知拓扑结构发生变化

STP每隔2s会发送一次BPDU报文(由根桥发送),非根桥连续三次没有收到BPDU,表示发生故障

7.PID(Port ID)

端口ID。PID(16位) = 端口优先级(4位) + 端口号(12位)。

(3)STP计算

1.选举根桥

一开始所有端口都认为自己是根桥,并以自己为根桥发送BPDU报文

根据BID选根桥(可抢占)

2.非根交换机选举根接口

根接口接受BPD

广义上:朝向根桥的就是根接口(管理员)

选举根接口:

(1).RPC:以小为优(源到目的所有入接口开销之和)

(2).对端口桥ID,以小为优

(3).对端口PID,以小为优

(4).比较自身的PID,以小为优

3.选取指定端口(每条链路)

广义上:发送根桥的就是根接口,根桥的端口都是指定端口

选举:

(1)比较链路两端RPC

(2)比较链路两端桥ID

(3)比较链路两端端口ID

4.堵塞非根接口并且非指定端口的端口

三.实例

1.

   1.选根桥

SWABID的优先级是4096,其他都是32768,选举SWA为根桥

2.选举根接口

1.比RPC

SWB:有两条路,SWAG0/0/1到SWBG0/0/1RPC是0,SWBG0/0/1是根接口

        SWAG0/0/2到SWCG0/0/1到SWBG0/0/2RPC是20000

SWC:有两条路:SWAG0/0/2到SWCG0/0/1RPC是0,SWCG0/0/1是根接口

 SWAG0/0/1到SWBG0/0/1到SWCG0/0/2RPC是20000

3.选举指定端口

SWA是根桥,两个端口都是指定端口

1.比RPC

链路两端RPC,选不出来

2.比BID

SWAG0/0/1,SWBG0/0/1这条链路是SWA优先级高,SWAG0/0/1是指定端口

SWAG0/0/2到SWCG0/0/1这条链路是SWA优先级高,SWAG0/0/2是指定端口

SWBG0/0/2到SWCG0/0/2这条链路是SWB优先级高(MAC地址),SWBG0/0/2是指定端口

4.堵塞SWCG0/0/2(非根接口并且非指定端口)

对网络影响最小,逻辑堵塞

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

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

相关文章

IDC:2027年中国网络安全市场规模将超200亿美元

IDC于近日发布了2024年V1版IDC《全球网络安全支出指南》(IDC Worldwide Security Spending Guide)。IDC数据显示,2022年全球网络安全IT总投资规模为1890.1亿美元,并有望在2027年增至3288.8亿美元,五年复合增长率(CAGR)…

若依ruoyi-vue实现excel导入导出

文章目录 Excel注解excel数据导入前端实现后端实现 下载模板前端实现后端实现 excel数据导出前端实现后端实现 自定义标题信息导出用户管理表格新增标题(用户列表)导入表格包含标题处理方式 自定义数据处理器自定义隐藏属性列导入对象的子对象导出对象的…

FakeLocation报虚拟位置服务连接失败,请重启设备再试

虚拟位置服务连接失败,请重启设备再试 最近遇到一个手机软件报的bug“虚拟位置服务连接失败,请重启设备再试” 因为我的实体“虚拟机”已经root,按道理是不可能报这个错的 折腾了2天,终于解决了 原来是这样,安装最新…

龙智亮相2024国际集成电路展览会暨研讨会(IIC Shanghai),分享芯片研发及管理解决方案与技术实践

2024年3月28-29日(周四-周五),上海张江科学会堂,2024国际集成电路展览会暨研讨会(IIC Shanghai 2024)即将盛大开幕。龙智携芯片研发及管理解决方案、最佳实践与案例,以及惊喜大奖在#1A14展位等着…

【C语言】数组和指针

目录 一、&数组名VS数组名 二、数组指针 三、指针数组 四、函数指针 五、const和指针 1、常量指针 六、sizeof和指针、数组 七、strlen和字符数组 八、指针和数组笔试题 1、一维数组 2、字符数组 3、二维数组 一、&数组名VS数组名 //试试这段代码 #includ…

15:00面试,15:06就出来了,问的问题有点变态了

从小厂出来,没想到在另一家公司又寄了。 到这家公司开始上班,加班是每天必不可少的,看在钱给的比较多的份上,就不太计较了。没想到3月一纸通知,所有人不准加班,加班费不仅没有了,薪资还要降30%…

PTA L2-032 彩虹瓶

彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里。 假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 到 N)。现在工…

基于cnn卷积神经网络的yolov8动物姿态估计识别(训练代码)

往期热门项目大合集: 人体姿态识别(教程代码)-CSDN博客 3D人体姿态估计(教程代码)-CSDN博客 3D目标检测(教程代码)_3d目标检测原理-CSDN博客 交通路标识别(教程&代码)_路标识别项目概述…

【c++】类和对象(二)this指针

🔥个人主页:Quitecoder 🔥专栏:c笔记仓 朋友们大家好,本节内容来到类和对象第二篇,本篇文章会带领大家了解this指针 目录 1.this指针1.1this指针的引出1.2this指针的特性1.3思考题1.4C语言和C实现Stack的对…

QB 系统配置模板

查询的时候,直接 在下面添加 一个字段就行! public function getDeatil(){$post $this->request->post();if(!isset($post[id])){return out(请传递活动的id);}$builder new Builder($this->getModel());$builder->setFilter([id > …

轨迹预测后处理之非极大值抑制(NMS)

非极大值抑制是图像处理里面的一种算法(比如边缘检测会使用到) 轨迹预测这里借鉴了其思想,比如说对于某个场景中的某辆车,我们使用模型预测 64 条轨迹或者更多,以很好地捕获多模态性,同时每条轨迹对应一个…

看似简单的SQL,实则就是简单

加班遇到一个SQL问题,本想把别人的SQL改下成SparkSQL,在YARN上运行,然而数据一直对不上。 原SQL ⚠️说明:a.id,b.id没有空的,数据1:1,b.name可能存在空的 select a.id,b.id,b.name from tab…

MySQL数据库的备份

文章目录 MySQL数据库的备份MySQL备份方法完全备份物理备份备份 逻辑热备完全备份逻辑热备恢复恢复库恢复表 增量备份备份增量备份恢复基于位置进行恢复基于时间 MySQL数据库的备份 MySQL备份方法 物理备份: 物理备份涉及直接复制MySQL的数据文件和日志文件。这种…

FANUC机器人某个轴编码器损坏时进行单轴零点标定的具体方法

FANUC机器人某个轴编码器损坏时进行单轴零点标定的具体方法 前提: FANUC机器人编码器或其线路有损坏,一般先将机器人移动至零点位置,编码器相关部件更换完毕后,直接进行零点标定即可。但是对于突发的状况,这种方法显然是不行的,比如在生产过程中突然发生碰撞导致编码器相…

暴雨讲堂:AI时代第五代英特尔CPU能做什么?

如果把科技圈比作娱乐圈,那么这两年的顶流一定是AI。2023年,世人见证了ChatGPT在全球范围内的大火,以生成式AI为代表的新一轮人工智能应用问世,改变了人工智能(AI)技术与应用的发展轨迹,并开始在…

什么是进程

目录 一. 进程的概念二. 进程的组成三. 进程的特征四. 进程的状态与转换4.1 进程的状态4.2 进程状态的转换4.3 进程的组织方式 五. 进程控制5.1 进程控制5.2 进程创建 六. 进程之间的通信6.1 共享存储6.2 消息传递 \quad 一. 进程的概念 \quad 思考:操作系统是这些进程的管理者…

oracle19c单机版补丁19.3.0.0升级到19.22.0.0

oracle19c单机版补丁升级到19.22.0.0 一、获取补丁包 查看之前的版本 column product format A30 column version format A15 column version_full format A20 column status format A15 select * from product_component_version;二、备份opatch和数据库文件 su - oracle …

封装-练习

T2、以面向对象的思想,编写自定义类描述IT从业者。设定属性包括:姓名,年龄,技术方向,工作年限;方法包括:工作。 要求: 设置属性的私有访问权限,通过公有的get,set方法实现…

AD域的使用

一,部署共享网络驱动器 1/根目录下创建共享资料库-共享 2/用户-首选项-windows设置-网络驱动器-新建-映射驱动器 3/创建-共享路径-驱动器号(可固定/可随机) 4/更新策略:gpupdate /force 5/客户端查看 首先我们打开服务器此电脑 建立一个文件夹 右击文件夹点击属…

Avalonia(11.0.2)+.NET6 打包设置发布包的版本号

Avalonia11.0.2+.NET6 打包设置发布包的版本号 系统版本如何打包设置打包的版本号本文是对上一篇打包文章的补充,后台好多人私信我说打包的版本号如何设置,今天出个补充说明 Avalonia(11.0.2)+.NET6 打包运行到银河麒麟V10桌面系统 系统版本 如何打包 Avalonia(11.0.2)+.NET…