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

一:实验目的

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.mzph.cn/web/49770.shtml

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

相关文章

cas 和 synchronized 优化过程

cas 什么是CAS CAS:全称Compareandswap,字⾯意思:”⽐较并交换“,⼀个CAS涉及到以下操作: 我们假设内存中的原数据V,旧的预期值A,需要修改的新值B。 1. ⽐较A与V是否相等。(⽐较) 2. 如果⽐较…

ubuntu22.04单个网口两个IP

其中 4网段IP可用来上网,3 网段用来内网 界面显示: 配置文件: 01-network-manager-all.yaml 放在 /etc/netplan/ # Let NetworkManager manage all devices on this systemnetwork:version: 2renderer: networkdethernets:eth0:dhcp4: falsedhcp6: …

开放式耳机哪个牌子好?五大超值机型整理,速速收藏!!

大家都知道现在的开放式耳机是越来越火了,后台也有非常多的小伙伴来私信,作为一个耳机测评师,当然是为了你们服务啦,所以这一期文章,就是为了个大家答疑解惑,告诉大家如何才能选购出一款比较好用的开放式耳…

万字长文详解Java反射技术 | JavaSE | Java进阶知识 | 源码

🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 📌今天分享的是JavaSE中的进阶知识🛑:反射技术。内容有点长,非常全面,记得点赞👍、收藏✅加关…

【网络世界】HTTP协议

目录 🌈前言🌈 📁 概念 📁 URL 📂 urlencode 和 urldecode 📁 协议格式 📁 方法 📂 GET/get 📂 POST/post 📁 常见的报头 📁 状态码 &…

模型大小的指标和模型量化的指标和手段

一、模型大小的指标 1.计算量 计算次数,反映了模型对硬件计算单元的需求。计算量的单位是 OPs(Operations) 。最常用的数据格式 为 float32,因此float32类型下的计算量单位被写作 FLOPs (Floating Point Operations),即浮点计算次数。模型的…

3D Web轻量化引擎HOOPS Communicator针对复杂大模型Web端可视化的解决方案

随着工程设计、制造和建筑领域中三维模型的日益复杂化,如何在Web端高效处理和展示这些大规模数据成为一大挑战。HOOPS Communicator作为一款强大的3D可视化工具,提供了一套针对复杂大模型的轻量化解决方案,涵盖了模型轻量化及格式转换、超大模…

PostgreSQL成为最受欢迎的数据库; TiDB马拉松大赛开启, Serverless和Vector为比赛焦点

重要更新 1. TiDB Hackathon大赛报名开启,总奖金达21万,主题是基于 TiDB Serverless 内置的向量搜索功能(Vector Search)构建 AI 创新应用,感兴趣的可以报名参加。( [1] ) 2. Stack Overflow 2024 开发者调研结果公布…

自学JavaScript(放假在家自学第一天)

目录 JavaScript介绍分为以下几点 1.1 JavaScript 是什么 1.2JavaScript书写位置 1.3 Javascript注释 1.4 Javascript结束符 1.5 Javascript输入输出语法 JavaScript(是什么?) 是一种运行在客户端(浏览器)的编程语言,实现人机交互效果。 2.作用(做什么?)网…

从头开始微调Llama 3.1模型

在今天的科技专栏中,我们将深入探讨如何微调Llama 3.1模型,以使其更好地适应您的特定领域数据。微调大型语言模型(如Llama)的主要目的是为了在特定领域的数据上表现更好,从而生成更符合您需求的输出。以下是我们将要介…

SpringBoot知识笔记

一、基本概念 1.1 特性 起步依赖 自动配置 其它特性:内嵌的Tomcat、Jetty(无需部署WAR文件),外部配置,不需要XML配置(properties/yml)。 1.2 配置文件 SpringBoot提供了多种属性配置方式 //application.properties server.port=9090 server.servlet.context-path…

Python爬虫知识体系-----Urllib库的使用

数据科学、数据分析、人工智能必备知识汇总-----Python爬虫-----持续更新:https://blog.csdn.net/grd_java/article/details/140574349 文章目录 1. 基本使用2. 请求对象的定制3. 编解码1. get请求方式:urllib.parse.quote()2. ur…

邦布带你从零开始实现图书管理系统(java版)

今天我们来从零开始实现图书管理系统。 图书管理系统 来看我们的具体的实现,上述视频。 我们首先来实现框架,我们要实现图书管理系统,首先要搭框架。 我们首先定义一个书包,在书包中定义一个书类和一个书架类,再定义…

用Java手写jvm之实现查找class

写在前面 完成类加载器加载class的三阶段,加载,解析,初始化中的加载😀😀😀 源码 。 jvm想要运行class,是根据类全限定名称来从特定的位置基于类加载器来查找的,分别如下:…

【SQL 新手教程 2/20】关系模型 -- 主键

💗 关系数据库建立在关系模型上⭐ 关系模型本质上就是若干个存储数据的二维表 记录 (Record): 表的每一行称为记录(Record),记录是一个逻辑意义上的数据 字段 (Column):表的每一列称为字段(Colu…

吴恩达的TranslationAgent学习

TranslationAgent构成 整个[TranslationAgent (github.com)]在流程上分为短文本的一次性翻译和长文本的分chunk翻译(按照Token进行划分)。 但是不论长文本翻译还是短文本翻译,总体流程遵循执行、纠正再执行的逻辑循环实现。 这种按照自省思路…

【数字IC/FPGA】使用Verdi对比两个波形

步骤一: 使用verdi打开第一个波形 bsub verdi -ssf 1.fsdb添加需要观察的信号,如下图所示: 步骤二: 新建容器,依次点击Window --> Dock to --> New Container Window。 然后输入容器的名字,如下图所…

SQL数据库:通过在视频监控平台服务器上直接使用SQL存储过程,在海量记录中查询特定时间段内-某个摄像头的所有视频片段

目录 一、背景 1、存储过程 2、视频监控系统 二、需求和数据表 1、具体要求 2、数据表 3、部分数据 三、实现 1、目标 2、创建存储过程 (1)存储过程代码 (2)创建成功 3、存储过程的解释 4、SQL命令调用方式 5、调用…

Java----队列(Queue)

目录 1.队列(Queue) 1.1概念 1.2队列的使用 1.3队列的模拟实现 1.4循环队列 1.4.1循环队列下标偏移 1.4.2如何区分队列是空还是满 1.5双端队列 (Deque) 1.队列(Queue) 1.1概念 队列:只允许在一端进行插入数据…

Linux Redhat ens33不显示IP问题

优质博文:IT-BLOG-CN 【第一步】:查看系统网卡设备 : ip addr show 【第二步】:修改网卡配置参数 cd /etc/sysconfig/network-scripts/ vi ifcfg-ens33 修改ONBOOT参数为yes 【第三步】:重启网卡,然后ping检测…