【计算机网络】数据链路层实验

一:实验目的

1:学习WireShark软件的抓包操作,分析捕获的以太网的MAC帧结构。

2:学习网络中交换机互相连接、交换机连接计算机的拓扑结构,理解虚拟局域网(WLAN)的通信机制。

3:学习网络基础实验室网站的基本使用(本小组的接口为:http://192.168.0.3:8080/),例如对二层交换机、三层交换机进行配置。

4:理解链路集合的配置及其原理。

二:实验仪器设备及软件

硬件:RCMS-C服务器、网线、Windows 2019/2003操作系统的计算机等。

软件:资源监视器、记事本、WireShark、Chrome浏览器等。

三:实验方案

【实验实际连线图】

【实验的网络拓扑图】

实验3.1:4号计算机和6号计算机接入二层交换机,2号计算机和8号计算机接入三层交换机。二层交换机和三层交换机用一根网线进行连接。

实验3.2:4号计算机和6号计算机接入二层交换机,8号计算机接入三层交换机。2号计算机进入外网状态。设置4号计算机和8号计算机为VLAN 20局域网下,设置6号计算机为VLAN 10局域网下。二层交换机和三层交换机用一根网线进行连接。

实验3.3:4号计算机和6号计算机接入二层交换机,8号计算机和2号计算机接入三层交换机。2号计算机进入外网状态。设置所有计算机为VLAN 10局域网下。二层交换机和三层交换机用两根网线进行连接。

【具体方案】

1:S29C1是二层交换机,S57C1是三层交换机。内网网卡接口的编号对应计算机的编号。

2:4号和6号计算机从内网网卡接口连向二层交换机的5口和7口,2号和8号计算机从内网网卡接口连向三层交换机的1口和3口。

3:二层交换机和三层交换机通过47口进行连接,在实验3.3中还应该加入45口。

四:实验步骤

【实验3.1:熟悉以太网帧结构】

(1)内网互相执行ping

4号计算机ping6号计算机

4号计算机ping2号计算机

4号计算机ping8号计算机

4号计算机ping2号计算机时,WireShark抓包结果中的MAC帧

从Ethernet Ⅱ中,可以看到Src和Dst,分别对应源MAC地址和目标MAC地址。因此,源MAC地址是78:60:5b:43:92:43,目标MAC地址是e0:be:03:75:53:a9。

(2)访问外网网站

·4号计算机ping百度

指令为ping baidu.com

·4号计算机ping百度时,WireShark抓包结果中的MAC帧

该MAC帧为ARP协议的帧。从Ethernet Ⅱ中,可以看到源MAC地址是48:5f:08:b6:7d:3d,目标MAC地址是ff:ff:ff:ff:ff:ff

该MAC帧为HTTP协议的帧。从Ethernet Ⅱ中,可以看到源MAC地址是48:5f:08:b6:7d:3d,目标MAC地址是78:60:5b:43:91:e3。

【实验3.2:跨交换机实现VLAN】

(1)配置三层交换机的主机名、划分VLAN端口等

·进入基础实验室网站,选择三层交换机,并输入用户名和密码

用户名为:en 14,密码为:student。

·连接二层交换机的端口是5口和7口,因此需要分配2个VLAN

配置二层交换机,令其主机名为L2-SW

在二层交换机划分VLAN 10和VLAN 20,并将其命名为销售(xiaoshou)和技术(jishu)

将吉比特网络中的5到6口划分到VLAN 10,同时7到8口划分到VLAN 20

设置二层交换机到三层交换机的链路为Trunk

查看二层交换机的VLAN

    可以看到7、8、47口为jishu名字下的VLAN中,1、2、5、6、47口为xiaoshou名字下的VLAN中,其他口默认为VLAN0001名字下的VLAN中。

(2)配置三层交换机的主机名、划分VLAN端口等

配置三层交换机,令其主机名为L3-SW

在二层交换机划分VLAN 10和VLAN 20,并将其命名为销售(xiaoshou)和技术(jishu)

将吉比特网络中的1到2口划分到VLAN 10

设置三层交换机到三层交换机的链路为Trunk

查看三层交换机的VLAN

可以看到47口为jishu名字下的VLAN中,1、2、47口为xiaoshou名字下的VLAN中,其他口默认为VLAN0001名字下的VLAN中。

(3)不同计算机之间互相ping

·4号计算机ping6号计算机

此时4号计算机在VLAN 10,6号计算机在VLAN 20,结果为无法ping通,说明在同一个交换机内但位于不同VLAN下的计算机无法互相访问。

4号计算机ping8号计算机

此时4号计算机在VLAN 10,6号计算机在VLAN 10,结果为可以ping通,说明通过多个交换机连接的同一个VLAN下的计算机可以互相访问。

(4)交换4号计算机和6号计算机在二层交换机上的连接接口,继续执行不同计算机之间互相ping

·4号计算机ping6号计算机

此时4号计算机在VLAN 20,6号计算机在VLAN 10,结果为无法ping通,说明在同一个交换机内但位于不同VLAN下的计算机无法互相访问。

·4号计算机ping8号计算机

此时4号计算机在VLAN 20,6号计算机在VLAN 10,结果为无法ping通,说明通过多个交换机连接的位于不同VLAN下的计算机无法互相访问。

【实验3.3:端口聚合】

(1)二层交换机的端口聚合配置

(2)三层交换机的端口聚合配置

(3)更改2、4、6、8号计算机对交换机的接线

    2号和8号计算机经过三层交换机,4号和6号计算机经过二层交换机,且均位于两个交换机下的VLAN 10接口。

(4)不同计算机之间互相ping

·4号计算机ping6号计算机

4号计算机ping8号计算机

4号计算机ping2号计算机

 综上所述,在端口聚合后,所有计算机在VLAN 10下可以互相进行通信。

(5)传输数据

 按照实验1的方式配置test文件夹、test.zip文件和test.bat文件,进行内网之间的传输。

test.bat文件的批处理程序指令,如下表所示。

传输文件的程序指令

REM TEST.bat

copy C:\test\test.zip \\LR\test

del C:\test\test.zip                                    

copy \\LR\test C:\test

del \\LR\test\test.zip

call test.bat

(6)从二层交换机处,查看端口状态

 由上图可以看出,端口聚合后,45口和47口的速度均为1000M。

(7)查看成员端口

45口的结果如下图,最大input速率为975539493bits/s,即121942436bytes/s,即116.29MB/s。最大output速率为975539514bits/s,同理也为百兆网速。

    47口的结果也可以进行类似的计算,此处不再赘述。

(8)查看聚合端口

(9)测速

6号计算机与8号计算机利用交换机之间的2根网线通信时

    47口处input的包速率为33624个/s, output的包速率为39710个/s。

    45口处input的包速率为44个/s, output的包速率为394个/s。

    聚合端口处input的包速率为44个/s, output的包速率为394个/s。

6号计算机与8号计算机利用交换机之间的1根网线通信时

    45口处input的包速率为36069个/s, output的包速率为41314个/s。

五:实验结果及分析

1:描述帧的结构,对比与书中完整的帧结构异同并解释原因

书中完整的帧结构如下图。其中包含首部字段、数据字段和尾部字段。

实际捕获的帧结构如下图。

帧的大小为60B,有4B的CRC计算。满足最小64B的要求。

    在实际的帧中,只包含目标MAC地址、源MAC地址、协议类型(此处为ARP)、填充(Padding)。

2:端口聚合实验表

测试项

端口聚合前

端口聚合后

端口速度(包/秒)

端口1:36069+41314

端口1:44+394
端口2:33624+39710

聚合端口理论最大传输速度(包/秒)

100000

200000

聚合端口实测最大传输速度(包/秒)

77377

59487

传输时间(秒)

2.884602

3.802301

聚合端口的流量平衡模式

依据源和目的地址(默认模式)

依据源和目的地址(默认模式)

六:实验总结及体会

1:在交换机中,Exit 命令是退回到上一级操作模式,Hostname 配置交换机的设备名称。

2:相同 VLAN 内的主机可以互相直接访问,不同 VLAN 间的主机之间互相访问必须经由路由设备进行转发。广播数据包只可以在本 VLAN 内进行传播,不能传输到其他 VLAN 中。

3:Trunk 接口在默认情况下支持所有 VLAN 的传输。VLAN1属于系统的默认 VLAN,不可以被删除。

4:链路聚合会在成员端口中起分流作用,即通过将多个物理端口汇聚在一起形成一个逻辑端口,以实现出/入流量吞吐量在各成员端口的负荷分担。

5:在配置端口时,百兆网为fastEthernet,千兆网为GigabitEthernet,注意config时的选择情况。如果不知道自己的网络属于哪一种,应该采取show interface方式进行查看。

6:在实验3.3中,两根网线连接交换机和一根网线连接交换机的情况,在传输速度方面基本没有差别。

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

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

相关文章

C++内存管理(候捷)第五讲 笔记

GNU C对allocators的描述 new_allocator 和malloc_allocator,它们都没有特别的动作,无非底部调用operator new和malloc。它们没有用内存池 区别:::operator new是可重载的 智能型的allocator,使用内存池,分一大块然后…

栈和队列<数据结构 C版>

目录 栈(Stack) 栈的结构体 初始化 销毁 入栈 判空 出栈 取栈顶元素 获取栈个数 测试: 队列(Queue) 队列的结构体 单个结点 队列 初始化 销毁 入队列,队尾 判空 出队列,队头 …

HTML常用的转义字符——怎么在网页中写“<div></div>”?

一、问题描述 如果需要在网页中写“<div></div>”怎么办呢&#xff1f; 使用转义字符 如果直接写“<div></div>”&#xff0c;编译器会把它翻译为块&#xff0c;类似的&#xff0c;其他的标签也是如此&#xff0c;所以如果要在网页中写类似于“<div…

计算机网络(Wrong Question)

一、计算机网络体系结构 1.1 计算机网络概述 D 注&#xff1a;计算机的三大主要功能是数据通信、资源共享、分布式处理。&#xff08;负载均衡、提高可靠性&#xff09; 注&#xff1a;几段链路就是几段流水。 C 注&#xff1a;记住一个基本计算公式&#xff1a;若n个分组&a…

Qt源码交叉编译带openssl的Qt版本

一.背景 近期项目由于对接的后台服务是https的&#xff0c;之前交叉编译的Qt是不带openssl的&#xff0c;为了能支持https&#xff0c;必须要重新编译Qt。 二.环境 环境准备&#xff1a; Ubuntu版本 &#xff1a;18.04&#xff1b; openssl 版本&#xff1a;1.1.1.g&#xff1b…

SQL123 SQL类别高难度试卷得分的截断平均值

题目 自测代码 drop table if exists examination_info; CREATE TABLE examination_info (id int PRIMARY KEY AUTO_INCREMENT COMMENT 自增ID,exam_id int UNIQUE NOT NULL COMMENT 试卷ID,tag varchar(32) COMMENT 类别标签,difficulty varchar(8) COMMENT 难度,duration i…

【网络安全的神秘世界】文件包含漏洞

&#x1f31d;博客主页&#xff1a;泥菩萨 &#x1f496;专栏&#xff1a;Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 一、概述 文件包含&#xff1a;重复使用的函数写在文件里&#xff0c;需要使用某个函数时直接调用此文件&#xff0c;而无需再…

【数据结构】哈希表的模拟实现

文章目录 1. 哈希的概念2. 哈希表与哈希函数2.1 哈希冲突2.2 哈希函数2.3 哈希冲突的解决2.3.1 闭散列&#xff08;线性探测&#xff09;2.3.2 闭散列的实现2.3.3 开散列(哈希桶)2.3.4 开散列的实现 2.4 开散列与闭散列比较 1. 哈希的概念 在我们之前所接触到的所有的数据结构…

自动驾驶-机器人-slam-定位面经和面试知识系列05之常考公式推导(02)

这个博客系列会分为C STL-面经、常考公式推导和SLAM面经面试题等三个系列进行更新&#xff0c;基本涵盖了自己秋招历程被问过的面试内容&#xff08;除了实习和学校项目相关的具体细节&#xff09;。在知乎和牛客&#xff08;牛客上某些文章上会附上内推码&#xff09;也会同步…

AI大模型大厂面试真题:「2024大厂大模型技术岗内部面试题+答案」

AI大模型岗的大厂门槛又降低了&#xff01;实在太缺人了&#xff0c;大模型岗位真的强烈建议各位多投提前批&#xff0c;▶️众所周知&#xff0c;2025届秋招提前批已经打响&#xff0c;&#x1f64b;在这里真心建议大家6月7月一定要多投提前批&#xff01; &#x1f4bb;我们…

C# Task.WaitAll 的用法

目录 简介 1.WaitAll(Task[], Int32, CancellationToken) 2.WaitAll(Task[]) 3.WaitAll(Task[], Int32) 4.WaitAll(Task[], CancellationToken) 5.WaitAll(Task[], TimeSpan) 结束 简介 Task.WaitAll 是 C# 中用于并行编程的一个的方法&#xff0c;它属于 System.Threa…

Lombok的认识

Lombok的作用 Lombok是一个Java库&#xff0c;它可以通过简单的注解形式来帮助开发人员简化Java代码的编写&#xff0c;特别是减少模板代码的书写。具体来说&#xff0c;Lombok的主要作用包括&#xff1a; 减少模板代码&#xff1a;Lombok可以通过注解自动生成getter、setter、…

LIS系统源码,实验室管理信息系统LIS,.Net C#语言开发,支持DB2,Oracle,MS SQLServer等主流数据库

实验室管理信息系统LIS源码&#xff0c;采用.Net C#语言开发&#xff0c;C/S架构。支持DB2&#xff0c;Oracle&#xff0c;MS SQLServer等主流数据库。&#xff08;LIS系统全套商业源码&#xff0c;自主版权&#xff0c;多家大型综合医院应用案例&#xff0c;适合二次开发&…

【笔记:3D航路规划算法】二、RRT*

目录 RRT*于RRT的不同之处1、路径优化&#xff1a;2、成本计算&#xff1a;3、重连线步骤&#xff1a; 图解1、初始化2、路径搜索3、效果展示 总结 3D路径规划是在三维空间中寻找从起点到终点的最短或最优路径的一种技术。它广泛应用于无人机导航、机器人运动规划、虚拟现实等领…

人工智能技术的分析与探讨

《人工智能技术的分析与探讨》 摘要&#xff1a; 本文深入探讨了人工智能技术在多个领域的应用&#xff0c;包括智能感知、智能语音、智能问答、智能机器人、智能制造、智能医疗等。详细阐述了这些技术在当前的应用现状和主要场景&#xff0c;展示了一些典型的应用案例&#…

初识git工具~~上传代码到gitee仓库的方法

目录 1.背景~~其安装 2.gitee介绍 2.1新建仓库 2.2进行相关配置 3.拉取仓库 4.服务器操作 4.1克隆操作 4.2查看本地仓库 4.3代码拖到本地仓库 4.4关于git三板斧介绍 4.4.1add操作 4.4.2commit操作 4.4.3push操作 5.一些其他说明 5.1.ignore说明 5.2git log命令 …

大模型额外篇章三:vercel搭建openai中转服务器

文章目录 一、起因和注意1)起因2)注意二、实现方法(原理:透传)1)nginx方案2)node服务3)纯 js 方案4)选择国外的域名服务商(DNS 解析路径缩短,建议方案国外提供 CDN 云服务商结合自建云服务业务做负载均衡)三、实践(vercel部署OpenAI代理服务器)四、测试搭建的Ope…

SQLException:Operation not allowed after ResultSet closed

运行代码时出现的错误&#xff1a; 这是在运行简单的JDBC访问数据库时出现的问题&#xff0c;原因是在ResultSet方法中添加了close()关闭方法,如图&#xff1a; ResultSet 是通过 query 方法获得的&#xff0c;并且在 try-catch 块中没有显式地关闭它。这实际上是 一个常见的…

创建一个基于Python的Python代码插入工具

在这篇博客中&#xff0c;我将分享如何使用Python创建一个简单的Python代码插入工具。这个工具允许用户插入不同部分的代码&#xff0c;包括导入语句、GUI代码、方法定义和主执行代码&#xff0c;并将它们组合在一起。我们将从设置基本的wxPython应用程序开始&#xff0c;然后逐…

基于Java+SpringMvc+Vue技术的慈善捐赠平台设计与实现(源码+LW+部署讲解)

项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功以及课程答疑&#xff01; 软件开发环境及开发工具&#xff1a; 操作系统&#xff1a;Windows 10、Windows 7、Windows 8 开发语言&#xff1a;java 前端技术&#xff1a;JavaScript、VUE.j…