网络协议实验报告汇总

关键词: 网络协议 网络工程 实验教学 课程

网络协议实验报告汇总(通用6篇)

篇1:网络协议实验报告汇总

信 息 网 络 技 术 实 验 报 告

实验名称

利用wireshark分析ARP协议

实验编号

6.1

姓名

学号

成绩

2.6常见网络协议分析实验

一、实验室名称

电子政务可视化再现实验室

二、实验项目名称

利用wireshark分析ARP协议

三、实验原理:

Wireshark:Wireshark 是网络包分析工具。网络包分析工具的主要作用是尝试获取网络包,并尝试显示包的尽可能详细的情况。网络包分析工具是一种用来测量有什么东西从网线上进出的测量工具,Wireshark 是最好的开源网络分析软件。

当一台主机把以太网数据帧发送到位于同一局域网上的另一台主机时,是根据48bit的以太网地址来确定目的接口的.设备驱动程序从不检查IP数据报中的目的IP地址。地址解析为这两种不同的地址形式提供映射:32bit的IP地址和数据链路层使用的任何类型的地址。

ARP根据IP地址获取物理地址的一个TCP/IP协议。ARP为IP地址到对应的硬件地址之间提供动态映射。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存。

四、实验目的:

目的是通过实验加深对数据包的认识,网络信息传输过程的理解,加深对协议的理解,并了解协议的结构与区别。

利用wireshark捕获发生在ping过程中的ARP报文,加强对ARP协议的理解,掌握ARP报文格式,掌握ARP请求报文和应答报文的区别。

五、实验内容:

利用wireshark分析ARP协议

六、实验器材(设备、元器件)

运行Windows的计算机,带有并正确安装网卡;wireshark软件;具备路由器、交换机等网络设备的网络连接。

七、实验步骤:

1、查看本机WLAN接口IP,得到192.168.1.112。

2、利用arp –a命令在本地的ARP 缓存中查看IP-MAC对应表。

3、找到与接口192.168.1.112,有过连接的IP,本实验选择192.168.1.109。

4、利用arp-d 192.168.1.109,删除相应缓存记录。

5、打开wireshark网络分析器,选择捕获数据接口,WLAN接口,开始捕获。

6、输入命令,ping 192.168.1.109。

7、此时wireshark会捕获到相应分组数据,停止捕获。

八、实验数据及结果分析

1、请求报文:

由最上方报文信息可以看到,由于之前删除了IP-MAC对应表中IP:192.168.1.109的缓存,因此进行广播,发送查找IP为192.168.1.109的主机,并要求将结果返回给IP地址为192.168.1.112的主机即本机,使用的协议是ARP协议。(1)分析第一行,帧的基本信息:

由结果分析可以得到: 帧的编号(Frame Number):856 帧的长度(Frame Length):42个字节 捕获到的长度(Capture Length):42个字节

帧被捕获的日期和时间(Arrival Time):2016年5月29日,23点15分45.851354000秒

距离前一个帧的捕获时间(Time delta from previous captured/displayed frame0.442497000秒

距离第一个帧的捕获时间差(Time since reference or first frame):181.741785000秒 帧装载的协议:eth:ethertype:arp

(2)分析第二行,数据链路层:

由结果分析得到:

目的地址(Destination):Broadcast(ff:ff:ff:ff:ff:ff)源地址(Source):HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)协议类型:ARP(0x0806)

(3)分析第三行,ARP协议:

由结果分析得到:

硬件类型(Hardware type):Ethernet(1)协议类型:IPv4(0x0800)硬件信息在帧中占的字节数(Hardware size):6 协议信息在帧中占的字节数(Protocol size):4 操作命令为:request(1)请求

发送方的MAC地址(Sender MAC address):HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)发送方的IP地址(Sender IP address):192.168.1.112 目标的MAC地址(Target MAC address):00:00:00_00:00:00(00:00:00:00:00:00)目标的IP地址(Target IP address): 192.168.1.109

2.响应报文:(1)截图:

由最上方报文信息可以看到,IP地址为192.168.1.109主机接收到该ARP请求后,就发送一个ARP的REPLY命令,其中包含自己的MAC地址。(1)分析第一行,帧的基本信息:

由结果分析可以得到: 帧的编号(Frame Number):857 帧的长度(Frame Length):42个字节 捕获到的长度(Capture Length):42个字节

帧被捕获的日期和时间(Arrival Time):2016年5月29日,23点15分41.911804000秒 距离前一个帧的捕获时间(Time delta from previous captured/displayed frame)0.060450000秒

距离第一个帧的捕获时间差(Time since reference or first frame):181.802235000秒 帧装载的协议:eth:ethertype:arp

(2)分析第二行,数据链路层:

由结果分析得到:

目的地址(Destination): HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)源地址(Source):HonHaiPr_ e1:3e:71(d0:7e:35:e1:3e:71)协议类型:ARP(0x0806)(3)分析第三行,ARP协议:

由结果分析得到:

硬件类型(Hardware type):Ethernet(1)协议类型:IPv4(0x0800)硬件信息在帧中占的字节数(Hardware size):6 协议信息在帧中占的字节数(Protocol size):4 操作命令为:reply(2)回应

发送方的MAC地址(Sender MAC address): HonHaiPr_e1:3e:71(d0:7e:35:e1:3e:71)发送方的IP地址(Sender IP address):192.168.1.109 目标的MAC地址(Target MAC address): HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)目标的IP地址(Target IP address): 192.168.1.112

九、实验结论

网络层使用IP地址,但在实际网络的链路上传送数据帧时,最终使用的是该网络的硬件地址。IP地址和下面的网络的硬件地址之间格式不同,在ARP的高速缓存中,存在其映射表。当一台主机在本局域网上向另一个主机发送IP数据包时,先在ARP高速缓存中查看是否其IP地址,再进行确定目的接口。发送时只知道目标IP地址,不知道其MAC地址,在数据链路层也不检查IP数据报中的目的IP地址。因此会使用ARP协议,根据网络层IP数据包包头中的IP地址信息解析出目标硬件地址(MAC地址)信息,以保证通信的顺利进行。

十、总结及心得体会

本实验利用wireshark抓取网络通信数据,分别给出了数据链路层和网络层数据传输的方式。直观的体现了当数据链路层不能解析IP地址时,ARP协议的作用。

在本次实验中,我掌握了wireshark的基本操作,加深了对数据包的认识,更进一步的理解了网络信息传输过程,对协议的理解也更为深刻,包括协议的结构与区别。与ARP有关的cmd命令,了解了IP/MAC信息的作用,更加直观的体会了主机间通信的过程。利用wireshark捕获发生在ping过程中的ARP报文,我加强了对ARP协议的理解,掌握了ARP报文格式以及ARP请求报文和应答报文的区别。

十一、对本实验过程及方式、手段的改进建议

1.首先要启动wireshark,并进行数据捕获,然后再去执行ping命令,避免捕获数据不及时。

2.在捕获到ping命令之后的数据后,及时停止捕获,避免捕获数据过多而不便于后续分析。

3.在筛选信息时,可以使用过滤器,搜寻与ARP协议有关的报文。

篇2:网络协议实验报告汇总

课程代码: 1460146

实验地点: C408

实验1捕获并分析数据包(2014年4月23日)

一、实验目的掌握 虚拟机VMware的安装、配置及使用;掌握捕获数据包软件sniffer的安装、配置及使用。

二、实验内容

1.在本地机上使用Vmware搭建一个网络环境;

2.在虚拟机上安装、配置捕获数据包软件sniffer;

3.使用sniffer软件捕获Telnet数据包,分析TCP的头结构、分析TCP的“三次握手”和“四次挥手”的过程。

三、实验结果

1、写出sniffer软件配置的主要内容;

2、写出对所捕获的Telnet数据包的分析结果;

四、遇到的问题及解决办法

实验2加密与解密的实现(2014年4月30日)

一、实验目的掌握DES及RSA加密/解密算法的原理并完成相应的程序设计。

二、实验内容

1.编写程序实现DES加密/解密算法;

2.编写程序实现RSA加密/解密算法。

三、实验结果

写出实现上述要求的源程序代码并运行加以验证。

四、遇到的问题及解决办法

实验3简单防火墙的实现(2014年5月14日)

一、实验目的熟悉防火墙的基本工作原理,掌握简易防火墙的实现。

二、实验内容

用所熟悉的语言实现简易防火墙。

三、实验结果

写出实现的源程序代码并运行加以验证。

四、遇到的问题及解决办法

实验4简单入侵检测的实现(2014年5月21日)

一、实验目的熟悉入侵检测的基本方法,掌握简易入侵检测系统的实现。

二、实验内容

用所熟悉的语言实现简易入侵检测。

三、实验结果

写出实现的源程序代码并运行加以验证。

篇3:网络协议实验报告汇总

Internet 的迅猛发展,深刻地影响着高等院校计算机网络的教学与实际应用,尤其是网络协议的运行,要求所有的网络元素都遵循相同的约定程序[1]。目前高校的网络协议分析课程环节,主要是采用课堂书本教学和多媒体课件形式,使学生被动地接受较为抽象的网络知识,没有合适的可以满足学生自己动手实践的实验教学环节来加深对所学知识的理解[2]。

国内外的高校已普遍把网络仿真技术作为网络课程教学的有效辅助手段,他们一般是根据自己的需要开发网络仿真软件,或使用商业、开源的网络仿真软件来构建自己的网络仿真实验环境[3]。如用于网络研究的离散事件仿真器NS-2、OPNET Technologies lnc公司生产的OPNET、NAI公司推出的协议分析软件Sniffer,Windows平台下的还有Netxray,Solaris平台下的Nfswatch,以及SunOS下的Etherfind等, 但是这些软件要么价格昂贵,不具有开放性和良好的扩展性;要么功能比较多,操作相当复杂,使用者一般需要经过半年左右的培训才能够熟练地掌握;而且都只是在普通PC或工作站上用软件实现,容易受到外界环境的干扰,捕捉到许多无关的数据;这些软件的目的主要是进行网络监控,解决网络问题,并不是专门用于网络教学,因此功能有限,难于满足目前高校的实际需求[4]。

为此,构建了一个嵌入式网络仿真实验体系,提供了一个比较干净的网络环境,并从计算机网络协议概念入手,在实验中由学生自己动手编辑TCP/IP 各层的数据包并通过网络发送,通过直观分析数据传输的过程和格式,加深学生理解TCP/IP 协议的层次结构及原理,真正地从理论和实践两方面,提高学生的网络知识水平和动手能力。

1 系统的整体架构

该系统主要由集线器(HUB)、嵌入式服务器、网络协议仿真终端组成。系统整体平台示意图如图1所示。

嵌入式服务器接在局域网的集线器上, 它通过RJ-45以太网接口将从局域网接收来的数据包进行过滤,再按照与终端设备所定义的串口通信协议发送给网络仿真终端进行数据包解析;或者将网络仿真终端传送来的数据,重新封装成以太网帧,发向以太网。分布局域网中的网络仿真终端的网络协议编辑组件可对各种网络协议进行编辑和发送,网络协议解析组件可以实时地解析和观察各种数据包组成结构以及模拟协议的实现过程,从而实现TCP/IP协议簇的仿真教学。

该系统主要由软硬件两大部分组成,总体软硬件体系结构如图2所示。

(1) 这里的嵌入式系统是指以EAX-400开发板为核心的嵌入式服务器,其结构分为三层:系统硬件层、中间层与系统软件层。系统硬件层包括核心电路和数据采集电路,它提供了系统软件运行的物理平台和通信接口。中间层是位于系统软件和硬件电路之间的接口层,其目的是将硬件抽象化,即通过程序来控制硬件电路的操作。系统硬件抽象层即BootLoader层,主要进行硬件电路的上电初始化,同时实现对操作系统的支持、引导操作以及为驱动程序提供访问硬件的手段。软件层主要分为实时操作系统层、操作系统应用程序接口层以及应用程序层。其应用程序层主要包括网卡驱动程序、数据包捕获与协议转换、网络协议封装与发送,以及串口通协议。操作系统层为管理层,通过扩展嵌入式网络协议栈和文件系统实现了应用程序接口层。

(2) 网络仿真终端系统主要实现编辑网络原始数据包、发送数据包、获得数据包以及数据包协议解析。实验时,网络仿真终端将从串口接收过来的数据包进行详细字段内容显示并进行协议分析,同样网络仿真终端也可以手动编辑各种数据报,通过嵌入式服务器转发到局域网中。通过此网络协议仿真实验,让学生对网络协议有更深切真实的感受。

2 嵌入式服务器的构建

2.1 嵌入式服务器的硬件平台

嵌入式服务器主要采用的是由北京亿旗创新科技发展有限公司自主研制的高性能嵌入式开发系统EAX-400。EAX-400[5]是构建服务器的理想实验开发平台,内部集成了一个32bitXscale RISC 处理器内核PXA255,具有先进的集成功能;配以太网络接口芯片CS8900A, 这些芯片完成与局域网在物理层上的数据包捕获任务;采用RJ-45插口,可以直接连接到局域网上,并且提供一个通用异步接收和发送串行口UART连接终端设备来与终端设备进行数据交换;并具有逻辑单元、多个通信信道、LCD控制器、PCMCIA 控制器和通用的I/O 口;扩展了所需的SDRAM (64MB)、FLASH(32MB)、以太网接口、RS232接口、电源管理电路等。

2.2 嵌入式服务器软件开发与设计

嵌入式服务器系统以EAX-400为硬件基础,搭建嵌入式交叉编译环境,移植并安装Blob和嵌入式Linux操作系统,构成嵌入式网络服务器节点。微处理器内存内写入TCP/IP通信协议以及与终端设备处理器的串口通信协议,并采用内部SDRAM芯片来暂时存储数据,保存中间处理结果以及作为与服务器端进行数据通信的缓冲区,还保存了IP地址、网卡物理地址和其它差错控制等参数。其功能主要包括捕包模块、封包模块与串口通信模块。应用程序通过socket应用编程接口使用TCP/IP协议栈提供的数据通信功能。嵌入式TCP/IP协议的总体数据流图如图3所示。

(1)当用户传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。如果选择的是面向连接的TCP协议,则应用程序将用户数据交给TCP协议模块处理,将其首部和数据封装成TCP报文段,然后交给IP协议模块添加IP首部,并封装成IP数据报,再根据路由表为IP数据报确定路由。如果找不到相应路由,则向ICMP协议发送出错报文,由ICMP协议模块进行处理;如果找到则将数据包发送到网络接口层,利用ARP协议找到目的IP地址对应的物理地址,然后封装成以太网帧,由网络驱动程序将以太网帧发送出去。

(2)接收数据时首先在处理器相关的存储器中写入相应数据包的控制处理程序,当以太网有数据到达该设备时,由网络驱动程序负责接收数据并分析过滤,然后由中断处理程序唤醒数据接收任务,由数据接收任务将接收到的数据帧交给网络接口层,网络接口层取出帧头信息,判断接收数据的类型,如果是ARP报文,则交给ARP协议模块处理;如果是IP数据报,则将IP数据报直接通过串口通信程序交给仿真终端的应用程序进行相应处理。

2.2.1 数据包的捕获与解析

包捕获机制主要是使用原始套接字(SOCK_RAW)编程,通过原始套接字,能够捕获到包含有数据报头的最原始的数据信息,并且能够生成自己的数据报文,包括报头和数据报本身的内容,而且能够对网络底层的传输机制进行控制[7]。

程序设计的步骤是首先创建一个原始套接字并获取本地 IP 地址, 然后再通过bind()函数将该Socket绑定到本地网卡,设置SOCK_RAW 为SIO_RCVALL,使网卡状态处于杂混模式以便监听网络上的所有数据包,再将捕获到的数据包进行过滤后交到相应的处理程序进行分析。在开始接收数据包之前,我们还应该开辟用户缓冲区用来存放接收到的原始数据包,并将其初始化为数据包结构体。

因为截取底层数据帧返回的是一个指向数据的指针,为了分析方便,设置了一个系列基本的数据报头结构(如ethhdr、iphdr、tcphdr等协议报头)。将返回的指针赋值给指向数据帧头结构的指针,对其进行分析,截取出数据帧中相关协议的起始地址赋值给定义好的数据报头结构,由此可根据不同的结构分析数据,得到我们需要的信息。

2.2.2 网络协议封装与发送

发送数据时应按照以太网协议封装成以太网帧,即添加TCP/IP协议栈各层协议报头。如发送原始IP封包时,首先要以IPPROTO_IP为协议类型创建一个原始套接字,启用原始套接字上的IP_HDRINCL选项,则程序可以从IP数据包首部的第一个字节开始写数据,否则将自动填充数据包首部。接下来主要是构建UDP/TCP封包,这要先设置IP头,再设置UDP/TCP头,并计算UDP/TCP校验和。初始化完整的IP封包之后,调用sendto函数发送,IP数据报将进入网络接口层的发送队列。当发送队列非阻塞时,请求底层物理网络模块转发IP数据报。在以太网网络接口模块转发时,首先进行地址解析取得相应的以太网地址,再按照以太网协议格式将源物理地址、目的物理地址和IP数据报一起打包成以太帧,最后通过以太网接口模块将数据以封装好的以太网帧的格式传送出去。

2.2.3 串口URAT通信的实现

串行通信使用RS-232C标准,一般是通过计算机本身配置的串行口,采用串行通信技术,以异步数据通信方式和嵌入式系统进行连接通信。

在嵌入式Linux系统中,串口设备主要是通过/dev/ttyS0、/dev/ttyS1、/dev/ttyS2、/dev/ttyS3这些串口终端设备文件实现对串口的访问[6]。实现串口通信功能的设计流程如图4所示。

(1)使用标准的文件打开函数open打开串口。

(2)进行串口初始化,设置串口通信参。串口的设置主要是设置struct termios结构体中的各成员值,可以设置波特率、字符大小、数据位、停止位和奇偶校验位等参数。

(3) 等待串口中断。

(4) 当有串口中断时,先保存现场,再从缓冲区中读写串口。在串口上往返地传输数据,并在传输过程中进行校验。读写串口是通过使用read函数和write函数实现的。

(5) 读写完数据后,设置结束标志,中断返回。即释放串口以供其它应用程序使用。

最后将所有程序进行交叉编译及PC机编译,分别生成宿主机与目标机的可执行文件。再通过超级终端把目标板的网络地址与宿主机设为同一网段,然后用tftp或串口把客户端交叉编译好的目标文件下载到目标板中,实现局域网中数据包的采集及目标机与宿主机之间的双机通信。

3 协议仿真终端的构建

3.1 网络协议仿真的开发和设计

此系统主要是对从串口传送来的数据包进行可视化分析。具有网络协议分析功能,该功能是对网络原始数据包进行实时的协议解析与显示;并具有网络协议编辑功能,该功能由数据包编辑器、数据包发送器协同完成,主要是用户自己动手编辑TCP/IP 各层的数据包并通过嵌入式服务器发送到局域网。数据包解析和编辑的基本流程如图5所示。

网络协议仿真终端接收到数据包后,根据TCP/IP的分层理论和网络协议中定义的各种类型数据包的格式对捕获的数据包进行自下而上的拆分与分析[10,11]。在网络层,IP包头主要包含版本号、首部长度、协议类型、首部校验和、源IP地址、目的IP地址等。利用解析函数,对IP包头信息进行解析,根据IP包内的协议类型来判断是ICMP、TCP还是UDP协议,最后根据传输层所用的协议类型调用相应的解析函数,载荷部分进人下一层协议分析。在传输层,TCP包头主要包含源端口、目的端口等域,利用解析函数解析可以得到该包的应用类型,比如FTP的端口为21 , Telnet为23。对UDP包也可作类似分析。

对数据包的包头进行分析,可以确定该包中应用层的协议。同时对包头的控制域及选择项进行说明和文字描述,将协议可视化,为用户提供直观的显示界面。数据包的编辑是用户按照各个协议头部的组成部分,分别设置各个字段的内容并和要发送的数据内容一起通过串口发送到嵌入式服务器,由服务器打包封装成以太网帧传送到局域网

3.2 协议仿真终端的实现

为了建立可视化交互仿真环境,我们将协议仿真分为四个部分实现:可视化编程器、仿真脚本生成器、网络仿真核心、仿真数据分析器。各部分具有自己的独立功能,相互之间只有数据的联系,没有直接的逻辑依赖性,减少了程序模块间耦合度。协议仿真侧重协议的建模和实现,对于TCP/IP协议集中的协议,我们通过对其进行详细分析并相应建立模型来实现。

(1) 在物理网络仿真中,主要包括对以太网、快速以太网等物理网络的仿真。

(2) 在网络层仿真中,主要包括对IP协议以及某些路由协议的仿真。

(3) 在传输层仿真中,主要包括对TCP协议、UDP协议、ICMP协议、IGMP协议的仿真。

(4) 在应用层仿真中,主要包括对TCP服务器、TCP客户端、UDP服务器、UDP客户端的仿真。

可视化编辑器采用事件驱动模式,用于对网络结构模型、网络协议的构建、编辑和修改。根据上面仿真模型,将可视化编辑器划分为以下两大部分:

3.2.1 数据包解析与显示

协议分析的原理就是根据现有的协议模式,到固定的位置取值,然后根据取得的值来判断其协议以及实施下一步分析动作。协议分析的功能是分层体现的,最基本的是根据协议规则,将数据报文分解成以域为单位的数据,并可视化显示域值、域的长度及域的参数。

在协议分析模块中,将有一个协议分析类,由它来发起对数据帧的分析命令,然后逐层对其按照所属的协议进行分析,再将分析的结果以及协议的数据内容存放入相应的协议对象中,最后将分析的结果通过ASCII码或其它形式向用户显现。首先由网络层数据报的格式可以得到所获得的数据报的目的IP地址和源IP地址。其中,协议字段的值表明了IP数据区的内容类型,若为6说明为TCP包,若为17说明为UDP包等等。通过判断IP报头中协议字段的值可以提取TCP等数据报。我们就可以按照TCP等请求包的数据格式继续分析其中的数据。

可视化的界面设计如图6所示:左上分页主要是显示捕获到的所有数据包列表; 左下分页则包括对串口通信中各参数的设置,包括端口号、波特率、奇偶验校和停止位; 右上分页主要是对捕获到的数据包进行协议分析的结果,列出了数据报报头各自段的内容,协议类型以及具体协议内容。右下分页主要是对捕获到的数据包里面的数据内容以二进制形式和ASCII值进行显示。

3.2.2 网络协议编辑与发送

当我们用本系统模拟一个主机向网络上发送数据包的时候,其发送的数据中的源MAC地址和源IP地址都是一个固定的地址。用户可以先设置好这两个地址,那么在新建数据包的时候,这两个值就会被自动地填充到新生成的数据包的对应的位置。再构造IP和UDP/TCP首部。构造首部的过程就是用定义好的各首部的数据结构依次填写IP首部和UDP/TCP首部的各个字段,然后把填写好的首部分别加入到所要发送的数据里面。

对数据包的编辑与发送界面主要如图7所示:左上分页可以自己编写要发送的IP地址、端口号及数据内容,选定想要封装的网络协议;左下分页是对串口通信中各参数的进行设置;中分页显示发送、接收到的数据内容以及相应的程序状态;右分页则显示所有相互进行通信的用户列表。

4 结 语

本文介绍的实验仿真系统构建了基于 PXA255 处理器和嵌入式 Linux操作系统的服务器系统,形成一个干净的网络环境,完成对局域网中各数据包的捕获、发送和各种网络协议的编辑、解析。可由这些嵌入式服务器构建一套独立的网络实验系统,不存在其它网络封包的干扰。所有硬件设备都是嵌入式计算机,从而保证整个系统非常可靠、稳定、安全。在终端构建了网络仿真系统,以多种直观的表述方式揭示协议封装的内涵和工作原理,通过使用者亲自动手编辑发送数据包,然后在分析端通过观察来了解网络的传输行为、理解指定协议在网络上的运行机制,协助学生在动手操作和体验中提升对知识的掌握程度。此仿真系统为改善目前高校计算机网络基础知识教学当中存在的一些问题,提供了一种很好的教学方式,该系统将会有很好的利用前景和推广价值。

摘要:计算机网络课程的基本概念以及技术涉及到许多抽象的理论知识和大量的网络协议,使许多初学者感到抽象难懂。为此在PXA255 Xscale架构的处理器和嵌入式Linux操作系统的基础上,构建一个干净环境下的网络协议仿真实验系统,排除了其它网络封包的干扰,模拟真实的计算机网络行为,用于TCP/IP协议簇的仿真教学,让学生更好地理解网络协议交互的各个步骤以及相关协议的通信机制。

关键词:嵌入式系统,网络仿真,TCP/IP协议,Linux

参考文献

[1]Rohit Goyal,Steve Lai,Raj Jain,et al.Laboratoriesfor Data Communi-cations and Computer Networks[J].IEEE FIE Conference,1998,21(5):112-115.

[2]Lawrence S Brakmo,Larry L Peterson.Experiences with Network Sim-ulation[J].ACM,1996,36(2):58-61.

[3]解福,于晓梅,郑明春.计算机网络仿真教学环境的构建与应用[J].山东师范大学学报:自然科学版,2004,23(19):17-19.

[4]侯宗浩,王秉康,黄泳翔.网络仿真的研究[J].计算机仿真,2003,20(10):45-47.

[5]李驹光.ARM应用系统开发详解[M].北京:清华大学出版社,2003.

[6]孙琼.嵌入式Linux应用程序开发详解[M].北京:人民邮电出版社,2006.

[7]黄天戌,汪汝宁,袁学文.TCP/IP协议在嵌入式异构网络互联中的应用[J].单片机与嵌入式系统应用,2004(9):30-33.

[8]Zhang W,Branicky M S,Phillips S M.Stability of networked controlsystems[J].IEEE Control System Magazine,2001,21(11):84-99.

[9]Risso F,Degioanni L.An Architecture for High Performance NetworkAnalysis[C]//proceedings.of the 6th IEEE sympo-sium on Computerand Communications(ISCC2001).Hammamet,Tunisia,2001.

[10]赵海雁,陈立潮,叶树华.基于Windows的网络监听技术在局域网中的实现[J].计算机工程,2004,30(22):117-118.

篇4:网络协议实验报告汇总

《义务教育英语课程标准》(2011年版)课程基本理念提出,丰富课程资源,拓展英语学习的渠道。要求在教学中创造性地开发和利用现实生活中鲜活的英语学习资源,积极利用音像、广播、电视、书报杂志、网络信息等,拓展学生学习和运用英语的渠道。《普通高中英语课程标准》(2003年版)基本理念中提出,优化学习方式,提高自主学习能力。高中英语课程的设计与实施要有利于学生学会利用多种媒体和信息资源,拓宽学习渠道,形成具有个性的学习方法和风格。从以上文献的描述中,我们可以得出以下几个关键词:改革、多渠道、技术智能、个性化学习策略。21世纪的学校课堂需要改革,教学目的不仅是传道、授业和解惑,使学生记忆更多的知识,而且要培养适合信息时代发展要求的策略性学习者。这些策略性学习者能够利用多种技术手段来扩展信息世界,具备计划、设计、执行与评价等信息素养和批判性与创造性思维,更好地来规划今后的学习和生活。英语在我国是作为外语来学习,学生缺少真实的语言实践情境。目前教材的编写是按照主题展开,语言的复现率较低。因此,在学生英语学习过程中,词汇学习是一大难点。传统课堂的词汇学习主要是通过学生诵读和造句来进行,词汇课课堂教学模式仍处于摸索和探讨阶段。教师虽然重视对词汇的听写,但对于词汇的考查方式主要以默写为主,较为单一,对学生词汇掌握的了解程度停留在数量的多少上,缺少针对性的指导。

“爆破英语”是北京师范大学安博教育发展研究院开发的网络英语课程。词汇爆破是其三大核心模块之一。开发理念融合心理学记忆原理与网络技术的成果,根据学生个体记忆特点,形成母语式、爆破式快速单词记忆。通过评测追踪、个性资源、智能记忆、迭代训练和顾问指导五个关键环节来帮助学生确定学习内容,建立个性化的学习路径,教师通过后台反馈信息来监督和指导学生的词汇学习。

鉴于“爆破英语”利用网络软件记忆词汇的优势,河北省教育学会中小学外语教学专业委员会组织部分会员单位的师生进行了几个月的网络词汇学习实验。多数教师在实验中进行探索,达到了预期的目的,得到广大师生和家长的好评。同时,在实验过程中也发现了一些操作性的难题。现将部分实验校的实验报告予以汇总,供教学参考。◎

篇5:网络协议分析实验总结

练习一利用仿真编辑器发送IP数据包

描述:收发IPv4报文,不填上层协议.问题:①查看捕获到得报文长度是60,和你编辑的报文长度不同,为什么?

最小帧长度为60,当不足60时,在源数据尾部添加0补足。②讨论,为什么会捕获到ICMP目的端口不可达差错报文? 差错报文的类型为协议不可达,因为上层协议为0,未定义。

练习二编辑发送IPV6数据包

描述:收发IPv6报文.问题:①比较IPV4头,IPV6有了那些变化?IPV4的TTL字段在IPV6里对应那个字段? 比较IPv4 和IPv6 的报头,可以看到以下几个特点:

● 字段的数量从IPv4 中的13(包括选项)个,降到了IPv6 中的8 个; ● 中间路由器必须处理的字段从6 个降到了4 个,这就可以更有效地转发普通的IPv6 数据包;

● 很少使用的字段,如支持拆分的字段,以及IPv4 报头中的选项,被移到了IPv6 报头的扩展报头中;

● ● IPv6 报头的长度是IPv4 最小报头长度(20 字节)的两倍,达到40 字节。然而,新的IPv6 报头中包含的源地址和目的地址的长度,是IPv4 源地址和目的地址的4 倍。

对应:跳限制----这个8位字段代替了IPv4中的TTL字段。

练习三:特殊的IP地址

描述:直接广播地址包含一个有效的网络号和一个全“1”的主机号,只有本网络内的主机能够收到广播,受限广播地址是全为1的IP地址;有限广播的数据包里不包含自己的ip地址,而直接广播地址里包含自身的ip地址 练习四: IP包分段实验

问题:讨论,数据量为多少时正好分两片?1480*2=2960 练习五: netstat命令

描述: C:>netstat –s

;查看本机已经接收和发送的IP报文个数

C:>netstat –s

;查看本机已经接收和发送的IP报文个数 C:>netstat –e

;观察以太网统计信息,实验二2.1 ARP协议

练习一维护 ARP 缓存表

描述: :查看ARP缓存

:arp –a 手动建立 ARP 表 :arp –s IP(如172.16.0.31)MAC(如:00-E0-4D-3D-84-53)

清空 ARP 缓存表:arp –d 练习二仿真发送 ARP 请求报文

描述:ARP协议叫物理解析协议,是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间

2.2 ICMPv4协议

练习一利用仿真编辑器编辑 ICMP 回显请求报文 练习二仿真发送 ICMP 时间戳请求报文

描述: ICMP封装在IP报文里面,一个ICMP报文32位,8位类型,八位代码,16位校验和

2.3 ICMPv6 只是把ICMP放在了IPv6数据包的载荷中.实验三3.1 ARP 练习一发送 ARP 请求报文(不同网段内)

描述:在跨越路由器进行通信的时候,发起通讯的主机发现目的地址不在同一个网段,会先查询路由器的地址,于是广播出ARP请求,路由器的入口网卡发现有一个ARP请求的目的IP是自己的IP地址,于是回复自己的Mac,得到了Mac,发起通信的主机将通信内容发送到路由器的入口网卡,并选路到出口网卡,此时出口网卡需要知道目标的Mac,于是广播出ARP查询,目标机回复自己的Mac,路由器的出口网卡成功的将信息发送到目标机器.练习二

ICMP 差错报文

描述:ICMP目的端口不可达/超时/的情况.注意为了模拟目的端口不可达,某主机ping一个不存在的IP地址,为了模拟超时,向一个跨路由器的目标通信,但是TTL设置为1,路由器会丢弃TTL耗尽的包,因为根本就收不到,所以当然就没有回复,就会超时

试验3.2 ARP欺骗

描述:

1、ARP 高速缓存

ARP 缓存表是记录 IP 地址和 MAC 地址的映射关系。ARP 表分为动态更新和静态更新两种,系统默认动态,更新时间为 120 秒。ARP 表的建立是通过以下两个途径:

●主动解析:如果一台计算机想与另一台不知道 MAC 地址的计算机通信,则该计算机主动发 ARP 请求;

●被动解析:如果一台计算机接收到了一台计算机的 ARP 请求,则首先在本地建立请求计算机的 IP 地址和 MAC 地址的对应表;

ARP 地址欺骗正是利用高速缓存,使高速缓存中存在错误的映射关系,误导数据包发往错误的目的地。

2、ARP 地址欺骗的原理

一般情况下,当系统收到 ARP 请求或应答时,都要把源端的硬件地址和 IP 地址填入 ARP 高速缓存。正是

根据这一性质,为 ARP 欺骗提供了条件。编辑一个 ARP 应答数据包,将 ARP 层的源 IP 地址为主机 A 的 IP 地址,将 ARP 层的源 MAC 地址填为主机B 的 MAC 地址,将 MAC 层的源地址填为主机 A 的 MAC 地址,发送这个数据包。当到达目的主机时,由于 ARP特性:当系统收到 ARP 请求或应答时,都要把请求端的硬件地址和协议地址填入 ARP 高速缓存。所以在向 ARP 高速缓存中添加表项时,添加的是主机 A 的 IP 地址和主机 B 的 MAC 地址值。当要向主机 A 发送数据包时,要发送的数据包的目的 MAC 地址填入了由高速缓存中提取的地址(主机 B 的 MAC 地址),这样,要发送给主机 A的数据包被发送给了主机 B。

实验 3.3 ICMP Redirect

练习一利用 ICMP 重定向进行信息窃取

描述:主机可能会把某数据发送到一个错误的路由。在这种情况下,收到该数据的路由器会把数据转发给正确的路由器,同时,它会向主机发送 ICMP 重定向报文,来改变主机的路由表。给主机来指出存在一个更好的路由。

试验时,主机A给E发送报文,主机B作为路由器,主机C给A发送ICMP重定向报文,在网关地址中添加自己的IP地址,并按照上表填写ICMP数据部分,此时主机A的路由表中出现了主机A到E的一条记录,网关是C的IP地址;

问题:说明 ICMP 重定向的意义.意义:ICMP 重定向使得客户端管理工作大大减少,使得对于主机的路由功能要求大大降低。而且当路由线路非最优化是线路的速度一定有所损失。而有了重定向之后可以很快的修改非最优线路提高通信速度。

实验四 UDP

练习一利用仿真编辑器编辑 UDP 数据包并发送

描述:UDP和TCP都是传输层的协议,他们被应用层使用,为了实现多路复用和多路分解,应用层使用了端口号,所以UDP中需要填写源端口和目的端口.问题:①将 UDP 的校验和填“0”,在捕获包中查看校验和是否正确?

正,UDP没有纠错能力,也没有回执机制,所以即使它能够发现自身的错误,也没有能力和必要去纠正错误

练习二

UDP 单播通信

描述:使用UDP工具进行通信,确认UDP没有确认报文;

练习三利用仿真编辑器编辑 UDP 数据包,利用工具接收

描述:向目的主机的没有开放的端口发送UDP,会产生目的端口不可达的ICMP信息.练习四

UDP 受限广播通信

描述:使用UDP通信工具,在受限广播地址(全是1)上向发送UDP广播,相连的设备无论是否在同一个网段之内,都能够收到信息,该报文的目的MAC地址是FFFFFF-FFFFFF.练习五

UDP 直接广播通信

描述:使用UDP工具,在直接广播地址上(网络号+255)上发送广播,只有同一个网段的设备能够接收到,该报文的目的MAC地址是FFFFFF-FFFFFF.问题:说明受限广播和直接广播的区别?

直接广播地址包括一个有效网络号和一个全 1 的广播号,主机可能还不知道他所在网络的网络掩码,路由器可能对该种数据报进行转发。

受限广播地址是一个 32 位全为 1 的 IP 地址,在任何情况下这样的数据包仅出现在本地网络中,路由器不对该种数据报进行转发。练习六利用仿真编辑器编辑 IPV6 的 UDP 数据包并发送 描述:在UDP上,IPv4和IPv6没有区别

练习七运行 netstat 命令

描述:netstat 命令是用于显示网络使用协议的统计;

netstat –s

;显示每个协议的使用状态,netstat –a

;显示主机正在使用的端口号

实验五

TCP

练习一观察 TCP 协议的连接和释放过程 描述:

问题::TCP 连接建立时,前两个报文的 TCP 层首部有一个“maximum segment size”字段,它的值是多少?怎样得出的?

最大字段长度为 1460,该字段长度通常受该计算机连接的网络的数据链路层的最大传送单元限制。1460=1500-20(IP 首部)-20(TCP 首部)

练习二利用仿真编辑器编辑并发送 TCP 数据包

描述:使用仿真编辑器手动实现TCP的三次握手连线和四次握手拆线过程.练习三

TCP 的重传机制

描述:接收端开启过滤软件,阻断TCP通信,TCP会进行重传,在这个例子中,重传了五次

实验六6.1 DNS

练习一

nslookup 工具的使用

描述:nslookup 命令是查询域名对应 IP 的工具,其用法是:nslookup 域名, 运行结果:Server:(JServer.NetLab);

Address:(172.16.0.253);

Name:(host34.NetLab);

Address:(172.16.0.34);反向查询某个IP的域名:>nslookup 172.16.0.253 运行结果Server:(JServer.NetLab);

Address:(172.16.0.253);

Name:(JServer.NetLab);

Address:(172.16.0.253);

练习二仿真编辑 DNS 查询报文(正向解析)

描述:这里最重要的东西是DNS的报文格式和”域名循环体”的问题.图片是域名循环体.练习三仿真编辑 DNS 查询报文(反向解析)

练习四

ipconfig 命令

描述:ipconfig/displaydns

;显示本机缓冲区中 DNS 解析的内容;

ipconfig/flushdns

;清空本机 DNS 缓冲区中的内容; 注意DNS缓存是有生存周期的.实验 6.2 UDP 端口扫描

练习一

UDP 端口扫描

描述:向目标端口发送一个 UDP 协议分组。如果目标端口以“ICMP port unreachable”消息响应,那么说明该端口是关闭的;反之,如果没有收到“ICMP port unreachable”响应消息,则端口是打开的.实验 6.3 TCP 端口扫描

1、TCP SYN 扫描

这种方法是向目标端口发送一个 SYN 分组(packet),如果目标端口返回 SYN/ACK 标志,那么可以肯定该端口处于检听状态;否则返回的是 RST/ACK 标志。

3、TCP FIN 扫描

这种方法是向目标端口发送一个 FIN 分组。按 RFC793 的规定,对于所有关闭的端口,目标系统应该返回一个 RST(复位)标志。这种方法通常用在基于 UNIX 的 TCP/IP 协议堆栈,有的时候有可能 SYN 扫描都不够秘密。一些防火墙和包过滤器会对一些指定的端口进行监视,有的程序能检测到这些扫描.相反,FIN 数据包可能会没有任何麻烦的通过。这种扫描方法的思想是关闭的端口会用适当的 RST 来回复 FIN 数据包。另一方面,打开的端口会忽略对 FIN 数据包的回复。这种方法和系统的实现有一定的关系,Windows 系统不管端口是否打开,都回复 RST,否则就是其他的操作系统,这样,这种扫描方法就不适用了。

实验七 7.1 FTP 协议

练习一

FTP 描述:注意事项:FTP登录的时候,可以捕获到用户名和密码的明文, USER 是用户名命令,PASS 是密码命令,LIST 是dir的命令, 问题:①FTP 服务器是如何知道用户的数据端口?

客户端通过 PORT 命令告知服务器: PORT 172,16,0,16,5,101, 端口是:5*256+101=1381 ②21 端口和 20 端口分别传输什么内容? 端口传输控制信息,20 端口传输数据,数据传输结束后,20 端口关闭,21 端口未关闭,发送quit命令之后,两个端口都关闭.练习二使用浏览器登入 FTP 描述:控制台登录和浏览器登录是不一样的,使用浏览器登录,会启动被动模式.问题:

① FTP 服务器用哪个端口传输数据,数据连接是谁发起的连接?

FTP 服务器用 8361 接口传输数据,数据连接是客户端主动发起(即此时使用的是 PASV 模式

② 用户是如何知道服务器的数据端口?

服务器对客户端的 PASV 命令返回应答:227 Entering Passive Mode(172,16,0,253,32,169),告知客户端服务器端已经打开了 8361(32*256+169=8361)端口作为数据端口。练习三在窗口模式下,上传/下传数据文件

实验 7.2 HTTP 练习一主页访问

描述:注意HTTP协议的所有东西都封装在TCP中 问题:

① 使用了 HTTP 协议的哪种方法(命令)读取网页文件?网页的文件名什么?

GET 方法,网页文件名:/experiment/

练习二页面提交

描述:页面提交就是提交表单

问题: ① 提交信息的过程使用了 HTTP 协议的哪种方法?

POST 方法

② 传输密码是明文还是密文?粘贴含有用户名和密码的捕获包。

明文

③ 每次 HTTP 命令都是单独连接完成的(一次一个连接),这样有什么好处?

因为 HTTP 是无状态协议,短连接(一次一个连接)实现、管理起来比较简单,存在的连接都是有用连接,不需要额外的的控制手段

实验 7.3 DHCP DHCP 工作原理

①发现阶段:DHCP 客户机以广播方式发送 DHCP discover 报文来寻找 DHCP 服务器。

②提供阶段:DHCP 服务器在网络中接收到 DHCP discover 报文后会做出响应,它从尚未出租的 IP 地址中挑选一个分配给 DHCP 客户机,向 DHCP 客户机发送一个包含出租的 IP 地址和其他设置的 DHCP offer 报文。③选择阶段:如果有多台 DHCP 服务器向 DHCP 客户机发来的 DHCP offer 提供报文,则 DHCP 客户机只接受第一个收到的 DHCP offer 提供报文,然后它就以广播方式回答一个 DHCP request 请求报文,该报文中包含向它所选定的 DHCP 服务器请求 IP 地址的内容。

确认阶段:DHCP 服务器收到 DHCP 客户机回答的 DHCP request 请求报文之后,它便向 DHCP 客户机发送一个包含它所提供的 IP 地址和其他设置的 DHCP ack 确认报文,告诉 DHCP 客户机可以使用它所提供的 IP 地址。

⑤重新登录:以后 DHCP 客户机每次重新登录网络时,就不需要再发送 DHCP discover 发现报文了,而是直接发送包含前一次所分配的 IP 地址的 DHCP request 请求报文。

⑥更新租约:DHCP 服务器向 DHCP 客户机出租的 IP 地址一般都有一个租借期限,期满后 DHCP 服务器便会收回出租的 IP 地址。练习一使用 DHCP 获取 IP 地址

问题:说明捕获到的 DHCP 协议中,Request(discovery)、Reply(offer)、Request(Request)、Reply(Ack)报文的作用是什么?

DHCP 客户机以广播方式发送 DHCP discover 报文来寻找 DHCP 服务器。

DHCP 服务器在网络中接收到 DHCP discover 报文后会做出响应,它从尚未出租的 IP 地址中挑选一个分配给DHCP 客户机,向 DHCP 客户机发送一个包含出租的 IP 地址和其他设置的 DHCP offer 报文。

如果有多台 DHCP 服务器向DHCP 客户机发来的 DHCP offer 提供报文,则 DHCP客户机只接受第一个收到的 DHCP offer 提供报文,然后它就以广播方式回答一个 DHCP request 请求报文,该报文中包含向它所选定的 DHCP 服务器请求 IP 地址的内容。

DHCP 服务器收到 DHCP 客户机回答的 DHCP request 请求报文之后,它便向 DHCP 客户机发送一个包含它所提供的 IP 地址和其他设置的 DHCP ack 确认报文,告诉 DHCP 客户机可以使用它所提供的 IP 地址。

实验 8.1 SMTP 和 POP 协议

练习一

Outlook 发送电子邮件 描述: SMTP使用TCP端口号为25,报文内容看不见,不需要密码用户名认证

练习二

Outlook 接收电子邮件

篇6:网络实验室保密协议

1.实验室内各组各个模块的源代码和相应文档现在除了各自负责人掌握外和给相应总负责人汇总外,不可以给其他人(包括同组内其他模块人员)。

2.如果需要,各个模块之间可以提供接口,提供可执行文件。如果需要更多的,请发信给相应总负责人,说明原因。视情况而定。

3.毕业或其他原因离开实验室,不允许带走与实验室相关的代码及文档和数据(已经发表的文章除外)。

4.毕业或其他原因离开实验室前,有义务与责任,毫无保留的把负责的部分传递给实验室接替的人。

5.毕业或其他原因离开实验室后一年之内,不得把实验室当前正在进行或将要进行的课题(/项目)的研究思路(/开发途径)透露给第三方。

实验室有权违约者要对因违约所引起的一切后果负责任。

_________网络实验室(盖章):_________

成员签名:_________

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:66553826@qq.com

上一篇:最新物业公司工作总结开头词 物业公司工作总结开头语集(8篇) 下一篇:最新物业公司工作总结开头词 物业公司工作总结开头语集(汇总5篇)