组播技术发展研究
赵建立++陈建伟
摘 要:随着电子商务、网络会议、视频点播等网络应用的不断发展,网络中交互的各种数据、语音和视频信息越来越多,组播技术很好地满足了上述需求。文章叙述了组播协议的产生和发展过程,并对现行的关键技术进行了介绍。
关键词:组播;语音;视频;网络应用
1 组播技术的概念
当今流行的网络协议为传输控制协议(Transmission Control Protocol,TCP)/ 网络协议(Internet Protocol,IP),其对开放式系统互联(Open System Interconnection,OSI)协议模型进行了改进,最大的成功之处就在于简洁实用。人们应用最多的是点对点的单播通信模式,即数据包从一个源点发送到一个目的节点,与之对应的,报文从源节点发出,经过网络发送到一组接收者,称之为组播。
20世纪80年代初,斯坦福大学的一个博士生为他的导师设计分布式系统,在研究独立计算机之间的通信问题时发现,独立计算机最开始处于同一个网段中,通过二层组播进行通信。随着工作的深入研究,计算机需要跨越不同的网段进行通信,研究不得不设法在网络层解决通信问题。通过对开放式最短路径优先(Open Shortest Path First,OSPF)协议和路由信息协议(Routing Information Protocol,RIP)的研究,发现可以把OSPF协议进行扩充,经过一系列的改进,组播扩展(Multicast OSPF,MOSPF)和距离组播适量协议(Distance Vector Multicast Routing Protocol,DVMRP)誕生了,再经过几个版本的修订最终成为Internet组管理协议(Internet Group Management Protocol,IGMP)。这些研究成果是组播技术的基础框架。
2 组播技术的基本特点及相关术语
IP传播分为3种方式,即单播、组播和多播。单播方式即点到点传播,数据包使用单播地址发送到目的地,N个接收者需要源发送N份报文,并且为每份报文建立单独的通道。单播传播的缺点为当用户的数量增加时,网络中将出现多份相同信息流,到每一个接收者,对处理器资源和带宽都是很大的浪费,如图1所示。
广播方式即数据包使用广播地址发送,报文被复制成多份发送到各个网段,不管接收者是否有需求,报文都会到达网络中的每个用户,如图2所示。广播方式的缺点是极大地浪费了网络带宽,适合用户密集的网络。
组播又称为多播,是指IP数据从一个或者一组源发出,被转发到一组特定的接收者。单播是点对点的转发数据,有多少接收者就需要由源发送多少数据,广播是不论接收者是否接收数据,源都要在整个网段进行转发,而组播的传输方式介于单播和广播之间,其既不指定接收者,也不将数据发送到网络的所有用户,如图3所示。发送者不需要知道接收者的位置,只需要将数据发送到指定的组播地址,由网络层完成余下的工作。组播的优势在于发送者只发送一份数据,并且发送者不必对接收者的信息进行维护。
理解组播技术,需要了解一下几个基本概念。
最短路径树(Shortest Path Tree,SPT):也叫源树,是指报文从源到接收者所经过的路径为最短路径。最短路径对于不同的网络层协议也不同,因为不同的网络层协议有不同的管理距离和度量值,所以这个最短在不同的路由协议下意义也不同。
共享树(Rendezvous Point Tree,RPT):指来自不同的源地址,首先汇聚到称为汇聚点的树根,由汇聚点在发送到接收者,共享树的特点是不同的源共享汇聚点到接收者这段路径,节约了带宽。
反向路径转发(Reverse-Path Forwarding,RPF):路由器针在单播路由表中查找组播报文源地址的路由,如果该路由的出口就是组播报文的入接口,则RPF检查成功。该接口成为RPF接口。RPF检查的目的是防止组播报文环路。对于最短路径树和共享树检查的地址有所不同,最短路径树检查的地址是组播源的地址,而共享树检查的地址是汇聚点的地址。
组播路由表:和单播路由表类似,组播路由表用于组播数据的转发。由于组播转发策略比较复杂,所以组播路由表包含的信息比单播路由表多,如:源地址、组地址、入接口、出接口列表等信息。
3 组播技术的发展历程
3.1 组播架构的形成
1985年9月,Steve与其导师提出了支持IP组播的扩展模型,明确了Internet 组管理协(Internet Group Management Protocol,IGMP)概念。12月,Steve将此概念提交给了IETF,而后经过两次更新该组播模型,重新定义了IGMP的报文类型。IGMP模型只定义了一个IP网段内IP主机如何接收和发送组播报文,而组播报文跨越不同网段的转发没有定义,此方面的工作已经被独立为组播路由技术。1989年8月,RFC1112作为IGMPv1的规范被广泛接受,这是组播发展历程中的一个重要里程碑。
3.2 组播路由技术的发展
1992年,研究者对OSPF协议进行了扩充以支持IP组播,又过了两年,MOSPF协议被研究出来,并被定义为标准化。该文档描述了对OSPF版本2的扩展,通过增加新的链路状态广播(Link-State Advertisement,LSA)支持SPF算法。
1993年,研究者提出了基于核心树的组播路由协议技术,该技术不再基于源在网络中构建最短路径树,而是创建一个虚拟的汇聚节点,到相同目的地组地址的数据包流向汇聚节点,再由汇聚节点转发到最终用户。
随着组播路由协议的不断发展,研究者提出了一种与单播路由协议无关的组播协议—域间组播路由(Protocol Independent Multicast,PIM)。该协议非常明确地指出与网络层运行何种路由协议无关,PIM只关心接收者和组播源的相关信息,不需要对网络层的路由信息进行维护,不仅降低了路由的复杂性,而且减小了设备资源。在研发PIM的过程中参考了以前的组播技术和转发方式,将组播分为密集模式(Dense Mode,DM)和稀疏模式(Sparse Mode,SM)。密集模式采用推送的方式,在网络中周期性地进行泛洪和剪枝,而稀疏模式是在网络中创建一个汇聚节点,组播源向汇聚节点注册,通过最短路径树传送流量,接收者通过直连路由器向汇聚节点加入,利用共享树转发组播流量。
PIM-DM和PIM-SM技术的成功,使得以前的技术基本被淘汰。但是PIM仍然是一个区域内的技术,而域间组播协议解决了组播源和接收者不在同一个区域的情况,该协议通过策略控制对源的信息进行发布,也可以应用在域内满足某些特殊的需求。MSDP的应用场景中一般都会有PIM-DM和PIM-SM。
1997年,随着RFC2236被IETF批准,IGMPv2标准形成了,IGMPv2版本对IGMPv1版本进行了兼容,并且对IGMPv1的版本进行了改进,例如增加了主机离开的消息报文,当主机离开时,会发送离开消息报文,对响应时间进行了改进,并且还可以对指定组进行查询。
伴随着IPv6技术的发展,在制定IPv6地址体系标准的同时,对IPv6协议的主机组播协议也进行了相应的升级,用MLDv1协议取代了IGMPv2协议,MLDv1协议加入到了组播协议。
3.3 指定源组播和IGMPv3协议
随着对组播协议的研究,一种新型的服务模型被提出,这种模型被称为源特定组播(Source Specific Multicast,SSM),而老的模型被称为ASM。模型SSM可以同时对特定源和目的组提供服务,由于应用层通常需要组播源地址和组地址,所以这对于大多数数据流量应用更方便和高效。在跨域组播的应用中,也不再需要MSDP去维护活动员的信息,但是需要对IGMPv2进行升级,而升级的IGMPv3解決的就是可以指定组播源。同时,组播侦听者发现(Multicast Listener Discovery,MLD)协议的版本也升级到版本2,同样解决了相同的问题。
4 结语
组播技术是在网络中的应用越来越广泛,在很多场景下具有不可替代的优势,组播技术可以成倍地节约网络带宽,这非常符合建设节约社会的要求。本文可以帮助读者对组播技术有一些简单的了解,为深入学习组播技术提供了入门指导。
[参考文献]
[1]董庆阳,李毓麟,谢峰.IP组播技术[J].数据通信,1998(3):18-21.
[2]LAWRENCE B,陆雪莹,蒋慧.TCP/IP详解卷2:实现[M].北京:机械工业出版社,2000.
[3]李炳彰.IP组播技术研究与实现[J]无线电通信技术,2005(1):32-35.