朱 斌,赫 罡,马瑞涛,郝晓锋(中讯邮电咨询设计院有限公司,北京 100048)
3GPP TS23.236在R5版本中正式提出了核心网(CN)池(Pool)组化的概念,它允许 1 个 RAN(RNC 或BSC)节点连接到多个CN(MSC或SGSN)节点。同时它也提供了一种新的路由机制,该机制允许RAN节点从Pool内多个CN节点中选择1个节点为用户服务。而这种路由机制实际就是由NNSF实现的,为了保证Pool内CN节点的负载均衡,NNSF节点可根据负载均衡算法把进入MSC Pool服务区内的用户分配给不同MSC来服务用户。
NNSF的路由选择保证了用户在MSC Pool服务区内一直由分配的MSC为该用户提供服务,而负载均衡算法保证了MSC Pool内的各MSC之间的负载均衡。本文主要对MSC Pool中的关键技术NNSF和负载均衡算法进行研究。
当用户首次在Pool内开机或者漫游进入MSC Pool的服务区域,NNSF节点依据负载均衡算法选择Pool内的一个有效的MSC为用户提供服务,被选择的有效MSC将分配含有本局NRI的TMSI给用户。此后用户在MSC Pool内登记、切换、呼叫、开关机等会始终由NNSF节点通过NRI选择到对应的MSC为其服务,负责其业务的处理。
触发负载均衡算法的场景有以下3种。
a)NNSF节点收到仅携带IMSI或IMEI的消息,即终端之前未分配CN节点,消息中没有携带NRI字段。
b)NNSF节点根据终端携带的路由参数无法从配置的NRI与CN节点的映射关系表中找到服务的CN节点,即TMSI携带的NRI没有对应CN节点。
c)NNSF节点根据终端携带的路由参数可以从配置的NRI与CN节点的映射关系表中找到服务的CN节点,但是对应的CN节点信令不可达,即TMSI携带的NRI有对应的CN节点,但是到该CN节点的信令不可达。
具体的判断执行流程如图1所示。
图1 消息执行流程
依据实际中的触发条件,表1中有3类具体的场景需要执行负载均衡算法。
表1 负载均衡算法触发情况分类
当用户终端携带不同的用户标识发起业务时,处理流程不同。
a)当用户以IMSI或IMEI发起业务时,NNSF节点(RNC/BSC/MGW)使用负载均衡算法选择1个有效的MSC作为MS的服务MSC,被选择的MSC将分配含有本局NRI的TMSI给用户。
b)当用户以TMSI发起业务时,NNSF节点(RNC/BSC/MGW)使用NNSF路由选择功能 (根据配置的NRI与CN节点的对应关系表)为用户选择服务的MSC。当被选择的MSC无NRI与MSC的对应关系时,NNSF节点使用负载均衡算法,选择Pool区内1个有效的MSC作为服务的MSC,被选择的MSC将分配含有本局NRI的TMSI给用户。
c)当用户以TMSI发起业务时,NNSF节点(RNC/BSC/MGW)使用NNSF路由选择功能 (根据配置的NRI与CN节点的对应关系表)为用户选择服务的MSC。当被选择的MSC有NRI与MSC的对应关系但MSC无效时(链路不通、处于禁用或卸载状态),NNSF节点使用负载均衡算法,选择Pool区内一个有效的MSC作为服务的MSC,被选择的MSC将分配含有本局NRI的TMSI给用户。
目前,负载均衡算法从具体的功能实现上可分为静态算法和动态算法2种。静态负载均衡算法采用的是预先决策的分配机制,不需要NNSF节点与相关系统周期性进行负荷情况的信息交互;而动态负载均衡算法相比静态负载均衡算法具有更多的灵活性,需要根据系统或接口的负载情况周期性地调整分配权重,它采用的是实时交互的决策机制。动态负载均衡算法虽然比静态负载均衡算法更具优势,但是会给系统带来更多的额外开销,影响系统的处理性能。
静态负载均衡算法的具体实现方式有很多种,目前主要有2类,一类是加权随机数算法,另一类是加权轮询算法。
2.1.1 加权随机数算法
该算法依据各个MSC的权重值来进行用户的选择分配,分配方式利用随机数概率的方式。具体的步骤如下。
a)获取各CN节点对应的容量权重值C(i)
式中:
CAPi——第i个MSC的容量因子
b)获取权重的取值W(i)
式中:
W(0)=0
c)随机生成一个范围在[0,1]之间平均分布的随机数V,如果V大于W(i-1)且小于等于W(i),则选择第i个CN节点。
举例:假如MSC Pool内有3个MSC,容量分别为10 万、10 万、20 万,容量因子分别取值为 1、1、2,则可以计算得到 W(0)=0,W(1)=0.25,W(2)=0.5,W(3)=1。如图2所示,当产生的随机数在0~0.25之间时选择MSC1服务,在 0.25~0.5 之间时选择 MSC2,在 0.5~1 之间时选择MSC3为其服务。这样就可以使用户按照容量1∶1∶2的比例均衡分布在不同的MSC上。
图2 加权随机数算法示例图
2.1.2 加权轮询算法
加权轮询算法也依据CN节点的权重来进行MSC的分配,与加权随机算法不同的是,它采用的是依次轮询的机制,而不是随机的方式,该算法严格按照比例依次为新用户分配可服务的MSC。
举例:同样假如MSC Pool内有3个MSC,权重因子分别取值为1、1、2,那么对于新登录的用户,NNSF节点会依次将第1个用户分配给MSC1,第2个用户分配给MSC2,第3个用户和第4个用户分配给MSC3,第5个用户分配给MSC1,依次类推。最终用户按照比例分配在不同的MSC上。
动态负载均衡算法目前也主要有2类:一类主要依据A接口的电路负荷,另一类主要依据VLR的用户实际容量。
2.2.1 A接口的电路负荷
BSC会周期性地计算到每个CN节点的A接口电路负荷,也就是占用电路/所有电路的值,根据负荷值的比重分配新用户到不同的CN节点上,例如A接口负荷低的分配的用户相对多一些。
2.2.2 MSC可用用户容量
a)MSC Pool内各个MSC统计本局剩余用户容量(总容量减去登记用户数),然后Pool区内各个MSC分别将本局可用用户容量等信息传递给各个NNSF节点。
b)NNSF根据负荷因子进行负荷分担,而负荷因子决定Pool区内某个MSC被选中的概率,其中MSCi负荷因子=MSCi的可用用户容量/MSC各节点当前可用容量总和(见图3)。
图3 动态负荷均衡示意图
MSC Pool网络建设前期需要对整个Pool组内的设备容量、接口配置、NNSF开启等进行统筹考虑,特别需要考虑以下几个方面的情况。
由于负载均衡算法为厂家特有的实现方式,在3GPP的标准中没有明确定义。因此,MSC Pool部署建设初期不建议部署NNSF的设备节点进行异厂家混合组网;此外,由于目前MSC Server和MGW之间还存在设备交互机制和部分信令协议内容私有化的现状,不建议Pool内CN设备异厂家组合。
对负载均衡算法的支持建议如下。
a)静态负载均衡算法必须支持并能保证异厂家(CN和RAN节点为不同厂家)的互通。
b)动态负载均衡算法建议为可选,现阶段实现的动态负载均衡算法都是私有协议,不能保证互通,在CN和RAN节点为同厂家情况时可以采用。
依据3GPP TS23.236的规定:NNSF在RAN节点实现,也可以在CN节点(一般指MGW)实现。目前NNSF功能可以在RNC或BSC部署,也可以选择在MGW上部署。依据不同节点的部署情况,有3种方案可考虑(见表2)。
现有主流设备商基本都能支持RNC/BSC实现NNSF以及MGW代理A Flex,部分厂家不支持MGW代理Iu Flex。由于现网存在不少BSC不支持A Flex的情况,结合厂家MGW的支持情况,方案2和方案3是目前优选的2个方案。
表2 NNSF功能部署节点情况比较
对于负载均衡算法和NNSF部署有如下建议。
a)RNC必须支持Iu Flex功能。
b)如果BSC不支持A Flex功能,MGW必须能够代理A Flex功能。
c)MGW应支持A Flex功能,可以支持Iu Flex功能。
MSC Pool的引入会带来很多的优势,其中负载均衡是MSC Pool的一个关键技术,它能够均衡Pool区内的话务,起到削峰抑谷的作用,并能减少跨局切换和更新信令、降低信令负荷、提升用户通话质量。本文结合3GPP标准规范的要求和设备的实际支持情况,详细说明了MSC Pool负载均衡算法的触发条件和基本处理流程,分析了几种典型的负载均衡算法,结合设备的支持情况,探讨了MSC Pool组化部署的一些考虑,为部署MSC Pool提供了建议。
[1]3GPP TS23.236 Intra-domain connection of Radio Access Network(RAN)nodes to multiple Core Network (CN)nodes[S/OL].[2009-12-19].http://www.3gpp.org/ftp/Specs/html-info/23.236.htm.
[2]3GPP TS 25.413 UTRAN Iu interface RANAP signalling [S/OL].[2009-12-19].http://www.3gpp.org/ftp/Specs/html-info/25.413.htm.
[3]3GPP TS 24.008 Mobile radio interface Layer 3 specification;Core network protocols[S/OL].[2009-12-19].http://www.3gpp.org/ftp/Specs/html-info/24.008.htm.
[4]ITU-T Recommendation H.248 Gateway control protocol [S/OL].[2009-12-19].http://www.javvin.com/protocolMegaco.html.
[5]肖飒,伍建萍.2G/3G共核心网的MSC Pool组网策略 [J].电信科学,2008(11).