朱 斌,赫 罡,馬瑞濤,郝曉鋒(中訊郵電咨詢設計院有限公司,北京 100048)
3GPP TS23.236在R5版本中正式提出了核心網(wǎng)(CN)池(Pool)組化的概念,它允許 1 個 RAN(RNC 或BSC)節(jié)點連接到多個CN(MSC或SGSN)節(jié)點。同時它也提供了一種新的路由機制,該機制允許RAN節(jié)點從Pool內(nèi)多個CN節(jié)點中選擇1個節(jié)點為用戶服務。而這種路由機制實際就是由NNSF實現(xiàn)的,為了保證Pool內(nèi)CN節(jié)點的負載均衡,NNSF節(jié)點可根據(jù)負載均衡算法把進入MSC Pool服務區(qū)內(nèi)的用戶分配給不同MSC來服務用戶。
NNSF的路由選擇保證了用戶在MSC Pool服務區(qū)內(nèi)一直由分配的MSC為該用戶提供服務,而負載均衡算法保證了MSC Pool內(nèi)的各MSC之間的負載均衡。本文主要對MSC Pool中的關(guān)鍵技術(shù)NNSF和負載均衡算法進行研究。
當用戶首次在Pool內(nèi)開機或者漫游進入MSC Pool的服務區(qū)域,NNSF節(jié)點依據(jù)負載均衡算法選擇Pool內(nèi)的一個有效的MSC為用戶提供服務,被選擇的有效MSC將分配含有本局NRI的TMSI給用戶。此后用戶在MSC Pool內(nèi)登記、切換、呼叫、開關(guān)機等會始終由NNSF節(jié)點通過NRI選擇到對應的MSC為其服務,負責其業(yè)務的處理。
觸發(fā)負載均衡算法的場景有以下3種。
a)NNSF節(jié)點收到僅攜帶IMSI或IMEI的消息,即終端之前未分配CN節(jié)點,消息中沒有攜帶NRI字段。
b)NNSF節(jié)點根據(jù)終端攜帶的路由參數(shù)無法從配置的NRI與CN節(jié)點的映射關(guān)系表中找到服務的CN節(jié)點,即TMSI攜帶的NRI沒有對應CN節(jié)點。
c)NNSF節(jié)點根據(jù)終端攜帶的路由參數(shù)可以從配置的NRI與CN節(jié)點的映射關(guān)系表中找到服務的CN節(jié)點,但是對應的CN節(jié)點信令不可達,即TMSI攜帶的NRI有對應的CN節(jié)點,但是到該CN節(jié)點的信令不可達。
具體的判斷執(zhí)行流程如圖1所示。
圖1 消息執(zhí)行流程
依據(jù)實際中的觸發(fā)條件,表1中有3類具體的場景需要執(zhí)行負載均衡算法。
表1 負載均衡算法觸發(fā)情況分類
當用戶終端攜帶不同的用戶標識發(fā)起業(yè)務時,處理流程不同。
a)當用戶以IMSI或IMEI發(fā)起業(yè)務時,NNSF節(jié)點(RNC/BSC/MGW)使用負載均衡算法選擇1個有效的MSC作為MS的服務MSC,被選擇的MSC將分配含有本局NRI的TMSI給用戶。
b)當用戶以TMSI發(fā)起業(yè)務時,NNSF節(jié)點(RNC/BSC/MGW)使用NNSF路由選擇功能 (根據(jù)配置的NRI與CN節(jié)點的對應關(guān)系表)為用戶選擇服務的MSC。當被選擇的MSC無NRI與MSC的對應關(guān)系時,NNSF節(jié)點使用負載均衡算法,選擇Pool區(qū)內(nèi)1個有效的MSC作為服務的MSC,被選擇的MSC將分配含有本局NRI的TMSI給用戶。
c)當用戶以TMSI發(fā)起業(yè)務時,NNSF節(jié)點(RNC/BSC/MGW)使用NNSF路由選擇功能 (根據(jù)配置的NRI與CN節(jié)點的對應關(guān)系表)為用戶選擇服務的MSC。當被選擇的MSC有NRI與MSC的對應關(guān)系但MSC無效時(鏈路不通、處于禁用或卸載狀態(tài)),NNSF節(jié)點使用負載均衡算法,選擇Pool區(qū)內(nèi)一個有效的MSC作為服務的MSC,被選擇的MSC將分配含有本局NRI的TMSI給用戶。
目前,負載均衡算法從具體的功能實現(xiàn)上可分為靜態(tài)算法和動態(tài)算法2種。靜態(tài)負載均衡算法采用的是預先決策的分配機制,不需要NNSF節(jié)點與相關(guān)系統(tǒng)周期性進行負荷情況的信息交互;而動態(tài)負載均衡算法相比靜態(tài)負載均衡算法具有更多的靈活性,需要根據(jù)系統(tǒng)或接口的負載情況周期性地調(diào)整分配權(quán)重,它采用的是實時交互的決策機制。動態(tài)負載均衡算法雖然比靜態(tài)負載均衡算法更具優(yōu)勢,但是會給系統(tǒng)帶來更多的額外開銷,影響系統(tǒng)的處理性能。
靜態(tài)負載均衡算法的具體實現(xiàn)方式有很多種,目前主要有2類,一類是加權(quán)隨機數(shù)算法,另一類是加權(quán)輪詢算法。
2.1.1 加權(quán)隨機數(shù)算法
該算法依據(jù)各個MSC的權(quán)重值來進行用戶的選擇分配,分配方式利用隨機數(shù)概率的方式。具體的步驟如下。
a)獲取各CN節(jié)點對應的容量權(quán)重值C(i)
式中:
CAPi——第i個MSC的容量因子
b)獲取權(quán)重的取值W(i)
式中:
W(0)=0
c)隨機生成一個范圍在[0,1]之間平均分布的隨機數(shù)V,如果V大于W(i-1)且小于等于W(i),則選擇第i個CN節(jié)點。
舉例:假如MSC Pool內(nèi)有3個MSC,容量分別為10 萬、10 萬、20 萬,容量因子分別取值為 1、1、2,則可以計算得到 W(0)=0,W(1)=0.25,W(2)=0.5,W(3)=1。如圖2所示,當產(chǎn)生的隨機數(shù)在0~0.25之間時選擇MSC1服務,在 0.25~0.5 之間時選擇 MSC2,在 0.5~1 之間時選擇MSC3為其服務。這樣就可以使用戶按照容量1∶1∶2的比例均衡分布在不同的MSC上。
圖2 加權(quán)隨機數(shù)算法示例圖
2.1.2 加權(quán)輪詢算法
加權(quán)輪詢算法也依據(jù)CN節(jié)點的權(quán)重來進行MSC的分配,與加權(quán)隨機算法不同的是,它采用的是依次輪詢的機制,而不是隨機的方式,該算法嚴格按照比例依次為新用戶分配可服務的MSC。
舉例:同樣假如MSC Pool內(nèi)有3個MSC,權(quán)重因子分別取值為1、1、2,那么對于新登錄的用戶,NNSF節(jié)點會依次將第1個用戶分配給MSC1,第2個用戶分配給MSC2,第3個用戶和第4個用戶分配給MSC3,第5個用戶分配給MSC1,依次類推。最終用戶按照比例分配在不同的MSC上。
動態(tài)負載均衡算法目前也主要有2類:一類主要依據(jù)A接口的電路負荷,另一類主要依據(jù)VLR的用戶實際容量。
2.2.1 A接口的電路負荷
BSC會周期性地計算到每個CN節(jié)點的A接口電路負荷,也就是占用電路/所有電路的值,根據(jù)負荷值的比重分配新用戶到不同的CN節(jié)點上,例如A接口負荷低的分配的用戶相對多一些。
2.2.2 MSC可用用戶容量
a)MSC Pool內(nèi)各個MSC統(tǒng)計本局剩余用戶容量(總?cè)萘繙p去登記用戶數(shù)),然后Pool區(qū)內(nèi)各個MSC分別將本局可用用戶容量等信息傳遞給各個NNSF節(jié)點。
b)NNSF根據(jù)負荷因子進行負荷分擔,而負荷因子決定Pool區(qū)內(nèi)某個MSC被選中的概率,其中MSCi負荷因子=MSCi的可用用戶容量/MSC各節(jié)點當前可用容量總和(見圖3)。
圖3 動態(tài)負荷均衡示意圖
MSC Pool網(wǎng)絡建設前期需要對整個Pool組內(nèi)的設備容量、接口配置、NNSF開啟等進行統(tǒng)籌考慮,特別需要考慮以下幾個方面的情況。
由于負載均衡算法為廠家特有的實現(xiàn)方式,在3GPP的標準中沒有明確定義。因此,MSC Pool部署建設初期不建議部署NNSF的設備節(jié)點進行異廠家混合組網(wǎng);此外,由于目前MSC Server和MGW之間還存在設備交互機制和部分信令協(xié)議內(nèi)容私有化的現(xiàn)狀,不建議Pool內(nèi)CN設備異廠家組合。
對負載均衡算法的支持建議如下。
a)靜態(tài)負載均衡算法必須支持并能保證異廠家(CN和RAN節(jié)點為不同廠家)的互通。
b)動態(tài)負載均衡算法建議為可選,現(xiàn)階段實現(xiàn)的動態(tài)負載均衡算法都是私有協(xié)議,不能保證互通,在CN和RAN節(jié)點為同廠家情況時可以采用。
依據(jù)3GPP TS23.236的規(guī)定:NNSF在RAN節(jié)點實現(xiàn),也可以在CN節(jié)點(一般指MGW)實現(xiàn)。目前NNSF功能可以在RNC或BSC部署,也可以選擇在MGW上部署。依據(jù)不同節(jié)點的部署情況,有3種方案可考慮(見表2)。
現(xiàn)有主流設備商基本都能支持RNC/BSC實現(xiàn)NNSF以及MGW代理A Flex,部分廠家不支持MGW代理Iu Flex。由于現(xiàn)網(wǎng)存在不少BSC不支持A Flex的情況,結(jié)合廠家MGW的支持情況,方案2和方案3是目前優(yōu)選的2個方案。
表2 NNSF功能部署節(jié)點情況比較
對于負載均衡算法和NNSF部署有如下建議。
a)RNC必須支持Iu Flex功能。
b)如果BSC不支持A Flex功能,MGW必須能夠代理A Flex功能。
c)MGW應支持A Flex功能,可以支持Iu Flex功能。
MSC Pool的引入會帶來很多的優(yōu)勢,其中負載均衡是MSC Pool的一個關(guān)鍵技術(shù),它能夠均衡Pool區(qū)內(nèi)的話務,起到削峰抑谷的作用,并能減少跨局切換和更新信令、降低信令負荷、提升用戶通話質(zhì)量。本文結(jié)合3GPP標準規(guī)范的要求和設備的實際支持情況,詳細說明了MSC Pool負載均衡算法的觸發(fā)條件和基本處理流程,分析了幾種典型的負載均衡算法,結(jié)合設備的支持情況,探討了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共核心網(wǎng)的MSC Pool組網(wǎng)策略 [J].電信科學,2008(11).