简单了解ICMP协议

Posted 张三的美丽家园

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单了解ICMP协议相关的知识,希望对你有一定的参考价值。

ping命令是什么协议?

维基百科:

ping是一种电脑网络工具,用来测试数据包能否通过IP协议到达特定主机。ping的运作原理是向目标主机传出一个ICMP echo@要求数据包,并等待接受echo回应数据包。程序会按时间和成功响应的次数估算丢失数据包率(丢包率)和数据包往返时间(网络时延)。

可以知道,ping属于ICMP协议。

ICMP属于哪一层?

IP协议还缺少主机和管理查询所需要的机制。主机有时候需要判断某个路由或者是对方主机是否活跃。有时网络管理元也需要来自其他主机或路由的信息。

网络控制报文协议(ICMP)来设计来弥补上述两个遗憾的,他是IP协议的伴侣。下图给出了ICMP协议在网络层的位置,以及它与IP及其他协议之间的关系。

ICMP经常被认为是IP层的一个组成部分。它传递差错报文以及其他需要注意的信息。 
ICMP报文通常被IP层或更高层协议(TCP或UDP)使用。

由此可见,ICMP位于网络层,与IP属于同一层。

ICMP协议是用于host到host之间的数据报服务,目的host与源host进行通信时,ICMP会用到,比如通过处理数据报报告一个错误。 
ICMP基于IP,以至于它看起来像一个上层协议,但是实际上是IP的一部分,而且必须在每个IP模块中实现。

至于ICMP的详细作用以及帧结构定义,这里不再赘述,读者自行了解。

以上是关于简单了解ICMP协议的主要内容,如果未能解决你的问题,请参考以下文章

ICMP协议安全

网络基础之网络层

23.ICMP协议是什么?

23.ICMP协议是什么?

ping命令基于ICMP协议的返回信息分析

ICMP协议 详解,ICMP协议的功能及实现原理,ICMP协议报文类型。