基于SIP的会议模型及其实现

基于SIP的会议模型及其实现∗
司端锋1,韩心慧1,邹维1,方跃2
1.北京大学计算机科学技术研究所网络信息安全工程研究中心,北京(100871)
2.西门子中国有限公司TDS-CDMA研究部,北京(100015)
E-mail:siduanfeng@icst.pku.edu
摘  要:介绍了基于SIP协议的会议模型,并实现了一种基于SIP的集中式多方实时通信系统实例:IP电话会议系统。
关键词:SIP,会议模型,IP电话会议系统
1. 引言
目前用于多方实时通信系统的信令协议主要有两大主流的标准,一是ITU的H.323协议;二是IETF的SIP协议。SIP借鉴了许多其它互联网协议如HTTP、SMTP的设计思想,是一种基于分布式控制、采用文本
汽车智能防盗系统
编码方式的信令协议,具有设计思想简洁、开放、移动性和扩展性支持好、终端设备具有良好的智能性等优势。SIP协议是位于应用层的控制(信令)协议,RFC3261将它的用途定义为“用于建立、修改和中止有多方参与的多媒体会话(会议)”,支持多种多方通信模型,但是SIP协议中并没有直接定义SIP的多方会话的功能,也没有提供SIP多方通信模型(即SIP会议模型)。由于SIP实时通信本质上是一个多方会议模型的应用(双方IP电话是多方实时通信和多方会议的一个特例),因此研究SIP的多方通信模型对SIP的应用是一个十分重要的问题。基于SIP协议开发IP多媒体通信系统是通信领域的研究热点。本文根据SIP协议的特点,分析了基于SIP协议构建网络会议系统可能的会议模型,并围绕服务器集中控制模型进行了较深入的分析,设计并实现了一种集中控制会议系统模型。
2. 基于SIP的会议模型
关于SIP会议(SIP Conference)的概念,在不同的场合定义不同,由于SIP协议是用于“多方多媒体会话进程”,因此,我们首先对SIP会议中的会议作一个界定:会议是指SIP多方会话的一个实例。典型的为一个多方实时通信系统的实例。根据这个定义,SIP协议的作用就是为SIP 会议提供信令控制。因此,我们把基于SIP协议的通信模型简单的称为SIP会议模型。由于SIP 协议是IETF指定的分布式多方实时通信的信令协议,没有规定中央控制和管理的组件。而H.323协议规定了多点控制单元MCU,可以进行集中控制和管理,二者各有利弊。比如,MCU可能成为网络瓶颈,但是,完全分布式缺少中央处理单元,使SIP会议缺少集中式管理,不利于会议的管理和扩展。因此,有必要对SIP协议进行扩
展,一个重要的问题是,在不对SIP协议本身做任何改变的情况下,增加基于SIP的实时通信的会议控制功能。SIP会议模型中,关于媒体的处理有两件重要的事情需要关注,一件是混音的决定与管理;二是混音动作的实施,根据这两件事情,可以将会议系统分成不同的类型。不少的文献也采用了这样的分类思路[1-4]。当然,对于会议模型的分类没有固定的规范和标准,本文在接下来的介绍中除了按照一定的分类方法介绍不同的会议类型外,同时也介绍了目前文献中提到的各种SIP会议模型。
本课题得到基金项目:教育部博士点基金资助项目(No. 20040001050)的资助。
2.1 会议模型及分类
一种常见的分类方法是把SIP 会议模型分为三类,分别是自组织式会议(Ad-hoc conference)、完全分布式会议(fully distributed multiparty conference)和集中式会议(Centralize Conference)。自组织式会议由会议的参与方负责会议媒体流的混音和发送,没有中央控制组件。在完全分布式会议中,每个参与者维持与其他参与者的信令连接,也没有中央控制组件。集中式会议,有的文献称之为紧耦合会议模型(tightly coupled conference)有中央控制节点。每个参与者连接到这个中央控制结点上,中央控制节点负责混音和策略管理,并提供了一系列的会议管理功能。
可以根据会议混音决定和混音实施的承担者不同对SIP 会议模型进行分类。一个SIP 会议可以分成两个部分:(1)会议的发起、变更和终结;(2)实施会议功能。根据会议进行中混音决定和混音实施的角不同,我们可以将SIP 会议分为:(i)完全分布式混音和管理,我们将其称之为智能终端协商,意思是混音决定和混音实施都是由所有参会者自行决定;混音决定需要一个协议和策略。如图1(a)所示。(ii )完全集中式混音和管理。会议的发起和会议的混音决定、混音执行全部由集中控制管理组件完成。如图1(b)所示。(iii )混合式混音和管理型会议。中央控制组件负责管理和控制功能,混音由终端进行,所有的混音决策都由中央控制组件(CCN)节点完成。如图1(c)所示。
2.2 SIP 会议框架构成
SIP 会议框架除了终端用户以外,主要包括以下组件:会议控制中心、会议策略服务器、媒体服务器、SIP 服务器组、应用服务器等。SIP 会议控制中心应用在集中式或者混合式应用中,充当会议系统的信令控制中心和媒体处理中心。在整个会议过程中,SIP 会议控制中心一方面根据会议成员策略管理整个会议,如会议接入控制、与会人员管理等,另一方面它又根据会议媒体策略,负责整个会议媒体混合和分发调度。会议策略服务器主要是用于生成、存储和操作会议策略。会议策略包括会议成员策略和会议媒体策略。会议成员策略主要用于会议成员管理,包括用户接入控制、用户权限管理等。会议媒体策略用于会议媒体混合和分发的控制,包括媒体混合策略、同步策略、媒体分发策略等。会议控制中心是会议策略的具体执行者,它使用会议策略控制和管理整个会议。媒体服务器主要
完成会议媒体混合和分发,在我们实现的SIP 电话会议系统中,媒体服务器是一个重要的部件,在其中运用了提高服务质量的FEC 算法和播放延迟算法。
2.3 典型SIP 会议模型分析
1.终端系统混音型SIP 会议模型(End Systeme Mixing )
在这种会议模型中,会议发起者或者邀请其他成员加入的会议的用户负责媒体的混音和发送工作。其缺点是:首先需要解决连通图出现回环(Loop )问题;第二,这种会议模型缺乏有效的会议控制机制,第三,某个重要会议成员的离开会导致整个系统连通图的断裂,从而使得整个会议的分裂,并且很难将这些分裂开的会议重新合并成一个完整的会议;第四,系统的扩展性不好。有两种因素限制了这种会议模型的扩展,一是解码问题;第二个限制是带宽的限制。
A
B C
A B
C 混音
(a)分布式混音和管理
A
B
C
A B C
混音
(b)集中式混音和管理
A B
C A B C
混音
(c)混合式混音和管理
图1 根据混音决定和管理将SIP会议进行分类
2.大规模多播会议(Large-Scale Multicast Conferences )led闪光灯
普通的多播会议有一个明显的弱点,它不能明确邀请某一个用户加入会议。基于SIP 的多播会议克服了这个缺点。一个大规模的多播会议中,使用了一个或者多个多播地址作为会议标识,每一个会议的参与者加入一个多播组,信令的作用是通知参与者需要加入哪一个多播组。在一个会议中,如果有N 个参与者,则每一对参与者之间都需要维持一个点到点的SIP 会话。这种类型的会议(尤其是语音电话会议),具有良好的可扩展性,当然这个扩展性必须以多播的可扩展性为基础。
3.拨入型会议(Dial-In Conference )
拨入型会议中的会议服务器也是一个普通的SIP 用户代理(UA ),它维持与每一个拨入的用户之间的SIP 连接。同时,会议服务器从用户终端接受媒体流,并把他们混音后发送给相应的用户。会议服务器与每个用户维持的会话具有自己独立的呼叫ID (Call-ID )。除了用户主动拨打会议服务器的用户ID 进入会议以外,会议成员也可以主动邀请其他用户进入会议。这种会议模式中,用户可以很方便的加入会议,但是和前面的模式一样,它的可扩展性受限于会议服务器的处理能力和网络带宽。
4.自组织集中式会议(Ad-hoc Centralized Conferences )
自组织集中式会议成员A 和B 首先开始一个普通的SIP 会话,然后再把第三方加入会议。这种方式和终端系统混音型会议的区别在于,它不使用终端系统混音,而是采用会议服务器来执行混音和发送混音的功能。这种会议模式中邀请用户加入会议还有其它的会议流程,参见文献
[1-4]。
5.拨出型会议模式(Dial-Out Conferences )
拨出型会议模式是拨入型会议模式的简单变形,用户加入会议不是发送INVITE 请求到服务器,而是会议服务器选择会议成员,然后向会议成员发送INVITE 请求。因此,拨出型会议最适合预先安排的会议,比如有确定的会议时间、会议成员列表。这样会议服务器可以根据需要,在预定的时间向预定的
成员发送邀请,从而将会议成员加入到同一个会议中。当用户接受或者拒绝会议服务器的邀请后,会议的运作形式和拨入型会议完全相同。
6.集中式信令,分布式媒体会议模式(Centralized Signaling, Distributed Media)
彩印业务
由中央控制单元控制信令,但是媒体流由会议参与者使用多播(multicast)或者多单播(Multi-unicast)直接转发。当有新成员加入时,会议服务器向每一个会议成员发送re-INVITE 请求。和终端系统混音型会议的不同在于,流媒体直接由会议的参与者发送到其他所有用户,由各个用户自己混音,并且在自己的播放设备上播放。从媒体的角度来看,会议服务器不会接触任何媒体流,但是对于N个参与者的会议来说,每一个参与者都需要接收、解码、混合N-1路媒体流,这样严重限制了会议的规模,因此,这种会议模式的可扩展性不好。其优点在于处理负担远远小于终端系统混音型会议。每一个用户只需要解码N-1路媒体,同时只需要1次的编码即可。解码相对于编码来说,处理开销相对要小。服务器的唯一负担在于,对于N个用户的会议,当第N+1个新用户加入时,需要N+3个INVITE请求事务,每一个有3个消息构成,同样,离开会议需要N个BYE事务,每一个有2个消息构成。对于N比较大的情况将是一个会议处理瓶颈。但是信令的处理平均要远远小于终端混音的处理开销和带宽瓶颈。
3. 一种基于SIP的IP电话会议系统
本文实现了一种基于SIP的集中式的IP电话会议系统。核心功能由会议服务器完成,会议服务器可以分为SIP信令处理以及RTP媒体处理两大功能模块。在SIP信令处理方面,核心问题是要求会议服务器能够支持多路用户的呼叫连接请求,并在整个会议过程中实时的保持用户会话状态。例如,当用户呼入时,SIP信令处理模块需要保存用户ID、会话地址/端口、当前连接状态等会话状态参数;当用户处在会议状态中的时候,由于用户的角可能会基于策略发生改变(发言或旁听),因此系统需要实时保持用户的角状态信息;当用户退出会议时,SIP信令处理模块要能够及时删除此用户的状态信息。由此可见,对SIP信令处理模块而言,用户状态信息表将是其核心数据结构。在媒体处理方面,会议服务器的主要功能是编码、解码以及混音运算。混音运算是会议服务器媒体功能模块的核心算法,按每个RTP包的传输间隔从解码子模块取解码后的线性数据进行叠加运算,产生出多路线性语音数据,然后将结果送入编码子模块内继续下一步处理。不难看出,在媒体处理模块中,系统会涉及到多次算术运算和内存拷贝操作,同时还对解码->混音->编码处理流程具有一定的同步和实时性要求,因此媒体处理模块将较大程度上决定系统的支持能力、扩充性、使用质量等多方面性能。另外,媒体处理模块还应具有RTP协议的处理功能,对从网络上输入的RTP语音包的协议字段进行相应处理(包序列号、时间戳、同步源等),提取出编码语音数据传递给解码子模块进行处理;对编码后将输出的语音数据封装RTP协议头,重新打上包序列号、时间戳等协议字段。综上所述,媒体处理模块的功能
可以总结为:RTP协议解析->解码->混音->编码->RTP协议封装。限于篇幅,在此不对系统作进一步介绍。系统通过调用一个有限状态机来完成整个会议功能。图2给出了系统运行时维护的有限状态机示意图。
4. 结论
本文对基于SIP的可能的会议模型进行了总结分析和比较,并实现了一种基于SIP的集中式IP电话会议系统。基于SIP协议实现多方实时通信系统是SIP协议的重要作用之一,也是SIP协议最有前景的应用领域之一。随着SIP协议的不断发展和SIP会议模型的不断完善,SIP协议必将在实时通信过程中发挥更大的作用,同时,SIP协议的出现使得人们可以用Internet重新定义电信网络的体系结构,从而逐步取代传统的PSTN电话网络,由于基于SIP协议的电信网络是多方实时通信场景,SIP会议模型和SIP会议系统将在这个过程中发挥重要的作用。
图2 系统有限状态机
参考文献
[1].J. Rosenberg, A Framework for Conferencing with the Session Initiation Protocol, IETF Internet-Draft,
draft-ietf-sipping-conferencing-framework-03, October 18, 2004.
[2].  A. Johnston, O. Levin, Session Initiation Protocol Call Control -Conferencing for User玻璃纤维防火布
Agents, IETF Internet-Draft, draft-ietf-sipping-cc-conferencing-06, November 29, 2004.抗石击涂料
[3].J. Rosenberg, H. Schulzrinne, Models for Multi Party Conferencing in SIP, IETF Internet-Draft,
draft-ietf-sipping-conferencing-models-01, July 1, 2002.
[4].O. Levin,  R. Even, Polycom, IETF Internet-Draft, High Level Requirements for  Tightly Coupled SIP
Conferencing, draft-ietf-sipping-conferencing-requirements-01, Sept. 2004.
[5].Wenyu Jiang, Henning Schulzrinne. Assessment of VoIP Service Availability in the Current Internet. Proceedings
of the Passive and Active Measurement Workshop (PAM), La Jolla, California, April 2003.
[6].Roy Chaoming Hsu, Cheng-Ting Liu, Wen-Ping Huang, Jun-Jay Yang: An Embedded Software Approach for the
Development of SIP-Based VoIP Server. Proceedings of the 11th Asia-Pacific Software Engineering Conference
(APSEC 2004), Busan, Korea. 688-694, November 2004.
SIP-based Conference Models and Implement
Si Duanfeng1, Han Xinhui1,Zou W ei1,Fang Y ue2
1. Institute of Computer Science and Technology,Peking University,Beijing (100871)细水雾喷头
2. TDS-CDMA Section,Siemens China Corporation,Beijing (100015)
Abstract
Introduce the SIP-based conference models, and implement an instance of SIP-based centralize
multiparty real-time communication system, that is an IP conference system..
Keywords:SIP,Conference models,IP conference system
作者简介:
司端锋,男,1976年生,博士,研究方向为网络与信息安全,多媒体通信;
韩心慧,男,1969年生,助理研究员,博士研究生,研究方向为网络与信息安全,多媒体通信;
邹维,男,1964年生,研究员,研究方向为网络与信息安全;
方跃,男,1975年生,硕士,研究方向为无线通信,多媒体网络。

本文发布于:2024-09-23 07:31:21,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/200851.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:会议   混音   用户   系统   媒体
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议