IGMPv1:定义了基本的组成员查询和报告过程
Last Hop路由器周期性(60s)发送Query报文到224.0.0.1用于发现客户端
该网段内的主机发送Report报文,对Query进行确认,主动告知路由器自己加入的组
之后Last Hop路由器周期性(60s)发送Query报文到224.0.0.1来维持组成员关系,如果180s都收不到Report报文,则认为该组员以不存在,删除该组员信息
一旦任一组成员发送Report报文后,其他组成员的将受到抑制,不再发送Report报文
IGMPv1中,当组成员离开组时并没有知会Last Hop路由器,而是静默离开,此时Last Hop路由器如果收到组播消息还会想该组发送数据。
IGMPv2(多台Last Hop路由器)
在多台Last Hop路由器的组播网络中,起初所有的Last Hop路由器都发送Query报文选取Queries(查询者),IP地址小的路由器成为Queries。此后组播信息都有该查询者发送。
其周期性(60s)发送Query报文,如果120s内收不到Queries的Query报文,IP地址小的非Queries将为成为Queries
Last Hop路由器周期性(60s)发送Query报文到224.0.0.1用于发现客户端
该网段内的主机发送Report报文,对Query进行确认,主动告知路由器自己加入的组
之后Last Hop路由器周期性(60s)发送Query报文到224.0.0.1来维持组成员关系,如果180s都收不到Report报文,则认为该组员以不存在,删除该组员信息
一旦任一组成员发送Report报文后,其他组成员的将受到抑制,不再发送Report报文
当任一组成员离开组时,会发送Leave报文
Last Hop路由器收到后紧接着向改组发送Group-Specific Query报文,如果2s没没有任一组成员回应Report报文,就删除该组的信息,否则删除该组成员信息
本文转自开源殿堂 51CTO博客,原文链接:http://blog.51cto.com/kaiyuandiantang/1722883,如需转载请自行联系原作者