当前位置:文档之家› IGMP协议原理60个知识点

IGMP协议原理60个知识点

1.IGMP(Internet Group Management Protocol)作为因特

网组管理协议,是TCP/IP协议族中负责IP组播成员管理的协议,它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。该协议在接收者主机和组播路由器之间运行,定义了主机与路由器之间建立和维护组播成员关系的机制。

2.IGMP协议是IP组播在末端网络上使用的主机对路由器的

信令机制,分为两个功能部分:主机侧和路由器侧。

3.IGMP工作机制如下所述:

a)接收者主机向所在的共享网络报告组成员关系。

b)处于同一网段的所有使能了IGMP功能的组播路由器选

举出一台作为查询器(查询器在不同的版本中有不同

的选举机制),查询器周期性地向该共享网段发送组成

员查询消息。

c)接收者主机接收到该查询消息后进行响应以报告组成

员关系。

d)网段中的组播路由器依据接收到的响应来刷新组成员

的存在信息。如果超时无响应,组播路由器就认为网

段中没有该组播组的成员,从而取消相应的组播数据

转发。

4.所有参与组播传输的接收者主机必须应用IGMP协议。主

机可以在任意时间、任意位置、成员总数不受限制地加入

或退出组播组。

5.支持组播的路由器不需要也不可能保存所有主机的成员

关系,它只是通过IGMP协议了解每个接口连接的网段上是否存在某个组播组的接收者,即组成员。而各主机只需要保存自己加入了哪些组播组。

6.从此体系结构中可以知道IGMP处于组播协议的最底层,

是整个组播协议的基础。在组播协议中,只有IGMP协议直接与点播主机联系,运行IGMP的路由器负责管理组用户主机的加入、离开,通过维护用户数据,发送组播数据到主机。

7.到目前为止,IGMP有三个版本:IGMPv1版本、IGMPv2版

本和IGMPv3版本。所有IGMP版本都支持ASM(Any-Source Multicast)模型。IGMPv3可以直接应用于SSM (Source-Specific Multicast)模型,而IGMPv1和IGMPv2则需要SSM-Mapping技术的支持.。

8.IGMPv1(RFC1112)定义了基本的组成员查询和报告过程。

9.IGMPv2(RFC2236)定义,在 IGMPv1 的基础上添加了组

成员快速离开的机制。

10.IGMPv3 ,增加的主要功能是成员可以指定接收或指定

不接收某些组播源的报文。

11.Version:IGMP版本标识,版本1为1。IGMPv2的报文

中没有该字段。

12.Type:类型字段。表示IGMP报文类型。

13.IGMPv1支持两种类型的报文:

a)成员关系查询(0x11):路由器周期性的发送成员关系

查询报文去查询是否有组播成员。默认查询周期为60

秒。

b)成员关系报告(0x12):成员关系报告用于表示主机想

加入某个组播组。

c)成员关系报告的发送可以被动发送也可主动发送。

d)被动发送是指当主机收到成员关系查询消息后如果对

某个组播组感兴趣想加入组播组时发送成员关系报告。

e)主动发送是指如果主机想加入某个组播组时,可以不

用等待成员关系查询报文,而主动地发送成员关系报

告。

14.组地址:不同类型的IGMP报文中组地址不同。

a)在成员关系报告报文中,组地址为某个特定的组播地

址。

b)在成员关系查询报文中,组地址为0。

15.主机主动发送IGMP成员关系报告报文,表示想加入一

个组播组中。

16.该报文中组地址为主机想加入的组播组的地址。

17.IGMPv1的查询与响应过程如下:

a)IGMP查询器周期性地向共享网段内所有主机以组播方

式(目的地址为224.0.0.1)发送成员关系查询消息(组

地址为0)。

b)网络内所有主机都接收到该查询消息,如果某主机(如

PC1、PC2和PC3)对任意组播组G感兴趣,则以组播

方式发送“成员关系报告”报文(其中携带组播组G

的地址)来宣告自己将加入该组播组,假设PC2首先

发送此报告。

c)经过查询/响应过程后,IGMP路由器了解到本网络内存

在组播组G对应的接收者,生成(*,G)组播转发项

并依此作为组播信息的转发依据。*表示组播组成员,G表示某个组播组。

18.IGMPv1规定,当共享网络中有多台路由器时,由组播

路由协议选举查询器。不同的组播路由协议有不同的选举机制。

19.IGMP成员关系查询报文是目的地址是224.0.0.1,就

是说网段内所有的设备都会接收到该查询报文。但并不是所有接收到该报文的主机都会响应查询请求的。只有一个主机会以成员关系报告报文响应,而其他主机则抑制成员关系报告的发送。

20.实际上主机收到IGMP成员关系查询时,会对它已经加

入的每个组播组启动一个倒计数报告计时器。V1中计时器值固定使用10秒。计时器到时的主机则主动发送成员

关系报告,组地址为该组播组地址,目的地址为224.0.0.1。

于是网段内其它主机都会收到该成员关系报告报文,接收到成员关系报告报文的主机抑制成员关系报告的发送,并删除计时器。

21.当路由器周期性的发送成员关系查询报文时,每个主

机都会再次启动计时器进行查询/响应/抑制。

22.由于IGMPv1版本没有定义专门离开组播组的消息,因

此主机离开组时是默默离开不发送任何报文。而组播路由器如何知道用户已经离开组播组呢?IGMPv1主要是基于查询无响应进而超时的思路实现的。

23.成员悄悄离开组播组,不发送任何报文。路由器依旧

周期性的发送成员关系查询报文,周期为60秒,当路由器发送3次成员关系查询报文都没有收到响应的成员关系报告报文时,路由器认为组内已经没有成员,不再向该网段转发组播报文。

24.IGMPv2报文与IGMPv1报文略有不同,取消了版本字段

而相应增加了最大响应时间字段。

25.IGMPv2报文中有三种报文类型:

26.Type=0x11 成员关系查询报文,又分两种子类型:

a)常规查询:用于确定哪些组播组是有效的,即该组是

否还有成员在使用,常规查询组地址全零;

b)特定查询:用于查询特定的组播组是否还有组成员。

相关主题