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

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

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

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

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

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

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

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

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