專利名稱:對(duì)移動(dòng)通信系統(tǒng)信令消息的追蹤方法
技術(shù)領(lǐng)域:
本發(fā)明屬于無(wú)線通信技術(shù)領(lǐng)域,尤其涉及一種以時(shí)分同步碼分多址接入(TD-SCDMA-Time Division-Synchronous Code Division Multiple Access)無(wú)線網(wǎng)絡(luò)控制器(RNC-Radio Network Controller)系統(tǒng),信令跟蹤為應(yīng)用背景的與協(xié)議類型和信令消息結(jié)構(gòu)無(wú)關(guān)的一種對(duì)移動(dòng)通信系統(tǒng)信令消息的追蹤方法。
背景技術(shù):
TD-SCDMA系統(tǒng)RNC中,信令跟蹤是一種在開(kāi)發(fā)、開(kāi)局和運(yùn)營(yíng)商日常運(yùn)維中的常用工具,它可以對(duì)RNC系統(tǒng)中所涉及和處理的無(wú)線網(wǎng)絡(luò)層信令消息的內(nèi)容提供一種直觀的顯示方式,從而極大地提高了定位問(wèn)題的效率。
在TD-SCDMA通信系統(tǒng)的信令消息傳輸中,都采用了抽象語(yǔ)法記數(shù)法(ASN.1-Abstract Syntax Notation number One)編碼,由于無(wú)線層的消息結(jié)構(gòu)都相當(dāng)復(fù)雜,因此對(duì)于信令跟蹤工具而言,對(duì)信令消息的解碼,尤其是將信令消息碼流的解碼結(jié)果以直觀的層級(jí)化形式顯示就至關(guān)重要。在一般的工程實(shí)現(xiàn)中,無(wú)線網(wǎng)絡(luò)層的信令消息都是用C語(yǔ)言的結(jié)構(gòu)體來(lái)描述的。針對(duì)這樣的信令消息描述形式,對(duì)于信令消息內(nèi)容的層次顯示通常采用如下的實(shí)現(xiàn)步驟(1)對(duì)信令消息結(jié)構(gòu)的C語(yǔ)言結(jié)構(gòu)體進(jìn)行語(yǔ)法分析,形成一個(gè)語(yǔ)法分析工具或處理模塊;(2)信令消息的ASN.1解碼,在內(nèi)存中保存為一段二進(jìn)制字節(jié)流;(3)利用步驟1產(chǎn)生的分析工具對(duì)信令消息解碼后形成的二進(jìn)制字節(jié)流進(jìn)行分析,并同時(shí)以圖形化的方式進(jìn)行顯示。
由于無(wú)線層信令消息結(jié)構(gòu)的結(jié)構(gòu)復(fù)雜,消息結(jié)構(gòu)體的嵌套層次也較深,因此步驟1和步驟3的實(shí)現(xiàn)復(fù)雜度比較高。同時(shí),隨著信令協(xié)議自身的升級(jí)和改進(jìn),會(huì)不斷引入新的信令消息,而原有的信令消息結(jié)構(gòu)也有可能發(fā)生變化,而又因?yàn)樾帕钕⒔Y(jié)構(gòu)的層次顯示是伴隨著對(duì)解碼結(jié)果字節(jié)流進(jìn)行C結(jié)構(gòu)匹配進(jìn)行的,而這種匹配過(guò)程是與信令消息的語(yǔ)法描述相關(guān)的,所以步驟(1)和(3)所進(jìn)行內(nèi)容也就都需要隨之進(jìn)行修改,以適應(yīng)信令消息結(jié)構(gòu)的變化。通過(guò)上述分析不難發(fā)現(xiàn),現(xiàn)有技術(shù)的實(shí)現(xiàn)方法模塊化程度較低,缺乏靈活性和可擴(kuò)展性;同時(shí),開(kāi)發(fā)難度和復(fù)雜度都比較高。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題在于提供一種對(duì)移動(dòng)通信系統(tǒng)信令消息的追蹤方法,從信令消息結(jié)構(gòu)表述的角度出發(fā),力圖減少當(dāng)信令消息自身結(jié)構(gòu)發(fā)生變化對(duì)消息內(nèi)容顯示處理方法造成的影響,使信令消息內(nèi)容層次顯示與協(xié)議類型和信令消息類型無(wú)關(guān),彌補(bǔ)信令消息分析方法在靈活性和可擴(kuò)展性等方面的不足。
為了解決上述技術(shù)問(wèn)題,本發(fā)明提供一種對(duì)移動(dòng)通信系統(tǒng)信令消息的追蹤方法,包括如下步驟使用一個(gè)從所述特定語(yǔ)法到XML語(yǔ)法的轉(zhuǎn)換工具,對(duì)所述信令消息中的結(jié)構(gòu)定義頭文件進(jìn)行掃描,生成對(duì)應(yīng)的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件;對(duì)信令消息的原始碼流進(jìn)行解碼,并將解碼結(jié)果保存在內(nèi)存區(qū)中;根據(jù)解碼結(jié)果中信令消息的頭信息選擇對(duì)應(yīng)的用XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件,并利用XML解析器解析出該頭文件定義的結(jié)構(gòu)信息;根據(jù)所述解析出的結(jié)構(gòu)信息,對(duì)所述內(nèi)存區(qū)中的解碼結(jié)果進(jìn)行XML匹配,獲得各個(gè)字段的值,并以XML的形式生成解碼結(jié)果文件。
本發(fā)明還可以進(jìn)一步包括將所述XML形式的解碼結(jié)果文件以圖形化方式顯示出來(lái)。
本發(fā)明的優(yōu)點(diǎn)在于1、具有較強(qiáng)的可擴(kuò)展性和靈活性,當(dāng)新增信令消息類型或信令消息結(jié)構(gòu)定義發(fā)生變化時(shí),只需要重新對(duì)新的信令消息結(jié)構(gòu)頭文件進(jìn)行掃描分析,生成新的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件即可,而無(wú)需對(duì)信令消息的內(nèi)容顯示處理和XML解析器作出任何改動(dòng);2、解碼結(jié)果最終以XML語(yǔ)言描述,由于XML語(yǔ)言本身具有完善的結(jié)構(gòu)化特點(diǎn),因此,層級(jí)顯示的處理也比較簡(jiǎn)單,大大降低了開(kāi)發(fā)難度;3、以XML表述的解碼結(jié)果是純文本格式的,不存在格式的兼容性問(wèn)題。另外,由于XML文檔可以被大部分主流瀏覽器(如Internet Explorer、Opera等)顯示,因此,在沒(méi)有解碼結(jié)果圖形化顯示工具的情況下,也可以瀏覽。
圖1為根據(jù)本發(fā)明具體實(shí)施例的信令消息追蹤流程圖;圖2為根據(jù)本發(fā)明具體實(shí)施例的C語(yǔ)言結(jié)構(gòu)體轉(zhuǎn)換成XML語(yǔ)言描述文件的示意圖。
具體實(shí)施例方式
下面結(jié)合附圖,對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。
本發(fā)明適用于RRC、NBAP、RANAP和RNSAP協(xié)議涉及的所有標(biāo)準(zhǔn)信令消息。本發(fā)明在對(duì)信令消息結(jié)構(gòu)進(jìn)行語(yǔ)法分析階段,首先將信令消息的C語(yǔ)言頭文件用擴(kuò)展標(biāo)識(shí)語(yǔ)言(XML-eXtensible Markable Language)進(jìn)行轉(zhuǎn)述;這樣,在后續(xù)的信令消息顯示階段,對(duì)解碼結(jié)果字節(jié)流的C語(yǔ)言匹配轉(zhuǎn)化為了XML匹配。由于對(duì)XML文件的解析和分析是一個(gè)通用的過(guò)程,因此,當(dāng)信令消息結(jié)構(gòu)發(fā)生變化時(shí),只需要生成新的信令消息XML文件即可,而無(wú)須更改信令顯示部分的處理。如圖1所示,具體步驟包含首先,通過(guò)Lex和Yacc等輔助工具,對(duì)信令消息結(jié)構(gòu)的C語(yǔ)言頭文件結(jié)構(gòu)體進(jìn)行語(yǔ)法分析,形成一個(gè)C語(yǔ)言描述的結(jié)構(gòu)定義頭文件到XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件的轉(zhuǎn)換工具;并利用所述轉(zhuǎn)換工具對(duì)所述C語(yǔ)言信令消息中的結(jié)構(gòu)定義頭文件進(jìn)行掃描,生成對(duì)應(yīng)的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件(步驟101),轉(zhuǎn)換的示意圖如圖2所示。對(duì)信令消息的原始碼流用ASN.1解碼函數(shù)進(jìn)行解碼,并將解碼結(jié)果保存在內(nèi)存區(qū)中(步驟102)。然后,根據(jù)信令消息解碼結(jié)果中的頭信息選擇對(duì)應(yīng)的用XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件,并利用XML解析器解析出該頭文件定義的結(jié)構(gòu)信息(步驟103)。根據(jù)所述解析出的結(jié)構(gòu)信息,對(duì)所述內(nèi)存區(qū)中的解碼結(jié)果進(jìn)行XML匹配,獲得各個(gè)字段的值,并以XML的形式生成解碼結(jié)果文件(步驟104)。最后,將所述XML形式的解碼結(jié)果文件以圖形化方式顯示出來(lái)(步驟105)。
對(duì)信令消息的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件的結(jié)構(gòu)可以分為兩部分,第一部分是對(duì)信令消息的基本信息描述,可以包含信令的消息名稱、協(xié)議類型、協(xié)議版本號(hào)等;第二部分則是對(duì)信令消息結(jié)構(gòu)的具體描述,這部分的關(guān)鍵是設(shè)計(jì)一種對(duì)C結(jié)構(gòu)體中字段嵌套關(guān)系到XML的映射方式。就第二部分而言,為了降低從C語(yǔ)言結(jié)構(gòu)體轉(zhuǎn)化的實(shí)現(xiàn)難度和后續(xù)進(jìn)行匹配的復(fù)雜度,在本發(fā)明中的信令消息的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件中,舍棄了C結(jié)構(gòu)中的嵌套描述方式,而是將信令消息結(jié)構(gòu)中所有嵌套出現(xiàn)的結(jié)構(gòu)體字段和簡(jiǎn)單類型字段按照嵌套層次進(jìn)行編號(hào)并逆序列出,對(duì)于信令消息中每一個(gè)結(jié)構(gòu)體或簡(jiǎn)單類型,都用一個(gè)統(tǒng)一結(jié)構(gòu)的XML段落來(lái)描述,段落中可以包含如下信息序號(hào),為信令消息結(jié)構(gòu)中所有出現(xiàn)的結(jié)構(gòu)體字段和簡(jiǎn)單類型字段進(jìn)行編號(hào);字段名稱,即所述字段在信令消息結(jié)構(gòu)中的名稱;字段類型,標(biāo)識(shí)所述字段是結(jié)構(gòu)體還是簡(jiǎn)單類型;子字段列表,列出所述字段下嵌套的其他子字段的序號(hào),如果所述字段已經(jīng)是一個(gè)簡(jiǎn)單類型,則這部分的內(nèi)容為空。
通過(guò)對(duì)所述形式的信令消息的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件進(jìn)行逐個(gè)段落的解析,可以得到信令消息結(jié)構(gòu)中各個(gè)字段的類型信息和嵌套層次關(guān)系,而這正是將解碼結(jié)果字節(jié)流進(jìn)行層次化顯示的關(guān)鍵。由于對(duì)XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件的解析可以由通用的解析器來(lái)進(jìn)行,因此,當(dāng)信令消息的結(jié)構(gòu)發(fā)生變化時(shí),無(wú)須更改信令內(nèi)容顯示部分的處理代碼,只需要重新生成信令消息的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件,作為后續(xù)信令消息內(nèi)容顯示的依據(jù)即可。
步驟105中信令消息解碼結(jié)果的圖形化顯示,是利用步驟104中輸出的XML格式的解碼結(jié)果,進(jìn)行圖形化顯示,由于XML文件本身就具有很好的層級(jí)結(jié)構(gòu),因此這部分的實(shí)現(xiàn)很容易。
本發(fā)明可以將基于XML描述的信令消息內(nèi)容顯示處理和XML解析器以模塊化的形式提供,以便根據(jù)需要集成在不同的程序中。本發(fā)明中提出的C語(yǔ)言結(jié)構(gòu)體的XML描述也可以按需推廣到與信令消息層級(jí)顯示類似的應(yīng)用中。
權(quán)利要求
1.一種對(duì)移動(dòng)通信系統(tǒng)信令消息的追蹤方法,該信令消息中包括若干使用特定語(yǔ)法描述的結(jié)構(gòu)定義頭文件、及與各結(jié)構(gòu)定義頭文件對(duì)應(yīng)的信令消息內(nèi)容,其特征在于,該方法包括如下步驟使用一個(gè)從所述特定語(yǔ)法到XML語(yǔ)法的轉(zhuǎn)換工具,對(duì)所述信令消息中的結(jié)構(gòu)定義頭文件進(jìn)行掃描,生成對(duì)應(yīng)的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件;對(duì)信令消息的原始碼流進(jìn)行解碼,并將解碼結(jié)果保存在內(nèi)存區(qū)中;根據(jù)信令消息解碼結(jié)果中的頭信息選擇對(duì)應(yīng)的用XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件,并利用XML解析器解析出該頭文件定義的結(jié)構(gòu)信息;根據(jù)所述解析出的結(jié)構(gòu)信息,對(duì)所述內(nèi)存區(qū)中的解碼結(jié)果進(jìn)行XML匹配,獲得各個(gè)字段的值,并以XML的形式生成解碼結(jié)果文件。
2.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括如下步驟將所述XML形式的解碼結(jié)果文件以圖形化方式顯示出來(lái)。
3.如權(quán)利要求1所述的方法,其特征在于,所述的特定語(yǔ)法描述的結(jié)構(gòu)定義頭文件,是以C語(yǔ)言語(yǔ)法描述的。
4.如權(quán)利要求1所述的方法,其特征在于,所述對(duì)信令消息的原始碼流解碼的步驟,是利用信令消息中的ASN.1解碼函數(shù),對(duì)信令消息的原始碼流進(jìn)行ASN.1解碼。
5.如權(quán)利要求1所述的方法,其特征在于,所述從特定語(yǔ)法到XML語(yǔ)法的轉(zhuǎn)換工具,是根據(jù)對(duì)特定語(yǔ)法描述的結(jié)構(gòu)定義頭文件進(jìn)行分析而事先生成的。
6.如權(quán)利要求1所述的方法,其特征在于,所述生成的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件,包括對(duì)信令消息的基本信息描述部分,與對(duì)信令消息結(jié)構(gòu)的具體描述部分。
7.如權(quán)利要求6所述的方法,其特征在于,所述具體描述部分中,對(duì)信令消息結(jié)構(gòu)中嵌套出現(xiàn)的結(jié)構(gòu)體字段和簡(jiǎn)單類型字段,按照嵌套層次進(jìn)行編號(hào)并按序列出,對(duì)信令消息中每個(gè)結(jié)構(gòu)體或簡(jiǎn)單類型,使用一個(gè)統(tǒng)一結(jié)構(gòu)的XML段落來(lái)描述。
8.如權(quán)利要求7所述的方法,其特征在于,所述按照嵌套層次進(jìn)行編號(hào)并按序列出,是按逆序列出。
9.如權(quán)利要求7所述的方法,其特征在于,所述統(tǒng)一結(jié)構(gòu)的XML段落中可以包括如下信息序號(hào)、字段名稱、字段類型、子字段列表。
全文摘要
本發(fā)明提供一種對(duì)移動(dòng)通信系統(tǒng)信令消息的追蹤方法,包括使用一個(gè)從所述特定語(yǔ)法到XML語(yǔ)法的轉(zhuǎn)換工具,對(duì)所述信令消息中的結(jié)構(gòu)定義頭文件進(jìn)行掃描,生成對(duì)應(yīng)的XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件;對(duì)信令消息的原始碼流進(jìn)行解碼,將解碼結(jié)果保存在內(nèi)存區(qū)中;根據(jù)信令消息解碼結(jié)果中的頭信息選擇對(duì)應(yīng)的用XML語(yǔ)法描述的結(jié)構(gòu)定義頭文件,利用XML解析器解析出該頭文件定義的結(jié)構(gòu)信息;根據(jù)所述解析出的結(jié)構(gòu)信息,對(duì)所述內(nèi)存區(qū)中的解碼結(jié)果進(jìn)行XML匹配,獲得各個(gè)字段的值,以XML的形式生成解碼結(jié)果文件。本發(fā)明的優(yōu)點(diǎn)在于避免了當(dāng)信令消息自身結(jié)構(gòu)發(fā)生變化對(duì)消息內(nèi)容顯示處理方法造成的影響,增加了信令消息分析方法的靈活性和可擴(kuò)展性。
文檔編號(hào)H04L29/06GK1791119SQ20051013421
公開(kāi)日2006年6月21日 申請(qǐng)日期2005年12月12日 優(yōu)先權(quán)日2005年12月12日
發(fā)明者武舒凡, 王茂華 申請(qǐng)人:中興通訊股份有限公司