计算机网络考试数据包格式,计算机网络实验 分析ICMP协议数据包格式.doc
计算机网络实验 分析ICMP协议数据包格式
实 验 报 告
实验课程名称 计算机网络实验
实验项目名称 分析ICMP协议数据包格式
年 级 08
专 业 电子信息科学与技术
学生姓名 郎子龙
学 号 080712110069
理 学 院
实验时间: 2010年 5 月 18 日
实验六 分析ICMP协议数据包格式
一、实验目的
掌握ICMP协议的作用和格式
理解ICMP数据包首部各字段的含义
理解ICMP协议与IP协议的封装关系
二、实验原理
ICMP协议是IP协议的补充,用于IP层的差错报告、拥塞控制、路径控制以及路由器或主机信息的获取。ICMP与IP协议位于同一个层次(IP层);但ICMP报文是封装在IP数据报的数据部分进行传输的。
ICMP报文由首部和数据段组成。首部为定长的8个字节,前4个字节是通用部分,后4个字节随报文类型不同有所差异。ICMP报文的一般格式如图所示。
2、ICMP报文虽然细分为很多类,但总的来看可以分为如图所示的三大类:差错报告、控制报文和请求应答报文。
3、数据包超时报告
在数据包的传输过程中,首部的TTL值用于防止数据报因路由表的问题而无休止的在网络中传输。当TTL值为0时,路由器会丢弃当前的数据报,并产生一个ICMP数据报超时报告。另外在信宿进行分片重组时会启动重组定时器,一旦重组定时器超时,信宿就会丢弃当前正在重组的数据报,然后产生一个ICMP数据报超时报告,并向信源发送该超时报告。
数据报超时报告的类型和代码的含义如表所示。类型值11表示是数据超时报文,代码“0”表示TTL超时,代码“1”表示分片重组超时。
类型报文代码描述11超时0路由器TTL超时1分片重组超时
4、Tracert程序的实现方法
Tracert程序的设计是利用ICMP即IP header的TTL(Time to Live)字段。首先,Tracert送出一个TTL是1的IP datagram(其实,每次送出的为3个40字节的包,包括源地址,目的地址和包发出的时间标签)到达目的地,当路径上的第一个路由器(router)收到这个datagram时,它将TTL减1。此时,TTL变为0了,所以该路由器会将此datagram丢弃,并送回一个[ICMP time exceeded]消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),Tracert收到这个消息后,便知道这个路由器存在于这个路径上,接着Tracert再发送出另一个TTL是2的datagram,发现第二个路由器……Tracert每次将送出的datagram的TTL加1来发现另一个路由器,这个重复的动作一直持续到某个datagram抵达目的地。当datagram到达目的地后,该主机并不会送回ICMP time exceeded消息,因为它已是目的地了。
三、实验内容及步骤
1、打开网络协议分析软件,选择菜单命令“Capture”——“Interfaces…”子菜单项。弹出“Ethereal:Capture Interfaces”对话框。单击“Prepare”按钮,弹出“Ethereal: Capture Options”对话框。在“Capture filter”字段填入:“icmp”,单击“Start”按钮开始数据包的捕获:
2、打开“命令提示符”窗口,使用“Ping”命令测试本机与网关的连通性:
分析:在使用“Ping”命令测试本机与网关的连通性时,本地计算机向网关发送4个ICMP数据包,网关也会向本地计算机发送四个应答报文。因此,这八个报文都将被网络协议分析软件捕获。由上面的结果可知,本计算机与网关是连通着的。
且捕获到的八个网络分析软件的报文如下:
3、单击“Stop”按钮,中断网络协议分析软件的捕获进程,主界面显示捕获到的ICMP数据包。观察协议树区中ICMP数据包结构,是否符合ICMP请求与应答的报文格式:
分析:经过对比ICMP的报文格式,得知在此ICMP数据包中,类型为十六进制0b,代码为00,校验和为f4 ff;而且在这个数据包中,还包括有另外一个ICMP数据包,但这整个ICMP数据包是符合了ICMP请求与应答的报文格式的!
4、重新开始网络数据包捕获进程,在“命令提示符”窗口中使用“Tracert”命令,停止网络数据报捕获,分析捕获的数据包:
5、重新开始网络数据包捕获进程,在“命令提示符”窗口中使用“Ping 127.0.0.1”命令,停止网
计算机网络考试数据包格式,计算机网络实验 分析ICMP协议数据包格式.doc相关推荐
- 计算机网络数据分析报告,贵州大学计算机网络实验报告-实验四-分析IP协议数据包格式...
贵州大学计算机网络实验报告-实验四-分析IP协议数据包格式 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 贵州大学GUIZHOU UN ...
- 浅浅的 使用网络调试助手和Mosquitto 分析MQTT协议数据包内容
使用网络调试助手和Mosquitto 分析MQTT协议数据包内容 参考: 零.涉及到的主要的数据包: 一.环境搭建 二.connect数据包 根据数据包的内容逐个字节进行分析: 三.心跳包 四.订阅S ...
- 实验七 ICMP 协议分析实验
实验七 ICMP 协议分析实验 1.ICMP 协议介绍 ICMP(Internet Control Message Protocol)是因特网控制报文协议[RFC792]的缩写,是因特网的标准协议.I ...
- ICMP协议抓包分析-wireshark
ICMP协议抓包分析-wireshark ICMP- (Internet Control Message Protocol,网际报文协议)是Internet协议族的核心协议之一,也可称为是网际控制报文 ...
- ICMP协议及报文格式
摘自:<深入理解计算机网络> 王达著 机械工业出版社 相关知识链接 1. IPV4数据报头部格式请点击这里 2. IPv6数据报头部格式请点击这里 3. IPv4数据报的封装与解封装请点击 ...
- 计算机网络考试单选及答案,计算机网络考试的选择题和填空题答案.doc
选题题部分(共202小题) 第一部分 计算机网络概论复习题 一.选择题(共25小题) 1-1.早期的计算机网络是由( )组成系统.A.计算机-通信线路-计算机 B.PC机-通信线路-PC机 C.终端- ...
- 实验四 ICMP 协议分析实验
ICMP 协议介绍 ICMP(Internet Control Message Protocol)是因特网控制报文协议[RFC792]的缩写,是因特网的标准协议.ICMP允许路由器或主机报告差错情况和 ...
- 【计算机网络】(5)ping的过程分析+icmp协议
目录 一.ping 1.1 过程分析 1.2 ICMP协议 1.2.1 iptables简要介绍 1.2.2 路由追踪 1.3 常用选项 1.4 ping一台服务器ping不通的原因和解决方法 1.5 ...
- mysql实验训练2 数据查询操作_实验训练2:数据查询操作
<实验训练2:数据查询操作>由会员分享,可在线阅读,更多相关<实验训练2:数据查询操作(6页珍藏版)>请在人人文库网上搜索. 1.实验训练2:数据查询操作请到电脑端查看实验目的 ...
最新文章
- 跨平台代码换行符的问题处理
- About DotNetNunk
- 无刷新读取数据库 (ajax)
- python 有效的括号
- 计算机视觉与深度学习 | 基于MATLAB 使用CNN拟合一个回归模型来预测手写数字的旋转角度(卷积神经网络)
- 【深度学习】神经网络中几个常用的求导公式
- 基于 qiankun 的微前端应用实践
- Android Sdk 国内镜像下载地址
- H3C-WA2210升级
- Eclipse启动jboss局域网无法访问的问题
- 应用架构设计“着火”“防火”经验之谈
- Tableau上面地图与条形图结合_Tableau | 20种常用图表(上文)
- Fort.js – 时尚、现代的进度提示效果
- 本地虚拟机部署java项目(tomcat8 ,jdk8,VMWare)
- 算法面试题 java_【面试算法题】Java Stack 类的使用
- vmxnet3 丢包处理
- JDK安装配置环境变量以及配置完成后出现java命令能用但javac命令不能用 (JAVA_HOME失效)
- 高性能MySQL系统思维导图
- AT4565 Beginning
- 校招/社招-算法岗简历及面试经验分享