网络层ICMP协议
作者:互联网
ICMP协议的概念
ICMP(因特网控制报文协议 Internet Control Message Protocol)是一种面向无连接的协议,用于传输出错报告控制信息。IP提供的尽力数据包通信服务无连接服务,而并不能解决网络低层的数据报丢失、重复、延迟或乱序等问题,TCP在IP基础建立有连接服务解决以上问题,但是不能解决网络故障或其他网络原因无法传输的包的问题。ICMP就可以对IP包无法传输时提供报告,这些差错报告帮助了发送方了解为什么无法传递,网络发生了什么问题,确定应用程序的后续操作。
ICMP协议的特征
1、ICMP用来报告错误,是一个差错报告机制。它为遇到差错的路由器提供了向最初源站报告差错的办法,源站必须把差错交给一个应用程序或采取其他措施来纠正问题。
2、不能用来报告ICMP消息的错误ICMP,避免无限循环。当ICMP查询消息时通过发送ICMP来响应。
3、对于分段的数据报,ICMP消息只发送关于第一个分段中的错误。ICMP消息永远不会引用一个具有非0片偏移量字段的IP数据报。
4、响应具有一个回送、广播或组播目的地址的数据报时,永远不会发送ICMP消息。
ICMP的报文
ICMP就像一个更高层的IP协议,ICMP消息被封装在IP数据报中,它是IP的一个组成部分,所有IP模块都必须实现它,而IP数据报本身放在帧的数据部分中通过物理网络传递.因此,ICMP具有两级封装模式。
ICMP 报文的前4个字节是统一的格式,共有三个字段:类型、代码、检验和。
ICMP 报文的种类有两种:ICMP 差错报告类报文;ICMP 询问类报文。
标签:协议,报告,IP,报文,网络层,差错,ICMP 来源: https://www.cnblogs.com/HuangJiaPing/p/12604097.html