IETF有关Internet上多媒体会议系统的相关协议

发布时间:2005-03-06 作者:卢官明 Lu Guanming 阅读量:

1 引言

    电视会议是近年兴起的一种通信方式。随着技术的进步,电视会议的发展可以划分为4个浪潮:第1个浪潮是拨号群组电视会议系统;第2个浪潮是基于ISDN的电视会议系统;第3个浪潮是LAN上的组播电视会议系统,它被设计成多用户参与方式,使用户加入或退出会议变得非常简单。随着ITU-T H.323标准的正式推出以及LAN的迅速普及,基于LAN的组播电视会议系统是现今最具发展潜力的;但随着Internet在全球的迅猛发展,基于Internet的多媒体会议系统将成为第4个浪潮,也是未来最大的一个浪潮。虽然网上传输目前还需要面对时延、带宽、数据安全、服务质量(QoS)等问题,第4个浪潮还未来到,它的许多特征仍未被完全了解,但很显然,它具有许多LAN产品的特点,同样是为多用户参与设计的。

      为了解决Internet上多媒体会议系统所面临的问题,Internet工程任务组(IETF)先后制定了许多协议,如用于传输层的实时传输协议(RTP)和实时传输控制协议(RTCP)、用于会话管理的会话描述协议(SDP)、会话发布协议(SAP)和会话启动协议(SIP)等等。值得指出的是,本文所述的多媒体会话是指多媒体的发送方和接收方以及从发送方流向接收方的数据流的集合,而多媒体会议是指两个或多个正在通信的客户以及通信所用软件的集合。多媒体会议是多媒体会话的一个例子。

 

2 IETF 简介

      IETF是由网络设计者、研究者、运营者及众多厂商组成的开放式国际团体,是Internet 体系结构委员会(IAB)在协议设计、开发及标准化等方面的“臂膀”。

      IETF的实际技术工作由其下设的工作组来完成,大部分工作都通过邮件列表(mailing lists)来处理。IETF每年举行3次会议。目前IETF下设126个工作组,每个工作组都有一个专题,如Internet传真、IP电话、TCP实现、IP安全协议、资源分配协议、超文本传输协议(HTTP)等等。其中MMUSIC(Multiparty MUltimedia SessIon Control)工作组的主要任务是开发Internet标准track协议以支持Internet上多媒体会议的会话(session),重点开发支持组播干线(Mbone)上的松散控制型会议的一系列协议,但也确保开发出的协议可通用于管理紧密控制型会议的会话。至今,MMUSIC已起草了以下协议:

  会话描述协议(SDP)和会话发布协议(SAP)——发布会话描述;

  SAP安全——提供会话发布的安全;

  实时流协议(RTSP)——控制实时数据的点播递交;

  会话启动协议(SIP)——启动会话与邀请用户;

  简单会议控制协议(SCCP)——管理紧密控制型会话。

MMUSIC工作组在起草协议过程中,与多媒体会议有关的其他IETF工作组及ITU标准团体、工业标准化组织等密切联系,共同协作,以确保不同标准间的互操作性(如SIP/SAP/SDP与ITU-T H.323、H.332间的互操作性)。

 

3 Internet多媒体会议协议栈

     Internet环境下的多媒体会议是指同步(或所谓“实时”)的会议,包括音频/视频通信以及诸如白板等应用的共享工具。演进到Internet上的多媒体会议的体系结构是很通用、很开放的,可以允许引入新的媒体和新的应用。作为最简单的情形,它也允许两个人仅通过声音来通信,所以它也包括IP电话。用于Internet多媒体会议的协议栈如图1所示。下面就对IETF的有关协议分别进行介绍。

 

3.1 会话描述协议

     在Internet组播干线上,会话目录工具用于发布多媒体会议以及传递会议地址和参加该会议所必需的特定工具信息。SDP就是用来描述多媒体会话的协议,用于会话发布、会话邀请以及其他形式的多媒体会话启动。会话描述是一个明确定义的格式,用于传递足够的信息(包括组播地址、端口、媒体格式和会话次数等)以便用户发现并参与一个多媒体会话。

     Mbone是支持IP组播的Internet的一部分,所以允许有效的多对多通信,它广泛地应用于多媒体会议。Mbone上的多媒体会议通常不必要求会议成员是紧密协调的,Mbone站上的用户只要知道会议的组播组地址和用于接收会议数据流的UDP端口就可以接收一个会议。

     会话目录有助于多媒体会话的发布,并且向期望的参与者传送相关的会议建立信息。SDP就是被设计成向接收方传送这些信息,它纯粹是一种会话描述的格式(它不包括传输协议),在不同的场合可采用不同的传输协议,如包括SAP、SIP、RTSP、HTTP、SMTP等等。与组播会话目录相比,SDP可适用于更广的网络环境和应用场合。然而,SDP并不打算支持会话内容或媒体编码的协商。

     使用SDP的一种常见方式是客户通过使用SAP周期性地向一个众所周知的组播地址和端口组播一个SAP分组来发布一个会话;其它的方法还包括电子邮件和WWW等等。

     开发SDP的目的是为了传递有关多媒体会话中媒体流的信息以允许某个收到会话描述的接收方能够参加该会话。尽管SDP很通用,可用来描述其它网络环境中的会议,但它主要用于Internet。在Internet环境下,多媒体会话被定义为存在一段持续时间的媒体流的集合。这些媒体流可以是多对多的媒体流,会话活动的时间不需要连续。在此环境下,SDP有两个基本的用途:其一是作为通知会话存在的手段;其二是作为传递足够信息的手段,以便用户能加入并参与会话。在单播环境下,可能只涉及到后一种用途。因此,SDP传递的信息包括:

    会话名称和目的;

    会话活动的时间;

    构成该会话的媒体信息,包括媒体类型(视频、音频等)、传输协议(RTP/UDP/IP,H.320等)、媒体的格式(H.261视频,MPEG视频等);

    接收那些媒体所需的信息(如组播地址、端口等等)。

此外,由于参与会话所需要的资源可能受到限制,所以可能还希望包括一些额外的信息,包括:

    有关该会话所用的带宽信息;

    该会话负责人的有关联络信息。

    总之,SDP必须传递足够的信息,以便能加入会话并向可能需要知道情况的非参与者公布将被使用的资源信息。

 

3.2会话发布协议

     为了有助于组播多媒体会议和其他组播会话的公告,以及向预期的参与者传送相关的会话建立信息,可以使用分布式的会话目录。这样,一个会话目录的实例周期性地组播包含该会话描述的分组,这些公告被潜在的参与者接收,他们就可以使用会话描述来启动工具,参与该会话。

     SAP是用于处理组播和单播会话描述分组的协议,它定义了会话目录传输所使用的封装分组的格式。SAP发布器周期性地将会话发布分组组播到一个众所周知的组播地址和端口上,它不知道任何SAP监听者的存在与否,在标准的尽力而为的UDP/IP语义上也不提供额外的可靠性。组播会话发布分组所用的scope要与它正在发布的会话的scope相同,以确保会话发布分组的接收方也是所发布的会话的潜在接收方。

     发布会议会话使用SAP协议,周期性地向一个众所周知的组播地址和端口上组播描述特定会议的会话发布分组。SAP所使用的TTL(IPv4)或scope(IPv6)应该和它正在发布的会话的TTL(IPv4)或scope(IPv6)相同,以确保收到该会话发布分组的接收方也能够收到所发布的会话的通信流量。为了接收会话发布分组,接收方可以在一个众所周知的组播地址和端口上进行监听。

     会话使用SDP来描述。如果某个接收方收到一个会话发布分组,则可简单地解析该分组中的会话描述净荷,然后显示该用户的会话信息,以便接收方了解目前的会话状况。接收方选择想要加入的会话,并向该会话的传输地址(组播地址加端口号)发出请求加入的申请。

 

3.3会话启动协议

     并非所有的会话都被发布,即使对于那些被发布的会话也可能需要一种机制以明确邀请某个用户加入某个会话。无论是松散控制型的会话还是紧密控制型的会话,都需要这样一种机制,尽管邀请系统必须规定用于加入会话的机制。SIP提供了一种机制,借此可以邀请用户参加一个会话。SIP并不关心会话是否已经进行,还是正在创建,也不关心会话是小型的紧密控制型会话还是大型的广播式会话,它仅及时地向用户递交邀请,并提供足够的信息使得他们能知道将参加什么样的会话。

     SIP是一个应用层控制(信令)协议,用于创建、修改和终止有一个或多个参与者的多媒体会话或呼叫。这些多媒体会话包括Internet多媒体会议、远程教学、Internet电话和类似的应用。SIP是一个基于文本的协议,类似于HTTP和SMTP,用于启动用户间的交互沟通会话,这些会话包括语音、视频、闲聊、交互游戏和虚拟现实。会话中的成员可以通过组播或单播关系网或者通过两者的组合来进行通信。

     SIP既可以邀请人,也可以邀请“机器人”(如媒体存储设备)。会话的发起者不必是被邀请的会话成员,媒体和参与者都可以加到一个已存在的会话之中。用来创建会话的SIP邀请数据携带会话描述,这些会话描述允许参与者能够商定一组兼容的媒体类型。SIP通过代理和重定向请求到用户的当前位置来支持用户的移动性。用户能够登记他们的当前位置。

     SIP不受任何特定的会议控制协议的限制,它被设计成与低层的传输协议无关并能够扩展附加的能力。

     SIP可用来启动会话以及邀请成员到已用其它方法发布和建立起来的会话中。会话可以用诸如SAP、电子邮件、新闻组、Web页或目录等组播协议来发布。SIP透明地支持名称映射和重定向服务,允许ISDN的实现和智能网电话用户业务。SIP支持建立和终止多媒体通信的5个方面:

    用户位置:确定通信中所用的端系统;

    用户能力:确定将要使用的媒体和媒体参数;

    用户的可达性:确定通信中占线的被叫方的意愿;

    呼叫建立:被叫方和主叫方呼叫参数的建立;

    呼叫处理:包括呼叫转移和终止呼叫。

     SIP也可以利用多点控制单元(MCU)而不是组播来启动多方呼叫。连接公共交换电话网(PSTN)的Internet电话网关也可以使用SIP来建立呼叫。SIP也可以和其它的呼叫建立和信令协议一起使用。

     SIP不提供诸如发言权控制或投票表决等会议控制业务,也不规定如何管理会议,但可用SIP来引入会议控制协议,SIP不分配组播地址。SIP可以邀请用户到有资源预留或无资源预留的会话中,SIP不预留资源,但可将预留资源所必需的信息传递给被邀请的系统。

 

3.4实时流协议

     RTSP是一个应用级协议,用于控制具有实时特性的数据传送。RTSP提供了一个可扩展的框架,以使诸如音频和视频之类的实时数据的点播传送成为可能。数据流可以包括现场实况传送数据,也可以是存储的剪辑片段。该协议用于控制多路数据传送的会话,提供一种选择传送信道(如UDP、组播UDP和TCP)的方法,并提供一种选择基于RTP的传送机制的方法。

     RTSP建立和控制单个或几个连续媒体(如音频、视频)的时间同步流。一般来说,它并不传送连续媒体本身,尽管连续媒体流与控制流可能交织在一起。RTSP可看作是多媒体服务器的“网络遥控”。

     RTSP没有连接的概念,而由服务器来保持一个会话。RTSP会话不受诸如TCP连接之类的传输级连接的限制。在RTSP会话期间,RTSP客户可以打开和关闭许多连接到服务器的可靠的传输连接以发出RTSP请求。另一方面,它也可能使用诸如UDP这样的无连接传输协议,由RTSP控制的流可能使用RTP。但RTSP的操作不依赖于用来承载连续媒体的传输机制,其协议有意在句法和操作上与HTTP相似,以使HTTP的扩展机制在大部分情况下也能加到RTSP。

RTSP具有以下特性:

    可扩展性:新的方法和参数可以很容易地加到RTSP;

    句法容易分析:可以用标准的HTTP或MIME句法分析程序进行句法分析;

    安全:RTSP可利用Web的安全机制和所有的HTTP认证机制,也可以利用传输层或网络层的安全机制;

    与传输无关:RTSP既可使用不可靠的数据报协议(UDP)、可靠的数据报协议(RDP,不常用),也可以使用可靠的流协议(如TCP);

    多服务器能力:每个媒体流能够保存在不同的服务器中,客户机可以自动地与不同的媒体服务器建立几个并发控制的会话,媒体间的同步由传输层来完成;

    录制设备的控制:该协议能够控制录制和播放设备(如VCR);

    流控制和会议启动的分离:将流控制与邀请某个媒体服务器加入某个会议这两者分开,只是由会议启动协议来提供或者能用会议启动协议来创建一个唯一的会议标识符。作为特例,SIP或H.323可用来邀请某个服务器加入某个会议;

    适合于专业的应用:RTSP通过SMPTE时间戳支持帧级的精度,以允许远端的数字编辑;

    与代理(Proxy)和防火墙很友好:应用层和传输层的防火墙很容易处理RTSP;

     与HTTP友好:RTSP在恰当的地方都借用HTTP的概念,使得现有的底层结构都可以利用。这些底层结构包括PICS(Platform for Internet Content Selection)。然而,RTSP并不仅仅增加方法到HTTP,因为在大多数情形下控制连续媒体需要服务器的状态;

    适当的服务器控制:如果一个客户机能启动一个流,则它必须能够停止一个流。服务器不应该对客户机启动流而使得客户机无法停止这个流;

    传输协商:客户机在实际需要处理连续媒体流之前能够协商传输方法;

    能力协商:如果基本的特征被禁止,则必须有一些健全的机制,以便客户机能确定哪些方法不将被实现,这允许客户机能提供合适的用户接口。

 

3.5实时传输协议和实时传输控制协议

    RTP为具有实时特性的数据传送提供服务,是用来解决IP网上实时通信问题的一种技术方案。开发RTP的目的就是为了提供用于音频和视频这类连续媒体数据的应用层协议并且在会议工具之间提供协同工作的能力。RTP可以支持各种实时通信的应用,如同步的恢复、信号丢失的监测、安全保密和内容的识别等。RTP还具备一种时间戳与控制机制,可以实现带有定时特性的不同信息流之间的同步。它采用基于速率的流量控制机制,发送方采用与接收方约定的速率发送,可以保证发送方既不会使接收方产生“溢出”现象,也不会产生“欠载”现象。但是,RTP本身并不提供任何确保及时传送的机制或者其它的QoS保证,没有规定恢复丢失数据报的任何机制,而是依赖低层所提供的服务来完成这些功能。它既不保证传送,也不假定低层网络是可靠的并且按顺序传送分组。RTP无法解决资源预留和QoS控制问题,因此,它还要依靠资源预留协议来提供这方面的功能。RTP中所包括的顺序编号使得接收方能够复原发送方的分组顺序,但是顺序编号也可以用来确定一个分组在数据流中的恰当位置(例如,在视频解码中),而不需要按顺序解码分组。

    RTCP用于分发发送方和接收方统计信息以及与会者的详细信息,RTCP的功能包括QoS监控和拥塞控制、标识媒体间的同步、会话规模估计等等。

 

4 结束语

    IETF是一个致力于Internet 体系结构的演进以及促进Internet 发展的标准化组织,它与ITU-T的不同之处在于,ITU-T侧重于电信网,其成员由各国派驻,并包括一部分厂商代表,而IETF侧重于Internet,并且更加开放。IETF的标准化成果对Internet的发展起着重要的作用,而且随着电信网与计算机网的不断融合,IETF和ITU-T彼此之间的协作也在增多,有的IETF协议已被ITU-T接纳,如RTP协议就用在H.323中。因此,了解IETF的相关协议,无论对生产厂商还是一般的网络与通信技术人员,都是一种必要的技术储备。

 

 

(收稿日期:2000-03-04)

[摘要] 文章在简介IETF的基础上,分别介绍了有关Internet 上多媒体会议系统的相关协议,包括SDP、SAP、SIP、RTSP、RTCP等协议的基本内容及其应用。

[关键词] Internet工程任务组 多媒体会议 多媒体会话 协议

[Abstract] The Internet Engineering Task Force (IETF) is briefly in-troduced first,and then the ba-sic contents and applications of IETF's protocols for multimedia conferencing system on the In-ternet,such as SDP,SAP,SIP,RTSP,RTCP and other protocols are presented sepa-rately.

[Keywords] Internet engineering task force Multimedia conferenc-ing Multimedia session Pro-tocol