曹 源,尤 剛,羅軼溧,李 軍,周 建
(1.北京交通大學 軌道交通運行控制系統國家工程研究中心,北京 100044;2. 四川網達科技有限公司,成都 610041;3. 北京交通大學 電子信息工程學院,北京 100044;4. 中國鐵路成都局集團有限公司 電務處, 成都 610041)
我國鐵路信號監測系統主要由信號集中監測系統、列控監測檢測子系統和GSM-R通信監測系統3部分組成。信號集中監測(CSM)系統為信號監測的主要系統,具有三級四層的體系結構,其主要功能包括監測現場設備工作狀態、信息儲存、報警等。系統通過CAN總線與信號機、采集轉撤機、軌道電路等多個信號設備的電氣參數模擬量信息、部分開關量信息進行實時聯系,且為其信息獲取、連接通信接口方法及維修機提供便利。雖然,我國的鐵路信號系統技術裝備已經達到世界先進水平,但依然存在的主要問題有以下3個方面[1]:互聯性較低;數據共享不足;智能化程度較低。
隨著智能手機、移動互聯網的飛速發展,移動應用憑借其高互聯性、數據實時共享等優點,應用范圍越來越廣,對于移動應用的開發與研究也取得了許多成果[2-4]。移動應用的發展,以及云數據共享技術的革新,為解決傳統鐵路信號監測系統存在的問題提供了可能。
建立新型鐵道信號智能監測系統可以從共享數據選擇、存儲與共享機制、多數據庫系統、數據監測規范化等關鍵技術入手,提高鐵路信號監測檢測、綜合智能分析和輔助決策能力[5]。結合移動應用平臺、云服務等技術而設計的鐵道信號智能監測系統,能夠有效地解決傳統信號監測系統數據共享不足等問題,實現數據的互聯互通。
基于移動的監測系統架構如圖1所示,包括基礎數據層,移動數據源層,云能力層和移動應用層。

圖1 系統架構圖
1.1.1 基礎數據層
基礎數據層是既有CSM系統的綜合,主要包括基礎報警信息、用戶信息、部門信息、基礎信息、工具信息、設備信息、設備模擬量、站場信息等,是系統信息的來源。
1.1.2 移動數據源層
移動數據源層與基礎數據層之間通過自由協議進行數據源同步,利用包括自定義協議、標準RPC協議、HTTP1.0、HTTP2.0,Mysql協議等其他任意自由協議進行應答式、傳輸式等多種可擴展的方式實現雙方的對接,整合基礎數據層中豐富的大數據,形成數據底盤,向上對移動平臺提供數據支撐。
1.1.3 云能力
云服務主要進行專業化管理,將任務和軟件功能封裝為通過網絡可訪問的服務模塊,實現軟件功能的柔性化管理[6]。云能力負責提供輸出平臺化服務能力、支撐頂層業務架構的功能。為了縮短開發周期,提升開發效率與保證質量,可以對公有云服務進行篩選評估后接入,主要包括推送云、存儲云、通信云、云CDN等多種云基礎設施,通盤整合其能力,結合現有平臺,為移動應用層提供基礎技術設施能力支撐。后續在數據能力、基礎技術設施等條件成熟后,可以對相應組件進行替換,結合實際業務場景,客戶需求,進行對應業務開發。
1.1.4 移動應用
移動應用本質上是基于移動的平臺,具有報警管理、站場管理、人員管理、即時通信等功能。移動端的數據架構采取多種模式進行數據協同,并在此基礎上與BS端共享數據源,包括用戶信息、部門信息、pdf等,在此數據源中還包含了許多其他移動端專屬信息,例如報警信息表、故障信息表、操作日志表、cid映射表、用戶角色映射表、用戶表、角色表和部門信息表。
移動端的網絡結構有兩部分構成:(1)由普通的公網互聯網數據中心(IDC)對外提供服務;(2)為了和C端保持通信以及維持安全性,采取被動連接的方式進行通信,C端服務主動與移動端服務建立socket連接,并采用由C端定義的協議方式進行數據交換。在移動端的視角,網絡結構圖如圖2所示。
其中,移動檢測平臺運行在公網IDC機房,通過普通的web服務對移動端設備提供服務,前置部署硬件防火墻設備,以及具備安全閘功能的路由設備。對外提供服務時,通過SSL非對稱加密技術對通信數據進行保護。
對C端服務器,不具備直連能力,具備動態接受能力,與C端服務設備或通過公網、聯通移動專線進行交互,其中,具備防火墻以及具備安全閘功能的路由設備,其tcp通信采用對等的雙向加密技術,私鑰保存在雙邊服務器中。

圖2 網絡結構圖
系統邊界劃分關系如圖3所示,明確各系統的運行職責。其中,C端服務提供現階段的大部分基礎業務能力支撐,包括設備模擬量收集,報警收集,報警管理,站場管理等。B端服務器與移動端服務協作開發,管理類功能在B端服務上線,移動端專屬功能在移動端服務部分進行實現,包括用戶登入、報警查閱、報警推送、故障智能診斷。

圖3 系統邊界劃分關系圖
其中,報警部分數據暫定由移動端接受推送,為保證C端服務正常運行。只保留最新推送數據,暫不與C段服務進行同步。
目前,移動云服務的安全性需要考慮物理安全、網絡安全、主機安全、數據安全、應用安全、運行安全、通信安全和終端安全等問題[7]。監測系統的安全架構主要從物理安全、網絡與數據安全、運維安全和通信安全4個方面考慮。
為了全面保障機房網絡的安全可靠性,一般來說機房需要7×24 h閉路監控系統,電子巡更以及專人值守系統、IC卡與指紋門禁管理。需要按照最高標準Tier 4[8]進行實施,鋼制框架結構,抗震設防烈度為8度。所有核心設施實現了2N結構,保證機房的防震、防風和防雨。防護方面,機房需要多防火、防水、防潮、防靜電等基本防護功能。電壓需要配置并提供穩壓器和過電壓防護設備,提供短期的備用電力供應(UPS設備),設置并行電力線路為計算機系統供電(2路供電),同時建立備用供電系統(發電機)。通信線路需要電源線和通信線纜隔離鋪設,避免互相干擾,對數據中心的核心網絡(泄露)和磁介質(損壞)實施電磁屏蔽。
加強互聯網環境下云服務的安全性,主要的方法有加強對云終端的控制,加強移動網絡接入和傳輸的安全性,加強移動云服務系統之間的訪問控制等[9]。
系統硬件網絡層需要通過邊界控制、入侵訪問等實時系統的聯動,實現網絡全方位安全。交換機、路由器、防火墻、服務器需要保證充分的冗余,至少保證10 M的核心帶寬,100 M的動態帶寬。最前置ws服務商需要做到限制網絡最大流量數及網絡連接數,可收集防火墻外的各類信息,用于改進阻止決策,優化阻止規則。
網絡安全審計需要對網絡設備運行狀況、網絡流量、用戶行為等進行日志記錄。通過互聯網團隊的實時入侵檢測系統,能夠根據記錄數據進行分析,并生成審計報表。審計記錄保護,避免刪除、修改或覆蓋等。
其他網絡安全防護可以采用第三方云盾,利用DNS技術隱藏實際服務地址,通過外部流量清洗系統可以減少帶寬成本付出,通過智能的請求過濾,可以有效避免公網大部分攻擊方式。
為保證數據完整性,系統管理數據、鑒別信息和重要業務數據在傳輸和存儲過程中都要進行完整性檢驗及必要的恢復措
施。為保證數據保密性,系統管理數據、鑒別信息和重要業務數據在傳輸和存儲過程中都要采取加密或其他措施。備份和恢復,完全數據備份每天一次,備份介質場外存放。
系統運維安全需要從內部人員運維安全、第三方人員運維安全、外部政策和法規要求考慮[10]。系統環境需要對機房物理訪問、物品出入、機房供配電系統、空調
設備、溫濕度控制的維護記錄等進行管理。
系統設備需要明確設備的選型、采購、
領用、發放維護人員責任、涉外維修和服務的審批、維修過程的監控等。并對通信線路、主機、網絡設備和應用軟件的運行狀況、網絡流量、用戶行為等進行監控記錄。
對于系統的變更、備份與恢復、安全事件的處理和應急預案管理,都需要遵循相關制度,并做好相應事件的記錄和報告。
針對公網服務,無論如何均有鏈路出口,為避免移動端安全服務架構破解導致C端服務暴露的根本問題,移動端服務必須永不主動向C端服務(內網)發起請求,C端服務所在的IDC防火墻無需敞開公網入口,移動端服務在安全加密的保證下,僅接受C端白名單出口IP的tcp鏈接請求,并在鏈路上采用對稱加密與數字簽名技術,保證數據在鏈路傳輸的安全性。
系統平臺的核心模塊主要有網絡處理、報警同步、智能故障診斷、系統記錄和登錄管理5個模塊,如圖4所示。

圖4 平臺核心模塊圖
網絡處理層采用apache mina網絡框架。mina底層基于Java NIO, 它基于TCP/IP和UDP/IP協議提供了抽象的、事件驅動的、異步的API。
網絡處理模塊包含兩部分:二進制解碼模塊和消息實體處理模塊。消息實體是二進制消息對應的可讀形式內容對象。
二進制解碼模塊的核心包括消息分辨器和對應消息的解碼器。分辨器用來識別消息類型,然后交給具體的解碼器來解析二進制內容。二進制解碼模塊的輸出結果是消息實體,即可讀的消息對象。
消息實體處理模塊接受二進制模塊的輸出結果。根據消息對象類型從服務注冊中心選取處理該消息的處理服務,目前基本所有的實體消息處理服務主要用來持久化消息內容以及將相應的報警消息推送給目標客戶端。
報警同步的方式采用被動接收模式。報警接收系統在啟動時會開啟TCP連接監聽,等待報警推送服務器連接。其連接模式采用長連接模式,通過心跳保持連接有效性。當收到連接請求時,報警同步模塊的工作就是建立連接,在檢測到某臺設備發生報警的時候將報警消息推送給接收服務器。另外,如果因為某些原因連接斷開,報警同步模塊需提供重連功能。
建立設備的故障數據庫,當系統出現故障時,通過神經網絡、隱馬爾可夫模型(HMM,Hidden Markov Model)等智能故障診斷方法實現故障的智能分析與實時追蹤。此外,系統也能通過故障預測方法對設備進行故障的預測與預警,實現對軌道電路、道岔轉轍機等設備的故障趨勢預警與故障診斷。
系統操作記錄完成了用戶在移動端所有相關操作的記錄工作。記錄動作穿插在幾乎所有的可操作動作中。并實時持久化到數據庫。用戶在查看操作日志時,系統會根據當前用戶的角色來篩選出當前用戶可查看的用戶范圍。根據業務規定,用戶只能查看自己下屬或者跟自己平級的操作日志。
移動端的用戶信息共享了C端的用戶信息。所以一份用戶信息可以在C端和移動端同樣生效。登錄管理包含移動端的登錄登出功能,更換密碼功能,以及忘記密碼重置功能。在用戶登錄成功后需要完成cid跟用戶的綁定,以實現消息推送。
系統的移動客戶端用WEEX-EROS進行開發,其運行流程圖如圖5所示。

圖5 運行流程圖
在local eros-cli下通過eros init生成客戶端的開發模板,并通過eros dev啟動服務進行實時開發效果查看和debug調試,通過eros install更新開發平臺所需的eros依賴,通過eros pack對相應平臺內置信息打包,通過eros build生成全量包、增量包,并內置與更新服務器交互邏輯,形成對應ios和Android的平臺。
當業務需要獲取數據時,整個通信流程是業務發起請求調用,使用this.$fetch接口,此接口會調用框架底層widget/axios基本封裝,對發送數據進行簡單的封裝,通過bmAxios接口調用客戶端底層方法BMAxiosNetworkModule發出HTTP請求。后端返回數據之后,客戶端接收到數據,將數據返回到框架底層,框架底層會將返回數據進行統一數據處理,最終返回到業務方。
業務方發起請求之后,框架底層會對發送數據進行統一包裝,包裝內容將所有數據進行JSON.stringify 轉成字符串,將字符串通過加密生成密鑰,并將密鑰帶給客戶端,客戶端使用同樣的方式進行解密,對完整性進行校驗。
發起請求時,業務還會攜帶用戶信息,客戶端會對用戶信息進行校驗,客戶端會對用戶真實性進行校驗。
在使用移動客戶端時,需要進行用戶的賬號登錄。輸入已授權的賬號才可登入移動客戶端系統的主界面。
在移動端的系統主界面下可以進行報警查看、預警信息查看、人員追蹤、圖紙查看、站場查看、歷史曲線查看、通信狀態查詢以及系統狀態查詢。
智能監測系統會實時記錄各項數據,對不同站場的數據進行區別并統計,對一級報警、二級報警、三級報警等信息分別進行記錄,并將相應的數據繪制成對應的圖表。系統自動將各項數據上傳,將數據保存在云服務器中。通過移動客戶端就可對各項信息進行查詢。
該系統已在成都鐵路局投入使用。圖6為基于移動的監測系統移動客戶端的主界面。圖7為2017年11月7日—11月14日站場區間一級報警的統計列表。圖8、圖9為各級報警的統計次數,以及報警級別占比的比例圖。

圖6 移動客戶端主界面

圖7 站場報警次數統計

圖8 各級報警統計次數

圖9 報警級別占比圖
基于移動應用的鐵道信號智能監測系統結合了云存儲、大數據、4G無線通信等技術,具備實時報警、監測數據查看等功能,通過無線通信將報警記錄與監測數據實時保存到云端,并且生成圖表信息,各級報警記錄、預警記錄和歷史數據。各項信息可通過客戶端與移動端隨時查看,實現了對歷史數據的充分挖掘。此外,系統能夠結合具體的業務場景,對各設備進行智能故障預測與診斷。該系統已在成都鐵路局實際應用,顯著提升了各個監測系統之間的數據互聯互通性,信號數據得到有效利用,實現了對信號系統各類設備的運行方案優化功能。