亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        面向數(shù)據(jù)的實時網(wǎng)絡中間件的設計與實現(xiàn)

        2020-07-13 07:06:54湯學達張媛孫文俊
        網(wǎng)絡安全技術與應用 2020年7期
        關鍵詞:發(fā)布者中間件代理

        ◆湯學達 張媛 孫文俊

        (中國電子科技集團公司第二十八研究所 江蘇 210007)

        隨著我軍信息化建設的蓬勃發(fā)展,實時信息系統(tǒng)的體系結(jié)構(gòu)呈現(xiàn)出以網(wǎng)絡為中心的趨勢,對信息交互能力的要求日益提高。因此,實時傳輸技術研究的目標是建立實時性強、可靠性高、安全性好的信息交換平臺,提高系統(tǒng)互聯(lián)能力,滿足系統(tǒng)內(nèi)各種信息交換和共享需求,并解決應用軟件之間的數(shù)據(jù)共享和集成問題。

        目前,我軍的信息化系統(tǒng)中仍然大量采用端到端的面向連接的通信模式,當系統(tǒng)比較復雜時,該模式的維護性和擴展性都比較差。而在信息化系統(tǒng)中,除了發(fā)送的數(shù)據(jù)外,根據(jù)傳輸信道和使用場景的不同,用戶可能對于傳輸?shù)囊笠约瓣P注點也不盡相同。例如對于延時較長的傳輸信道,用戶可能更關注于怎樣才能保證收到的數(shù)據(jù)不過期。未來的信息化系統(tǒng)正在向著網(wǎng)絡化和服務化的方向發(fā)展,而類似于CORBA 或者RPC 等傳統(tǒng)的服務化通信模式可能無法滿足我軍實時信息系統(tǒng)的網(wǎng)絡傳輸要求。針對上面的問題,參考DDS 規(guī)范,設計并實現(xiàn)了面向數(shù)據(jù)的實時網(wǎng)絡中間件,可以實現(xiàn)通信節(jié)點和傳輸構(gòu)件的即插即用;通過設計實時網(wǎng)絡中間件的服務質(zhì)量策略(Quality of ServicePolicies,QoS),優(yōu)化我軍實時信息系統(tǒng)的數(shù)據(jù)傳輸能力,大幅提高系統(tǒng)設計和功能拓展的靈活性;通過對于全局數(shù)據(jù)空間的設計,使用“主題”來標識信息流,實現(xiàn)類似于“服務總線”的“數(shù)據(jù)總線”,為上層應用提供透明的應用接口。

        1 DDS 規(guī)范

        DDS 規(guī)范是OMG 的有關分布式實時系統(tǒng)中數(shù)據(jù)發(fā)布的一個較新的規(guī)范[1-2](2004 年12 月發(fā)布1.0 版,2007 年1 月發(fā)布1.2 版)。DDS 規(guī)范采用了發(fā)布/訂閱體系結(jié)構(gòu),但對實時性要求提供更好的支持。DDS 是以數(shù)據(jù)為中心的發(fā)布/訂閱通信模型[3-5],并針對強實時系統(tǒng)進行了優(yōu)化,提供低延遲、高吞吐量、對實時性能的控制級別、從而使DDS 能夠廣泛地應用于軍事、航空、通信、交通運輸、工業(yè)自動化、金融等領域。DDS 規(guī)范了實時分布式系統(tǒng)中數(shù)據(jù)發(fā)布、傳遞和接收的接口和行為,定義了以數(shù)據(jù)為中心的發(fā)布/訂閱機制。DDS規(guī)范使用UML 語言描述服務,提供了一個與平臺無關的數(shù)據(jù)模型。DDS 規(guī)范簡化了實時分布式系統(tǒng)中數(shù)據(jù)高效、可靠地發(fā)布,它主要應用在要求高性能、可預見性和對資源有效使用的關鍵任務領域[6-7]。

        圖1 DDS 協(xié)議基本過程

        如圖1 所示,DDS 中以數(shù)據(jù)為中心的發(fā)布/訂閱模型建立了一個邏輯上統(tǒng)一的“全局數(shù)據(jù)空間”的概念[8],通過全局數(shù)據(jù)空間來管理數(shù)據(jù)對象。“主題”提供了一個標志符,在全局數(shù)據(jù)空間中唯一地標識某些數(shù)據(jù)項,“數(shù)據(jù)發(fā)布者”和“數(shù)據(jù)訂閱者”通過“主題”進行關聯(lián)?!皵?shù)據(jù)發(fā)布者”為向數(shù)據(jù)空間發(fā)布主題信息的應用程序,“數(shù)據(jù)訂閱者”為從數(shù)據(jù)空間中獲取主題信息的應用程序。通過這種方式可以實現(xiàn)在“數(shù)據(jù)發(fā)布者”和“數(shù)據(jù)訂閱者”之間的松耦合。DDS 規(guī)范列舉并正式定義了一整套的QoS,能利用QoS 進行系統(tǒng)控制。每一個實體都有自身QoS 策略,而且在每一對發(fā)布者和訂閱者之間又都可以建立獨立的QoS 協(xié)定。這使得DDS 可以很好地配置和利用系統(tǒng)資源、協(xié)調(diào)可預言性與執(zhí)行效率間的平衡,以及能夠支持復雜多變的數(shù)據(jù)流需求。目前,DDS 規(guī)范已被廣泛應用于軍事系統(tǒng)中,包括作戰(zhàn)系統(tǒng)、船舶導航和控制系統(tǒng)、船舶防御系統(tǒng)、無人機駕駛系統(tǒng)和地面控制系統(tǒng)、裝甲車輛控制系統(tǒng)、仿真和培訓系統(tǒng)等,其典型應用系統(tǒng)包括美國海上作戰(zhàn)中心(NSWS)高性能分布式計算系統(tǒng)(HiPer-D)、美國海軍LPD-17 艦內(nèi)廣域網(wǎng)絡、洛馬美國海軍宙斯盾(Aegis)武器系統(tǒng)、Ⅰnsitu無人機等。

        2 軟件設計

        2.1 軍事信息化系統(tǒng)對實時網(wǎng)絡中間件的要求

        由于在未來的軍事信息化系統(tǒng)中,大量實時信息存在于提供信息的各個成員系統(tǒng)中,它們以信息流和數(shù)據(jù)存儲的方式提供給信息用戶使用。這些信息的傳輸既需要實時網(wǎng)絡中間件實現(xiàn)網(wǎng)絡化與服務化系統(tǒng)中的即插即用與松耦合,又要求實時網(wǎng)絡中間件可以在極短的時間將消息傳輸給用戶實現(xiàn)強實時性。不僅要保證消息可以快速正確的傳遞給用戶,而且需要對信息的可靠性、持久性、丟報率、傳送優(yōu)先級等屬性進行保證。

        2.2 實時網(wǎng)絡中間件理論建模

        參考DDS 規(guī)范,將實時網(wǎng)絡中間件劃分為平臺無關模型和平臺相關模型。模平臺無關模型是對平臺無關部分進行的抽象,可以劃分為結(jié)構(gòu)模型,消息模型,行為模型和發(fā)現(xiàn)型等四個模型。其中,結(jié)構(gòu)模型定義了實時網(wǎng)絡中間件中的實體信息;消息模型定義了實時網(wǎng)絡中間件中的消息格式;行為模型定義了實體間的動態(tài)行為;而發(fā)現(xiàn)模型則定義了實體間的發(fā)現(xiàn)方法,而平臺相關模型則體現(xiàn)了每個平臺的差異性,例如傳輸模型和安全模型等。平臺無關模型和平臺相關模型共同構(gòu)成了實時網(wǎng)絡中間件的理論模型,如圖2 所示。

        (1)結(jié)構(gòu)模型

        結(jié)構(gòu)模型定義了DDS 規(guī)范中規(guī)定的一些核心實體,如圖3 所示。在實時網(wǎng)絡中間件模型中,實體之間在域內(nèi)進行通信,每個實體又代表了一個參與者的集合,參與者包含本地通信端點,其中,通信端點又包括兩種類型:數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者,數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者通過消息進行通信。其中,數(shù)據(jù)發(fā)布者在域內(nèi)發(fā)布數(shù)據(jù)而參與者可以根據(jù)自己的需求獲得數(shù)據(jù)。

        圖2 實時網(wǎng)絡中間件理論模型圖

        圖3 結(jié)構(gòu)模型的核心實體

        除了核心實體以外,為了通信的方便,結(jié)構(gòu)模型還定義了一種數(shù)據(jù)對象——歷史緩存。歷史緩存主要用于緩存數(shù)據(jù)發(fā)布者發(fā)布以及數(shù)據(jù)訂閱者接收的歷史數(shù)據(jù)。歷史緩存并不包括全部數(shù)據(jù),其緩存的具體內(nèi)容取決于QoS 的設置以及數(shù)據(jù)發(fā)布者與數(shù)據(jù)訂閱者的實體狀態(tài)。

        (2)消息模型

        消息模型定義了數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者交互的消息格式,按照不同類型,可以將消息分為控制消息,數(shù)據(jù)消息,心跳消息等。其中,每個消息都包括消息頭和消息體兩部分,消息頭中定義了協(xié)議號,驗證報頭等通用信息。消息格式按照標準的DDS 規(guī)范進行設計,可以很方便地支持標準協(xié)議以及進行相應擴展。

        (3)行為模型

        行為模型定義了實體間的動態(tài)行為。其中,數(shù)據(jù)發(fā)布者的行為包括創(chuàng)建主題,發(fā)布主題,發(fā)布數(shù)據(jù),更改歷史緩存等,數(shù)據(jù)訂閱者的行為包括創(chuàng)建主題,訂閱主題,接收數(shù)據(jù),從歷史緩存獲取數(shù)據(jù)等。

        (4)發(fā)現(xiàn)模型

        發(fā)現(xiàn)模型定義了實體間的發(fā)現(xiàn)方法,其目的是使每個參與者自動地發(fā)現(xiàn)相關的參與者以及其通信端點信息。發(fā)現(xiàn)之后,實體間就可以根據(jù)數(shù)據(jù)的發(fā)布訂閱規(guī)則進行通信。

        而對于平臺相關模型,每個平臺的定義方式不同,在此不再進行介紹。

        2.3 實時網(wǎng)絡中間件框架設計

        基于上文需求,參照實時網(wǎng)絡中間件的理論模型,設計實時網(wǎng)絡中間件的框架如圖4 所示。其中,實時網(wǎng)絡中間件采用分布式網(wǎng)絡結(jié)構(gòu),每個主機的地位對等,保存與自身相關的發(fā)布/訂閱信息,“全局數(shù)據(jù)空間”作為邏輯概念存在于整個系統(tǒng)中。

        如圖4 所示,參與的實體有數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者。數(shù)據(jù)發(fā)布者通過發(fā)布訂閱接口向發(fā)布訂閱代理發(fā)布主題,數(shù)據(jù)訂閱者則通過發(fā)布訂閱接口向發(fā)布訂閱代理訂閱主題。而發(fā)布訂閱代理則通過數(shù)據(jù)總線進行主題管理,消息匹配等功能,共同維護了一個邏輯上的全局數(shù)據(jù)空間。該設計方式有效避免了集中式網(wǎng)絡結(jié)構(gòu)中的信息交換瓶頸問題,簡化了信息發(fā)布/訂閱流程,任何網(wǎng)絡節(jié)點出現(xiàn)故障都不會影響其他節(jié)點的正常通信,因此具有相對更好的便捷性和可靠性。

        圖4 實時網(wǎng)絡中間件框架圖

        2.4 功能模塊劃分與實現(xiàn)

        實時網(wǎng)絡中間件平臺處于應用系統(tǒng)和操作系統(tǒng)之間,分為發(fā)布訂閱代理和應用程序接口兩大部分,體系結(jié)構(gòu)如圖5 所示。

        圖5 中間件體系結(jié)構(gòu)

        中間件的主要功能模塊可以劃分為Socket 傳輸層,網(wǎng)絡通信接口,QoS 配置模塊,發(fā)布訂閱接口以及發(fā)布訂閱代理。

        其中Socket 傳輸層對應于上文的平臺相關模型,實現(xiàn)了對于操作系統(tǒng)的傳輸接口封裝,為上層提供了統(tǒng)一的傳輸接口。通信接口通過調(diào)用Socket 傳輸層的接口,針對不同QoS,對于傳輸方式以及傳輸信道進行了自適應的匹配。QoS 配置模塊通過發(fā)布訂閱代理實現(xiàn)了對于QoS 的管理以及QoS 的自動匹配。而發(fā)布訂閱接口則對下層接口進行了封裝,提供了統(tǒng)一的接口,使得用戶更加易用。發(fā)布訂閱代理則維護了邏輯上的全局數(shù)據(jù)空間,實現(xiàn)了主題數(shù)據(jù)以及QoS 數(shù)據(jù)的全局共享。網(wǎng)絡通信接口,QoS 配置模塊,發(fā)布訂閱接口以及發(fā)布訂閱代理則參考上文的平臺無關模型進行設計。

        3 關鍵技術研究

        3.1 全局數(shù)據(jù)空間

        在實時網(wǎng)絡中間件中,全局數(shù)據(jù)空間是整個中間件實現(xiàn)的核心。全局數(shù)據(jù)空間是一個虛擬的空間,實現(xiàn)了公共數(shù)據(jù)總線的管理和驅(qū)動,所有實時信息交換平臺應用主機的地址空間均看作該空間的一部分;發(fā)布/訂閱模型中消息主題的管理與匹配、發(fā)布者和訂閱者連接事件通知、基于主題的消息交換等功能都基于全局數(shù)據(jù)空間完成[8]。其核心數(shù)據(jù)結(jié)構(gòu)主要由參與者結(jié)構(gòu),主題管理表,歷史緩存結(jié)構(gòu)以及主題同步結(jié)構(gòu)構(gòu)成。

        (1)參與者結(jié)構(gòu)

        定義參與者數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)用來保存參與者的狀態(tài)信息。其中,包括參與者標識,用來唯一的標識某一個參與者,參與者的端點信息,以及參與者的QoS 信息。

        (2)主題管理表

        定義主題數(shù)據(jù)結(jié)構(gòu)用來保存主題的狀態(tài)信息。其中,包括主題標識,用來標識某一個主題,主題名稱,主題的QoS 信息,以及該主題的本地發(fā)布者集合,本地訂閱者集合,遠程發(fā)布者集合,遠程訂閱者集合,這些集合的數(shù)據(jù)都為參與者類型。而主題管理表是用來管理主題的,其數(shù)據(jù)結(jié)構(gòu)為主題數(shù)據(jù)結(jié)構(gòu)的聚合,包括當前注冊的主題數(shù)目以及主題集合。

        (3)主題同步結(jié)構(gòu)

        定義主題同步結(jié)構(gòu)表示在一個主題需要同步時對外廣播的數(shù)據(jù)結(jié)構(gòu)。包括主題標識,用來標識某一個主題,主題名稱,主題的QoS信息,以及本地的發(fā)布者與訂閱者的集合。全局數(shù)據(jù)空間的主題管理表主要通過每個主機的發(fā)布訂閱代理進行同步,如圖6 所示,每個應用程序主要向本地的發(fā)布訂閱代理進行數(shù)據(jù)的訂閱與發(fā)布,本地節(jié)點的發(fā)布訂閱代理通過網(wǎng)絡和其他節(jié)點的發(fā)布訂閱代理進行數(shù)據(jù)同步,最終可實現(xiàn)每個發(fā)布訂閱代理都保存有整個網(wǎng)絡所有節(jié)點的數(shù)據(jù)發(fā)布者與數(shù)據(jù)訂閱者信息。

        圖6 數(shù)據(jù)同步方法

        在整個過程中,有兩個時機需要進行數(shù)據(jù)同步,一個時機是在數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者發(fā)布或者訂閱數(shù)據(jù)的同時,發(fā)布訂閱代理立刻和其他代理進行同步,這樣可以保證每個訂閱發(fā)布代理的數(shù)據(jù)都能保持最新。另外一個時機是發(fā)布訂閱代理周期性的進行數(shù)據(jù)同步,這樣可以防止數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者的異常情況。在發(fā)布訂閱代理內(nèi)部存有主題信息表,包括這個網(wǎng)絡中所有發(fā)布和訂閱的主題列表。每個主題內(nèi)又有該主題對應的四個列表:本地發(fā)布者列表,本地訂閱者列表,發(fā)現(xiàn)的發(fā)布者列表和發(fā)現(xiàn)的訂閱者列表。主要的發(fā)布訂閱過程如圖7 所示。

        圖7 實體發(fā)現(xiàn)流程

        (1)數(shù)據(jù)發(fā)布者發(fā)布主題時將自身信息添加到發(fā)布訂閱代理對應主題的本地發(fā)布者列表中;

        (2)數(shù)據(jù)訂閱者訂閱主題時將自身信息添加到發(fā)布訂閱代理對應主題的本地訂閱者列表中;

        (3)發(fā)布訂閱代理同步主題時,將該主題對應的本地發(fā)布者和本地訂閱者列表通過廣播的方式發(fā)給其他網(wǎng)絡節(jié)點的發(fā)布訂閱代理;

        (4)其他網(wǎng)絡節(jié)點的發(fā)布訂閱代理收到同步的主題數(shù)據(jù)時將收到的發(fā)布者和訂閱者列表添加到對應主題的發(fā)現(xiàn)列表中。

        通過以上方法進行數(shù)據(jù)同步既可以實現(xiàn)每個發(fā)布訂閱代理都保存有完整的數(shù)據(jù)發(fā)布者與數(shù)據(jù)訂閱者信息,又保證了網(wǎng)絡中需要同步的數(shù)據(jù)量較少,最大限度地避免了同步數(shù)據(jù)的重復發(fā)送。

        3.2 QoS 保障

        QoS 為數(shù)據(jù)發(fā)布者和數(shù)據(jù)訂閱者提供了靈活的傳輸配置策略,發(fā)布者和訂閱者通過配置這些QoS 參數(shù)可以實現(xiàn)靈活的數(shù)據(jù)分發(fā)策略,優(yōu)化數(shù)據(jù)傳輸過程,而網(wǎng)絡中間件負責對這些QoS 參數(shù)進行匹配,這樣可以增加通信靈活性,減輕開發(fā)者的開發(fā)工作。DDS 規(guī)范中總共包括22 類QoS。針對實際需求,實時網(wǎng)絡中間件中將平常比較少用的QoS 進行精簡和修改,總共實現(xiàn)了15 類QoS 策略。其典型QoS 介紹如下:

        (1)可靠性策略

        在實時網(wǎng)絡中間件中,可靠性是可選的,并且是可配置的。使用者可以根據(jù)自身的需求選擇是最有效的還是最可靠的傳輸策略??煽啃圆呗跃S護在數(shù)據(jù)傳輸過程中的數(shù)據(jù)丟失問題,對于高數(shù)據(jù)丟失率(超過20%)的實際應用是非常有效的。

        (2)保鮮策略

        接收方在收到數(shù)據(jù)但一直沒有處理的情況下,有新數(shù)據(jù)到來,設置緩沖區(qū)中是保留最新的,還是全部保留;如果只保留最新的,設置可最多保留多少條。保鮮策略主要用于高延時的應用中,可以避免在高延時的情況下由于緩沖區(qū)滿而導致接收方收到“過時”的數(shù)據(jù)。

        (3)持久化策略

        表示如果數(shù)據(jù)訂閱者在中途訂閱一個主題時,是否會收到之前已經(jīng)發(fā)出的數(shù)據(jù),即數(shù)據(jù)生產(chǎn)者會緩存發(fā)出的數(shù)據(jù)多久,如不緩存,直到進程退出,一直保留(持久化)。通過持久化策略,使用者可以根據(jù)自己的需要對于之前發(fā)送的數(shù)據(jù)進行持久化,對于某些經(jīng)?!板礄C”的應用,該策略可以避免數(shù)據(jù)丟失,極大地增強應用的魯棒性。

        4 結(jié)論

        本文引入了DDS 規(guī)范,研究了其關鍵技術,設計并實現(xiàn)了實時網(wǎng)絡中間件。該中間件以數(shù)據(jù)為中心,有松耦合,高可用等特點,同時又可以通過對QoS 的設置優(yōu)化傳輸過程,增強傳輸?shù)撵`活性。該中間件可以為應用軟件系統(tǒng)提供了一個有組織的數(shù)據(jù)總線,使得應用軟件在開發(fā)、集成、維護、擴展等各個階段更加方便,使得應用軟件系統(tǒng)在需求變更、功能擴展等各方面的反應更加敏捷,提升指揮信息系統(tǒng)整體集成能力;并通過實時網(wǎng)絡中間件提供的信息傳輸QoS 策略保障實現(xiàn)應用對傳輸過程的最優(yōu)控制,從而更好地支撐多種業(yè)務的信息傳輸需求。

        猜你喜歡
        發(fā)布者中間件代理
        代理圣誕老人
        代理手金寶 生意特別好
        RFID中間件技術及其應用研究
        電子制作(2018年14期)2018-08-21 01:38:10
        基于VanConnect中間件的設計與開發(fā)
        電子測試(2018年10期)2018-06-26 05:54:02
        基于NDN的高效發(fā)布/訂閱系統(tǒng)設計與實現(xiàn)
        廣告發(fā)布者的著作權(quán)審查義務問題研究
        復仇代理烏龜君
        學生天地(2016年23期)2016-05-17 05:47:15
        加權(quán)映射匹配方法的站內(nèi)搜索引擎設計
        中間件在高速公路領域的應用
        一種支持智能環(huán)境構(gòu)建的中間件
        久久久久久无码AV成人影院| 小妖精又紧又湿高潮h视频69 | 日本高清在线播放一区二区| 国产av一区麻豆精品久久| 亚洲av色在线播放一区| 亚洲国产精品一区二区成人片国内 | 日韩乱码人妻无码中文字幕视频| 在线无码国产精品亚洲а∨| 毛片av中文字幕一区二区| 日本免费看一区二区三区| 久久久国产精品| 8x国产精品视频| 欧美性猛交xxxx富婆| 骚小妹影院| 人妻少妇av无码一区二区| 最近中文av字幕在线中文| 久久人人做人人妻人人玩精| 草莓视频中文字幕人妻系列| 精品国产污黄网站在线观看| 国产自拍一区二区三区| 久久亚洲中文字幕精品二区 | 国产精品女同久久免费观看| 精品久久久亚洲中文字幕| 亚洲av综合日韩精品久久| 国产精品一区二区三区播放 | 成人做受黄大片| 国产av永久无码天堂影院| 国产免费一级高清淫日本片| 亚洲AV无码国产精品久久l| 国内精品久久人妻互换| 日韩一本之道一区中文字幕| 人妻少妇看a偷人无码| 一区二区三区在线 | 欧| 97在线视频免费| 亚洲码无人客一区二区三区| 少妇高潮在线精品观看| 欧美精品黑人粗大免费| 热久久亚洲| 色青青女同性恋视频日本熟女 | 久久久久久久久蜜桃| 亚洲国产精品500在线观看|