李 杨,王龙龙,李文策
(1.石家庄市轨道交通有限责任公司,河北石家庄050000;2.河北远东通信系统工程有限公司,河北石家庄050200)
IMS是由朗讯提出的下一代通信网(NGN)实现大融合方案的网络架构,作为一种全新的多媒体业务形式,应能够满足现在的终端客户更新颖、更多样化媒体业务的需求[1-2]。IMS网络与互联网相连,基于IP协议和开放的网络架构可以将语音、数据及多媒体等多种不同的业务,通过采用多种不同的接入方式来共享业务平台[3]。现在大部分用户采用H.248协议,无法直接使用IMS网络资源,必须通过AGCF接入到IMS网络中,AGCF实现H.248协议向SIP协议的转换。AGCF是H.248用户与IMS网络的第一个连接点,作为控制媒体网关(MGC)实体,为传统模拟用户或家庭用户提供PSTN/ISDN仿真业务,同时AGCF与IMS中的I/S/E-CSCF,PES AS等网元进行交互,完成H.248用户与IMS网络的互通[4]。
为了提高整个IMS网络的稳定性和可靠性,对AGCF异地容灾机制进行深入分析,尽量缩短业务恢复时间,确保接管过程稳定可靠,提高IMS网络提供的业务的稳定性[5]。
本文AGCF采用1+1互助方案,正常情况下,AG/IAD等网关支持双归属,所有网元的业务分担到2个AGCF设备。当主用AGCF1设备故障失效时,进行主用AGCF1与备用AGCF2的切换,其他网元将所有业务送至备用AGCF2,原来主用AGCF1设备下的终端用户也同时切换到备用AGCF2设备,由备用AGCF2设备接替工作[6]。现在H.248用户主要通过网关设备(AG/IAD)接入到AGCF,如图1所示,其中实线表示主归属,虚线表示从归属。
图1 AGCF在IMS网络的位置
在IMS网络中配置主用AGCF1设备和备用AGCF2设备互为备份关系,能够为H.248节点提供双归属服务,通过网管同时下发数据,确保互为备份的AGCF具有故障设备相同的网关和用户数据[7]。
当主用AGCF1故障瘫痪后,备用AGCF2实时接管用户的业务,需要进行容灾倒换,其中容灾倒换流程主要包括注册流程和呼叫流程,呼叫流程分为主叫流程和被叫流程。
1.1.1 注册流程
对于用户发起的注册,网关AG1检测到主用AGCF1出现故障后,选择备用AGCF2转发注册请求,注册流程如图2所示。
图2 AGCF容灾接管的重注册流程
①~②网关AG1发现注册的主用AGCF1已出现故障,将网关注册消息ServiceChange转发给备用AGCF2;
③网关AG1注册成功,备用AGCF2将响应消息Reply发送给网关AG1;
④ 备用AGCF2代理网关AG1上所有用户发起注册,将注册消息Register发送给I-CSCF;
⑤I-CSCF向用户发送鉴权挑战响应401,其中包含鉴权所需参数;
⑥备用AGCF2从401响应中提取鉴权参数,并计算鉴权相应参数Response,再次发起二次注册消息Register发送给I-CSCF;
⑦I-CSCF发送200 OK消息通知备用AGCF2鉴权成功;
⑧备用AGCF2向网关AG1发送Modify消息,要求AG1检测所有用户的摘机;
⑨备用AGCF2收到网关AG1返回的Reply响应。
1.1.2 呼叫流程
(1)主叫流程
注册在主用AGCF1的用户发起呼叫,网关AG1检测到主用AGCF1出现故障,将收到的起始请求发给备用AGCF2以接通呼叫,但是备用AGCF2没有用户注册数据,应将呼叫转发到主叫用户归属的网络,以便于后续业务的处理,主叫流程如图3所示。
图3 AGCF容灾接管的主叫流程
①H.248用户摘机发起呼叫;
② 网关AG1检测到主用AGCF1出现故障,网关AG1将收到的摘机消息发给备用AGCF2以接通呼叫;
③备用AGCF2检查本地配置,确认用户可以发起呼叫,给网关AG1发送响应消息NTFY_REPLY;
④备用AGCF2发现没有用户注册数据,向I-CSCF发起用户SIP注册;
⑤I-CSCF向用户发送鉴权挑战响应401,其中包含鉴权所需参数;
⑥备用AGCF2从401响应中提取鉴权参数,并计算鉴权相应参数Response,再次发起二次注册消息Register发送给I-CSCF;
⑦ 注册成功后,I-CSCF给备用AGCF2发送200OK响应;
⑧备用AGCF2给用户发送放音收号消息;
⑨用户进行拨号,建立呼叫连接,后续的呼叫流程与标准呼叫流程相同。
(2)被叫流程
被叫S-CSCF收到初始请求后,S-CSCF检测被叫侧的主用AGCF1故障失效,将呼叫发送互为备份的备用AGCF2上,被叫流程如图4所示[8]。
① S-CSCF收到用户的呼叫请求,根据用户记录的主机名AGCF1进行DNS查询,DNS返回相应的AGCF优先级列表,S-CSCF检测到优先级最高的主用AGCF1故障失效后,S-CSCF选择优先级低的备用AGCF2;或者S-CSCF检测到主用AGCF1故障后,根据本地静态配置获取备用设备AGCF2[9];
②根据SIP协议要求,S-CSCF将用户注册所保存的Contact封装为Request URI,应包含“AGaddr=AG网络侧地址;AGport=AG网络侧端口”的容灾信息;
③备用AGCF2发现本地没有用户注册的AG地址,根据AGaddr和AGport扩展参数放通呼叫,将呼叫路由到被叫用户注册的AG1;
④网关AG1返回ADD_REQ请求的响应;
⑤备用AGCF2代理用户向核心网络发起注册请求;
⑥核心网络向备用AGCF2回送成功响应,用户注册成功。如果存在鉴权要求,则要求正常鉴权注册流程[10];
⑦备用AGCF2向容灾用户发送MOD_REQ请求消息,后续的呼叫流程与标准的呼叫流程相同。
图4 AGCF容灾接管的被叫流程
当主用AGCF1恢复正常后,在备用AGCF2上向归属于主用AGCF1的网关发送切回命令,相应网关根据命令倒回主用AGCF1,后续的呼叫流程与标准的呼叫流程相同,容灾倒回流程如图5所示。
图5 AGCF容灾倒回实现流程
①备用AGCF2接收到容灾倒回命令,向原来注册到主用AGCF1的网关AG1下发Service Change消息,其中Service Change Termination ID 为“Root”,Service Change Method 为“Handoff”,Service Change Mgc ID为主用AGCF1地址,通知所有容灾用户重新注册[11];
②网关AG1收到Service Change消息后,将Service Change Mgc ID的主用AGCF1地址替换为对应用户注册的网关AG1地址,网关AG1发送响应消息Reply转发给备用AGCF2;
③网关AG1发送注册消息Service Change给主用AGCF1;
④主用AGCF1对用户进行鉴权,注册成功后,向网关AG1发送响应消息Reply;
⑤主用AGCF1代理网关AG1下的用户向核心网络I-CSCF发起SIP注册;
⑥主用AGCF1注册成功后,I-CSCF发送200 OK消息到主用AGCF1。
通过对容灾倒换流程和倒回流程的分析设计,在用户当前服务的主用AGCF1发生故障时,备份AGCF2可实现用户业务的实时接管,极大地提升了AGCF容灾业务接管的及时性、有效性和可靠性,提高了IMS业务提供的持续性,有利于树立IMS业务品牌[12]。
[1]时新建,林俐,许盛宏.IMS网络接入控制设备容灾方案研究[J].电信技术,2014(5):14-16.
[2]王翔,明月.固网软交换向IMS演进研究[J].计算机与网络,2016,42(13):60-63.
[3]中国电信集团公司.中国电信IMS网络设备技术要求[S].中国电信集团公司,2011.
[4]付承彪,蔡昌许,陶燕林.H.248协议在NGN网络中的应用分析[J].曲靖师范学院学报,2013,32(6):48-51.
[5]中国电信集团公司.中国电信AGCF设备技术要求[S].中国电信集团公司,2011.
[6]许盛宏,邓勇,李力卡.IMS网络AGCF高效可靠容灾方案探讨[J].电信技术,2014(S1):208-211.
[7]中国电信集团公司.中国电信IMS网络容灾技术要求[S].中国电信集团公司,2011.
[8]范喜亮.IMS中基于CSCF的呼叫会话控制模型的研究与设计[D].武汉:华中科技大学,2006.
[9]朱爱华,符刚,高功应.IMS网络演进中的关键问题探讨[J].移动通信,2010(13):5-10.
[10]王翔,沈广茂.基于固网软交换的AGCF设计与实现[J].计算机与网络,2016,42(14):62-65.
[11]中华人民共和国工业和信息化部.统一IMS网络与软交换互通信令流程技术要求:YDT 2290-2011[S].北京:人民邮电出版社,2011.
[12]林爱武.IMS容灾应急探讨[J].电信技术,2015(3):82-85.