ICMP 和 IGMP 的区别

注:本文为 “ICMP 和 IGMP” 相关文章合辑。


ICMP 和 IGMP 协议 IP 层分支图


ICMP 和 IGMP 的区别

ICMP(Internet Control Message Protocol,因特网控制信息协议)

用于补充 IP 传输数据报的过程中,发送主机无法确定数据报是否到达目标主机。

ICMP 报文分为出错报告报文和查询报文两种。

若数据报不能到达目标主机,ICMP 出错报告报文可以以回送信息的方式,向源主机发去信息,并不能纠正数据报中的任何出错。

除了出错报告,ICMP 还可以诊断出某些网络问题,这就是 ICMP 的查询报文。

ICMP 源抑制消息:当 TCP/IP 主机发送数据到另一主机时,如果速度达到路由器或者链路的饱和状态,路由器发出一个 ICMP 源抑制消息。

ICMP 包结构

在这里插入图片描述)
在这里插入图片描述)

类型:一个 8 位类型字段,表示 ICMP 数据包类型。

代码:一个 8 位代码域,表示指定类型中的一个功能。如果一个类型中只有一种功能,代码域置为 0。

检验和:数据包中 ICMP 部分上的一个 16 位检验和。

指定类型的数据随每个 ICMP 类型变化的一个附加数据。

IGMP (Internet Group Management Protocol,因特网组管理协议)

用于建立和管理多播组,对 IP 分组广播进行控制。

internet 控制消息协议 ICMP 是用于报告错误并代表 IP 对消息进行控制。

IP 运用互联组管理协议 IGMP 来告诉路由器,某一网络上指导组中的可用主机。

IGMP 信息传给别的路由器以使每个支持多路广播的路由器获知哪个主机组和哪个网络中。

IGMP 包结构

版本:IGMP 的版本,值一般为 0x1h。

类型:IGMP 消息的类型。

  • 0x1h 类型称为主机成员请求,在多路广播路由器上用于指定多级组中的任何成员轮询一个网络。

  • 0x2h 类型称为主机成员报告,在主机上用于发布指定组中的成员情况或对一个路由器的主机成员请求进行回答。

未用:未用的域名被发送者置零且被接收者忽略。

检验和:IGMP 头的一个 16 位检验和。

组地址:主机用该组地址在一个主机成员请求中存储 IP 多路广播地址。在主机成员请求中,组地址被全置零,而且硬件级的多路广播地址被用来标示主机组。

ICMP 和 IGMP 比较

编号   ~   ICMP IGMP
1 ICMP 代表 Internet 控制消息协议。 IGMP 代表 Internet 组消息协议。
2 ICMP 具有 PING 功能。 IGMP 具有多播功能。
3 Internet 控制消息协议是单播的。 互联网组消息协议是多播的。
4 ICMP 可以在主机到主机或主机到路由器或路由器到路由器之间运行。 IGMP 可用于客户端到多播路由器之间。
5 ICMP 第 3 层协议。 IGMP 第 3 层协议。
6 控制单播通信,用于报错。 IGMP 控制多播通信。
7 ICMP 可以是主机和网关用来将数据报下行通知发送回发送者的机制。 IGMP 用于促进将消息同步传输到一堆接收者。
8 ICMP 用于测试主机或网络的可达性。 IGMP 用于 DTS 服务等分组数据传输。

DTS (Data Transmission Service,数据传输服务)


ICMP/IGMP 协议原理

一、ICMP 协议原理

ICMP 主要的功能包括:确认 IP 包是否成功送达目标地址、报告发送过程中 IP 包被废弃的原因和改善网络设置等。

在 IP 通信中如果某个 IP 包因为某种原因未能达到目标地址,那么这个具体的原因将由 ICMP 负责通知。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值