网际报文控制协议ICMP

  为了更有效地转发IP数据报和提高交付成功的机会,在网际层使用了网际控制报文协议ICMP。ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP是因特网的标准协议。但ICMP不是高层协议,而是IP层的协议。ICMP报文作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。

  ICMP报文分为了两类类:ICMP差错报告报文,ICMP询问报文,通知类。ICMP报文包括8个字节的报头和长度可变的数据部分。对于不同的报文类型,报头的格式一般是不相同的,但是前3个字段(4个字节)对所有的ICMP报文都是相同的。

ICMP差错报文种类:

  • 终点不可达:当路由器或主机不能交付数据报时就像源点发送终点不可达报文。
  • 源点抑制:源点抑制提供了拥塞控制,当路由器或者主机因拥塞丢弃数据报时,每个被丢弃的数据报都要向源点发送源点抑制报文;源点抑制作用有:1:告诉源点数据报被丢弃2:要求源点放慢发包速度.
  • 超时:有两种情况:生存时间(实际是跳数)递减为0,数据报被丢弃,向源点发送ICMP超时报文,这种报文只有可能是路由器发送。当目的主机收到一个分片时,就会启动一个分片计时器,如果计时器内分片没完全到达,则发送超时报文并丢弃已经收到的所有分片
  • 参数问题:数据报首部出现错误或者首部缺少一些选项发送此报文,主机和路由器都可能发送此报文。
  • 改变路由(重定向):路由器要经常更新自己的路由表,网络上主机的数量远远大于路由器的数量,如果主机也动态更新,将产生无法忍受的通信量,所以主机使用静态路由选择,一般情况下,开始时主机只知道默认路由地址,IP数据报将被发送到默认路由器,但也许此数据报应该被发到另外的路由器,默认路由器知道这种情况后,转发此数据报,并向源点发送改变路由ICMP, 让主机刷新自己的路由表,主机的路由表通过这种方式进行更新。

ICMP询问报文种类:

  • 回送请求和回答:一般用于源主机或源路由器判断目的主机或目的路由器能否与其通信,主机和路由器都能发送此报文,此报文包括了回送请求报文和回送回答报文,ping命令便是此报文。
  • 时间戳请求和回答:括时间戳请求报文和时间戳回答报文,它能够确定IP数据报在两台机器的往返时间,即使两个路由器本地时间不同步,但他们的往返时间仍然是精确的。
时间: 2024-10-13 11:40:40

网际报文控制协议ICMP的相关文章

2016.7.9 计算机网络复习要点第四章之网际控制报文协议ICMP

1.ICMP允许主机或路由器报告差错情况和提交有关异常情况的报告:为了更有效地转发IP数据报和提高交付成功的机会: 2.ICMP不是高层协议,因为ICMP报文是装在IP数据报中的,作为其中数据部分,所以是IP层的协议: 3.ICMP报文的种类: (1)ICMP差错报告报文 (2)ICMP询问报文 4.ICMP报文的格式: (1)前4个字节是统一的格式,共有三个字段:类型,代码,检验和: (2)接着的4字节,与ICMP的类型有关,最后是数据字段,其长度取决于ICMP的类型: 5.几种常用的ICMP

国际控制报文协议ICMP

国际控制报文协议ICMP ICMP简介 ICMP 用于主机或路由器报告差错情况和提供有关异常情况的报告(检测网络错误). ICMP 不是高层协议,而是 IP 层的协议. ICMP 报文的格式 ICMP 报文的类型 ICMP 报文的前 4 个字节是统一的格式,共有三个字段:即类型.代码和检验和.接着的 4 个字节的内容与 ICMP 的类型有关. ICMP报文可分为两大类:一.有关信息采集和配置的ICMP报文(称为查询报文(query)或者信息类报文(information message)),二.

深入浅出网工第二个协议---Internet控制报文协议ICMP

ICMP简介 ICMP(Internet Control Message Protocol)是网络层的一个重要协议ICMP的作用:用来在网络设备间传递各种差错和控制信息,它对于收集各种网络信息.诊断和排除各种网络故障具有至关重要的作用ICMP协议中用到的报文类型:Echo-Request和Echo-Reply 两种报文 使用的都是单播报文 ICMP错误报告 ICMP定义了各种错误消息,用于诊断网络连接性问题:根据这些错误消息,源设备可以判断出数据传输失败的原因.比如,如果网络中发生了环路,导致报

计算机网络基础:ARP协议 --- IP协议 --- ICMP + IGMP协议

ARP协议 ARP高速缓存:ARP把保存在高速缓存中的每一个映射地址项目都设置生存时间.凡超过生存时间的项目就从高速缓存中删除掉. ARP是解决同一局域网上的主机或路由器的IP地址和硬件地址的映射问题. IP协议 利用IP协议可以使这些性能各异的网络从用户看起来好像是一个统一的网络. ICMP协议 为了提高IP数据报交付成功的机会,在网际层用了网际控制报文协议ICMP. ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告. ICMP报文格式 ICMP协议的应用 PING PING用来测

ICMP-互联网控制协议-第六章

ICMP互联网控制协议 首先说的是本人没有实验环境,对ICMP本身的理解:控制数据请求和应答规则.规范 无盘系统获取子网掩码,使用bootp协议(BOOTP(Bootstrap Protocol,引导程序协议)时dhcp协议的前身,可以省去管理员对无盘工作站ip地址划分,可自动获取ip) 地址掩码请求应答 报文中标识符和序列号由发送端任意选定,这些值在应答中返回,应答请求匹配 时间戳请求应答,是自午夜到目前毫秒数 U D P的规则之一是,如果收到一份 U D P数据报而目的端口与某个正在使用的进

《TCP/IP详解卷2:实现》笔记--TCP:传输控制协议

传输控制协议,即TCP,是一种面向连接的传输协议,为两端的应用程序提供可靠的端到端数据流传输服务,它完全不同于 无连接的.提供不可靠数据传输服务的UDP协议. 下图描述了各TCP函数与其他内核函数之间的关系,带阴影的椭圆分别表示我们将要讨论的9个主要的TCP函数. 1.TCP的protosw结构 下图列出了TCPprotosw结构的成员变量,它定义了TCP协议与系统内其他协议之间的交互接口. 2.TCP的首部 tcphdr结构定义了tcp首部.下图给出了tcphdr结构的定义和TCP首部. 大多

传输控制协议TCP学习(一)

时间:2014.06.25 地点:基地 --------------------------------------------------------------------------------- 一.TCP服务 TCP位于应用层与网络层之间,提供介于应用程序和网络功能之间的服务.主要包括如下服务: 1.1进程到进程的通信 与UDP一样,TCP也使用端口号提供进程到进程的通信 1.2流交付服务 与UDP不一样,TCP是一种面向流的协议. UDP中,进程将已定义好边界的报文发给UDP以便进行

报文ISO8583协议

本人刚接触金融IT行业,对报文ISO8583协议也是刚刚了解,看了篇文章,个人觉得写得很好,特此分享如下: 如果单纯的讲IS08583那些字段的定义,我觉得没有什么意思,标准中已经对每个字段解释的非常详细了,如果你觉得理解英文版的ISO8583规范有些困难,网上也有同行为我们翻译好的中文版ISO8583规范,所以我的目的是达到阅读本文后能够对ISO8583知其然,亦知其所以然,使以前基本没有接触它的人也能够达到掌握ISO8583报文规范. 好了,我们该转入正题了. 最开始时,金融系统只有IBM这

rtcp多媒体控制协议调试

1.rtcp是个非常小的多媒体控制协议,一般和jitter buffer一起用于rtp延时,抖动,丢包等处理. 1) rtcp应用描述,值得一看 详细的文档描述https://wenku.baidu.com/view/e21ee8e9b8f67c1cfad6b8f2.html 2) rtcp数据结构,消息构建,感谢网友. https://www.cnblogs.com/Jimmly/archive/2009/08/03/1537468.html https://www.cnblogs.com/J