您好,欢迎访问三七文档
IP组播技术介绍一、组播技术概述二、组播的实现技术三、IGMP协议四、组播路由协议五、应用实例一、组播技术概述“试想一下,在一个点点对等的Internet上,假设你用自家的MIC录下的每一句话,可以被瞬间传递到世界上每个希望接听的用户,这是一件多么奇妙和激动人心的事。而做到这一切并不需要你拥有强大的服务器,而仅仅一台普通联网PC。”一、组播技术概述视频服务器×10×10×10单播Unicast视频服务器×10×10×10组播Multicast一、组播技术概述单播(unicast):“一对一”通信,源主机为每一个接收者都发一份拷贝。广播(broadcast):“一对多”通信,广播包被发往网络上的所有主机。这样会产生大量的数据报拷贝。组播(multicast):“一对多”通信,介于广播单播之间,源主机将同样的数据报发给多个接受者,但又不是网络中全部的主机。一、组播技术概述IP组播是介于单播和广播之间的一种分组传送形式,它既不指定明确的接收者,也不是将数据分发给网络上的所有主机。发送者不关心接收者所处的位置,只要将数据发送到约定的目的地址,剩下的工作就交给网络去完成。这样做的好处在于,发送者只产生一份数据,而不用为每个接收者分别复制一份,而且发送者不必维护接收者的信息。网络中的路由器设备必须收集接收者的信息,并按照正确的路径实现组播报文的转发和复制。互联网一、组播技术概述——组播的应用•视频、音频会议–传统的单播视频、音频会议系统…•网络电视–将电视节目或其他媒体节目转换为流媒体,在宽带网络上进行播放•金融信息(股票行情)发布–在全国性的网络上提供各种信息发布服务,由用户选择接收•宽带网络交互式游戏•...一、组播技术概述——组播的特点优点◦增强效率,控制网络流量,减少服务器和CPU负载◦优化性能,消除流量冗余◦分布式应用,使多点传输成为可能缺点◦组播应用基于UDP◦尽最大努力交付◦无拥塞控制◦数据包重复◦数据包的无序交付一、组播技术概述——组播的通信模型◦组播四要素:源发现接收者发现拓扑发现(组播路由器之间的拓扑、网络单播路由信息)分发树生成一、组播技术概述二、组播的实现技术三、IGMP协议四、组播路由协议五、应用实例二、组播的实现技术——组播体系结构应用程序/组播地址主机-路由器协议(IGMP)域间组播协议(MSDP;MBGP)域内组播协议(PIM;DVMRP)hostsrouters二、组播的实现技术——组播MAC地址11100000000100000000010111100IP组播地址后23位映射到MAC地址中32位IP组播地址48位MAC地址(以太网/FDDI)此5位地址不作映射,因此32个IP组播地址映射成一个MAC地址IANA将MAC地址范围01:00:5E:00:00:00~01:00:5E:7F:FF:FF分配给组播使用;这就要求将28位的IP组播地址空间映射到23位的组播MAC地址空间中,具体的映射方法是将组播地址中的低23位放入MAC地址的低23位。二、组播的实现技术——组播地址IP组播地址用于标识一个IP组播组。IANA把D类地址空间分配给组播使用,范围从224.0.0.0到239.255.255.255。①224.0.0.0到224.0.0.255被IANA预留,地址224.0.0.0保留不做分配,其它地址供路由协议及拓扑查找和维护协议使用。该范围内的地址属于局部范畴,不论TTL为多少,都不会被路由器转发;②224.0.1.0到238.255.255.255为用户可用的组播地址,在全网范围内有效。其中232.0.0.0/8为SSM组地址,而其余则属于ASM组地址;③239.0.0.0到239.255.255.255为本地管理组播地址,仅在特定的本地范围内有效,也属于ASM组地址。使用本地管理组地址可以灵活定义组播域的范围,以实现不同组播域之间的地址隔离,从而有助于在不同组播域内重复使用相同组播地址而不会引起冲突。二、组播的实现技术——常用的组播保留地址D类地址范围含义224.0.0.0基准地址(保留)224.0.0.1所有主机的地址224.0.0.2所有组播路由器的地址224.0.0.3不分配224.0.0.4DVMRP路由器224.0.0.5OSPF路由器224.0.0.6OSPFDR224.0.0.7ST路由器224.0.0.8ST主机224.0.0.9RIP-2路由器D类地址范围含义224.0.0.10IGRP路由器224.0.0.11活动代理224.0.0.12DHCP服务器/中继代理224.0.0.13所有PIM路由器224.0.0.14RSVP封装224.0.0.15所有CBT路由器224.0.0.18VRRP224.0.0.22所有IGMP路由器224.0.0.251所有组播DNS服务器…………二、组播的实现技术——树的概念组播分发树(SpanningTree):IP组播数据由源产生后向接收者传递的路径。因为可能存在一组接收者,组播报文每经过一个路由器都可能向着多个方向产生副本,所以这个传递路径就像一个不断生长的树,不断形成分叉。组播分发树有两种形式:有源树和共享树二、组播的实现技术——树的概念有源树:有源树的树根是组播信息流的来源,有源树的分支形成了通过网络到达接收站点的分布树。有源树以最短的路径贯穿网络,所以也称最短路径树SPT(ShortestPathTree)。来源1来源2ABDFCE接收者1接收者2符号表示:(S,G)S=来源G=组二、组播的实现技术——树的概念共享树:来自不同源地址,但目的地址相同的组播报文,在网络中使用同一个分发树转发。这样一个共享树的树根被称为汇聚点RP(RendezvousPoint)或者核心(Core),相应的树称为RPT或CBT。ABD(RP)FCE接收者1接收者2符号表示:(*,G)*=所有来源G=组(RP)PIM汇合点共享树二、组播的实现技术——逆向路径检查逆向路径检查(ReversedPathFordwardingCheck):组播转发采用一种特殊机制:组播包的转发不是基于IP包的目的地址的,而是用RPF检查决定是否转发和丢弃输入信息包。(对于SPT转发是按照源地址查找;对于RPT转发,使用汇聚点(RP)地址进行查找。)◦RPF检查的过程如下:路由器检查到达组播包的源地址,如果信息包是在可返回源站点的接口上到达,则RPF检查成功,信息包被转发如果RPF检查失败,丢弃信息包对组播包源地址的检查是通过查询单播路由表来实现的二、组播的实现技术——逆向路径检查S0/0S0/1S1/0接收者接收者组播数据包错误接口到达的组播数据包RPF检查失败,数据包从错误接口到达192.18.0.32二、组播的实现技术进一步观察:RPF检查失败数据从S0/1到达,RPF检查失败,路由器丢弃包S1/0来自192.18.0.32的组播数据网段接口192.18.0.0/16S0/0168.0.22.0/24S0/115.15.0.0/16S1/0S0/1S0/0S1/0二、组播的实现技术——逆向路径检查进一步观察:RPF检查成功数据从S0/0到达,RPF检查成功,路由器转发数据包S0/1S1/0来自192.18.0.32的组播数据S0/0S1/0网段接口192.18.0.0/16S0/0168.0.22.0/24S0/115.15.0.0/16S1/0二、组播的实现技术——二层组播技术——snooping在二层(Layer2)设备下,组播帧是作为广播转发的,这样容易造成组播流风暴,浪费网络带宽,这明显是与组播的思想相驳的。Snooping的作用便是解决这个问题的,它的工作过程如下:1.交换机“窥探”用户主机与路由器之间的交互报文,跟踪组信息及申请的端口。当交换机“窥探”到主机朝路由器发出的IGMPreport(请求)报文,交换机便把该端口加入组播转发表中;2.当交换机“窥探”到IGMPLeave(离开)报文时,交换机便把该端口从表中删除;3.路由器会定时发IGMPQuery报文,在收到IGMPQuery报文后,如果在一定的时间段内没有收到主机的IGMPReport报文,便把该端口从表中删除。二、组播的实现技术——snooping12345MAC转发表MAC地址端口0100-5e0a-0a0a1,2,5组播?没问题,我已经探取了转发表:二、组播的实现技术——组播转发表组播转发表:与单播路由表类似由很多条目(Item)构成,用于记录组播分发树在每个路由器上的状态,指导组播数据的转发。与单播不同的是,因为转发决策复杂,组播转发表项包括比单播更多的信息,比如:入口,出接口表,状态,定时器,上游地址等。RPT和SPT会产生不同的转发表项,不同的源也会产生不同的SPT表项。•组播转发表一般是一个四元组:{S,G,IIF,OIFs}S:源IP地址G:组IP地址IIF:入接口OIFs:出接口列表•组播路由一般有三种格式:(*,*,RP)只匹配RP(*,G)匹配GroupIP(S,G)同时匹配SourceIP和GroupIP二、组播的实现技术——组播转发表S1/0来自192.18.0.32的组播数据组播??S0/1S0/0S1/01、RPF检查、转发一、组播技术概述二、组播的实现技术三、IGMP协议四、组播路由协议五、应用实例三、IGMP协议IGMP(InternetGroupManagementProtocol)因特网组管理协议是主机与路由器之间唯一信令协议;RFC1112规定了IGMPV1(定义了基本的组成员查询和报告过程)RFC2236规定了IGMPV2(增加了组成员快速离开的机制)RFC3376规定了最新的IGMPV3(增加了成员可以指定接收或指定不接收某些组播源的报文等功能)三、IGMP协议——IGMPv1报文格式Ver:版本。表明IGMP版本,在IGMPv1中为1。Type:类型。IGMP类型为1说明是组播路由器发送的组成员查询消息;类型为2说明是主机发送的组成员报告消息。Unused:未使用。发送时被置为0,接收时忽略此字段。GroupAddress:组播组地址。组地址为D类IP地址。在查询消息中组地址设置为0,在报告消息中组地址为要参加的组地址。UnusedChecksumGroupAddress012301234567890123456789012345678901VerType三、IGMP协议——IGMPv2报文格式Type:报文类型。包括成员查询;版本1成员报告;版本2成员报告;离开消息。MaxRespTime:最大响应时间。实际中响应时间是配置值范围(1~25秒)内的一个随机值。缺省为10秒。GroupAddress:组播组地址:在普遍查询中为0.0.0.0;特定组查询和报告消息中为相应的组播地址。TypeMaxRespTimeChecksumGroupAddress012301234567890123456789012345678901三、IGMP协议——IGMPv3报文格式Type为0x11表示组成员查询消息Type=0x11MaxRespCodeChecksumGroupAddress012301234567890123456789012345678901ResvSQRVQQICNumberofSources(N)SourceAddress(1)SourceAddress(2)SourceAddress(N)三、IGMP协议——IGMPv3报文格式Type为0x22表示组成员报告消息Type=0x22ReservedChecksum012301234567890123456789012345678901GroupRecord(1)ReservedNumberofGroupRecords(M)GroupRecord(2)GroupRecord(M)三、IGMP协议——IGMPv3报文格式RecordTypeAuxDataLenNumberofSources(N)MulticastAddress012301234
本文标题:IP组播技术介绍
链接地址:https://www.777doc.com/doc-2879503 .html