协议簇:ICMP 解析

简介

ICMP 是 Internet Control Message Protocol 的简写. 它主要用来调试网络通信环境中存在的问题.

比如,当 IP 数据包总是无法正常的发送到目的地址, 当网关没有足够的 buffer 来转发对应的数据包 等问题.

值得一提的是,它属于网络层,不属于传输层. 也就是说它和 IP 协议处于同一层次,而并不是与 TCP/UDP 处于同一层次.

消息格式

ICMP 协议使用 IP 协议头来传输数据. 具体的数据就是 ICMP 规定的一些数据包,我们接下来一一介绍…
IP Header Format
因为 ICMP 格式与 IP 相同,这里我们简单介绍以下各个字段. 详细请参考 协议簇: IPv4 详解

几个需要特别注意的字段,及其值:

  1. Version: 4
  2. Type of Service: 0
  3. Protocol: ICMP = 1

接下来,我们来看看常见的 ICMP 报文实例

Destionation Unreachable Message

Destionation Unreachable Message Format
各字段的意义及其值:

  1. Type:3
  2. Code:
    0 = net unreachable
    1 = host unreachable
    2 = protocol unreachable
    3 = port unreachable
    4 = fragmentation needed and DF set
    5 = source route failed
  3. Checksum: 检查和
  4. Internet Header + 64 bits of Data Datagram: 该字段存放原始的 ICMP 请求,以便将当前这个 ICMP 报文与请求报文对应起来.

描述

  1. 当根
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值