计算机网络(网络原理与应用)之高级交换实验------冗余环路与生成树协议

一、实验目的

(1)了解生成树协议的作用;

(2)熟悉生成树协议的配置。

二、应用环境

采用生成树协议可以避免环路。

生成树协议的根本目的是将一个存在物理环路的交换网络变成一个没有环路的逻辑树形网络。IEEE802.ID协议通过在交换机上运行一套复杂的算法STA(spanning-tree algorithm), 使冗余端口置于“阻断状态”,使得接入网络的计算机在与其他计算机通讯时,只有一条链路生效,而当这个链路出现故障无法使用时,IEEE802.1d协议会重新计算网络链路,将处于“阻断状态”的端口重新打开,从而既保障了网络正常运转,又保证了冗于能力。

三、实验设备

  1. DCS二层交换机2台
  2. PC机2台
  3. 直通网线4-8根

四、实验拓扑

五、实验要求

IP地址设置:

设备

IP

Mask

交换机A

10.1.157.100

255.255.255.0

交换机B

10.1.157.101

255.255.255.0

PC1

10.1.157.113

255.255.255.0

PC2

10.1.157.114

255.255.255.0

网线连接:

交换机A   e0/0/1

交换机B   e0/0/3

交换机A   e0/0/2

交换机B   e0/0/4

PC1

交换机A   e0/0/24

PC2

交换机B   e0/0/23

如果生成树成功,则PC1无论何时均可以ping 通PC2

六、实验步骤

第一步:正确连接网线,恢复出厂设置之后,做初始配置。(可选配置)

恢复出厂设置

配置交换机 A IP 地址:

结果:

交换机 B IP 地址配置:

结果:

pc1 配置:

结果:

pc2 配置:

第二步:“PC1 ping PC2-t”观察现象

  1. ping 不通;
  2. 所有连接网线的端口的绿灯很频繁的闪烁,表明该端口收发数据量很大,已经在交换机内部形成广播风暴

第三步:在两台交换机中都使用启用生成树协议

   switchA(config)#spanning-tree mode stp

   MSTP is starting now, please wait……..

   MSTP is enabled successfully

   switchA(Config)#

   switchB(Config) #spanning-tree mode stp

   MSTP is starting now, please wait…….

   MSTP is enabled successfully

   switchB(Config)#

   

验证配置:

   switchA#show spanning-tree

                     --MSTP Bridge Config Info--

   Standard    :IEEE802.s

   Bridge MAC:  00:03:0f:00:5d:50

   Bridge Times: Max Age 20,Hello Time 2,Forward Delay 15

   Force Version: 3

   ########################Instance 0###########################

   Self Bridge Id   : 32768 - 00:03:0f:00:5d:50

   Root Id        : this switch

   Ext.RootPathCost : 0

   Region Root Id  : this switch

   Int.RootPathCost: 0

   Root PortID    : 0

   Current port list in Instance 0:

   Ethernet0/0/2  Ethernet0/0/2(Total 2)

   PortName   ID  xtRPC IntRPC  State Role   DsgBridge    DsgPort

   -------------- ------------  ---------- -------------  ---------------------

  Ethernet0/0/1 128.001   0    0 FWD DSGN  32768.0003f005d50 128.001

  Ethernet0/0/2128.002    0    0FWD DSGN  32768.0003f005d50 128.002

  switchA#

  switchB#show spanning-tree

                        --MSTP Bridge Config Info--

   Standard    :IEEE802.1s

   Bridge MAC:  00:03:0f:01:ec:0a

   Bridge Times: Max Age 20,Hello Time 2,Forward Delay 15

   Force Version: 3

   ########################Instance 0############################

   Self Bridge Id   : 32768 - 00:03:0f:01:ec:0a

   Root Id        : 32768.00:03:0f:00:5d:50

   Ext.RootPathCost : 200000

   Region Root Id  : this switch

   Int.RootPathCost: 0

   Root PortID    : 128.4

   Current port list in Instance 0:

   Ethernet0/0/3  Ethernet0/0/4(Total 2)

   PortName   ID  ExtRPC IntRPC  tate Role  DsgBridge    DsgPort

   -------------- ------------  ---------- -------------  ---------------------

  Ethernet0/0/3  128.003  0   0 BLK  ALTR  32768.00030f005d50 128.002

  Ethernet0/0/4  128.004  0   0FWD ROOT   32768.00030f005d50 128.001

  switchB#

  从show中可以看出,交换机A是根交换机,交换机B的4端口是根端口

第四步:继续使用“PC1 ping PC2-t”观察现象

  1. 拔掉交换机B端口4的网线,观察现象,使用show spanning-tree查看生成树状态,写在下方:

 

再插上交换机B端口4的网线,观察现象,写在下方:

七、注意事项和排错

 在交换机未启动生成树之前尽量不要使两台设备之间形成环路,因为一旦形成环路,交换机性能将遭受很大影响,很可能影响后续设备是否能够写入设备。

八、课后练习

  1. 使用4根网线连接两台交换机,观察端口的选择,观察备分线路启用时候的debug信息
  2. 使用“spanning-tree mode mstp”来进行上面的实验,体验备份分链路启用和断开所需要的时间长短

九、后言

生成树协议(Spanning Tree Protocol,STP)的主要作用是在网络中防止环路(loop)的产生,并确保网络中的数据包能够按照一条确定的路径传输,而不会陷入无限循环。

具体来说,生成树协议实现以下几个作用:

环路消除:

在一个具有冗余链路的网络拓扑中,可能会形成环路,导致数据包在网络中无限循环,造成网络拥堵甚至崩溃。生成树协议通过选举出一条主干路径,关闭其他的冗余路径,从而消除环路。

冗余路径备份:

虽然生成树协议会关闭冗余路径以消除环路,但它同时会保留这些路径作为备份。一旦主干路径中的某个链路失败,生成树协议会自动选择一条备份路径来维持网络的连通性,实现快速的网络恢复。

自动网络拓扑调整:

当网络中的拓扑结构发生变化时(如添加或移除了一个链路或交换机),生成树协议能够自动感知并调整生成树,以适应新的网络拓扑,保持网络的稳定性和高可用性。

提高网络效率:

生成树协议通过关闭冗余路径,避免了数据包的重复传输,从而提高了网络的整体效率和性能。

总的来说,生成树协议在网络中起着至关重要的作用,可以确保网络的稳定运行,防止环路产生,提高网络的可用性和性能

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

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

相关文章

JupyterLab OpenCV展示图片

JupyterLab OpenCV展示图片 方式一 注意:此种方式如果在远程服务器上的JupyterLab上运行,可能会出现错误。 import cv2# 读取图片 image cv2.imread(photo/blg.png)# 显示图片 cv2.imshow(image, image)# 等待按键,之后关闭所有窗口 cv2.w…

Deckset for Mac:让演示文稿制作更轻松

还在为繁琐的演示文稿制作而烦恼吗?Deckset for Mac来帮您解决!它支持Markdown语言,让您只需专注于内容的创作,无需在排版和设计上耗费过多精力。丰富的主题和布局选项,让您能够轻松打造出专业级的演示文稿。快来体验D…

我的 OpenLiteSpeed 从开始到放弃之经历

昨晚下定决心放弃 OpenLiteSpeed 了,从开始到放弃历时七天。总结下来放弃 OpenLiteSpeed 主要是实在不适合明月当前的需要,用起来不是锦上添花而是个累赘了都,今天明月就给大家总结分享一下这次 OpenLiteSpeed 从开始到放弃的经历。 一、Ngin…

【C++基础】最短距离和路径问题

时间限制 : 1 秒 内存限制 : 128 MB 有n个城市&#xff08;编号为1~n&#xff09;&#xff0c;m条道路&#xff08;n < 1000, m < 10000)&#xff0c;每条道路有个长度&#xff08;道路是双向的&#xff0c;两个方向都能走&#xff09;&#xff0c;请找到从起点s到终点…

OpenCV 实时目标检测

0.概述 1.原理介绍 2.代码实现 #include <iostream> #include <opencv2/opencv.hpp>int main() {// Load pre-trained MobileNet SSD model and configurationstd::string model "path_to_mobilenet_iter_73000.caffemodel";std::string config &qu…

List<User>转为Map<Integer,User>

在Java中&#xff0c;可以使用Java 8引入的Stream API来轻松地将List转换为Map。以下是将List转换为Map<Integer, User>的示例代码&#xff0c;其中User对象有一个名为id的整数属性作为唯一标识符。 import java.util.List; import java.util.Map; import java.util.str…

IO进程day6

1&#xff1a;有一个隧道&#xff0c;全长5公里&#xff0c;有2列火车&#xff0c;全长200米&#xff0c; 火车A时速 100公里每小时 火车B时速 50公里每小时 现在要求模拟火车反复通过隧道的场景(不可能2列火车都在隧道内运行…

LLM量化

Efficient Finetuning prefix tuning 针对每种任务&#xff0c;学习prefix vector 启发于prompting&#xff0c;调整上下文内容让模型去输出自己想要的内容 核心就是找到一个上下文去引导模型解决NLP生成任务 传统情况下&#xff0c;我们为了得到想要的结果&#xff0c;会…

[初学rust] 04_rust复合类型

rust复合类型 字符串 由于rust的字符串元素类型是u8(1字节),但是字符类型是unicode(4字节) 索引不能像C那样读取又由于String类型和&str类型都是utf-8编码&#xff0c;中文占3字节切片可能会导致崩溃 slice(切片) 切片就是对String类型中的一部分的引用&#xff0c;它…

语言:C#

一、VSCode生成exe 二、

EasyRecovery(易恢复) 使用测试及详细使用方法

你有没有因为数据丢失懊悔不已&#xff0c;EasyRecovery&#xff08;易恢复&#xff09;&#xff0c;来自美国拥有38年数据恢复的软件&#xff0c;只有收费版&#xff0c;重要事情说三遍&#xff0c;EasyRecovery 没有免费版&#xff0c;可以成功找回删除的部分文件&#xff0c…

SQLite .journal 文件

在之前插入大量数据测试的时候&#xff0c;发现在数据库文件同级目录下会产生一个同名.journal的文件&#xff0c;并且不是一直会存在&#xff0c;而是生成一会就会自动删除&#xff0c;然后继续生成继续删除&#xff0c;直到数据插入完成。 初步猜测&#xff0c;应该是类似 re…

增强客户黏性:服装实体店扫码连锁收银软件提供多样的会员营销策略

随着消费者对购物体验的需求不断提升&#xff0c;服装实体店面临着更大的挑战和机遇。为了增强客户黏性&#xff0c;提升销售业绩&#xff0c;越来越多的服装实体店开始引入扫码连锁收银软件&#xff0c;并提供多样化的会员营销策略。这一举措不仅为店铺提供了更加智能化的经营…

C语言——文件相关操作补充

一、文件读取结束的判定 当我们使用例如fgetc、fgets、fscanf、fread等函数来读取文件内容时&#xff0c;我们可能遇到需要判断文件读取的结束&#xff0c;一般情况下都是通过这些函数的返回值来判断文件读取是否结束。 1、fgetc 返回读取的字符的ASCII值&#xff0c;如果读…

JUnit 4单元测试常用注解和方法

引言 JUnit 4作为Java开发者广泛使用的测试框架&#xff0c;通过提供丰富的注解和断言方法&#xff0c;极大地简化了单元测试的编写和维护。本文将介绍JUnit 4的核心特性和最佳实践。 单元测试的重要性 独立性&#xff1a;每个测试应该是独立的&#xff0c;不依赖于系统状态…

Java 守护线程 ( Daemon Thread )详解

在Java中&#xff0c;线程分为两类&#xff1a;用户线程(User Thread)和守护线程(Daemon Thread)。守护线程是后台线程&#xff0c;主要服务于用户线程&#xff0c;当所有的用户线程结束时&#xff0c;守护线程也会自动结束&#xff0c;JVM会随之退出。守护线程的一个典型例子是…

kaggle竞赛实战1

我们最终的目标是要打比赛、进大厂&#xff0c;因此在熟悉了基本模型后先来看看比赛怎么做的&#xff0c;本文以Elo Merchant Category Recommendation | Kaggle 为样例进行介绍。 首先注意使用kaggle要全程“科学上网”&#xff0c;否则在注册、下载数据等环节都会出现页面挑…

Web前端一套全部清晰 ⑧ day5 CSS.3 选择器、PxCook软件、盒子模型

谁不是一路荆棘而过呢 —— 24.5.12 CSS.3 选择器、PxCook软件、盒子模型 一、选择器 1.结构伪类选择器 1.作用: 根据元素的结构关系查找元素。 选择器 说明 E:first-child 查找第一个 E元素 E:last-child 查找最后一个E元素 E:nth-chil…

计算机网络-负载均衡算法

计算机网络中的负载均衡算法是决定如何将请求分发到各个服务器的关键。目前负载均衡算法主要分为静态负载均衡算法和动态负载均衡算法&#xff0c;具体包括以下几种&#xff1a; 静态负载均衡算法&#xff1a; 1.轮询法&#xff08;Round Robin&#xff09;&#xff1a;按照顺…

【qt】最快的开发界面效率——混合编程

混合编程 一.准备工作1.创建项目2.添加项目资源 二.ui界面设计1.menuBar菜单栏2.action ▲3.toolBar工具栏4.中心组件 三.代码界面设计1.toolBar添加组件2.statusBar状态栏添加组件 四.完成界面的功能1.对action配置信号槽2.对action转到信号槽3.代码添加的组件手动关联槽函数 …