李楊 鄒明
摘要:設計了軌道交通專用無線通信體系中綜合網管的總體架構,分析了綜合網管設計的關鍵點和難點,描述了前置機軟件、服務器軟件、客戶端軟件及告警上報軟件的設計與實現,從軟件結構、拓撲編輯原理和告警信息定義等多方面論述了綜合網管的工作原理。通過此方案實現的綜合網管已在國內多個軌道交通項目中應用,證明了設計的可靠性及高擴展性。
關鍵詞:軌道交通;專用無線通信系統;綜合網管
中圖分類號:TP393文獻標志碼:A文章編號:1008-1739(2018)12-62-3
Design of Wireless Integrated Network Management for Rail Transit Communication
LI Yang1, ZOU Ming2
(1. Shijiazhuang Metro Co., Ltd., Shijiazhuang Hebei 050000, China; 2. Hebei Far-east Communication System Engineering Co., Ltd., Shijiazhuang Hebei 050200)
0引言
作為現代軌道交通最重要的通信手段,專用無線通信系統已經成為軌道交通建設項目中不可或缺的一部分[1]。專用無線系統需要高可靠性運行,負責監視系統內服務和設備狀態的無線綜合網管就顯得格外重要。隨著軌道交通的發展和技術的更新,專用無線通信系統采用的新技術和包含的新設備越來越多,這也對無線綜合網管的可靠性和擴展性提出了更高的要求。
1總體設計
無線綜合網管采用分層設計,利用分層技術能夠實現軟件開發和維護的高度靈活性以及功能模塊的復用度[2]。為方便網管分布部署,無線綜合網管采用C/S結構,由前置機、服務器、客戶端和告警上報軟件4部分組成。服務器軟件作為C/S結構中的服務器,前置機、客戶端和告警上報軟件為C/S結構中的客戶端。網管模塊組成如圖1所示。
前置機負責采集各監控設備的告警信息,將不同協議的告警數據轉換成內部統一格式并存入數據庫。服務器負責分析告警信息,根據告警定位和告警內容處理告警信息,并將告警結果發送給客戶端顯示。客戶端主要提供人機操作界面,通過監控拓撲視圖來顯示設備的運行狀態,告警上報軟件用于向集中告警系統上報告警信息。
2設計的關鍵點
無線綜合網管需要實現故障管理、配置管理和安全管理等功能。設計的關鍵點和難點包括監控設備接入、告警信息格式定義、監控拓撲視圖顯示和告警信息上報。
(1)監控設備接入
無線綜合網管需要接入的設備眾多,不同監控設備的接口協議和告警格式都不一致。解決該問題的方案是為每種監控設備定制一個接口模塊,由接口模塊實現通信設備和告警采集功能。
(2)告警信息格式定義
在本設計中,告警信息由告警定位和告警內容組合唯一確定。告警定位又由告警設備和告警單元組合確定,其中“產品系列+設備類型+設備ID”組合唯一確定告警設備;“模塊+板卡+端口”組合唯一確定告警單元。“告警狀態+告警類型+告警號”組合唯一確定告警內容。這些字段再加上“告警ID”、“告警時間”、“告警級別”和“告警文本”等字段即可組成完整的告警信息。
(3)監控拓撲視圖顯示
網管客戶端需要按一定的層次顯示項目中的設備信息。解決該問題是采用具有層次的拓撲圖層,圖層可以包含靜態圖片、連接線和站點、設備、告警單元等顯示網元。每個拓撲有一個根圖層,如果圖層中的顯示網元有關聯下一級圖層,那么通過該網元可以打開關聯圖層。如此,整個拓撲視圖也就建立起來。
(4)告警信息上報
在不同的軌道交通項目中,集中告警的接口協議和告警格式可能不一致。解決該問題的方案與監控設備接入類似,為每個集中告警系統定制一個接口模塊,由接口模塊實現接口通信和告警上報功能。
3設計實現
3.1前置機
前置機直接與監控設備通信,采集、轉換設備告警信息并保存到數據庫中,然后通知網管服務器,軟件結構如圖2所示。
針對各種各樣的監控設備,前置機軟件采用簡單工廠模式[3],設計一個抽象基類,各個接口模塊設計成繼承該基類的子類。基類僅包含接口標識、狀態信息等少量公共字段。子類具體實現接口通信處理和告警信息解析等功能。采用動態鏈接庫方式封裝各個接口模塊類,并輸出相同的調用方法接口。管理模塊作為一個工廠,根據數據庫訪問模塊返回的接口標識,動態加載對應的接口模塊動態鏈接庫,生成接口模塊實例。當出現新的監控系統或設備時,開發人員僅需要開發接口模塊動態鏈接庫,同時修改管理模塊中生產接口實例的方法即可,這樣就可以快速靈活地適應軌道交通領域各式各樣的新需求。
前置機軟件與服務器間采用面向連接TCP私有協議通信,前置機做客戶端,向服務器發送軟件運行狀態、接口通信狀態和告警處理結果等信息。數據庫訪問模塊既要實現設備信息靜態數據讀取功能,還需要實現告警信息存儲功能。
3.2服務器
服務器軟件是整個無線綜合網管的核心部分,是信息交互的樞紐,為網管其他部分提供數據支持,軟件結構如圖3所示。
當前置機、客戶端和告警上報軟件以TCP客戶端形式連接服務器成功后,服務器需要核對客戶端類型,然后根據類型生成對應的模塊實例。通信模塊和業務模板分離,服務器可以支持多個同類型客戶端同時訪問。
當告警上報軟件通知新告警信息已存儲到數據庫時,服務器訪問數據庫讀取新告警信息,然后依次根據重復告警、告警設備、告警單元和告警內容來確定告警信息是否被屏蔽。屏蔽的告警信息將直接保存到數據庫恢復信息表中,無需后續處理。非屏蔽的告警信息根據是故障信息還是恢復信息做后續處理,處理后的告警信息保存到數據庫中,并通知客戶端軟件和告警上報軟件。
此外,服務器需要保存整個拓撲中設備的告警狀態,并根據告警信息動態更新設備告警狀態。如果存在多個客戶端軟件,客戶端連接成功后服務器將下發設備告警狀態信息,保證所有客戶端狀態一致。
3.3客戶端
客戶端可以圖形化顯示整個監控拓撲的設備信息和告警信息,其關鍵是需要提供一個與設備無關的拓撲場景編輯工具,可以根據設備組網及配置情況利用各種形狀的網元進行拓撲編輯[4],拓撲編輯原理如圖4所示。
監控拓撲視圖是一個倒樹狀型結構,結構中每個節點元素是一個圖層。其中拓撲中只存在一個根節點圖層,父節點圖層可以有多個子節點圖層,但子節點圖層只能有一個父節點圖層,圖層下還可以再有子節點圖層,由此結構排列的圖層集合就構成了一個監控拓撲視圖。
圖層中可以放置靜態圖片、連接線、站點、設備及告警單元等顯示網元。雖然站點、設備和告警單元等顯示網元各不相同,但是在圖層中顯示方式大同小異,都具有位置、尺寸、形狀、名稱、告警顯示位置和關聯圖層等屬性。因此可以采用享元(Flyweight)模式,將對象的共同信息提取出來并作為一個新的Flyweight對象[5]。軟件對圖層中各顯示元素的串行化即可實現圖層的存儲。
此外,客戶端軟件還需要實現用戶管理、參數設置、告警信息查詢、列表顯示、統計和打印等常規功能。
3.4告警上報軟件
告警上報軟件直接與集中告警系統通信,上報告警信息,軟件結構如圖5所示。
告警上報軟件結構與前置機軟件基本一致,由管理模塊、TCP Client模塊、數據庫訪問模塊和集中告警接口模塊組成。集中告警接口模塊實例由管理模塊依據數據庫中接口標識動態生成。
各個廠家的集中告警通信協議各不相同,但大體分為具備“告警同步”功能和不具備“告警同步”功能兩大類。告警上報軟件需要從網管服務器或數據庫獲取當前故障告警信息和歷史告警信息,以適應這兩類接口協議。
4結束語
目前基于該設計方案的網管已經實現多個無線系統和終端設備的接入,以及向多個集中告警系統上報告警信息,并在國內多個軌道交通項目得到應用,獲得用戶廣泛好評。實踐證明本網管能夠穩定高效工作,滿足用戶需求,同時具有較強的可擴展性和可維護性,僅需開發接口模塊動態鏈接庫即可實現與新增的監控設備和集中告警系統通信的功能,對其他網管類、監控類系統具有較強的參考價值。
參考文獻
[1]黃鶴.淺析地鐵集群專用無線通信系統[J].科技創新與應用, 2015(29):39-40.
[2]李冶,高源.分層軟件架構設計及其應用研究[J].電腦知識與技術,2017,13(13):89-90.
[3]歐建斌.工廠設計的模式研究[J].微型電腦應用,2010,26(12): 15-17.
[4]李士東.軌道交通專用通信集中告警系統設計[J].無線電通信技術,2012,38(3):58-61.
[5]劉海巖,鎖志海,呂青,等.設計模式及其在軟件設計中的應用研究[J].西安交通大學學報,2005(10):1043-1047.