重邮网络协议分析实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
重邮网络协议分析实验报告篇一:网络协议分析实验报告
网络协议分析实验报告
学院:
班级:
姓名:
学号:
1
实验1 基于ICMP的MTU测量方法实验目的
1)掌握ICMP协议
2)掌握PING程序基本原理
3)掌握socket编程技术
4)掌握MTU测量算法
实验任务
编写一个基于ICMP协议测量网络MTU的程序,程序需要完成的功能:
1)使用目标IP地址或域名作为参数,测量本机到目
标主机经过网络的MTU;
2)输出到目标主机经过网络的MTU。
实验环境
1)Linux系统;
2)gcc编译工具,gdb调试工具。
实验步骤
1. 首先仔细研读例程,熟悉linux下socket原始套接字编程模式,为实验做好准备;
2. 生成最大数据量的IP数据报(64K),数据部分为ICMP格式,ICMP报文为回送请求报文,IP首部DF位置为1;由发送线程发送;
3. 如果收到报文为目标不可达报文,减少数据长度,再次发送,直到收到回送应答报文。至此,MTU测量完毕。
实验原理
ICMP:ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数
据的传递起着重要的作用。
PING程序基本原理:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者。
MTU:是网络最大传输单元(包长度),IP路由器必须对超过MTU的IP报进行分片目
2
的主机再完成重组处理,所以确定源到目的路径MTU 对提高传输效率是非常必要的。确定路
径MTU的方法是“要求报文分片但又不被允许”的ICMP 报文。
IPV4数据结构分析:
3
4
实验截图
发送一系列的长度递减的不允许分片的数据报,通过接收返回的ICMP报的分析,可确定路径MTU,如下图所示:MTU值为
1430
5
篇二:网络协议分析实验报告
课程设计
课程设计题目学生姓名:学号:专业:
XX年 6 月 29日
实验1 基于ICMP的MTU测量方法
实验目的
1)掌握ICMP协议
2)掌握PING程序基本原理
3)掌握socket编程技术
4)掌握MTU测量算法
实验任务
编写一个基于ICMP协议测量网络MTU的程序,程序需要完成的功能:
1)使用目标IP地址或域名作为参数,测量本机到目标主机经过网络的MTU;
2)输出到目标主机经过网络的MTU。
实验环境
1)Linux系统;
2)gcc编译工具,gdb调试工具。
实验步骤
1. 首先仔细研读例程,熟悉linux下socket原始套接字编程模式,为实验做好准备;
2. 生成最大数据量的IP数据报(64K),数据部分为ICMP格式,ICMP报文为回送请求报文,IP首部DF位置为1;由发送线程发送;
3. 如果收到报文为目标不可达报文,减少数据长度,再次发送,直到收到回送应答报文。至此,MTU测量完毕。
ICMP协议是一种面向无连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。[1]
它是TCP/IP协议族的一个子协议,属于网络层协(来自: 小龙文档网:重邮网络协议分析实验报告)议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP
路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。ICMP报文在IP帧结构的首部协议类型字段(Protocol 8bit)的值=1.
ICMP提供一致易懂的出错报告信息。发送的出错报文返回到发送原数据的设备,因为只有发送设备才是出错报文的逻辑接受者。发送设备随后可根据ICMP报文确定发生错误的类型,并确定如何才能更好地重发失败的数据包。但是ICMP唯一的功能是报告问题而不是纠正错误,纠正错误的任务由发送方完成。
我们在网络中经常会使用到ICMP协议,比如我们经常使用的用于检查网络通不通的Ping命令(Linux和Windows 中均有),这个“Ping”的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。
ICMP(Internet Control Message,网际控制报文协议)是为网关和目标主机而提供的一种差错控制机制,使它们在遇到差错时能把错误报告给报文源发方.是IP层的一个协议。但是由于差错报告在发送给报文源发方时可能也要经过若干子网,因此牵涉到路由选择等问题,所以ICMP报文需通过IP协议来发送。ICMP数据报的数据发送前需要两级封装:首先添加ICMP报头形成ICMP报文,再添加IP报头形成IP
数据报
通信术语最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等)。
实验2 基于UDP的traceroute程序
实验目的
1)掌握UDP协议
2)掌握UDP客户机/服务器编程模式
3)掌握socket编程技术
4)掌握traceroute算法
实验任务
1. 熟悉程序和,使用网络嗅探器(如wireshark)分析UDP通讯数据报格式;
2. 编写一个基于UDP协议的网络路径记录程序程序,程序需要完成的功能:
1)使用目标IP地址或域名作为参数,测量本机到目标主机经过的路由器IP地址;