《IGMP协议原理介绍.ppt》由会员分享,可在线阅读,更多相关《IGMP协议原理介绍.ppt(39页珍藏版)》请在三一办公上搜索。
1、DP500016 IGMP协议原理,ISSUE 1.0,Page 1,前 言,组播路由器通过IGMP协议了解每个接口连接的网段上是否存在组播组的接收者,也就是组成员。如果存在成员,组播路由器应将组播数据包转发到这个网段;如果没有成员则应停止转发。,Page 2,目 标,学习完此课程,您将会:了解IGMP的作用及基本原理了解IGMPv1,v2之间的区别了解IGMPv1与v2之间的互操作了解IGMPv3的改进之处了解IGMP Snooping的基本原理,Page 3,内容介绍,第1章 IGMP协议概述第2章 IGMPv1第3章 IGMPv2第4章 IGMPv1与v2之间的互操作第5章 IGMPv3
2、第6章 IGMP Snooping,Page 4,内容介绍,第1章 IGMP协议概述第1节 组播协议分层体系第2节 IGMP的用途,Page 5,组播协议分层体系,组播协议分层体系,Page 6,内容介绍,第1章 IGMP协议概述第1节 组播协议分层体系第2节 IGMP的用途,Page 7,IGMP的用途,IGMP协议是主机跟路由器之间的控制协议主机通过IGMP协议向组播路由器报告自己想加入的组路由器通过IGMP协议查询网段上是否还有特定组的成员当前IGMP有3个版本:RFC1112IGMP版本1RFC2236IGMP版本2RFC3376IGMP版本3,IGMP的用途,Page 8,内容介绍,
3、第1章 IGMP协议概述第2章 IGMPv1第3章 IGMPv2第4章 IGMPv1与v2之间的互操作第5章 IGMPv3第6章 IGMP Snooping,Page 9,IGMPv1,版本版本字段包含IGMP版本标识,因此设置为1。类型成员关系查询(0 x11)成员关系报告(0 x12)校验和组地址当一个成员关系报告正被发送时,组地址字段包含组播地址。当用于成员关系查询时,本字段为0,并被主机忽略。,0,7,15,31,报文格式,Page 10,IGMPv1,当一个主机希望接收一个组播组的数据,则发送成员加入报告给组播组。,PC1,PC2,RTA,组成员加入过程,Page 11,IGMPv1
4、,路由器RTA(IGMP查询器)周期性地(默认60秒)向子网内所有主机(224.0.0.1代表子网内所有主机)发送成员关系查询信息。,PC3,RTA,查询,IGMPv1查询器,PC2,PC1,查询与响应过程,所有主机收到IGMPv1成员关系查询信息,一主机首先向组播组发送IGMPv1成员关系报告。,组的其他成员监听到报告后抑制自己的成员关系报告发送。,Page 12,IGMPv1,当主机收到IGMP成员关系查询时,对它已经加入的每个组播组启动一个倒计数报告计时器。各个报告计时器初始值为从0到最大响应之间一个随机数,默认值是10秒。计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地
5、址。其它主机收到该成员关系报告,则抑制成员关系报告的发送,并删除计时器。,抑制机制,Page 13,IGMPv1,主机“默不作声”地离开组(不发送报告了),PC1,普遍组查询,PC2,组成员离开过程,组播组超时,剪枝。,路由器没有收到该组的IGMP报告,则再发送成员关系信息(3次查询周期过后),路由器发送成员关系查询信息,Page 14,内容介绍,第1章 IGMP协议概述第2章 IGMPv1第3章 IGMPv2第4章 IGMPv1与v2之间的互操作第5章 IGMPv3第6章 IGMP Snooping,Page 15,IGMPv2,类型成员关系查询(0 x11)常规查询:用于确定哪些组播组是有
6、活跃的,即该组是否还有成员在使用,常规查询地址由全零表示;特定组查询:用于查询某具体组播组是否还有组成员。版本2成员关系报告(0 x16)版本1成员关系报告(0 x12)离开组消息(0 x17),0,7,15,31,报文格式,Page 16,IGMPv2,最大响应时间以0.1秒为单位默认值是100,即10秒。校验和组地址在成员查询消息中,发送一个普遍查询报文时组地址域应设为0,当发送一个对特定组的查询报文时,则应设置组的地址。在成员报告或离开组的消息中,组的地址域保留了要报告或要离开的地址。,报文格式(续),Page 17,IGMPv2,当一个主机加入了一个组播组,则应该立即发送一个或多个版本
7、2的成员关系报告给组播组。,PC1,PC2,RTA,组成员加入过程,Page 18,IGMPv2,与IGMPv1相同,都存在抑制机制。增加了最大响应时间来指定延时值来规定所有主机的查询响应延时的上限,此外最大响应时间在IGMP查询器上配置,只应用在成员关系查询信息。,PC3,RTA,IGMPv1查询器,PC2,PC1,查询与响应过程,Page 19,IGMPv2,路由器启动,主动发出到所有组播系统组(224.0.0.1)的IGMPv2常规查询信息。收到常规查询信息的路由器,会把此信息的源IP地址和接收口的IP地址作比较,拥有最低IP地址的路由器被选举为IGMP查询路由器。非查询路由器启动一个查
8、询计时器,周期检查IGMP查询路由器的状态,默认为250秒。,RTA,RTB,IGMP查询路由器,查询器选择过程,Page 20,IGMPv2,主机向.2发送离开组消息(报文中含有要离开的组地址),PC1,路由器向这个组(224.1.1.1)发送特定组查询,1秒钟内没有收到该组的报告,发送第二个特定组查询。,二个查询信息后未收到主机响应,组超时,离开组。,PC2,组成员离开过程,Page 21,内容介绍,第1章 IGMP协议概述第2章 IGMPv1第3章 IGMPv2第4章 IGMPv1与v2之间的互操作第5章 IGMPv3第6章 IGMP Snooping,Page 22,内容介绍,第4章
9、IGMPv1与IGMPv2互操作第1节 版本2主机与版本1路由器第2节 版本1主机与版本2路由器第3节 混合版本1与版本2路由器,Page 23,版本2主机与版本1路由器,版本2主机与版本1路由器,PC3,PC1,PC2,RTA,IGMPv1,IGMPv2,IGMPv1,IGMPv1,当版本2的主机检测出IGMP查询器是版本1的路由器时,它必须始终用IGMPv1报告做出响应。在这种情况下,版本2的主机也可以抑制发送离开组信息。版本2主机必须允许它的成员关系报告被IGMPv1或IGMPv2成员关系报告抑制。,Page 24,内容介绍,第4章 IGMPv1与IGMPv2互操作第1节 版本2主机与版
10、本1路由器第2节 版本1主机与版本2路由器第3节 混合版本1与版本2路由器,Page 25,版本1主机与版本2路由器,版本1主机与版本2路由器,PC3,PC1,PC2,RTA,IGMPv2,IGMPv2,IGMPv1,IGMPv1,版本1的主机用普通的方式响应IGMPv1或IGMPv2查询。版本2路由器必须设置一个与组相关的考虑到版本1主机存在的倒计时器,以便通知局域网有一个版本1的主机是组成员。而版本1主机在某个特定的组中存在时,路由器必须忽略该组收到的任何离开组信息。,Page 26,内容介绍,第4章 IGMPv1与IGMPv2互操作第1节 版本2主机与版本1路由器第2节 版本1主机与版本
11、2路由器第3节 混合版本1与版本2路由器,Page 27,混合版本1和版本2路由器,PC3,PC1,PC2,RTA,IGMPv1,IGMPv2,IGMPv1,IGMPv1,RTB,IGMPv2,混合版本1和版本2路由器,如果一些版本1的路由器存在于子网中,那么必须强制性地为子网中的所有路由器配置IGMPv1以便正常使用。,IGMPv1,Page 28,内容介绍,第1章 IGMP协议概述第2章 IGMPv1第3章 IGMPv2第4章 IGMPv1与v2之间的互操作第5章 IGMPv3第6章 IGMP Snooping,Page 29,IGMPv3,在RFC 3376中说明,目前已成为正式标准尚未
12、得到广泛支持服务于Source Specific Multicast(SSM)模型允许主机指定组播源,只接收特定组播源发出的组播数据,相比以前的版本,加强了主机的控制能力,不仅可以指定组播组,还能指定组播的源。,概述,Page 30,IGMPv3,路由器周期性地向224.0.0.1发送查询,PC3,PC1,PC2,RTA,工作机制,主机可在单个报文中发多组报告(G:M,LIST),组成员独立报告,取消抑止机制,Page 31,IGMPv3,改进之处,R1,R2,R3,PC1,组224.1.1.1的成员,PC1 希望接收来自 S=1.1.1.1 而非来自 的数据通过IGMPv3,指定源可以剪枝掉
13、来自S=2.2.2.2 的数据,Page 32,IGMPv3,IGMP三个版本的比较,查询器选举,IGMPv1,成员离开方式,指定组查询,指定源、组加入,依靠组播路由协议,IGMPv2,IGMPv3,不支持,不支持,自己选举,支持,不支持,自己选举,支持,支持,默默离开,主动发出离开报文,主动发出离开报文,Page 33,内容介绍,第1章 IGMP协议概述第2章 IGMPv1第3章 IGMPv2第4章 IGMPv1与v2之间的互操作第5章 IGMPv3第6章 IGMP Snooping,Page 34,IGMP Snooping,IGMP Snooping运行在链路层,是运行在二层以太网交换机
14、上的组播约束机制,用于管理和控制组播数据转发当二层以太网交换机收到主机和路由器之间传递的IGMP报文时,IGMP Snooping分析IGMP报文所带的信息:当监听到主机发出的IGMP主机报告报文时,交换机就将该主机加入到相应的组播MAC地址表中 当监听到主机发出的IGMP离开报文时,交换机就将删除与该主机对应的组播MAC地址表中通过不断地监听IGMP报文,交换机就可以在二层建立和维护组播MAC地址表,交换机就可以根据组播MAC地址表转发从路由器下发的组播报文 注:没有运行IGMP Snooping时,组播报文将在二层广播,概述,Page 35,IGMP Snooping,工作机制,INTERNET,路由器运行IGMP协议,以太网交换机运行IGMP Snooping协议,IGMP查询,IGMP报告,Page 36,IGMP Snooping,建立和维护组,CPU,0,1,2,3,4,5,IGMP报告,IGMP查询,MAC地址,转发表,端口,0100-5e01-0203,0 1 3,IGMP报告,PC1,PC2,PC4,PC3,Page 37,小结,IGMP的用途IGMPv1与IGMPv2的区别IGMPv1与IGMPv2互操作IGMPv3的改进IGMP Snooping的原理,