IMS中基于SIP的双归属倒换技术的应用研究

2012-01-31 05:21:14吴军平
电视技术 2012年9期
关键词:代理服务器存活消息

徐 阳,吴军平

(1.光纤通信技术和网络国家重点实验室,湖北 武汉430074;2.武汉邮电科学研究院,湖北 武汉430074)

现代信息通信技术和互联网的发展日新月异,为满足新业务的丰富需求,现代通信网络向以软交换为核心NGN(下一代网络,Next Generation Network)的演进势在必行。ETSI TISPAN,ITU-T在研究NGN架构时,将IMS(IP多媒体子系统,IP Multimedia Subsystem)的概念引入到固网的NGN网络架构中[1]。

目前,IMS作为承载各类综合性业务的新型电信级网络,如何保证业务的可靠性,当网络设备发生故障后,业务如何快速恢复,成为IMS体系必须面对和解决的关键问题。本文通过研究一种基于SIP协议的“双归属”倒换技术的实现方法,来解决上述问题。

1 基于SIP协议应用的“双归属”倒换技术

当通信网络出现由于无法抗拒的自然灾害事故或一些不可预期的人为因素而引起故障时,需要一种能够提供紧急通信的应急机制,传统的PSTN网络难以实现这种功能,因此“双归属”技术应运而生。“双归属”倒换技术可实现异地的容灾备份,是IMS网络的安全容灾机制之一。通过相互备份处于异地的软交换核心网元的方式,来确保其中某处核心网元设备出现故障时,另一处可全盘接管其业务,从而确保当网络出现故障时业务不会中断[2]。

基于SIP协议应用的双归属倒换技术是当主用代理服务器断网后,接入终端UE(用户设备,User Equipment)可自动向备用代理服务器发起连接[3]。目前,不同的运营商对双归属服务器倒换的要求不同,典型的包括绝对主备和相对主备,分别描述如下:中国移动的双归属服务器要求是绝对主备,中国电信则要求相对主备。

绝对主备:当主用服务器异常后,UE探测备用服务器,若备用服务器正常工作,则UE的所有用户全部倒换到备用服务器上。随后,UE周期的探测主用服务器是否恢复正常可用。若主用服务器恢复正常,则该UE上的所有空闲用户全部切换到主用服务器上,处于呼叫接续或通话过程中的用户继续留在备用服务器上。当上述处于呼叫接续或通话的用户释放呼叫或完成通话后立刻自动切回到主用服务器上。若当主用服务器异常后,UE探测到备用服务器也异常,则UE继续在主备服务器之间不间断的来回探测,直到其中一个服务器恢复正常可用,UE的所有用户全部切换到该服务器上。

相对主备:当主用服务器异常后,UE探测备用服务器,若备用服务器正常工作,则UE的所有用户全部倒换到备用服务器上,此时该备用服务器就动态变成了主用服务器,原主用服务器动态变成备用服务器。之后,只有在当前服务器异常情况下,UE才重新探测新备用服务器是否正常可用:若备用服务器可用,则UE的所有用户全部切换到该服务器上,此时,该服务器又动态变为主用服务器;如果备用服务器不可用,则UE不间断的来回探测主备服务器的可用性,若探测到某个服务器可用,则UE的所有用户全部切换到该服务器上,此时该服务器就是主用服务器,另一个服务器就是备用服务器。

当主用服务器断网后,UE能自动切换到备用服务器,恢复语音业务,在现实工程使用中,也有很高的工程应用价值。

NGN的核心网络只有一个,即IMS,其核心特点为采用SIP协议和与接入的无关性。IMS中的服务器有PCSCF(代理CSCF,Proxy CSCF),I-CSCF(查询CSCF,Interrogating CSCF),S-CSCF(服务CSCF,Serving CSCF)等逻辑组件,其中P-CSCF相当于传统软交换中的代理服务器,S-CSCF相当于注册服务器[1]。在整个注册、呼叫过程中P-CSCF和S-CSCF都必须参与工作,且其地址在终端发出的SIP消息中均有明确的表示。图1描述了双归属服务器的组网模式。

图1 双归属服务器的组网图

2 双归属服务器的解决方案

2.1 服务器组组合

服务器的主备将会有两组主备:主备代理服务器和主备注册服务器,这样在实现主备应用时就有4种组合,约定探测组合的先后序列为:

1)探测主用代理服务器、主用注册服务器;

2)探测备用代理服务器、主用注册服务器;

3)探测备用代理服务器、备用注册服务器;

4)探测主用代理服务器、备用注册服务器。

2.2 解决关键点

2.2.1 如何探测服务器

首先,要在两个双归属服务器之间设置故障检测机制[4],UE采用标准的SIP OPTIONS消息心跳检测机制来进行对服务器的探测,根据RFC3261中的规定,标准的SIP非INVITEclient事务的重发间隔为0.5 s,1 s,2 s,4 s,4 s,4 s,4 s,4 s,4 s,4 s,最多发出11个OPTIONS消息,总时长约为32 s。当UE发出OPTIONS消息探测服务器而未收到响应时,就会按照上述规律进行重发,若在UE向服务器发出第一个OPTIONS消息40 s后仍未得到响应,则认为已与服务器断开链接[5]。

在当前服务器组下UE发现通信中断的判断条件决定了何时需发起新一轮的服务器探测,这一点是首先必须弄清楚的。这里所说的通信中断指服务器组不在线,不处理信令包。

当发现与服务器组通信中断时,需探测下一组服务器。找到下一组服务器组后,用OPTIONS消息来探测服务器是否存在。UE按网关来发送OPTIONS消息(不建议按端口来发送OPTIONS消息,避免占用较多的网络带宽,但是UE应该能够及时正确响应服务器按端口发送过来的OPTIONS请求消息),每次发送时,CSeq要递增。

2.2.2 切换服务器的流程

寻找下一组服务器组流程:当前服务器组按2.1节中列出的服务器组组合顺序向后依次寻找IP非空且与当前服务器组存在不同的服务器组,若4组都已遍历,仍没发现不同的服务器组,则认为没有发现下一组服务器。采用这种确认下一组服务器的方法,配置单服务器组的情况就包含于没有发现下一组服务器的分支中。

当找到了下一组服务器后,先用OPTIONS消息探测。若收到响应消息回复,则UE开始发送注册消息请求;若发送N次未收到响应回复,则认为该服务器组不可用,寻找下一个服务器组。

2.2.3 同时支持两种归属服务器的设计方案

首先说明UE存活态和UE注册态这两个概念。

注册态:用于上报该UE是否存在注册状态为OK的端点,如果存在,为OK;不存在为FAIL。

存活态:指UE使用的服务器组是否存活。当OPTIONS消息收到响应或者有一个端口注册包收到响应,即认为服务器组存活,值为OK;否则认为值为FAIL。仅当UE发生双服务器切换,找到了下一组服务器组时,将存活态的值设为FAIL。

下面分别就两种双归属倒换技术提出设计方案:

1)相对主备

(1)OPTIONS消息总是朝当前服务器组发送。当前服务器组在上电时选取第一组,否则在切换时找到下一组服务器时再确定;

(2)收到OPTIONS消息响应时,认为可以使用(如果UE存活态为FAIL,就将其改为OK,同时发起注册),继续发送OPTIONS消息;

(3)未收到OPTIONS消息响应时,发生切换;

(4)发生切换时,找到了下一组服务器,将UE存活态置为FAIL,设置新的当前服务器组,发送OPTIONS消息。

2)绝对主备

(1)OPTIONS消息朝当前服务器组发送,但是在当前服务器非主用服务器组时,也需要朝主用服务器组发送,即主用注册服务器和主用代理服务器;

(2)收到OPTIONS消息响应时,判断消息的响应是否来自于当前服务器组,如果是,认为该服务器组可以使用(如果UE存活态为FAIL,就将其改为OK,同时发起注册),如果不是,就要判断当前是否是绝对主备且当前服务器非主用服务器组,且OPTIONS消息的响应来自于主用服务器组,即发生切换,否则丢弃该消息;

(3)未收到OPTIONS消息响应时,判断该消息的源是否为当前服务器组,如果是,发送N次OPTIONS,N次超时发生切换,若不是,则需判断当前是否为绝对主备且当前服务器非主用服务器组,且OPTIONS消息源是主用服务器组,继续发送OPTIONS消息,否则丢弃该消息;

(4)收到OPTIONS消息响应时,判断当前服务器组是否为主用服务器组,若不是,发生切换,否则认为可使用(若UE存活态为FAIL,就将其改为OK,同时发起注册);

(5)未收到OPTIONS消息响应时,判断当前服务器组是否为主用服务器组,若不是,继续发送OPTIONS消息,否则发送N次,N次超时发生切换;

(6)发生切换时,判断当前是否为主用服务器组:若不是,将UE存活态改为FAIL,将主用服务器组设为当前使用的,发送OPTIONS消息;否则,寻找下一组服务器,找到后,将UE存活态置为FAIL,设置新的当前服务器组,发送OPTIONS消息。

3 双归属服务器算法

3.1 双归属服务器流程图

UE在某服务器组下正常工作,且心跳功能打开,默认UE存活态是OK。具体算法流程如图2所示。

图2 双归属服务器流程图

3.2 双归属服务器的算法描述

前提:UE在某服务器组下正常工作,且心跳功能打开,默认UE存活态是OK。

下文将详细分析算法描述。

1)发送OPTIONS消息,向当前服务器组发送,发送次数加1,然后判断是否为绝对主备且当前服务器非主用服务器组,增加向主用服务器组发送OPTIONS。

2)收到OPTIONS消息,分如下情况分类处理:

(1)消息的响应是否来自于当前服务器组,如果是:此时若当前UE存活态为FAIL,就将其改为OK,同时发起注册,跳到4);如果不是:跳到(2);

(2)绝对主备且当前服务器非主用服务器组,且OPTIONS消息响应来自于主用服务器组,此时发生切换,跳到5),否则退出。

3)未收到OPTIONS消息,分如下情况分类处理:

(1)若消息源是当前服务器组:判断是否发送了N次,如果未到N次,跳到1),如果到了N次,发生切换,跳到5);若消息源非当前服务器组:跳到(2);

(2)绝对主备且当前服务器非主用服务器组且OPTIONS消息源是主用服务器组:启动探测主用存活的定时器,超时,跳到1),否则退出。

4)次数清0,启动心跳定时器,超时后跳到1)。

5)寻找下一组服务器:

(1)若为相对主备或者绝对主备时当前服务器组为主用服务器组,依次向后遍历4组服务器,找寻不同于当前服务器组的一组;

(2)若为绝对主备且当前服务器组不为主用服务器组,则下一组服务器为主用服务器。

6)未找到下一组服务器,跳到4)。

7)找到下一组服务器,将UE存活态改为FAIL,该服务器组设为当前使用的,跳到4)。

4 总结

本文提出一种在IMS网络架构中基于SIP协议的双归属服务器倒换技术的实现方案[6],并分析了解决方案的关键点,设计可以同时支持两种归属服务器的方案,在双归属服务器算法中,详细分情况论述了双归属倒换机制的流程,提供了一种提高接入网与核心网连接的安全性与可靠性的新思路。

[1]YD/T 1522.5—2010,Technical requirements for session initiation protocol part5:Session initiation protocol based on the unified IMS[S].2011.

[2]龚德静,宋薇.软交换网络中的双归属实现方法[J].China Academic Journal Electronic Publishing House,2007(2):29-30.

[3]潘平.会话边界控制UE服务器应用的相关研究[J].广东通信技术,2010(5):13-15.

[4]钱蕾,施亚男,张艳.软交换双归属方案探讨[J].数据通信,2007(1):30-32.

[5]IETF,RFC3261:SIP:Session initiation protocol[S].2002.

[6]陈羽,张治中,邢进.IMS网络中基于策略的QoS视频会话研究[J].电视技术,2009,33(1):68.

猜你喜欢
代理服务器存活消息
一张图看5G消息
地铁信号系统中代理服务器的设计与实现
病毒在体外能活多久
爱你(2018年24期)2018-08-16 01:20:42
病毒在体外能活多久
IP地址隐藏器
飞利浦在二战中如何存活
中国照明(2016年4期)2016-05-17 06:16:18
131I-zaptuzumab对体外培养肿瘤细胞存活的影响
消息
中国卫生(2014年12期)2014-11-12 13:12:26
消息
中国卫生(2014年8期)2014-11-12 13:00:50
消息
中国卫生(2014年7期)2014-11-10 02:32:52