基于sip的呼叫会话服务器和消息路由选择方法

文档序号:7885096阅读:294来源:国知局
专利名称:基于sip的呼叫会话服务器和消息路由选择方法
基于SIP的呼叫会话服务器和消息路由选择方法
背景技术
本发明涉及通信系统。更具体但非限制性地说,本发明涉及基于会话启动协议(SlP)的呼叫会话服务器和在服务器内为消息选择路由的方法。诸如高容量IP多媒体子系统MS-CSCF节点等弹性分布式且负载平衡的基于SIP的呼叫会话服务器可实现呼叫会话控制功能(CSCF)。服务器设计成处理许多同时一对一呼叫和会议呼叫,同时经仅一个或少数几个广告的外部接口(例如,SIP标准端口 5060和少数指定的IP地址)提供其服务。CSCF在可能多个处理器单元上创建多个背靠背用户代理(B2BUA)实例,以便同时处理呼叫,并且一般设计成不但处理符合标准SIP协议(RFC3261)的呼叫,而且处理基于RFC3261标准的变型和/或扩展的呼叫,其中的一些可以是专有变型和/或扩展。CSCF也可能需要同时(在相同呼叫会话内)支持纯RFC3261呼叫和基于RFC3261的多个变型和/或扩展的呼叫的组合。CSCF也可使用基于SIP的协议控制呼叫有关的资源。例如,充当媒体网关控制器的CSCF能够使用基于SIP的协议控制在多媒体网关/服务器中的媒体资源。在外部接口的有限集合后的多个处理器单元上创建多个B2BUA实例以处理多个同时呼叫时,必须将从外部节点进入的信令消息相关并路由选择到用于每个呼叫的正确B2BUA实例。为实现此操作,CSCF通常实现呼叫会话感知的SIP消息路由选择框架。也就是说,对于每个呼叫,SIP消息路由选择框架必须与对应B2BUA实例共享所有呼叫会话信息(如B2BUA实例生成的消息参数的值)。在呼叫会话服务器的CSCF功能的典型实现中用于SIP消息路由选择的现有解决方案依赖SIP协议消息报头中的“呼叫ID”、“分支”和/或“标记”参数。RFC3261要求这些参数在长度、空间和时间上是随机和独特的。在一个网关为出局请求生成这些参数时,要求在呼叫会话中涉及的远程/对等网关在到呼叫会话服务器的入局响应中以某一形式回应它们。典型的CSCF将诸如呼叫ID、分支和标记参数等各种SIP消息参数生成为任意长度的任意字符串,使得它们在空间、时间和跨多个呼叫是独特和随机的。然而,由于生成过程的性质和各种参数的随机性,它们通常没有能够由消息路由选择框架用于将消息与呼叫会话相关并且确定CSCF内消息要路由选择到的对应B2BUA实例的任何特别的属性或模式。因此,为帮助路由选择框架将SIP消息相关和为SIP消息选择路由,由其B2BUA实例为每个呼叫会话生成的各种参数与SIP消息路由选择框架共享。然而,呼叫会话的各种参数的值可能相互具有很少相关性或没有相关性。另外,参数的存在和值也取决于在状态机中能够是呼叫支路特定的呼叫会话的状态,以及呼叫支路是符合纯RFC3261还是其变型/扩展。因此,为有效利用参数值以将消息相关和为消息选择路由,共同的子字符串被包含到跨多个报头的参数值中,并且呼叫状态信息也在B2BUA与路由选择层之间共享。在B2BUA实例与路由选择框架之间的信息共享一般使用进程间通信(IPC)机制和/或分布式数据库来完成。在路由选择框架,数据库的使用也通过插入呼叫会话记录中并且登记到分布式数据库中的呼叫会话的参数提供弹性、容错和负载平衡,分布式数据库跨节点中的所有处理器复制(也称为全局复制(total replication) )0路由选择框架设计成由跨多个处理器单元分布、带有冗余性的多个路由选择过程实例组成。B2BUA实例和路由选择框架存储和取回来自任何处理器上数据库的呼叫会话记录。在尝试使路由选择框架具有呼叫会话感知时,参数值中共同子字符串的使用和B2BUA实例与SIP消息路由选择框架之间的信息共享带来了相当大的设计问题。问题分成三个主要类别。首先,由于在两个层之间呼叫会话信息共享和维护的相当大开销和复杂性原因,过程导致在CSCF内路由选择框架和B2BUA层两者中的效率低下。其次,由于路由选择框架被强制为每个呼叫维护呼叫会话信息(以实现弹性、容错和负载平衡),因此,如果路由选择过程的一个实例崩溃,则所有受影响呼叫会话的会话信息必须被转移到可能在另一处理器单元上的另一路由选择过程。这也涉及在分布式数据库中保存和取回受影响呼叫的呼叫会话信息。然而,这在信令平面中路由选择过程管理和数据库管理方面带来了相当大的开销和成本。另外,在路由选择框架中发生故障时,受影响呼叫会话的B2BUA实例必须与新路由选择过程实例重新相关联,并且存在为管理关联而产生的另外开销。这浪费了处理器和存储器资源,并且增大了呼叫处理等待时间,不利地影响了系统的性能和容量,同时使CSCF的总体设计变得复杂,并且因此变得昂贵。第三,诸如呼叫ID、分支和标记等SIP消息报头参数不能始终被依赖以实现独特性和随机性,同时,也在子字符串部分中承载特别的属性以识别呼叫会话。这是因为如果随机参数值字符串的子字符串用作共同子字符串,并且与SIP报头参数的其它随机字符串混合,则SIP报头参数字符串的总体熵被破坏,导致在路由选择框架更高的冲突概率。这导致消息的错误路由选择,特别是在高呼叫量下,这是由于冲突的概率随着消息的数量而上升。因此,以使SIP报头值易于发生冲突的方式使用SIP消息报头参数的共同字符串违反了 RFC3261的随机性要求。此外,在要支持RFC3261的变型/扩展,特别是在相同呼叫会话内也要支持基于纯RFC3261的信令时,此类方案可根本不起作用。SIP标准的变型和扩展能够对各种参数值设置另外的约束,或者能够修改现有约束(根据RFC3261 ),或者能够使用参数值以实现完全非标准目的。

发明内容
本发明陈述了在诸如MS-CSCF节点等实现呼叫会话控制功能(CSCF)的基于SIP的呼叫会话服务器内基于SIP的消息路由选择的新颖方案。本发明消除了在CSCF中消息路由选择框架具呼叫会话感知以便正确为进出节点的SIP消息选择路由的需要。通过使用此方案,路由选择框架能够设计成是算法式,并且因此高效、有弹性、容错以及高度适合用于在分布式和负载平衡的节点体系结构中部署。本发明具有以下特征:
1.消除了在基于SIP的呼叫会话服务器/IMS-CSCF的SIP呼叫会话消息路由选择框架中对呼叫会话感知的需要。2.基于在此以后在本申请的剩余部分中称为“路由选择关键字”的随机生成的会话标识符的算法SIP消息相关和路由选择。3.使用基于诸如呼叫ID、来源标记和目的地标记(也保证其值在时间、空间和跨多个呼叫会话是独特的)随机生成的会话标识符(路由选择关键字),以便以不破坏其熵的方式生成参数值。呼叫ID、来源标记和目的地标记报头是根据SIP标准及其变型和扩展在SIP消息中存在的最常见报头,并且因此是用于生成路由选择关键字的基础。4.只在会话控制层(CSCF/B2BUA实例)内保持呼叫会话信息而无需明确与消息路由选择框架共享。5.不需要在路由选择框架在数据库中呼叫会话信息的持久缓存以实现容错和弹性的可重复逻辑。6.位置无关(即,处理器单元和路由选择过程无关)的SIP消息相关和路由选择,导致高度优化、负载平衡和可扩展的路由选择解决方案。不存在用于呼叫会话的专用路由选择过程实例。在一个实施例中,本发明涉及一种在基于SIP的呼叫会话服务器内为SIP消息选择路由的方法,SIP消息与呼叫会话相关联。方法包括以下步骤:由SIP服务器接收来自始发节点的入局SIP消息;由SIP服务器基于入局SIP消息中的至少一个报头字段确定路由选择关键字;由SIP服务器利用路由选择关键字识别负责呼叫会话的背靠背用户代理(B2BUA)实例;将入局SIP消息发送到识别的B2BUA实例;由B2BUA实例创建出局SIP消息,其中B2BUA实例利用路由选择关键字在出局SIP消息中生成报头字段;以及将出局SIP消息从SIP服务器发送到终结节点。在另一实施例中,本发明涉及一种在基于SIP的呼叫会话服务器内为SIP消息选择路由的方法。方法包括以下步骤:在网络和传输层中接收来自始发节点的入局SIP消息;以及由网络和传输层将入局SIP消息转发到无呼叫会话感知的算法SIP消息路由选择框架中的多个SIP消息路由选择过程实例之一,其中网络和传输层在每消息的基础上跨多个SIP消息路由选择过程实例来对入局SIP消息进行负载平衡。接收SIP消息路由选择过程实例基于入局SIP消息中的至少一个报头字段确定路由选择关键字。SIP消息路由选择框架随后基于路由选择关键字将入局SIP消息转发到呼叫会话控制框架中的多个B2BUA实例的选择实例,其中SIP消息路由选择框架在每呼叫会话的基础上跨多个B2BUA实例来对入局SIP消息进行负载平衡。方法也包括:由所选择的B2BUA实例创建出局SIP消息,其中B2BUA实例利用路由选择关键字在入局SIP消息中生成取决于出局SIP消息的类型的报头字段;将出局SIP消息经SIP消息路由选择框架转发到网络和传输层;以及将出局SIP消息从SIP服务器发送到终止节点。在另一实施例中,本发明涉及一种用于为SIP消息选择路由的基于SIP的呼叫会话服务器。SEP服务器包括:用于接收来自始发节点的入局SIP消息和用于将出局SIP消息发送到终止节点的网络和传输层;与网络和传输层通信的算法SIP消息路由选择框架,SIP消息路由选择框架包括多个SIP消息路由选择过程实例;以及与SIP消息路由选择框架通信的呼叫会话控制框架,呼叫会话控制框架包括多个背靠背用户代理(B2BUA)实例。网络和传输层将入局SIP消息转发到SIP消息路由选择框架中的多个SIP消息路由选择过程实例之一,其中网络和传输层在每消息的基础上跨多个SIP消息路由选择过程实例来对入局SIP消息进行负载平衡。接收SIP消息路由选择过程实例基于入局SIP消息中的至少一个报头字段确定路由选择关键字,以及基于路由选择关键字将入局SIP消息转发到呼叫会话控制框架中的多个B2BUA实例的选择实例,其中SIP消息路由选择框架在每呼叫会话的基础上跨多个B2BUA实例来对入局SIP消息进行负载平衡。选择的B2BUA实例利用路由选择关键字创建出局SIP消息,以在出局SIP消息中生成取决于出局SIP消息的类型的报头字段,以及将出局SIP消息经SIP消息路由选择框架转发到网络和传输层。网络和传输层将出局SIP消息发送到终止节点。结合在一起,本发明的过程降低了呼叫处理等待时间,并且降低了 CPU开销,由此改进了容量。路由选择框架轻松地支持负载平衡、弹性和容错。用于任何呼叫会话的任何消息能够由任何路由选择过程处理,但仍正确地路由选择到正确的B2BUA实例。所有路由选择过程按算法执行相同逻辑而不缓存或存储/取回任何信息,从而使路由选择框架容错。由于参数值是基于共同使用的呼叫ID、来源标记和目的地标记报头,因此,本发明也轻松地处理SIP扩展和变型。


在以下部分中,将参照图中所示示范实施例描述本发明,其中:
图1是示出过程I的一示范实施例的步骤的流程 图2是示出过程2的一示范实施例的步骤的流程 图3是示出过程3的一示范实施例的步骤的流程图;以及
图4是示出在本发明的一实施例中用于两个呼叫会话的示范消息路由选择的SIP呼叫会话服务器/IMS-CSCF节点的简化框图。
具体实施例方式在一示范实施例中,本发明的消息路由选择方法包括三个过程:
过程1:用于SIP服务器内SIP消息的算法相关和无状态路由选择的总体过程。这涉及生成或从入局SIP消息取回称为“路由选择关键字”的会话标识符(根据过程2);识别负责SIP消息所属的呼叫会话的正确B2BUA ;以及将入局SIP消息和路由选择关键字之间一起发送到识别的B2BUA实例;以及基于路由选择关键字生成出局SIP消息的适当参数(根据过程3)。过程2:用于基于入局SIP消息的参数生成或取回路由选择关键字的过程。过程3:用于使用路由选择关键字生成某些特定SIP消息参数值的过程。图1是示出总体过程I的一示范实施例的步骤的流程图。消息在用户代理客户端(UAC) 11、SIP服务器12与用户代理服务器(UAS) 13之间的SIP事务中示出。UAC创建SIP请求消息14,并且将它发送到SIP服务器。在步骤15,SIP服务器利用服务器驻留的节点提供的设施,接收入局消息。在步骤16,服务器利用过程2的过程,取回或生成路由选择关键字。在步骤17,服务器利用路由选择关键字,识别负责呼叫会话的B2BUA实例。在步骤18,服务器将入局消息和路由选择关键字发送到识别的B2BUA实例19,其生成出局SIP消息。在步骤20,服务器利用过程3的过程,生成出局SIP消息报头字段。在步骤21,服务器利用服务器驻留的节点提供的设施,将出局SIP消息发送到UAS 13。UAS 13生成通过服务器路由选择到UAC 11的SIP响应消息22时,进行相同的过程。UAS 13生成通过服务器路由选择到UAC 11的SIP请求消息23时,以及UAC 11生成通过服务器路由选择到UAS 13的SIP消息响应24时,也进行相同的过程。图2是示出过程2的一示范实施例的步骤的流程图。在此过程中,SIP服务器12基于入局SIP消息的参数,生成或取回路由选择关键字。过程在步骤30开始,并且转到步骤31,在该步骤中,SIP服务器利用服务器驻留的节点提供的设施,接收入局消息。在步骤32,确定入局消息是请求14 (或23)还是响应22 (或24)。如果消息是请求,则过程转到步骤33,在该步骤中,确定目的地标记(To-Tag)是否存在。如果目的地标记存在,则过程转到步骤34,在该步骤中,如下所述,服务器利用取回算法以目的地标记作为输入,取回路由选择关键字。过程随后在步骤37结束。然而,如果目的地标记不存在,则过程转到步骤35,在该步骤中,服务器根据RFC3261的第19.3部分,以符合标记的随机属性的方式生成称为路由选择关键字的全局独特字母数字字符串。在一个实施例中,如下所述,利用算法Fltoute,以呼叫ID或来源标记(From-Tag)或两者作为输入,生成路由选择关键字。过程随后在步骤37结束。然而,如果在步骤32确定入局消息是响应,则过程转到步骤36,在该步骤中,如下所述,服务器利用取回算法Fltetaieve,以来源标记作为输入,取回路由选择关键字。过程随后在步骤37结束。图3是示出过程3的一示范实施例的步骤的流程图。在此过程中,SIP服务器12使用路由选择关键字,生成用于出局SIP消息的某些特定的SIP消息参数值。过程在步骤40开始,并且转到步骤41,在该步骤中,服务器确定出局消息是请求还是响应。如果消息是请求,则过程转到步骤42,在该步骤中,如下所述,使用生成算法Fgm,基于路由选择关键字生成来源标记。过程随后在步骤44结束。然而,如果在步骤41确定出局消息是响应,则过程转到步骤43,在该步骤中,如下所述,服务器使用生成算法Fgm,基于路由选择关键字生成目的地标记。过程随后在步骤44结束。在一个实施例中,Fgm和方法是算法和/或数学上互逆的一对算法。在下
-Ι Fgen 矛口 pRetrieve
的示例中:
Fcen算法的输出将是来源标记或目的地标记。FEetrieve算法的输出将是取回的路由选择关键字。过程2和3中使用的算法和Fem的示例:
示例1:
Ftol能够是:AES加密(路由选择关键字,P),其中,P是用于加密的密码短语。
`
FEetrieve必须是:AES解密(T, P),其中,T是来源标记或目的地标记,并且P是用于解密的密码短语。示例2:
Fcen能够是:假定路由选择关键字长度为N,则生成随机字母数字字符字符串,并且将路由选择关键字附加到该字符串,使得结果具有路由选择关键字作为前N个字符。FEetrieve必须是:收集来源标记或目的地标记的前N个字符。示例 3:
Fcen能够是:生成长度等于路由选择关键字的任意字母数字字符字符串,并且随后将路由选择关键字交织到该字符串中,使得结果字符串的偶数编号位置字符是路由选择关键字的那些字符。FEetrieve必须是:从来源标记或目的地标记收集所有偶数编号位置字符,并且将收集的字符级联。
方法2中使用的算法Flteute的示例:
在下述示例中,采用入局SIP请求消息的呼叫ID和/或来源标记的Fltoute算法的输出是生成的路由选择关键字。示例:
FEoute能够是:原样使用呼叫ID或来源标记。Fltoute能够是:级联呼叫ID和来源标记。Fltoute 能够是:MD5 (呼叫 ID)。Fltoute能够是:SHA_1 (呼叫ID+目的地报头),其中,“ + ”表示级联。Fltoute能够是:MD5 (·来源标记+ R-URI ),其中,“ + ”表示级联。Fltoute能够是:SHA_1 (来源标记+ R-URI+分支参数),其中,“ + ”表不级联。Fltoute 能够是:TwoFish (来源标记)。Fltoute能够是:SHA-1 (整个SIP消息),这是因为SIP消息已经包含呼叫ID和来源标记。Fltoute能够是:AES (呼叫ID+随机字符串+时戳),其中,“ + ”表示级联。Fltoute能够是=TripleDES (呼叫ID+随机字符串+节点名称),其中,“ + ”表示级联。Fltoute能够是:(呼叫ID+去除点的节点IP地址),其中,“ + ”表不级联。Fltoute能够是:(呼叫ID+时戳+收到SIP消息的板的硬件MAC地址),其中,“ + ”表示级联。下面利用SIP呼叫会话服务器/MS CSCF节点实现的一般化体系结构,描述过程
1、2和3,该实现是基于本发明的SIP消息路由选择方法。图4是示出在本发明的一实施例中用于两个呼叫会话的示范消息路由选择的SIP呼叫会话服务器/IMS-CSCF节点50的简化框图。会话标为A和B。节点包括三个层:呼叫会话控制框架51、SIP消息路由选择框架52及网络和传输层53。呼叫会话控制框架51包括CSCF/B2BUA实例54a_54n池,每个呼叫会话专用一个实例。呼叫会话控制框架负责根据RFC 3261或其变型和扩展处理和生成SIP消息。呼叫会话控制框架也负责基于入局的初始呼叫设置消息生成用于出局消息的特定的独特SIP消息报头字段。用于出局消息的报头字段以此类方式生成,使得在远端点基于SIP的节点55或使用基于SIP的信令协议提供其服务的任何共同位置或远端资源管理节点57(如媒体网关服务器)在入局SIP消息中回应那些报头字段时,SIP消息路由选择框架52中的路由选择过程实例56a-56n能够按算法将入局消息路由选择到正确的CSCF/B2BUA实例54。SIP消息路由选择框架52包括弹性SIP消息路由选择过程实例56a_56n池。每个路由选择过程实例负责跨CSCF/B2BUA过程实例54a_54n池的入局SIP消息的每呼叫会话负载平衡。路由选择过程实例不是每呼叫专用,而是基于消息的报头字段内容路由入局SIP消息。任何SIP消息能够由任何路由选择过程按算法进行路由选择。SIP消息路由选择框架也负责将出局消息转发到网络和传输层53。SIP消息路由选择框架具有基于SIP的协议感知,但没有呼叫会话感知。网络和传输层53包括弹性IP/TCP/UDP/SCTP协议终止端点58。网络和传输层负责跨SIP消息路由选择框架52中SIP消息路由选择过程实例56a-56n池的入局业务的每消息负载平衡。网络和传输层也负责向正确的目的地节点55或57路由出局业务。
通过上述方式,本发明利用在路由选择层的SIP消息的算法路由选择,而算法路由选择通过用于生成消息参数的过程而变得可行。这些过程在一起消除了:
在B2BUA层与路由选择框架层之间明确共享任何呼叫会话信息的需要;
分布式数据库登记任何呼叫会话记录以便在路由选择框架层实现弹性和容错的需
要;
在管理资源(处理器、存储器和/或数据库)以便在B2BUA层和路由选择框架实现信息共享中产生的开销;以及
设计B2BUA和路由选择框架以实现容错的复杂性(重新关联B2BUA实例和路由选择过程;在出现故障的情况下将受影响的呼叫会话从一个路由选择过程转到另一路由选择过程;使用数据库保持呼叫会话记录和跨节点中的各种处理器单元保持记录的全局复制)。正如本领域的技术人员将认识到的一样,本申请中描述的创新概念可在广泛应用内修改和改变。因此, 专利主题的范围将不限于上述任一特定示范教导,而只由随附权利要求定义。
权利要求
1.一种在基于会话启动协议(SIP)的呼叫会话服务器内为SIP消息选择路由的方法,所述SIP消息与呼叫会话相关联,所述方法包括以下步骤: 由所述SIP服务器接收来自始发节点的入局SIP消息; 由所述SIP服务器基于在所述入局SIP消息中的至少一个报头字段来确定称为路由选择关键字的会话标识符; 由所述SIP服务器利用所述路由选择关键字识别负责所述呼叫会话的背靠背用户代理(B2BUA)实例; 将所述入局SIP消息发送到所述识别的B2BUA实例; 由所述B2BUA实例创建出局SIP消息,其中所述B2BUA实例利用所述路由选择关键字在所述出局SIP消息中生成报头字段;以及 由所述SIP服务器将所述出局SIP消息发送到终止节点。
2.按权利要求1所述的方法,其中确定路由选择关键字的所述步骤包括以下步骤: 确定所述入局SIP消息是请求消息还是响应消息; 所述入局SIP消息是请求消息并且目的地标记存在时,利用所述入局SIP消息的目的地标记取回所述路由选择关键字;所述入局SIP消息是请求消息,并且所述目的地标记不存在时,利用所述入局SIP请求消息的呼叫ID、所述入局SIP请求消息的来源标记或两者,根据RFC3261的第19.3部分,以符合标记的随机属性的方式将所述路由选择关键字生成为全局独特字母数字字符串;以及所述入局SIP消息是响应消息时,利用所述入局SIP消息的来源标记取回所述路由选择关键字。
3.按权利要求2所述的方法,其中利用入局请求消息的目的地标记或入局响应消息的来源标记取回所述路由选择关键字的所述步骤包括利用取回算法取回所述路由选择关键字,所述取回算法是由所述SIP服务器用于在出局SIP消息中生成所述来源标记或所述目的地标记的生成算法的算法和/或数学逆。
4.按权利要求1所述的方法,其中创建出局SIP消息的所述步骤包括以下步骤: 确定所述出局SIP消息是请求消息还是响应消息; 所述出局消息是请求消息时,基于所述路由选择关键字生成所述出局SIP消息中的来源标记;以及 所述出局消息是响应消息时,基于所述路由选择关键字在所述出局SIP消息中生成所述目的地标记。
5.按权利要求4所述的方法,其中生成请求消息的来源标记或响应消息的目的地标记的所述步骤包括利用生成算法生成所述来源标记或所述目的地标记,所述生成算法是由所述SIP服务器用于从入局SIP消息中的来源标记或目的地标记取回所述路由选择关键字的取回算法的算法和/或数学逆。
6.一种在基于会话启动协议(SIP)的呼叫会话服务器内为SIP消息选择路由的方法,所述方法包括以下步骤: 在网络和传输层中接收来自始发节点的入局SIP消息; 由所述网络和传输层将所述入局SIP消息转发到无呼叫会话感知的算法SIP消息路由选择框架中的多个SIP消息路由选择过程实例之一,其中所述网络和传输层在每消息的基础上跨所述多个SIP消息路由选择过程实例来对入局SIP消息进行负载平衡; 由所述接收SIP消息路由选择过程实例基于所述入局SIP消息中的至少一个报头字段确定路由选择关键字; 基于所述路由选择关键字,由所述SIP消息路由选择框架将所述入局SIP消息转发到呼叫会话控制框架中的多个背靠背用户代理(B2BUA)实例的选择的B2BUA实例,其中所述SIP消息路由选择框架在每呼叫会话的基础上跨所述多个B2BUA实例来对入局SIP消息进行负载平衡; 由所选择的B2BUA实例创建出局SIP消息,其中所述B2BUA实例利用所述路由选择关键字在所述出局SIP消息中生成取决于所述出局SIP消息的类型的报头字段; 将所述出局SIP消息经所述SIP消息路由选择框架转发到所述网络和传输层;以及 将所述出局SIP消息从所述SIP服务器发送到终止节点。
7.按权利要求6所述的方法,其中确定路由选择关键字的所述步骤包括以下步骤: 所述入局SIP消息是请求消息时,以目的地标记作为输入,利用取回算法取回所述路由选择关键字;以及 所述入局SIP消息是响应消息时,以来源标记作为输入,利用取回算法取回所述路由选择关键字。
8.按权利要求6所述的方法,其中创建出局SIP消息的所述步骤包括以下步骤: 所述出局SIP消息是请求消息时,基于所述路由选择关键字在所述出局SIP消息中生成来源标记;以及 所述出局SIP消息是响应消息时,基于所述路由选择关键字在所述出局SIP消息中生成目的地标记。
9.一种用于为会话启动协议(SIP)消息选择路由的基于SIP的呼叫会话服务器,所述SIP服务器包括: 用于接收来自始发节点的入局SIP消息和用于将出局SIP消息发送到终止节点的网络和传输层; 与所述网络和传输层通信的算法SIP消息路由选择框架,所述SIP消息路由选择框架包括多个SIP消息路由选择过程实例;以及 与所述SIP消息路由选择框架通信的呼叫会话控制框架,所述呼叫会话控制框架包括多个背靠背用户代理(B2BUA)实例; 其中所述网络和传输层将所述入局SIP消息转发到所述SIP消息路由选择框架中的多个SIP消息路由选择过程实例之一,其中所述网络和传输层在每消息的基础上跨所述多个SIP消息路由选择过程实例来对入局SIP消息进行负载平衡; 其中所述接收SIP消息路由选择过程实例基于所述入局SIP消息中的至少一个报头字段确定路由选择关键字,以及基于所述路由选择关键字,将所述入局SIP消息转发到所述呼叫会话控制框架中的所述多个B2BUA实例的选择的B2BUA实例,其中所述SIP消息路由选择框架在每呼叫会话的基础上跨所述多个B2BUA实例来对入局SIP消息进行负载平衡;其中所选择的B2BUA实例利用所述路由选择关键字在出局SIP消息中生成取决于所述出局SIP消息的类型的报头字段,来创建所述出局SIP消息; 其中所选择的B2BUA实例将所述出局SIP消息经所述SIP消息路由选择框架转发到所述网络和传输层;以及 其中所述网络和传输层将所述出局SIP消息发送到所述终止节点。
10.按权利要求9所述的SIP服务器,其中所述接收SIP消息路由选择过程实例包括编程为执行以下操作的处理器单元: 所述入局SIP消息是请求消息时,如果目的地标记存在,则以所述目的地标记作为输入,利用取回算法取回所述路由选择关键字,其中所述取回算法是由所述SIP服务器用于在出局SIP请求消息中生成来源标记或在出局SIP响应消息中生成所述目的地标记的算法的算法和/或数学逆;以及 如果所述入局SIP请求消息中所述目的地标记不存在,则利用所述入局SIP请求消息的呼叫ID、所述入局S IP请求消息的来源标记或两者,根据RFC3261的第19.3部分,以符合标记的随机属性的方式将所述路由选择关键字生成为全局独特字母数字字符串;以及所述入局SIP消息是响应消息时,以所述来源标记作为输入,利用取回算法取回所述路由选择关键字,其中所述取回算法是由所述SIP服务器用于在出局SIP响应消息中生成所述目的地标记或在出局SIP请求消息中生成所述来源标记的算法的算法和/或数学逆。
11.按权利要求9所述的SIP服务器,其中所选择的B2BUA实例包括编程为执行以下操作的处理器单元: 所述出局SIP消息是请求消息时,利用生成算法,基于所述路由选择关键字在所述出局SIP消息中生成来源标记,其中所述生成算法是由所述SIP服务器用于在所述入局SIP请求消息中的目的地标记存在时从所述目的地标记取回所述路由选择关键字的取回算法的算法和/或数学逆;以及 所述出局SIP消息是响应消息时,利用生成算法,基于所述路由选择关键字在所述出局SIP消息中生成目的地标记,其中所述生成算法是由所述SIP服务器用于从所述入局SIP响应消息中的来源标记取回所述路由选择关键字的取回算法的算法和/或数学逆。
全文摘要
本文公开了用于为SIP消息选择路由的方法和基于SIP的呼叫会话服务器(50)。网络和传输层(53)接收入局SIP消息,并将它转发到SIP消息路由选择框架(52)中多个SIP消息路由选择过程实例(56a-56n)之一。接收SIP消息路由选择过程实例基于入局消息中的至少一个报头字段确定路由选择关键字,并且基于路由选择关键字将入局消息转发到呼叫会话控制框架(51)中多个背靠背用户代理(B2BUA)实例(54a-54n)中被选择的一个。选择的B2BUA实例利用路由选择关键字创建出局SIP消息,以在出局请求消息中生成来源标记(From-Tag),或者在出局响应消息中生成目的地标记(To-Tag),并且随后将出局消息转发到传送出局消息的网络和传输层(53)。
文档编号H04L29/08GK103098437SQ201180044663
公开日2013年5月8日 申请日期2011年7月14日 优先权日2010年7月16日
发明者S.萨马维达姆, K.坎宁安 申请人:瑞典爱立信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1