黄顺1,2 李炜1,2
(1. 北京邮电大学网络与交换技术国家重点实验室 北京100876)
(2. 东信北邮信息技术有限公司北京100191)
摘要:多媒体彩像业务(MRT)是一种采用多媒体作为响铃音的增值业务。与多媒体彩铃(MRBT)相对应,多媒体彩像是一个基于主叫,展示在被叫的业务。该文结合IP多媒体子系统(IMS)和多媒体彩像的业务属性,提出了网关模式的多媒体彩像的实现方案,包括系统的设计和基于会话的SIP信令,以及现有终端的相应改造。
关键字:多媒体彩像 IP多媒体子系统增值业务
Design and Implementation of Gateway Model of Multimedia Ring Tone Service Based on IP Multimedia Subsystem
Huang Shun1,2 Li Wei1,2
(1. State Key Lab of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876)
(2. EBUPT Information Technology Co. Ltd., Beijing 100191)
【Abstract】Multimedia Ring Tone(MRT) service is a value-added service which makes multimedia as the ring tone. Relative to the Multimedia ring back tone, MRT is a business which based on the Caller and display on the Called. This paper, with the IP Multimedia Subsystem(IMS) and the business property of MRBT, propose a gateway model implementation program, including system design and session-based SIP signaling, and the corresponding transformation of the existing terminal.
【Key words】Multimedia Ring Tone IP Multimedia Subsystem(IMS) value-added service
1引言
IP多媒体子系统(IP Multimedia Subsystem, IMS)[1]最初是由3GPP在R5标准中提出的基于会话起始协议(Session Initiation Protocol, SIP)[2]会话控制的网络体系结构,目的是满足用户对移动多媒体业务的需求,从而丰富移动网的业务种类,加快业务提供过程。IMS的出现不仅能带来丰富的移动多媒体业务,而且将使移动通信网络结构和应用模式发生前所未有的改变。IMS是一个基于会话起始协议的IP多媒体基础设施,提供了一个完整的架构提供多媒体业务,可以同时支持固定和移动多种接入方式,实现固定网络与移动网络的融合。IMS符合下一代网络(Next Generation Network, NGN)呼叫控制与传送相分离的要求。它是软交换的延伸,在软交换的基础上对控制功能作进一步的分离,目的是形成一个更加灵活的通信平台,不仅实现人到机器的多媒体通信,还可以实现人到人的多媒体通信。
本技术方案描述的IMS域彩像业务(包括以语音形式和视频形式展现的彩像),属于主叫业务。如主叫用户开通该业务并且没有登记CLIR(Calling Line Identification Restriction)业务,且被叫用户登记了CLIP(Calling Line Identity Presentation)业务,当主叫呼叫被叫时,被叫的终端在振铃的同时,会把网络发过来的影像展现给被叫用户。这个声音/影像是由主叫用户预先设置的媒体文件的播放产生的。
2业务背景描述
无论是在PSTN还是在VoIP网络中,一个呼叫的最终目的是让两个用户进行交谈。这个用户之间的交谈所产生的媒体称为常规媒体(regular media)。与常规媒体相对的是早期媒体(early media):通常,主叫用户发起呼叫后用户交谈并不会立即开始(甚至可能最终没有开始),等待时间一般是几秒到几十秒,这完全取决于被叫用户的何时应答。在被叫应答之前,主叫用户与网络之间也可以有媒体流产生,与常规媒体相区别,这种媒体被称为早期媒体。
最典型的早期媒体就是回铃音。其他形式的早期媒体还有排队提示等等。早期媒体通常都是单向的(网络>主叫),在SIP中也可能会有双向的早期媒体。IMS域多媒体彩像就是双向早期媒体的一个应用实例。
要传送媒体首先要建立一个媒体会话(Session)。建立媒体会话实际上就是通过SDP offer/answer交换会话的媒体参数进行协商的一个过程。在SIP中,媒体会话的建立过程通常首先伴随着一个SIP对话的建立过程,一般情况下,媒体会话和SIP对话是同时建立的。这种情况下,媒体会话只有在被叫用户摘机以后才能建立起来,只能用户传送用户媒体,显然无法传送早期媒体。要传送早期媒体,必须在SIP对话尚未完全建立之时,即所谓的SIP早期对话状态,完成媒体会话的建立。SIP中支持两种早期对话状态建立媒体会话的做法。
做法1:没有明确区分用户早期媒体的会话,实际上始终只是一个会话。具体到协议上看,用于建立(或修改)这个会话的SDP offer/answer在SIP消息中的处理指示都是“Session”。这种做法被网关模式所用。
做法2:专门建立一个用户传送早期媒体的会话,并称之为早期会话(early-session)[3]。具体到协议上看,用户建立(或修改)早期会话的SDP offer/answer 在SIP消息中处理指示是“Early-Session”。并且,在一个SIP消息中可以同时携带处理指示分别为“Session”和“Early-Session”的两个SDP消息,各自独立地用于正常会话的协商和早期会话的协商。这种做法被应用服务器模式所用。
传统的IMS域多媒体彩像方案基于应用服务器模式,但是应用服务器模式需要终端支持早期会话,对终端的要求太高。本技术方案描述的IMS域多媒体彩像方案基于网关模式,对终端的要求远远低于早期会话模式。
3技术实现
3.1系统组网
IMS网络采用呼叫控制层和业务控制层相分离的分层结构,整个网络全部采用会话初始协议(SIP)作为呼叫控制和业务控制的信令;并且由于IMS起源于移动通信网络的应用,因此充分考虑了对移动性的支持,相对于软交换而言增加了一个外置数据库:归属用户服务器(HSS),用于用户鉴权和保存用户业务触发规则。所有业务运行在控制层以上,通过SIP消息与呼叫会话控制功能(Call Session Control Function, CSCF)进行业务控制的交互。
多媒体彩像业务平台属于IMS网元中的一个AS,位于应用层之上,其拓扑结构图如图1所示。
图1 系统网络拓扑
应用层,控制层,承载层构成了IMS网络的整个体系结构。各功能实体的描述如下:
1.彩像服务器:提供彩像业务,其内部分为6个部分,在3.2中会进行详细描述(在IMS网络应用层中还有其他很多服务器提 供各式各样的服务。为了图绘简洁,图1只画出了彩像服务器。)
2.HSS(Home Subscription Server):用户签约数据库,保存用户的签约属性,执行用户的身份验证和授权,并可提供有关用户物理位置的信息。它类似于GSM Home Location Register(HLR)。
3.CSCF(Call Session Control Function):CSCF按其位置和功能又可分为S/P/I三种类型:S-CSCF(Serving CSCF)在IMS核心网中处于核心的控制地位,负责对用户设备(User Equipment, UE)的注册鉴权和会话控制,执行针对主叫端及被叫端IMS用户的基本会话路由功能,并根据用户签约的IMS触发规则,在条件满足时进行到增值业务路由触发以及业务控制交互;P-CSCF(Proxy CSCF)是IMS中与用户的第一个连接点,提供代理功能,即接受业务请求并转发它们。P-CSCF也可提供用户代理功能,即在异常情况下中断和独立产生SIP会话;I-CSCF(Interrogating CSCF)类似IMS的关口节点,提供本域用户服务节点分配,路由查询以及IMS域间拓扑隐藏功能。
4.MGCF(Media Gateway Control Function):实现IMS核心控制面与PSTN或者PLMN CS的交互,支持ISUP/BICC与SIP的协议交互及呼叫互通,通过H.248控制MGW完成PSTN或CS TDM承载与IMS域用户面RTP的实时转换。
5.MGW(Media Gateway Function):完成IMS与PSTN及CS域用户面宽窄带承载互通及必要的Codec编解码变换。
6.GGSN(Gateway GPRS Support Node):负责接入从GPRS接入的IMS用户。
7.SBC(Session Border Controller):负责接入从Internet接入的IMS用户。
3.2业务平台系统设计
IMS域彩像业务平台按功能逻辑可划为6大部分,如图2所示,分别为SIP前台,AS,MS,铃音资源服务器,数据库,Portal。在实际组网中,这些逻辑部分可以实现在一个或多个物理实体上,多个SIP前台与多个AS之间以及多个AS与多个MS之间可以交叉相连。各功能实体的描述如下:
图2 多媒体彩像平台系统结构
1.SIP前台对外来SIP信令以及外出SIP信令进行控制和管理,负责超时重发SIP消息,以及对重发消息的拦截。
2.AS实现呼叫过程中IMS域彩像业务控制,通过SIP前台与S-CSCF和MS交互。AS与S-CSCF交互以实现对业务的呼叫控制,与MS交互以实现对MS的控制。
3.MS根据AS的指示与被叫进行媒体协商,并根据媒体协商结果播放彩像。MS与被叫之间直接通过IP网络传送多媒体流,采用的协议为实时传输协议(real-time transport protocol, RTP).
4.铃音资源服务器存储媒体文件,通过NFS/TFTP协议接受MS的请求并将媒体文件传送给MS。
5.Portal是多媒体彩像业务的门户网站,多媒体彩像用户可以使用WWW浏览器通过Web接口登录门户网站,订制多媒体彩像业务的播放规则,比如用户可以针对不同的被叫号码或不同的通话时段设置不同的铃音媒体和播放方式。
6.用户信息数据库(DB)存储用户业务数据,其余网元通过数据库访问接口访问用户信息数据库。
3.3信令流程
IMS多媒体彩像为用户提供彩像业务,出入IMS多媒体彩像业务平台所有的SIP消息(不管是主叫还是被叫)都是通过S-CSCF交互。图中的O-SCSCF和T-SCSCF分别代表主叫和被叫所在IMS网络的S-CSCF。本文在不影响多媒体彩像业务流程的基础上尽量简化,图3中省去了I-CSCF和P-CSCF。
在IMS多媒体彩像平台内部,AS会控制MS进行媒体协商进行放音,为了简洁起见,图3中没有画出SIP前台。在各个SIP消息中有可能携带不同的媒体协商信息,图3中SDP-A,SDP-B,SDP-M分别是主叫的媒体信息,被叫的媒体信息以及多媒体彩像平台的媒体信息。
图3 的流程说明如下:
1.步骤1:UEA发起会话请求,通过P-CSCF到达S-CSCF。注:图中省略了UEA与P-CSCF以及P-CSCF与S-CSCF的交互。
2.步骤2:S-CSCF通过向HSS发起查询,通过IFC[4]数据获知主叫用户为多媒体彩像用户,将INVITE请求触发到多媒体彩像 业务平台AS。注:图中省略了HSS服务器。
3.步骤3~步骤4:多媒体彩像平台AS去掉S-CSCF触发上来的INVITE中主叫SDP(SDP-A),保存这个SDP-A并把不带SDP的INVITE返回给S-CSCF,由S-CSCF发给被叫UEB。
4.步骤5:被叫UEB振铃返回180(携带SDP-B)。180中携带Require:100rel头,经过多媒体彩像业务平台直接发送给主叫UEA。多媒体彩像业务平台AS不对该180做任何处理。
5.步骤6~步骤9:多媒体彩像业务平台AS收到180以后,向MS发送INVITE请求多媒体彩像业务平台的媒体信息,MS给AS回复200(携带多媒体彩像平台的媒体信息SDP-M),期间或之后会收到主叫UEA因为收到带Require:100rel的180消息发送过来的PRACK消息。当多媒体彩像业务平台AS收到PRACK后会给主叫UEA回复一个200 OK消息。
6.步骤10~步骤11:当多媒体彩像业务平台AS收到主叫发送过来的PRACK消息后会把主叫的媒体信息(SDP-A)添加到消息中,并发送给被叫。被叫收到PRACK消息后会回复200 OK消息。
7.步骤12~步骤17:多媒体彩像业务平台AS发送更新媒体请求UPDATE(携带SDP-M),被叫UEB收到UPDATE消息后通过200OK消息把自己新协商的媒体SDP-B’返回给多媒体彩像业务平台AS,多媒体彩像业务平台AS指示MS开始放音。
8.步骤18~步骤21:被叫UEB摘机,发送200 OK消息,多媒体彩像业务平台收到此200 OK消息后,拦截200 OK消息,并发送一个ACK确认消息给被叫UEB,同时指示MS停止播发彩像业务。
9.步骤22~步骤25:拦截200 OK以后,多媒体彩像业务平台AS给被叫UEB发送一个re-INVITE要求获得被叫UEB最新的媒体信息。被叫UEB通过200 OK(携带SDP-B)把最新的媒体信息返回给多媒体彩像业务平台AS
10.步骤26~步骤27:彩像AS收到被叫UEB的媒体信息后,向主叫发送UPDATE(携带SDP-B)要求更新被叫媒体信息,主叫UEA收到UPDATE返回200 OK。
11.步骤28:更新媒体信息成功后,彩像AS把拦截的200 OK发送给主叫UEA。
12.步骤29~步骤30:主叫UEA收到200 OK后返回确认消息ACK,双方开始通话。
图 3 多媒体彩像信令流程图
本文研究的实现方案是基于网关模式,从图3可以看出,该实现方案不需要180消息中携带两个SDP,也不需要多媒体彩像业务平台与被叫UEB之间建立早期会话。这样对终端的要求就大大降低了。但是对终端的要求并不是没有。
3.4终端改造
根据电信SIP终端规范[5]知,对于现有的大部分SIP终端来说,对于主叫而言在offer/answer完成之后,媒体端口置成sendrecv;但是对于被叫而言只有当被叫摘机(发送200 OK)以后,媒体端口才会置成sendrecv。
按照图3的流程在多媒体彩像业务平台与被叫UEB进行完offer/answer媒体协商以后,多媒体彩像业务平台MS向被叫UEB的指定媒体端口发送彩像媒体信息,由于被叫UEB这时还没有摘机,从而媒体端口没有打开,导致被叫UEB终端上面无法显示彩像视频和声音。这样就需要对现有的SIP终端进行一定的改造。
从表面上看,只要把被叫改成和主叫一样就行,这样在offer/answer完成之后,被叫的媒体端口就会打开。但是这样可能会带来一些安全隐患,如果被叫接到一个恶意呼叫而并不是彩像业务,被叫方可能在没有摘机的情况下就会显示一个不合适的,危险的或者非法的内容等等。
从RFC 3261中可知,在SIP协议中存在着Call-Info这个头域,该头域提供了对主叫方或者被叫方的附加信息,如果出现在请求中则是主叫方的信息,如果出现在应答中则是被叫方的信息。其中“info”参数描述了简要的主叫方或者被叫方的信息。
本文的实现方案规定在初始INVITE消息到达多媒体彩像业务平台AS以后添加上Call-Info头域,并在“info”参数中描述这个会话是多媒体彩像业务,需要被叫打开媒体端口。例如:Call-Info:“IMS-MRT”;purpose=info 。
然后SIP终端做出相应的改造,当被叫收到的初始INVITE消息中包含Call-Info头并且内容符合规定时,则在offer/answer完成以后将媒体端口打开。具体流程如图4所示:
图4 添加Call-Info流程图
为进一步安全考虑,在S-CSCF建立关卡,如果从UEA发送来的初始的INVITE消息中存在Call-Info头域,而且头域中的信息是明显伪造的(如果头域中的信息显示此次呼叫为彩像呼叫但是该INVITE不是从多媒体彩像平台发出则判断其为伪造的消息),则回复400消息拒绝此次会话。
4结束语
在早期会话模式中其实也存在被叫的安全隐患问题,只是早期会话模式采用在Support头域中添加Early-Session信息的方法来杜绝此类安全隐患(被叫终端可以选择支持或者不支持Early-Session),本文所提出的添加Call-Info方案也可用于早期会话模式(当然运营商可以根据自己的需求通过IANA注册来添加的新的头域,并非一定要使用Call-Info头域)。
当然,相比早期会话模式,网关模式有着媒体泄露等问题。在现有终端难以实现早期会话的情况下,可以通过本文提供的网关模式实现多媒体彩像业务,以推动IMS的发展,以及被叫早期媒体业务的发展。
在本文中提出的终端改造方案,是一个基于安全隐患的改造,对于被叫的早期媒体业务有着奠基石的作用。例如:指示被叫立即摘机等被叫增值业务。对于以后的早期会话一样适用,是以后被叫早期媒体业务发展的一个必然,所以并不是一件多余的工作。
参考文献
[1] (芬)波克申科著. IMS:IP多媒体概念和服务[M]. 北京:机械工业出版社,2007-10,10-15.
[2] Rosenberg J, Schulzrinne H. SIP: Session Initiation Protocol[S].RFC3261, 2002-06.
[3] Camarillo G. The Early Session Disposition Type for the Session Initiation Protocol(SIP)[S]. RFC3959, 2004-11.
[4] Zhaoyong Xun, Jianxin Liao, Xiaomin Zhu, Chun Wang, Yufei Gao. A group based service triggering algorithm for IMS network[A].2009 IEEE International Conference on Communications. ICC 2009. 9-10.
[5] 中国电信. 中国电信SIP终端设备技术规范[S]. 2009-4.
————————————————————
*基金项目:国家杰出青年科学基金(No. 60525110);国家973计划项目(No. 2007CB307100,2007CB307103);国家自然科学基金(No.61072057,60902051);中央高校基本科研业务费专项资金(BUPT2009RC0505);电子信息产业发展基金项目(基于3G的移动业务应用系统)