999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于OpenDDS的中間件實時通信機制擴展設計

2017-03-03 01:09:26馮劍塵柳中華
艦船電子工程 2017年2期
關鍵詞:機制

馮劍塵 柳中華

(92493部隊 葫蘆島 125000)

基于OpenDDS的中間件實時通信機制擴展設計

馮劍塵 柳中華

(92493部隊 葫蘆島 125000)

在仿真試驗領域,隨著參試系統實時性和集成程度的提高,需對通信中間件軟件進行實時擴展改造,論文的目標是依托OpenDDS技術,對基于ACE結構的中間件進行實時通信機制擴展,使虛實合成試驗系統在傳輸中能夠快速高效地按需配置,提高中間件信息傳輸的實時性,擴展中間件軟件對實時仿真、試驗領域的支持。

DDS; 中間件; 實時通信機制擴展

Class Number TP391

1 引言

在仿真、測試與虛擬試驗領域,伴隨著HLA、TENA等技術的廣泛應用,系統內部及系統間的信息傳輸對于實時性的要求越來越高,因此,建立實時性強、可靠性高、安全性好的信息傳輸中間件,提高系統互聯能力,滿足系統內各種信息交換和共享需求,并解決應用軟件之間的數據共享和集成問題是該領域亟待解決的問題。

本文的目標是依托DDS(Data Distribution Service)技術進行基于ACE架構的中間件實時通信機制擴展研究,提高中間件信息傳輸的實時性,擴展傳輸體系對實時仿真、試驗領域的支持。

2 數據分發服務(DDS)

DDS具有松散耦合、處理復雜數據流能力強、分發效率高、容錯性好以及動態可配置等特點。DDS定義了以數據為中心的發布/訂閱(Data Centric Publish-Subscribe,DCPS)機制[1],以數據為中心的發布/訂閱模型基于全局數據空間(Global Data Space)的概念,如圖1所示。

在DDS中所有對該空間中的數據感興趣的應用程序都可以接入。向這個數據空間提供信息的應用程序叫做發布者(Publisher),它公布自己所提供數據的屬性和類型;從數據空間中獲取數據的應用程序叫做訂閱者(Subscriber),它公布自己希望接收的數據的屬性和類型。發布者和訂閱者并不需要知道彼此的位置,只要它們數據的屬性和類型能夠成功匹配,它們之間就會成功建立一個數據收發通道。每當發布者將新數據發送到這個全局數據空間,中間件就會把信息轉發給所有感興趣的訂閱者,訂閱者就可以從全局數據空間中去獲取自己感興趣的數據[2]。

圖1 以數據為中心的發布/訂閱模型

2.1 DDS規范與體系結構

DDS規范包括域參與者、發布者、訂閱者、數據寫入者、數據讀取者、主題和QoS(Quality of Service)等,其體系結構如圖2所示。

圖2 DDS體系結構

DDS使用域來劃分數據通信的子空間,隸屬于同一個域的各個域參與者(Participant)可以互相通信,每個域參與者里面可以有一個或多個發布者或訂閱者,每個發布者里面可以有一個或多個數據寫入者(DataWriter),每個訂閱者里面也可以有一個或多個數據讀取者(DataReader)。數據寫入者通過數據通道將數據發送到相應的數據讀取者處,數據讀取者則從數據通道中獲取自己感興趣的數據,數據寫入者和數據讀取者通過主題(Topic)和QoS進行匹配和建立聯系,一般每個數據寫入者或數據讀取者只寫入或讀取一種類型的數據。

2.2 DCPS行為模式與QoS

DCPS行為模式包含發布操作和訂閱操作兩部分。發布操作定義了從應用更新數據到將數據分發到訂閱者的過程。訂閱操作定義了從接收數據到將數據傳遞到應用的過程。由于數據發布服務的目標是使應用能獲取正確數據,為了滿足應用對數據需求的多樣性,DCPS設計了兩級過濾機制:第一級是建立發布者和訂閱者間供需關系,發布者依據供需關系進行數據分發;第二級是在訂閱過程中建立內容過濾機制,應用可通過過濾器(filter)獲取滿足特定要求的數據。

在DCPS行為模式中,QoS參數控制了DDS模型的底層的通信機制,并作為發布方和訂購方之間的協定來確定發布方服務方式、訂購方服務等級,并判斷提供者能否滿足要求,然后建立通信連接,或者給出不相容錯誤提示,提高通信質量。

3 技術方案選擇

3.1 DDS產品選擇

DDS自OMG發布相關標準以來己得到許多提供商和最終用戶的支持,目前已經有的發布的產品有[3]:

1) RTI DDS:由美國RTI公司開發,目前全球范圍內超過500個項目的廣泛應用和部署,支持Windows、Linux、VxWorks等多種操作系統,由于是商用軟件,成本相對較高。

2) OpenSplice DDS:最初由Thales開發,在2006年被PT(Prism Technologies)獲得,主要的應用在Tacticos項目(Thales的戰斗管理系統)。

3) OpenDDS:對象管理組織OMG的實時數據分發系統的C++開源實現。OpenDDS本身使用C++開發,并通過JNDI技術兼容JMS標準。OpenDDS為了實現跨平臺特性而構建于ACE抽象層。

4) MilSoftDDS:土耳其的MILSOFT Software Technologies公司開發的DDS應用軟件。

由于基于ACE通訊框架的中間件與OpenDDS底層的ACE+TAO機制可以兼容[4~5]。此外,從商業角度考慮,采用OpenDDS這種免費開源的數據分發服務軟件也有利于系統接口和支撐軟件平臺的推廣應用。

3.2 DDS應用模式選擇

OpenDDS與現有中間件在功能上都位于負責信息傳輸的中間件層,應用OpenDDS有如下兩種應用模式[6]:

應用模式一:使用OpenDDS替代原有基于ACE架構中間件,資源直接調用OpenDDS進行數據傳輸。該模式應用時需要根據系統和資源的具體情況進行域、主題、訂閱/發布機制、數據寫入/讀取代碼的編寫。

應用模式二:使用OpenDDS作為原有中間件的一種底層通信機制,保留現有的訂閱/發布機制和標準接口服務,該模式需要對OpenDDS強數據類型進行通用化處理。

兩種應用模式下的中間件層次如圖3所示。

圖3 基于DDS的中間件應用模式

應用模式一下,直接應用OpenDDS替代中間件作為底層通信框架會使得中間件喪失靈活性、重用性和可擴展性,增大網絡開銷,不利于其發展和推廣應用。

應用模式二下,主要缺點是由于需要對OpenDDS強數據類型進行通用化處理,所以會犧牲一定的信息傳輸實時性,但具有以下優點[7]:

1) 保持中間件接口不變,現有的各種資源無需做任何修改即可應用,繼承了現有平臺免編程系統構建的模式。

2) 現有的基于內容的訂閱/發布模式得以保留,支持對主題下的部分內容進行興趣訂閱,提高信息傳輸效率。

3) 現有的對象模型結構可繼續使用,支持繼承和組合關系。

綜上所述,本文采用應用模式二進行開發,即在保留現有的訂閱/發布機制和標準接口服務的基礎上,使用OpenDDS作為原中間件的一種底層通信機制。

4 基于OpenDDS的中間件通信框架設計

圖4給出了基于DDS的中間件通信框架,圖中陰影區域標出的為OpenDDS提供的功能模塊。

4.1 軟件總體結構

為保證原中間件通用接口不發生變化,采用插件模式引入DDS作為底層通信設施,每個系統應用(對應一個試驗方案文件)會產生一個插件實現文件(DLL格式)。同時,為保證原中間件不經過代碼編譯過程即可使用插件實現文件,插件的外部接口必須符合特定標準[8~9]。

圖4 基于OpenDDS的中間件通信框架

由于DDS在發布/訂閱、數據寫入和讀出過程中的強類型要求,即要求為每個數據結構產生對應的類型對象、數據讀對象和數據寫對象,因此根據每個試驗方案中的數據結構(對象模型)自動生成上述對應的對象代碼并自動進行后臺編碼編譯就是必須的要求。

基于上述要求,擴展改造的總體結構如圖5所示。

圖5 軟件總體結構

整個系統軟件由自動代碼生成模塊、自動代碼編譯模塊、DDS插件模板組成,最終目標文件是基于DDS的試驗方案運行插件(DLL)。在系統運行前,首先需要根據試驗方案文件(sys文件,由中間件生成)進行自動代碼生成,然后通過自動代碼編譯模塊加載生成的工程代碼和DDS插件模板,最終生成目標文件。

在系統運行中,軟件通過加載生成的基于DDS的試驗方案運行插件實現基于DDS的信息傳輸過程,在該過程中基于DDS的試驗方案運行插件需要通過加載試驗方案文件自動執行聲明管理服務和對象管理服務。

4.2 DDS插件模板

圖6為DDS插件模板類圖,主要包括DDS試驗方案解析器、DDS服務器、DDS數據接收器和DDS數據管理器組成。

4.3 自動代碼生成模塊

自動代碼生成模塊根據平臺軟件生成的試驗方案文件(sys),生成DDS系統信息傳輸所需要的IDL文件、數據類型注冊代碼、數據寫入代碼和數據讀取代碼,圖7給出了自動代碼生成過程。

圖6 DDS插件模板類圖

圖7 自動代碼生成過程

4.4 自動代碼編譯模塊

DDS插件模板在經過自動代碼生成模塊處理后,生成若干分散的源文件和頭文件(包括IDL文件、DDS服務器類、DDS數據管理器類、DDS數據接收器類、DDS試驗方案解析器類、DDS服務接口文件等),若中間件直接調用生成的文件則需要其支持編譯模式。為保證中間件現有主程序不需要針對具體系統進行編譯,采用可動態加載的DLL模式封裝上述生成的文件。為將上述分散文件編譯為DLL,需要在自動代碼編譯模塊為其建立獨立的工程文件,配置編譯、目標參數等過程[10]。

5 應用模式設計

整個軟件在應用時分為兩個模塊,一個是DDS自動代碼生成及自動代碼編譯模塊,該模塊是標準C語言接口的動態鏈接庫(DLL),提供由試驗方案文件生成對應的基于DDS的試驗方案插件的功能。另一個模塊即所生成的基于DDS的試驗方案插件(其存在形式也是標準C語言接口的動態鏈接庫),該模塊由中間件加載使用,支持底層為DDS的信息傳輸功能,整個系統的應用模式如圖8所示。

圖8 系統的應用模式

6 結語

中間件實時通信機制擴展應在現有的體系結構下進行,以現有的試驗方案文件為運行支持文件,遵循免編程的系統構建方式。擴展后的中間件接口保持不變,能夠支持現有的基于ACE和新擴展的基于DDS的通信機制,能夠實現基于主題和基于內容的信息發布/訂閱功能,并通過可擴展的QoS策略控制信息傳遞質量。

1) 免編程基于DDS的信息交互機制,集自動代碼生成和自動代碼編譯于一體。在保證體系結構不變的條件下,徹底解決了DDS平臺的應用問題。

2) 多系統多實例并行運行,支持基于內容與基于主題的發布/訂閱模式,數據傳輸效率高,應用方便。

[1] 裘楷,沈棟,李娜,等.基于DCPS模型的數據分發服務DDS的研究[J].電子科技,2006,206(12):70-71.

[2] 姚兵,蔡婷,李峻林,等.基于DDS模型的數據分發中間件的設計與實現[J].計算機工程與設計,2009,30(3):620-621.

[3] OMG Data Distribution Service for Realtime Systems Version 1.2[R]. Feb,2007.

[4] TAO Developers Guide Excerpt Object Computing[R]. Nov,2007.

[5] OMG. Real-time CORBA Specification[R]. Version1.2, Jan,2005.

[6] 張大海,賴蘭劍,陳鼎才.DDS在分布式系統仿真中的應用[J].計算機技術與發展,2011,21(3):251-252.

[7] 歐陽軍,蔡志明,王希敏.基于DDS中間件的性能測試[J].2011,209(11):137-138.

[8] 胡鈺銑,王希敏.基于實時CORBA與DDS的發布/訂閱系統的設計與實現[D].武漢:海軍工程大學碩士學位論文,2007:78-87.

[9] 俞嶺,彭艦,劉錦德.CORBA中間件的實時擴展[J].計算機應用研究,2003,9:92-93.

[10] 費洪曉,歐陽偉.企業CORBA中間件的性能分析及優化方法[J].計算機技術與發展,2009,19(3):13.

Design of Real-time Communication Mechanism of Middleware Based on OpenDDS

FENG Jianchen LIU Zhonghua

(No. 92493 Troops of PLA, Huludao 125000)

With real-time and integration degree of system improving in test range, the real-time performance on the middleware communications is needed to expand. This paper uses OpenDDS technique to expand the middleware based on the ACE structure, making the experimental system can be quickly and efficiently in the transmission of the virtual-real area, increasing the middleware information deliver efficiency, which expands support of realm in the emulation mode and test area for middleware based system structure.

DDS, middleware, real-time communication mechanism

2016年8月10日,

2016年9月30日

馮劍塵,男,碩士,高級工程師,研究方向:武器裝備試驗總體。柳中華,男,碩士,工程師,研究方向:導彈武器系統仿真。

TP391

10.3969/j.issn.1672-9730.2017.02.024

猜你喜歡
機制
構建“不敢腐、不能腐、不想腐”機制的思考
自制力是一種很好的篩選機制
文苑(2018年21期)2018-11-09 01:23:06
“三項機制”為追趕超越蓄力
當代陜西(2018年9期)2018-08-29 01:21:00
丹鳳“四個強化”從嚴落實“三項機制”
當代陜西(2017年12期)2018-01-19 01:42:33
保留和突破:TPP協定ISDS機制中的平衡
定向培養 還需完善安置機制
中國衛生(2016年9期)2016-11-12 13:28:08
破除舊機制要分步推進
中國衛生(2015年9期)2015-11-10 03:11:12
氫氣對缺血再灌注損傷保護的可能機制
注重機制的相互配合
中國衛生(2014年3期)2014-11-12 13:18:12
打基礎 抓機制 顯成效
中國火炬(2014年4期)2014-07-24 14:22:19
主站蜘蛛池模板: 欧美第一页在线| 五月婷婷激情四射| 国产精品亚欧美一区二区三区| 欧美性久久久久| 人妻无码AⅤ中文字| 成年人久久黄色网站| 暴力调教一区二区三区| 久久综合伊人 六十路| 成年人视频一区二区| 天堂岛国av无码免费无禁网站| 久久熟女AV| 免费看美女自慰的网站| 国产午夜不卡| 99精品国产自在现线观看| 国产精品亚洲综合久久小说| 91精品视频播放| 亚洲第一色视频| 全午夜免费一级毛片| 色综合综合网| 一本大道AV人久久综合| 久久久久国色AV免费观看性色| 伊人久久影视| 人妻丰满熟妇AV无码区| 中国国产高清免费AV片| 在线无码私拍| 一级毛片视频免费| 亚洲国产日韩欧美在线| 99在线观看精品视频| 国产一在线观看| 国产精品内射视频| 在线欧美国产| 日韩在线永久免费播放| 亚洲品质国产精品无码| 亚洲毛片一级带毛片基地 | 国产a在视频线精品视频下载| 91精品aⅴ无码中文字字幕蜜桃 | 试看120秒男女啪啪免费| 日韩欧美一区在线观看| 好紧太爽了视频免费无码| 成人午夜免费视频| 亚洲视频欧美不卡| 国产青青操| 精品无码国产自产野外拍在线| 又粗又硬又大又爽免费视频播放| 欧美a级在线| 波多野结衣一区二区三视频| 亚洲欧洲日产国码无码av喷潮| 国产欧美又粗又猛又爽老| 亚洲高清在线天堂精品| 91色综合综合热五月激情| 亚洲免费毛片| 欧美一区二区啪啪| 91www在线观看| a级毛片网| 色网在线视频| 亚洲中文字幕无码爆乳| 无码一区中文字幕| 国产精品yjizz视频网一二区| 成人免费一区二区三区| 亚洲国产欧美自拍| 日本三级黄在线观看| 日韩在线播放中文字幕| 成人免费午夜视频| 精品国产网站| 久久久久青草大香线综合精品| 亚洲综合精品香蕉久久网| 美女裸体18禁网站| 在线观看网站国产| 91免费观看视频| 亚洲侵犯无码网址在线观看| 精品国产香蕉在线播出| 中文字幕调教一区二区视频| 亚洲日韩高清在线亚洲专区| 国产第一页免费浮力影院| 22sihu国产精品视频影视资讯| 亚洲欧美一区二区三区蜜芽| 国产亚洲视频中文字幕视频| 亚洲精品片911| 國產尤物AV尤物在線觀看| 免费日韩在线视频| 国产精品99r8在线观看| 一区二区三区在线不卡免费|