计算机网络关于数据链路层协议的实验报告
- 格式:doc
- 大小:133.00 KB
- 文档页数:7
数据链路层实验三层交换机实现VLAN 间通信一、实验设备2 台 3560 三层交换机,3 台电脑。
二、实验要求使在同一VLAN里的计算机系统能跨交换机进行相互通信,而在不同VLAN里的计算机系统也能进行相互通信。
三、实验步骤第一步:在交换机 SwitchA 上创建 Vlan 10 ,并将 0/5 端口划分到 Vlan 10中。
Switch>enSwitch#conf t!进入全局配置模式。
Enter configuration commands, one per line.End with CNTL/Z.Switch(config)#hostname SwitchA!修改 Switch 名字为 SwitchASwitchA(config)# vlan 10!创建 Vlan 10 。
SwitchA(config-vlan)# name sales!将 Vlan 10 命名为 sales。
SwitchA(config-vlan)#exitSwitchA(config)#interface fastethernet 0/5!进入接口配置模式。
SwitchA(config-if)#switchport access vlan 10!将 0/5 端口划分到 Vlan 10 。
SwitchA(config-if)#exit第二步:在交换机 SwitchA 上创建 Vlan 20 ,并将 0/8 端口划分到 Vlan 20中。
SwitchA(config)# vlan 20!创建 Vlan 20 。
SwitchA(config-vlan)# name technical!将 Vlan 20 命名为 technical 。
SwitchA(config-vlan)#exitSwitchA(config)#interface fastethernet 0/8!进入接口配置模式。
SwitchA(config-if)#switchport access vlan 20!将 0/8 端口划分到 Vlan 20 。
实验二以太网链路层帧格式分析一实验目的1、分析EthernetV2标准规定的MAC层帧结构,了解IEEE802.3 标准规定的MAC层帧结构和TCP/IP的主要协议和协议的层次结构。
2、掌握网络协议分析软件的基本使用方法。
3、掌握网络协议编辑软件的基本使用方法。
二实验内容1、学习网络协议编辑软件的各组成部分及其功能;2、学习网络协议分析软件的各组成部分及其功能;3、学会使用网络协议编辑软件编辑以太网数据包;4、理解 MAC 地址的作用;5、理解 MAC 首部中的 LLC—PDU 长度/类型字段的功能;6、学会观察并分析地址本中的 MAC 地址。
三实验环境四实验流程五实验原理在物理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要能对数据进行检错和纠错。
数据链路的建立、拆除、对数据的检错,纠错是数据链路层的基本任务。
局域网(LAN)是在一个小的范围内,将分散的独立计算机系统互联起来,实现资源的共享和数据通信。
局域网的技术要素包括了体系结构和标准、传输媒体、拓扑结构、数据编码、媒体访问控制和逻辑链路控制等,其中主要的技术是传输媒体、拓扑结构和媒体访问控制方法。
局域网的主要的特点是:地理分布范围小、数据传输速率高、误码率低和协议简单等。
1、三个主要技术1) 传输媒体:双绞线、同轴电缆、光缆、无线。
2) 拓扑结构:总线型拓扑、星型拓扑和环型拓扑。
3) 媒体访问控制方法:载波监听多路访问/冲突检测(CSMA/CD)技术。
2、IEEE 802 标准的局域网参考模型IEEE 802 参考模型包括了 OSI/RM 最低两层(物理层和数据链路层)的功能,OSI/RM 的数据链路层功能,在局域网参考模型中被分成媒体访问控制MAC(Medium Access Control) 和逻辑链路控制LLC(Logical Link Control)两个子层。
由于局域网采用的媒体有多种,对应的媒体访问控制方法也有多种,为了使数据帧的传送独立于所采用的物理媒体和媒体访问控制方法,IEEE 802 标准特意把LLC 独立出来形成单独子层,使LLC 子层与媒体无关,仅让MAC 子层依赖于物理媒体和媒体访问控制方法。
链路实验报告链路实验是一种广泛应用于计算机网络领域的实验技术,其主要目的是验证链路的可行性、稳定性以及性能。
在链路实验中,通常通过模拟或者实际构建一段链路,并通过数据的传输和接收,评估链路的性能指标,如传输速率、延迟、丢包率等。
在实验过程中,我们通常会使用一组合理的实验参数,通过实验结果对链路进行分析并提出改进策略。
链路实验的步骤可以分为准备工作、实验设计、实验实施以及结果分析等几个部分。
首先是准备工作。
在进行链路实验之前,我们需要明确实验的目标和要达到的指标。
例如,如果我们想要评估一个链路的传输速率,我们需要准备两台计算机,并具备一定的网络设备。
一般情况下,我们需要准备两台计算机,一台作为发送端,另一台作为接收端。
同时,我们还需要制定合理的实验参数,如传输的数据量、发送速率等。
接下来是实验设计。
在进行链路实验之前,我们需要设计合适的实验方案。
首先,我们需要选择一种合适的链路性能指标,如传输速率、延迟、丢包率等。
根据实验目标和要达到的指标,我们可以选择合适的实验方案。
例如,如果我们要评估链路的传输速率,我们可以通过改变数据的大小和发送速率来观察结果。
此外,我们还需要选择合适的实验工具,如iperf、Wireshark等,用于数据的发送和捕获。
然后是实验实施。
在进行链路实验时,我们需要按照之前设计好的实验方案进行实验。
首先,我们需要进行链路的建立,确保发送端和接收端之间能够互相通信。
接下来,我们可以使用实验工具发送数据,并在接收端进行捕获和分析。
通过不断改变实验参数和观察实验结果,我们可以评估链路的性能指标,并进行比较和分析。
最后是结果分析。
在进行链路实验之后,我们需要对实验结果进行分析。
我们可以根据实验目标和预期的指标,对实验结果进行量化分析,并与之前的实验结果进行比较。
通过分析实验结果,我们可以得出链路性能的评估,并提出改进建议。
例如,如果实验结果显示链路的传输速率较低,我们可以尝试调整数据的大小或者发送速率,以提高链路的传输性能。
惠州学院《计算机网络》实验报告实验08 Sniffer Pro数据包捕获与协议分析1。
实验目的(1)了解Sniffer的工作原理.(2)掌握SnifferPro工具软件的基本使用方法。
(3)掌握在非交换以太网环境下侦测、记录、分析数据包的方法。
2。
实验原理数据在网络上是以很小的被称为“帧"或“包”的协议数据单元(PDU)方式传输的.以数据链路层的“帧"为例,“帧"由多个部分组成,不同的部分对应不同的信息以实现相应的功能,例如,以太网帧的前12个字节存放的是源MAC地址和目的MAC地址,这些数据告诉网络该帧的来源和去处,其余部分存放实际用户数据、高层协议的报头如TCP/IP的报头或IPX报头等等.帧的类型与格式根据通信双方的数据链路层所使用的协议来确定,由网络驱动程序按照一定规则生成,然后通过网络接口卡发送到网络中,通过网络传送到它们的目的主机。
目的主机按照同样的通信协议执行相应的接收过程.接收端机器的网络接口卡一旦捕获到这些帧,会告诉操作系统有新的帧到达,然后对其进行校验及存储等处理.在正常情况下,网络接口卡读入一帧并进行检查,如果帧中携带的目的MAC地址和自己的物理地址一致或者是广播地址,网络接口卡通过产生一个硬件中断引起操作系统注意,然后将帧中所包含的数据传送给系统进一步处理,否则就将这个帧丢弃。
如果网络中某个网络接口卡被设置成“混杂"状态,网络中的数据帧无论是广播数据帧还是发向某一指定地址的数据帧,该网络接口卡将接收所有在网络中传输的帧,这就形成了监听。
如果某一台主机被设置成这种监听(Snfffing)模式,它就成了一个Sniffer.一般来说,以太网和无线网被监听的可能性比较高,因为它们是一个广播型的网络,当然无线网弥散在空中的无线电信号能更轻易地截获。
3. 实验环境与器材本实验在虚拟机中安装SnifferPro4。
7版本,要求虚拟机开启FTP、HTTP等服务,即虚拟机充当服务器,物理机充当工作站。
南昌航空大学实验报告年月日课程名称:计算机网络与通信实验名称:网络层协议分析班级:学生姓名:邓佳威学号: 2212893107 指导教师评定:签名:一、实验目的分析ARP协议报文首部格式及其解析过程;分析ICMP报文格式和协议内容并了解其应用;分析IP报文格式、IP地址的分类和IP层的路由功能;分析TCP/IP协议中网络层的分片过程。
二、实验内容(一)ARP协议分析1.实验原理(1)ARP协议ARP(address resolution protocol)是地址解析协议的简称,在实际通信中,物理网络使用硬件地址进行报文传输,IP地址不能被物理网络所识别。
所以必须建立两种地址的映射关系,这一过程称为地址解析。
用于将IP地址解析成硬件地址的协议就被称为地址解析协议(ARP协议)。
ARP是动态协议,就是说这个过程是自动完成的。
在每台使用ARP的主机中,都保留了一个专用的内存区(称为缓存),存放最近的IP地址与硬件地址的对应关系。
一旦收到ARP应答,主机就将获得的IP地址和硬件地址的对应关系存到缓存中。
当发送报文时,首先去缓存中查找相应的项,如果找到相应项后,遍将报文直接发送出去;如果找不到,在利用ARP进行解析。
ARP缓存信息在一定时间内有效,过期不更新就会被删除。
(2)同一网段的ARP解析过程处在同一网段或不同网段的主机进行通信时,利用ARP协议进行地址解析的过程不同。
在同一网段内通信时,如果在ARP缓存中查找不到对方主机的硬件地址,则源主机直接发送ARP 请求报文,目的主机对此请求报文作出应答即可。
(3)不同网段的ARP解析过程位于不同网段的主机进行通信时,源主机只需将报文发送给它的默认网关,即只需查找或解析自己的默认网关地址即可。
(二)ICMP协议分析1.实验原理(1)ICMP协议ICMP(internet control message protocol)是因特网控制报文协议[RFC792]的缩写,是因特网的标准协议。
实验三协议分析软件使用及数据链路层协议分析一、实验目的TCP/IP 协议栈分为四层,从下往上依次为网络接口层、网络层、传输层和应用层,而网络接口层没有专门的协议,而是使用连接在 Internet 网上的各通信子网本身所固有的协议。
如以太网(Ethernet)的802.3 协议、令牌环网(TokenRing)的802.5 协议、分组交换网的X.25 协议等。
目前Ethernet 网得到了广泛的应用,它几乎成为局域网代名词。
因此,对以太网链路层的帧格式进行分析验证,使学生初步了解TCP/IP 链路层的主要协议以及这些协议的主要用途和帧结构。
(1)掌握协议分析软件sniffer的使用;(2)熟悉以太网链路层帧格式构成;二、实验要求能运用sniffer工具进行以太网链路层帧格式协议分析。
三、实验原理以太网简介IEEE 802 参考模型把数据链路层分为逻辑链路控制子层(LLC,Logical Link Control)和介质访问控制子层(MAC,Media Access Control)。
与各种传输介质有关的控制问题都放在MAC 层中,而与传输介质无关的问题都放在LLC 层。
因此,局域网对LLC 子层是透明的,只有具体到MAC 子层才能发现所连接的是什么标准的局域网。
IEEE 802.3 是一种基带总线局域网,最初是由美国施乐(Xerox )于1975 年研制成功的,并以曾经在历史上表示传播电磁波的以太(Ether)来命名。
1981 年,施乐公司、数字设备公司(Digital)和英特尔(Intel)联合提出了以太网的规约。
1982 年修改为第二版,即DIX Ethernet V2,成为世界上第一个局域网产品的规范。
这个标准后来成为IEEE 802.3 标准的基础。
在 802.3 中使用1 坚持的CSMA/CD(Carrier Sense Multiple Access with Collision Detection )协议。
实验二数据链路层实验实验项目性质:设计性计划学时:4实验环境:实验日期:2015年10月14日一、实验目的1、理解并掌握数据链路层协议的功能。
2、进一步理解停止等待协议和滑动窗口协议的基本工作原理。
3、掌握计算机网络协议的基本实现技术。
4、利用RS 232C通信接口实现两台PC间传输文件。
二、实验内容与要求1、设计完成数据链路层相关类;2、开发一个使用RS232C接口在两台计算机之间采用停止等待协议传输信息(文件)的程序;3、开发一个使用RS232C接口在两台计算机之间采用滑动窗口协议传输文件的程序。
完成实验内容中的第1、2部分,有能力的同学完成全部内容。
三、实验(设计)仪器设备和材料清单计算机两台,串行电缆一根。
四.相关知识1 数据路层概述数据链路层协议应提供的基本功能有:(1) 数据在数据链路上的正常传输(建立、维护和释放)。
(2) 帧定界与同步,以实现透明传输。
(3) 差错控制和流量控制。
(4) 透明传输。
2 数据成帧方法在数据链路层,为实现透明传输及进行差错控制和流量控制,在把数据送到物理层之前,需将若干个数据组成一帧,并在其中加上其他必要的控制信息。
控制信息形成(数据成帧)的方法有以下几种:字符计数法、带字符填充的首尾界符法、带填充位的首尾标志法、物理层编码违例法。
3 差错控制与流量控制为确保帧可靠地交付接收方,接收方在收到帧后,应向发送方应答,告知是否正确收到帧,因此在数据链路层要建立差错控制机制:差错控制方法、CRC循环冗余校验、流量控制。
4 数据链路层协议(1)停止等待协议停止等待协议的基本原理是:发送方在数据帧中加入校验码(CRC),由接收方检查;若出错,返回NAK帧(否认帧),否则发送ACK帧(确认帧);发送方收到NAK帧后重发数据帧,若收到ACK帧可发送下一帧。
当超时计时事件发生时,重发丢失的帧,这样可通过等待发送来实现流量控制,如图3-2所示。
停止等待协议发送方的算法如下:(1) 从主机取一个数据帧。
第二章数据链路层协议的测试及分析2.1 TCP/IP通信协议实验系统2.1.1 TCP/IP通信协议实验系统硬件介绍在实验二、四、五、六中,我们使用的设备是掌宇TCP/IP通信协议实验系统,该套系统由6台ITS-101、1台HUBOX以及线缆、电源等相关配件组成。
整套系统的连接如图2.1所示。
图2.1 掌宇TCP/IP通信协议实验系统连接下面介绍一下它们的结构功能及连接方法:ITS-101是TCP/IP网络实验系统中最重要的核心设备。
它的前面板包括电源和一些指示灯,后面板包括1个RS-232串口、2个10/100M以太网接口和1个电源插口。
串口通过RS-232控制线与计算机串口相连。
两个以太网接口LAN1、LAN2分别与HUBOX后面板LAN1组、LAN2组相应的局域网接口0×相连,如图2.2所示。
HUBOX是建立网络拓扑结构使用的集线器。
它的后面板有LAN1、LAN2两组以太网接口,LAN1组的6个接口分别与6台ITS-101的LAN1接口相连,LAN2组的6个接口分别与6台ITS-101的LAN2接口相连。
如图2.3所示,前面板下方有LAN1、LAN2两组共12个以太网接口,在设备内部分别与后面板的LAN1、LAN2两组接口直通;前面板上方有两组共10个以太网接口,相当于两个独立的5端口HUB,两组接口的5号端口都可以用来上连。
图 2.2 ITS-101与HUBOX的连接图2.3 HUBOX前面板HUBOX设计的目的在于当网络要切换到不同拓扑结构时,不需要重新从ITS-101上拉线,只需要在HUBOX上短的直通线或者交叉线更换连接方式即可。
以下三个例子说明了通过更换连接的方式获得了不同的拓扑结构,其中图左边为HUBOX的连接方式,右边为ITS-101的拓扑结构。
(1)运用HUBOX连线实现四台ITS-101同一子网图2.4 同一子网(2)运用HUBOX连线实现六台ITS-101三个独立的子网图2.5 独立子网(3)运用HUBOX连线实现四台ITS-101以路由方式串连图2.6 路由方式串连2.1.2 ITS-101软件介绍用户在PC机上运行XClient软件。
编号:_______________本资料为word版本,可以直接编辑和打印,感谢您的下载实验二数据链路层协议分析甲方:___________________乙方:___________________日期:___________________一实验目的1、分析EthernetV2标准规定的MA淀帧结构,了解IEEE802.3标准规定的MAC®帧结构和TCP/IP的主要协议和协议的层次结构。
2、掌握网络协议分析软件的基本使用方法。
3、掌握网络协议编辑软件的基本使用方法。
二实验内容1、学习网络协议编辑软件的各组成部分及其功能;2、学习网络协议分析软件的各组成部分及其功能;3、学会使用网络协议编辑软件编辑以太网数据包;4、理解MAC地址的作用;5、理解MAC首部中的LLC—PDU长度/类型字段的功能;6、学会观察并分析地址本中的MAC地址。
三实验环境四实验流程T/W 工尸I&J —-T | -r J ・ 7------ ----开始________ J 「再次验证 ____________________ __ Step2:je行ipconfiQ命令「i !理论复习Step3:^Jt LLC信息帆并发庞ITT _ 41I 可题?:J :Step5:编辑并发送帆序列N .• 结束图2.1-2|五实验原理在物理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要能对数据进行检错和纠错。
数据链路的建立、拆除、对数据的检错,纠错是数据链路层的基本任务。
局域网(LAN)是在一个小的范围内,将分散的独立计算机系统互联起来,实现资源的共享和数据通信。
局域网的技术要素包括了体系结构和标准、传输媒体、拓扑结构、数据编码、媒体访问控制和逻辑链路控制等,其中主要的技术是传输媒体、拓扑结构和媒体访问控制方法。
局域网的主要的特点是:地理分布范围小、数据传输速率高、误码率低和协议简单等。
网络协议实验报告讲解引言在计算机网络中,网络协议是指计算机网络中各个实体进行通信、交换数据时所遵循的规则和约定。
网络协议的设计和实现对于网络的性能和稳定性有着重要的影响。
为了更好地理解和掌握网络协议的工作原理和应用,本次实验我们进行了网络协议的实验,并在此基础上撰写了本篇实验报告,旨在通过讲解实验内容和结果,对网络协议的相关知识进行深入的学习和探讨。
实验目的本次实验的主要目的是通过实际操作,对网络协议进行深入研究和探讨。
具体实验目标如下:1. 理解网络协议的基本概念和主要作用;2. 学习使用网络协议进行数据通信和交换;3. 掌握网络协议的实验操作和设计。
实验环境本次实验环境如下:1. 操作系统:Windows 10;2. 软件工具:Wireshark、Ping、Traceroute等。
实验过程本次实验分为三个部分,分别是TCP/IP协议、DNS协议和HTTP 协议。
下面将对每个部分进行详细讲解。
1. TCP/IP协议TCP/IP协议是互联网中最重要的一种网络协议,它采用分层结构,包括了物理层、数据链路层、网络层和传输层。
在本次实验中,我们主要关注传输层的TCP协议和UDP协议。
(略去部分内容)2. DNS协议DNS(Domain Name System)协议是互联网中的一种应用层协议,它的主要作用是将域名解析为IP地址,实现域名和IP地址之间的转换。
本次实验我们使用Wireshark工具进行DNS报文的捕获和分析。
(略去部分内容)3. HTTP协议HTTP(HyperText Transfer Protocol)协议是一种用于传输超文本的应用层协议,它是Web应用中最重要的一种协议。
在本次实验中,我们使用Wireshark工具对HTTP请求和响应进行捕获和分析。
(略去部分内容)实验结果与分析在实验过程中,我们捕获了大量的网络数据包,并使用Wireshark 工具进行了分析。
通过对各个协议的数据包进行解析和比较,我们得出了以下几点实验结果和分析:1. TCP与UDP的区别从实验结果来看,TCP协议和UDP协议在传输方式、可靠性和效率等方面存在明显的差异。
计算机网络实验报告计算机网络实验报告引言:计算机网络是现代社会的重要组成部分,它连接了各种设备和系统,实现了信息的传输和共享。
在计算机网络实验中,我们通过实际操作和观察,深入了解了网络通信原理、协议和技术。
本篇实验报告将对我们进行的计算机网络实验进行总结和分析,以及实验中遇到的问题和解决方法。
实验一:网络拓扑结构在本实验中,我们学习了计算机网络的拓扑结构,包括总线型、星型、环型和网状型等。
通过搭建不同拓扑结构的网络,我们深入理解了各种结构的优缺点和适用场景。
例如,总线型拓扑结构简单易懂,但容易出现单点故障;而星型拓扑结构可靠性较高,但需要大量的物理连接。
实验二:网络协议分析在本实验中,我们学习了常见的网络协议,如TCP/IP、HTTP和FTP等。
通过抓包和分析网络数据包,我们了解了协议的工作原理和通信过程。
例如,TCP/IP协议是互联网的核心协议,它通过IP地址和端口号实现了可靠的数据传输;HTTP协议是应用层协议,用于在客户端和服务器之间传输超文本。
实验三:网络安全与防护在本实验中,我们学习了网络安全的基本概念和常见的攻击手段,如DDoS、SQL注入和跨站脚本等。
通过搭建防火墙和入侵检测系统,我们学会了如何保护网络安全。
例如,防火墙可以通过过滤规则,控制网络流量的进出;入侵检测系统可以监测网络中的异常行为,并及时作出响应。
实验四:无线网络实践在本实验中,我们学习了无线网络的工作原理和配置方法。
通过配置无线路由器和接入点,我们实现了无线网络的搭建和连接。
例如,无线网络使用无线电波进行通信,需要设置SSID和密码来保护网络安全;无线网络的覆盖范围受到信号强度和障碍物的影响,需要合理布置设备位置。
实验五:网络性能测试在本实验中,我们学习了网络性能测试的方法和工具。
通过使用ping、traceroute和iperf等工具,我们测试了网络的延迟、丢包率和带宽等性能指标。
例如,ping命令可以测试网络的延迟和丢包情况;iperf命令可以测试网络的带宽和吞吐量。
数据链路层模拟实验报告1. 协议2模拟实验1.1模拟可靠信道上的传输执行以下命令:./protocol2 50 10 0 0 7得到如下运行结果(包括分析):Tick 10. Proc 1 got good frame: type=Data seq=0 ack=0 payload=1/*进程1收到一个正确帧,类型是Data;分组序列号为0;确认号为0;目前成功接收到1帧*/ Tick 10. Proc 1 sent frame: type=Ack seq=0 ack=0 payload=0/*进程1发送一个帧,类型是Ack;分组序列号为0;确认号为0 */Tick 13. Proc 0 got good frame: type=Ack seq=0 ack=0 payload=0/*进程0收到一个正确帧,类型是Ack;分组序列号为0;确认号为0 */Tick 13. Proc 0 sent frame: type=Data seq=0 ack=0 payload=2/*进程0发送一个帧,类型是Data;分组序列号为0;确认号为0;目前成功发送2帧*/Tick 15. Proc 1 got good frame: type=Data seq=0 ack=0 payload=2/*进程1收到一个正确帧,类型是Data;分组序列号为0;确认号为0;目前成功接收到2帧*/ Tick 15. Proc 1 sent frame: type=Ack seq=0 ack=0 payload=0/*进程1发送一个帧,类型是Ack;分组序列号为0;确认号为0;成功接收到0帧*/Tick 19. Proc 0 got good frame: type=Ack seq=0 ack=0 payload=0/*进程0收到一个正确帧,类型是Ack;分组序列号为0;确认号为0 */Tick 19. Proc 0 sent frame: type=Data seq=0 ack=0 payload=3/*进程0发送一个帧,类型是Data;分组序列号为0;确认号为0;目前成功发送3帧*/Tick 21. Proc 1 got good frame: type=Data seq=0 ack=0 payload=3/*进程1收到一个正确帧,类型是Data;分组序列号为0;确认号为0;目前成功接收到3帧*/ Tick 21. Proc 1 sent frame: type=Ack seq=0 ack=0 payload=0/*进程1发送一个帧,类型是Ack;分组序列号为0;确认号为0 */得出的结论:从实验的数据来看在协议2的模拟过程中Process0模拟的发送端,Process1模拟接收端.在Process0发送一个数据帧(Data)后,Process1接受到以后就立即发送一个确认帧(Ack),Process0接受到Process1的确认帧(Ack)后再接着发送下数据帧(Data),这样就完成了一个传输接收的周期,而payload则记录了成功接收到的帧的(Data)个数,可以将其理解为一个计数器,这个计数器只记录成功接收到的帧(Data)的个数,而不记录成功接收到确认帧(Ack)的个数,当Process0接收到Process1的确认帧后,Process0的payload就自动加1,表示成功发送了一帧(Data),对于Process1,每成功接收到一个数据帧(Data),其payload就自动加1,表示成功接收到了一帧(Data).通过模拟可以看出协议2是一个单工的停-等协议,接收端在接收到发送端发来的一个数据帧之后,发送一个确认帧,等待下一帧.而发送方在发送了一个数据帧之后就不再发送,等待接收方的接收确认帧,待接收到接收方发来的确认帧之后,确认发送成功才发送下一帧.这样的发送方式较无限制的单工协议要稳定,安全,可以保证接收的数据的正确性,同时又可以避免接收方被发送方发送的数据湮没的危险2.协议3模拟实验2.1模拟协议3在不可靠信道上的正常传输请执行以下命令:./protocol3 50 15 0 0 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……2.2模拟不可靠信道传输中的超时错误请执行以下命令:./protocol3 50 5 0 0 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……2.3模拟不可靠信道传输中的丢包错误请执行以下命令:./protocol3 100 10 10 0 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……2.4模拟不可靠信道传输中的校验和错误请执行以下命令:./protocol3 100 10 0 10 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……3.协议4模拟实验3.1模拟1位滑动窗口协议中的正常传输请执行以下命令:./protocol4 50 10 0 0 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……3.2模拟1位滑动窗口协议中的超时错误请执行以下命令:./protocol4 50 8 0 0 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……3.3模拟1位滑动窗口协议中的丢包错误请执行以下命令:./protocol4 50 10 10 0 7得到如下运行结果(包括分析):Tick 5. Proc 0 got good frame: type=Data seq=0 ack=0 payload=0/*进程0成功接收到一帧,类型为Data;序列号为0,确认号为0,目前成功发送0帧*/Tick 5. Proc 0 sent frame: type=Data seq=1 ack=0 payload=1/*进程0成功发送一帧,类型为Data;序列号为1,确认号为0,目前成功发送1帧*/Tick 10. Proc 1 got good frame: type=Data seq=1 ack=0 payload=1/*进程1成功接收到一帧,类型为Data;序列号为1,确认号为0,目前成功发送1帧*/Tick 10. Proc 1 sent frame: type=Data seq=1 ack=1 payload=1/*进程1成功发送一帧,类型为Data;序列号为0,确认号为0,目前成功发送1帧*/Tick 13. Proc 0 got good frame: type=Data seq=1 ack=1 payload=1/*进程0成功接收到一帧,类型为Data;序列号为1,确认号为1,目前成功发送1帧*/Tick 13. Proc 0 sent frame that got lost: type=Data seq=0 ack=1 payload=2/*进程0成功发送一帧,类型为Data;序列号为0,确认号为1,目前成功发送2帧*/Tick 21. Proc 1 got timeout for frame 1/*进程1得到一个超时帧(帧1)*/Tick 21. Proc 1 sent frame that got lost: type=Data seq=1 ack=1 payload=1/*进程0成功接收到一帧,类型为Data;序列号为1,确认号为1,目前成功发送1帧*/Tick 25. Proc 0 got timeout for frame 0/*进程0得到一个超时帧(帧0)*/Tick 25. Proc 0 sent frame: type=Data seq=0 ack=1 payload=2/*进程0成功发送一帧,类型为Data;序列号为0,确认号为1,目前成功发送2帧*/得出的结论:从实验的数据来看,协议4的模拟过程中,Process0,和Process1既是接收端也是发送端,两个进程同时可以接收和发送帧,协议4的一个接收和发送周期大概是这样的:Process0首先发送一个数据帧,Process1成功接收到以后,立即发送一个数据帧给Process0,Process0在接收到Process1发送的数据帧后又立即发送下一数据帧.payload是记录本机成功发送数据帧数的计数器,当收到一个数据帧是计数器就会自动加1.当传输发生超时错误时,发送数据的两端都会收到超时错误的提示,根据提示中的序列号进行数据帧的重传.通过模拟可以看出,协议4是一个双工协议,传输的两端都可以进行数据的传送和接收,一端在接收到对方的数据帧后就接着发送数据帧给对方.可见协议4的传输效率比较高,而且在出错时,可以根据错误提示中的信息将丢失的数据进行重传,保证了传输的数据的完整性,及正确性.3.4模拟1位滑动窗口协议中的校验和错误请执行以下命令:./protocol4 50 10 0 10 7得到如下运行结果(包括分析):(请在这里记录下运行的结果,并插入类似程序注释的形式对运行结果进行解说)……得出的结论:(请在这里概要性的说明你运行结果总的理解,以及自己得出的结论和感想)……下面是古文鉴赏,不需要的朋友可以下载后编辑删除!!谢谢!!九歌·湘君屈原朗诵:路英君不行兮夷犹,蹇谁留兮中洲。
计算机网络原理实验报告一、实验目的1.理解计算机网络基本原理2.掌握计算机数据传输的过程3.了解计算机网络的基本组成二、实验器材1.计算机2.网线3.路由器三、实验过程1.实验一:理解网络分层结构-计算机网络采用分层结构,分为物理层、数据链路层、网络层、传输层、应用层。
-物理层负责传输比特流,主要是光纤、双绞线等物理媒介。
-数据链路层负责将比特流转化为帧,并进行传输以保证数据的可靠性。
-网络层负责寻路和分组转发,将数据包从源节点传输到目标节点。
-传输层负责端到端连接的可靠性和流量控制。
-应用层为用户提供服务,负责通信协议的选择和具体的应用功能。
2.实验二:数据传输过程-数据从源主机通过物理媒介传输到目标主机的过程可以分为三个阶段:发送、传输和接受。
-发送端将数据按照层级结构封装,并通过物理媒介传输到接收端。
-接收端根据层级结构进行解封装和处理,最终将数据交给应用层使用。
3.实验三:计算机网络的基本组成-计算机网络由主机和链路两部分组成。
-主机包括终端设备和网络结点,终端设备有桌面电脑、笔记本电脑、智能手机等,网络结点有路由器、交换机等。
-链路是连接主机之间和主机与网络结点之间的通信路径。
四、实验结果在实验过程中,我成功地理解了计算机网络的基本原理,掌握了计算机数据传输的过程,并了解了计算机网络的基本组成。
实验结果表明,计算机网络是一个复杂的系统,需要多个层级结构相互配合才能实现数据的传输和通信。
五、实验总结通过本次实验,我深入理解了计算机网络的基本原理,掌握了计算机数据传输的过程,并了解了计算机网络的基本组成。
实验过程中,我遇到了一些问题,但通过与同学们的讨论和老师的指导,我成功地解决了这些问题,并达到了实验的目标。
六、总结和建议总的来说,本次实验对我来说是一次很好的学习机会,通过实践操作,我深入理解了计算机网络的基本原理。
然而,实验时间比较紧张,希望老师能够给予更多的实验训练的时间,让我们有更多的机会去实践和探索。
网络协议分析实验报告一、实验目的本实验旨在通过对网络协议的分析,加深对计算机网络通信的原理和机制的理解,提高网络安全意识和分析能力。
二、实验环境1. 实验平台:Wireshark2. 实验设备:笔记本电脑、路由器三、实验内容1. 抓包分析TCP协议数据包在实验过程中,我们首先通过Wireshark工具进行抓包,然后选择一个TCP协议的数据包进行分析。
通过分析数据包的各个字段,我们可以了解数据包的结构和传输过程,进一步理解TCP协议的工作原理。
2. 分析UDP协议数据包接着,我们选择了一个UDP协议的数据包进行分析。
UDP与TCP不同,是一种无连接的传输协议,具有数据传输快速、效率高的特点。
通过分析UDP数据包,我们可以看到其简单的数据包头格式和传输方式,了解UDP协议与TCP协议的区别和适用场景。
3. 检测网络攻击在实验中,我们还模拟了一些网络攻击行为,如ARP欺骗、SYN 洪水攻击等,通过Wireshark工具抓取攻击数据包,并分析攻击过程和特征。
这有助于我们了解网络安全威胁的种类和形式,提高网络安全防护意识。
四、实验结果通过分析TCP、UDP协议数据包和网络攻击数据包,我们深入了解了网络协议的工作原理和通信机制。
实验结果表明,Wireshark工具是一款强大的网络分析工具,可以帮助我们深入研究网络通信过程,提高网络攻击检测和防护能力。
五、实验总结通过本次实验,我们不仅对网络协议有了更深入的了解,而且增强了网络安全意识和分析能力。
在今后的学习和工作中,我们将继续深入研究网络协议,不断提升自己在网络领域的技术水平,为网络通信的安全和稳定贡献自己的力量。
六、实验感想本次网络协议分析实验让我们受益匪浅,通过亲自动手抓包分析和检测网络攻击,我们对计算机网络的运行机制和安全防护有了更清晰的认识。
希望通过不断努力和学习,我们能在网络领域取得更大的成就,为网络安全做出更大的贡献。
七、参考文献暂无。
以上为网络协议分析实验报告,感谢您的阅读。
计算机网络实验报告课程_ 计算机网络 _ 实验名称TCP/IP协议分析与验证姓名实验日期:学号实验报告日期:同组人姓名报告退发: ( 订正、重做 )同组人学号实验名称TCP/IP协议分析与验证一.实验环境(详细说明运行的操作系统,网络平台,机器的IP地址)操作系统:Win8.1网络平台:Wireshark机器的IP地址:192.168.191.3二.实验目的通过本实验使学生了解和掌握报文捕获工具Wiresshark(或者EtherDetect)的使用方法和基本特点,通过Wireshark软件捕获并分析基于链路层的协议数据,包括ARP、ICMP、IP、TCP、UDP以及DNS、FTP、HTTP协议的报文格式以及工作过程,促使学生真正了解TCP、UDP、IP等协议的构成三.实验内容及步骤【实验内容】要求学生在各自机器上进行文件下载和浏览网页操作,通过Wireshark捕获报文并分析TCP/IP协议族中各种协议的报文格式和工作过程。
然后在各自机器上发送ping、tracert命令,然后通过Wireshark捕获以太网帧并分析IP、ICMP和ARP协议的报文格式和工作过程【实验步骤】(1)启动Wireshark,并设置好相关参数;(2)启动Wireshark捕获功能;(3)发送ping或tracert命令或进行文件下载和网页浏览;(4)分析Wireshark捕获的各种报文并验证TCP/IP协议的报文格式和工作过程【实验题目】1-1.(1)设置获取数据包的filter为两台机之间。
(2)捕获两台机之间的IP数据报的报文。
(3)在报文的十六进制代码中找出源IP、目标IP、首部长度以及协议字段的值。
粘贴报文处:源IP:c0 a8 bf 03目标IP:c0 a8 a8 0a首部长度:45协议字段的值及含义:01:使用的协议为icmp协议1-2.(1)设置获取数据包的filter为两台机之间。
(2)捕获两台机之间的ICMP报文。
协议数据的捕获和解析实验报告目录一、实验内容和实验环境描述(1)实验内容和目的(2)实验环境二、实验步骤三、IP 协议分析(1)分析IP数据分组(2)头部校验和分析四、ICMP 协议分析五、DHCP 协议分析六、ARP 协议分析七、IP包分片分析八、实验所遇问题解决和心得体会一、实验内容和实验环境描述(1)实验内容和目的1、使用 Wireshark 软件捕获在使用 ping 命令时产生的 ICMP 消息;2、分析网络层 IP 包头格式,理解各字段的作用,对于分段和校验和进行验证;3、使用 Wireshark 软件捕获在使用 ARP 消息,分析其消息格式,理解其工作原理;4、使用 Wireshark 捕获 DHCP 消息,分析其消息序列,理解 DHCP 的功能和操作原理。
通过本实验学生可以深入理解分层体系结构,理解和掌握 TCP/IP 协议栈的代表协议——IP、UDP、ICMP、ARP 和 DHCP 协议的要点。
(2)实验环境1 台装有 MS Windows 系列操作系统的计算机,要求能够连接到 Internet,并安装浏览器软件和Wireshark 软件。
二、实验步骤准备工作1. 下载 Wireshark 软件并了解其功能和使用方法。
2. 确保计算机已经连接到网络。
3. 启动Wireshark对于 ping 命令,设置过滤器为 icmp ,设置捕获接口(Interface)为本机网卡,选中混杂模式(promiscuous mode)捕获选项,设置合适的捕获过滤器(Capture Filter):对于 ping 命令,设置过滤器为 icmp对于 DHCP 消息,设置过滤器为 udp port 67对于 ARP 消息,设置过滤器为 arp4. 开始捕获。
数据捕获捕获 ICMP 协议数据1. 运行 ping 命令(例如:c> ping 192.168.0.1),远程主机地址可以是本机地址、网关路由器地址,也可以是域名(如 )。
一、实验目的与要求学习和掌握数据包分析工具wireshark的使用;利用wireshark工具进行数据包的捕获;利用wireshark工具对捕获的数据包进行分析,正确解析出链路层数据帧、网络层IP 数据包、运输层TCP报文段等各类数据包首部各字段内容能利用wireshark工具分析数据包,详细了解协议的工作原理二、实验内容掌握数据包分析工具wireshark的常规使用方法;正确设置数据包过滤器,并进行数据包捕获;正确捕获自选协议执行过程中的系列数据包;正确分析链路层、网络层、运输层各个数据包首部主要字段的内容。
通过对系列数据包的正确分析,验证和详细了解协议的工作过程。
三、实验步骤wireshark工具的安装(需先安装WinPcap)、启动wireshark工具捕获条件的设置启动数据包捕获,并立即运行相关协议利用wireshark工具捕获Web网站打开时建立TCP连接的链路层、网络层、运输层的数据包关闭数据包的捕获利用wireshark工具分析所捕获的的链路层、网络层、运输层各个数据包首部关键字段的内容结合ipconfig、ping、arp等命令的运行结果,验证所分析的上述各层数据报首部关键字段内容的正确性;分析所捕获的系列数据包,通过对各数据包中相关字段的查证,详细了解和验证常见协议的工作过程。
wireshark工具的关闭;四、结果分析与思考1.win+r打开运行程序,调出cmd,输入ipconfig命令,找到本地MAC地址,再用ping 命令找到目的地址。
本地MAC地址为:192.168.43.135目的地址为:180.101.49.122.运行wireshark软件并进行抓包,随即打开浏览器,找到百度页面。
在浏览器中随意输入浏览信息,进行抓包。
结果如下图示:3.根据步骤2抓到的数据进行分析:(1)第一次握手①以太网的数据包解析②IP数据包解析:③TCP报文段结构解析:(2)第二次握手①以太网数据帧解析②IP数据包解析③tcp报文段解析(3)第三次握手①以太网数据帧解析②IP数据包解析③TCP报文段结构解析以上就是实验抓包过程和分析。
第0页 共7页 实 验 报 告 实验名称 数据链路层协议的理解与实现 课程名称 计算机网络
姓名 王颖 学号 16008404 日期 地点 成绩 教师 王磊
电 气 工 程 学 院 东 南 大 学 东南大学电气工程学院 实验报告 第1页 共7页 第 1 页 1 实验一 数据链路层协议的理解与实现 一.实验目的: 1.加深对流量控制、差错处理方法的理解; 2.熟悉TCP/IP编程, 将书本知识运用到实验中; 3.开拓学生的创新意识,培养学生的独立动手操作的能力;
二.实验内容: 1. 利用已有的模拟信道程序,编制发送、接收程序的部分模块,使系统具有可靠的收发功能。具体要求 1) 采用无连接Socket编程 2) 地址与端口 发送端: 地址:127.0.0.1 端口:8001 接收端: 地址:127.0.0.1 端口:6001 3) 数据帧格式: 00111100 序号 数据 校验位 长度 00111100 应答帧格式: 00111100 应答 00111100 4) 需考虑的异常情况:出错、丢失、延时 5) 采用停等协议 6) 单工方式 7) ACK/NAK的表示:ACK:0x06 NAK:0x15 2. 待完成模块要求 1)发送程序:偶校验;编码;发送、接收;差错处理、流量控制。 2)接收程序:检查偶校验;应答;发送、接收
三.实验环境(软件、硬件及条件): Microsoft visual C++ 6.0
四.实验原理 1、 程序实现的原理 Windows Sockets(套接字) 是在Windows下一套开放的、支持多种协议的网络编程接口规范。为Windows下网络异步通信提供了一种方便的开发和运行环境。 东南大学电气工程学院 实验报告 第2页 共7页 第 2 页 2 Windows Sockets规范建立在BSD UNIX 中实现的Berkeley 套接字模型上,现已是TCP/IP网络的标准。它独立于底层的协议。 其原理示意图如下
1) 数据链路层 数据链路层目的是建立在物理层基础上,通过一些数据链路层协议,在不太可靠的物理链路上实现可靠的数据传输。即数据链路层提供网络中相邻节点之间可靠的数据通信。 数据链路层的主要功能是为网络层提供连接服务,并在数据链路连接上传送帧。依据功能可以分为有连接和无连接两种。本实验采用的是有应答,无连接服务。 无连接服务时,发送方的数据链路层要发送数据时,就直接发送数据帧。接收方的数据链路层能够接受数据帧,或者收到的帧校验正确,就像源主机数据链路层发送应答帧;不能接受或接受到的帧校验不正确时,就返回否定应答,发送端要么重发原帧,要么进入等待状态。 面向无连接的socket使用方法如下: 东南大学电气工程学院 实验报告 第3页 共7页
第 3 页 3 3) 停等协议 停止-等待 ARQ协议是指发送端发送一个帧后,不继续发送而是等待对该帧的确认。在发送端,每次只能处理数据链路层的发送缓冲区中的一个数据帧,将缓冲区中的该帧发送出去,同时启动定时器(本实验采用1.5秒),等待接收端会送的确认帧。当发送端收到ACK确认后,认为该帧已成功到达,再取一个新的数据帧进行发送。若收到由接收端发过来的否定确认NAK,则必须暂时保存已发送给的数据帧的备份,进行重传。本实验中,ACK:0x06 NAK:0x15。 本实验的数据在数据链路上传输的情况有四种,即正常、丢失、延时、出错。采用停等协议时如下:
2、 程序功能说明,各个模块的详细说明; 3、 核心模块程序流程图;
五.实验方法: 1、 主要源代码说明; 1.发送方(Sender)程序模块 1) 发送信息 int SendMsg(char *msg, int len){ bSending=1; int n; n = sizeof(channelsender_addr); sendto(sender_sockfd, msg, len, 0, (struct sockaddr *) &channelsender_addr, n); return 0;} 2) 接收信息 int ReceiverMsg(char *msg){ int n; n = sizeof(channelsender_addr); recvfrom(sender_sockfd,msg,MAX_MSG_SIZE,0,(structsockaddr*)&channelsender_addr, &n); bSending=0;return 0; } 通过设置bSending变量,使用SenderView中的CSenderView::OnTimer (UINT nIDEvent),从而使得数据帧在超时1.5秒后可以重发,如此可以实现延时和出错情况下的自动重发功能。使用库函数sendto ( SOCKET s, const char FAR * buf, int len, int flags,const struct sockaddr FAR * to, int tolen )和recvfrom ( SOCKETs, char 东南大学电气工程学院 实验报告 第4页 共7页 第 4 页 4 FAR* buf, int len, int flags,struct sockaddr FAR* from, int FAR* fromlen );可以实现 3) 构成数据帧 产生发送的信息:头、序号、数据、校验位、长度、尾 void Encode(char msg, int no, int len, char *newmsg){ int FLAG; int count=0; char temp=msg; while(temp!=0){ if((temp%2)!=0) count++; temp=temp/2; } if(count%2==1) FLAG=1; else FLAG=0; *newmsg=HEADER; *(newmsg+1)=no; *(newmsg+2)=msg; *(newmsg+3)=FLAG; *(newmsg+4)=len; *(newmsg+5)=HEADER;} 将newmsg数组按数据帧格式赋值,其中头尾均为HEADER(00111100),通过按位取余计算出1的个数,采取奇校验,如果个数为基数,则校验位为1,否则为0. 4) 检查应答帧 如果返回的应答帧数据位为ACK,则说明正确发送信息 ,否则发送出现错误。 BOOL check_data(char *msg){ if(*(msg+1)==ACK) return TRUE; else return FALSE;} 5) 接收从信道发来的信息 LONG CMainFrame::MyChannelSend(UINT wParam,UINT lParam){
char msg[MAX_FRAME_LEN];/* 缓冲区*/ char str_show[100]; //接收信息,写入msg ReceiverMsg(msg);//接受信息使用库函数ReceiverMsg //处理信息 if(check_data(msg)==1) //收到正确的应答帧{ if (iSendnoiSendno++; //继续发送 Encode(str_send[iSendno], iSendno, msglen, now_send);//产生要发送的信息 SendMsg(now_send, DATA_FRAME_LEN); Show_msg_ListBox("已发送数据:");}} else{ SendMsg(now_send, DATA_FRAME_LEN);//重新发送 Show_msg_ListBox("错误数据:");} 在发送方处理接受的信息时,即处理接受的应答帧时,如果收到正确的应答帧则继续发送,如果应答帧显示发送信息错误,则重新发送。程序根据已经正确接收的帧数(iSendno)和待发送的报文总长度(msglen)的比较,来判断信息是否已经全部正确发送。其中,继续发送时调用Encode函数将要发送的数据构成帧,给信息的序号即是它在字符串中的序号,如此即可保证信息的按序发送,不会出现顺序错误的情况。
2.接收方(Receiver)程序模块 东南大学电气工程学院 实验报告 第5页 共7页 第 5 页 5 1) 接收信息 int ReceiverMsg(char *msg){ int n; n=sizeof(channelreceiver_addr); recvfrom(receiver_sockfd,msg,1000,0,(structsockaddr*)&channelreceiver_addr, &n);return 0; } 2) 发送信息 int SendMsg(char *msg,int len){ int n;n=sizeof(channelreceiver_addr); sendto(receiver_sockfd,msg,len,0,(structsockaddr*&channelreceiver_addr, n);return 0; } 接收方的发送与接受信息模块与发送方的该模块类似,不同的只有库函数中的套接字,而且不需要使用bsending变量。 3) 检查校验位 BOOL check_data(char *msg){ int flag; int count=0; char temp=*(msg+2); while(temp!=0){if((temp%2)!=0) count++;temp=temp/2;} if(count%2==1) flag=1; else flag=0; if(*(msg+3)==flag) return 1; else return 0;} 检查校验位即检查数据的正误,用和前面计算校验位相同的办法,计算接收到的数据的校验位,如果相同,则说明数据正确,不同则说明错误。 4) 接受从信道发来的信息 LONG CMainFrame::MyChannelSend(UINT wParam,UINT lParam){ char str_send[MAX_FRAME_LEN]; char check_ans[ANS_FRAME_LEN]; char show_str[100]; //接收信息,写入str_send int i; for(i=iRevno;i<100;i++) rev_data[i]='\0'; ReceiverMsg(str_send); //接受信息时注意要给str_send[]数组清零,而且不能只清一位,否则显示数据时,如果之前发送的一个数据长于后来发送的数据的话,会导致显示出之前的信息。