ICMP协议

ICMP协议

简介

ICMP–INTERNET CONTROL MESSAGE PROTOCOL 网络控制信息协议
ICMP负责传递IP协议或更高层协议的差错报文以及其他需要注意的信息,正式规范在RFC792
ICMP报文在IP数据报内部被传输
在这里插入图片描述

ICMP报文格式与类型

在这里插入图片描述
类型字段有15个不同的值,描述不同类型的ICMP报文,同一个类型下用代码字段描述不同报文
检验和是整个ICMP报文的检验和,不只是针对头部

下面是ICMP报文的类型

在这里插入图片描述

最后两列描述了ICMP报文是查询报文还是差错报文,下面重点讲述差错报文

ICMP差错报文

ICMP差错报文格式

发送一份ICMP差错报文时,报文始终包含IP的首部和产生ICMP差错报文的IP数据报的前八个字节
举个例子,UDP端口不可达时返回的ICMP差错报文如下
在这里插入图片描述

根据产生差错的数据报IP首部可以让接收ICMP差错报文的主机知道IP的上层协议是什么,例子中就是UDP协议,然后就可以知道后面8个字节是UDP首部,从UDP首部中主机可以知道UDP的源端口号和目的端口号,进而把数据传输给端口对应的进程程序。

ICMP差错报文产生条件

下面的情况不会导致产生ICMP差错报文

  • ICMP差错报文不会导致ICMP差错报文,单ICMP查询报文可以
  • 目的地址是广播地址或者多播地址的IP数据报
  • 作为链路层广播的数据报
  • 不是IP分片的第一片
  • 源地址不是单个主机的数据报

这是为了防止ICMP差错报文对广播分组响应导致的广播风暴

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值