李 杰,祝頌東
(1.海軍裝備部駐南京地區(qū)第四軍事代表室,南京 210014;2.陸軍裝備部駐南京地區(qū)軍事代表局駐南京地區(qū)第一軍事代表室,南京 210014)
衛(wèi)星地球站監(jiān)控系統(tǒng)作為衛(wèi)星通信網(wǎng)綜合管理系統(tǒng)的監(jiān)控子系統(tǒng),對地球站(包含車載、艦載、機載等類型)內(nèi)所有天線設(shè)備、饋電設(shè)備、通信設(shè)備、輔助設(shè)備等進行實時的集中監(jiān)控(即南向接口管理),另外還需提供對外的北向接口服務(wù)等。其中,北向服務(wù)是指為上層管理系統(tǒng)提供接入和管理衛(wèi)星通信子網(wǎng)的接口,該接口起到上層管理系統(tǒng)和通信子系統(tǒng)之間的承上啟下作用。衛(wèi)星地球站監(jiān)控系統(tǒng)作為數(shù)據(jù)生產(chǎn)者,而上層管理系統(tǒng)是數(shù)據(jù)消費者,生產(chǎn)和消費關(guān)系錯綜復(fù)雜,需要實時、可靠、標(biāo)準(zhǔn)傳輸?shù)纫?,而?shù)據(jù)分發(fā)服務(wù)(DDS)可以滿足以上要求。提供低延遲、高吞吐量實時性能控制。它定義了實時分布式系統(tǒng)中數(shù)據(jù)發(fā)布、傳遞和接收的接口和行為,定義了以數(shù)據(jù)為中心的發(fā)布/訂閱機制。
本文依托Open DDS 的消息中間件實現(xiàn),Open DDS 是一種C++語言的開源實現(xiàn)。它遵循OMG 的DDS 標(biāo)準(zhǔn),位于網(wǎng)絡(luò)協(xié)議棧最上層,屏蔽了應(yīng)用程序?qū)?shù)據(jù)傳輸細節(jié),通過應(yīng)用程序接口(API)完成數(shù)據(jù)通信。DDS 負責(zé)處理所有的網(wǎng)絡(luò)輸入輸出,管理可靠和透明的數(shù)據(jù)傳輸,如消息尋址、數(shù)據(jù)組合和分散、流控制、重試等。使軟件開發(fā)者可以將精力集中在應(yīng)用程序設(shè)計上,而不是底層傳輸上。
實時數(shù)據(jù)傳遞主要包括點到點、消息隊列和發(fā)布/訂閱三種模式。點到點模式具有很強的時間和空間耦合性,使通信靈活性受到很大限制。消息隊列模式通過一個消息隊列來傳遞消息,解決了通信雙方時間和空間松耦合的問題,但不能實現(xiàn)消息到消費者通信的異步,并且還存在服務(wù)器瓶頸和單點失效的問題,可靠性得不到保障。發(fā)布/訂閱模型中發(fā)布者和訂閱者通過主題相關(guān)聯(lián),雙方不必知道對方在何處,也不必同時在線,實現(xiàn)了通信雙方時間、空間和數(shù)據(jù)通信的多維松耦合。
圖1 DDS數(shù)據(jù)分發(fā)圖
數(shù)據(jù)分發(fā)服務(wù)(DDS)標(biāo)準(zhǔn)是OMG(對象管理組織)有關(guān)分布式實時系統(tǒng)中數(shù)據(jù)發(fā)布的一個較新規(guī)范。DDS 標(biāo)準(zhǔn)規(guī)范采用了發(fā)布/訂閱體系結(jié)構(gòu),對實時性要求提供支持。DDS 是以數(shù)據(jù)為中心的發(fā)布/訂閱通信模型,針對強實時系統(tǒng)進行了優(yōu)化,
圖2 系統(tǒng)結(jié)構(gòu)圖
(1)數(shù)據(jù)適配服務(wù)。被管設(shè)備的通信接口豐富多樣,涵蓋以太網(wǎng)、RapidIO、串口、SNMP 等,數(shù)據(jù)適配主要自動適配不同接口種類,形成規(guī)則、統(tǒng)一、模型化的數(shù)據(jù)表格信息,并進行入庫操作。
(2)綜合監(jiān)視服務(wù)。綜合監(jiān)視服務(wù)是根據(jù)設(shè)定的規(guī)則,對適配數(shù)據(jù)進行監(jiān)測、管理、告警等數(shù)據(jù)監(jiān)測服務(wù),并對數(shù)據(jù)監(jiān)測后的結(jié)果進行入庫操作。
(3)安全管理服務(wù)。安全管理服務(wù)作為貫穿整個系統(tǒng)的功能模塊,它具有最高級別的管理和過濾功能。用戶的任何操作,都要進行權(quán)限管理、數(shù)據(jù)安全、操作日志等操作判定。
(4)綜合展示服務(wù)。綜合展示服務(wù)是通過Web 訪問的形式,對用戶提供的數(shù)據(jù)、狀態(tài)、告警、報表、日志等展示,該展示服務(wù)具有個性化定制、內(nèi)容豐富直觀等特點。
(5)北向接口服務(wù)。北向接口服務(wù)遵循OMG 的DDS 標(biāo)準(zhǔn),采用基于C++語言的Open DDS 接口,使用戶關(guān)心應(yīng)用層的數(shù)據(jù)傳輸服務(wù),通過發(fā)布/訂閱模式的接口(API)來完成數(shù)據(jù)通信。
數(shù)據(jù)適配層通過網(wǎng)絡(luò)TCP/IP、串口、SNMP 等通信接口協(xié)議對天線、變頻器、功放、合路器、信道五類通信設(shè)備(簡稱設(shè)備)進行數(shù)據(jù)歸一化處理,并入庫。當(dāng)某一設(shè)備的關(guān)鍵性參數(shù)小于預(yù)設(shè)閾值時,判斷發(fā)生某種故障,此時,系統(tǒng)自動記錄天線、變頻器、功放、合路器、信道等設(shè)備的關(guān)鍵參數(shù),并錄入關(guān)系數(shù)據(jù)庫。
本文中主要關(guān)系數(shù)據(jù)庫包括配置數(shù)據(jù)庫、信息數(shù)據(jù)庫、告警數(shù)據(jù)庫和業(yè)務(wù)數(shù)據(jù)庫等,分別設(shè)計為表1、表2、表3、表4。
表1 設(shè)備列表
表1為本站內(nèi)衛(wèi)星信道的設(shè)備總和,包括天線、變頻器、功放、合路器、信道五種類型,但是每個設(shè)備都有站內(nèi)唯一的編號,即設(shè)備ID。
表2 狀態(tài)參數(shù)表
表2為站內(nèi)每個設(shè)備的參數(shù)模型表,主要包括狀態(tài)參數(shù)ID、時間、參數(shù)名、參數(shù)值、量化值(特征參數(shù)按照特征參數(shù)量化表4來進行量化,其他一般狀態(tài)參數(shù)值正常設(shè)為1,異常設(shè)為0)、設(shè)備ID(外鍵對應(yīng)表1中的設(shè)備ID)。需要注意的是,表2中存放的是影響通信質(zhì)量的關(guān)鍵性狀態(tài)參數(shù),例如,天線的含接收電平、接收機狀態(tài)、通信狀態(tài)、伺服電機狀態(tài)、碼盤狀態(tài),功放溫度、增益狀態(tài),信道的通信信噪比、信道工作狀態(tài)、鏈路狀態(tài)等,狀態(tài)參數(shù)的編號和個數(shù)根據(jù)站型和廠家進行摘取。
表3 故障狀態(tài)表
表4為本站內(nèi)當(dāng)前衛(wèi)星信道通信網(wǎng)絡(luò)質(zhì)量及鏈路狀態(tài)等關(guān)鍵參數(shù)。當(dāng)某通信網(wǎng)絡(luò)開通后,主要用于展示、上報和人工干預(yù)某一條具體的衛(wèi)星通信信道鏈路。
表4 業(yè)務(wù)參數(shù)表
由于不同系統(tǒng)、平臺、版本之間數(shù)據(jù)庫存在差異,導(dǎo)致上層系統(tǒng)不能直接訪問綜合監(jiān)視系統(tǒng)的數(shù)據(jù)庫。為了使不同系統(tǒng)的耦合度降低,通信管理服務(wù)器與設(shè)備間采用標(biāo)準(zhǔn)DDS 進行數(shù)據(jù)通信,主要利用DDS 的強實時,松耦合等特性。為了更加突出表現(xiàn)松耦合特性,定義DDS 的idl 數(shù)據(jù)結(jié)構(gòu)如下:
DDS 按照該結(jié)構(gòu)傳遞數(shù)據(jù),通過Topic 定義綜合監(jiān)控子系統(tǒng)下的子功能分類,通過數(shù)據(jù)結(jié)構(gòu)中的cmd 定義功能分類的具體功能名稱,data 為國際通用文本標(biāo)記語言XML 明文格式。通過Topic 和cmd 進行判定,數(shù)據(jù)消費者即可知道data 中描述的數(shù)據(jù)是否是本設(shè)備或系統(tǒng)需要的數(shù)據(jù)。當(dāng)數(shù)據(jù)消費者需要時,由消費者理解數(shù)據(jù)的業(yè)務(wù)含義并按格式進行數(shù)據(jù)解析。
4.3.1 配置管理訂購模塊
表5 配置管理接口定義表
按照DDS 數(shù)據(jù)結(jié)構(gòu)定義,上層管理系統(tǒng)(即數(shù)據(jù)生產(chǎn)者)使用Topic 為NetMgrBaseConfig 進行數(shù)據(jù)發(fā)布和生產(chǎn),綜合監(jiān)視系統(tǒng)(即數(shù)據(jù)消費者)可以訂購該Topic 的數(shù)據(jù)進行訪問接口,通過比對所需的cmd,進行相應(yīng)的data 數(shù)據(jù)解析。相反,當(dāng)綜合監(jiān)視系統(tǒng)要響應(yīng)某一詢問時,可以使用Topic 為StatMoniConfig進行數(shù)據(jù)發(fā)布和生產(chǎn)。此時,上層管理系統(tǒng)就應(yīng)該作為數(shù)據(jù)消費者進行數(shù)據(jù)訂購。
配置管理訂購模塊可以使上層管理系統(tǒng)和綜合監(jiān)視系統(tǒng)之間進行基礎(chǔ)配置的信息交互。
4.3.2 數(shù)據(jù)管理訂購模塊
表6 數(shù)據(jù)管理接口定義表
數(shù)據(jù)管理訂購模塊可以使上層管理系統(tǒng)和綜合監(jiān)視系統(tǒng)之間進行設(shè)備參數(shù)、信息交互,上層用戶系統(tǒng)可以通過訂購綜合監(jiān)視系統(tǒng)發(fā)布的數(shù)據(jù)服務(wù),達到訪問下層數(shù)據(jù)的功能。
4.3.3 告警管理訂購模塊
表7 告警管理接口定義表
告警管理訂購模塊可以使上層管理系統(tǒng)和綜合監(jiān)視系統(tǒng)之間進行告警信息的交互,上層用戶系統(tǒng)可以通過訂購綜合監(jiān)視系統(tǒng)發(fā)布的告警服務(wù),達到訪問下層設(shè)備告警信息的功能。
4.3.4 通信管理訂購模塊
表8 通信管理接口定義表
通信管理訂購模塊可以使上層管理系統(tǒng)和綜合監(jiān)視系統(tǒng)之間進行通信網(wǎng)絡(luò)交互和鏈路操作。上層用戶系統(tǒng)可以通過訂購綜合監(jiān)視系統(tǒng)發(fā)布的通信服務(wù),達到訪問下層通信網(wǎng)絡(luò)狀態(tài),并操作相應(yīng)通信鏈路的功能。
基于數(shù)據(jù)分發(fā)服務(wù)DDS 的衛(wèi)星地球站監(jiān)控北向接口,采用以數(shù)據(jù)為中心的發(fā)布/訂閱通信模型,數(shù)據(jù)的生產(chǎn)者和消費者之間通過主題Topic 可進行數(shù)據(jù)共享和分發(fā),為上層管理系統(tǒng)提供接入和管理衛(wèi)星通信子網(wǎng)的接口。通過該接口,數(shù)據(jù)生產(chǎn)者和消費者之間能夠進行異步數(shù)據(jù)傳輸,實現(xiàn)了通信雙方時間、空間和數(shù)據(jù)通信的多維松耦合。