资源描述:
《IGMP V1 V2 V3 定义和区别》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、IGMPV1V2V3定义和区别 前两天遇到了一个IGMP的问题,应用在IGMP的一些概念.那就让我们完整的看一下这个组播协议把,以下是我学习过程重总结的一些东西,先来认识一下IGMP这个协议吧,它的全称是InternetGroupManagementProtocol,它和unicast和multicast的区别是它是发往一组计算机(属于它这个组播组的所有计算机),IGMP主要用于在线的视频和在线游戏,像IPTV就是一种比较广泛的应用.现在IGMP有3个版本V1(RFC1112),V2(RFC
2、2236),V3(RFC3376),IGMPv1支持hostmembershipquery和hostmembershipreportreportmessage是由IGMPhost发给IGMProuter来报告它加入的组播组.querymessage是由IGMProuter发给IGMPclient来查询IGMPhost所加入的组播组.这样做之后,IGMP路由器就记录了它所在网段主机加入的所有组播地址.下面看这个例子之后可能大家就比较清楚了,在IGMProuter的LAN端有2台PC,hostA,h
3、ostB,hostC,hostA加入了224.100.1.1,hostB加入了224.100.1.2,hostC没有加入任何的组播.当IGMProuter想要查询lan端的组播地址是,它以组播地址224.0.0.1 发到它的lan端,224.0.0.1代表子网中所有支持多播的设备的多播地址,这个时候如果pc和IGMProuter之间用hub或者layer2的交换机(没有enableIGMPsnooping),那么包括hostC的3台主机都会收到,只不过hostC不会回应,hostA和hostB会
4、发送报告信息给router,内容分别为224.100.1.1和224.100.1.2.如果hostA想要加入一个新的组播地址224.100.1.3,它会发个report信息给想要加入的组播地址,router收到后加入IGMPtable.IGMPv2,包括membershipquery,membershipreport,LeaveGroupmessage.membershipquery包括generalquery,group-specificquery.generalquery和IGMPV1一样,
5、发224.0.0.1来查询在网络中有哪些组播组.group-specificquery,用来查询是否在网络中存在特定的组播组.membershipreport,这个和V1一样,加入一个新的GROUP也一样.LeaveGroupmessage是由这个组的最后一个成员发给224.0.0.2(网络中的所有组播路由器),内容为这个组播地址,IGMProuter收到后,会发送一个group-specificquery来查询是否网络中的这个组播地址已经不存在了,如果没有回应,就把这个组从IGMPtable中
6、删除.IGMPV3,MembershipReport其中MembershipQuery分为三种:GeneralQuery,用于查询接口下所有多播成员信息;Group-SpecificQuery,用于查询接口下指定组的成员信息;Group-and-Source-SpecificQuery,该类型为IGMPv3中新增加的,用于查询接口下是否有成员需要接收指定源列表中的源所发出的特定组的多播流。下面来谈谈IGMPV1,V2,V3的区别,IGMPv1:主机可以加入组播组。没有离开信息(leavemess
7、ages)。路由器使用基于超时的机制去发现其成员不关注的组。IGMPv2:该协议包含了离开信息,允许迅速向路由协议报告组成员终止情况,这对高带宽组播组或易变型组播组成员而言是非常重要的。IGMPv3:与以上两种协议相比,该协议的主要改动为:允许主机指定它要接收通信流量的主机对象。来自网络中其它主机的流量是被隔离的。IGMPv3也支持主机阻止那些来自于非要求的主机发送的网络数据包。 IGMPv3同路由器的交互过IGMPv2程同相同。但是在IGMPV1/V2中,主机只根据组地址来决定加入某个组并从任
8、何一个源接收发给该组地址的组播流。而使用IGMPV3的主机通告该主机所希望加入的多播组,同时还通告该主机所希望接收的多播源的地址。主机可以通过一个包括列表或一个排除列表来指明希望从哪些源能接收多播流。同时IGMPv3带来的另外一个好处是节省带宽,避免不需要的、非法的组播数据流占用网络带宽,这尤其在多个多播源共用一个多播地址的网络环境中表现明显。下面这些是一些常见的IGMPmulticastaddress,Range:224.0.0.0~239.255.255.255Well-knownmulti