Ims网关系统和方法

文档序号:7968946阅读:656来源:国知局
专利名称:Ims网关系统和方法
技术领域
本发明涉及通信领域,尤其涉及IMS网关系统和操作IMS网关系统的方法。
背景技术
如第三代合作伙伴项目(3GPP)中阐明的,IP多媒体子系统(IMS)为会聚网络提供具有不可知访问网络结构的通用核心网。业务提供商正在下一代网络发展中接受这种结构。IMS结构最初由3GPP定义,以在网际协议(IP)网络上向移动用户提供多媒体业务。IP网络成为用以发送视频、语音和数据的最节约成本的承载网络。IMS利用IP网络的优点为IMS平台上的IMS用户提供多媒体业务。IMS网络内使用的信令是会话初始协议(SIP)。IMS在应用服务器、IMS核心网(CSCF)、IMS用户、IMS数据库(HSS)和IMS计费单元之间定义标准SIP接口。这些标准可以减少网络集成花费和让用户享受更稳定的业务。
在IMS平台上,诸如呼叫转发、会议以及呼叫等待的传统的辅助业务对于IMS用户是可用的。同样许多新数据业务,诸如即时消息收发、视频呼叫、视频等待和基于网页的业务对于IMS用户也将会是可用的。
为操作员收入生成提供有效的IMS在线计费对于IMS网络的成功部署是重要的。几种3GPP技术规范描述了用于IMS网络的在线计费。例如,3GPP TS32.200规范描述了具有基于会话的计费功能的在线计费系统(OCS)。OCS通过IMS业务控制(ISC)接口与服务呼叫会话控制功能(S-CSCF)连接。S-CSCF控制对于主叫方或被叫方的呼叫会话,以及通过ISC接口与OCS通信,以为呼叫会话提供在线计费。然而,ISC接口是不支持在线计费的业务接口。因此,为了使用S-CSCF和OCS之间的ISC接口用于在线计费,非常遗憾地需要增加附加功能到OCS。
为了避免过载具有附加功能的OCS,以及使得在线计费结构一致,可以改变S-CSCF和OCS之间的接口来支持在线计费,代替向OCS增加功能。用于支持在线计费的接口的一个选择是扩展ISC接口以考虑计费机制。于是,ISC接口将是业务接口和计费接口。非常遗憾地,就3GPP所希望的标准化而言,将ISC接口做为混合业务/计费接口使用是不可接受的。
另一个选择是使用Ro接口取代ISC接口,因为Ro接口已经支持在线计费。3GPP TS 32.296规范建议通过引入在S-CSCF和OCS之间起网关作用的IMS网关功能来使用Ro接口用于在线计费。
图1表示现有技术下由3GPP建议的IMS在线计费结构100。在线计费结构100在3GPP TS 32.240和32.260中进行了描述。在线计费结构100包括IMS网关功能102、S-CSCF 104、和OCS 106。OCS 106包括基于会话的计费功能(SBCF)和基于事件的计费功能(EBCF)。基于会话的计费功能负责网络/用户会话的在线计费,诸如语音呼叫或IMS会话。基于事件的计费功能与任何应用服务器一起执行基于事件的在线计费(也称为“上下文计费”)。
IMS网关功能102通过ISC接口105与S-CSCF 104通信,以及通过Ro接口107与OCS 106通信。对于S-CSCF 104和OCS 106中基于会话的计费功能之间的在线计费,S-CSCF 104不触发在线计费事件并因此不包括计费触发功能(CTF)。取而代之,通过S-CSCF 104使用ISC接口105,这意味着在线计费对S-CSCF 104是透明的和看起来象是由SIP应用服务器控制的任何其他业务。因此,如果需要支持基于Ro的在线计费,就需要特别的CTF,以在基于Ro的基于会话的计费功能和基于SIP的业务控制之间进行协调。IMS网关功能102起这个作用,它能够在向S-CSCF 104的SIP会话控制和向OCS 106的Ro信用控制之间进行转换。
非常遗憾,3GPP规范没有描述如何使用IMS网关功能用于在线计费。规范也没解决ISC接口、Ro接口、和S-CSCF如何一起起作用,以及IMS网关功能如何进行操作以为在线计费提供预算控制。

发明内容
本发明通过IMS网关系统和用于操作IMS网关系统来为IMS会话提供会话控制和预算控制的方法而解决上述及其他关联问题。在此描述状态机来为IMS会话提供在线计费控制。先前没有公开或提供IMS网关系统的这种实施方式。
本发明的一个实施例包括IMS网络的IMS网关系统,其在IMS会话期间处理在线计费。IMS网关系统包括会话控制接口,用于与服务呼叫会话控制功能(S-CSCF)通信;控制系统;以及计费接口,用于与在线计费系统(OCS)通信。在例如根据状态机操作时,控制系统等待会话启始消息(例如,SIP INVITE消息)。响应于从第一用户接收的会话启始消息以通过会话控制接口启动与第二用户的会话,控制系统通过计费接口发送初始信用控制请求消息(例如直径Ro CCR(Diameter Ro CCR)消息)到OCS,以启动第一用户与OCS的计费会话(这起到第一触发功能的作用)。控制系统于是等待来自OCS的初始信用控制应答消息(例如,直径Ro CCA消息)。响应于通过计费接口从OCS接收到初始信用控制应答消息,控制系统通过会话控制接口发送会话启始消息到第二用户,和等待来自第二用户的会话接受消息(例如SIP消息)。
响应于从第二用户接收到会话接受消息,控制系统通过会话控制接口发送会语接受消息到第一用户。控制系统还通过计费接口发送更新信用控制请求消息到OCS,以获得第一用户用于会话的配额(这起到另一个触发功能的作用)。控制系统等待来自OCS的更新信用控制应答消息。响应于通过计费接口从OCS接收到更新信用控制应答消息,控制系统识别出在更新信用控制应答消息中由OCS准予的配额,并基于所准予的配额提供会话的预算控制。
响应于接收到会话终止消息,控制系统通过计费接口发送终止信用控制请求消息到OCS,以向OCS报告准予的配额中的已使用部分(这起到另一个触发功能的作用)。控制系统于是等待来自OCS的终止信用控制应答消息。响应于通过计费接口从OCS接收到终止信用控制应答消息,控制系统终止会话。
本发明的另一个实施例包括操作IMS网关系统的相关方法。本发明可以包括下面描述的其他示例性实施例。


相同的参考数字在所有附图上表示相同元素。
图1示出了现有技术中的包括IMS网关功能的3GPP在线计费结构。
图2示出了在本发明的示例性实施例中的IMS网关系统。
图3是示出了在本发明的示例性实施例中的IMS网关系统的示例性操作的状态图。
图4示出了在本发明的示例性实施例中的IMS网络中的另一个IMS网关系统。
图5-6示出了表示用于定义IMS网关系统的操作的状态机的状态表,以在本发明的示例性实施例中提供信用控制和SIP消息处理。
具体实施例方式
图2-6和下面的描述叙述了本发明的特定示例性实施例,从而教导本领域技术人员如何制造和使用本发明。为了教导发明的原理,本发明的一些常规方面被简化或省略了。本领域的普通技术人员将理解,从这些实施例做出的各种变化都将落入本发明的范围内。本领域的普通技术人员将理解,以下描述的特征可以以各种方式被组合来形成本发明的多种变形。结果,本发明并不限于以下描述的具体实施例,而仅受权利要求及其等同物来限制。
图2示出了本发明示例性实施例中的IMS网络中的IMS网关系统200。IMS网关系统200可以以与IMS网关功能102相似的方式包括在图1的IMS计费结构100中,但是IMS网关系统200也可以以其它IMS计费结构的方式实现。IMS网关系统200包括会话控制接口202、控制系统204以及计费接口206。在链路212上,会话控制接口202耦合到服务呼叫会话控制功能(S-CSCF)210。计费接口206在链路222上连接到在线计费系统(OCS)220上。IMS网关系统200也可以包括为了简短的原因而没有在图2中示出的其它组件、设备或系统。
控制系统204包括适合于提供计费触发功能以为会话执行配额控制、以及适合于为会话提供会话控制的任何系统、设备或服务器。预算控制包括用于例如通过与OCS220通信来为会话计费的任何计费功能。用于在线计费的预算控制可以典型地用于预付款应用。控制系统204可以以软件、硬件或硬件和软件的组合来实现。在软件实现中,控制系统204可以包括存储在存储媒体上的指令。指令可以由处理系统检取和执行。指令的一些例子是软件、程序代码和固件。存储媒体的一些例子是存储设备、磁带、盘、集成电路和服务器。根据本发明当由处理系统执行指令以指引处理系统进行操作时,指令是可操作的。术语“处理系统”涉及单个处理设备或一组可交互操作的处理设备。处理器的一些例子是计算机、集成电路和逻辑电路。本领域的普通技术人员熟悉这些指令、处理器和存储媒体。
会话控制接口202包括适合于发送会话控制消息到S-CSCF 210/从S-CSCF210接收会话控制消息的任何接口。会话控制消息包括用作会话开始、会话管理或维护、或会话诉除的任何消息。会话控制接口202可以包括由3GPP建议的IMS业务控制(ISC)接口,但是在其它实施例中可以包括其它接口。
计费接口206包括适合于发送计费消息到OCS 220/从OCS 220接收计费消息的任何接口。计费消息包括IM网络中用于会话的在线计费的任何消息。计费控制接口206可以包括由3GPP建议的直径Ro接口,但是在其它实施例中可以包括其它接口。
图3是表示在本发明的示例性实施例中的IMS网关系统200的示例性操作的状态图300。开始,因为没有建立IMS会话,IMS网关系统200的控制系统204处于空闲状态302。控制系统204在空闲状态302下等待以接收会话启始消息来启动IMS会话。例如假定通过图2示出的S-CSCF210,第一用户启动与第二用户的IMS会话。如果控制系统204从第一用户那里接收会话启始消息(诸如SIP INVITE消息),控制系统204于是转换到未决(pending)初始状态304。未决初始状态304可以表示IMS会话的初始触发点。
在未决初始状态304,控制系统204通过计费接口206发送初始信用控制请求信息到给OCS 220,以开始第一用户与OCS 220的计费会话(同样参考图2)。作为启动计费会话的一部分,OCS 220可以验证第一用户,(如果有)识别用户帐户,识别会话的等级,识别第一用户的帐户余额等等。控制系统204也可以识别会话启始消息中的会话描述参数,和将会话启始消息中的会话描述参数映射到在初始信用控制请求消息中的参数。将在后面的描述中描述示例性的映射。控制系统204于是等待来自OCS 220的初始信用控制应答消息。初始信用控制请求消息和初始信用控制应答消息的例子分别包括直径CCR消息和直径CCA消息。
如果控制系统204从OCS 220接收初始信用控制应答消息,表示可以为第一用户建立计费会话,则控制系统204转换到尝试状态306。尝试状态306可以表示用于在第一用户和第二用户之间建立IM会话的会话控制状态。在尝试状态306,控制系统204通过会话控制接口202发送会话启始消息到第二用户(通过S-CSCF 210)以“邀请”第二用户加入IMS会话。控制系统204于是等待来自第二用户的会话接受消息。
如果控制系统204从第二用户那里接收会话接受消息,诸如SIP 200 OK消息,则控制系统204可以(通过S-CSCF210)发送会话接受消息到第一用户,以及交换其他会话控制消息以在第一用户和第二用户之间建立IMS会话。控制系统204则转换到未决更新状态308。未决更新状态308可以表示中间会话触发点,在该点处更新IMS会话的计费。在未决更新状态308,控制系统204通过计费接口206发送更新信用控制请求消息到OCS220,以获得第一用户用于IMS会话的配额(同样参考图2)。控制系统204于是等待来自OCS 220的更新信用控制应答消息。
如果控制系统204从OCS 220那里接收更新信用控制应答消息,则控制系统204于是转换到会话期间状态310。会话期间状态310可以表示会话控制状态和预算控制状态。在会话期间状态310下,控制系统204识别由OCS 220在更新信用控制应答消息中准予的配额。控制系统204于是基于准予的配额提供会话的预算控制。在预算控制期间,控制系统204监控在IMS会话期间准予的配额,并且基于会话的使用情况缩减配额。
如果准予的配额用完,则控制系统204转换到未决更新状态308来从OCS220请求新配额。在未决更新状态308,控制系统204通过计费接口206发送更新信用控制请求消息到OCS 220以获得第一用户的新配额(同样参考图2)。控制系统204于是等待来自OCS 220的更新信用控制应答消息。如果控制系统204从OCS 220接收到更新信用控制应答消息,那么控制系统204转换回会话期间状态310并继续用新配额进行预算控制。
如果控制系统204从第一用户或第二用户接收到会话终止消息(诸如SIPBYE消息),则控制系统204转换到未决终止状态312。未决终止状态312可以表示会话结束触发点,在该点向OCS 220报告IMS会话的计费。例如,控制系统204可以向OCS 220报告准予的配额中的未用部分。在未决终止状态312,控制系统204通过计费接口206发送终止信用控制请求消息到OCS 220,以向OCS 220报告准予的配额中的已使用部分(同样参考图2)。控制系统204于是等待来自OCS 220的终止信用控制应答消息。
如果控制系统204从OCS 220那里接收终业信用控制应答消息,那么控制系统204从未决终止状态312转换到空闲状态302。
状态图300还包括免费会话状态314。当控制系统204处于未决初始状态304时,控制系统204等待来自OCS 220的初始信用控制应答消息。如果控制系统204接收表示该会话是免费或不计费的初始信用控制应答消息,则控制系统204转换到免费会话状态314。在免费会话状态314,控制系统204发送适当的会话控制消息以建立第一用户和第二用户之间的会话,并为该会话提供免费预算控制。利用免费预算控制,控制系统204不与OCS220连接来为该会话对第一用户进行计费。
图4表示在本发明的示例性实施例中的IMS网络400中的另一个IMS网关系统402。IMS网关系统402耦合到服务呼叫会话控制功能(S-CSCF)410和在线计费系统(OCS)420。IMS网关系统402可以包括为了简短的原因没有在图4中示出的其他部件、设备或系统。
如果在IMS网络400中建立用户A和用户B之间的IMS会话,那么IMS网关系统402适合于管理与用户A的会话的第一个支线A(或对话A)。IMS网关系统402还适合于管理与用户B的会话的第二个支线B(或对话B)。
IMS网关系统402在IMS会话层运行并执行IMS会话的在线计费。IMS网关系统402担当SIP应用服务器(AS)和接收由S-CSCF 410转发的SIP信令信息。IMS网关系统402因此能够监控所有正在进行的IMS会话的SIP信令通信。基于SIP信令信息,IMS网关系统402构建计费请求和将其发送到 OCS420。OCS 420执行分级和确定用户是否有足够的信用来建立或改变会话。在会话期间,IMS网关系统402周期性地与OCS 420一起检验用户是否有足够的信用来继续会话。当用户用完信用时,IMS网关系统402结束会话。
IMS网关系统402相当于IETF RFC 3261中规定的用于多个SIP对话的路由背对背用户代理。由于对话期间的这种继续参与,IMS网关系统402可以独立管理每个对话(增加、删除或修改)。因为IMS网关系统402可以直接释放对话,因此这允许更大程度的控制,诸如以信用控制(例如,余额不足)来管理团队。IMS网关系统402也可以通过S-CSCF 410联系多媒体资源功能控制器(MRFC)(图4中未示出但是在图1中示出了),这是IMS网关系统402以背靠背模式运行的一个原因。
在该运行模式下,输入的SIP请求由S-CSCF 410向IMS网关系统402代理。IMS网关系统402于是为不同的SIP对话产生新的SIP请求,以及将新的SIP请求发送到S-CSCF 410。S-CSCF 410则向目标代理新的SIP请求。当启动对话时,基于较早期的事务处理,IMS网关系统402用第二最高的条目来填充SIP请求中的最高的路由报头。如此提供IMS网络400,以便当请求发送到应用服务器时,SIP消息至少包括两个路由报头。最高的路由报头标识应用服务器,以及第二最高的路由报头用于路由回S-CSCF 410。第二路由报头无改变地返回,其包括所有参数。
当接收SIP INVITE消息时,当产生新的用于输出对话的INVITE时,IMS网关系统402去除接收的INVITE的联系(Contact)、通路(Via)和路由(Route)报头。IMS网关系统402于是用IMS网关系统402的URI填充输出的INVITE中的联系报头。
当IMS网关系统402收到对话的初始请求时(排除ACK请求和CANCEL请求和响应),IMS网关系统402存储P-Charging-Vector报头中接收的值(例如,ICID参数),以及在消息中保留P-Charging-Vector报头。IMS网关系统402还存储在P-Charging-Function-Addresses报头中接收的值,以及在消息中保留P-Charging-Function-Addresses报头。当IMS网关系统402发送任何有关对话或独立事务的请求或响应时,IMS网关系统402可以在发送消息前将预先保存的值拷贝到P-Charging-Vector和P-Charging-Function-Addresses报头中。
IMS网关系统402在其管理的两个对话之间内部映射消息报头。它负责关联对话标识符和决定何时仅把消息从一个对话转换成另一个或何时执行信用控制功能。
IMS网关系统402也确定呼叫的方向(即,会话是发起或终止)。根据这里的特性和方面,S-CSCF 410中定义了两个IFC。两个IFC创期于发起和终止请求的截然不同的CTF名字或端口。例如,用于发起请求的示例性IFC1和用于终止请求的示例性IFC2可以是IFC1-Trigger Point((method=INVTTE)and(session case=ORIGINATING)),where AS name=<sip:ctf@host;orig>;andIFC2-Trigger Point((method=INVTTE)and(session case=TERMINATING)),wherein AS name=<sip:ctf@host;term>.
(IFC1-触发点((方法=INVITE)和(会话情况=ORIGINATING)),其中AS名称=<sip:ctf@host;orig>;以及IFC2-触发点((方法=INVITE))和(会话情况=TERMINATING)),其中AS名称=<sip:cff@host;term>。)在另一个例子中,用于发起和终止请求的示例性CTF名称可以是<sip:as1_orig@home.net>和<SIP:as1_term@home.net>,其中在AS名称中的参数用于区别发起和终止。另一个例子中,用于发起和终止请求的示例性CTF名称可以是<sip:as1@home.net;orig>和<sip:as1@home.net;term>,其中AS名称中的不同端口用于区别发起和终止。
在从S-CSCF410上接收到初始INVITE时,IMS网关系统402检查输入的INVITE消息的路由报头的最高的项目。路由报头应该包括AS URI(CTF)。IMS网关系统402于是检查AS的端口参数。如果端口参数是“orig”,那么应该把输入请求看作输出呼叫,以及当为会话发送CCR到OCS 420时,节点AVP的角色应该设置成“发起”。如果端口参数是“term”,那么输入请求应该被看作输入呼叫,并且当为会话发送CCR到OCS 420时,节点AVP的角色应该设置成“终止”。
IMS网关系统402也检查将要补贴的媒体资源。IMS网关系统402产生计费请求消息(例如直径Ro CCR消息),该消息包括在用户A和用户B的用户设备之间协商的最后SDP中标识的媒体。IMS网关系统402将会话控制消息中的参数映期到计费请求消息中的参数(AVP)。
IMS网关系统402检查用于呼叫的媒体信息的SIPINVITE消息的SDP内容。SDP中的最相关元素是用以下内容开始的行-″c=″规定在会话描述符中的媒体会话的IP地址;-m=″规定媒体类型、端口和与端口对应的协议(例如,在媒体描述符中的的UDP);以及-″o=″规定会话版本号码。
如上指示的,″c=″行可以出现在会话描述符级,或用于单独的媒体流。如果″c=″行与″m=″行都出现在媒体描述中,此时″c=″行提供媒体流的IP地址。如果″m=″行出现在媒体级而没有相关的″c=″行,那么会话描述的″c=″行的会话级IP地址用于该媒体流。
IMS网关系统402适于理解SDP提供/应答(offer/answer)模式。IMS网关系统402能够识别SDP内容,并且同样知道哪个是用户ASDP,哪个是用户BSDP。随后的表格包括提供和应答列表,其可能出现在IMS网关系统402支持的初始会话建立和对话确认处理期间。

对于输出呼叫,SDP会话信息可以从用户A的最新确认的SDP获得(确认的SDP意思是已经完成了提供/应答协商的SDP)。对于输入呼叫,SDP会话信息可以从用户B的最新确认的SDP获得。当为输出呼叫支线发送输出INVITE消息时,IMS网关系统402将输入INVITE请求的SDP负载拷贝到输出INVITE消息的SDP负载。
IMS网关系统402还使用最新SDP提供和最新SDP应答构造CCR消息到OCS 420。为了构造CCR消息,IMS网关系统402可以使用SDP信息去组装至少CCR消息的SDP会话描述AVP和SDP媒体组件AVP。SDP会话描述AVP包括一行SDP会话描述。每个SDP媒体组件AVP包括用于SDP媒体组件的信息。对于SDP媒体组件AVP,IMS网关系统402用来自m=行的内容填充SDP媒体名称子域。如果对于该媒体组件存在一个GPRS计费ID,则IMS网关系统402同样也用GPRS计费ID来填充GPRS计费ID子域。IMS网关系统402同样也用SDP媒体描述的内容填充SDP媒体描述子域。
图5-6示出了在本发明示例性实施例中的状态表500,其表示用于定义IMS网关系统402的操作以提供信用控制和SIP消息处理的状态机。状态表500描述状态机的空闲状态、未决初始状态、尝试状态、未决更新状态、会话期间状态、未决终止状态以及免费会话状态。图5-6的第一栏标识下面讨论的行号。图5-6的第二栏标识状态机的状态。图5-6的第三栏标识在会话期间发生的事件。图5-6的第四栏标识由IMS网关系统402执行的一个动作或多个动作。图5-6的第五栏标识状态机的状态之间的转换。
在空闲状态(参见图5第1行),IMS网关系统402等待SIPINVITE消息以开始用户A和用户B之间的会话(参见图4)。如果IMS网关系统402从S-CSCF 410接收初始INVITE消息,那么IMS网关系统402从空闲状态转换到未决初始状态。IMS网关系统402然后检查INVITE消息是否包括P-Charging-Vector报头。如果不包括P-Charging-Vector报头,IMS网关系统402拒绝INVITE消息以及用421扩展需要消息进行响应。IMS网关系统402也检查INVITE消息是否包括P-Asserted-ID报头。如果不包括P-Asserted-ID报头,那么IMS网关系统402拒绝INVITE并且用421扩展需要消息进行响应。IMS网关系统402还基于初始INVITE路由报头标记确定呼叫类型。如果没有SIP路由报头的最高项的初始参数,那么IMS网关系统402拒绝INVITE并且用421扩展需要消息进行响应。IMS网关系统402也检查初始INVITE消息的路由报头标记是否包括在S-CSCF URI处的<original dialog identifier>。如果标记不包括该参数,那么IMS网关系统402拒绝INVITE并且以421扩展需要消息进行响应。
如果IMS网关系统402接收到有效的INVITE消息,那么IMS网关系统402从INVITE消息中收集SIP计费相关报头(P-charging-Vector和P-charging-function地址)以及SDP信息。IMS网关系统402存储“SIP请求时间戳”以用于稍后在CCR消息内发送。IMS网关系统402从由INVITE消息中获得的信息构造直径Ro CCR[initial]消息。当IMS网关系统402从INVITE消息中收集SDP信息时,在初始INVITE中只有用户A的SDP信息。IMS网关系统402基于用户A的SDP信息构建CCR消息。CCR[initial]消息包括如下那样填充的参数CC-Request-TypeINITIAL_REQUESTEvent TypeSIP MethodINVITEEventnot requiredContent-typefrom INVITEContent-lengthfrom INVITEContent-dispositionfrom INVITECalling Party AddressP-Asserted-Identity header of INVITECalled Party AddressRequest URI from the INVITEIMS Charging IdentifierP-Charging-Vector header from the INVITE(CC-Request-TypeINITIAL_REQUESTEvent TypeSIP MethodINVITEEvent不需要Content-type来自INVITEContent-length来自INVITEContent-disposition 来自INVITECalling Party AddressINVITE的P-Asserted-Idenfity报头Called Party Address来自INVITE的请求URIIMS Charging Identifier来自INVITE的P-charging-Vector报头)IMS网关系统402然后发送CCR[initial]消息到OCS 420(同样参见图4),以及等待来自OCS 420的CCA[initial]消息。CCA[initial]消息用于确定用户A是否有足够的信用来提供到用户B的呼叫。IMS网关系统402在发送CCR[initial]消息后启动定时器(Tx)以控制等待CCA[initial]消息的时间。Tx定时器可由IMS网关系统402进行配置,并且可以最初设置为10秒的时间或相似的时间。如果对于到主要OCS 420的第一CCR[initial]消息出现失败,那么IMS网关系统402将信用控制消息流移动到备份OCS(在图4中未示出)。
在未决初始状态(参见图5第2行),如果CCA消息有错误发生,IMS网关系统402则向用户A发送合适的错误响应消息(即3XX/4XX/5XX消息)。例如,IMS网关系统402可以接收CCA[failure]消息,诸如“发送失败”或“暂时错误”消息。“发送失败”意味着直径Diameter信用控制客户不能够与期望的目的地或可选择的目的地通信。这可以归因于对等体故障,或归因于到信用控制服务器或来自信用控制服务器的路径中的物理链路失败。由于接收到该种类的错误,IMS网关系统402向(用户A的)初始支线A发送500服务器内部错误。IMS网关系统402同样(在重试可选择的服务器后)也接收“暂时错误”。“暂时错误”意味着直径信用控制客户在CCA消息的Result-Code AVP中接收到协议错误通知(DIAMETER_TOO_BUSY,DIAMETER_UNABLE_TO_DELIVER或者DIAMETER_LOOP_DETECTED)。可以响应于到定义的可选择目的地的重发的请求来最终接收上述协议错误通知。IMS网关系统402可以选择地接收来自OCS 420的暂时故障代码(除了4011),或者来自OCS 420的永久故障代码。如果IMS网关系统402接收到来自OCS 420的CCA(DIAMETER_END_USER_SERVICE_DENIED),那么IMS网关系统402向初始支线A发送503业务不可用消息。如果IMS网关系统402接收到来自OCS420的CCA(DIAMETER_CREDIT_LIMIT_REACHED),那么IMS网关系统402向初始支线A发送402需要付款消息。
如果IM网关系统402接收来自OCS 420的DIAMETER_USER_UNKNOWN消息(其中指定的终端用户在信用控制服务器是未知的),那么IMS网关系统402向初始支线A发送503业务不可用消息。如果IMS网关系统402从OCS 420接收DIAMETER-RATING-FAILED消息(这意味着由于没有足够的分级输入、在分级中不能识别或支持的不正确AVP组合、AVP或AVP值,信用控制服务器不能评价业务请求),那么IMS网关系统402发送503业务不可用消息到初始支线A。
如果Tx定时器终止,那么IMS网关402可发送503业务不可用消息到初始支线A。IMS网关系统402于是从未决初始状态转换回空闲状态。
在未决初始状态(参见图5第3行),如果IMS网关系统402从OCS 420接收有效的CCA[initial]消息,那么IMS网关系统402停止Tx定时器。如果CCA[initial]消息包括来自OCS 420的初始准予配额,则IMS网关系统402存储准予的配额。如果CCA[initial]指示已经为用户A建立了计费会话(即用户A有足够的用于该呼叫会话的信用),那么IMS网关系统402在状态机中从未决初始状态转换到尝试状态。如果CCA[initial]消息指示该呼叫会话对用A是免费的(例如CCA[CREDIT_CONTROL_NOT_APPLICABLE]消息)(参见图5的第4行),那么IMS网关系统402在状态机中从未决初始状态转换到免费会话状态。
在免费会话状态,IMS网关系统402不需要为用户A执行信用控制。同样的,IMS网关系统402不需要为用户A收集计费信息和SDP信息。然而IMS网关系统402仍在免费会话状态中管理会话控制和SIP对话。
在尝试状态,IMS网关系统402提供会话控制以建立会话。IMS网关系统402发送新INVITE消息到S-CSCF 410以建立与用户B的新对话。如果IMS网关系统402为用户B从S-CSCF410接收SIP1XX消息(参见图5第5行),那么IMS网关系统402发送1XX消息到输入支线A。消息报头和SDP信息与从用户B接收的1XX消息中的一样,除了联系、通路、路由和记录路由报头。同样也保存了P-Charging-Vector报头和SDP信息。IMS网关系统402同样存储来自用户B的1XX消息中的SDP信息(如果存在)(SDP B消息)。在发送CCR之前没有其他SDP协商过程的情况下,IMS网关系统402也可能需要SDP B信息来为输入呼叫构建其它CCR请求AVP。
在1xx消息的P-Charging-Vector报头中的信息可能与先前从INVITE消息收集的P-Charging-Vector报头不同。IMS网关系统402存储P-Charging-Vector报头以备后用。
IMS网关系统402同样在尝试状态等待来自用户B的对初始INVITE消息的响应。如果IMS网关系统402在会话的一条支线上接收SIP UPDATE请求(参见图5的第6行),那么IMS网关系统402发送相应的UPDATE请求到会话的其他支线。用于由IMS网关系统402发送的UPDATE请求的消息报头和SDP信息与由IMS网关系统402接收的UPDATE请求相同,除了用于对话的一些状态信息。如果在发送CCR到OCS 420之前没有其他SDP协商过程,则IMS网关系统402保存来自UPDATE请求的SDP信息以构建下一个CCR。
在UPDATE请求的P-Charging-Vector报头中的信息可以与例如来自INVITE消息或1xx消息的先前收集的P-Charging-Vector报头不相同。IMS网关系统402能够存储来自不同消息的P-Charging-Vector报头。
在尝试状态(参见图5第7行),如果IMS网关系统402在会话的一个支线上接收SIP UPDATE 200 OK响应,那么IMS网关系统402发送相应的UPDATE 200 OK响应到会话的其他支线。用于由IMS网关系统402发送的UPTADE 200 OK响应的消息报头和SDP信息与由IMS网关系统402接收的UPDATE 200 OK响应相同,除了用于对话的一些状态信息。如果在发送CCR到OCS 420之前,没有其他SDP协商过程,则IMS网关系统402保存来自UPDATE 200 OK响应的SDP信息以构建下一个CCR。IMS网关系统402还可以存储UPDATE 200 OK响应的P-Charging-Vector报头。
在尝试状态(参见图5的第8行),如果IMS网关系统402在会话的一条支线上接收SIPPRACK请求,那么IMS网关系统402发送相应的PRACK请求到会话的其他支线。用于由IMS网关系统402发送的PRACK请求的消息报头和SDP信息与由IMS网关系统402接收的PRACK请求相同,除了用于对话的一些状态信息。IMS网关系统402可以存储来自PRACK请求的SDP信息和P-Charging-Vector报头。
在尝试状态(参见图5第9行),如果IMS网关系统402在会话的一条支线上接收SIP PRACK 200 OK响应,那么IMS网关系统402发送相应的PRACK 200 OK响应到会话的其他支线。用于由IMS网关系统402发送的PRACK 200 OK响应的消息报头和SDP信息与由IMS网关系统402接收的PRACK200 OK响应相同,除了用于对话的一些状态信息。IMS网关系统402可以存储来自PRACK 200 OK响应的SDP信息和P-Charging-Vector报头。
在尝试状态(参见图5第11行),如果IMS网关系统402在会话的一条支线上接收CANCEL请求,那么IMS网关系统402发送相应的CANCEL请求到会话的其他支线。用于由IMS网关系统402发送的CANCEL请求的消息报头和SDP信息与由网关系统402接收的CANCEL请求相同,除了用于对话的一些状态。IMS网关系统402于是从尝试状态转换到未决终止状态,其中IMS网关系统402等待CANCEL响应。
在尝试状态(参看图5第10行),如果IMS网关系统402在会话的一条支线上接收SIP INVITE 200 OK响应,那么IMS网关系统402发送相应的INVITE 200 OK响应到会话的其他支线。用于由IMS网关系统402发送的INVITE 200 OK响应的消息报头和SDP信息与由IMS网关系统402接收的INVITE 200 OK响应相同,除了用于对话的一些状态信息。IMS网关系统402可以存储来自INVITE 200 OK响应的SDP信息和P-Charging-Vector报头。IMS网关系统402同样也存储“SIP响应”时间戳以用于稍后在CCR消息中发送。IMS网关系统402于是从尝试状态转换到未决更新状态。
INVITE 200 OK的接收是在未决更新状态中用于计费的触发点。因此,IMS网关系统402根据从INVITE 200 OK消息中获得的信息构建CCR[update]消息。当IMS网关系统402收集来自INVITE 200 OK的SDP信息时,存在用于用户A和用户B的SDP信息。IMS网关系统402基于用于用户A和用户B的SDP信息构建CCR消息。Used-Service-Unit AVP设置为0。CCR[update]消息包括如下面那样填充的其他参数CC-Request-TypeUPDATE_REQUESTEvent TypeSIP MethodINVITEEventnot requiredContent-typefrom INVITEContent-lengthfrom INVITEContent-dispositionfrom INVITECalled Party AddressRequest URI from the INVITE(CC-Request-TypeUPDATE_REQUESTEvent TypeSIP MethodINVITEEvent不需要的Content-type来自INVITE
Content-length来自INVITEContent-disposition来自INVI′IECalled Party Address 来自INVITE的Request URI)IMS网关系统402然后发送CCR[update]消息到OCS 420(同样参见图4),并且等待来自OCS 420的CCA[update]消息。CCR[update]消息用于请求来自OCS 420的配额以为呼叫会话执行预算控制。IMS网关系统402在发送CCR[update]消息后启动定时器(Tx)以控制等待CCA[update]消息的时间。
如果IMS网关系统402从OCS 420接收CCA[update]消息,那么IMS网关系统402转换到会话期间状态。IMS网关系统402在CCA[update]消息中确定准予的配额,以及基于准予的配额开始会话预算控制。
在会话期间状态(参见图5第13行),建立对话并执行会话预算控制。如果IMS网关系统402接收不包括计费触发的SIP消息,诸如SIPINFO消息,那么IMS网关系统402将SIP消息从一个支线转发到另一个支线而不计费该消息,除了联系、通路、路由以及记录路由报头。在对话建立并且响应于接收SIPINFO消息或其他未认可的SIP消息之前,IMS网关系统402拒绝该消息并且用501未实现消息来返回。
在会话期间状态(参见图5第14行),如果IMS网关系统402接收SIPBYE消息,那么IMS网关系统402发送SIP BYE消息到其他支线。IMS网关系统402此时从会话期间状态转换到未决终止状态。
在未决终止状态,IMS网关系统402构建CCR[termination]消息。基于选择的计费信息和对于准予的配额的剩余余额构建CCR[termination]。CCR[termination]消息包括如下面那样填充的下列参数CC-Request-TypeTERMINATION_REQUESTEvent TypeSIP MethodBYEEventnot requiredContent-typefrom BYEContent-lengthfrom BYE
Content-dispositionfrom BYECalling Party AddressP-Asserted-Identity header of INVITECalled Party AddressRequest URI from the INVITEIMS Charging IdentifierP-Charging-Vector header from the INVITE(CC-Request-TypeTERMINATION_REQUESTEvent TypeSIP Method BYEEvent 不需要的Content-type来自BYEContent-length来自BYEContent-disposition来自BYECalling Party Address INVITE的P Asserted-Identity报头Called Party Address来自INVITE的RequestURIIMS Chargmg Identifier来自INVITE的P-Charging-Vector报头)在会话期状态(参见图5第15行),如果IMS网关系统402接收来自OCS 420的直径ASR消息,那么IMS网关系统402发送BYE消息到两个对话。IMS网关系统402然后发送ASA消息到OCS 420。IMS网关系统402同样从会话期间状态转换到未决终止状态,在该状态下,IMS网关系统402发送CCR[termination]消息到OCS 420。
在会话期间状态(参见图5第16行),如果IMS网关系统402确定SIP会话已经超时,那么IMS网关系统402发送SIPBYE消息到两个对话。然后,IMS网关系统402从会话期间状态转换到未决终止状态。在未决终止状态,IMS网关系统402发送CCR[termination]消息到OCS 420。
在会话期间状态(参见图6第17行),如果IMS网关系统402从OCS 420接收直径RAR请求,那么IMS网关系统402发送RAA响应到OCS 420。IMS网关系统402于是从会话期间状态转换到未决更新状态。在未决更新状态,IMS网关系统402发送CCR[update]消息到OCS 420。在发送RAA响应后,IMS网关系统402通过发送CCR[update]消息到OCS 420来报告实际使用的单元(unit)。
在会话期间状态(参见图6第18行),如果IMS网关系统402接收Tq期满,以及在最后CCA中没有接收到最后单元指示,那么IMS网关系统402从会话期间状态转换到未决更新状态。在未决更新状态,IMS网关系统402发送CCR[update]消息到OCS 420。
在会话期间状态(参见图6第19行),如果IMS网关系统402接收到Tq期满以及在最后CCA中没有接收到最后单元指示,那么IMS网关系统402从会话期间状态转换到未决终止状态。在未决终止状态,IMS网关系统402发送CCR[termination]消息到OCS 420。
在免费会话状态(参见图6第20行),如果IMS网关系统402从任何支线接收SIPBYE消息,那么IMS网关系统402发送BYE消息到其他支线以及释放该会话的资源。
在免费会话状态(参见图6第21行),如果IMS网关系统402接收到任何SIP消息,诸如来自任何支线的INFO消息或UPTDATE消息,则IMS网关系统402此时发送SIP消息到其他支线。
在免费会话状态(参见图6第22行),如果IMS网关系统402接收SIP会话超时的报告,则IMS网关系统402发送BYE消息到两个对话,并且释放该会话的资源。
在未决更新状态(参见图6第23行),如果IMS网关系统402从S-CSCF410接收SIPBYE消息,那么IMS网关系统402将BYE消息保持在队列中。IMS网关系统402停留在未决更新状态直到接收到CCA[update]消息。
在未决更新状态(参见图6第24行),如果IMS网关系统402接收到SIP会话超时的报告,那么IMS网关系统402将该报告保持在队列中。
在未决更新状态(参见图6第25行),如果IMS网关系统402接收到直径RAR请求,那么IMS网关系统402发送RAA响应到OCS 420,但是不需要发送CCR[update]消息到OCS 420。
在未决更新状态(参见图6第26行),如果IMS网关系统402接收到任何SIP消息,诸如来自任何支线的INFO消息或UPDATE消息,那么IMS网关系统402发送SIP消息到其他支线。
在未决更新状态(参见图6第27行),如果IMS网关系统402从OCS 420接收CCA[update failure]消息,那么IMS网关系统402发送SIP BYE消息到两个对话。失败可以包括发送失败、Tx期满、END_USER_SERVICE_DENIED 、DIAMETER_RATING_FAILED、DIAMETER_CREDIT_LIMIT_REACHED等。IMS网关系统402于是转换到空闲状态。
IMS网关系统402不需要支持OCS故障转移(failover)。如果在正在进行的信用控制会话期间发生故障,则IMS网关系统402不会将信用控制消息移动到备份OCS。
在未决更新状态(参见图6第28行),如果IMS网关系统402从OCS 420接收有效CCA[update]消息,那么IMS网关系统402转换会话期间状态。IMS网关系统402可以存储来自CCA[update]消息的最后单元指示(FUI)。在会话期间状态,IMS网关系统402识别在CCA[update]消息中提供的准予配额。IMS网关消息402基于该准予配额启动定时器Tq以提供预算控制。在当重验证正在进行中时,在考虑到任何资源使用后,在CCA[update]消息中接收的新准予配额可以不考虑任何剩余配额资源。
在未决更新状态(参见图6第29行),如果IMS网关系统402接收到为该会话指示CREDIT_CONTROL_NOT_APPLICABLE的CCA[update]消息,那么IMS网关系统402转换到免费会话状态。
在未决终止状态(参见图6第30行),如果IMS网关系统402接收到CCA[termination]消息、发送失败、暂时错误、失败的应答或Tx期满,那么IMS网关系统402释放呼叫资源并转换到空闲状态。
在尝试状态(参见图6第31行),如果IMS网关系统402接收到SIP3XX/4XX/5XX/6XX错误响应,那么IMS网关系统402发送相应的错误响应到输入对话。IMS网关系统402然后转换到未决终止状态。在未决终止状态,IMS网关系统402发送CCR[termination]消息到OCS 420以停止准予单元的偿还。如果SIP对话通过3XX/4XX/5XX/6XX消息异常终止,那么设置“Cause”AVP的“Cause Code”子域。
在尝试状态(参见图6第32行),如果IMS网关系统402从OCS 420接收RAR消息,IMS网关系统402发送RAA消息到OCS 420。
在尝试状态(参见图6第33行),如果IMS网关系统402从OCS 420接收ASR消息,那么IMS网关系统402发送带有result_code=limited success的ASR消息到OCS 420。IMS网关系统402于是转换到未决终止状态。在未决终止状态,IMS网关系统402发送CCR[termination]消息到OCS 420。
在未决更新状态(参见图6第34行),如果IM网关系统402从OCS 420接收ASR消息,那么IMS网关系统402将该消息存储在队列中。
在对话期间状态(参见图6第35行),如果IMS网关系统402接收到SIP媒体改变消息,诸如SIP UPDATE 200 OK消息,那么IMS网关系统402发送媒体改变消息到其它对话并将媒体改变消息存储在队列中。IMS网关系统402于是转换到未决更新状态。在未决更新状态,IMS网关系统402发送CCR[update]消息到OCS 420。
在未决更新状态,如果IMS网关系统402接收到SIP媒体改变消息,例如SIP UPDATE 200 OK消息,那么IMS网关系统402发送媒体改变消息到其它对话并将媒体改变消息存储在队列中。IMS网关系统402于是转换到未决更新状态。在未决更新状态,IMS网关系统402发送CCR[update]消息到OCS 420。
在未决终止状态(参见图5第12行),如果IMS网关系统402接收487响应,那么IMS网关系统402发送CCR[termination]消息到OCS 420并等待CCA[termination]消息。
在图5-6中示出的状态机是IMS网关系统402的详细实现。本发明并不限于图5-6中的状态机,而其只是一种示例性实现。可以使用在本发明范围内的其他实现方式。
当IMS网关系统402根据状态机生成用于OCS 420的CCR消息时,IMS网关系统402将SIP消息的某些参数映射到直径Ro消息AVP。例如AVP是在IETF RFC 4006[402]中定义的Service-Context-Id AVP。它是UTF8字符串类型的,并且包括应用于请求的直径信用控制业务特定文件的唯一标识符。这是由业务提供商/运营商、由业务元件制造商、或由唯一标识给定直径信用控制业务特定文件的标准化团体分配的标识符。对于IMS计费,Service-Context-IdAVP应当是根据3GPP标准的632260@3gpp.org。
“EVENT-TYPE”AVP的“SIP-Method”子域设置为使得记帐请求被发送到OCS 420的SIP方法的名称。对于CCR[initial]消息,IMS网关系统402用“INVITE”填充SIP-Method AVP。对于CCR[update]消息,IMS网关系统402用“UPDATE”或者“INVITE”填充SIP-Method AVP,这取决于接收到哪个消息。对于CCR[termination]消息,IMS网关系统402用“BYE”或者“CANCEL”填充SIP-Method AVP,这取决于接收到哪个消息。
CC-Request-Number AVP(AVP代码415)是Unsigned32类型的,以及在一个会话内识别该请求。Session-Id AVP是全球唯一的,Session-Id和CC-Request-Number AVP的组合也是全球唯一的,并且可以用于匹配信用控制消息和确认。一种生成唯一号码的方法是为信用控制请求类型INITIAL_REQUEST设置值为0,为第一UPDATE_REQUEST设置值为1,为第二个设置值为2,等等,直到用于TERMINATION_REQUEST的值比最后的UPDATE-REQUEST的值多一。
“EVENT-TYPE”AVP的“CONTENT TYPE”的子域由IMS网关系统402设置为消息主体的媒体类型。媒体类型的示例是applieation/sdp、text/html等。“EVENT-TYPE”AVP的“CONTENT LENGTH”子域由IMS网关系统402设置为消息主体的大小。“EVENT-TYPE”AVP的“CONTENT DISPOSITION”子域指示消息主体或消息主体部分是如何被翻译的(例如会话、移交(render)等)。
“ROLE of NODE”AVP规定IMS节点的角色为发起或终止角色。由IMS网关系统402设置下面的值,“0”用于从UE发起的呼叫的Originating_Role,或者“1”用于向UE进行终止的呼叫的Terminating_Role(如果呼叫来自UE,那么他将被设置为发起角色,以及如果呼叫是朝向UE,那么他将被设置为终止角色)。
“USER SESSION ID”AVP设置为入站对话的SIP Call ID。对于IMS网关系统402,在一个会话中包括有两条支线,IMS网关系统402为入站对话(或呼叫支线)设置SIP CALL ID。对于SIP会话,Session-ID包括在IETF RFC 3261中定义的SIPCall ID。
“Calling Party Address”AVP设置为在P-Asserted-Identity报头载入的当前呼叫方地址。发起IMS网关系统可以从请求中的P-Asserted-Identity报头获得Calling-Party-Address AVP内容和从Request-URI获得Called-Party-Address AVP,或者从响应的P-Asserted-Identity报头获得Called-Party-Address。终止IMS网关系统可以从请求中的P-Asserted-Identity报头中获得Calling-Party-Address AVP内容和从Request-URI或(在RequestURI是联系地址URI的情况下)从请求的P-Called-Party-ID中获得Called-Party-Address AVP。Called-Party-Address也可以从响应的P-Asserted-Identity报头获得。“Calling Party Address”AVP、“Called PartyAddress”AVP的格式是以SIP URI或者TEL URL的形式的。
可以通过(DISPLAY Name)+(SIp URI或TEL URL)从P-Asserted-Identity报头获得地址。IMS网关系统402用SIP URI或TEL URL填充两个AVP。IMS网关系统402可以包括具有SIP URL/TEL URL的可选参数。
“Called Party Address”AVP设置为当前被呼叫方的地址,如被填充在Request-URI或者P-Called-party-ID中那样,向其建立会话。该AVP的格式是根据要求IMGW-366的。
当被接收到时(例如INVITE),“Time Stamps”AVP的“SIP Request TimeStamps”子域设置为以初始SIP请求的UTC格式的时间。当被接收到时(例如200 OK、失败响应等),“Time Stamps”AVP的“SIP Response Time Stamps”子域设置为以对于初始SIP请求的最后响应的UTC格式的时间。当IMS网关系统402生成CCR[termination]消息时,IMS网关系统402包括用于SIPBYE/CANCEL消息的SIP请求时间戳。当IMS网关系统402生成CCR[initial]消息时,IMS网关系统402不填充“TimeStamps”AVP,因为IMS网关系统402仍需接收对INVITE消息的200 OK响应。当IMS网关系统402生成CCR[update]消息时,IMS网关系统402可以包括INVITE消息和200 OK消息的时间戳。
″Inter Operator Identifier(IOI)″AVP的″Originating Inter OperatorIdentifier″子域设置为由在发起端用户的归属网络中的S-CSCF 410生成的发起网络的内部操作员标识符。来自P-Charging-vector报头的内部操作员标识符是可用的。
″Inter Operator Identifier (IOI)″AVP的″Terminating Inter OperatorIdentifier″子域设置为由在终止端用户的归属网络中的S-CSCF 410生成的终止网络的内部操作员标识符。来自P-Charging-vector报头的内部操作员标识符是可用的。
″IMS Charging Identifier (ICID)″AVP包括用于IMS网关系统402的ICID。包括在SIP处理事务中的第一子系统实体将生成ICID并将其包括在SIP请求里的P-Charging-Vector报头的ICID参数中。ICID参数包括在任何包括P-Charging-Vector报头的请求里。然而,P-Charging-Vector(和ICID)并不被传递给UE。
在SDP应答被接收后,″SDP Session Description″AVP设置为与在协商的CODEC SDP数据中的会话相关的″属性行″(i=,c=,b=,k=,a=,等)的内容。所有的SDP行(i=,c=,b=,k=,a=,等)属性被包括在SDP会话描述AVP中。这将允许下行流记帐系统(OCS)使用它想用的内容。在SDP应答被接收后,″SDPMedia Component″AVP的″SDP Media Name″子域设置为协商的CODECSDP数据中的″m=″行的内容。在SDP应答被接收后,″SDP Media Component″AVP的″SDP Media Description″子域设置为与在协商的CODEC SDP数据中的媒体组件相关的″属性行″(i=,c=,b=,k=,a=,等)的内容。
″SDP Media Component″AVP的″GPRS Charging ID″子域设置为由GGSN在PDP上下文激活时生成的序列号。该序列号被填充在P-Charging-Vector报头中。″GGSN Address″ AVP设置为生成GPRS计费ID的GGSN的IP地址。该地址被填充在P-Charging-Vector报头中。如果用户到用户数据被包括在触发CCR的SIP消息中,则设置″UUS Data″AVP。CCR通常由SIP200 OK消息触发。如果200 OK消息包括UUSData,那么CCR包括UUSData。如果原始SIP INVITE消息包括UUS Data,但是对SIP邀请的200 OK响应不包括UUS Data,那么CCR将不包括UUSData AVP。
″UUS Data″AVP的″Amount of UUS(User-to-User) Data″子域设置为在具有等于“render”的内容部署报头字段的SIP消息的主体中传送的用户到用户数据的数量(以八位字节)。通常消息主体可以附加于SIP请求和响应。同样,″Content-Dispositionrender″可以出现在请求和响应中。在进行处理以建立对话期间,CCR启动/过渡时期/停止都可以潜在地具有UUS数据。对于独立事务处理(例如MESSAGE),CCR事件可以具有UUS数据。如果有Content_Length值,则Content-Length值可用于填充Amount-of-UUS-Data。如果没有Content_Length值,则由IMS网关系统402计算八位字节值。如果有多部分消息主体存在,那么每一部分都具有不同的Content-Type和Content-Length。当Content-typemultipart/xxx出现时,IMS网关系统402将多个部分主体看作一个UUS数据块。在该情况下,IMS网关系统402为整个多部分主体计算Amount-of-UUS-Data。
当Content-Disposition报头包括″render″时,则有Content-Disposition报头。如果没有Content-Disposition报头,那么IMS网关系统402检查Content-type报头(根据RFC 3261)。如果Content-Type报头是″application/sdp″,那么IMS网关系统402假设Content-Disposition报头为“Session”。如果Content-Type不是″application/sdp″,那么IMS网关系统402假设Content-Disposition报头是″render″。
″UUS Data″AVP的″Mime Type″子域设置为用户到用户数据的Mime类型。MIME类型用触发CCR的SIP消息中的Content-Type报头中的值来填充。在RFC 2045中定义Content-Type报头,如果包括消息主体,则由RFC3261命令其出现。
Content-type报头包括媒体类型/子类型以及可选的参数。一种拷贝在Content-Type报头中的值(以其全部)的方式是填充MIME-Type AVP。″UUSData″AVP的″Direction″子域为用户到用户数据的UPLINK数据设置为0,为用户到用户数据的DOWNLINK设置为1。该字段表示UUS数据是在上行链路还是下行链路方向上传输。UP-LINK意味着UE发起业务,DOWN-LINK意味着UE终止业务。
″Cause″AVP的″Cause Code″子域根据下面用于成功原因和失败原因的表格而被设置。


对于会话的正常结束,IMS网关系统402发送具有原因代码=0的CCR[termination](会话的正常结束)。原因代码=2(未成功的会话建立)可以对于下列情况而被设置。如果IMS网关系统402在200 OK消息之前接收到SIP CANCEL请求,那么IMS网关系统402发送CCR[termination]消息。如果IMS网关系统402在ACK消息之前接收到 SIP BYE请求,那么IMS网关系统402生成CCR[termination]消息。如果IMS网关系统402在接收到200 OK最后响应之后接收到SIP BYE,那么不接收SIP ACK。
尽管在此描述了特定的实施例,但是本发明的范围并不限于这些具体的实施例。本发明的范围由随后的权利要求及其任何等同物来定义。
权利要求
1.一种用于IMS网络的IMS网关系统(200),该IMS网关系统(200)包括会话控制接口(202),适合于与IMS网络的呼叫会话控制功能CSCF(210)交换IMS会话的会话控制消息;计费接口(206),适合于与IMS网络的在线计费系统OCS(220)交换计费消息;IMS网关系统的特征在于控制系统(204),适合于等待会话启始消息;响应于通过会话控制接口从第一用户接收会话启始消息,发起与第二用户的会话,控制系统适合于通过计费接口发送初始信用控制请求消息到OCS,以发起第一用户与OCS的计费会话,以及适合于等待来自OCS的初始信用控制应答消息;响应于通过计费接口从OCS接收初始信用控制应答消息,控制系统适合于通过会话控制接口发送会话启始消息到第二用户,以及适合于等待来自第二用户的会话接受消息;响应于从第二用户接收会话接受消息,控制系统还适合于通过会话控制接口发送会话接受消息到第一用户,适合于通过计费接口发送更新信用控制请求消息到OCS以获得用于会话的第一用户的配额,以及适合于等待来自OCS的更新信用控制应答消息。
2.如权利要求1的IMS网关系统(200),其中响应于通过计费接口(206)从OCS(220)接收更新信用控制应答消息,控制系统(204)还适合于识别由OCS在更新信用控制应答消息中准予的配额,以及还适合于基于准予的配额为会话提供预算控制。
3.如权利要求2的IMS网关系统(200),其中响应于接收到会话终止消息,控制系统(204)还适合于通过计费接口(206)发送终止信用控制请求消息到OCS(220),以向OCS报告准予的配额中的已使用部分,以及还适合于等待来自OCS的终止信用控制应答消息;响应于通过计费接口从OCS接收到终止信用控制应答消息,控制系统还适合于终止会话。
4.如权利要求1的IMS网关系统(200),其中控制系统(204)还适合于响应于发送更新信用控制请求消息到OCS(220)而设置定时器,以及还适合于响应于定时器期满而终止会话。
5.如权利要求1的IMS网关系统(200),其中如果来自OCS(220)的初始信用控制应答消息指示会话对第一用户是免费的,那么控制系统(204)适合于为该会话提供免费预算控制。
6.如权利要求1的IMS网关系统(200),其中控制系统(204)还适合于识别在来自第一用户的会话启始消息中的会话描述参数,以及还适合于将在会话启始消息中的会话描述参数映射为在初始信用控制请求消息中的参数。
7.一种用于在IMS网络中操作IMS网关系统来提供在线计费的方法,IMS网关系统适合于与会话的呼叫会话控制功能CSCF和在线计费系统OCS通信,该方法的特征在于以下步骤等待会话启始消息以发起第一用户和第二用户之间的会话;响应于从第一用户接收到会话启始消息,发送初始信用控制请求消息到OCS以发起第一用户与OCS的计费会话;从指示为第一用户建立的计费会话的OCS接收初始信用控制应答消息;响应于从OCS接收到初始信用控制应答消息,发送会话启始消息到第二用户;接收来自第二用户的会话接受消息;发送会话接受消息到第一用户;发送更新信用控制请求消息到OCS,以获得用于会话的第一用户的配额;以及等待来自OCS的更新信用控制应答消息。
8.如权利要求7的方法,还包括接收来自OCS的更新信用控制应答消息;识别由OCS在更新信用控制应答消息中准予的配额;以及基于准予的配额为会话提供预算控制。
9.如权利要求8的方法,还包括响应于接收会话终止消息,发送终止信用控制请求消息到OCS,以向OCS报告准予的配额中的已使用部分;接收来自OCS的终止信用控制应答消息;以及终止会话。
10.如权利要求7的方法,其中如果来自OCS的初始信用控制应答消息指示该会话对第一用户是免费的,那么该方法还包括为该会话提供免费预算控制。
全文摘要
公开了为IMS会话提供在线计费的IMS网关系统和方法。在此描述的IMS网关系统(200)基于状态机进行操作以提供计费触发和IMS会话控制。对于一个计费触发,响应于从会话的第一用户接收会话起始消息,IMS网关系统(200)发送初始信用控制请求消息到在线计费系统OCS(220)。对于另一个计费触发,响应于从会话的第二用户接收会话接受消息,IMS网关系统发送更新信用控制请求消息到OCS。对于另一个计费触发,响应于接收会话终止消息,IMS网关系统发送终止信用控制请求消息到OCS。IMS网关系统可以当有来自OCS的其它会话控制消息或计费消息时进行触发以提供在线计费。
文档编号H04L12/58GK101083541SQ20061013229
公开日2007年12月5日 申请日期2006年5月31日 优先权日2006年5月31日
发明者蔡亦钢, 谌胜, 何庆红, 江凌, 裴珂, 朱迪斯·A·斯塔弗德, 苏洁, 吴亚萍, 张朝良 申请人:朗迅科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1