ICMP
ICMP是在 RFC 792 中定义的互联网协议族之一。通常用于返回的错误信息或是分析路由。ICMP错误消息总是包括了源数据并返回给发送者。 ICMP错误消息的例子之一是TTL值过期。每个路由器在转发数据报的时候都会把IP包头中的TTL值减1。如果TTL值为0,“TTL在传输中过期”的消息将会回报给源地址。 每个ICMP消息都是直接封装在一个IP数据包中的,因此,和UDP一样,ICMP是不可靠的。
虽然ICMP是包含在IP数据包中的,但是对ICMP消息通常会特殊处理,会和一般IP数据包的处理不同,而不是作为IP的一个子协议来处理
工作在第三层,无连接
与互联网协议 (IP) 不同,ICMP 不与 TCP 或 UDP 等传输层协议相关联。这使得 ICMP 成为无连接协议:一个设备在发送 ICMP 消息之前不需要打开与另一个设备的连接。正常的 IP 流量使用 TCP 发送,这意味着任何两个交换数据的设备都将首先执行 TCP 握手,以确保两个设备都准备好接收数据。ICMP 不会以这种方式打开连接。 ICMP 协议也不允许针对设备上的特定端口。
ping 和 traceroute 是使用ICMP最常见的应用程序
网友评论