2024年4月27日发(作者:)

IGMP协议详解

摘要:文章来自于《TCP/IP详解》卷一第十三章。本文详细介绍IGMP协议原理及

实现实例。

1、引言

本文将介绍用于支持主机和路由器进行多播的Internet组管理协议(IGMP,Internet

Group Management Protocol)。它让一个物理网络上的所有系统知道主机当前所在的

组播组。组播路由器(也称多播路由器,Multicast Router)需要这些信息以便知道多播

数据报应该向哪些接口转发。IGMP在RFC 1112中定义[Deering 1989].

正如ICMP一样, IGMP 也被当作IP 层的一部分。IGMP报文通过IP数据报进行

传输。不像我们已经见到的其他协议, IGMP有固定的报文长度,没有可选数据。图13-1

显示了IGMP报文如何封装在IP数据报中。

IGMP(Internet组管理协议)报文及协议(图一)

IGMP报文通过IP首部中协议字段值为2来指明。

2、 IGMP报文

图1 3 - 2显示了长度为8字节的IGMP报文格式。

IGMP(Internet组管理协议)报文及协议(图二)

这是版本为1的IGMP。 IGMP共有三个版本1、2和3。目前普遍使用的是版本

2。

IGMP类型为1说明是由多播路由器发出的查询报文,为2说明是主机发出的报

告报文。检验和的计算和ICMP协议相同。

组地址为D类IP地址。在查询报文中组地址设置为0,在报告报文中组地址为要参加

的组地址。在下一节中,当介绍IGMP如何操作时,我们将会更详细地了解它们。

IGMP报文V2版本 (RFC2236 、RFC3376):

类型字段(type):原版本和类型合并,其中值等于0x11为Membership query;