说到ICMP,有些人可能会感到陌生。实际上,ICMP与我们密切相关。在网络体系结构的每个级别上,都需要控制,并且不同级别具有不同的分工和控制内容。 IP层的控制功能最复杂,主要负责错误控制,拥塞控制等,任何控制都基于信息构建,在基于IP数据报的网络系统中,网关必须处理IP协议本身没有获取和处理错误信息的内在机制。为了处理这些错误,TCP / IP设计了ICMP协议。当网关发现传输错误时,它将立即向源主机发送ICMP消息,报告错误信息,并让源主机采取相应的措施。这是一个错误,并且控制消息协议不仅用于传输错误消息,而且还用于传输控制消息。什么是ICMP协议?许多互联网人士可能没有听说过。实际上,ICMP协议与我们的网络生活密切相关,但我们从未注意到它。只要在某些地方配置了网络,路由器和IP,就会存在ICMP协议。以下编辑器将为所有人介绍ICMP协议。 ICMP协议是用于传输错误报告控制信息的无连接协议。它是非常重要的协议,对网络安全具有极其重要的意义。它是TCP / IP协议套件的子协议,属于网络层协议。它主要用于在主机和路由器之间传输控制信息,包括报告错误,交换受限控制和状态信息等。当IP数据无法访问目标时,IP路由器无法以当前传输速率转发数据包。等等,它将自动发送ICMP消息。 ICMP消息的IP帧结构的标头中的协议类型字段(协议8位)的值= 1。如下图所示,ICMP数据包有一个8字节的标头,前4个字节采用固定格式,包括8位类型字段,8位代码字段和16位校验和。最后4个字节根据ICMP数据包的类型采用不同的值。 ICMP提供一致且易于理解的错误报告信息。已发送的错误消息将返回到发送原始数据的设备,因为只有发送设备才是错误消息的逻辑接收者。然后,发送设备可以基于ICMP消息确定错误的类型,并确定如何更好地重新发送失败的数据包。但是,ICMP的唯一功能是报告问题,而不是纠正错误。纠正错误的任务由发送者完成。我们经常在网络中使用ICMP协议。例如,我们经常使用Ping命令检查网络连接(在Linux和Windows中)。此“ Ping”字样进程实际上是ICMP协议的进程。还有其他网络命令,例如Tracert命令来跟踪路由,该命令也基于ICMP协议。