何 阳,黄 乐,孙 洁
(中国移动通信集团设计院有限公司陕西分公司 西安 710077)
在无线宽带化、业务融合化以及降低运营成本的驱动下,移动通信网络向All IP演进已经成为必然的发展趋势,目前中国移动已经完成了承载网、核心网的IP化建设,无线接入网的IP化建设也在有计划地部署之中。随着中国移动通信网络IP化程度的不断提高以及分组域业务地位的迅速提升,SGSN Pool技术作为一种能够充分利用核心网分组域网络资源、提升核心网络安全性、有效降低运营成本的重要技术,受到各移动运营商以及设备厂商的高度关注。
3GPP TS23.236技术规范中明确提出了池组的概念,即多个核心网络节点组成一个池区,针对核心网分组域网络而言就是SGSN Pool。在SGSN Pool内每个BSC/RNC与池组内所有的SGSN节点均存在连接关系(物理连接或是逻辑连接),每个SGSN设备都可以为池组内所有的BSC/RNC提供服务[1]。SGSN Pool技术的实现涉及一个重要参数和一个关键功能,重要参数指的是NRI(network resource identifier,网络资源标识),关键功能指 NNSF(NAS node selection function,非接入层网络节点选择功能)。
在SGSN Pool中,NRI是P-TMSI的一部分,其长度可以在0~10 bit灵活选择,若为0 bit,则表示不启用SGSN Pool功能。在实际组网中,各厂商对P-TMSI结构中的比特位会有不同的分配方式,一般是按照当前SGSN Pool的规模以及核心网络发展趋势分配NRI的长度,即 SGSN Pool的容量与NRI的长度选择是互相制约的关系[2]。P-TMSI的具体结构以及NRI的具体位置如图1所示。
从图1可以看出,P-TMSI由32 bit构成,具体分析如下。
·30~31 bit:PS/CS标识位,用于表明 TMSI是在电路域还是在分组域中使用,即用来表示是TMSI还是P-TMSI。
·24~29 bit、0~13 bit:P-TMSI预留位 (包含 SGSN 重启标识位),用来标识分组域用户。
·14~n(n≤23)bit:NRI标识位,NRI的长度可以灵活调整(0~10 bit),NRI从第23个比特位开始由高到低依次使用。
从上面的分析可以看出,NRI和P-TMSI中用于分组域用户标识的比特位长度是一种互为制约的关系。为了保证每套核心网SGSN设备有足够的P-TMSI资源可分配给用户,且有足够的NRI码号资源分配给SGSN Pool内的核心网元设备,同时考虑后续SGSN设备用户容量的扩容需求,NRI的长度规划十分重要。
图1 P-TMSI结构示意
在SGSN Pool组网时,NNSF功能在BSC/RNC节点实现,但是3GPP TS23.236中并没有规定NNSF功能实现的具体算法,完全由设备厂商自行定义。在现阶段,经与相关厂商沟通,NNSF算法在实现时一般是参照SGSN Pool内的各套SGSN设备附着用户容量比例,在BSC/RNC节点对Pool内各套SGSN预先设置相应的负载均衡因子(根据网络发展需求,后续也可以有针对性地开发不同的算法满足特定的需求),这种静态配置的方式,只是将SGSN设备的附着用户容量作为计算容量因子的基础,没有考虑核心网分组域不同类型业务之间业务量的差异,可能会造成SGSN Pool内各套SGSN设备业务量的不均衡。
如果要实现SGSN Pool内相对精确的负载均衡效果,则需要采用动态的负载均衡算法。动态负载均衡算法能够根据SGSN Pool内各套SGSN设备的实时负荷参数(附着用户数、业务量、处理能力等)为分组域用户选择Pool内的SGSN设备,最大限度地保证SGSN Pool区域内各套SGSN设备的负载均衡。但是由于需要BSC/RNC节点不断获取SGSN设备的实时负荷信息,带来额外的信令开销,对BSC/RNC和SGSN的设备性能提出了比较高的要求,随着后续设备性能的提升和技术的发展,在SGSN Pool内引入动态负载均衡算法将会极大地提升池组内SGSN设备的利用率。
在SGSN Pool技术实现时,MS首次进入池组区域、在池组区域内移动、从池组区域中移动到非池组区域、完成用户迁移操作或是池组内SGSN设备出现故障,都会涉及不同的业务流程。
MS首次附着及池组内路由更新流程如图2所示,具体介绍如下。
·MS从BSC1/RNC1的路由区域中首次进入SGSN Pool时,BSC1/RNC1执行NNSF选择功能为MS选择SGSN,这里设定为SGSN2。
·MS接入SGSN2之后,由SGSN2为MS分配P-TMSI(包含 NRI值,SGSN2 对应的 NRI值为 2),SGSN2中保存MS的相关信息。
·当MS移动到BSC2/RNC2的路由区域中时,BSC2/RNC2根据相关信令消息 (对于RNC来说为IDNNS信令消息,对于BSC来说为TLLI信令消息)中携带的NRI信息,仍然为MS选择NRI=2对应的SGSN2为其提供相应服务。
从上述流程中可以看出,MS在SGSN Pool范围内移动时,始终由一个特定的SGSN设备为其提供服务,减少了由MS位置变化带来的SGSN之间的信令交互,降低了SGSN设备的信令负荷。
跨池组路由更新流程如图3所示,具体介绍如下。
·当MS移动到SGSN Pool外的区域时,需要重新附着到非Pool区域中的SGSN4,SGSN4中并没有MS的相关信息(MS的相关消息仍保存在SGSN2中)。
·SGSN4向DNS发送NRI请求消息,该消息中包含MS的原始RAI,DNS通过原始RAI值,找出对应的SGSN Pool区域内已经设置的Default SGSN,这里假设为SGSN3。
图2 MS首次附着及池组内路由更新流程
图3 跨池组路由更新流程
·SGSN4将从MS获取的原始NRI信息发送给Default SGSN,Default SGSN通过 NRI找出此 NRI对应的原始SGSN,这里为SGSN2。
·SGSN4通过与SGSN2发起通信获取MS的相关信息。
在SGSN Pool中设置Default SGSN的目的是为了在MS从SGSN Pool区域切换到区域外时,提前设置池组内的SGSN作为中转,实现SGSN Pool内外SGSN的通信。Default SGSN可以设置一个,也可以设置多个,设置多个Default SGSN的目的在于Default SGSN出现单点故障时SGSN Pool内外SGSN的正常通信仍不会受到影响。
SGSN Pool的负载重分配是指将某个SGSN上的用户迁移到SGSN Pool内其他SGSN上,也称为用户迁移,可以实现SGSN Pool内SGSN的负载重新分配或对Pool内SGSN设备进行相应的维护操作,最大程度地减少对用户业务的影响,其具体的业务流程如图4所示。
·在SGSN Pool的网络管理平台中将需要负载重分配的SGSN设置为卸载状态(重分配状态),并通知RNC/BSC设备SGSN的相应状态,这里负载重分配的SGSN选择为SGSN2。
·通过SGSN Pool的网络管理平台,在SGSN2上启动相应的用户卸载流程,SGSN2通知BSC/RNC设备自己处于卸载状态。
·BSC/RNC下发相应信令消息指示MS进行相应的路由更新,MS发送相应的路由更新消息给SGSN Pool内的 SGSN2。
·SGSN2已经设置为卸载状态,故SGSN2分配Null-NRI和 Non-broadcast RAI给 MS。Null-NRI是一个不属于任何SGSN的特殊NRI,仅在SGSN Pool内的SGSN设备之间进行负荷迁移时使用。
图4 负载重分配流程
·当MS重新进行业务请求时,BSC/RNC从MS获得NRI信息,即 Null-NRI。根据 SGSN Pool内剩余SGSN的容量比例,RNC/BSC为MS重新选择一个SGSN为MS提供相应的服务,这里假设为SGSN3。
·SGSN3根据Non-broadcast RAI定位原先为MS提供服务的 SGSN,即 SGSN2,并通过与 SGSN2进行通信获得MS的相关信息。
经与相关厂商沟通,目前各个厂商均无法实现负载重分配时完全无损的用户迁移,正处于PDP激活状态并进行数据交互的用户,其相关的业务会发生中断。
当SGSNPool内单套SGSN宕机时,对于BSC/RNC设备来说,宕机的SGSN已经处于不可用状态,会出现以下两种情况。
·对于在Pool内单套SGSN宕机期间内,新发起附着流程的MS来说,BSC/RNC根据NNSF功能算法,为其选择SGSN Pool内正常的SGSN为其服务,但是不包括宕机的SGSN,且在BSC/RNC侧负载均衡因子的配置不包括宕机SGSN的容量。
·对于原先由宕机的SGSN服务的MS来说,由于Pool内其他的SGSN并没有这部分MS的相应信息,需要MS在进行周期性路由更新、路由区切换或是发起新的业务请求时,由BSC/RNC重新按照NNSF算法为其选择Pool内正常的SGSN为其提供服务。
在3GPP TS23.236技术规范中规定,SGSN Pool内每个BSC/RNC与池组内所有的核心网SGSN设备均存在连接关系 (逻辑连接或是物理连接),即BSC/RNC设备与SGSN设备是一种全连接的组网方式。因为3GPP中并没有规定SGSN Pool内设备互联链路的实际承载方式,在现阶段实现SGSN Pool时,会存在以下3种组网方式。
在Gb/Iu-PS接口未实现IP化承载之前,如果要实现SGSN Pool组网,BSC/RNC设备(需支持Flex功能)需要通过直连链路与核心网SGSN设备实现全互联。若M个BSC/RNC设备与N个SGSN设备实现全连接,则需要配置M×N条互联链路。这种组网方式会占用较多的2 Mbit/s传输资源和BSC/SGSN设备端口,而占用的传输资源和设备端口的实际利用率却相对较低,对投资、网络资源均是一种浪费,且一旦有新网元加入池组,网络的调整相当复杂,不易于维护,增加了运维成本。Gb/Iu-PS接口未IP化时组网示意如图5所示。
在Gb/Iu-PS接口实现IP化承载后,池组中的SGSN设备与BSC/RNC设备的全连接可以通过路由方式实现(通过IP承载网络互通),物理上并不需要有直接相连的链路,SGSN Pool技术的引入变得容易,且一旦有新网元加入池组,网络调整比较简单,只需要制作相应数据即可。Gb/Iu-PS接口IP化后组网示意如图6所示。
SGSN Pool组网时,需要BSC设备支持Gb-Flex功能。若BSC不支持Flex功能,可以通过引入SPP(SGSN Pool proxy,池组功能代理设备)完成组网部署。SPP能够提供以下两大类功能。
·协议转换功能,实现FR和IP协议之间的转换,使BSC设备的Gb接口从原来的帧中继承载方式转变为IP承载方式。
·Flex代理功能,使原来不具备Gb-Flex功能的BSC设备具备Flex功能。
在实际应用中,对于SPP在网络中的设置,可以采用集中设置方式和分散设置方式两种,其组网方式分别如图 7、图8所示。
图5 Gb/Iu-PS接口未IP化时组网示意
图6 Gb/Iu-PS接口IP化后组网示意
若SPP设置在核心网SGSN设备侧,BSC设备侧不需要作任何的改动,但是SGSN侧的Gb电路需要进行重新割接,因为集中设置的SPP数量少,一旦SPP出现故障,则会对核心网分组域网络产生较大的影响;若SPP设置在无线接入网BSC设备侧,BSC设备则需要进行电路割接,通过SPP接入IP承载网络,需要增加大量的SPP设备,且割接工作量较大,对网络的影响较大。
Gb/Iu-PS接口在没有全部实现IP化承载之前,现网引入SGSN Pool技术的难度非常大,BSC/RNC设备需要通过实际的物理连接与SGSN进行全连接,组网十分复杂,不建议采用这种方式进行SGSN Pool组网;SPP代理设备应作为SGSN Pool技术引入的一种弥补策略,在少数BSC设备无法满足条件时使用,不建议大规模使用(引入SPP后网络结构复杂,故障点增多,且产品成熟度不高);建议在现网BSC/RNC设备完成Gb/Iu-PS接口IP化承载并支持Flex功能后,再引入SGSN Pool技术,这样可以避免割接调整和网络结构变化对现网造成的影响,实现简单,符合网络IP化演进的趋势。
图7 SPP集中设置组网示意
图8 SPP分散设置组网示意
·在引入SGSN Pool技术后,无线接入网BSC/RNC设备可以共享核心网SGSN设备资源,池组内SGSN容量配置不需要按照单套SGSN附着用户容量的峰值进行考虑,只需要按照平均的附着用户容量进行核算即可,节省了投资,提高了SGSN设备整体利用率。
·SGSN Pool的服务区域变得更大,MS在池组的服务区域中移动时一直由固定的SGSN为其提供服务,减少了SGSN之间的切换流程,间接提升了核心网分组域网络的处理性能。
·SGSN Pool技术能够很好地平衡“潮汐效应”,在减轻业务高负荷区域SGSN设备负荷的同时,利用业务低负荷区域SGSN设备的处理能力,解决现网不同区域或不同时段业务量不均衡的现状,特别是对突发的业务量(节假日、大型活动等)有良好的应对能力,提升了池组中SGSN设备的利用率。
·在现网中,核心网分组域缺少容灾机制,一旦出现SGSN单点故障,其服务区域下的所有用户将无法使用分组域相关业务,业务恢复时需要将挂接在这套SGSN上的无线接入网BSC/MFS设备的Gb链路割接调整到正常工作的SGSN设备上,过程复杂,业务恢复时间长。在SGSN Pool技术引入后,当池组中的SGSN出现故障时,BSC/RNC设备会通过NNSF节点选择功能将用户重新分配到正常工作的SGSN上,实现了SGSN设备的容灾备份。
·SGSN Pool内每套SGSN均具有相同地位,维护人员在进行数据配置时需要对全池组进行考虑,统一规划相应参数,如NRI、Null-NRI、Non-Broadcast RAI、Default SGSN等,且单套SGSN设备需要配置的局数据量大幅度增加,如单套SGSN需要配置整个池组区域的所有RAI。与传统组网方式相比,SGSN Pool的维护难度虽有所下降 (避免了频繁的电路割接调整),但网络数据配置相对复杂,对维护人员的技术要求更高。
现网引入SGSN Pool技术时,在综合考虑设备支持程度、网络投资、不同区域的业务需求等因素的基础上,建议采用两步走的策略[3],第一步先在局部范围内进行试点引入(降低新技术引入风险,保护现网投资),总结部署、建设和维护经验;第二步在试点引入取得良好效果后,再有计划、有步骤地向全网推广,应遵循的原则如下。
(1)NRI全网统一规划
NRI在网络中使用后再进行调整会相当复杂,在引入SGSN Pool技术之前,应立足于整个网络的角度,考虑后续网络发展,对NRI进行细致的规划(包括Null NRI)。NRI的规划不统一会对后续SGSN Pool的维护管理带来很大的困难,可能会导致池组区域内的负荷不均衡。
(2)SGSN Pool组网地域规划
在引入SGSN Pool组网时,无线接入网BSC/RNC管辖区域应尽量连续覆盖,且在选择SGSN Pool区域边界时,尽量避免切换频繁的区域,以减少MS在SGSN Pool区域和非池组区域之间的切换,提升用户使用感受和分组域网络质量;池组区域在规划时应尽量在本省范围内部署,不要进行跨省设置,以降低运维成本,减少对已有网络管理模式的影响;SGSN Pool覆盖区域的选择应考虑区域性的业务互补,这样能够降低“潮汐效应”的影响,发挥其“消峰抑谷”的特性,提高核心网设备利用率。在实际组网时,建议SGSN Pool内所有SGSN设备的配置容量均相同,并采用相同的计费策略;尽量不要进行重叠SGSN Pool区域的规划,降低数据配置复杂性和维护复杂度。
(3)Default SGSN 的规划
Default SGSN用于SGSN Pool内的用户漫游出池组区域,或者注册到池组外的SGSN时的移动性管理问题,或者用于用户切换到池组外SGSN时的切换请求。Default SGSN需要配置池组内所有的SGSN信息和NRI,用于向池组内目标SGSN转发池组外SGSN的切换请求,可以认为Default SGSN是池组内核心网SGSN与外界SGSN之间的消息转接点。在SGSN Pool技术中,池组中的的每套SGSN都可以配置成Default SGSN,可以同时在池组中设置多套SGSN作为Default SGSN,也可以将池组中所有的SGSN均设置为Default SGSN。
(4)池组内SGSN数量与容量配置规划
出于对SGSN Pool容灾备份的考虑,池组内的SGSN设备数量不宜太少,建议大于等于3套,一般选取4~5套SGSN设备进行组网较为合适;池组内SGSN设备容量建议采用等容量配置方式,单套SGSN设备的设备利用率建议选取为60%~70%,以保证池组内单套设备出现故障时,其余的SGSN设备能够接管业务。
(5)无线接入网设备改造
对于需要引入SGSN Pool技术的地市来说,首先需要完成其无线接入网BSC/MFS设备的Gb接口IP化工作并使其支持Gb-Flex功能,同时使相应RNC设备支持Iu-Flex功能,对于各地市设备型号较老的BSC/MFS设备,建议在合适的时间将其用能够支持Gb over IP和Gb-Flex功能的BSC/MFS设备进行替换。
虽然SGSN Pool技术具备很多优势,能够提升核心网分组域设备利用率,并引入了容灾机制,但是目前所有厂商均只支持同厂商SGSN设备组成池组,如何实现多厂商SGSN设备组Pool成为后续技术发展的主要方向;同时目前BSC/RNC设备所使用的NNSF静态算法仍然不能实现最优的负载均衡,可能会造成SGSN的实际业务量出现较大的差异,如何让SGSN设备的负载更加均衡也是后续需要重点关注的问题。
1 3GPP TS 23.236.Intra-domain connection of radio access network(RAN)nodes to multiple core network(CN)nodes,2008
2 蓝澜.MSC池技术及组网应用.电信交换,2010(3):56~60
3 中国移动通信集团公司.中国移动SGSN Pool网络试点测试方案V1.0.1,2010