ICMP(互联网控制消息协议)消息的类型
Internet 控制消息协议 (ICMP) 是用于网络层中的错误处理和调试的协议。主要用于路由器等网络设备。
ICMP消息主要分为两类:
- 错误报告消息
- 查询消息
1. 错误报告信息:
错误报告消息用于报告路由器/主机在处理 IP 数据包时遇到的问题。这些消息总是发送到源,因为数据报只包含源和目标 IP 地址。
以下是错误报告消息的类型:
- 目的地不可达消息 –
如果主机/路由器无法将 IP 数据包路由到其目的地,则发送此消息。
例如, 发送方 A 想将数据报发送给接收方 B,但 B 没有收到,则中间路由器将丢弃该数据报,并将目标不可达消息发送给 A。 - 源淬灭信息——
如果网络拥塞或源以路由器无法处理的更高速率发送数据包,则主机/路由器发送此消息。
例如, 如果发送方 A 正在以路由器无法处理的高数据速率发送数据包,则它将丢弃该数据包并向 A 发送源淬火消息,告诉它以较低的速率发送数据包。现在,在收到消息后,A 将停止或减慢数据包的发送。 - 超时消息 –
如果主机/路由器将数据报的生存时间值减为零,或者目标地址在指定的时间间隔内没有接收到所有数据包,则主机/路由器发送此消息。
例如, 一个数据包从一个有1000个单元的层发送到有200个单元的层,然后这个数据包被分成五个片段。如果所有分片都没有在设定的时间内到达目的地,则丢弃所有分片并将超时消息发送到原始源。 - 参数问题信息 –
如果数据报中的某些参数未正确设置,主机/路由器将发送此消息。它用于指示数据报头字段中的错误。 - 重定向消息 -
主机/路由器发送此消息以更新主机的路由表。
例如, 发送者 A 想要将消息发送给接收者 B,并且它们之间有一个路由器。然后,A 将数据发送给路由器,路由器将消息发送给 B,并将重定向消息发送给 A,以便 A 可以更新其路由表。
2. 查询消息:
查询消息用于错误处理和调试网络问题。这些消息帮助主机获取有关另一台主机或路由器的特定信息。
以下是查询消息的类型:
- 回声请求和回复消息 -
网络管理员使用它来检查 IP 协议的操作和主机的可达性。主机/路由器发送回显请求消息,而回显应答消息由接收回显请求消息的主机/路由器发送。
例如,主机 A 想要检查它是否可以与另一台主机 B 通信,因此它将向 B 发送回显请求,如果 A 和 B 之间存在链接并且 B 处于活动状态,那么它将在接收请求。 - 时间戳请求和回复消息 -
它用于确定每个 IP 数据报从一台主机传输到另一台主机所花费的往返时间。如果传输时间已知,它还可以同步主机之间的时钟。
例如,主机 A 想与 B 同步其时钟,然后它会通过发送时间戳请求来询问 B 的时钟时间,B 将用时间戳回复 A。然后 A 将添加时间和传播延迟以同步其系统上的时间. - 地址掩码请求和回复消息 –
它用于确定本地网络中使用的子网掩码。
例如,主机 A 想知道相应路由器的掩码,如果知道路由器的地址,它将向路由器发送地址掩码请求,否则它将广播该请求。收到请求的路由器以地址掩码回复进行响应,并将掩码提供给 A。 - 路由器请求和广告消息 –
它用于确认局域网上是否存在路由器。它通过广播路由器请求消息来完成,接收该消息的路由器使用路由器通告消息广播路由信息。
例如,如果主机 A 想要获取网络上存在的路由器的信息。它将广播路由器请求消息以请求路由器通告它们的存在,作为响应,网络上的路由器将通过通告消息宣布其可用于路由的 IP 地址。