沈樵综合在线,一区二区三区乱码,免费资源一区二区三区,91超碰碰,av极品一线天,日韩免费高清一区二区,国产蜜尤福利在线,嗯啊91在线观看,精品一区二三

產品推薦:水表|流量計|壓力變送器|熱電偶|液位計|冷熱沖擊試驗箱|水質分析|光譜儀|試驗機|試驗箱


儀表網>技術中心>技術原理>正文

歡迎聯(lián)系我

有什么可以幫您? 在線咨詢

TD-SCDMA網絡測試儀中SCCP協(xié)議解碼

   2013年01月25日 13:53  
  引言
  
  隨著TD-SCDMA第三代移動通信系統(tǒng)相關技術在中國飛速發(fā)展,基于該標準的網絡及終端設備已經研制成功,并已能滿足商用要求?,F(xiàn)階段,TD-SCDMA測試設備是zui薄弱的環(huán)節(jié),一方面,這直接影響到TD-SCDMA產業(yè)鏈的完整性;另一方面,也影響到電信運營商對網絡設備的部署與檢測,基于這樣的現(xiàn)實,具有自主知識產權的TD-SCDMA網絡測試儀的研制具有重要意義。
  
  TD-SCDMA網絡測試儀中的信令分析,針對的是無線接入網(UTRAN)和核心網(CN)的協(xié)議棧[1],其中包含一系列的傳輸層和無線層協(xié)議。儀表協(xié)議分析的基礎是要能夠實現(xiàn)對所接收到的網絡數(shù)據進行譯碼解析,在此功能準確無誤的基礎上,儀表才可以進行更的統(tǒng)計追蹤功能。在進行協(xié)議分析時,鑒于協(xié)議之間消息格式和處理機制的不同,以及軟件模塊化的實現(xiàn)要求,采取以單個協(xié)議進行模塊封裝的辦法是更有效的,其好處在于能夠忽略協(xié)議間功能和格式的細微差別,對單個協(xié)議的分析方法也能在很大程度上推廣到其他協(xié)議。以UT-RAN內部的協(xié)議棧為例,從下至上分為信令適配層、傳輸層和無線網絡層[2],其中信令適配層和傳輸層的協(xié)議在標準中都有
  
  明確的消息結構,而無線網絡層的協(xié)議是采用ASN1(abstractsyntaxnotation)語法進行描述[3],導致消息封裝的方法有所不同,進而帶來解碼方式上的差異。
  
  我們在本文中研究的主要內容是TD-SCDMA的CN以及UTRAN協(xié)議棧中信令連接控制部分協(xié)議(signallingconnectioncontrolpart,SCCP)消息的分析,一方面描述如何根據協(xié)議標準中規(guī)定的協(xié)議消息結構進行解碼;另一方面結合實際情況探討SCCP協(xié)議上層PDU的獲取方法。
  
  1、SCCP協(xié)議消息概述
  
  SCCP協(xié)議是7號信令用戶部分的一種補充功能級,SCCP協(xié)議位于消息傳輸部分協(xié)議(messagetransferpart,MTP)之上,為MTP提供附加功能。
  
  在TD-SCDMA的CN以及UTRAN的協(xié)議棧中,都包含有SCCP協(xié)議,該協(xié)議位于協(xié)議棧的無線網絡控制平面中[3],如圖1所示。
  
  圖1Iu接口無線網絡控制平面的協(xié)議棧
  
  SCCP協(xié)議處于無線協(xié)議無線接入網絡應用部分(radioaccessnetworkapplicationpart,RANAP)以下,ATM適配層協(xié)議以上,位于傳輸層,對于網絡的數(shù)據傳輸起著相當重要的作用。
  
  ITU-T在不改變原有MTP功能的基礎上,增加了SCCP,目的就是在信令網中建立邏輯信令連接,以傳送與電路無關的消息。因為隨著通信網和通信新業(yè)務的不斷發(fā)展,越來越多的業(yè)務需要和遠端網絡節(jié)點直接傳送控制消息,這些消息和呼叫連接的電路無關,甚至根本與呼叫無關,如現(xiàn)在通信網中開放的智能網業(yè)務、的漫游業(yè)務、數(shù)據庫以及網絡的運行、管理和維護等,而這些業(yè)務僅僅用MTP已無法滿足要求。[3]
  
  SCCP能提供4類業(yè)務,2類無連接業(yè)務,2類面向連接業(yè)務。無連接業(yè)務類似于分組交換網中的數(shù)據報業(yè)務;面向連接業(yè)務類似于分組交換網中的虛電路業(yè)務。
  
  無連接業(yè)務不需要預先建立連接就可以在信令網中傳送信令消息。無連接業(yè)務又分為基本無連接業(yè)務和有序的無連接業(yè)務,也稱為0類業(yè)務和1類業(yè)務。0類業(yè)務不保證消息的順序傳輸,各個消息被獨立地進行傳送,相互不發(fā)生關系,因而在這種情況下,不能保證按照發(fā)送的順序把消息送到目的地信令點;1類業(yè)務給來自同一消息流的數(shù)據信息附上了同一信令鏈路選擇SLS,即經由同一信令鏈路傳送,因此可以保證按照發(fā)送的順序把消息送到目的地信令點。
  
  面向連接業(yè)務在傳送消息之前,需要在源點和目的點之間建立一條消息傳送路徑,即邏輯連接。這種方式適合傳送大批量的數(shù)據。面向連接業(yè)務又分為基本面向連接業(yè)務和帶流量控制的面向連接業(yè)務,即2類業(yè)務和3類業(yè)務。它們共同的特點是保證消息發(fā)送和接收的順序一致。此外,3類業(yè)務具有流量控制功能、消息丟失及錯序的檢測功能等。在2類業(yè)務中,由于各個數(shù)據信息沒有順序號,因此不能完成順序控制和流量控制。
  
  SCCP是在不改變原有MTP功能的基礎上增加的,它對MTP的改進主要有以下功能:①能夠傳送各種與電路無關的信令消息;既支持無連接業(yè)務,又支持面向連接業(yè)務;②具有增強的尋址功能,擴大了業(yè)務范圍;③具有地址翻譯功能,可以在互連的不同7號信令網之間實現(xiàn)信令的直接傳輸;④具有管理功能,可以管理SCCP子系統(tǒng)狀態(tài)。
  
  根據ITU-TQ.713,SCCP主要的消息類型[4]如表1所示。
  
  表1SCCP消息類型
  
  一條完整SCCP消息包含以下4部分,消息類型、必選固定部分、必選可變長部分以及可選部分,結構如圖2所示。
  
  圖2SCCP消息整體結構
  
  Messagetype字段的長度為1個字節(jié),位于SCCP消息的開始,任何對SCCP消息的分析都要以判斷消息類型作為*步。
  
  SCCP協(xié)議是7號信令中的重要協(xié)議,處于無線接入網的Iu接口以及核心網接口中。網絡接口的協(xié)議之間是以協(xié)議棧的方式進行組合的,而信令數(shù)據也是按照協(xié)議棧的分層關系進行封裝的,由于SCCP層處于協(xié)議棧的中間,它上層協(xié)議的數(shù)據將作為SCCP的凈荷數(shù)據封裝在SCCP消息中,而SCCP消息整體又作為其下層協(xié)議消息的凈荷封裝進整條二進制數(shù)據。在實際的解碼過程中,正是要按照協(xié)議棧由底向上的順序對數(shù)據進行分析。以Iu接口為例,無線網絡層RANAP協(xié)議處于SCCP層以上,因此,RANAP消息被裝入SCCP的DATA數(shù)據中,SCCP消息則作為MTP3B協(xié)議消息的凈菏繼續(xù)被下層協(xié)議封裝?;谶@種不同協(xié)議間數(shù)據的封裝關系,以解碼為基礎的信令分析還有另外一個需求,即定位和提取上層協(xié)議的數(shù)據。協(xié)議分析進行模塊劃分決定了解碼是每個協(xié)議自身完成的任務,而數(shù)據總是由下層提供,也就是說每個協(xié)議層應該有2個基本的功能,一個是解碼,另一個就是定位和提取上層數(shù)據。
  
  2、SCCP協(xié)議消息的解碼分析
  
  SCCP協(xié)議消息的詳細結構如圖3所示。
  
  圖3SCCP消息詳細結構
  
  圖3中,給出了SCCP協(xié)議消息的詳細消息結構,從圖3中可以看出每條消息是由4部分構成:消息類型+必選固定部分+必選可變部分+可選部分。下面對這4部分規(guī)則分別進行解釋。
  
  ●Messagetypecode:消息類型字段只有一個字節(jié),該字段是所有SCCP消息必須包含,SCCP協(xié)議的消息類型已經在前面的表格中有了說明。
  
  ●Mandatoryfixedpart:必選固定部分參數(shù)是指那些在消息中必須存在的并且位置、參數(shù)長度以及出現(xiàn)順序都由消息類型確定好的參數(shù)。因為這些參數(shù)的出現(xiàn)位置和長度都是固定的,因此在消息中并不需要額外的字段用來表示它們的類型和長度,只需在相應的位置提供參數(shù)內容即可。
  
  ●Mandatoryvariablepart:必選可變部分參數(shù)是指那些在消息中必須存在的但是參數(shù)長度可變的參數(shù),每個必選可變部分參數(shù)都有一個指針指向該參數(shù)內容開始的位置,在不同的消息中,必選可變部分參數(shù)指針的順序在消息中是固定排列好的,因此對于必選可變部分參數(shù),也不需要提供參數(shù)類別,雖然必選可變部分參數(shù)的指針順序是固定的,但是其內容順序有可能與指針順序不同,另外,因為這種參數(shù)的長度可變,所以每個參數(shù)內容中都包含1個或2個字節(jié)用來表示參數(shù)長度。
  
  ●Optionalpart:可選部分參數(shù)是指那些在消息中定義了的可能出現(xiàn)也可能不出現(xiàn)的參數(shù),整個可選部分的起始位置由*可變部分參數(shù)的zui后一個指針來指明,該指針指示的是可選部分*個參數(shù)開始位置的指針。如果消息類型指示沒有可選部分參數(shù)存在,那么這個指針將不存在,如果消息類型指示有可選部分存在,但對于一條具體消息時并不包含這些可選參數(shù),那么該指針所在字段應該全為0??蛇x部分可以包含固定長度參數(shù)或者可變長度參數(shù)。另外,可選部分參數(shù)在消息中的發(fā)送順序是不受限制的,比如一條SCCP消息3個可選部分參數(shù),這3個參數(shù)出現(xiàn)的順序和協(xié)
  
  議標準中描述的順序可以不同,協(xié)議標準中只是說明這3個是可選的參數(shù),并沒有規(guī)定其出現(xiàn)的順序。鑒于以上描述的可選部分參數(shù)的特點,任何一個可選部分參數(shù)都必須包括參數(shù)名,參數(shù)內容,如果參數(shù)長度可變,還必須包括參數(shù)長度。
  
  ●Endofoptionalparametersoctet:在可選部分參數(shù)的zui后,有一個長度為1字節(jié),內容為全0的endofparameters參數(shù),這個參數(shù)用來表示可選部分參數(shù)的結束,該參數(shù)只有當可選部分參數(shù)在消息中存在的時候才出現(xiàn)。
  
  1)消息內容的發(fā)送順序:在SCCP消息中,所有的參數(shù)都包含整數(shù)個字節(jié),參數(shù)的格式都是按照字節(jié)棧的形式,在實際消息的傳送過程中,先發(fā)送的是協(xié)議標準中描述的位于棧頂?shù)牡托蛱栕止?jié),zui后發(fā)送的是位于棧底的高序號字節(jié)。
  
  2)長度參數(shù)的解碼規(guī)則:長度參數(shù)字段被解碼為二進制值,用來表示參數(shù)內容字段的長度,長度參數(shù)字段的值不包括參數(shù)名稱和參數(shù)長度占用的2個字節(jié)。
  
  3)指針的解碼規(guī)則:指針的二進制值表示了該指針的高位字節(jié)與該指針所指的參數(shù)之間相隔的字節(jié)數(shù)。
  
  在SCCP協(xié)議中,消息都是遵循上面描述的固定結構。對某一條具體的消息,比如CR(conneetionqequest),在Q.713協(xié)議中對消息中包含的參數(shù)做了規(guī)定[5],如表2所示。
  
  表2SCCPCR消息參數(shù)表
  
  SCCP消息中消息類型,必選固定部分參數(shù)和必選可變部分參數(shù)都是按照固定的順序規(guī)定好的,而可選部分參數(shù)的情況并不固定,消息中只規(guī)定了可能包含的可選參數(shù),但對可選參數(shù)在實際消息中是否出現(xiàn)以及出現(xiàn)的順序并沒有說明。
  
  在編寫解碼函數(shù)的程序時,由于SCCP協(xié)議zui底層的解碼單位是參數(shù)級別,即像Messagetype,Sourcelocalreference和Protocolclass等參數(shù),各自都有對應的參數(shù)解碼函數(shù),因此對于消息類型參數(shù),必選固定部分參數(shù),必選可變部分參數(shù),只要按照順序調用參數(shù)解碼函數(shù)就可以完成解碼,真正復雜的是對可選參數(shù)的處理,因為消息定義中的可選參數(shù)在實際消息中是否出現(xiàn)以及參數(shù)出現(xiàn)的順序是不固定的,*確定的是,可以通過可選部分參數(shù)指針找到可選部分參數(shù)開始的位置,然后通過消息總長度減去固定部分長度得到可選部分長度,zui后再根據可選參數(shù)部分的結構通過循環(huán)處理的方式進行解碼,每次循環(huán)處理的過程是先判斷可選參數(shù)的類型,然后調用相應的參數(shù)解碼函數(shù)。下面用一個流程圖來說明CR消息的解碼過程,此過程可以推廣到所有其他SCCP消息的解碼,如圖4所示。
  
  圖4SCCP協(xié)議CR消息的解碼流程圖
  
  3、實際測試中的SCCP消息組裝問題
  
  網絡中的SCCP消息長度一般在100個字節(jié)內,SCCP消息需要封裝上層RANAP或者RNSAP的數(shù)據,而上層數(shù)據通常不會很長,一條SCCP消息*可以容納,但在少數(shù)情況下,上層數(shù)據需要分段由幾條SCCP消息中傳輸,而多條SCCP消息再分散在底層的ATM信元中傳送。這個現(xiàn)象從邏輯上是容易理解的,但從數(shù)據分析的角度,尤其是從數(shù)據接收端的角度來看,處理就要復雜很多,因為盡管數(shù)據分段的情況相對較少,但是信令分析注重消息解析的準確性和信令流程的連貫性,為了達到這2個要求,就要保證接收端能夠準確完成數(shù)據的組裝,在此基礎上,對SCCP層的分析以及更高層如RANAP協(xié)議的分析才能夠保證。
  
  在SCCP協(xié)議的消息中,絕大部分都包含data或longdata參數(shù),這2個參數(shù)表示SCCP的用戶數(shù)據(servicedataunit,SDU),也叫做SCCP上層協(xié)議的協(xié)議數(shù)據單元(protocololataunit,PDU)。SCCP的大多數(shù)消息都包含數(shù)據參數(shù),從而加大了獲取PDU的難度,另外,消息類型的不同導致獲取的方法也不同,包含Data參數(shù)的消息分類如表3所示。
  
  表3包含Data參數(shù)的消息分類表
  
  當調用SCCP協(xié)議模塊的獲取上層PDU函數(shù)時,首先判斷消息類型,如果不在
  
  以上消息類型中,則不存在用戶數(shù)據,那么僅僅完成解碼即可;如果是以上消息類型中的一種,那么就需要調用相應的函數(shù)進行獲取SDU的操作。由于包含用戶數(shù)據的消息比較多,為了處理方便和邏輯清晰,在模塊實現(xiàn)時為表3中的消息定義了各自的函數(shù)。
  
  表3中有兩列內容分別是輔助參數(shù)和它們的存在性。輔助參數(shù)是指在相應消息中對于獲取SDU有幫助的參數(shù),而存在性就表示該輔助參數(shù)在相應消息中的存在可能,F(xiàn)和V表示一定存在,0表示可能存在。輔助參數(shù)的作用主要是用來告知消息中包含的Data是完整的還是需要分段傳送的,如果完整,那么取得數(shù)據后函數(shù)就把PDU數(shù)據返回;否則要對來自多條SCCP消息的多個Data進行組裝。在表3中用A,B,C,D對消息處理進行了分類,每個類型代表一種處理的復雜程度如表4所示。
  
  表4獲取SDU分析表a
  
  根據獲取Data數(shù)據的復雜程度,把相應函數(shù)分為4類。每類函數(shù)根據處理的復雜程度,都需要輔助函數(shù)的支持,例如,類型2中對DT1和DT2的處理,這2條消息中都有參數(shù)包含moredataindicator字段,其作用是指示本條數(shù)據消息后面是否有屬于同一個SDU的數(shù)據,因此該參數(shù)是DT1和DT2消息獲取數(shù)據的重要操作依據。對于其他類型的函數(shù),輔助參數(shù)起著同樣的作用,另外個別輔助參數(shù)本身是可選的,如類型4函數(shù)中的輔助參數(shù)segments,因此在類型4函數(shù)處理時需要判斷的條件就很多,首先需要知道segments參數(shù)是否存在,存在的話才有組裝的可能,不存在的話說明數(shù)據不需要組裝。4類函數(shù)對參數(shù)的需要性如表5所示。
  
  表5獲取SDU分析表b
  
  在實際的SCCP消息中,大多都是用DT1消息來承載上層數(shù)據,獲取DT1消息的函數(shù)屬于表5中的第2類,下面就以該消息為例來說明SCCP協(xié)議獲取上層PDU的方法,DT1的格式[5]如表6所示。
  
  表6DT1消息結構
  
  第1個參數(shù)(Messagetype)表示消息類型,根據消息類型表格可知,DT1消息類型為OX00000110即6;第2個參數(shù)(Destinationlocalreference)是目的地本地參考,表示目的地地址信息;第3個參數(shù)(Segmenting/reassembling)叫做分割/組裝,長度是1個字節(jié),格式如圖5所示。
  
  圖5Segmenting/reassembling參數(shù)結構
  
  該參數(shù)長度為一個字節(jié),zui低位是信息字段M,為0表示消息后面沒有分段的數(shù)據;為1則表示有。圖6表示在模擬真實的網絡環(huán)境,以DT1數(shù)據的傳輸為例,說明所有可能的情況。
  
  圖6DT1數(shù)據在網絡中傳送的可能情況示意圖
  
  DT1消息在網絡中的傳送共4種可能,每種類型中右邊的表示本條DT1消息,圖6左邊的表示上條DT1消息,兩消息中都有M指示,下面分別說明。
  
  類型1:本條DT1數(shù)據和前面的DT1是連續(xù)的,另外本條DT1數(shù)據后面還有連續(xù)的數(shù)據,在此情況下,應該把本條DT1數(shù)據串接在前面的D
  
  T1后面,并且繼續(xù)等待后面的包含同類內容的數(shù)據。
  
  類型2:本條DT1數(shù)據和前面的DT1是連續(xù)的,另外本條DT1數(shù)據后面沒有連續(xù)的數(shù)據,在此情況下,應該把本條DT1數(shù)據串接在前面的DT1后面,構成一個完整的上層數(shù)據PDU交給上層處理。
  
  類型3:本條DT1數(shù)據和前面的DT1不是連續(xù)的,另外本條DT1數(shù)據后面有連續(xù)的數(shù)據,在此情況下,應該把本條DT1數(shù)據保存起來等待后面同類數(shù)據進行組裝。
  
  類型4:本條DT1數(shù)據和前面的DT1不是連續(xù)的,另外本條DT1數(shù)據后面沒有連續(xù)的數(shù)據,在此情況下,應該用本條DT1數(shù)據作為上層PDU。
  
  下面用流程圖的形式來說明獲取DT1消息上層數(shù)據的程序處理過程,如圖7所示。
  
  圖7獲取DT1消息上層PDU函數(shù)流程圖
  
  在真實的網絡環(huán)境中,在使用CR消息建立完SCCP連接后,SCCP協(xié)議出現(xiàn)zui多的就是DT1,SCCP層的主要作用是封裝無線層的信令數(shù)據,而上層數(shù)據才是對分析網絡以及應用zui有價值的信息?;谶@樣的現(xiàn)實,分析DT1消息有重要意義,盡管在SCCP協(xié)議中還有其他消息也包含數(shù)據信息,但在實際信令中出現(xiàn)的情況并不多。
  
  5、結束語
  
  通過對SCCP協(xié)議解碼和獲取上層數(shù)據的分析,一方面為模塊實現(xiàn)提供了設計方案,另一方面可以把SCCP協(xié)議的分析方法推廣到TD-SCDMA標準協(xié)議棧中其他傳輸層的協(xié)議分析中。在TD-SCDMA網絡分析儀的軟件模塊中,采用面向對象編程方法[7]對SCCP部分進行了實現(xiàn),該模塊在儀表測試的過程中表現(xiàn)穩(wěn)定,通過實踐論證了設計方案的正確性。
  
  參考文獻:
  
  [1]KAMMERLANDERK.BenefitsandimplementationofTD-SCDMA[EB/OL].(2000-04-12)[2006-11-28].http://IEEExplore.ieee.org/ie15/7138/1922l/00890848.pdf?isnurnber=&arnumber=890848.
  
  [2]3GPPTS25.401V3.10.0.UTRANoveralldescription[EB/OL].(2002-06-06)[2006-11-23].http:///ftp/Specs/archlye/25_series/25.401.
  
  [3]李小文.李貴勇.TD-SCDMA第三代移動通信系統(tǒng)、信令及實現(xiàn)[M].北京.人民郵電出版社,2003.
  
  [4]羅進文.信令網技術教程[M].北京.人民郵電出版社,2003.9.
  
  [5]ITU-TQ.713.SignallingconnectioncontrolpartformatsandCodes[EB/OL].(2002-01-01)[2006-11-23].http://electronics.ihs.com/document/abstract/NROVWAAAAAAAAAA.
  
  [6]MIRSAR,BAIERPW.AtestsystemforevaluationoftheWCDMAtechnology[J].IEEETrans.Commum,2004,(8):16-20.
  
  [7]錢能.c++程序設計教程[M].北京:清華大學出版社.2001.6.
  
  作者:魏輝;張治中      來源:重慶郵電學院學報

免責聲明

  • 凡本網注明“來源:儀表網”的所有作品,均為浙江興旺寶明通網絡有限公司-儀表網合法擁有版權或有權使用的作品,未經本網授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:儀表網”。違反上述聲明者,本網將追究其相關法律責任。
  • 本網轉載并注明自其它來源(非儀表網)的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或和對其真實性負責,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品第一來源,并自負版權等法律責任。
  • 如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。
聯(lián)系我們

客服熱線: 15267989561(同微信)

加盟熱線: 15267989561(同微信)

媒體合作: 0571-87759945

投訴熱線: 0571-87759942

關注我們
  • 下載儀表站APP

  • Ybzhan手機版

  • Ybzhan公眾號

  • Ybzhan小程序

溫馨提示

該企業(yè)已關閉在線交流功能

祁连县| 休宁县| 岗巴县| 灵寿县| 顺昌县| 吴旗县| 虹口区| 梁河县| 进贤县| 永川市| 调兵山市| 府谷县| 乐平市| 邵阳县| 汶上县| 元阳县| 台中市| 都昌县| 三穗县| 潼关县| 和田县| 崇明县| 宝山区| 白山市| 丹东市| 南开区| 景泰县| 通道| 城市| 竹北市| 商城县| 榕江县| 和龙市| 陇西县| 保亭| 自贡市| 武城县| 富裕县| 五常市| 会泽县| 大连市|