IGMPv3是什么?

    作者:课课家教育更新于: 2018-03-02 11:30:59

    软考,您想通过吗?一次通过才是硬道理

      IGMPv3主要是为了配合SSM(Source-Specific Multicast)模型发展起来的,提供了在报文中携带组播源信息的能力,即能加入到指定源的组播组。本文就来对IGMPv3进行介绍,不知道的朋友就和我们一起学起来吧!

      在IGMP V1/V2 中,主机只根据组地址来决定加入某个组并从任何一个源接收发给该组地址的业务量。具有源过滤组播功能(SFM)的主机使用IGMP V3 来通告该主机所希望加入的组播组,同时还通告该主机所希望接收的组播源的地址。主机可以通过一个包括列表(Inclusion List)或一个排除列表(Exclusion List),前者规定了该主机所期望接收的组播源的地址(即规定了哪些源能发送给该组播组),而后者规定了该主机不希望接收的组播源的地址。

      GMPv3的工作原理和IGMPv2并没有本质的改变,只是在某些地方做了改进和优化。

      GMPv3的主要改进:

      支持源特定组播SSM;

      向后兼容IGMPvl和IGMPv2:

      主机可以定义要接收的组播源地址:

      非查询路由器可以与查询路由器的保持参数值同步:最大响应时间从25.5秒增加到53分钟,适合于较大的网络:

      辅助数据字段为将来的应用预留了空间:关系成员报告报文发送给目的地址224.0.0.22,可以帮助二层交换机更有效地实现IGMP监听(IGMPSnooping)功能;

      报告报文中可以包含多个组记录,可以有效地减少网络通信量;

      IGMPv3报文包含两大类:查询报文和报告报文。相较IGMPv2,其变化如下:

      查询报文中除了普遍组查询和特定组查询,新增了特定源组查询报文(Group-and-Source-Specific Query)。该报文由查询器向共享网段内特定组播组成员发送,用于查询该组成员是否愿意接收特定源发送的数据。特定源组查询通过在报文中携带一个或多个组播源地址来达到这一目的。

      报告报文不仅通知路由器主机要加入某组播组,并且可以指定只接收哪些组播源发往该组的数据。IGMPv3增加了针对组播源的过滤模式(INCLUDE/EXCLUDE),将组播组与源列表之间的对应关系简单的表示为(G,INCLUDE,(S1、S2...)),表示只接收来自指定组播源S1、S2……发往组G的数据;或(G,EXCLUDE,(S1、S2...)),表示接收除了组播源S1、S2……之外的组播源发给组G的数据,即S1、S2……在接收范围之外。

      IGMPV3报告报文组记录

    IGMPv3是什么?_组播_SSM_课课家教育

      IGMPv3基本功能

      1.主机指定源/组加入

      运行IGMPv3的主机在加入组播组的同时,能够明确的要求接收或不接收某特定组播源S发出的组播信息。

      例如,网络中存在S1和S2两个组播源,均向组播组G发送组播报文,User仅希望接收从组播源S1发送组播组G的信息,典型组网如下图

    IGMPv3基本功能

      如果主机和路由器之间应该用IGMPv1或IGMv2,User加入到某组播组G后,将同时接收到来自组播源S1和S2的组播信息。如果采用IGMPv3,主机User可以选择紧接收S1组播信息。

      方法一:User发送IGMPv3报告(G,IS_IN(S1)),仅接收源S1向组播组G发送的数据。

      方法二:User发送IGNPv3报告(G,IS_EX,(S2)),退出指定源S2对应的组播组G,从而仅有来自S1的组播信息才能传递到User。

      2.组成员关系维护

      1)查出需要发送普遍的组查询的消息,路由器根据反馈的组成员报告发现网段中的组成员,并维护组播组与源列表的对应关系。

      2)当查询接收器到离开某组的报告(G,IS_IN,(0))时,发送指定组查询消息,试探网段中是否还存在该成员。路由器根据反馈的组成人员不报告更新对改组的源列表。

      3)当查询器接收到改变组播组与源列表的对应关系的报告(G,NLOCK,(A))时,发送指定源/组查询消息。如果组成员希希望接收其中任意一个源的组播数据,则将反馈Report消息,路由器根据反馈的成员报告更新该组对应的源列表。

课课家教育

未登录