网络之路26:STP生成树协议

a94ae75b4b9ec3a8d1ac9dac2a5a692f.gif

正文共:2222 字 19 图,预估阅读时间:3 分钟

9d4a794c6db3d08c26429eefebf2873d.png

目录

c75b4193f4de96c6b7b1d470ec8c6eb6.png

网络之路第一章:Windows系统中的网络

0、序言
1、Windows系统中的网络1.1、桌面中的网卡1.2、命令行中的网卡1.3、路由表1.4、家用路由器

网络之路第二章:认识企业设备

2、认识企业设备2.1、MSR810-W外观2.2、登录MSR810-W管理页面2.3、快速设置上网2.4、WLAN配置2.5、LTE模块配置2.6、MSR810-W高级设置

网络之路第三章:认识设备命令行

3、认识设备命令行3.1、通过Console接口登录设备3.2、远程登录设备3.3、Comware系统的基本命令3.4、MSR810-W配置解读3.5、MSR810-W初始化配置

网络之路第四章(上):认识网络模拟器

4、认识网络模拟器4.1、HCL华三云实验室4.2、eNSP企业网络模拟平台4.3、Cisco Packet Tracer4.4、EVE-NG4.4.1、从OVF导入部署到ESXi4.4.2、使用ISO安装到WorkStation4.4.3、EVE-NG导入iol镜像4.4.4、EVE-NG导入qemu镜像

网络之路第四章(下):认识虚拟化

4.5、虚拟化环境VMware ESXi4.5.1、定制ESXi 6.7安装镜像4.5.2、部署ESXi 6.74.5.3、ESXi 6.7升级ESXi 7.04.5.4、vCenter纳管ESXi主机4.6、虚拟化环境CAS4.6.1、部署CVM管理节点4.6.2、部署CVK计算节点4.6.3、CVM纳管CVK节点4.7、网络功能虚拟化NFV4.7.1、部署NFV4.7.2、配置NFV网络4.7.3、NFV设备初始配置

网络之路第五章:基础网络实验

5、基础网络实验5.1、简单网络环境搭建与测试5.2、网络设备基本连接与调试5.3、ARP协议5.4、DHCP报文交互过程5.5、DHCP基础实验5.6、DHCP进阶实验5.7、VLAN基础实验5.8、VLAN进阶实验

48a65334b82857b459c66c7d19fa66fa.png

6、以太网交换基础实验

0cf436b961b2af3df8909dee39a4cb07.png

学习过了基础的网络实验配置,我们应该对网络实验有了简单的了解。接下来,我们继续学习交换机相关的二层技术配置,在H3C认证课程中,该系列课程为构建高性能园区网络,我们先介绍其中比较简单的部分。

2ad51753f8c898ac15729e401833d4c8.png

6.1、生成树协议

前面介绍VLAN的时候网络之路24:VLAN基础实验,我们提过,如果在实际网络环境中,因为接线不当等原因,可能会出现网络环路的情况。

2dbfffbbfc23ab1369d51a9890245afb.png

大概像上图这样,多台设备首尾相连,此时广播报文就会在几台设备之间不断传播,在传播的同时又在生成新的报文。在这种网络中,过不了多久,网络里的流量就达到设备的性能瓶颈了,出现性能显著下降,甚至网络不可用等问题,影响正常业务报文的转发;这种情况,我们一般称之为“广播风暴”

我们一般将交换机分为傻瓜交换机(二层交换机)和可管理交换机(三层交换机),可管理交换机大部分都可以支持STP(Spanning Tree Protocol,生成树协议),生成树协议是一种二层管理协议,它通过选择性地阻塞网络中的冗余链路来消除二层环路,同时还具备链路备份的功能。

然后我们使用HCL构造一个下图这样的网络拓扑网络之路11:认识网络设备模拟器HCL

06b845418b38bbaab5341857deacd184.png

在不区分VLAN的情况下,要从PC4访问到PC6,可能的路径有以下3条:

1、PC4→SW1→GE0/1→SW2→PC6

2、PC4→SW1→GE0/4→SW2→PC6

3、PC4→SW1→GE0/2→SW3→SW2→PC6

同时我们也能明显的看到,图里面存在环路,此时STP就派上用场了。在H3C的交换机设备上,默认是全局开启了STP的,我们可以通过命令进行查看。

a02416c9f59d568b490af6eaf8599c73.png

STP采用的协议报文是BPDU(Bridge Protocol Data Unit,桥协议数据单元),也称为配置消息,STP通过在设备之间传递BPDU来确定网络的拓扑结构,同时确定端口的角色和状态。STP的端口状态有3种,主要状态为Forwarding(该状态下的端口可以接收和发送BPDU,也转发用户流量)和Discarding(该状态下的端口可以接收和发送BPDU,但不转发用户流量),还有一种过渡状态Learning,该状态下的端口可以接收和发送BPDU,但不转发用户流量。

我们看一下SW2的端口角色和状态。

1edebccdd5ff000e16b18b78754cf98d.png

再看一下SW3的端口角色和状态。

96576e4622f534a689a2f7e3cf9a66d1.png

那么此时的链路状态如下所示:

8147ee66717b0f02472bba3d044fbac6.png

一共4条链路,SW2和SW3的互联线路不转发数据,SW1和SW2的其中一条互联线路不转发数据,虽然接口的物理状态还是UP的,但现在逻辑上已经不存在环路了。

5ea4d5b71eb3e43d666f15d9a6454354.png

然后我们看一下SW2上出现的3种端口角色:

1、GE1/0/1为根端口(Root Port),对应Role为ROOT,是指非根桥设备上离根桥最近的端口,用于在非根桥上负责向根桥方向转发数据。那什么是根桥呢?STP认为树形的网络结构必须有树根,于是便引入了根桥的概念,根桥会根据网络拓扑的变化实时选举改变,但是一个STP中有且只有一个根桥,其他设备则称为叶子结点。以此拓扑为例,非根桥设备SW2和SW3上有且只有一个根端口,而根桥设备SW1上没有根端口。

2、GE1/0/2为指定端口(Designated Port),对应Role为DESI,与根端口相反,指定端口负责向下游网段或设备转发数据的端口。

3、GE1/0/4为替换端口(Alternate Port),对应Role为ALTE,是根端口(STP)和主端口(MST)的备份端口。当根端口或主端口被阻塞后,替换端口将成为新的根端口或主端口。

通过命令,我们可以查看生成树端口角色计算的历史信息。

0e195ec4361bd042538b1f12f951b310.png

我们可以看到接口GE1/0/1的变化过程为DISA→DESI→ROOT,而GE1/0/4的变化过程为DISA→DESI→ALTE,这就说明了根桥的选举过程。

在网络初始化过程中,所有设备都视自己为根桥,生成各自的配置BPDU并周期性地向外发送,BPDU的关键信息包括根桥ID、根路径开销、指定桥ID、指定端口ID等等,通过前面的计算历史我们可以看出,这些ID基本上都由端口的优先级和MAC地址组成。缺省情况下,设备的优先级都是32768,端口的优先级都是128,所以根桥一般都是由MAC地址确定的。只要设备的生产符合规则,没有任何两台设备的MAC地址是一样的,所以MAC地址小的设备发送的BPDU优先级就会更高,在选举的第一步就会直接选举成为根桥,也就不会进入到根路径开销等选举过程。当网络拓扑稳定以后,只有根桥设备才会向外发送配置BPDU,其他设备则对其进行转发。

32fa0cb555f5d8f1ad12ee41ba11e8c6.png

以SW1为例,它的根桥ID就是32768.acb6-e75e-0100,因为它是第一台创建的设备,正常来讲它的MAC地址就是最小的。同时我们可以看到BPDU的发送周期Hello Time为2秒,那我们接下来就可以测一下STP的链路备份功能了。

现在计算PC4到PC6的路径为PC4→SW1→GE0/1→SW2→PC6,那么我们在PC4上发起长ping,然后DOWN掉SW1的GE1/0/1接口,看看报文的中断情况。

82e39b4a5c38c33679013647c1fb9fa4.png

一个报文都没丢,我们看一下SW2的状态变化。

3fd8aeeb312e4d34f6a8fbc06ce422ef.png

从日志来看,整个切换过程一共只有5 MS。

5d824ff078fc1c4b00ff30d7b7dc3cbf.png

从生成树端口角色计算的历史信息来看,接口GE1/0/1的状态DOWN掉之后,接口GE1/0/4马上切换为ROOT根端口,负责向根桥SW1方向转发数据,使得业务中断未引起明显的业务感知。

此时,网络中还存在一条冗余链路呢。

a48dbefeca79f3628d27d188abcecd80.png

我们查看SW3的端口状态,此时GE1/0/1仍然是替换端口,PC4到PC6的路径为PC4→SW1→GE0/4→SW2→PC6。

d33c9bae021cff6ceb9a788d10067e0c.png

那么我们在PC4上发起长ping,然后DOWN掉SW2的GE1/0/4接口,看看报文的中断情况。

80c47acc60e3cc9498d0f4c316b8e583.png

一个报文都没丢,我们看一下SW2的状态变化。

514f69bfeac6ef5c78c25d83dc5b2b35.png

看一下SW3的端口角色计算历史信息,SW2的接口的状态变化之后,SW3的接口GE1/0/1马上切换为DESI指定端口,负责向下游设备SW2转发数据的端口转发数据,使得业务中断未引起明显的业务感知。

8e7e4ba37325946d03f3701efd1d8826.png

通过两次测试,均没有丢包,也没有引起明显的时延跳变,说明STP的收敛速度确实很快。然后我们把两个接口都恢复,再看看生成树的状态会变成什么样。

96338ceb4ca548c5055409eb2bc9936e.png

状态也是很快就切换了,没有丢包也没有引起明显的时延跳变,SW2的端口角色和状态与之前完全一致。

e9d24e0d91e1b52b4d39a298dc0d187d.png

SW3的端口角色和状态也与之前完全一致。只是收敛速度太快,都看不到LEARNING的状态,而且日志也没有记录,只有TC的报文,谁能给个显示状态变化日志的方法?

77caa550a5861196a6d3b406469f1510.gif

长按二维码
关注我们吧

32d67861d7611b6cea883744a9febf6a.jpeg

5cba5dfa42490ef50c1bde84dfbd1d3f.png

软考网络规划师复习第一章:Windows系统中的网络

软考网络规划师复习第二章:认识企业设备

软考网络规划师复习第三章:认识设备命令行

软考网络规划师复习第四章:认识网络模拟器

软考网络规划师复习第五章:认识虚拟化

软考网络规划师复习第六章:基础网络实验

IPv6的风景路由

简单了解一下FortiFirewall、FortiGate和FortiOS的试用授权情况

不用猜了,FortiGate和FortiOS都是永久授权,而FortiFirewall没有试用授权

不需要授权的FortiOS和FortiGate有什么差异?

FortiOS和FortiGate除了在功能上的细微差异,性能差别大吗?

飞塔FortiGate的IPsec VPN应该怎么配?

H3C iMC智能管理中心平台PLAT(7.2_E0403)部署实验

H3C iMC智能管理中心平台PLAT部署EIA/UAM/TAM组件

MSR810使用iMC做认证服务器配置Portal认证

PVE8.0-2安装使用快速指导

借PVE8.0的Debian 12系统配置一下NFS服务器

不想用了PVE了怎么办?那就迁移到VMware呗!

如何手工获取并更新ESXi中macOS的VMware Tools版本

神奇的H3C设备自动配置功能,不用按Ctrl-D/C了

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

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

相关文章

农产品加工行业分析:我国产业总产值共计7.17万亿元

农产品加工是用物理、化学和生物学的方法,将农业的主、副产品制成各种食品或其他用品的一种生产活动。是农产品由生产领域进入消费领域的一个重要环节。主要包括粮食加工、饲料加工、榨油、酿造、制糖、制茶、烤烟、纤维加工以及果品、蔬菜、畜产品、水产品等的加工…

Windows创建服务(.NET8)

windows服务 Windows服务是一种在Windows操作系统中运行的后台程序,用于在系统启动时启动并在系统关闭时关闭。这些服务可以是Microsoft自己的服务,也可以是第三方软件的服务。它们在后台运行,通常不需要交互式用户界面。 Windows服务通常用…

Windows(Microsoft)win电脑装Xcode方法

你想在你的Windows电脑上体验和使用苹果的Xcode进行应用打包。遗憾的是,Xcode官方只支持macOS操作系统,但别担心,我们有替代方案可以让你在Windows环境下进行iOS应用的开发和打包。接下来我将指导你如何实现这一目标。 图片来源:W…

Linux中的网络配置

本章主要介绍网络配置的方法 网络基础知识查看网络信息图形化界面修改通过配置文件修改 1.1 网络基础知识 一台主机需要配置必要的网络信息,才可以连接到互联网。需要的配置网络信息包括IP、 子网掩码、网关和 DNS 1.1.1 IP地址 在计算机中对IP的标记使用的是3…

协议栈的内部结构

上层会向下层逐层委派工作。 最上面的部分是网络应用程序,它们会将收发数据等工作委派给下层的部分来完成。尽管不同的应用程序收发的数据内容不同,但收发数据的操作是共通的。 应用程序的下面是Socket库,其中包括解析器,解析器…

Java画爱心

Java画爱心代码,每个人都可以被需要 效果图 源代码 package com.example.test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import javax.swing.JFrame; class Cardioid extend…

使用cross-env兼容windows和linux环境的nodejs变量

文章目录 前言一、windows使用二、linux环境三、区别相同点不同点 四、使用cross-env兼容项目安装cross-env使用 总结如有启发,可点赞收藏哟~ 前言 由于办公和家里的开发环境不同(windows和linux) 在处理nodejs项目的时候,脚本设…

关注!6岁娃眼外伤后头晕、呕吐,竟是这里骨折了……

孩子们天性活泼好动,总是爱跑爱跳打打闹闹,加上他们机体协调控制能力差,磕磕碰碰情况时有发生,可能导致外伤发生。 前不久,6岁的萱萱(化名)在学校上体育课时,不慎与同学相撞,导致右眼被撞伤。老…

Linux 正则表达式

内容概述 1 文本编辑工具之神 VIM 1.1 vi 和 vim 简介 在 Linux 中我们经常编辑修改文本文件,即由 ASCII Unicode 或者其他编码的纯文字的文件。之前介绍过的 nano,实际工具中我们使用更为专业,功能强大的工具 文本编辑种类: vi…

神经网络模型流程与卷积神经网络实现

神经网络模型流程 神经网络模型的搭建流程,整理下自己的思路,这个过程不会细分出来,而是主流程。 在这里我主要是把整个流程分为两个主流程,即预训练与推理。预训练过程主要是生成超参数文件与搭设神经网络结构;而推理…

基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含pytho、JS工程源码)+数据集+模型(一)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境Jupyter Notebook环境Pycharm 环境 相关其它博客工程源代码下载其它资料下载 前言 本项目基于Keras框架,引入CNN进行模型训练,采用Dropout梯度下降算法,按比例…

【Vue】vue整合element

上一篇: vue项目的创建 https://blog.csdn.net/m0_67930426/article/details/134816155 目录 整合过程 使用: 整合过程 项目创建完之后,使用编译器打开项目 在控制器里输入如下命令 npm install element-ui 如图表示安装完毕 然后在…

报错解决:Fatal error: ‘THC/THC.h‘: No such file or directory

报错解决:Fatal error: THC/THC.h: No such file or directory 报错原因解决方法总结参考文献 报错 博主的软硬件环境(供参考): LinuxNVIDIA GeForce RTX 3090CUDA 11.6gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0Pytorch&#…

YOLOv8创新魔改教程(三)如何添加注意力机制注意力机制的用法与思考

注意力机制的用法与思考 好多同学问我加了CA注意力机制,CBAM注意力机制,都没有涨点,然后就在不停地换不同的注意力机制,其实并不是这样的。今天和大家讨论一下注意力机制的用法与思考。 (一)添加位置 大…

东芝CT高压电源维修VP-33452 ULTIMAX80 DREX-ULT80

东芝高压电源多用于东芝CT机XVISION/EX、AUKLET系列、ASTEION系列、以及多排系列。 电源内部电路不得随意更改。电源维修的几点注意事项,希望大家能够在以后遇到类似的问题能帮帮助到大家。spellmαnl电源维修一首先在维修开关电源时,维修人员在修理时注…

计算机视觉GPT时刻!UC伯克利三巨头祭出首个纯CV大模型,推理惊现AGI火花

计算机视觉的GPT时刻,来了! 最近,来自UC伯克利的计算机视觉「三巨头」联手推出了第一个无自然语言的纯视觉大模型(Large Vision Models),并且第一次证明了纯视觉模型本身也是可扩展的(scalabil…

JVM 分析GC日志

GC日志参数 -verbose:gc 输出gc日志信息,默认输出到标准输出 -XX:PrintGC 输出GC日志。类似:-verbose:gc -XX:PrintGCDetails 在发生垃圾回收时打印内存回收详细的日志,并在进程退出时输出当前内存各区域分配情况 -XX:PrintGCTimeStam…

天池SQL训练营(四)-集合运算-表的加减法和join等

-天池龙珠计划SQL训练营 4.1表的加减法 4.1.1 什么是集合运算 集合在数学领域表示“各种各样的事物的总和”, 在数据库领域表示记录的集合. 具体来说,表、视图和查询的执行结果都是记录的集合, 其中的元素为表或者查询结果中的每一行。 在标准 SQL 中, 分别对检索结果使用 U…

YOLOv3 学习笔记

文章目录 前言一、YOLOv3贡献和改进二、YOLOv3的核心概念2.1 基础理论和工作原理2.2 YOLOv3对比YOLOv1和YOLOv22.2.1 YOLOv12.2.2 YOLOv2/YOLO90002.2.3 YOLOv3 三、YOLOv3的网络架构3.1 Darknet-533.2 残差连接3.3 多尺度预测3.4 锚框3.5 类别预测和对象检测3.6 上采样和特征融…

halcon如何设置窗口背景颜色?

halcon窗口背景默认是黑色,有时候图片背景是黑色,不方便观察边缘,如果需要设置窗口背景颜色,可以使用如下算子。 设置窗口背景颜色:白色 set_window_param (WindowHandle, background_color, white) 设置白色后的效…