Multicasting-组播_第1页
Multicasting-组播_第2页
Multicasting-组播_第3页
Multicasting-组播_第4页
Multicasting-组播_第5页
已阅读5页,还剩112页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Multicasting-组播组播组播的基本概念组播的基本概念 IP IP组播的基本定义:组播的基本定义:在在LAN/WANLAN/WAN上能使上能使IPIP数据报数据报从一个源同时到多从一个源同时到多个目个目的传输过程的传输过程 接收组成员参加组播会议,应用只需发送一份接收组成员参加组播会议,应用只需发送一份拷贝到需要接收的组拷贝到需要接收的组组播技术让包只寻址到组,而不是单个接收者组播技术让包只寻址到组,而不是单个接收者开放组播的结点要运行一套能接收组播报文的开放组播的结点要运行一套能接收组播报文的TCP/IPTCP/IP协议协议单播流单播流VideoServerReceiverRecei

2、verReceiverNot AReceiver 单播应用对每个单播地址包都发出一份拷贝单播应用对每个单播地址包都发出一份拷贝1.5 Mb x 3 = 4.5 Mb1.5 Mb x 2 = 3 Mb1.5 Mb x 1 = 1.5 Mb1.5 Mb x 1 = 1.5 Mb1.5 Mb x 1 = 1.5 Mb1.5 Mb x 1 = 1.5 Mb单播流单播流-考虑考虑3个个1.5 Mb 流流VideoServerReceiverReceiverReceiverNot AReceiver单播流单播流-考虑考虑100个个1.5 Mb 流流. . . 1.5 Mb x 100 = 150 Mb1.

3、5 Mb x 100 = 150 Mb1.5 Mb x 100 = 150 MbReceiver 1Receiver 1001.5 Mb x 100 = 150 MbVideoServer如果用如果用组播组播, ,则主干只有一个则主干只有一个流流, ,流量是单播的流量是单播的1/n1/n广播流广播流我不希望接收这个视我不希望接收这个视频流频流,但我的但我的CPU仍要仍要处理这个处理这个1.5 Mb流流1.5 Mb1.5 Mb1.5 Mb1.5 Mb1.5 Mb1.5 Mb1.5 MbVideoServerReceiverReceiverReceiverNot AReceiver组播流组播流1.

4、5 Mb1.5 Mb1.5 Mb1.5 Mb1.5 Mb1.5 MbVideoServer 组播服务器用组播地址组播服务器用组播地址( (特别的广播特别的广播) )把单个数据流把单个数据流发送到多个客户端发送到多个客户端组播主干流量是组播主干流量是单播主干流量的单播主干流量的1/n1/nReceiverReceiverReceiverNot AReceiver 组播时,成千用户并发使用组播时,成千用户并发使用,并基本不影响并基本不影响主干带宽主干带宽ISPISPPushPush接收者接收者发送者发送者先进的组播技术先进的组播技术RouterRouterInternetRouterD1D2D3D

5、1D2D3D1D2D3D1D2D3SenderReceiversMulticast-在在 IP 网上一对多的传输网上一对多的传输-支持视频会议支持视频会议, -e-learning, 培训等培训等UnicastingRouterRouterInternet RouterDDDDDDSenderReceiversMulticasting不同层次的组播不同层次的组播 组播可在数据链路层次实现组播可在数据链路层次实现数据链路层可用数据链路层可用EthernetEthernet、 FDDI FDDI 和和Token RingToken Ring实现实现但该组播仅限于在但该组播仅限于在LANLAN内内

6、组播可在网络层实现组播可在网络层实现把多播从单一把多播从单一LANLAN扩展到不同媒体和网络技术构扩展到不同媒体和网络技术构成的因特网成的因特网故需要完成故需要完成ISO/OSIISO/OSI的的L3L3到到L2L2的地址转换的地址转换主机要向路由器动态注册,以指明它是该组的成主机要向路由器动态注册,以指明它是该组的成员员RFC1112RFC1112定义定义IGMP, IGMPIGMP, IGMP说明主机怎样通告网络说明主机怎样通告网络,它是某多播组的成员,它是某多播组的成员组播路由器之间通信的几个标准或协议组播路由器之间通信的几个标准或协议 RFC1075RFC1075定义距离矢量多播路由协

7、议定义距离矢量多播路由协议DVMRPDVMRP RFC1584RFC1584定义开放最短路径优先多播路由协议定义开放最短路径优先多播路由协议MOSPF,MOSPF,是扩充是扩充OSPFOSPF以支持多播以支持多播 RFC2117RFC2117定义协议独立多播路由协议定义协议独立多播路由协议PIM-SMPIM-SM稀疏模式稀疏模式 PIM-DMPIM-DM:密集模式:是最近的因特网标准草案:密集模式:是最近的因特网标准草案播放机制比较及特点播放机制比较及特点 LANLAN上的实现上的实现单播单播: : 把把 IP IP 地址映射成地址映射成MAC MAC 地址地址广播广播: : 特别的特别的 M

8、AC MAC 地址地址; ;全全“1 11”1”组播组播: : 把组地址映射成特别的把组地址映射成特别的 MAC MAC 地址地址 跨子网的单播跨子网的单播: :单播包有源单播包有源/ /目目 IP IP 地址地址路由器接收单播路由器接收单播 IP IP 包包路由器基于目路由器基于目IPIP地址只把该包转发到单个目地址地址只把该包转发到单个目地址可能在同一接口上交付可能在同一接口上交付各种播放机制的比较各种播放机制的比较跨子网的组播跨子网的组播: :组播包有源组播包有源 IP IP 地址和地址和组播目的组地址组播目的组地址 (Class D)(Class D) 路由器接收组播路由器接收组播 I

9、P IP 包包 路由器转发到所有输出接口路由器转发到所有输出接口, ,除开刚流入除开刚流入包的上游接口外包的上游接口外 只有组成员接收这个流只有组成员接收这个流跨子网的广播跨子网的广播 对网络影响很大对网络影响很大类似类似DOSDOS攻击攻击 在路由器上要关闭广播路由机制在路由器上要关闭广播路由机制IP 组播的特点组播的特点 是把一份数据分发到有多个成员组的有效是把一份数据分发到有多个成员组的有效手段手段 支持支持one to many and many to many one to many and many to many 服服务务 只需传送一份数据拷贝只需传送一份数据拷贝 支持动态成员组

10、的建立支持动态成员组的建立 传输服务是用不可靠的传输服务是用不可靠的UDPUDP组播的应用组播的应用 今天今天金融领域应用金融领域应用 股票和商品交易股票和商品交易流媒体流媒体 电子教学电子教学 企业通信企业通信 企业资源应用企业资源应用 数据仓库和内容同步数据仓库和内容同步任何任何1 1ManyMany数据库数据库 PushPush应用应用组播的网络结构组播的网络结构组播路由器组播路由器接收者接收者子网子网发送者发送者子网子网组播发组播发送应用送应用TCP UDPTCP UDP网卡网卡IP/IP/IGMP/IGMP/ICMPICMP组播接收组播接收应用应用TCP UDPTCP UDP网卡网卡

11、IP/IP/IGMP/IGMP/ICMPICMP组播组播应用协议应用协议寻址:寻址:源和目的端口寻址源和目的端口寻址发送者地址和接收者发送者地址和接收者组组地址地址组播组主机中的组播组主机中的TCP/IP协议栈协议栈应用应用主机主机- -主机传输主机传输网卡网卡( (多物理实现多物理实现) )网络互连网络互连FTPFTPSMTPSMTPTelnetTelnetARP/RARP/SNAPARP/RARP/SNAP广播广播组播组播单播单播NetBIOSNetBIOSDNS SNMPDNS SNMPLLC Ethernet,FDDILLC Ethernet,FDDITCPTCPIPIPICMPICM

12、PIGMPIGMPUDPUDPRAMPRAMPLAN内的组播内的组播 组播报文传输的主要问题组播报文传输的主要问题哪些计算机或设备准备接收组播报文哪些计算机或设备准备接收组播报文?怎样建立从组播源到组播目之路径怎样建立从组播源到组播目之路径? 组播环境下的寻址组播环境下的寻址IP IP 组播地址结构组播地址结构IP IP 组播地址到组播地址到MAC MAC 地址的映射地址的映射 组播组的形成组播组的形成IPv4组播地址的结构组播地址的结构nClass D address consists of 1110 as the higher order bits in the first octet (

13、八位字节八位字节), followed by a 28-bit group address.nClass D addresses range from through 55. The high-order bits in the first octet identify this 224-base address n1110 0000-1110 1111 = 128+64+32=224239(224+15).Multicast Group ID1101Class D28 bitsIP组播地址组播地址 IP组播地址组播地址 在在到到

14、55的的D类地址范围内,这是通过将前四个高序位设置类地址范围内,这是通过将前四个高序位设置为为1110来定义的。在网络前缀或无类别域间路来定义的。在网络前缀或无类别域间路由(由(Classless Inter-Domain Routing,CIDR)表示法中,表示法中,IP多播地址缩写为多播地址缩写为/24。 从从到到55 (/24)范围范围的多播地址保留用于本地子网。的多播地址保留用于本地子网。 - 该子网上的所有主机。该子网上的所有主机。 - 该子网上的

15、所有路由器。该子网上的所有路由器。组播用的组播用的D类地址类地址 D D类地址是组播地址,以指明组播组内的主机或接类地址是组播地址,以指明组播组内的主机或接口口 D D类地址从类地址从-55-55最低最低256256个地址为管理和系统级路由杂用保留个地址为管理和系统级路由杂用保留中间地址为组内、内联和因特网上终端用户使中间地址为组内、内联和因特网上终端用户使用用高端地址为本地管理或特别站点的组播使用高端地址为本地管理或特别站点的组播使用系统保留组播地址系统保留组播地址用户组播地址用户组播地址本地管理用组播地

16、址本地管理用组播地址5555因本地用故因本地用故TTL = 1TTL = 155555555非本地用故非本地用故TTL 1TTL 1一个管理域内可使用的地址一个管理域内可使用的地址 地址范围地址范围-55-55 专用地址空间专用地址空间与与RFC1918RFC19

17、18单播发送单播发送 地址相似地址相似不用于全球不用于全球InternetInternet业务流业务流用于限制组播业务流的范围用于限制组播业务流的范围相同地址可在不同管理域,用于不同的组播会话相同地址可在不同管理域,用于不同的组播会话 站点站点本地范围:本地范围:/16/16 组织组织本地范围:本地范围:/14/14 SSM(SSM(源特定的组播源特定的组播) )范围范围-55-55主要针对基于主要针对基于Interne

18、tInternet的组播的组播IP多播的组模型多播的组模型IP多播定义的组模型是一种无根多播定义的组模型是一种无根(no root)控制模式,其理解要点如下:控制模式,其理解要点如下:n侦听特定侦听特定IP多播地址的那一组主机称为一个多播组多播地址的那一组主机称为一个多播组(主机组主机组)。n主机组的成员关系是动态的,主机可以在任何时候加入或离开该组。主机组的成员关系是动态的,主机可以在任何时候加入或离开该组。n主机组的成员数量没有限制。主机组的成员数量没有限制。n主机组可以跨越多个网段。这需要沿路各个路由器上的主机组可以跨越多个网段。这需要沿路各个路由器上的IP多播支持,多播支持,并且并且I

19、GMP协议和多播路由协议配合来完成。协议和多播路由协议配合来完成。n在网络层,发送方无法控制也不知道某一台主机是否属于该多播组。在网络层,发送方无法控制也不知道某一台主机是否属于该多播组。n任何一台主机无论它是否属于该多播组,都可以向该多播地址发送数任何一台主机无论它是否属于该多播组,都可以向该多播地址发送数据。数据可以被该主机组的所有成员接收。据。数据可以被该主机组的所有成员接收。组播地址的转换组播地址的转换 子网上的本地子网上的本地R R收到收到L3L3层的组播包,它能映射层的组播包,它能映射该组播地址成该组播地址成L2L2层的组播地址层的组播地址接收主机的网卡硬件能有效读出接收主机的网卡

20、硬件能有效读出L2L2层地址层地址L2L2层协议给组播和广播空间保留有地址空层协议给组播和广播空间保留有地址空间间 从从L3L3到到L2L2立刻直接转换成立刻直接转换成MACMAC地址:通过把地址:通过把IPIP组播地址的低组播地址的低2323位落入到位落入到EthernetEthernet组播地址的组播地址的低低2323位即可位即可数据链路层组播数据链路层组播/广播的处理广播的处理 第二层可把组播第二层可把组播MAC帧转发到二层交换机的所有帧转发到二层交换机的所有端口,网上任何主机都可接收到它想接收的报文端口,网上任何主机都可接收到它想接收的报文上层信息上层信息第二层组播第二层组播/广播目的

21、地址广播目的地址第二层第二层组播组播/广播流广播流第二层交换第二层交换把流转发到所有端口点把流转发到所有端口点在在LAN上实现多播上实现多播 在在LAN上,网络层定义的多播工作方式最终还要借上,网络层定义的多播工作方式最终还要借助于助于MAC层的多播机制来实现。层的多播机制来实现。 几乎所有的几乎所有的LAN采用的都是广播式信道,所以在采用的都是广播式信道,所以在LAN上都是借助于广播机制实现多播的。上都是借助于广播机制实现多播的。 具体工作过程为:发送方将组播数据帧广播到具体工作过程为:发送方将组播数据帧广播到LAN共享信道上,处在本共享信道上,处在本LAN中的该组播组的成员主机中的该组播组

22、的成员主机监听到之后将其接收,其它主机则将其丢弃。监听到之后将其接收,其它主机则将其丢弃。 MAC层也定义了单播层也定义了单播MAC地址和组播地址和组播MAC地址,以地址,以使网卡对监听到的数据帧区别对待。使网卡对监听到的数据帧区别对待。 组播组播IP地址要映射为组播地址要映射为组播MAC地址。地址。Ethernet的的 MAC 组播地址组播地址 单播侦听模式单播侦听模式:网卡底层硬件只接收目的:网卡底层硬件只接收目的MAC地址地址与本网卡物理地址匹配的数据帧和目的与本网卡物理地址匹配的数据帧和目的MAC地址为地址为FF-FF-FF-FF-FF-FF(广播地址)的数据帧。(广播地址)的数据帧。

23、 单播侦听扩展模式单播侦听扩展模式:在单播侦听模式的基础上,网:在单播侦听模式的基础上,网卡底层硬件还接收目的卡底层硬件还接收目的MAC地址与地址与硬件硬件MAC地址过地址过滤器滤器中某个值相匹配的数据帧。硬件中某个值相匹配的数据帧。硬件MAC地址过滤地址过滤器中的值可以通过软件配置。器中的值可以通过软件配置。 混合模式混合模式:网卡底层硬件接收所有的数据帧。:网卡底层硬件接收所有的数据帧。 多播混合模式多播混合模式:网卡底层硬件接收单播:网卡底层硬件接收单播/组播标志位组播标志位为为1的所有的数据帧。的所有的数据帧。IP组播到以太网地址的映射组播到以太网地址的映射00000001000000

24、00011011110Class D IP Address48-Bit Ethernet MAC Address111007 815 1623 2431NotUsedLow-Order 23 Bits of Multi-castGroup ID Copied to Ethernet Address01005E224因为存在因为存在2 25 5= 32= 32个冲突映射,故接收主机的设备个冲突映射,故接收主机的设备驱动程序或驱动程序或IPIP模块必须过滤掉它不在组的组播帧模块必须过滤掉它不在组的组播帧映射映射: Example 10 0 0 0 1 0 10 0 0 0 0 1 0 00 0 0

25、 0 0 0 1 012241085-0 0 0 00100-Multicast Address: = (E0:0A:08:05)Ethernet Address: 01:00:5E:0A:08:055E0A-08-05-0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 11 1 1 0映射映射: Example 21 0 0 0 1 0 10 0 0 0 0 1 0 00 0 0 0 0 0 1 012241085-1 0 1 0010

26、0-Multicast Address:Ethernet Address:5E0A-08-05-0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 11 1 1 0组播地址映射的若干提示组播地址映射的若干提示 IANAIANA认可认可IEEE-802 MACIEEE-802 MAC层的保留空间是以层的保留空间是以 0101:0000:5E5E开头的地址块开头的地址块 其中一半用于其中一半用于IPIP组播到组播到MACMAC层组播的地址空间是层组播的地址空间是0

27、1:00:5E:00:00:00- 01:00:5E:7F:FF:FF01:00:5E:00:00:00- 01:00:5E:7F:FF:FF 接收主机的接收主机的TCP/IPTCP/IP栈必须能解释组播,理解栈必须能解释组播,理解IPIP组组播地址的有效范围,并对网卡编程,使得网卡能播地址的有效范围,并对网卡编程,使得网卡能接收所需要的组播地址接收所需要的组播地址 因为存在因为存在2 25 5 = 32= 32个冲突映射,故端用户接收主个冲突映射,故端用户接收主机需使其网卡能有效过滤掉从网络层机需使其网卡能有效过滤掉从网络层IPIP组播地址组播地址映射过来的映射过来的MACMAC地址地址 源

28、地址可以永远不是源地址可以永远不是D D类组播地址类组播地址组播地址的分配组播地址的分配 动态地址分配动态地址分配会话目录工具(会话目录工具(SDRSDR) 以前用于通知关于组播组的会话以前用于通知关于组播组的会话/ /组信息组信息 扩展上存在问题扩展上存在问题组播地址客户机分配协议(组播地址客户机分配协议(MADCAPMADCAP) 与与DHCPDHCP相同相同 服务器和客户机服务器和客户机APIAPI在在W2KW2K中销售中销售 应用需要支持应用需要支持MADCAPMADCAP组播地址请求(组播地址请求(MASCMASC) 分级、动态的地址分配分级、动态的地址分配 分级体的顶端是分级体的顶

29、端是Internet exchangeInternet exchange 孩子从父亲处申请地址孩子从父亲处申请地址 复杂的垃圾收集问题复杂的垃圾收集问题/ /分级体很长分级体很长组播地址的分配(续)组播地址的分配(续) 静态全球组地址分配静态全球组地址分配满足紧急需求的临时方法满足紧急需求的临时方法组范围:组范围:233.255. 255.255233.255. 255.255 把你的把你的ASAS号插入到中间号插入到中间2 2个个8 8位中位中 将低将低8 8位用于组分配位用于组分配定义在定义在RFC 2770RFC 2770 管理员进行人工地址分配管理员

30、进行人工地址分配仍然是企业最常用的方法仍然是企业最常用的方法IGMPIGMP组播组的形成组播组的形成 IGMPIGMP协议协议主机怎样告诉指派组播路由器主机怎样告诉指派组播路由器(DR)(DR)它的身份它的身份DRDR了解与其直连主机中是否有组成员存在了解与其直连主机中是否有组成员存在RFC1112RFC1112定义定义IGMPV1IGMPV1,Win95Win95上获得支持上获得支持RFC2236RFC2236定义定义IGMPV2IGMPV2,WindowsWindows和大部分和大部分UnixUnix系系统的最新设备中支持统的最新设备中支持IGMPV3IGMPV3在在IETFIETF草案中

31、有规定草案中有规定 draftdraftietfietfigmpigmpv3-07.txtv3-07.txt IGMPIGMP同同ICMPICMP一样,是一样,是IP(TCP/IPIP(TCP/IP协议栈协议栈) )整体中的整体中的一部分,用一部分,用IPIP数据报来传输自己的数据数据报来传输自己的数据有关组播的有关组播的3类主机类主机 Level 0Level 0该类主机不能实现组播,组播活动该类主机不能实现组播,组播活动对它无影响对它无影响 Level 1Level 1该类主机能发送组播报文,但不能该类主机能发送组播报文,但不能接收组播报文接收组播报文它可参加某些基于组播的服务它可参加某些

32、基于组播的服务资源或状资源或状态报告态报告不允许该类主机参加任何组播接收主机组不允许该类主机参加任何组播接收主机组 Level 2Level 2该类主机既能发送也能接收组播报该类主机既能发送也能接收组播报文,实现了文,实现了IGMPIGMP在本地网卡上的在本地网卡上的IPIP扩充扩充IGMP的基本操作的基本操作 IGMPIGMP在在Level 2Level 2主机上实现主机上实现IGMPIGMP报文被封装在报文被封装在IPIP数据报的数据部分数据报的数据部分IGMPIGMP是定长的报文是定长的报文IPIP头中的协议类型头中的协议类型 = 2= 2IP HeaderIP HeaderIGMP M

33、essageIGMP Message20 Bytes20 BytesIPIP数据报数据报8 Bytes8 BytesIGMPv1Packet Formatv版本号版本号 = 1vType:v 1 = Host Membership Query,由,由MR发出发出2 = Host Membership Report,由主机发出,由主机发出vGroup Address:v Multicast Group Address7152331VerUnusedChecksumType4Group AddressIGMPv2Packet FormatvMultiple message typesv组成员询问组

34、成员询问/成员报告成员报告/成员离开成员离开3类类messagevMax. Resp. Timev Max. time before sending a respondingv report in 1/10 secs (default = 10 secs)vGroup Address:v Multicast Group Addressv ( for General Queries)Max. Resp. TimeChecksumGroup AddressType71531支持支持IP数据报所需的扩展数据报所需的扩展 IP服务接口的扩展服务接口的扩展 JoinHostGroup(gr

35、oup address,interface) 请求使自己请求使自己成为成为给定网络接口上组地址标识组的成员给定网络接口上组地址标识组的成员 LeaveHostGroup(group address,interface) 请求使自己请求使自己放弃放弃给定网络接口上组地址标识组的成员给定网络接口上组地址标识组的成员 LAN服务接口的扩展服务接口的扩展 JoinHostGroup(group address) 请求请求 LAN模块接收并顺序递交依给定组地址到达的包模块接收并顺序递交依给定组地址到达的包 LeaveHostGroup(group address) 请求请求 LAN模块接收停止递交依给定

36、组地址到达的包模块接收停止递交依给定组地址到达的包主机主机IP组播的组播的扩展扩展实现模式实现模式Upper-Layer Protocol ModulesUpper-Layer Protocol ModulesIPIPModuleModuleIGMPIGMPICMPICMPLocalLocalNetworkNetworkModuleModuleIP-to-Local Address MappingIP-to-Local Address MappingARP/RARPARP/RARPIGMP协议的实现协议的实现 IP主机用主机用IGMP向直接相连的组播路由器向直接相连的组播路由器(MR)报告它的

37、组播组的报告它的组播组的D类组地址类组地址 MR收到有此后,用收到有此后,用IGMP得到与其物理直得到与其物理直连网上的组播成员连网上的组播成员RouterRouterRouterIGMP报文接收主机接收主机有组播的路由器组播路由器的查询操作组播路由器的查询操作 MRMR定期用定期用组地址(作为组地址(作为IPIP头中的头中的目的地址)发组成员查询包目的地址)发组成员查询包MRMR只关心本网上到底有哪些组,并不关心哪台只关心本网上到底有哪些组,并不关心哪台主机属于哪个组主机属于哪个组一般查询(一般查询(IGMPIGMP包中的组地址包中的组地址=

38、=):哪):哪些组有成员在本网上?些组有成员在本网上?特别查询(特别查询(IGMPIGMP包中的组地址包中的组地址= =特别组地址)特别组地址) :一特别组是否有成员在本网上:一特别组是否有成员在本网上组播主机的应答操作组播主机的应答操作 识别组号识别组号 为每个组设置一个延迟时钟为每个组设置一个延迟时钟大小大小 = 0-= 0-Max. Response TimeMax. Response Time随机数随机数,缺,缺省省 = 10= 10秒秒 如果某个超时,则为相应组生成报告包,并发送出去如果某个超时,则为相应组生成报告包,并发送出去 如果该主机同时又收到其它主机发出的包,则

39、停止相应如果该主机同时又收到其它主机发出的包,则停止相应组的时钟,故本网的一个组仅产生一个报告包组的时钟,故本网的一个组仅产生一个报告包 在时钟等待期,若又收到另一个询问包,并不刷新原时在时钟等待期,若又收到另一个询问包,并不刷新原时钟的时限,而是在原时钟超时后发出报告钟的时限,而是在原时钟超时后发出报告 当一主机新加入某组时,应马上发出组报告,不用等待当一主机新加入某组时,应马上发出组报告,不用等待MRMR的询问的询问MR收到报告后的操作收到报告后的操作 把被报告组加入到网上组播组成员表中把被报告组加入到网上组播组成员表中 为该成员设置一个组成员时间间隔,在为该成员设置一个组成员时间间隔,在

40、该间隔时间过去之前,该间隔时间过去之前,MR要决定本网上要决定本网上再没有组成员再没有组成员主机离开组播组主机离开组播组 主机静静地离开组播组,依据实现的不同,主机静静地离开组播组,依据实现的不同,会有差别会有差别如果某离开组的主机是最近才回答如果某离开组的主机是最近才回答MRMR询问的询问的主机,该主机发主机,该主机发LeaveHostGroupLeaveHostGroup有些实现是任何主机离开都发有些实现是任何主机离开都发LeaveHostGroupLeaveHostGroupIGMP Example (1) Host 1:as resource; Host 3:want to be a

41、membership of this group Host 1 begins sending packetsNo IGMP messages sentPackets remain on Network 1 Router periodically sends IGMP Membership QueryNetwork 1Network 2Router1243IGMP Example (2)Network 1Host 3 joins conferenceSends IGMP Membership Report messageRouter begins forwarding packets onto

42、Network 2Host 3 leaves conferenceSends IGMP Leave Group messageOnly sent if it was the last host to send an IGMP Membership Report messageNetwork 2Router1243 3Membership Report3 3Leave GroupGroup MembershipHost AHost BHost CHost DIm not a member so I wont respond.Im a member so I will respond.Im a m

43、ember so I will respond.Im a member so I will respond.Are there any members for Group XYZ?nMulticast uses query and report messages to establish and maintain group membership IGMPv1Joining a Group Joining member sends report to immediately upon joiningH3ReportIGMPv1H1H2IGMPv1Gener

44、al Queries The router periodically sends general queries to to determine membershipsGeneral Query to IGMPv1MulticastRouterH3H1H2IGMPv1Maintaining a GroupIGMPv1n Router sends periodic queriesn One member per group per subnet reportn Other members suppress reportsX

45、H3H1H2Query toReportSuppressedn Router sends periodic queriesn Hosts silently leave groupn Router continues sending periodic queriesQuery toIGMPv1Leaving a GroupIGMPv1n No reports for group received by routern Group times outH3H1H2IGMPv2Joining a Group Joining member sends report t

46、o immediately upon joining (same as IGMPv1)Report41H1RTR141H3H2IGMPv2Joining a Group (cont.)41H1RTR141E0H2H3RTR141show ip igmp groupIGMP Connected Group MembershipGroup Address Interface Uptime

47、 Expires Last Reporter Ethernet0 6d17h 00:02:31 IGMPv2DR的遴选的遴选n Intially all routers send out a query n Router with lowest IP address “elected” querier(DR)n Other routers become non-queriersIGMPv2H1H2H3QueryQueryIGMP QuerierIGMPNon-Querier41172.16

48、.41.343IGMPv2Querier ElectionnLocating the designated querier router-DRRTR141show ip igmp interface e0Ethernet0 is up, line protocol is up Internet address is 41, subnet mask is IGMP is enabled on interface Current IGMP version is 2 CGMP is disabled on interface I

49、GMP query interval is 60 seconds IGMP querier timeout is 120 seconds IGMP max query response time is 10 seconds Inbound IGMP access group is not set Multicast routing is enabled on interface Multicast TTL threshold is 0 Multicast designated router (DR) is 41 (this system) IGMP querying ro

50、uter is 41 (this system) Multicast groups joined: 0 54IGMPv2Maintaining a Group Router sends periodic queriesQueryIGMPv2n One member per group per subnet reportReportn Other members suppress reportsSuppressedXH2H341172

51、.16.41.3H1IGMPv2Leaving a GroupH1H2H3RTR141n IGMP state in RTR141 before leave41RTR141sh ip igmp groupIGMP Connected Group MembershipGroup Address Interface Uptime Expires Last Reporter Ethernet0 6d17h 00:02:31 IGMPv2Leaving a Group H2

52、leaves group; sends leave messageH1H2H3H2Leave ton Router sends group-specific queryGroup SpecificQuery to n A remaining member host sends report; group remains activeReport toRTR141IP=41D = IGMPv2Leav

53、ing a Group (cont.)H1H2H3RTR141n IGMP state in RTR141 after H2 leaves41RTR141sh ip igmp groupIGMP Connected Group MembershipGroup Address Interface Uptime Expires Last Reporter Ethernet0 6d17h 00:01:47 IGMPv2Leaving a Group (Cont.) Last

54、 host leaves group; sends Leave messageH1H3H3Leave to Router sends group-specific query;Group-specificQuery to no report is received, group times outH2RTR14141IGMPv2Leaving a Group (cont.)RTR141sh ip igmp groupIGMP Connected Grou

55、p MembershipGroup Address Interface Uptime Expires Last ReporterH1H2RTR141n IGMP state in RTR141 after H3 leavesn Records are deleted 41H33、组播路由算法 网络路由器和主机的主要不同是R需用转发算法,而主机则不需要 组播路由协议中使用的算法主要有 Flooding Spanning tree Reverse-Path Broadcasting(RPB) Truncated

56、 Reverse-Path Broadcasting(TRPB) Reverse-Path Multicasting(MPB) Core-based tree3.1 IP组播路由的基本方法 组播协议的基本任务是:在连通所有组主机的支撑树上为源到目对(pair)传输IP组播流 组播支撑树的构造方法随组播协议的不同而变化 一旦支撑树构造好,就沿着该树分发组播流组播路由的特点 组播地址用以区别网上播发的会议(session),而不是特别的物理目的地,源不需知道所有相关的地址 对不同的接收,许多会议数据流是相同的 接收主机必须通过IGMP让其子网路由器DR知道它们加入了某个会议组两类组播路由协议密集模

57、式 密集模式组播路由协议假设组播组成员密集分布于网络上的许多子网,并至少包含一个组成员都需要大量的带宽 密集模式的组播路由协议包括DVMRPMOSPFPIM-DM 依靠洪泛技术传播信息到所有组播路由器组播路由的稀疏模式 稀疏模式组播路由协议假设组播组成员稀疏分布于网络上,并至少包含一个组成员不需要大量的带宽,组成员可能由ISDN连通 稀疏模式的组播路由协议包括CBT:Core-Based TreePIM-SM 不用洪泛方式,因组成员稀疏分布,否则会浪费带宽并引发严重性能下降3.2 Flooding 算法Step 1:MR接收一个组播数据报Step 2:MR决定该报文是否是第一次 若是,MR转发

58、该报文到除其刚进入的接口以外的所有接口,从而保障它能转发到所有其它MR 否则(即这之前发送过该报文),丢弃它MR仅需跟踪最近转发的报文,不需维护路由表组播报文的洪泛XACBDCXABDXABCDXCABDA A:报文到达:报文到达X XB B:X X洪泛报文到洪泛报文到A A和和C CD D:洪泛完成:洪泛完成C C:A A和和C C洪泛报文到洪泛报文到B B洪泛算法的缺点 不适应在因特网上扩展规模 生成大量重复包,故不能在WAN上工作 洪泛使用了因特网上的所有通道,而不是仅需要的有限通道,导致拥塞 降低了路由器内存的有效利用率,因为每个MR要维护最近进入包的表3.3 Spanning Tre

59、e 算法 Spanning Tree路由解成为IEEE 802 LAN 数据链路层的标准 Spanning Tree定义因特网或内联网上的树结构:连通树每个树枝是任何两个R的单通路连接 Spanning Tree能消除网络拓扑的环路实现 Spanning Tree 算法 选择一转发设备作为根,根通常具y有最低优先权的设备,优先权相等时选最低MAC地址 决定通路代价 选择根端口,选定每个LAN上的指定转发设备 为每个子网选定指定端口消除环路B3B5B2B1B6B4B7I IK KA AG GF FE ED DC CB BA AJ J产生环路的产生环路的LANLAN带环的图带环的图支撑树支撑树Sp

60、anning Tree 算法的特点 优点: 算法很有用并容易实现 缺点: 把流量集中在少数链路上 未给从源子网到目的组成员之间提供有效的通路 受限Steiner Trees(CST) 组播报文沿树不并行转发到路由器 最小平均通道延迟和组播树代价优化3.4 Reverse-Path Broadcasting算法 RPB:逆向路径广播算法基本内容:对子网上的每个可能源,都建立其组支撑树,该源子网是根:以区别于后面的TRPB即每个活动的源组对(S,G)都存在一支撑树 路由器用逆向路径广播(RPB)算法构造以源为根的树,以减少重复包 RPB为每个活动的源组对都构造出不同的支撑树,并容易实现 单播转发路

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论