组播技术基础.ppt
组播技术基础 v1.1,网络技术培训系列(一),组播基本概念组播基础协议组播应用,组播(multicast)概念为什么要组播?,降低服务器负载,节省网络带宽,降低对网络设备的要求,用户规模可以灵活变化,用户规模的增大不会对网络造成带宽压力!,网络中点到多点的通信形式,通过报文复制完成网络中点到多点的高效数据传送。减少不必要的报文传输,把报文复制尽可能的放在离接收者最近的网络节点来完成。,10,组播概念 Multicast,组播(multicast)概念组播(multicast)vs 广播(broadcast),广播不能跨网段,网段内所有设备都会处理广播,部分设备处理组播,讨论:你觉得哪些应用可以使用组播?,组播基础知识,组播地址,报文的目的地址是D类地址,即组播地址,不代表网络上具体的主机,而仅仅代表由相应接收者组成的集合组播组。组播源不一定是组播组成员。,组播IP地址,IANA将地址段设为保留地址,分配给本地网络协议使用。路由器对收到的目的地址在此范围内的报文,不管报文的TTL值,都不能进行路由转发。其他保留地址参见“INTERNET MULTICAST ADDRESSES”,组播IP地址,组播MAC地址IEEE规定MAC地址的第0字节的第0位用来区分一个目的MAC地址是广播/组播MAC地址还是单播MAC地址,Broadcast/Multicast Bit,组播IP地址和组播MAC地址的映射关系在以太网中,目的地址为组播地址的IP组播报文所使用的目的MAC地址都是以前缀0 x0100.5exx.xxxx开头的组播MAC地址,向下映射,组播MAC地址就23位?,“思科专家”称号是思科公司对出色的工程设计能力的人所给予的最高荣誉。他们不仅仅是思科最杰出的工程师,同时也是整个网络行业最杰出的工程师。Steve Deering:Deering是联网和互联网协议领域一位全球知名的权威专家。他发明了IP组播技术,与他人共同创建了互联网组播骨干网,并且是IPv6的主要设计者。他是IETF很多工作组的主席或联合主席,也是端到端研究团的积极成员,同时他还是互联网架构委员会的成员。,为什么会出现IP组播地址和组播MAC地址不是一一对应的情况呢?这问题说来可是long long ago了。话说20世纪90年代初期,IP组播之父Steve Deering希望分配16个连续的OUI作为IP组播MAC地址使用。因为一个OUI包含24位MAC地址空间,16个连续的OUI将提供28位MAC地址空间,就可以满足IP组播地址和组播MAC地址的要求。当时一个OUI的价格是1,000美元,当时的IETF主席Jon Postel(此人乃Internet先驱,著名的TCP/IP、SMTP、DNS均出自他笔下)不愿意花一万六千美金买28位MAC地址,而是花一千美金买一个OUI,并拿出一半地址(23位)给Steve Deering进行IP组播研究。因此就出现32:1的问题,即每个组播MAC地址能表示32位IP组播地址。,A Brief History of IP MulticastAt Stanford University in the early 1980s,a doctoral graduate student,Steve Deering,was working on a distributed operating system project for his advisor,David Cheriton.This distributed operating system was called Vsystem and was composed of several computers tied together into a loosely coupled multiprocessing system via a single Ethernet segment.The computers on this Ethernet segment worked together and communicated at the operating system level via special messages sent on the common Ethernet segment.One of the operating system primitives permitted one computer to send a message to a group of the other computers on the local Ethernet segment using a MAC layer multicast.As the project progressed,the need arose to add more computers to the multiprocessing system.Unfortunately,the only available computers were on the other side of the campus with production routers between the two networks.Consequently,the graduate students had to extend the operating systems inter-processor communications to work at Layer 3 of the OSI reference model so that the computers on the other side of the campus could function as part of the loosely coupled multiprocessor system.In addition,the MAC layer multicast messaging would also have to be extended to work at Layer 3.The task of finding a way to extend the MAC layer multicast capability across the Layer 3 routed network primarily fell to Steve Deering.After studying the Open Shortest Path First(OSPF)Protocol and the Routing Information Protocol(RIP)IP routing protocols,Steve concluded that the link-state mechanisms of OSPF could certainly be extended to support multicasting.He also concluded that the basic mechanisms of RIP could be used as the basis for a new distance vector-based multicast routing protocol.This idea led to more research into the area of IP multicasting and ultimately resulted in Steve Deerings doctoral thesis,Multicast Routing in a Datagram Network,published in December 1991.Dr.Deerings thesis also described a Host Membership Protocol,which became the basis for todays Internet Group Membership Protocol(IGMP)that IP multicast hosts use to signal to the router on the network that they desire to join a multicast group.In addition,Dr.Deerings thesis described a distance vector-based IP multicast routing protocol that was the basis for the Distance Vector Multicast Routing Protocol(DVMRP),also developed by Dr.Deering a few years later.These two protocols provided the first successful extensions to the IP packet network model to allow multicasting to be extended to Layer 3 of the OSI model.Since that time,advances in IP multicasting technology have continued and additional protocols such as Protocol Independent Multicasting(PIM)and multiprotocol extensions to the Border Gateway Protocol(BGP)have been developed.These protocols permit IP multicasting to scale beyond the initial limited implementations to large,enterprise-wide multicast networks and eventually on to a native,completely multicast-enabled Internet.,组播基础知识,组播通信模型,单播通信模型点到点以目的为中心,靠目的IP地址来决定转发。单播转发项形式为(目的网段,出接口,下一跳):(11.110.0.0/16,Ethernet0,131.108.1.3)随着通信参与者的增加,网络带宽消耗随之增加,1,2,3,1,2,3,组播通信模型点到多点,1,2,3,1,2,3,组播通信模型组播四要素:源发现接收者发现拓扑发现(组播路由器之间的拓扑、网络单播路由信息)分发树生成,PIM-SM/DM/SSM DVMRP MSDP,IGMP,DVMRP 单播:OSPF RIP BGP Static-Route,PIM-SM/DM/SSM DVMRP,组播通信模型以源和目的为转发依据(S,G),树状的转发,网络负载不随用户规模增加而增加(树从根部开始一直到叶子都是一样粗)。,组播通信模型转发树的构建,RPF(Reverse Path Forwarding)组播转发项形式为:(组播源地址,组播组地址,入接口,出接口列表)(172.10.1.2,239.1.1.1,eth0,eth1,eth2),接收者R1,接收者R2,组播源S,组播基本概念组播基础协议组播应用,组播基础协议用户发现协议IGMP(V1、V2、V3),用于了解接口所连接的网络是否有主机加入某组播组组播路由协议组播源发现协议组播拓扑分离协议二层组播协议组播协议典型组网,组播网络,查询,报告,IGMP,IGMP 组成员加入、维护,查询器,X,路由器发送查询,IP地址最小路由器选举成为查询器,主机加入组,路由器周期性维护组成员关系,主机加入组,路由器周期性维护组成员关系,主机加入组,路由器周期性维护组成员关系,X,IGMP 组成员离开,查询器,主机离开组,主机离开组,主机失效,IGMPv1 v2 v3的差别IGMP v1没有主动离开消息IGMP v1 v2指定加入的组IGMP v3指定加入的源组,配合PIM-SSM使用,组播基础协议用户发现协议组播路由协议掌握网络拓扑,发现组播源,生成转发树PIM-SM/DM/SSMDVMRP.组播源发现协议组播拓扑分离协议二层组播协议组播协议典型组网,组播网络,组播路由协议,组播源,PIM 协议密集模式,Protocol Independent Multicast Dense Mode,PIM-DM,协议特征:协议假设用户缺省为需要接收数据周期性扩散剪枝协议比较简单较适合接收者分布比较密集的网络与单播路由协议类型无关,PIM-DM 扩散剪枝,组播源,接收者,数据向所有组播链路扩散,主机报告路由器加入组 G,没有接收者的链路进行剪枝,所有剪枝完成,PIM-DM 周期性扩散剪枝,组播源,接收者,数据一直向接收者转发,主机周期性报告路由器加入组 G,没有数据的路由器出现超时,数据周期性扩散,没有接收者的链路进行剪枝,所有剪枝完成,PIM-DM 嫁接,组播源,接收者,直连路由器向上游嫁接,新增主机报告路由器加入组G,上游路由器开始转发数据,接收者,PIM-DM 剪枝,组播源,接收者,直连路由器停止转发数据,主机报告路由器离开组G,上游路由器停止转发数据,接收者,直连路由器向上游剪枝,又一个主机离开,PIM-DM 一个组多个源,组播源,接收者,新增一个组播源,接收者,组播源,PIM 协议稀疏模式,Protocol Independent Multicast Sparse Mode,PIM-SM,协议特征:协议假设用户缺省为不需要接收数据在网络中选举核心节点RP(Rendezvous Point),通过RP连接组播源和接收者接收者主动加入协议较DM复杂较适合接收者分布比较稀疏的网络与单播路由协议类型无关,PIM-SM BSR/RP 选举,配置候选BSR、候选RP,C-RP,C-RP,C-RP,C-BSR,C-BSR,C-BSR认为自己是BSR,BSR,BSR,BSR开始扩散BSR消息,路由器选举出BSR,C-RP向BSR通告,BSR周期性扩散C-RP列表,注意:BSR只扩散C-RP列表,RP由各路由器自己计算,注意:RP有服务范围,网络中可以有多个RP进行分担,PIM-SM 共享树,接收者,RP,主机报告路由器加入组G,直连路由器向RP建立(*,G)共享树,新增主机报告路由器加入组G,接收者,RP选举完成,PIM-SM 源注册,接收者,RP,DR路由器将数据封装后向RP注册,RP将注册报文解封装后沿共享树转发,RP向源加入,停止注册,接收者,新增组播源,组播源,X,PIM-SM SPT切换,接收者,RP,DR发起向SPT切换,剪枝RPT树,SPT切换完成,接收者,RPT树,组播源,注意:SPT切换不是必须的,可以配置切换阈值,超过阈值即切换,PIM-SM 接收者离开,接收者,RP,DR发起共享树剪枝,又一个接收者离开,接收者,一个接收者离开,组播源,没有数据的路由器出现超时,为防止RP上的(S,G)信息超时,DR周期性向RP注册,X,PIM SSM,Protocol Independent Multicast Source-Specific Multicast,PIM-SSM,协议特征:协议不进行源发现,由接收者通过IGMPv3告知源组信息协议简单非常适合一个组只有一个源的应用模型,其他应用存在局限性与单播路由协议类型无关,PIM-SSM,接收者,直连路由器向源加入,主机通知路由器加入源组S,G,向接收者转发数据,DVMRP,Distance-Vector Multicast Routing Protocol,DVMRP,协议特征:最早的组播路由协议协议包含一个类似RIP2的单播路由协议协议假设用户缺省为需要接收数据周期性扩散剪枝较适合用户分布比较密集的网络,组播基础协议用户发现协议组播路由协议组播源发现协议域内由组播路由协议完成源发现;跨域运行组播时,由MSDP协议完成组播源信息的收集发布,提供给组播路由协议PIM-SM组播拓扑分离协议二层组播协议组播协议典型组网,MSDP,组播源A,组播源B,组播网络APIM-SM,组播网络BPIM-SM,组播源信息,组播基础协议用户发现协议组播路由协议组播源发现协议组播拓扑分离协议组播受单播网络拓扑限制。通过提供一套专门供组播进行RPF检查的单播路由,可以实现组播网络与单播网络拓扑的分离,组播静态路由MBGP组播扩展.二层组播协议组播协议典型组网,组播静态路由,组播网络B,组播网络A,组播网络C,组播网络D,组播源A,MBGP,MBGP,接收者,组播基础协议用户发现协议组播路由协议组播源发现协议组播拓扑分离协议二层组播协议IGMP Snooping 用于发现二层 VLAN 中的组播接收者,控制组播数据在二层 VLAN 的按需转发。组播协议典型组网,(01:00:5e:xx:xx:xx,port 1,port 2,port 4),组播数据流,IGMP Report,IGMP Query,IGMP Report,IGMP Snooping 窃听路由器端口接口所有组的数据主机端口接收特定组的数据,(01:00:5e:xx:xx:xx,PIM Hello,port 1,port 2,port 4,),IGMP Query,IGMP Query,窃听路由器发送的 PIM Hello 报文识别路由器端口,窃听主机发送的 IGMP REPORT 报文识别主机端口,IGMP Report,组播基础协议用户发现协议组播路由协议组播源发现协议组播拓扑分离协议二层组播协议组播协议典型组网域内组播方案域间组播方案组播隧道方案,组播协议典型组网(一)域内组播,Internet,PIM,PIM,IGMP,L3,L3,L2,L2,L2,L2,L2,路由器,IGMP,IGMP Snooping,.,.,.,.,组播协议典型组网(二)域间组播,IDC,组播源,组成员,组成员,骨干网PIM-SM,城域网,城域网,城域网,DR,DR,DR,RP,RP,RP,RP,RP,组播报文流,物理链路,MSDP对等+eMBGP对等,MSDP对等+iMBGP对等,RP,组播协议典型组网(三)组播隧道,使用组播静态路由,将组播报文导向到隧道,不影响单播路由的转发,使用隧道跨越不支持组播的网络有时组播传送路径上有些设备不支持组播路由协议,此时可以使用三层隧道将其短路,在隧道中运行组播。,不支持组播的设备或网络,组播网络A,组播网络B,组播网络C,3层隧道(GRE.),PIM,PIM,PIM,PIM,PIM,PIM,组播基本概念组播基础协议组播应用,组播应用组播适用于将相同的数据从一个主机同时传送给多个接收者的应用,如:,视频、音频会议传统的单播视频、音频会议系统,网络电视将电视节目或其他媒体节目转换为流媒体,在宽带网络上进行播放,金融信息(股票行情)发布在全国性的网络上提供各种信息发布服务,由用户选择接收,宽带网络交互式游戏.,组播应用必须面对的问题组播通信模型中,组播源对于接收者的情况一无所知,通信方式只能是UDP的。,不可靠的报文传送应用程序必须能够容忍个别报文的丢失,报文的重复和乱序应用程序必须能够识别重复报文,对一定时间内的报文进行重排序,没有拥塞检测与避免机制UDP的固有特性,因此网络必须保证足够的基本带宽提供给组播数据流或者提供优良的QoS服务,组播应用必须面对的问题组播是开放的,组播源对于接收者的情况一无所知,组播源可以不属于组播组。,支持组播的宽带IP网络,只要接个端口上网就能看到精彩节目,多开些组播频道,电信公司管不着!,别的ICP节目办的不错,看我灌点垃圾,让人点不了!,支持组播的应用软件Windows Media ServerReal ServerIP/TVViewPoint MediaCentre,?,Questions&Comments,谢谢!,