展 鑫,孫 穎
(1.北京全路通信信號研究設計院集團有限公司,北京 100070;2.北京中關村軌道交通產業發展有限公司,北京 100070)
根據EN 50159標準對安全相關系統參考模型的描述,列控系統車-地無線通信系統是一種基于開放式網絡的安全通信系統。目前車-地無線通信協議主要采用基于鐵路數字移動通信系統(Global System for Mobile Communications-Railway,GSM-R)網絡的電路交換方式,歐標Subset-037協議V3.2.0版本發布后,增加了GSM-R分組無線服務(General Packet Radio Service,GPRS)。在下一代鐵路列控系統中,車-地通信數據較之前更為豐富多樣,數據傳輸的安全性和可靠性要求更高,延時要求更低,5G-R(5G for Railways)將替代現有的GSM-R作為車-地通信系統。為驗證車-地無線通信接口間傳輸信息的正確性和一致性,確保無線通信的安全可靠,本文針對車-地無線通信系統協議內容和測試方法展開研究,提出一種車-地無線通信協議測試方法,并采用該方法對車-地無線通信系統協議進行測試。
高速鐵路通信系統根據高速鐵路運輸和信息化的需求設置,在物理層、鏈路層、網絡層提供綜合業務的接入、交換和傳輸服務。高速鐵路的通信系統是鐵路通信網的一部分,與既有鐵路通信網互聯互通。
GSM-R是在GSM公眾移動通信系統平臺上增加鐵路運輸專用調度通信功能,專門為鐵路通信設計的綜合專用數字移動通信系統。
目前高速鐵路車-地通信系統就是基于GSM-R的列車運行控制系統,通過GSM-R無線通信實現車-地之間的連續、雙向信息傳輸,實現基于無線通信的列車運行控制。
歐標Subset-037協議約束車-地無線通信系統,將車-地無線通信系統劃分為安全相關的安全功能模塊(Safe Functional Module,SFM)和非安全相關的通信功能模塊(Communication Functional Module,CFM)兩部分。車-地無線安全通信協議分層結構如圖1所示。

圖1 車-地無線安全通信協議分層結構Fig.1 Hierarchical structure of secure track-train radio communication protocol
SFM協議棧提供安全服務,確保進/出安全功能模塊的數據流傳輸完整性和數據真實性,報告安全層中發生的錯誤并從下層傳輸錯誤指示。在SFM協議棧中,安全實體與對等安全服務實體通過一個或多個安全服務原語(SaSAP)與其用戶進行通信。對等安全實體支持通過安全協議數據單元(SaPDU)進行安全連接交換。這些協議交換使用傳輸層的服務(TS),通過一個傳輸服務接入點(TSAP)進行連接,即安全實體扮演用戶的角色,SaPDU的交換為邏輯視圖。正常服務原語傳輸正常數據,HP原語傳輸HP數據。SFM協議棧主要實現車-地建立安全連接期間的安全數據傳輸,保證車-地交互數據的完整性和真實性。
CFM協議棧提供通信服務,目前主要基于GSM-R網絡的電路交換或基于GSM-R分組無線服務來承載通信業務。
CFM協議棧的核心功能層包含傳輸層、網絡層、數據鏈路層及物理適配層。傳輸層承載CFM數據傳輸,將應用數據拆包/組包,通過優先級功能、尋址功能、數據的分割重組功能,以及基于同一個網絡連接的多路復用功能等,實現傳輸連接的建立。網絡層主要是對來自上層的數據進行分割,并對來自下層的數據進行重組。網絡層支持上層在同一網絡層上的多路復用,從而實現D信道和B信道的協調以及對傳輸層信息包TPDU的拆包組包處理。數據鏈路層遵循HDLC標準,可通過分幀發送實現包括對等雙方數據鏈路連接的建立、維護、釋放,具備數據傳輸、鏈路重置、鏈路連接重傳、查詢、CRC校驗等功能。CFM協議棧的物理適配層根據底層掛載設備不同,分為車載和地面兩種物理層控制模塊。在車載側,CFM通過ModemHandler與MT進行通信交互。在地面RBC側,CFM通過Capi接口與ISDN網卡進行通信交互。
在CFM協議棧中,如果一個CFM用戶實體(例如車載ATP安全層實體)想要建立一個與其他CFM用戶實體的連接,則應提供尋址被呼叫的CFM用戶(例如ETCS_ID類型和ETCS_ID)和應用類型的信息,地址信息將被映射為CFM建立連接所要求的格式和結構。主叫TS用戶實體從應用層獲得被叫傳輸地址(ETCS_ID類型和ETCS_ID)。地址信息由安全層傳至CFM。CFM協議棧地址信息映射如圖2所示。

圖2 CFM協議棧地址信息映射Fig.2 Mapping of address information of CFM protocol stack
為了實現對車-地無線通信SFM協議棧和CFM協議棧的測試,首先針對協議棧特征,假設對包含n個對等層的待測協議棧A進行測試。具體方法是利用待測協議棧A的拷貝或仿真建立與待測協議棧A通信的仿真協議棧B,利用仿真協議棧B與待測協議棧A進行對等層數據交互,測試相同對等層邏輯是否正確,從而實現完整測試。此外,未測試待測協議棧A各層對應用數據的處理邏輯,還需要考慮從待測協議棧A最高對等層的數據注入,協議棧測試原理如圖3所示。

圖3 協議棧測試原理Fig.3 Testing principles of protocol stack
上述為理想情況,而車-地無線通信SFM協議棧和CFM協議棧是依托于具體設備運行的,實際測試過程可能需要從設備提供的接口進行數據的注入。以車-地無線通信系統中的車載側為例,SFM協議棧依托于車載ATP主控板,CFM協議棧依托于RCC板,電臺MT通過無線接入GSM-R網絡與地面設備通信。主控板、RCC板通過機籠的SBP總線通信,RCC和電臺MT通過IGSM-R定義的接口通信。RCC根據IGSM-R接口協議與電臺通信。因此需要引入該接口對應的協議棧C以及協議棧C的仿真協議棧D來輔助數據注入。作為仿真協議棧B和D,支持拆解至用戶關注的對等層來與待測協議棧進行數據交互,該過程示意如圖4所示。

圖4 多協議棧測試原理Fig.4 Testing principle of multiple protocol stacks
根據以上分析,以測試過程中RCC板的CFM協議棧為待測協議棧A,主控板SFM協議棧為其相關協議棧C,則對待測協議棧A、相關協議棧C設計對應的仿真協議棧B和D,車載RCC板CFM協議棧測試原理如圖5所示。由于CFM協議棧有基于GSM-R網絡的電路域CS和基于GSM-R分組無線服務的分組域PS兩種工作模式,對應的物理層AT指令有所區別。另外,在PS模式下在傳輸層(TCP/IP)之上引入冗余適配層(ALE)進行與安全層功能及接口間的適配,實現安全層使用X.214規定的標準原語來訪問模擬的ISO傳輸服務,并負責TCP連接建立、通道監控及安全信息包與TCP流轉換等功能。

圖5 車載RCC板CFM協議棧測試原理Fig.5 Testing principles of CFM protocol stack of onboard RCC board
主控板側仿真最高對等層為傳輸層(TCP),該層輸入數據和反饋數據為Subset 037規定的T原語數據,主控板側仿真透傳該數據。電臺側仿真最高對等層為物理層,該層輸入數據和反饋數據為數據鏈路層數據,電臺側仿真根據AT指令控制與RCC建立連接,并進行數據交互。
為了模擬車載CFM協議棧主控板向待測RCC注入數據,接收校驗RCC反饋至主控板的數據,搭建的測試環境是將主控板側仿真作為服務端,待測設備作為客戶端。待測設備啟動后,與測試環境主控板側仿真建立連接,主控板側仿真根據腳本模擬主控板側與RCC進行數據交互。同樣,為了模擬雙電臺向待測RCC注入數據,接收校驗RCC反饋至電臺的數據,測試環境通過兩路RS-422串口與待測設備RCC接口板連接,可與待測RCC交互AT指令、電路域數據、分組域數據。車載CFM協議棧測試環境及其連接示意如圖6所示。

圖6 車載CFM協議棧測試環境連接示意Fig.6 Connections of test environment of CFM protocol stack of onboard equipment
對車-地無線通信協議棧功能進行驗證的測試屬于黑盒測試,測試過程包括測試用例的設計、測試腳本的設計、測試執行與結果驗證等步驟。測試簡要過程如圖7所示。

圖7 測試過程示意Fig.7 Test process
黑盒測試常用等價類劃分法、邊界值分析法、錯誤推測法、因果圖法等基本方法來設計測試用例。以車載CFM協議棧為例,測試用例設計內容包含主控板側仿真最高對等層傳輸層(TCP)和雙電臺側仿真AT指令數據內容。
測試腳本通常由“任務”和“狀態”組成。任務是一組有序狀態的集合,一個腳本可以包含多個任務。狀態是控制測試邏輯的基本單元,通過不同狀態之間的有條件跳轉控制與待測設備的信息交互流程。狀態由動作和遷移構成,其中動作表示當前狀態需要進行的操作,遷移表示跳轉至目標狀態所需的條件。
測試腳本將細化測試用例轉換為數據內容,包括數據的編號、本數據發送或被接收到的時間、數據所在協議棧層次、協議數據單元的類型、具體數據單元的子類型、數據傳輸方向和本消息對應的電臺名稱等,同時增加校驗標記,在該字段取值為check時,即該行數據的下一信息幀在收到該行數據后才會發送。另外測試腳本應能實現時間調整,表示當前行數據發送后處理下一行數據的延時。
主控板側腳本框架主要關注案例中協議數據單元類型字段為“Safety”的數據行,根據此數據生成腳本的任務組、任務、狀態、動作、遷移元素以及相關屬性取值。電臺側腳本框架主要關注案例中協議數據單元類型字段為“DL”的數據行,根據此數據生成腳本的任務組、任務、狀態、動作、遷移元素以及相關屬性取值。
當主控板側和電臺側腳本編制完成后,依賴協議棧仿真執行測試腳本,根據生成的測試日志及記錄判定測試結果。
以查詢允許網絡功能為實例:CFM協議棧在處理允許網絡查詢結果時,查詢到2個允許網絡,僅上報本次查詢到的2個允許網絡。
ATP主控板側模擬發送查詢網絡請求,驗證車載RCC板CFM協議棧發送查詢允許網絡“AT+COPS=?”的指令。主控板側腳本編制實例如圖8所示。

圖8 主控板側腳本Fig.8 Script at the main control board side
MT模擬回復AT指令“+COPS”,驗證車載RCC板上報2個允許網絡RAILWAY-CMCC-46020;RAILWAY UNICOM-UNICOM2-46001。MT側腳本編制實例如圖9所示。

圖9 電臺側腳本Fig.9 Script at the radio side
測試執行后,查看測試日志和報告,結果如圖10所示。CFM協議棧在處理允許網絡查詢結果時查詢到2個允許網絡,僅上報本次查詢到的2個允許網絡46020和46001,與預期一致,測試通過。

圖10 測試結果輸出Fig.10 Output of test results
由此可見,通過上述方案進行測試環境構建、測試案例及腳本編制以及測試執行,可以實現對SFM協議棧和CFM協議棧各層級之間數據注入。同時可以實現對電路域或分組域兩種工作模式的測試,最終實現對車-地無線通信協議的驗證。
本文闡述了車-地無線通信系統協議的內容,對車載CFM協議棧測試原理及簡要的測試過程進行論證,已應用于歐洲5國的ETCS-400T車載CFM協議棧的測試實踐中,對后續車-地無線通信系統協議測試具有指導意義。該測試方法和過程也同樣適用于地面RBC側CFM協議棧,即針對ISDN服務器的車-地通信交互。對未來的5G-R車-地通信系統,本文未進行討論,這部分內容將作為日后進一步的研究方向,并在實際應用中不斷積累和完善。