网际控制报文协议 ICMP

1. 特点

  1. 虽然ICMP报文装在IP数据报中,但ICMP不是高层协议

    2. 格式

    网际控制报文协议 ICMP - 图1

    3. 种类

    | ICMP报文种类 | 类型的值 | ICMP报文的类型 | | —- | —- | —- | | 差错报告报文 | 3 | 终点不可达 | | | 11 | 时间超过 | | | 12 | 参数问题 | | | 5 | 改变路由(重定向) | | 询问报文 | 8或0 | 回送请求(Echo)或回答 | | | 13或14 | 时间戳请求或回答 |

3.1 差错报告报文

  1. 终点不可达
    1. 当路由器或主机不能交付数据报时,就向源点发送该类型的报文。
  2. 源点抑制
    1. 当路由器或主机由于拥塞而丢弃数据报时,就向源点发送该类型的报文。
  3. 超时
    1. 当路由器收到数据报将其TTL值减1后为0时就丢弃该数据报,并向源点发送该类型的报文。
  4. 参数问题
    1. 当路由器或主机收到的数据报的首部出现错误时就丢弃该数据报,并向源点发送该类型的报文。
  5. 改变路由(重定向)

    1. 路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器(可通过更好的路由)。

      3.2 询问报文

  6. 回送请求与回答:

    1. 回送请求报文:路由器或主机箱一个特定目的主机发送的询问。
    2. 回送回答报文:收到回送请求报文的主机必须给源主机或路由器回答。
    3. ping使用了这两个
  7. 时间戳请求与回答:用户时间同步和时间测量

    3.3 不该发送差错报告报文的情况

  8. 对ICMP差错报告报文不产生报告

  9. 对第一个分片的数据报片的后续数据报片
  10. 具有组播地址的数据报
  11. 特殊地址的数据报