【Cisco Packet Tracer】交换机的自学习算法

简介: 【Cisco Packet Tracer】交换机的自学习算法



⛳️1. Cisco Packet Tracer简介

Cisco Packet Tracer是一款由思科(Cisco)公司开发的网络仿真工具,旨在帮助网络工程师和学生学习和实践网络配置、协议和拓扑设计。它是一种基于图形界面的网络模拟器,使用户能够构建、调试和测试网络,而无需实际的硬件设备。Cisco Packet Tracer的主要特点:

  1. 网络仿真和建模: Packet Tracer允许用户创建虚拟网络环境,包括路由器、交换机、终端设备等,以模拟真实网络环境。这对于学习网络原理、协议和配置非常有帮助。
  2. 设备模拟: 用户可以在Packet Tracer中模拟多种网络设备,包括思科的路由器、交换机、服务器等。这些设备的模拟行为类似于它们在真实网络中的行为。
  3. 协议支持: Packet Tracer支持多种网络协议,包括TCP/IP、UDP、HTTP、FTP等,使用户能够学习和实践网络通信的各个方面。
  4. 实验和实践: 学生和网络专业人士可以使用Packet Tracer进行各种实验,测试不同网络配置和方案,以加深对网络技术的理解。
  5. 教育用途: Packet Tracer通常用于网络工程和计算机网络课程中,帮助学生通过实践加深对课程内容的理解。它是一种理想的教学工具,可在教室或远程学习环境中使用。
  6. 跨平台支持: Packet Tracer可在多个操作系统上运行,包括Windows和Linux,使用户能够在不同的计算机系统上使用它。
  7. 社区支持: Packet Tracer有一个活跃的用户社区,用户可以在社区中分享经验、提出问题并获得解答,促进学习和知识交流。

⛳️2. 交换机的自学习算法

2.1 实验目的

  1. 理解自学习算法: 通过本实验,旨在深入理解Cisco Packet Tracer交换机的自学习算法,掌握其工作原理和过程。
  2. 熟悉交换机网络环境: 通过搭建实验网络,学会配置交换机以及模拟不同设备间的数据交换,加深对交换机在网络中的作用和功能的理解。
  3. 掌握故障排除技能: 通过实验过程中可能遇到的问题,培养解决问题的能力,提高在实际网络环境中的故障排除技能。

2.2 实验环境

  • 基于Cisco Packet Tracer 模拟器

2.3 实验内容

  1. 验证集线器和交换机的区别

(1)step1  构建四个以太网:在逻辑工作空间选择12台终端设备(此处拖动的为主机)、12条连接线(此处拖动的为自动选择连接线类型)以及两台交换机和两台集线器,构造网络拓扑:

(2)step2  设置网络设备(设置主机的IP地址):鼠标左击PC-PT计算机0,选择桌面点击IP地址设置为192.168.0.1,系统会默认填充子网掩码,并对剩余主机分别设置IP地址,主机01的IP地址为192.168.0.2以此类推,设置主机0的IP地址:

(3)step3  各主机间发送数据包:为了防止ARP广播请求对本次实验效果产生影响,实验切换到实时模式下让各主机间发送数据包,查看端口状态汇总表:

删除实时模式的数据包和各PUD,并切换到仿真模式:

隐藏其他协议:

打开编辑筛选器保留ICMP协议:

(4)step4  主机通过集线器进行数据传输:通过主机0与主机2间发送数据包实现,在左上角工具栏鼠标点击信封(添加简单的PDU),集线器的数据传输;

首先,数据包由主机0发送到集线器,接着,集线器将其广播发送给主机1和主机2,最后,主机1收到报文后检查报文的目的MAC地址,与主机1网卡不同因此拒绝接收,同理主机2收到检查发现与报文MAC地址匹配故接收成功,并且主机2给发送方返回发送响应:

同理主机0能接收到主机2发送的响应,而主机1拒绝接收。

(5)step5  主机通过交换机进行数据传输:通过主机6与主机8间发送数据包实现,在左上角工具栏鼠标点击信封(添加简单的PDU),交换机的数据传输:

首先,数据包由主机6发送到交换机,接着,交换机不通过广播发送给主机6和主机7,而是直接发送给主机8,最后,主机7收到报文后检查报文的目的MAC地址,与主机1网卡不同因此拒绝接收,同理主机2收到检查发现与报文MAC地址匹配故接收成功,并且主机2给发送方返回发送响应:

同理主机0能接收到主机2发送的响应,而主机1拒绝接收。说明交换机对帧具有过滤功能,即可以明确转发帧或者不转发帧,而集线器收到帧会进行广播

(6)step6 互联局域网:通过选择自动连线互联两个通过集线器互联的局域网,在扩大通信范围同时扩大碰撞率,同理连接两个交换机互联的局域网,遇到互联线不显示绿色可通过多次切换实时模式和仿真模式进行解决,最终效果:

集线器组成的局域网由主机0给主机2发送数据包.

集线器数据包传递:

交换机组成的局域网由主机0给主机2发送数据包

交换机数据包传递:

我们发现一个在集线器组成的局域网中数据包的传输会经过每一个主机,而交换机组成的局域网中数据包传输类似定向传输。

(7)step7数据碰撞1:通过主机0、主机4分别向主机2、主机5传输数据包,在集线器(上)组成的局域网,主机0的ARP高速缓存表:

(8)step8数据碰撞2:通过在集线器局域网添加交换机形成新的局域网,验证碰撞率是否增大。主机0的ARP高速缓存表:

同样由主机0往主机2发送数据包,第一次当数据包传递到交换机时交换机会将其转发给集线器:

当下一次交换机遇到此类情况便会截止发送:

  1. 交换机的自学习算法

(1)step1  构造网络拓扑:在逻辑工作空间选择三台终端设备(此处拖动的为主机)、网络设备(此处拖动的为交换机)及连接线(此处拖动的为自动选择连接线类型),并且设置IP地址:

(2)step2  仿真模式下传输数据包:切换到仿真模式,由主机1向主机2传输数据包,并且设置协议仅显示ARP和ICMP协议,且在参数选项勾选显示各接口信息。因主机1不含主机2的MAC地址,所以先发送ARP广播询问主机2的MAC地址,主机1得知后再发送数据包。由于前文已做解释此处重点在于主机传输数据包在交换机的接口以及MAC地址的登记:

显示发现此时交换机MAC和端口信息都关于主机1,此时交换机将ARP广播给主机0和主机2,由于主机0的ARP不匹配因此不接收,而主机2接收成功,并且返回响应,在交换机留下相应的MAC地址和端口信息,交换机的信息更新:

此时根据交换机的MAC表在其收到主机2的数据包时,将其定向传输给主机1,然后主机1将ICMP数据包传输给交换机此时交换机通过先前的学习将其直接传输给主机2.

(3)step3  在新的局域网下验证交换机的自学习算法:构建新的网络拓扑并由主机4向主机5传输数据包,通过实验发现此时交换机在第一次记录了主机4的MAC地址和端口信息,在主机5收到后返回响应也会传输到交换机并留下主机5的MAC地址和端口信息。

切换模式:

(4)step4  操作交换机的命令行界面:通过打开交换机的命令行界面回车输入enable进入课程模式,输入show mac-a查看交换机登记的MAC地址,同时可以使用clear mac-a清除记录。

设置交换机的命令行界面:

由于清除了交换机的所有MAC记录,所以再次由主机4向书记5传输数据包交换机会将其进行转发,设置交换机的命令行界面:


2.4 实验体会

  1. 深入了解自学习算法: 通过观察实验中交换机的学习过程,对自学习算法有了更深刻的理解。了解交换机如何学习MAC地址,建立MAC地址表,以及如何利用这些信息实现数据帧的快速转发。
  2. 实际操作提升技能: 通过配置交换机、模拟数据传输等实际操作,更好地理解网络设备的配置和工作原理。这使得理论知识更加具体化,为将来实际网络环境的应用打下基础。
  3. 故障排除经验积累: 在实验中,可能会遇到一些配置错误或网络问题,通过解决这些问题,提升了故障排除的经验,培养了对网络异常情况的敏感性和应对能力。

📝总结

Cisco网络技术犹如一道激流,引领你勇敢踏入计算机网络的未知领域。学习之路并非平凡旅程,从初级概念、实验环境设置开始,逐步揭示更深层次的网络协议、编程魔法和系统设计的奥秘。


目录
相关文章
|
7天前
|
算法 JavaScript 前端开发
第一个算法项目 | JS实现并查集迷宫算法Demo学习
本文是关于使用JavaScript实现并查集迷宫算法的中国象棋demo的学习记录,包括项目运行方法、知识点梳理、代码赏析以及相关CSS样式表文件的介绍。
第一个算法项目 | JS实现并查集迷宫算法Demo学习
|
11天前
|
XML JavaScript 前端开发
学习react基础(1)_虚拟dom、diff算法、函数和class创建组件
本文介绍了React的核心概念,包括虚拟DOM、Diff算法以及如何通过函数和类创建React组件。
15 2
|
2月前
|
机器学习/深度学习 人工智能 资源调度
【博士每天一篇文献-算法】连续学习算法之HAT: Overcoming catastrophic forgetting with hard attention to the task
本文介绍了一种名为Hard Attention to the Task (HAT)的连续学习算法,通过学习几乎二值的注意力向量来克服灾难性遗忘问题,同时不影响当前任务的学习,并通过实验验证了其在减少遗忘方面的有效性。
49 12
|
2月前
|
网络协议
交换机ARP学习异常,看网工大佬是如何处理的?
交换机ARP学习异常,看网工大佬是如何处理的?
|
2月前
|
算法 Java
掌握算法学习之字符串经典用法
文章总结了字符串在算法领域的经典用法,特别是通过双指针法来实现字符串的反转操作,并提供了LeetCode上相关题目的Java代码实现,强调了掌握这些技巧对于提升算法思维的重要性。
|
2月前
|
算法 NoSQL 中间件
go语言后端开发学习(六) ——基于雪花算法生成用户ID
本文介绍了分布式ID生成中的Snowflake(雪花)算法。为解决用户ID安全性与唯一性问题,Snowflake算法生成的ID具备全局唯一性、递增性、高可用性和高性能性等特点。64位ID由符号位(固定为0)、41位时间戳、10位标识位(含数据中心与机器ID)及12位序列号组成。面对ID重复风险,可通过预分配、动态或统一分配标识位解决。Go语言实现示例展示了如何使用第三方包`sonyflake`生成ID,确保不同节点产生的ID始终唯一。
go语言后端开发学习(六) ——基于雪花算法生成用户ID
|
2月前
|
存储 机器学习/深度学习 算法
【博士每天一篇文献-算法】连续学习算法之HNet:Continual learning with hypernetworks
本文提出了一种基于任务条件超网络(Hypernetworks)的持续学习模型,通过超网络生成目标网络权重并结合正则化技术减少灾难性遗忘,实现有效的任务顺序学习与长期记忆保持。
34 4
|
2月前
|
存储 机器学习/深度学习 算法
【博士每天一篇文献-算法】连续学习算法之RWalk:Riemannian Walk for Incremental Learning Understanding
RWalk算法是一种增量学习框架,通过结合EWC++和修改版的Path Integral算法,并采用不同的采样策略存储先前任务的代表性子集,以量化和平衡遗忘和固执,实现在学习新任务的同时保留旧任务的知识。
74 3
|
2月前
|
存储 机器学习/深度学习 算法
【博士每天一篇文献-综述】基于脑启发的连续学习算法有哪些?附思维导图
这篇博客文章总结了连续学习的分类,包括经典方法(重放、正则化和稀疏化方法)和脑启发方法(突触启发、双系统启发、睡眠启发和模块化启发方法),并讨论了它们在解决灾难性遗忘问题上的优势和局限性。
30 2
下一篇
无影云桌面