IGMPv2概述
1、IGMPv1存在一些不足:
1.1、IGMPv1没有自身的查询选举机制,查询的选举依靠PIM协议;
1.2、IGMPv1的客户端在离开一个组播组时,使用静默离开的方式,不会主动通知组播路由器,将造成严重的链路带宽的浪费与降低安全性;
2、IGMPv2很好的解决了IGMPv1的诸多不足;
2.1、IGMPv2增加了自身的查询选举机制;
2.2、IGMPv2增加了客户端的离开机制(leave)消息;
2.3、IGMPv2向下兼容IGMPv1
2.4、IGMPv2增加了针对特定组播组的查询消息;
2.5、IGMPv2的组成员加入机制几乎与IGMPv1相同;
3、IGMPv2的报文格式:
3.1、类型字段:共有4种类型
3.1.1、成员资格查询字段;
3.1.2、第一版成员资格报告消息;
3.1.3、第二版成员资格报告消息;
3.1.4、第二版成员离开消息;
3.2、最长响应时间字段:
3.2.1、IGMPv2针对普遍组的查询【0.0.0.0】,等待的时间最长响应时间为10s;
3.2.2、IGMPv2针对特定组播组的查询【239.1.1.10】,等待的最长响应时间为1s;
3.3、校验和字段:用来检测组播数据的完整性;
3.4、组地址字段:
3.4.1、针对普遍组查询的消息,该字段的值为【0.0.0.0】
3.4.2、针对特定组播组查询的消息,该字段的值为查询的组播组地址;
3.4.3、客户端在响应时的响应消息,该字段的值就是客户端想要加入的组播组地址;
4、IGMPv2的查询路由器的选举机制:
4.1、IGMPv2不需要像IGMPv1那样依靠PIM的断言机制来完成查询路由器的选举;
4.2、IGMPv2拥有自身的查询路由器的选举机制;
4.3、若同一个局域网段中包含多台可以发送查询消息的路由器,则这些路由器通过比较他们接口IP地址来完成查询路由器的选举工作,比较的规则是:接口IP地址最小的路由器胜出;
4.4、选举失败的路由器将会开启一个【查询路由器存在时间定时器】,若在定时器超时前收到了来自查询路由器的查询消息,则复位该计时器;若在定时器超时前没有收到查询路由器的查询消息,则认为查询路由器失效,自身接替查询位置;
4.5、IGMPv2的组成员离开消息
4.5.1、IGMPv2增加了组成员离开消息机制(leave)
4.5.2、在客户端离开某组播组时,该客户端将主动向查询路由器发送组离开消息,发送目的地址为224.0.0.2;
4.5.3、查询路由器一经收到该离开消息时,随即向该组播组发送特定组查询消息,询问该组中是否还有组成员;
4.5.4、查询路由器所发送的特定组查询消息平均每1s发送一次,共发送2次,若在2s内收到了来自该组播组成员的report报文,则继续向该局域网段传送该组播组消息;若在2s内没有收到report报告,则查询路由器删除IGMP路由表项,不再传递该组播组数据流量;