專利名稱:一種檢測gb鏈路是否丟包的方法
技術領域:
本發(fā)明涉及GB信令監(jiān)測領域,尤其涉及一種檢測GB鏈路是否丟包的 方法。
背景技術:
GB鏈路是GPRS (General Packet Radio Service)通用分組無線業(yè)務中 的鏈路,也稱為吉比特鏈路。GPRS是在GSM Phase2+規(guī)范實現(xiàn)的內容,是 一種基于GSM的移動分組數(shù)據(jù)業(yè)務,該業(yè)務有助于第二代移動通信向第三 代移動通信的平滑過渡。由于GPRS的引入,使得在GSM網絡中引入了分 組交換能力并將GSM網絡的傳輸速率提高到100kbit/s以上。
現(xiàn)有GPRS網絡是基于現(xiàn)有的GSM網絡實現(xiàn)的,在現(xiàn)有GSM網絡中 增加了服務GPRS支持節(jié)點(SGSN)和網關GPRS支持節(jié)點(GGSN)兩 類節(jié)點。SGSN是GPRS骨干網的重要組成部份,是分組交換的核心部分, 通過幀中繼和PCU(分組控制單元)相連。功能類同于GSM系統(tǒng)的MSC/VLR 功能,SGSN不僅處理分組交換中的信令傳輸,同時也進行數(shù)據(jù)包的處理和 傳送。面向MS執(zhí)行移動性管理、安全管理、介入控制和路由選^^功能。即 記錄當前活動在該SGSN區(qū)域內的移動數(shù)據(jù)用戶的有關信息,如位置信息, 可以對當前用戶信息進行修改、刪除等;負責數(shù)據(jù)用戶的Attach和Detach、 位置更新、尋呼、鑒權、加密等;負責MS和SGSN之間邏輯鏈路的建立、 維護和釋放;負責路由的選擇和信息的存儲轉發(fā)。BSS (base station subsystem)基站子系統(tǒng)與SGSN之間通過GB接口通信。GB接口同時傳輸 分組數(shù)據(jù)和信令,支持移動性管理功能和會話功能,例如支持GPRS附著/ 分離、安全、路由區(qū)更新、數(shù)據(jù)連接信息的激活/去活等功能。
GB接口的鏈路使用TDM (時分復用)鏈路,GB接口的協(xié)議棧參見圖 1。 GB接口底層Llbis (物理傳輸層)采用FR ( frame relay幀中繼)協(xié)議, 第二層協(xié)議為NS (network service網絡業(yè)務)協(xié)議,第三層協(xié)議為BSSGP
(base station subsystem GPRS protocol基站子系統(tǒng)GPRS協(xié)議)協(xié)議,第四 層協(xié)議為LLC (logical link control邏輯鏈路控制)協(xié)議,第五層協(xié)議為 SNDCP (subnetwork dependent converge protocol子網匯聚十辦i義)十辦i義???以參考YD/T1006-2001GB接口技術規(guī)范。
現(xiàn)有技術中在GB鏈路上采集信令消息數(shù)據(jù)是采用GB前端機的方式進 行的,該前端機可以對信令消息數(shù)據(jù)進行整理、分析和統(tǒng)計,采集后的GB 信令消息存貯格式為包頭+長度+源碼,每條消息都有一個文件名和偏移量。 通過判斷包頭就可以知道是GB的信令消息,在信令采集的過程中同時建立 事件列表,列表包括開始時間、KEY值(表示把若干消息關聯(lián)成一個事 件的特征字)、N-PDU(網絡業(yè)務接入層的協(xié)議數(shù)據(jù)單元)、IMSI( International Mobile Subscriber Identification Number國際移動用戶識別碼)、TLLI
(Temporary Logical Link Identifier臨時邏輯鏈路標識)、MSISDN (Mobile Station ISDN移動用戶國際號碼)和Segmentnumber (表示分^殳的序號),因 此通過它可以詳細了解全網的各種呼叫接續(xù)過程并進行深層次的網絡管理、 業(yè)務管理、用戶管理以及網絡優(yōu)化、網絡規(guī)劃和網絡設計。
GB前端機在采集信令時,由于經過傳輸、收斂和高阻跨接等中間環(huán)節(jié), 在采集數(shù)據(jù)時存在丟失數(shù)據(jù)的問題,直接影響對上層業(yè)務和后續(xù)數(shù)據(jù)的分 析。對于7號信令的TDM鏈路(如TUP/ISUP/MAP等)可以通過分析BSN
(后向序列號)和FSN(前向序列號)來判斷是否存在丟包的情況,但是對 于GB鏈路,由于沒有包含BSN和FSN,所以無法通過這個方法來檢測。 目前,在相關的專利文獻和其它非專利文獻中也未記載有如何檢測GB鏈路 是否丟包的行之有效的技術方案。
發(fā)明內容
本發(fā)明要解決的技術問題是提供一種高效的監(jiān)測方法,能夠有效檢測到 GB鏈路是否丟包,確保對上層業(yè)務和后續(xù)數(shù)據(jù)的正確分析,促進該領域技 術的發(fā)展。
為了解決上述問題,本發(fā)明提供了一種檢測GB鏈路是否丟包的方法, 包括如下步驟
1)采集GB信令和建立空事件列表;2 )讀取一條GB信令;
3) 分析和過濾GB信令,如果GB信令中的SAPI業(yè)務接入點標識為 SNDCP,進入步驟4);如果SAPI為GMM,進入步驟5 );否則進入步驟2);
4) 判斷SNDCP的協(xié)議類型;
如果SNDCP的類型為SN-DATA,根據(jù)信令中的字段M、字段F和字段 N-PDU判斷是否丟包,進入步驟2);
如果SNDCP的類型為SN-UNITDATA,根據(jù)信令中的字段M、字段F、 字段Segmentnumber和字段N-PDU判斷是否丟包,進入步驟2 );
5 )判斷GMM的協(xié)議類型;
如果GMM的協(xié)議類型為SM會話管理,根據(jù)SM的消息類型在事件列 表中建立事件的KEY值或刪除事件的KEY值,然后進入步驟2 );
否則,直接進入步驟2)。
進一步,所述步驟3)中分析和過濾GB信令的步驟,包括判斷信令數(shù) 據(jù)幀是否為幀中繼數(shù)據(jù)幀、網絡業(yè)務數(shù)據(jù)幀和基站子系統(tǒng)GPRS協(xié)議數(shù)據(jù) 幀。
所述步驟5 )中4艮據(jù)SM的消息類型在事件列表中建立事件的KEY值 或刪除事件的KEY值包括如下步驟
如果SM數(shù)據(jù)類型為PDP(分組數(shù)據(jù)協(xié)議)激活請求,分別根據(jù)IMSI和 TLLI在事件列表中建立事件的KEY值;
如果SM數(shù)據(jù)類型為PDP去激活接受,分別根據(jù)IMSI和TLLI作為KEY 值去查找事件,如果能夠找到,刪除KEY值,以關閉事件,讀取下一條信 令;如果找不到直接讀取下一條信令。
所述步驟4)中SNDCP的類型為SN-DATA時根據(jù)信令中的字段M、字 段F和字段N-PDU判斷是否丟包包括如下步驟
(l)如果F=l,根據(jù)IMSI或TLLI作為KEY去查找事件;
①如果找到,添加消息的文件名和偏移量到事件列表;判斷該信令的 N-PDU與事件列表中記錄的N-PDU是否一致;
a) 如果一致,表示正常,進入步驟A);
b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟A);
②如果沒有找到,分別根據(jù)IMSI和TLLI作為KEY建立事件;進入步 驟A);
(2)如果F=0,根據(jù)IMSI或TLLI作為KEY去查找事件,
① 如果找到,添加消息的文件名和偏移量到事件列表,判斷該信令的 N-PDU與事件中記錄的N-PDU是否一致,
a) 如果一致,表示正常;進入步驟A);
b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟A);
② 如果沒有找到,判斷結束; A)根據(jù)M處理
a) 如果M=0,表示該N-PDU已經結束,記錄當前N-PDU+1在事件中, 判斷結束;
b) 如果!V^1,表示該信令與后續(xù)的信令有關聯(lián),記錄當前N-PDU在事 件中,判斷結束。
所述步驟4)中SNDCP的類型為SN-UNITDATA時根據(jù)信令中的字段M、 字段F、字段Segmentnumber和字段N-PDU判斷是否丟包包括如下步驟
(l)如果F=l,根據(jù)IMSI或TLLI作為KEY去查找事件,
① 如果找到,添加消息的文件名和偏移量到事件列表,判斷該信令的 N-PDU與事件中記錄的N-PDU是否一致;
a) 如果一致,表示正常;進入步驟B);
b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);
② 如果沒有找到,分別根據(jù)IMSI和TLLI作為KEY建立事件;進入步 驟B);
(2)如果F=0,根據(jù)IMSI或TLLI作為KEY去查找事件,
① 如果找到,判斷該信令的N-PDU與事件中記錄的N-PDU是否一致
a) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);
b) 如果一致,再判斷該信令的Segmentnumber與事件中記錄的 Segmentnumber是否一致
b.l)如果一致,表示正常;進入步驟B);
b.2)如果不一致,表示發(fā)生丟包,記錄當前Segmentnumber減去事件中 記錄的Segmentmimber的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);
② 如果沒有找到,判斷結束; B)根據(jù)M處理
a) 如果M二0,表示該N-PDU已經結束,記錄當前N-PDU+1在事件中, 把消息的文件名和偏移量添加到事件列表;判斷結束;
b) 如果M=l,表示該信令與后續(xù)的信令有關聯(lián),記錄當前N-PDU和 Segmentnumber+1在事件中,把消息的文件名和偏移量添加到事件列表;判 斷結束。
本發(fā)明的上述技術方案,能夠高效的檢測到GB鏈路是否丟包,確保對 信令的正確分析。
圖1為GB接口協(xié)議棧;
圖2為總體檢測流程圖3 a為包含部分詳細流程的總體檢測流程圖3b為圖3a中的SN-PDU處理流程的詳細流程圖3c為圖3a中的SN-UNITPDU處理流程的詳細流程圖。
具體實施例方式
下面結合圖2和圖3a-圖3c詳細說明本發(fā)明的技術方案。 本發(fā)明檢測的數(shù)據(jù)可以是利用現(xiàn)有技術中的GB前端機采集的GB信令數(shù)據(jù)和建立的空事件列表(該事件列表中此時沒有具體的事件);也可以采
用其他相關設備進行采集的GB信令數(shù)據(jù)和建立的事件列表;GB信令采集 后以文件的形式保存在硬盤上,可以通過讀取文件的方式來獲取GB的信令; 當然,也可以采取本領域技術人員所熟知的其它存儲裝置進行存儲,如 FLASH存儲器等。由于GB信令是以包頭+長度+源碼的方式進行存儲的, 對于源碼中的信息的分析可以利用現(xiàn)有的對各層數(shù)據(jù)幀進行識別和分析的 技術手段,在下面的步驟中涉及到的各層數(shù)據(jù)幀的分析就不再詳述。
事件列表中包含多個事件,不同事件的KEY值不一樣,每個事件里包含 多條消息,每條消息都會有KEY值,同一個事件里消息的KEY值是一樣的。
參見附圖2,本發(fā)明的檢測總體流程如下
1) 讀取一條GB信令,讀取GB前端機中的空事件列表;由于事件列 表最初并沒有建立事件內容,因此,本步驟中也可以不讀耳又GB前端才凡中的 空事件列表,而是檢測裝置中事先就存儲有與GB前端機中的空事件列表相 同的空事件列表;
2) 判斷讀取的數(shù)據(jù)幀是否為FR (幀中繼)數(shù)據(jù)幀的數(shù)據(jù),如果是,進 入步驟3),否則讀取下一條信令,繼續(xù)處理。
3) 判斷該數(shù)據(jù)幀是否為NS (網絡業(yè)務)數(shù)據(jù)幀的數(shù)據(jù),如果是,進入 步驟4),否則讀取下一條信令,繼續(xù)處理。
4 )判斷該數(shù)據(jù)幀是否為BSSGP(基站子系統(tǒng)GPRS協(xié)議)數(shù)據(jù)幀的數(shù)據(jù), 如果是,進入步驟5),否則讀取下一條信令,繼續(xù)處理。
5)在LLC層根據(jù)SAPI (業(yè)務接入點標識)來判斷并作相應處理
判斷SAPI的業(yè)務類型,其中SAPI業(yè)務類型包括GMM (GPRS移動性管 理)和SNDCP(子網相關會聚協(xié)議),如果SAPI為SNDCP,進入步驟6);如 果SAPI為GMM,進入步驟7);否則讀取下一條信令,繼續(xù)處理;
6 )判斷SNDCP的協(xié)議類型;如果SNDCP的類型為SN-DATA ( sequence number需要確認模式的數(shù)據(jù)),根據(jù)字段M( More Bit)、字段F ( First segment indicatorbit)和N-PDU判斷是否丟包,讀耳又下一條信令,繼續(xù)處理;如果 SNDCP的類型為SN-UNITDATA ( sequence number不需要確認模式的數(shù)據(jù), 才艮才居字I爻M( More Bit )、字4殳F( First segment indicator bit )、 Segmentnumber(表 示分段的序號)和N-PDU (網絡業(yè)務接入層的協(xié)議數(shù)據(jù)單元)判斷是否丟包, 讀取下一條信令,繼續(xù)處理;
7 )判斷GMM的協(xié)議類型;如果GMM的協(xié)議類型為SM (會話管理), 根據(jù)SM的消息類型在事件列表中建立事件的KEY值或刪除事件的KEY值, 然后讀取下一條信令,繼續(xù)處理;否則直接讀取下一條信令,繼續(xù)處理。SM 的消息里有一些是用來建立事件KEY值,有一些是用來刪除事件KEY值的。
上述步驟2)中判斷讀取的數(shù)據(jù)是否為FR數(shù)據(jù)幀的數(shù)據(jù),可以通過判斷 FR標識來判斷,如果FR標識的第一個字節(jié)不為O,那么該信令為FR數(shù)據(jù)幀, 當然這個判斷方法可以根據(jù)FR協(xié)議中標識FR數(shù)據(jù)幀的FR標識的具體情況進 行調整。
上述步驟3)中判斷數(shù)據(jù)是否為NS數(shù)據(jù)幀的數(shù)據(jù),可以通過判斷NS 標識來判斷,如果NS標識的第一個字節(jié)為0,那么該信令為NS數(shù)據(jù)幀, 當然這個判斷方法可以根據(jù)NS協(xié)議中標識NS數(shù)據(jù)幀的NS標識的具體情 況進行調整。
上述步驟4)中判斷數(shù)據(jù)是否為BSSGP數(shù)據(jù)幀的數(shù)據(jù),可以通過判斷 BSSGP標識來判斷,如果BSSGP標識的第一個字節(jié)為0或1,那么該信令 為BSSGP數(shù)據(jù)幀,當然這個判斷方法同樣可以根據(jù)具體情況進行調整。
所述步驟5)根據(jù)SAPI標識(LLC層的第一個字節(jié)就是SAPI標識)判斷業(yè) 務類型的方法如下
1. 如果LLC層數(shù)據(jù)的第一個字節(jié)為3, 5, 9或11,那么該信令的SAPI 為SNDCP。
2. 如果LLC層數(shù)據(jù)的第一個字節(jié)為l,那么該信令為GMM(移動性管理) 數(shù)據(jù),對于GMM數(shù)據(jù)處理如下(參考圖3a):
2.1如果GMM層數(shù)據(jù)的第一個字節(jié)(GMM有若干個字節(jié),根據(jù)第一個 字節(jié)用來區(qū)分是否為SM數(shù)據(jù))的后四個比特為1010,那么該信令為SM(會 話管理)的數(shù)據(jù),分析SM數(shù)據(jù)類型并作相應處理,具體如下
2丄1如果SM數(shù)據(jù)的第一個字節(jié)(SM同樣也有若干個字節(jié),根據(jù)第一 個字節(jié)來區(qū)分消息類型)為0x41或0x47,分別^L如下處理
①SM的類型為0x41,表示PDP (分組數(shù)據(jù)協(xié)議)激活請求,分別根據(jù) IMSI和TLLI在事件列表中建立事件的KEY值,這樣事件就存在兩個KEY 值;讀取下一條信令。IMSI作為KEY值是在同一個事件中是唯一的,但是
不是所有的消息都具備IMSI,所以沒有具備IMSI的消息無法用IMSI作為 KEY值;TLLI是每條消息都具備的,但是在事件過程中,TLLI會發(fā)生改變。 所以不是唯一的。
②SM的類型為0x47,表示PDP去激活接受,分別根據(jù)IMSI和TLLI作 為KEY值去查找事件,如果能夠找到,刪除KEY值,以關閉事件,讀取下 一條信令;否則直接讀取下一條信令。
所述步驟6)判斷SNDCP的類型的方法如下
SNDCP的類型通過SNDCP幀的第一個字節(jié)的第六個比特位T( TYPE ) 判斷
1. 如果丁=0,表示類型為SN-DATA。具備字段M( More Bit) 、 F(First segment indicator bit)和N-PDU (Network Protocol DataUnit)。
M=0表示該信令后面沒有關聯(lián)的信令了, M=l表示該信令后面還有關 聯(lián)的信令,而且后面的信令與該信令的N-PDU —致。
F二O表示該信令與前面的信令有關聯(lián),而且與前面信令的N-PDU—致; F=l表示該信令是當前N-PDU的第 一條信令。
如果信令的F二l, M=0,表示該信令是當前N-PDU的第一條信令而且 當前N-PDU就只有一條信令;如果信令的F二l, M=l,表示該信令是當前 N-PDU的第一條信令而且當前N-PDU還有后續(xù)的信令;如果信令的F=0, M=l,表示該信令與前面的信令有關聯(lián)而且當前N-PDU還有后續(xù)的信令; 如果信令的F^, M=0,表示該信令與前面的信令有關聯(lián)而且沒有后續(xù)的信
令;
2. 如果丁=1,表示類型為SN-UNITDATA。具備字段M (More Bit)、 F (First segment indicator bit) 、 N-PDU (Network Protocol DataUnit)和 Segmentnumber(表示分段的序號)。M和F的取值含義與類型為SN-DATA 時的M和F相同。
下面具體描述所述步驟6 )中針對SN-DATA和SN-UNITDATA兩種類 型判斷是否丟包的方法
第一種SN-DATA類型(參見圖3b),根據(jù)M, F和N-PDU處理;
1. F=l ,根據(jù)IMSI或TLLI作為KEY去查找事件;
1.1如果找到,添加消息的文件名和偏移量到事件列表;判斷該信令的 N-PDU與事件列表中記錄的N-PDU是否一致;這里添加消息的文件名和偏 移量到事件列表是因為消息保存在文件中, 一個事件相關的消息,可能保存 在不同的文件中,偏移量是消息在文件里具體位置。每條消息都有偏移量。 記錄文件名和偏移量可以知道在發(fā)生丟包時,是從哪個文件的哪個位置開始 的。
a) 如果一致,表示正常;進入步驟A);
b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟A);
1.2如果沒有找到,說明當前這條消息所歸屬的事件沒有SM的分組數(shù) 據(jù)協(xié)議PDP激活的消息,當前的數(shù)據(jù)不是一個完整的事件;分別根據(jù)IMSI 和TLLI作為KEY建立事件;進入步驟A);
2. F=0,根據(jù)IMSI或TLLI作為KEY去查找事件,
2.1如果找到,添加消息的文件名和偏移量到事件列表,判斷該信令的 N-PDU與事件中記錄的N-PDU是否一致,
a) 如果一致,表示正常;進入步驟A);
b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟A);
2.2如果沒有找到,判斷結束;直接讀取下一條信令。
A)根據(jù)M來處理
a) 如果M=0,表示該N-PDU已經結束,記錄當前N-PDU+1在事件中(這 里記錄N-PDU+1,表示添加到事件中的下一條消息的N-PDLN記錄的N-PDU 值,即為N-PDU+1);判斷結束;讀取下一條信令;
b) 如果M-l,表示該信令與后續(xù)的信令有關聯(lián),記錄當前N-PDU在事 件中;判斷結束;讀取下一條信令;這里為了處理流程的統(tǒng)一性,N-PDU 沒有改變也可以再記錄一次。
第二種SN-UNITDATA類型(參見圖3c),根據(jù)M, F, N-PDU和 Segmentnumber處理;
1. F=l,根據(jù)IMSI或TLLI作為KEY去查找事件,
1.1如果找到,添加到事件列表,判斷該信令的N-PDU與事件中記錄 的N-PDU是否一致;
a) 如果一致,表示正常;進入步驟B);
b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);
1.2如果沒有找到,分別根據(jù)IMSI和TLLI作為KEY建立事件;進入 步驟B);
2. =0,根據(jù)IMSI或TLLI作為KEY去查找事件,
2.1如果找到,判斷該信令的N-PDU與事件中記錄的N-PDU是否一致
a) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);
b) 如果 一 致,再判斷該信令的Segmentnumber與事件中記錄的 Segmentnumber是否一致
b.l)如果一致,表示正常;進入步驟B);
b.2)如果不一致,表示發(fā)生丟包,記錄當前Segmentnumber減去事件中 記錄的Segmentnumber的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);
2.2如果沒有找到,判斷結束;讀取下一條信令;
B )再根據(jù)M來處理
a) 如果M=0,表示該N-PDU已經結束,記錄當前N-PDU+1在事件中(記 錄N-PDU+1 ,表示添加到事件中的下一條消息的N-PDU與己錄的N-PDU值, 即為N-PDU+1),把消息的文件名、偏移量等添加到事件列表;讀取下一 條信令;
b) 如果M=l,表示該信令與后續(xù)的信令有關聯(lián),記錄當前N-PDU和 Segmentnumber+1在事件中(添力o segmentnumber+1意味著下一條添力口到事
件的消息的segmentnumbeF記錄的segmentnumber) ; 4巴消息的文件名、偏 移量等添加到事件列表;讀取下一條信令。
對于各種參數(shù)的取值及含義,本領域技術人員可以根據(jù)具體的協(xié)議進行 靈活調整。
綜上所述,由于本發(fā)明的檢測GB鏈路丟包的方法從系統(tǒng)方面上全面、 綜合地考慮GB各種消息類型之間的共同特征,通過KEY值把若干條消息 關聯(lián)成一個事件,提出一種有效的檢測的方法。從而通過檢測采集到的GB 信令而有效的解決了檢測GB鏈路的丟包問題。該方法實施簡單,考慮完備, 經過實驗證明對GB鏈路的檢測是很有效的。
盡管上面結合附圖對本發(fā)明的技術方案進行了描述,但是本發(fā)明并不局 限于上述的具體實施方式
,也不局限于GB信令監(jiān)測的業(yè)務種類,上述的具 體實施方式僅僅是示意性的,而不是限制性的,本領域的技術人員在本方法 的啟示下,在不脫離本方法宗旨和權利要求所保護的范圍情況下,還可以作 出很多變形,這些均屬于本發(fā)明的保護范圍之內。
權利要求
1、一種檢測通用分組無線業(yè)務吉比特GB鏈路是否丟包的方法,包括如下步驟1)采集GB信令和建立空事件列表;2)讀取一條GB信令;3)分析和過濾GB信令,如果GB信令中的SAPI業(yè)務接入點標識為SNDCP,進入步驟4);如果SAPI為GMM,進入步驟5);否則進入步驟2);4)判斷SNDCP的協(xié)議類型;如果SNDCP的類型為SN-DATA,根據(jù)信令中的字段M、字段F和字段N-PDU判斷是否丟包,進入步驟2);如果SNDCP的類型為SN-UNITDATA,根據(jù)信令中的字段M、字段F、字段Segmentnumber和字段N-PDU判斷是否丟包,進入步驟2);5)判斷GMM的協(xié)議類型;如果GMM的協(xié)議類型為SM會話管理,根據(jù)SM的消息類型在事件列表中建立事件的KEY值或刪除事件的KEY值,然后進入步驟2);否則,直接進入步驟2)。
2、 根據(jù)權利要求1所述的一種檢測通用分組無線業(yè)務GB鏈路是否丟 包的方法,其特征在于,所述步驟3)中分析和過濾GB信令的步驟,包括判斷信令數(shù)據(jù)幀是否 為幀中繼數(shù)據(jù)幀、網絡業(yè)務數(shù)據(jù)幀和基站子系統(tǒng)GPRS協(xié)議數(shù)據(jù)幀。
3、 根據(jù)權利要求1所述的一種檢測通用分組無線業(yè)務GB鏈路是否丟 包的方法,其特征在于,所述步驟5)中根據(jù)SM的消息類型在事件列表中 建立事件的KEY值或刪除事件的KEY值包括如下步驟如果SM數(shù)據(jù)類型為PDP激活請求,分別根據(jù)IMSI和TLLI在事件列表 中建立事件的KEY值;如果SM數(shù)據(jù)類型為PDP去激活接受,分別才艮據(jù)IMSI和TLLI作為KEY 值去查找事件,如果能夠找到,刪除KEY值,以關閉事件,讀取下一條信 令;如果找不到直接讀取下一條信令。
4、 根據(jù)權利要求1至3中任一項所述的一種檢測通用分組無線業(yè)務GB 鏈路是否丟包的方法,其特征在于,所述步驟4)中SNDCP的類型為 SN-DATA時根據(jù)信令中的字段M、字段F和字段N-PDU判斷是否丟包包 括如下步驟(1) 如果F=l,根據(jù)IMSI或TLLI作為KEY去查找事件;① 如果找到,添加消息的文件名和偏移量到事件列表;判斷該信令的 N-PDU與事件列表中記錄的N-PDU是否一致;a) 如果一致,表示正常,進入步驟A);b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟A);② 如果沒有找到,分別根據(jù)IMSI和TLLI作為KEY建立事件;進入步 驟A);(2) 如果F=0,根據(jù)IMSI或TLLI作為KEY去查找事件,① 如果找到,添加消息的文件名和偏移量到事件列表,判斷該信令的 N-PDU與事件中記錄的N-PDU是否 一致,a) 如果一致,表示正常;進入步驟A);b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟A);② 如果沒有找到,判斷結束; A)根據(jù)M處理a) 如果M二O,表示該N-PDU已經結束,記錄當前N-PDU+1在事件中, 判斷結束;b) 如果M^,表示該信令與后續(xù)的信令有關聯(lián),記錄當前N-PDU在事 件中,判斷結束。
5、 根據(jù)權利要求1至3中任一項所述的一種檢測通用分組無線業(yè)務GB 鏈路是否丟包的方法,其特征在于,所述步驟4)中SNDCP的類型為 SN-UNITDATA時根據(jù)信令中的字段M、字段F、字段Segmentnumber和字 段N-PDU判斷是否丟包包括如下步驟(1) 如果F=l,根據(jù)IMSI或TLLI作為KEY去查找事件,① 如果找到,添加消息的文件名和偏移量到事件列表,判斷該信令的 N-PDU與事件中記錄的N-PDU是否一致;a) 如果一致,表示正常;進入步驟B);b) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);② 如果沒有找到,分別根據(jù)IMSI和TLLI作為KEY建立事件;進入步 驟B);(2) 如果F=0,根據(jù)IMSI或TLLI作為KEY去查找事件,① 如果找到,判斷該信令的N-PDU與事件中記錄的N-PDU是否一致a) 如果不一致,表示發(fā)生丟包,記錄當前N-PDU減去事件中記錄的 N-PDU的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);b) 如果 一 致,再判斷該信令的Segmentnumber與事件中記錄的 Ssgmcntnumber是否 一致二b.l)如果一致,表示正常;進入步驟B);b.2)如果不一致,表示發(fā)生丟包,記錄當前Segmentnumber減去事件中 記錄的Segmentnumber的值,這個值就是發(fā)生丟包的數(shù)目;進入步驟B);② 如果沒有找到,判斷結束; B)根據(jù)M處理a) 如果M=0,表示該N-PDU已經結束,記錄當前N-PDU+1在事件中, 把消息的文件名和偏移量添加到事件列表;判斷結束;b) 如果M=l,表示該信令與后續(xù)的信令有關聯(lián),記錄當前N-PDU和 Segmentnumber+1在事件中,把消息的文件名和偏移量添加到事件列表;判 斷結束。
全文摘要
本發(fā)明公開了一種檢測GB鏈路是否丟包的方法,首先采集GB信令和建立空事件列表;讀取GB信令,分析和過濾信令,根據(jù)信令中的業(yè)務接入點標識判斷信令的類型,如果類型為SN-DATA,根據(jù)信令中的字段M、字段F和字段N-PDU判斷是否丟包;類型為SN-UNITDATA,根據(jù)信令中的字段M、字段F、字段Segmentnumber和字段N-PDU判斷是否丟包;如果類型為GMM;且GMM為SM會話管理,則根據(jù)SM的消息類型在事件列表中建立事件的KEY值或刪除事件的KEY值,否則讀取下一條信令,繼續(xù)判斷。利用本發(fā)明的技術方案,可以有效檢測GB鏈路是否丟包,確保對上層業(yè)務和后續(xù)數(shù)據(jù)的分析。
文檔編號H04L1/00GK101359975SQ20071014316
公開日2009年2月4日 申請日期2007年8月3日 優(yōu)先權日2007年8月3日
發(fā)明者占治國 申請人:中興通訊股份有限公司