IP网络视频解决方案
  

    

   

IP Multicast技术简介

概述

  随着个人计算机性能的不断增强,多媒体在桌面电脑的应用日益普及。而随着计算机网络性能的不断增强,现在,多媒体技术已开始使用在计算机网络领域。例如基于计算机网络的实时音频和视频会议,利用计算机网络传输存储的或录制的图象和语音的多媒体数据。

  传统意义上,网络基本任务是可靠的数据传输,例如,文件传输,它可以可靠地将文件从一点传送到另一点,在传输过程中数据包比例不均匀、次序颠倒、到达快慢对文件没有影响。而多媒体对网络要求却不这么简单。首先多媒体要求网络不能有太大的延迟,传输多媒体数据包到达用户端的时间必需在允许范围内,传输时还要保证数据的实时、其次多媒体需要在网络上传输相当大的数据,这些数据会占用大量的网络基本带宽。

Unicast Broadcast 和 Multicast

  今天的网络上,大部分通信流量是点到点传输,这种传输方式称为Unicast:即数据包的一个独立拷贝是从源机器通过网络发送到需要它的一个特定客户。当然,目前的网络也支持广播(Broadcast),当数据包被广播到网络上时,因为是广播方式,数据包的单独一个拷贝将发送给网络上的所有用户。如果同样的数据需要传送给网络中的一部分用户时,使用上述两种传输方式会非常浪费网络带宽。因为使用Unicast发送时,需要将数据包复制多个拷贝,以多个点对点的方式分别发送到需要它的那些用户。如果使用Broadcast方式发送,数据包的单独一个拷贝将发送给网络上的所有用户,而不管用户是否需要。另外,广播还会使不需要它的计算机性能下降,因为不管是否需要,客户端计算机必须处理广播数据包。

  Multicast(多址组播)吸收了上述两种发送方式的长处,克服了上述两种发送方式的弱点,将数据包的单独一个拷贝发送给需要的那些客户。Multicast不会复制数据包的多个拷贝传输到网络上,也不会将数据包发送给不需要它的那些客户。Multicast保证了网络上多媒体应用占用网络的最小带宽。下图是在一个1.5Mbps的MPEG-I视频数据流在网络发送时两种方式占用带宽的示意:
MBONE、LAN、WAN

  今天,IP Multicast应用最为广泛和最知名的是Internet Multicast Backbone,简称Mbone. Mbone实际上是Internet上的一个虚拟的网络,它是由Internet上多个部分组成,这些部分有时称为多址广播岛(Multicast Islands),在Internet上这样的岛很多.在这个岛内运行IP Multicast协议,可以进行多址组播。在Multicast Islands之间网络一般不允许IP Multicast。如果需要将一个Multicast Islands的组播传送到另一个Multicast Islands,需要建立一个Unicast“隧道”,即将Multicast数据包封装到Unicast数据包中,穿过不支持IP Multicast的网络,到达另一个Multicast Island,然后解封成Multicast数据包,如下图所示:

  Mbone早在1992年就开始发展,目前已发展到几千个子网。而且发展了很多应用,例如在Mbone上传输实时的音频和视频以现场转播IETF(Internet工程师任务组)的会议、美国太空总署航天飞机在太空中的工作情况,滚石公司的音乐会等。Mbone已经成功展示了使用IP Multicast技术在网络上传送多媒体数据的实用性。

  IP Multicast涉及的硬件主要指支持IP Multicast的路由器、交换机和相关的软件。目前IP Multicast技术已经非常成熟,企业和单位可以利用IP Multicast的好处,在自己的LAN和WAN进行多址组播。我们利用多址组播的高效性,给那些成百上千的需要相同信息的用户发送。可以说,Multicast是将信息发送给广大听众的最好方法。例如在拍卖中,拍卖的地点和所有的过程都可以通过网络利用Multicast广播,还有产品的介绍或重要的记者招待会也可以利用Multicast广播。Multicast有时也可以支持双向的通讯,例如在广阔分散的地方设置包括音频和视频的会议同时提供一个白板。

IP Multicast 如何工作

  Multicast是一种“推”(Push)模式的通讯,就象收音机或电视机的广播,谁想接收Multicast,只要调节设置自己的工作站到需要的频道。在计算机网络上收听多点组播的时候,用户只须简单地指示计算机的网卡监听一个特殊的多址组播地址(IP Multicast Address)。而Multicast的广播端并不需要知道谁在接收这个广播。

IP Multicast需要下列的一些机制支持:

客户计算机必须有一个方法能知道什么时候能收听何种的多址组播。
客户计算机必需保证有一个方法能发出接收多址组播的“信令”。
网络必须有一种方法将多址组播数据包路由给那些需要接收这些数据包客户计算机。


发布有关多址组播的信息

  用户在接收多址组播之前需要得到多址组播的一些可用性信息。在Mbone上,通常使用一个被称作SDP(Session Description Protocol)的协议进行有关多址组播的信息的发布。这种协议提供给客户端接收地址组播所需要的所有信息,包括组播的名字、内容、组播的时间、媒体类型(音频、视频、文本或其他)以及组播所使用的IP地址、端口和协议。这些公告信息是通过一个人所共知和约定的IP地址和端口组播出来,用户端通过对话工具接收这些信息。

 除了SDP协议,有关Multicast的信息还可以通过另外的方式进行公告。例如,在企业网中,有关Multicast的信息能利用Web主页公告,用户端机器可以通过嵌入Web主页的控件接收Multicast数据。

加入Multicast组

  如果用户想接收Multicast数据包,必须发出“信令”,才能加入到Multicast组中。IGMP(Internet Group Management Protocol)协议可以完成这种功能。

  Multicast的组有许多优点。组是动态的:一个用户可以随时加入或退出,不需要事先建立或解散一个组。当组里没有成员的时候,这个Multicast组就从网络中消失。组的规模扩大很简单,越多的用户加入到一个Multicast组,新加入的用户就越靠近已建立好的数据组播路径。

  当用户加入一个组的时候,需要两个步骤:首先用户向本地的路由器发送一个IGMP信息,通知路由器这个用户要接收发送到这个组中的Multicast数据。其次用户需要设置自己的IP处理进程和网卡,来接收这个组的组播数据(数据包的目的地地址为这个组的组地址,端口号为一特定的号码)。Multicast使用的是D类地址,范围是224.0.0.0 到239.255.255.255。D类地址会自动映射到IEEE-802以太网多址广播地址,这样简化了IP Multicast在以太网上的实现。如果一个特定子网中的最后一个用户离开这个Multicast组,路由器将停止向这个子网发送组播,原先占用网络带宽将被释放掉。

Multicast 的路由

  大部分网络都支持Multicast的路由协议。几年以前主要的路由器厂商就已经开始将Multicast的支持加到他们的路由器中。Multicast的支持也可以简单的通过软件升级解决。目前,大部分的路由器、三层交换机厂商如Cisco、3Com、Nortel、Cabletron等的都能支持IP Multicast协议,而且性能非常高,为Intranet中高质量的IP Multicast应用(如视频广播应用)提供了很好的网络基础。当然,在目前的许多企业网中,以三层交换机为骨干,二层交换机连接在三层交换机上,用户计算机再连接在二层交换机上。当多址广播数据包从三层交换机发送到二层交换机时,需要二层交换机支持IGMP Snooping(IGMP监测),以避免组播数据包发送到二层交换机的所有端口。

  今天使用较多的Multicast路由协议是:DVMRP (Distance Vector Multicast Routing Protocol )、MOSPF (Multicast Open Shortest Path First Protocol)、PIM (Protocol Independent Multicast)。这些协议的任务是在网络上创建有效的多址组播路径。Multicast路由协议使用灵活的算法实现组播的高效。

  通过设置路由器的多址组播协议,也可以控制多址组播的传送,例如,关掉路由器一个端口的IGMP功能,那么,所连接的这个子网就不能从别的子网得到多址组播数据。

Multicast数据的传输路径

  一个最有效的组播数据传输路径是指数据以最短的路径传送到需要它的用户端。如果数据被传送到别的网络,就会浪费其他网络的带宽。可以看到,多址组播传输路径是一个树壮结构,多址组播服务器在树根,Multicast的数据通过树的分支在网络传送,路由器的任务是将数据传送到其他分支上的路由器,最终送到等待数据的用户所在的子网上。路由器同时还会断开没有成员的分支,接入新加入成员所在的分支。路由器也能阻断发往本网的没用数据。

IP Multicast技术小节

  音频、视频在计算机网络的使用将是新一代网络多媒体通讯的主要应用。Multicast提供一个高效率的多媒体网络通讯的应用方法:

Multicast能够大大的减小多媒体应用占用的网络带宽
Multicast可取的优点是服务器不需要依赖硬件的升级
Multicast可取的优点是客户不需要依赖硬件的升级
新出的路由器或三层交换机都已支持Multicast技术,因此Multicast技术在网络的应用非常实用和最具成本效益。


 

  
 

 

  

   

<>  www.rosyou.com <>