微型机与应用
MICROCOMPUTER & ITS APPLICATIONS
2000 Vol.19 No.2 P.29-30




Multicast技术及其应用
师军
摘 要： 一种基于Internet的先进通信技术--Multicast技术，探讨了Multicast的基本结构、工作原理和通信模式，并提出了有待进一步研究的问题。
关键词： 直播 广播 选播 Multicast结构
　　如何有效地利用Internet上的信息资源以及在Internet上进行快速、可靠、安全的通信，一直是人们研究的重要课题。早期网络上的通信主要采用的是点对点直播(Unicast)方式和点对多点广播(Broadcast)方式。前者由于信息的传送仅在2个结点间进行，故信息传送效率低、适应面窄，对某些拓朴结构的网络还会出现严重的通信阻塞现象。后者虽然实现了信息的多路传送，提高了信息传送效率，拓宽了应用领域，但对复杂的Internet而言，如果将某信息同时发送至网上的所有结点，包括那些不想接收此信息的结点，则会浪费网络资源，经济性差；并且还要求网络具有很高的带宽，实现复杂。为此，人们提出了一种针对Internet的更为实用的通信技术--Multicast技术，即单点对多点和多点对多点选播(Multicast)方式。其特点是发送者可以根据需要有选择地发送信息给那些需要此信息的结点，与传统的Unicast方式和Broadcast方式相比，Multicast技术更有效和更经济，使用带宽较低、功耗小、规模合理，并且不随结点数的增加而导致网络拥挤。该技术把Internet变成了真正的广播媒体，是目前Internet上的主要通信技术，其应用前景十分看好。
1 Multicast结构和工作原理
　　Multicast多路选播技术强调有效地使用网络资源，采用分布式处理方法，由原结点发送信息沿着广播分布树（MCT）到达相关的目的结点［1］，图1给出了一种抽象的Multicast结构，该结构由以下部分组成：
　　1．原结点（发送者）。网络服务器或应用系统等，用于发送各类媒体信息。
　　2．目的结点（接收者）。主机或用户工作站等，用于接收信息。
　　3．分布树（MCT）。路由器、网桥、网关等，用于传播信息。
　　4．信息流。Multicast传播的媒体对象。
　　Multicast通信主要基于OSI参考模型的网络层、传输层和会话层，采用UDP用户报文协议传送信息。其传送原理是：首先由发送者把一则信息送入网络，然后由网络内部的路由器制做拷贝，沿分布树规定的路径将其传送到所需该信息的接收者那里。所有参加Multicast对话的路由器必须是多路的，当试图对不具备多路能力的Internet网区进行多路交叉通信时，必须在多路路由器之间建立通道（MCT），然后再发送信息。这种通信方式减少了通路阻塞、提高了信息传输效率，非常实用和经济。
　　目前，对于基于Multicast结构的通信，有待研究的问题包括：
　　1．如何快速建立1个源结点到多个目的结点或多个源结点到多个目的结点的信息传送通路，即快速构造分布树（MCT）。
　　2．每个源结点如何有效地使用自己的MCT或共享MCT。
　　3．如何有效地管理和维护MCT。
　　4．研究合理的算法在MCT中快速搜索目的结点。
　　5．如何组建Multicast小组，并对其进行动态管理。
　　6．在网区内增加、替换和删除Multicast结点对MCT的影响以及增大、缩小或删除MCT对整个系统的影响等。

图1　抽象Multicast结构

图2　Unicast Broadcast 与Multicast方式
2 Unicast Broadcast与Multicast
　　目前网络上的信息通信主要有3种类型［2］：Unicast、Broadcast和Multicast。它们分别应用于ATM的点对点网络、以太局域网和Internet网络。图2为基于3种通信技术的网络结构和信息传送过程。可以看出，在Unicast结构的网络中，发送者在某个时刻只能传送一则信息给众多的接收者中的1个。随着接收者的数量增加，网络交通问题就显得非常重要。在Broadcast结构的网络中，发送者同时发一则信息给网络上的所有用户，包括那些不想接收此信息的用户，因而不能有效地利用带宽和处理能力。Broadcast传输方式对于基于卫星传播的网络或其它类型的无线网效果较好。在Multicast结构的网络中，发送者发送一则信息到网络路由器，拷贝后再发送到预订者的局部路由器，最后由局部路由器传送到接收者站点。例如某公司有8个分支机构，其中3个分支机构请求总公司给予指示，则总公司通过自己的局部路由器把信息发入网中，由网络路由器拷贝后传到已预订该信息的3个分支机构的局部路由器，最后送到预订者站点。这里所有的路由器都具有Multicast能力，并由服务器中支持Multicast技术的网络协议管理。
3 Multicast通信模式及应用
　　Multicast通信通常在1组结点之间进行，这些结点构成了Multicast通信小组。所谓Multicast通信模式是指Multicast小组各成员之间的信息传送方式，一般分为以下几种：
　　1．协同通信模式（N*N）：表示多点到多点通信。在这种模式中，每个结点可将信息播送至Multicast小组中的所有其它结点，或接收来自其它结点的信息。在Internet上满足该模式的应用包括：复制和更新数据库、共享白板、远程学习、视频会议等。
　　2．传播通信模式（1*N）：表示单点到多点通信。在这种模式中，1个结点做为发送者把信息传送给N个结点。在Internet上，满足该模式的应用包括：对多个部门的实时信息传送、视频和音频广播、软件分布和升级等。Multicast技术大大加快了软件分布，例如使用Unicast技术传送1MB文件给256个用户需6个小时，而使用Multicast技术则仅需4分钟。 
　　3．集中通信模式（N*1）：表示多点到多点通信。该模式适用于数据采集的场合，即用户收集来自多个服务器的信息。
　　传播和集中方式的组合还可用于仿真客户／服务器通信。到目前为止，Multicast技术已用于任何支持TCP／IP协议的地面通信网络和卫星通信网络。随着Internet提供的服务种类和服务量的增加，Multicast技术将成为Internet上的一种服务标准。
师军（西安陕西师范大学计算机系710062）
参考文献
1，Simirnov M，Wolisz A．IP Multicast Routing through ATM Networks．Computer Communication，1998；20(6)
2，Lawton G．Multicasting：Will it Transform the Internet﹖． Computer，1998；31(7)
收稿日期：1999－09－15
