李欣宇
(中國西南電子技術研究所 通信部,四川 成都610036)
多數據鏈集成 (以下簡稱多鏈集成)是指多個數據鏈通過共享控制與指揮處理器,構建統一的聯合數據鏈網絡,為作戰體系提供統一的、完整的戰術信息[1],它能最大程度地實現信息資源共享、加速指揮自動化、提高快速反應能力和協同能力[2]。然而,隨著數據鏈技術的迅猛發展以及戰術需求的增加,需要接入的數據鏈的種類和數量也越來越多,傳統的多鏈集成系統在鏈間數據轉發和消息過濾器上的負擔也變得越來越大,同時存在系統擴展性不高、冗余度較大的問題。數據分發服務 (data distribution service,DDS)是由對象管理組織 (object management group,OMG)發布的一種以數據為中心的發布/訂閱標準,它可以滿足高擴展性和高效的系統應用需求[3]。本文根據DDS的特點,提出了一種將DDS應用到多鏈集成系統中的方案,仿真測試結果表明,該方案能很好地解決傳統多鏈集成系統中存在的問題。目前,國內還沒有將DDS技術應用于數據鏈系統的文獻報道,美國RTI公司為E-2預警機設計了將DDS應用于其傳感器網絡的軟件升級方案,但其技術細節并未公開。
隨著戰場信息化程度的不斷提高,數據鏈已經成為影響戰爭勝負的關鍵要素。數據鏈技術經過近50多年的迅猛發展,以美國為代表的很多西方國家已經開發出多種類型的數據鏈[4],同時很多面向未來應用的數據鏈也在研制的進程中。新型數據鏈的產生并不意味著舊數據鏈會被淘汰,因為各型數據鏈的功能和使用場合均不盡相同,每種數據鏈都被設計成僅僅滿足自己所承擔的任務需求,形成一種典型的 “煙囪式”的架構。
在未來以網絡為中心的聯合作戰中,作戰地域廣、參戰平臺多、交互信息量大,體系與體系的對抗是最重要的特征。諸多兵種聯合作戰條件下數據鏈的運用將呈現多信道、多網絡、多鏈路的特點。眾多數據鏈系統間的高效互聯是實現高速、實時、安全信息共享的首要條件,因此消除異構數據鏈間的 “信息壁壘”,通過對多數據鏈網絡進行妥善控制與管理,綜合調度和充分使用數據鏈資源,完成多種數據鏈的統一集成是提高作戰體系綜合效能的有效手段。
目前,多鏈集成水平最先進的是美軍,它使用或正在研制的系統包括指揮控制處理器 (C2P),多戰術數字信息鏈路處理器 (MTP)、通用鏈路綜合處理器 (common link integration processor,CLIP)等,其中CLIP是功能最強大,支持任務最多,最先進的多鏈集成平臺[5],因此CLIP應該是我國數據鏈領域研究和借鑒的重點。
CLIP的開發計劃是由美軍的 “數據鏈集成問題開發小組”于2004年提出并牽頭實施的,它能鏈接link-4A、link-11、Link16、Link22等傳統的數據鏈,也能接入通用寬帶數據鏈 (CDL)、綜合廣播系統 (IBS),還可以支持IP網絡技術,為各種不同的作戰平臺提供網關功能。CLIP可以用于各種軍用的平臺和設備,包括陸地戰術單元、飛機、艦船、岸基指揮所等,它提供的功能包括:終端設備的初始化、鏈路選擇、網絡控制管理、接口處理、平臺和狀態維護、數據管理、鏈間數據轉發等。對于單個平臺,CLIP接入的鏈路類型和提供的功能是可以裁減和配置的。在進行多鏈集成應用時,CLIP即能以公共軟件的方式嵌入到主機的應用框架中去,也可直接以獨立設備的方式安裝在目標平臺上。目前CLIP已經加裝在了美軍E-3預警機、E-8監視機和全球鷹無人機等平臺上[6]。典型的CLIP體系架構如圖1所示。

圖1 典型的CLIP集成方式
CLIP為實現多種數據鏈協同工作提供了強大的支持,并且已經通過了美軍實裝環境的檢驗,其設計思想理應為我國所借鑒。但是,通過在某仿真平臺上對CLIP進行仿真和評測,發現了以下問題:
(1)系統擴展性不高:由圖1可知,終端I/O模塊完成了各型數據鏈終端的接入,它將總線不同、協議不同、數據精度不同、速率不同的設備集成在了一起。每增加一種數據鏈,都意味這要在終端I/O模塊內添加相應的總線API、數據格式轉換的代碼,并且對鏈路處理層的各個模塊提供訪問接口,隨著接入數據鏈種類的增加,軟件的復雜度呈指數級的膨脹,從而導致整個系統擴展性的降低。
(2)鏈間消息轉換復雜、效率低:CLIP接入的數據鏈種類多,同時每種數據鏈均有眾多格式不同、類型不同、精度不同的消息,各型數據鏈消息均是面向BIT流的,因此用程序實現異構鏈間的格式轉換會非常復雜且效率不高。文獻[6]提出了一種基于可擴展標記語言 (eXtensible Markup Language,XML)進行鏈間消息處理的靈活方法,但是在程序實現時,用DOM (document object model)進行XML解析存在著資源耗費多、效率低的現象,用SAX(Simple API for XML)進行XML解析又有不能隨機的訪問和修改XML文檔的問題。
(3)系統冗余度高,不利于維護:CLIP是一個功能繁多的系統,一個典型的CLIP包括終端設備的初始化、鏈路選擇、網絡控制管理、接口處理、平臺和狀態維護、數據管理、鏈間數據轉發、主機I/O等模塊,而很多模塊之間均有互相使用的關系,這意味這每一個模塊內部均要維護和其它模塊之間的連接,從而導致系統結構變得非常冗余,不利于維護和升級,圖2為某仿真平臺上一個典型的CLIP系統內模塊間的交聯關系。

圖2 CLIP系統內模塊交聯關系
(4)實現消息過濾器工作繁瑣:CLIP同時接入了多種不同的數據鏈,各種數據鏈在速率、戰術信息量等方面是不同的。CLIP一個重要的功能就是實現鏈間信息轉發,而當速率高、信息量大的鏈路向速率低、信息量小的鏈路進行轉發時,很容易使低速的鏈路飽和,增加系統的風險,因此系統必須設計消息過濾器對消息進行篩選。消息過濾器的判決規則都是基于消息等待時間和優先級,傳統的處理方式均是程序周期主動地對消息隊列中的所有消息的等待時間和優先級進行檢查,這是一個非常浩繁的工作,特別是消息過濾的規則需要修改的時候。
有沒有解決這些問題的辦法?在回答這個問題之前,先介紹一下DDS技術及其特點。
DDS是由OMG頒布的一套互聯、互通協議規范和應用編程接口,它定義了一種以數據為中心的發布/訂閱機制,數據由應用方發布,對該數據感興趣的遠程應用訂閱數據。數據對象由IDL(接口定義語言)定義,用 “主題”(Topic)進行標識,主題是通信雙方聯系的唯一紐帶[7]。通過這種發布/訂閱機制,DDS構建了一個共享的 “全局數據空間”,系統中的各個節點都掛載在此 “全局數據空間”上,通過DDS規定的標準接口完成數據的交互,DDS有效的降低了系統各種構件之間的耦合性,很容易構建一個以數據為中心的、高效的、可擴展的、與平臺和位置無關的網絡。目前DDS最新版本為2007年發布的1.2版,它支持幾乎所有的總線,同時提供23個質量服務 (quality of service,Qos)對數據分發服務進行控制,為上層應用提供極大的方便[8],如圖3所示。

圖3 DDS架構
相對于傳統的實現方式,使用DDS會給多鏈集成系統帶來以下好處:
(1)提高系統的擴展性:DDS采用統一的方式來定義接口,同時支持串口、以太網、光纖信道 (fiber channel,FC)等幾乎所有的常用總線,可以屏蔽因總線多樣性而帶來的復雜度。系統使用DDS以后,接入一種新的數據鏈終端將非常方便,只需完成終端到DDS的適配即可,靈活性較高。
(2)數據格式轉換簡單、效率高:DDS的接口均統一使用清晰而簡潔的IDL來定義,相對于傳統的面向BIT流的接口處理方式,鏈路之間的數據格式轉換相當高效和快速。
(3)提供松耦合的系統架構,降低系統的冗余度:在DDS網絡結構中,各個節點之間是松耦合的關系,即參與交互的節點之間不需建立和維護連接,節點間的通信僅需要一個主題就能完成,在系統內增加/刪除節點不會對其它節點產生任何影響。
(4)提供Qos降低系統的工作量:DDS擁有23個Qos,用戶通過配置DDS的Qos可以在不寫一行代碼的前提下實現對數據分發過程的控制,為用戶提供了極大的方便,比如LifespanQos實現了基于時間的數據過濾機制、TransportPriorityQos實現了基于優先級的數據過濾機制。
簡而言之,將DDS引入到多鏈集成系統中能屏蔽各種總線的差異從而提高擴展性;為系統各個模塊提供統一的接口實現高效的鏈間數據消息轉換;通過松耦合的系統架構降低系統冗余度;同時提供了Qos減少系統的工作量。因此,新的軟件方案采用DDS作為各個模塊間數據交互的手段來彌補傳統CLIP系統架構的不足。為后續描述方便,簡稱引入DDS之前的為舊版方案,引入DDS以后的為新版方案。
新版CLIP的軟件方案采用和舊版方案一樣的結構,還是分為終端I/O、鏈路處理、主機I/O這3個層次,對外接口不變,內部采用DDS作為系統各個模塊間的軟總線,如圖4所示。

圖4 新版方案系統架構
4.1.1 終端I/O層設計
終端I/O完成各個數據鏈終端的接入,是整個多鏈集成系統的核心和支柱。因為各個數據鏈終端以及和終端相連的總線是無法修改的,因此I/O層要以DDS的方式完成各個數據終端的接入。目前DDS支持幾乎所有數據鏈終端應用的總線,因此要實現多種數據鏈終端的接入不存在技術問題。以后需要接入新數據鏈時,只需修改I/O層,增加相應的適配程序即可。
4.1.2 鏈路處理層設計
鏈路處理層完成多鏈集成處理的業務邏輯,包括終端初始化、鏈路選擇、網絡控制管理、平臺和狀態維護、數據管理、鏈間數據轉換等功能,它層采用構件化、模塊化、通用化的設計思想。因為使用了DDS松耦合的系統架構,每個模塊僅僅以主題和 “全局數據空間”交互,所以這種方式的組件支持熱插拔 (即插即用)且具有易于安裝/拆卸、功能獨立、接口開放、升級方便、二次開發簡單等特點,能夠適應各類指控系統和作戰平臺的集成需求,當需求有變化時候也會使現有軟件改動量最小。
其中鏈間數據轉換模塊中消息過濾器的功能用DDS提供的Qos來實現,用LifespanQos實現基于時間的消息過濾功能、用TransportPriorityQos實現基于優先級的消息過濾功能。
4.1.3 主機I/O層設計
主機I/O層完成對頂層應用的接口適配,根據不同的需求完成用戶接口到DDS接口的轉換,同時將用戶對消息過濾規則的定制映射為Qos的對應設置。當頂層應用的需求有變化時,只需要修改主機I/O層即可,讓軟件升級簡單而高效。
我們基于某仿真平臺對新版方案和舊版方案的擴展性、鏈間消息轉換的效率、系統內部的冗余度、實現消息過濾器的工作量進行了評測和對比。其中擴展性、冗余度是系統架構的一個定性屬性,無法給出量化的指標,因此通過架構的對比給出結論,消息過濾器的工作量通過代碼量的統計來進行比較,數據格式轉換的效率通過測試得出對比結果。
4.2.1 仿真測試環境介紹
新版方案和舊版方案軟件運行的硬件環境采用Power-PC7448平臺,操作系統選用vxWorks5.5,新版方案使用的DDS產品是 RTI-DDSv4.5。仿真平臺外接 LINK16、LINK11、寬帶鏈模擬器和用戶界面模擬器,如圖5所示。

圖5 仿真測試環境
4.2.2 對比結論
(1)系統擴展性:當系統需要添加一種新型數據鏈時,舊版方案需要在終端I/O層上添加對應的總線API,并實現BIT流到數據鏈消息報文格式的轉換,然后完成和終端初始化、網絡控制管理、平臺和狀態維護、數據管理、鏈間數據轉換等模塊間的連接,還要在相應的模塊添加對應的處理邏輯,擴展性不高。新版方案只需要在終端I/O層中添加將對應數據鏈引入到DDS全局數據空間的功能,并在鏈路處理層添加對應主題數據的處理代碼即可,擴展性較高。
(2)鏈間消息轉換效率:以LINK16的J序列消息轉換為LINK11的 M序列消息為樣本[9,10],測試了25000次,舊版方案的平均轉換時間為15.3us,新版方案的平均轉換時間為4.3us。
(3)系統內部的冗余度:對比圖2和圖4,舊版方案中各個模塊之間是一種多對多的緊耦合關系,各個模塊要耗費較多資源去維護和其余模塊的連接,修改其中一個模塊會影響到其余很多模塊,是 “牽一發動全身”的格局,冗余度較大。新版方案中各個模塊之間互相并不知道對方的任何信息,每個模塊只和全局數據空間交互,修改一個模塊不會影響到其它模塊,冗余度小。
(4)消息過濾器的工作量:以LINK16的J序列消息轉換為LINK11的M序列的消息過濾器的代碼量為統計樣本,舊版方案在Tornado環境下用C++語言實現,花費了3300行左右的代碼 ;新版方案用DDS的Qos實現,代碼量為零。
本文基于某個仿真系統,首先論述了傳統的多鏈集成系統存在的問題,即擴展性差、鏈間消息轉換效率低、系統冗余度大、實現消息過濾器工作繁瑣。接著討論了DDS技術,介紹了其技術特點,闡明了DDS給多鏈集成系統帶來的好處,分析了將DDS引入到多鏈集成系統中的可行性,最后介紹了基于DDS構建的多鏈集成系統的新版方案,并通過測試和比較證明了新版方案解決了舊版方案存在的不足之處。
綜合一體化的多鏈集成系統是今后信息化戰爭的關鍵裝備,多鏈集成應用技術和實現方法是值得我國認真分析和研究的課題,本文提出的基于DDS的多鏈集成系統,提高了系統的擴展性,增強了鏈間消息轉換的效率和靈活性,降低了系統的冗余度,解決了消息過濾器工作量大的問題,對開發多鏈集成系統和軟件有借鑒作用。
[1]CHAI Kejun.Research on multiple tactical data link concurrence of US military[J].Ship Electronic Engineering,2010,30 (9):16-18 (in Chinese).[柴克軍.美軍多種數據鏈協同技術研究[J].艦船電子工程,2010,30 (9):16-18.]
[2]HUANG Kun.Data link integration application of US army and suggestions[J].Ship Electronic Engineering,2010,30(11):15-17 (in Chinese).[黃鹍.美軍數據鏈集成應用及其啟示[J].艦船電子工程,2010,30 (11):15-17]
[3]XU Haitao.Improved communication of DRS system based on CORBA and DDS technology[J].Computer Engineering and Design,2012,33 (1):357-361 (in Chinese).[許海濤.基于CORBA與DDS技術改進DRS系統通信[J].計算機工程與設計,2012,33 (1):357-361.]
[4]CUI Hao.Modeling and simulation of link16and VHF's interconnection[J].Computer Engineering and Design,2007,28(5):1119-1121 (in Chinese).[崔昊.Link16與 VHF數據鏈互連建模與仿真研究[J].計算機工程與設計,2007,28(5):1119-1121.]
[5]HUANG Kun.Architecture of data link integration application[J].Command Information System and Technology,2011(5):15-18 (in Chinese).[黃鹍.數據鏈集成應用體系結構[J].指揮信息系統與技術,2011 (5):15-18]
[6]GUO Yaqin.Data link message processing technology[J].Telecommunication Engineering,2009,49 (3):87-91 (in Chinese).[郭亞琴.數據鏈消息處理技術[J].電訊技術,2009,49 (3):87-91.]
[7]YAO Bing.Design and implementation of data distribution service based on DDS[J].Computer Engineering and Design,2009,30(3):619-625 (in Chinese).[姚兵.基于 DDS模型的數據分發中間件的設計與實現[J].計算機工程與設計,2009,30(3),619-625.]
[8]YANG Chuanshun.Research on quality of service of real-time data distribution system[J].Computer Technology and Development,2011,21 (5):231-234 (in Chinese).[楊傳順.實時數據分發系統的服務質量控制的研究[J].計算機技術與發展,2011,21 (5):231-234.]
[9]STANAG No.5511(Edition 5),Tactical Data Exchange-Link 11/Link 11B[S].
[10]STANAG No.5516 (Edition 3),Tactical Data Exchange-Link 16[S].