国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于腳本語言的互聯互通通信數據解析插件

2020-03-04 06:56:58譚力天李澎東彭博文
鐵路通信信號工程技術 2020年2期
關鍵詞:腳本語言通信協議插件

陳 昕,譚力天,李澎東,彭博文

(湖南中車時代通信信號有限公司,長沙 410199)

基于通信的列車自動控制系統(tǒng)(Communication Based Train Control,CBTC)作為廣泛應用于城市軌道交通的信號控制系統(tǒng),通過車地雙向通信確保列車能以較高的速度和較小的間隔安全可靠地運行。目前廣泛應用的CBTC 系統(tǒng)通常包括列車自動防護子系統(tǒng)(Automatic Train Protection,ATP)、列車自動運行子系統(tǒng)(Automatic Train Operation,ATO)、 列 車 自 動 監(jiān) 控 子 系 統(tǒng)(Automatic Train Supervision,ATS)、計算機聯鎖子系統(tǒng)(Computer Interlocking,CI)和區(qū)域控制器(Zone Controller,ZC)5 個子系統(tǒng)。

城市軌道交通互聯互通CBTC 系統(tǒng)互聯互通是指裝備不同信號廠家車載設備的列車可以在裝備不同信號廠家軌旁設備的一條或多條軌道交通線路上無縫互通安全可靠運營。以實現軌道交通網絡化運營,實現軌道交通線網建設和運營的資源共享。

1 互聯互通通信協議

互聯互通通信協議是用于同一數據格式和校驗方法的集合,互聯互通通信協議約定了ATS、聯鎖、ZC、車載設備間的安全通信協議和互聯互通通用協議。

互聯互通通信協議可粗略的分為3 大部分。

1.1 車—地安全通信協議

車載設備與地面設備(ATS、聯鎖、ZC)之間通信采用RSSP-II 安全通信協議。安全通信協議的具體要求參見《RSSP-II 鐵路信號安全通信協議》(運基信號[2010]267 號)文件。車―地通信的傳輸層采用TCP 協議,MAC 及PHY 層取決于不同的網絡種類,無線網使用無線標準協議,地面網使用以太網協議(IEEE802.3)。

RSSP-II 包括SAI、MASL、ALE3 層,城市軌道交通互聯互通通信采用RSSP-II 的EC 模式,因此在車―地設備握手建立連接時,可以在網絡上偵測到AU1/AU2/AU3 認證幀、AR 鑒權響應幀和EC機制啟動幀,在車地通信斷開時,可以在網絡上偵測到DI 斷開幀。

1.2 地—地安全通信協議

地面設備(ATS、聯鎖、ZC)之間通信采用RSSP-I 安全通信協議。安全通信協議的相關細節(jié)參見《RSSP-I 鐵路信號安全通信協議》(運基信號[2010]267 號)文件。傳輸層采用UDP 協議,使用以太網協議(IEEE 802.3)。

RSSP-I 安全通信協議是一種對等式協議,通信雙方沒有明確約定發(fā)起方和應答方。通信雙方通過交互對時請求幀和對時應答幀進行安全鏈接的建立。

1.3 互聯互通應用協議

1.3.1 通用包

互聯互通車地連續(xù)通信規(guī)范的通用包頭中約定車地雙方通信的接口信息、類型、發(fā)送方標識信息、接收方標識信息、數據版本校驗信息、本方消息序列號、通信周期、對方消息序列號、收到上一條消息時本方序列號、協議版本號和應用層數據長度,用于對車地雙方通信信息做進一步的校驗。

1.3.2 車載設備與ATS間通信

車載設備和ATS 間互聯互通協議包括ATS 心跳信息幀、ATO 命令信息幀、ATO 狀態(tài)信息幀、列車信息幀、車載設備報警信息幀、車載設備日檢狀態(tài)信息幀等。

ATS 向車載設備傳遞車組號、車次號、跳停、扣車、折返等信息。車載設備周期性向ATS 報告駕駛模式、運行控制級別、列車完整性、列車精確位置、車門狀態(tài)、授權等信息。

1.3.3 車載設備與ZC間通信

車載設備和ZC 間互聯互通協議包括列車控制幀、應用層注冊/注銷響應幀、ZC 主動注銷請求、特殊控制報文、列車位置信息、應用層注冊/注銷請求幀等。

車載設備與ZC 注冊成功后,周期性向ZC 發(fā)送位置信息幀,報告駕駛模式、運行控制級別、列車完整性、列車位置、運行速度等信息;ZC 周期性的向車載設備發(fā)送包括移動授權位置、障礙物信息、臨時限速等信息的列車控制幀。

1.3.4 車載設備與聯鎖間通信

車載設備和聯鎖間互聯互通協議包括控制信息、狀態(tài)信息、心跳幀、城市自定義幀、廠商自定義幀、注銷請求幀和注銷回復幀等。

列車進站前,車載設備向聯鎖注冊成功后,周期性向聯鎖發(fā)送控制信息,用于控制屏蔽門聯動,聯鎖則周期性向車載回復狀態(tài)信息,列車離站時,車載設備向聯鎖發(fā)送注銷請求幀。

1.4 互聯互通調試過程中的難點

在不同廠家的信號設備進行互聯互通調試的過程中,由于車―地安全通信協議、地―地安全通信協議、互聯互通應用協議都具有其獨有的、較為嚴密的校驗規(guī)則并且各個廠家對于線路數據、通信內容理解上的細微偏差,且各廠家對同一功能的不同實現方式,導致互聯互通調試初期會出現各種不同的問題。

對于這些問題,最直接的處理方式就是通過抓取網絡傳輸數據包,直接對原始數據進行分析。

2 基于腳本語言的協議分析

軌道交通行業(yè)廣泛使用Wireshark 軟件作為網絡傳輸數據的抓取和分析軟件。

2.1 Wireshark簡介

Wireshark 是一個網絡封包分析軟件。Wireshark 直接從網卡端口抓取網絡封包,并盡可能顯示出最為詳細的網絡封包資料。Wireshark 本身擁有強大的過濾器引擎,支持抓取UDP、TCP、IP、FTP、ICMP、HTTP 等協議數據包。

用戶可以使用過濾器篩選出有用的數據包,排除無關信息的干擾,如單獨查看某個端口的UDP數據包或者TCP 數據包等。

但對于在UDP、TCP 上進行了一次或多次協議封裝的互聯互通通信數據,想直接通過Wireshark 進行過濾、分析就比較困難,分析人員需要對互聯互通設備的IP 地址和端口、傳輸數據包的關鍵字節(jié)、數據包交互邏輯等有較深入的了解,且分析傳輸內容時需要其他解析工具軟件的配合。

2.2 Lua腳本語言

Lua 是一種輕量小巧的腳本語言,使用標準C語言編寫并以源代碼形式開放,其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定制功能。

Wireshark 軟件支持Lua 腳本語言開發(fā)解析插件,用于自有協議解析。

2.3 自有協議解析的實現

互聯互通數據解析插件由rssp1.lua、rssp2.lua、hlht.lua3 個文件組成。分別完成車-地安全通信協議、地―地安全通信協議、互聯互通應用協議的解析。

每個lua 文件作為一個解析器插件,每個解析器插件都需要包含以下內容。

2.3.1 調用的前置條件

對接收的數據做一個比較寬泛的限定,例如對車地通信數據解析時,則設置當”“tcp.port”中包含配置的地面設備端口時,則進入該解析器進行處理,rssp2.lua 的解析器前置條件腳本如圖1 所示。

圖1 解析器前置條件Fig.1 Precondition of resolver

2.3.2 解析器主函數

用于解析符合前置解析條件的數據,解析器主函數的接口包含了報文緩存、上一級協議信息和待描述的報文解析樹。

報文緩存,即實際的報文數據,是一串十六進制的數據;上一級協議信息包括報文長度、報文捕獲時間、報文編號、報文的源地址、目的地址、報文列表列等信息;報文解析樹則是通過樹狀形式顯示解析數據項,如圖2 所示。

圖2 中將符合RSSP-I 規(guī)則的某條數據包中的源設備、目標設備、源網絡地址、目標網絡地址、協議幀類型、協議攜帶的應用數據長度、聯鎖設備類型等信息通過樹狀圖顯示了出來。

圖2 Wireshark中樹狀信息顯示Fig.2 Display for tree information in Wireshark

2.3.3 報文UI信息

此外,還通過Lua 的文件讀取接口載入了通信配置文件、通信協議解析格式文件,不同的線路或不同應用場景可以將配置文件更換后使用。

通信配置文件中包含ATS、區(qū)域控制器、聯鎖、車載設備、屏蔽門控制器等設別的IP 地址和端口配置,以及各個設備的互聯互通ID 和RSSP-II 的ETCS-ID 的映射表,可以通過Wireshark 的UI 部分更直觀顯示設備名稱和紅藍網標識。如圖3 所示。

圖3 Wireshark中車載信息顯示Fig.3 Display for onboard information in Wireshark

圖3 中[AU1] 為RSSP-II 安 全 通 信 協 議 的首次認證幀,T1 表示為1 號車,互聯互通ID 為Oxe2000001,Net-1 表示接收的為紅網數據。

3 實際應用情況

基于Wireshark 腳本語言插件的城市軌道交通互聯互通通信分析插件作為一個通用輔助工具,已用于城市軌道交通互聯互通實驗室調試和互聯線路調試中,現場反映使用方便直觀,為城市軌道交通互聯互通系統(tǒng)互聯互通調試中狀態(tài)偵測、故障排查提供了較為直觀、便捷的方法。

相比原有抓包再通過解析軟件進行解包分析的方式,基于Wireshark 下腳本語言插件的解析方式具有以下優(yōu)點。

1) 在Wireshark 實時抓包時,通過腳本語言插件的解析方式可以實時看到數據的粗略情況,如源設備、目標設備、協議幀類型等。

2) 原有的分析方式,需要逐條拷貝數據到解析軟件中逐條解析,對于需要持續(xù)關注的連續(xù)數據包,手工作業(yè)量較大。

3) 傳統(tǒng)的報文解析工具由于使用了某些特定的鏈接庫文件,在不同的計算機上經常會有無法啟動的情況,而基于Wireshark 下腳本語言插件的解析方式由于Wireshark 本身對于不同操作系統(tǒng)支持較好,所以避免了很多因軟件部署環(huán)境導致的問題。

4 結語

本文通過利用Wireshark 網絡封包分析軟件易于二次開發(fā)的特性,在其基礎上采用Lua 腳本語言進行二次開發(fā),將特定的自有通信協議如:互聯互通車―地安全通信協議、地―地安全通信協議、互聯互通應用協議等分別進行解析,從而能夠通過Wireshark 軟件直觀地顯示城市軌道交通互聯互通傳輸數據的內容。

在長沙市軌道交通4、5 號線信號系統(tǒng)互聯互通調試中,本文構建的協議數據分析插件為調試、故障排查、測試帶來極大的便利,大大提高了調試效率。隨著城市軌道交通行業(yè)發(fā)展,本文構建的協議數據分析插件及其實現方式在不同廠家信號設備間互聯調試方面具有廣闊的應用前景。

猜你喜歡
腳本語言通信協議插件
自編插件完善App Inventor與樂高機器人通信
電子制作(2019年22期)2020-01-14 03:16:34
基于Z-Stack通信協議棧的紅外地溫采集電路設計
一種面向SSC的電信增值業(yè)務的生成方法及實現
基于Unity3D的坦克大戰(zhàn)游戲設計與實現
基于DMX512通信協議的多路轉發(fā)器設計與研究
基于NS-3的PLC多頻通信協議仿真平臺設計與實現
電測與儀表(2016年2期)2016-04-12 00:24:52
MapWindowGIS插件機制及應用
淺析計算機技術在flash動畫中的應用
基于Revit MEP的插件制作探討
基于SiPESC平臺的Python擴展模塊開發(fā)
龙山县| 曲阳县| 怀安县| 甘肃省| 辰溪县| 祁门县| 墨玉县| 定南县| 广灵县| 五指山市| 长子县| 永城市| 元朗区| 新昌县| 神农架林区| 万荣县| 苍南县| 新巴尔虎左旗| 郓城县| 西华县| 义马市| 陆河县| 青海省| 阜康市| 简阳市| 高唐县| 鄱阳县| 陵水| 平乐县| 丹东市| 玉林市| 元江| 九江市| 滦平县| 民权县| 米泉市| 赤峰市| 郓城县| 凤阳县| 鞍山市| 平泉县|