WRNC系統(tǒng)中單用戶跟蹤的設(shè)計
本文引入一定的機(jī)制,使無線網(wǎng)絡(luò)控制器RNC(Radio Network Control)內(nèi)部能夠方便、準(zhǔn)確地收集到單用戶數(shù)據(jù)處理中各個環(huán)節(jié)的統(tǒng)計信息,便于快速地對單用戶信息進(jìn)行統(tǒng)計與核對,提高問題分析的效率。
1 速率問題的產(chǎn)生及現(xiàn)象
RNC內(nèi)部速率問題的產(chǎn)生主要有3個原因:(1)用戶面處理數(shù)據(jù)包不當(dāng),異常丟包;(2)控制面?zhèn)鬟f給用戶面的接續(xù)參數(shù)有誤,用戶面與承載無法銜接;(3)用戶面自身在處理各種接續(xù)關(guān)系時處理不當(dāng)。
在實際應(yīng)用中幾種不同情況的速率現(xiàn)象分別為:(1)HSDPA/HSUPA業(yè)務(wù)進(jìn)行時上下行速率不穩(wěn)定;(2)HSDPA/HSUPA業(yè)務(wù)進(jìn)行過程中出現(xiàn)速率掉鉤;(3)HSDPA/HSUPA PS業(yè)務(wù)無法達(dá)到簽約的預(yù)期速率;(4) 速 率正常。
2 傳統(tǒng)的定位方法及缺陷
目前,傳統(tǒng)的速率定位方法分為3種:SHELL命令定位、DSP打印定位和信令跟蹤定位。
但是對于外場定位來說,這些傳統(tǒng)的定位手段卻很難實現(xiàn)。首先,SHELL命令定位,外場接口板數(shù)量多,承載著不同的業(yè)務(wù),需要在接口板之間輪流輸入SHELL命令,顯得極其麻煩,同時SHELL命令只能跟蹤所有的業(yè)務(wù)流量信息,無法針對特定用戶,缺少針對性。其次,外場對于打印有嚴(yán)格的要求,一般不允許開啟內(nèi)部打印,正式的商用局資源本來就比較少,開啟內(nèi)部繁多的打印,會影響整個系統(tǒng)的運行。最后,信令跟蹤只是記錄控制面的基本信息,對于用戶面的檢查無法起到真正的幫助作用。
因此對于此類問題,需要有一個良好的定位方法將問題鎖定在具體的接口或者FP層面上。單用戶跟蹤正是針對這個缺陷設(shè)計的,其優(yōu)點是:(1)數(shù)據(jù)的上報通過后臺信令跟蹤來記載,利于觀測;(2)數(shù)據(jù)跟蹤以FP為單位,直接定位到業(yè)務(wù)通道,定位準(zhǔn)確;(3)對正常的設(shè)備運行不會增加額外的開銷,且不需要進(jìn)行多余的手工操作,使用方便。
3 單用戶跟蹤的設(shè)計及實現(xiàn)
3.1 WCDMA系統(tǒng)的整體概述
WCDMA系統(tǒng)主要由三大核心部分組成,分為核心網(wǎng)(CN)、無線網(wǎng)絡(luò)控制器(RNC)和基站(NodeB)。RNC連接著CN和NodeB,在整個WCDMA中起著舉足輕重的作用。RNC和RNC之間用IUR口連接。RNC分為CRNC(控制RNC)、SRNC(服務(wù)RNC)和DRNC(漂移RNC)三部分[5]。
3.2 單用戶跟蹤的數(shù)據(jù)流
RNC內(nèi)數(shù)據(jù)流的路徑分為兩條,一條是通過IUB口直接進(jìn)入SRNC,途經(jīng)IU口到達(dá)CN;另一條是通過IUB口先到達(dá)DRNC,再由DRNC經(jīng)IUR口到SRNC,最后到達(dá)CN[6]。如果能在每個結(jié)點處對各個FP的數(shù)據(jù)包進(jìn)行統(tǒng)計,對比各個結(jié)點數(shù)據(jù)的流量,就能迅速定位出數(shù)據(jù)丟失的接口和FP。
3.3 單用戶跟蹤的整體設(shè)計
UTRAN各個接口的協(xié)議架構(gòu)是按照一個通用的協(xié)議模型設(shè)計的,如圖1所示。設(shè)計的原則是層間和平面間在邏輯上相互獨立。從水平層面來看,協(xié)議結(jié)構(gòu)主要包括兩層:無線網(wǎng)絡(luò)層和傳輸網(wǎng)絡(luò)層。所有UTRAN相關(guān)問題只與無線網(wǎng)絡(luò)層有關(guān),傳輸網(wǎng)絡(luò)層只是UTRAN采用的標(biāo)準(zhǔn)化的傳輸技術(shù),與UTRAN的特定功能無關(guān)。從垂直平面來看,協(xié)議結(jié)構(gòu)包括控制平面、用戶平面、傳輸網(wǎng)絡(luò)控制平面和傳輸網(wǎng)絡(luò)用戶平面[1]。
本設(shè)計根據(jù)UTRAN的協(xié)議架構(gòu),分為以下幾個模塊:消息處理模塊、控制面、用戶面、承載管理模塊和信令跟蹤模塊。
整個單用戶跟蹤設(shè)計思路如圖2所示,其中實線代表控制流,虛線代表數(shù)據(jù)流。
對于控制信息來說,后臺將媒體面跟蹤的任務(wù)分配到消息處理模塊(Daemon),Daemon通知控制面CP(Control Plane)和用戶面UP(User Plane)??刂泼嬖诔休d鏈路建立和刪除時通知承載管理模塊BM(Bear Management,BM)建立和刪除相關(guān)的承載跟蹤。從消息中提取相關(guān)信息,并發(fā)送消息通知接口板,接口板收到消息后,設(shè)置好過濾條件,對處理的報文進(jìn)行過濾統(tǒng)計。
對于數(shù)據(jù)業(yè)務(wù)流來說,收集跟蹤信息后,接口板和用戶面直接將跟蹤信息上報到Daemon。Daemon將消息的內(nèi)容進(jìn)行核對后上報給后臺。
3.4 單用戶跟蹤的實現(xiàn)流程
為了在現(xiàn)有體系的框架下順利實現(xiàn)各個接口FP的流量上報,設(shè)計如下2個流程:任務(wù)的啟動和數(shù)據(jù)的上報及核對。
3.4.1 媒體面單用戶跟蹤的啟動
單用戶跟蹤的啟動過程為:
(1)后臺向信令跟蹤模塊(ToolKit)發(fā)送EV_UE_MEDIA_START_REQ的請求消息。消息中攜帶需要跟蹤的IMSI號和跟蹤標(biāo)志位給ToolKit。
(2)ToolKit采取應(yīng)答處理機(jī)制,收到消息后立馬向后臺回響應(yīng),告知消息已收到。ToolKit內(nèi)部維護(hù)了一張關(guān)于UE各種跟蹤任務(wù)的狀態(tài)表(TraceUE)。根據(jù)消息中的IMSI號來判斷,如果ToolKit模塊中未能查詢到保存的IMSI號,說明該流程錯誤,直接結(jié)束。若IMSI號存在,并且已處于跟蹤狀態(tài),說明跟蹤重復(fù),直接結(jié)束。若IMSI號處于未跟蹤狀態(tài),ToolKit將創(chuàng)建關(guān)于該UE的一個上下文,同時保存到TraceUE的信息中,以便將來查詢使用。
(3)ToolKit需要給消息處理模塊(Daemon)發(fā)送消息EV_START_MEDIA_TRACE。由Daemon根據(jù)不同的消息來決定需要給哪些模塊發(fā)送跟蹤消息。
(4)Daemon向用戶面發(fā)送媒體面啟動的消息EV_START_MEDIA_TRACE。用戶面收到該跟蹤指示消息后將跟蹤信息記錄下來,使得在調(diào)用承載接口建立連接表時,指示此承載鏈路上的數(shù)據(jù)需要跟蹤,便于之后從用戶面直接上報數(shù)據(jù)量信息。
(5)Daemon向各個地面接口(IUB/IUR/IU)發(fā)送EV_START_MEDIA_TRACE消息,觸發(fā)各個地面接口向各自的底層鏈路發(fā)送跟蹤指示。
(6)各個地面標(biāo)準(zhǔn)模塊收到媒體面單用戶跟蹤消息后,根據(jù)IMSI號搜索各自保存的關(guān)于這個UE相關(guān)的傳輸層信息,啟動消息發(fā)送機(jī)制,對和這個UE相關(guān)的承載,依次給承載管理模塊發(fā)送EV_START_LINK_TRACE消息,觸發(fā)關(guān)于這個UE的底層承載被標(biāo)記成跟蹤態(tài)。這條消息不僅需要攜帶該條承載鏈路建立時的所有信息(BearId、bindingID、TransportAddress等),還要加上被媒體面跟蹤的標(biāo)志位。底層承載管理模塊BM收到該消息后,需要對承載信息進(jìn)行遍歷和核對,對確實需要跟蹤的承載鏈路進(jìn)行相關(guān)字段的標(biāo)記,便于以后統(tǒng)計時使用。
3.4.2 媒體面單用戶跟蹤的上報時間及核對
(1)上報時間對齊
數(shù)據(jù)的上報都是在一定時間內(nèi)累積的結(jié)果。為了保證業(yè)務(wù)數(shù)據(jù)統(tǒng)計的準(zhǔn)確性,必須確保各個單板上系統(tǒng)時間的一致性。為了保證這一點,采取統(tǒng)計初始清零時間和統(tǒng)計上報時間對齊的策略。
統(tǒng)計初始清零時間對齊:在承載鏈路建立的時候,接口板上對此鏈路對應(yīng)的統(tǒng)計信息清零。在用戶面處理板上也采用類似的方式對相關(guān)承載上的統(tǒng)計清零。
統(tǒng)計上報的時間對齊通過兩種方式實現(xiàn):(1)約定好上報的粒度,例如15 s、30 s、60 s等。(2)通過單板上絕對時間來對齊。例如在時間對齊的前提下,在每分鐘的15 s、30 s、45 s、60 s的時刻進(jìn)行上報。為了將上報時間對齊,在DSP上新維護(hù)一個記錄絕對時間的軟時鐘,軟時鐘的基準(zhǔn)通過HOST同步,HOST可以定期對DSP上的時鐘進(jìn)行校正。
(2)上報途徑
為使信息核對,設(shè)計了兩條上報途徑:(1)CP各個接口模塊與UP之間都有?;钕?,保活消息將觸發(fā)UP上報用戶在不同接口(IUB、IUR、IU)上的所有承載鏈路的統(tǒng)計。UP收到保活消息后,發(fā)現(xiàn)該用戶被媒體面跟蹤,則調(diào)用數(shù)據(jù)上報接口上報統(tǒng)計,這時用戶面就會查詢啟動時被跟蹤的承載信息。通過內(nèi)部機(jī)制,將跟蹤信息轉(zhuǎn)發(fā)到Daemon,直至送給后臺。(2)CP各個接口模塊在給UP發(fā)送?;钕r,發(fā)現(xiàn)該用戶被媒體面跟蹤,則給BM模塊發(fā)送數(shù)據(jù)上報請求消息EV_START_LINKTRACERPT_REQ,BM收到消息后,根據(jù)本地保存的跟蹤用戶信息,通知接口板。接口板將跟蹤信息上報到Daemon,直至后臺。
(3)統(tǒng)計信息的核對
用戶面在調(diào)用承載接口發(fā)送報文時,會根據(jù)接口中承載被跟蹤的信息進(jìn)行過濾。在接收報文時,會根據(jù)承載連接表中的信息,對此報文進(jìn)行過濾。
對于接口板來說,承載管理模塊需要對統(tǒng)計的信息設(shè)置過濾條件。對于不同的承載類型,過濾條件是不一致的。在ATM方式下,IUB、IUCS、IUR需要根據(jù)VPI、VCI、CID的信息來完成對出入網(wǎng)元信息的過濾,IUPS需要根據(jù)對端和本端的TEID來完成出入局的過濾。在IP方式下,IUB、IUCS、IUR根據(jù)本端IP地址和UDP端口號來完成出入網(wǎng)元的過濾,IUPS則需要本端和對端的TEID來判斷。
為了和用戶面核對統(tǒng)計信息,對于每一條的承載鏈路,控制面還需告知承載管理模塊過濾方向、接口類型、鏈路屬性和用戶的全局標(biāo)識信息。
Daemon通過對兩種途徑上報的數(shù)據(jù)進(jìn)行匯總和核對,防止了統(tǒng)計信息的不一致,提高了信息上報的準(zhǔn)確性。
4 單用戶跟蹤的測試效果
本設(shè)計在WRNC系統(tǒng)中進(jìn)行了測試和驗證。圖3是業(yè)務(wù)上報消息中的Iu口的信令解析。
其中包括單用戶跟蹤的一些統(tǒng)計信元。如:IuupUlPsRecvNum、IuupUlPsSendNum、IuupDlPsRecvNum和Iuup DlPsSendNum等,分別記錄上下行PS域的收發(fā)數(shù)據(jù)量。從該圖中可以看到IuUp的上行收發(fā)數(shù)據(jù)量都為21,代表此FP的數(shù)據(jù)收發(fā)正常,未出現(xiàn)異常情況。
從圖3中可以看到該方案成功地實現(xiàn)了業(yè)務(wù)數(shù)據(jù)的收集和上報。后臺的信令跟蹤清楚地記錄了各個標(biāo)準(zhǔn)接口中各個FP的類型和數(shù)據(jù)的收發(fā)信息。
該方案實現(xiàn)了在RNC內(nèi)部各個接口用戶數(shù)據(jù)的上報和統(tǒng)計,徹底解決了傳統(tǒng)速率問題定位的復(fù)雜性和不準(zhǔn)確性。定位準(zhǔn)確、利于觀測和便于操作使得該定位方法大大優(yōu)于傳統(tǒng)的定位方法。
在商用局的應(yīng)用中,單用戶跟蹤能大大縮短速率問題的定位時間,極大地降低了外場其他用戶的干擾。這項設(shè)計為提高運營商的滿意度和快速推進(jìn)中國3G的部署起了重要的作用。