《CPIP协议第六章网际组管理协议IG.ppt》由会员分享,可在线阅读,更多相关《CPIP协议第六章网际组管理协议IG.ppt(34页珍藏版)》请在三一办公上搜索。
1、1,第六章 网际组管理协议IGMP,2,IGMP协议概述,IP协议可以用于两种类型的通信:单播和多播。单播:是一个发送端和一个接收端之间的通信多播:同样的报文同时发送给一大堆的接收端。网际组管理协议(IGMP)是与多播有关的一个必要的但不是充分的协议,3,组管理,要在因特网上进行多播,需要有转发多播分组能力的路由器。IGMP并不是多播路由选择协议;它是管理组成员关系的协议。IGMP协议把网络上所连接的主机的成员关系状态信息传送给多播路由器。IGMP是个组管理协议。它帮助多播路由器创建和更新与每一个路由器接口有关的忠实成员的表。,4,6.1 多播概念,以太网多播 IP多播 使用以太网多播实现IP
2、多播,5,6.1.1 以太网多播,硬件多播可以看作是广播的更一般形式,可以实现同时与一组站点的通信,但有一个限制条件,就是这一组站点只能在同一个物理网络(网段)上。,6,6.1.2 IP多播,IP多播允许一个源站与一组目的站的通信,但是最主要的区别在于该组目的站可以位于互联网上的任意物理网络上,这一组目的站称为多播群组(multicast group),或简称群组。,7,IP多播和多个单播的区别,IP多播是源站发送出一个IP分组,经过各路由器复制、转发到群组中各个成员,在两个路由器之间只有一个IP分组的副本在传送;在多个单播中,源站发出多个IP分组,每一个IP分组都带有不同的单播地址(目的地址
3、),在两个路由器之间可能有多个IP分组的副本在传送。,8,IP多播关键技术,IP多播编址有效的通知和交付机制有效地多播路由选择协议,9,IP多播地址,IP多播编址被划分为两类:永久分配和可临时使用的。永久分配的地址称为熟知的,用于互联网上的主要服务以及基础结构维护。临时使用的多播地址对应于临时的群组,需要使用则创建,群组成员为零时则丢弃。D类多播地址格式,群组标识,1,1,1,0,0 1 2 3 4 31,10,IP多播地址(续),永久分配的部分多播地址见书上P108在表中介绍的两个地址对于多播交付机制尤其重要,地址永久分配给一个物理子网上包括所有主机和路由器的群组,永久分配给一个物理子网上包
4、含所有路由器的群组。一般的这两个群组用于控制协议,不用于通常的分组交付。需要注意:没有对应于互联网中所有主机和路由器的IP多播地址。,11,IP多播特征,转发IP多播分组需要特殊的多播路由器。群组地址。动态群组成员。成员和传输。任意站点都可以向任何群组发送IP分组,群组成员只用于确定站点是否接收发往群组的IP分组。交付机制。IP多播与其它IP分组交付使用同样的尽最大努力交付机制。底层硬件使用。如果底层网络支持硬件多播,则可以使用硬件多播发送IP多播。如果硬件不支持多播,则使用广播或单播来实现IP多播。,12,6.1.3 使用以太网多播实现IP多播,13,6.2 Internet组管理协议(IG
5、MP),IGMP工作原理 IGMP报文,14,6.2.1 IGMP工作原理,多播路由器负责把多播分组分发给一个群组中的各个成员。换言之,如果有多个多播路由器连接在同一个物理网络上,它们的多播地址表一定是互斥的。,15,站点加入群组的流程,16,多播路由器删除一个群组MG的流程,17,站点收到多播路由器发送的一般查询报文后的处理流程,18,延迟响应,为了避免不必要的通信量,IGMP使用延迟响应策略。每一个主机或路由器使用一个随机数产生计时器,它的截至时间是110秒。每一个主机或路由器在发送成员关系报告报文之前都要等待它的计时器到时间。在这段等待的时间中,如果在同一组的其他主机或路由器的计时器先到
6、了截至时间,那么这个主机或路由器就发送成员关系报告。这个报告是广播发送的,等待的互济或路由器能收到这个报告,并知道没有必要对这个组发送重复报告;等待的站就取消相应的计时器。,19,举例,图中为网络上的3个主机,在时间0收到查询报文;对每一个组的随机延迟时间(以十分之一秒计)见组地址后面的数据。试给出报告报文序列。,R,到其他网络,225.14.0.0 30228.42.0.0 12230.43.0.0 80,228.42.0.0 48251.71.0.0 50,225.14.0.0 62230.43.0.0 70,组 计时器,组 计时器,组 计时器,A,B,C,20,解,这些事件按这样的序列发
7、生:时间12:在主机A中,为设置的计时器截至时间到,发送出成员关系报告,路由器和每一个主机都收到这个报告,主机B取消为设置的计时器。时间30:在主机A中,为设置的计时器截至时间到,发送出成员关系报告,路由器和每一个主机都收到这个报告,主机C取消为设置的计时器。时间50:在主机B中,为设置的计时器截至时间到,发送出成员关系报告,路由器和每一个主机都收到这个报告。时间70:在主机A中,为设置的计时器截至时间到,发送出成员关系报告,路由器和每一个主机都收到这个报告,主机A取消为设置的计时器。,21,查询路由器,查询报文可能产生很多响应,为了防止不必要的通信量,IGMP为每一个网络指定一个查询路由器。
8、只有这个查询路由器才能发送查询报文,而其他的路由器都是被动的。,22,6.2.2 IGMP报文,IGMP已经有了两个版本,当前的版本IGMPv2有三种报文类型:查询、成员关系报告和退出报告。,23,6.2.2 IGMP报文,IGMP的类型字段,24,6.2.2 IGMP报文格式(续),最大响应时间:定义了查询必须在多长时间内回答。在查询报文中这个值不是零,但在其他两种报文种则置为零检验和:检验和在8字节的报文上计算。组地址:在一般查询报文中这个字段的值是0。这个字段值在特殊查询报文,成员关系报告报文以及退出报告报文中定义组多播地址。,25,6.3 封装,IGMP报文,IP数据,IP首部,帧的数
9、据,帧的首部,尾部(如果有的话),8字节,数据链路层,IP层,26,6.3.1 IP层,在IP层我们关心3个字段:协议字段、TTL字段和目的IP地址字段。对于IGMP协议,协议字段值是2当IGMP报文封装成IP数据报时,TTL的值必须是1,这样作是必须的,因为IGMP的作用范围是局域网。目的IP地址,27,表 目的IP地址,28,6.3.2 数据链路层,支持物理多播,29,数据链路层,以太网的多播地址范围是:01:00:5E:00:00:0001:00:5E:7F:FF:FF举例试把多播IP地址改变为以太网多播物理地址。练习:试把多播IP地址改变为以太网多播物理地址,30,6.3.2 数据链路
10、层,不支持物理多播,数据,首部,数据,首部,多播IP数据报,单播IP数据报,大多数的广域网不支持物理多播编址。要通过这样的网络发送多播分组。这要使用叫做隧道技术的过程。使用隧道技术时,多播分组被封装成单播分组并发送到网络,然后在另一端又把这个分组转变成多播分组。,31,本章小结,多播就是把同样的报文同时发送给一个以上的接收端网际组管理协议(IGMP)帮助多播路由器创建和更新与路由器接口有关的忠实成员表3种IGMP报文类型是查询报文、成员关系报告和退出报告IGMP局限在本地工作主机或路由器可以在一个组中有成员关系路由器维护一些组地址,这些组地址给出了每一个接口的组成员关系路由器或主机发送成员关系
11、报告来加入一个组,32,本章小结(续),路由器或主机发送退出报告来退出一个组路由器或主机发送查询报文来监视组成员关系延迟响应策略可避免在局域网上出现不必要的通信量IGMP报文封装在IP数据报中包括以太网在内的大多数局域网都支持物理多播编址不支持物理多播编址的广域网可使用叫做隧道技术的过程来发送多播分组。,33,练习,一个组的多播地址是,局域网使用TCP/IP,其48位的以太网地址是什么?路由器的组表有20个项目,它应当周期性地发送20个不同的查询还是只发送一个?试解释你的答案IP地址为而物理以太网地址为23:4A:45:12:EC:D2的路由器发送一个IGMP一般查询报文,试给出报文种所有项目。IGMP报文用十六进制表示的内容是:11 00 EE FF 00 00 00 00,试回答:类型是什么?检验和是什么?组地址是什么?,34,练习(续),路由器发送了查询,然后只收到3个关于组地址的报告,这些组地址是:,和。当路由器检查它的路由表时发现了五个项目:,和。这个路由器应采取什么行动?,