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

        ?

        數(shù)據(jù)分發(fā)服務(wù)中的全局?jǐn)?shù)據(jù)空間(GDS)的研究與設(shè)計(jì)*

        2010-04-26 05:07:06
        艦船電子工程 2010年4期
        關(guān)鍵詞:發(fā)布者登記表中間件

        李 軍

        (武漢市74223信箱 武漢 430074)

        1 引言

        隨著分布式計(jì)算和網(wǎng)絡(luò)的飛速發(fā)展,分布式應(yīng)用系統(tǒng)在金融、電信、軍事領(lǐng)域中得到廣泛應(yīng)用。為了實(shí)現(xiàn)分布式異構(gòu)網(wǎng)絡(luò)環(huán)境下不同應(yīng)用的互聯(lián)、互通和互操作,一般采用中間件技術(shù)來屏蔽系統(tǒng)平臺(tái)的差異。但是目前中間件產(chǎn)品并不能很好地解決通信的實(shí)時(shí)性、伸縮性和靈活性問題,如當(dāng)前較為流行的CORBA技術(shù),由于它是以對象和服務(wù)為中心,采用了C/S通信模型,通信機(jī)制較為復(fù)雜,數(shù)據(jù)收發(fā)需要建立連接,不能完全滿足系統(tǒng)對實(shí)時(shí)性能的需要。早先的分布式共享內(nèi)存是一種以數(shù)據(jù)為中心交換的經(jīng)典模型,然而這種模型很難在網(wǎng)絡(luò)中高效地執(zhí)行,很難為用戶提供可衡量性和靈活性,特別是很難滿足系統(tǒng)的實(shí)時(shí)性需求。OMG意識(shí)到需要一個(gè)基于以數(shù)據(jù)為中心的發(fā)布/訂閱(DCPS)通信模型[1]的數(shù)據(jù)分發(fā)服務(wù)來滿足分布式實(shí)時(shí)應(yīng)用的需要,提出并最終采納了“OMG-DDS”規(guī)范。為了實(shí)現(xiàn)網(wǎng)絡(luò)中各節(jié)點(diǎn)通信的實(shí)時(shí)性、異步獨(dú)立性和松耦合性,該規(guī)范建立了“全局?jǐn)?shù)據(jù)空間(Global Data Space)[2]”的概念并指定了發(fā)布者和訂閱者以及如何訪問該空間。在DCPS通信模型中,全局?jǐn)?shù)據(jù)空間代替了中心服務(wù)器,用來管理整個(gè)分布式系統(tǒng)中的主題發(fā)布,主題訂閱,節(jié)點(diǎn)信息的維護(hù)以及節(jié)點(diǎn)的關(guān)聯(lián)。因此,GDS的設(shè)計(jì)成為了DCPS通信模型實(shí)現(xiàn)的關(guān)鍵。本論文根據(jù)DDS[3,5]中以數(shù)據(jù)為中心的發(fā)布/訂閱模型,提出一種全局?jǐn)?shù)據(jù)空間的總體框架及各組織結(jié)構(gòu)設(shè)計(jì),最后給出了一些管理策略。

        2 全局?jǐn)?shù)據(jù)空間的概念

        如圖1所示,DDS中以數(shù)據(jù)為中心的發(fā)布/訂閱(DCPS)模型[3~4]建立了一個(gè)“全局?jǐn)?shù)據(jù)空間”的概念,通過全局?jǐn)?shù)據(jù)空間來管理數(shù)據(jù)對象(每個(gè)數(shù)據(jù)對象由“主題(T opic)”和“類型(Type)”共同標(biāo)識(shí),“主題”提供了一個(gè)標(biāo)志符,在全局?jǐn)?shù)據(jù)空間中唯一地標(biāo)識(shí)某些數(shù)據(jù)項(xiàng)?!邦愋汀碧峁┝酥虚g件如何操縱這些數(shù)據(jù)所需的結(jié)構(gòu)信息)的發(fā)布及主題的訂閱。需要說明的是全局?jǐn)?shù)據(jù)空間并不存放實(shí)際數(shù)據(jù),它只管理訂閱主題信息。

        想要向數(shù)據(jù)空間提供主題信息的應(yīng)用程序聲明為“發(fā)布者”,同樣,想從數(shù)據(jù)空間中獲取主題信息的應(yīng)用程序成為“訂閱者”。發(fā)布者(Publisher)負(fù)責(zé)發(fā)布數(shù)據(jù),它可能發(fā)布不同類型的數(shù)據(jù)。訂閱者(Subscriber)負(fù)責(zé)對發(fā)布的數(shù)據(jù)進(jìn)行接收并使數(shù)據(jù)能被接收應(yīng)用所使用(根據(jù)Subscriber的QoS)。主題在邏輯上將發(fā)布者和訂閱者關(guān)聯(lián)起來。發(fā)布者必須能夠讓訂閱者非常清楚地查閱它。主題能夠完成該目的:它將一個(gè)名稱(在領(lǐng)域domain內(nèi)唯一)、數(shù)據(jù)類型(data-type)和數(shù)據(jù)本身的QoS關(guān)聯(lián)在一起,使空間上、時(shí)間上關(guān)系松散甚至毫無關(guān)聯(lián)的發(fā)布者和訂閱者之間產(chǎn)生了互通。

        每當(dāng)發(fā)布者將新主題信息發(fā)送到當(dāng)前節(jié)點(diǎn)的全局?jǐn)?shù)據(jù)空間,中間件就會(huì)把主題信息廣播給所有感興趣的訂閱者。當(dāng)訂閱者能從自己的數(shù)據(jù)空間中找到需要的主題信息時(shí),就向發(fā)布主題節(jié)點(diǎn)發(fā)送訂閱請求信息,發(fā)布者根據(jù)訂閱信息中的訂閱者地址,發(fā)布該主題下的數(shù)據(jù)給指定的訂閱者,兩者即完成數(shù)據(jù)的分發(fā)。

        圖1 DCPS數(shù)據(jù)模型及全局?jǐn)?shù)據(jù)空間

        3 全局?jǐn)?shù)據(jù)空間設(shè)計(jì)分析

        在DDS中間件設(shè)計(jì)中采用基于偵聽的通信機(jī)制,由偵聽者來進(jìn)行信息的分發(fā)并觸發(fā)相關(guān)實(shí)體的動(dòng)作,即各節(jié)點(diǎn)之間通過偵聽者來傳遞發(fā)布和訂閱的主題信息。所有與主題相關(guān)的信息都保存在GDS中,偵聽者收到來自其他節(jié)點(diǎn)的信息后通過與GDS進(jìn)行交互來進(jìn)行主題和QOS的匹配,從而進(jìn)行任務(wù)的分發(fā),通知相關(guān)發(fā)布者/訂閱者調(diào)用與主題相關(guān)聯(lián)的數(shù)據(jù)寫入者/數(shù)據(jù)讀入者進(jìn)行數(shù)據(jù)傳送。

        由于DCPS通信模型采用的是基于主題發(fā)布訂閱機(jī)制[6~7],各節(jié)點(diǎn)之間的交互通過主題來關(guān)聯(lián),而且新節(jié)點(diǎn)的接入和節(jié)點(diǎn)的退出信息也保存在全局?jǐn)?shù)據(jù)空間中,因此全局?jǐn)?shù)據(jù)空間上的主題信息的同步更新則成為了設(shè)計(jì)的關(guān)鍵。GDS一方面與本地發(fā)布者、訂閱者、數(shù)據(jù)讀入者、數(shù)據(jù)寫入者進(jìn)行交互,協(xié)助這些實(shí)體完成主體的發(fā)布或訂閱。另一方面,它為偵聽者進(jìn)行信息處理和分發(fā)提供參考。

        由于傳統(tǒng)C/S通信模式需要一個(gè)中心服務(wù)器來處理并提供數(shù)據(jù),而且如果多個(gè)節(jié)點(diǎn)同時(shí)向服務(wù)器請求,服務(wù)器需要花很長時(shí)間來處理消息,增加了服務(wù)器的負(fù)載,不適合數(shù)據(jù)流大的實(shí)時(shí)系統(tǒng),所以全局?jǐn)?shù)據(jù)空間并不在一個(gè)集中式服務(wù)器中,而是采用分布式的設(shè)計(jì),分布到每個(gè)分布式節(jié)點(diǎn)上。于是,在設(shè)計(jì)GDS的時(shí)候需要考慮以下幾個(gè)方面:

        ?當(dāng)需要發(fā)布主題時(shí),DDS中間件需要查詢GDS是否已有其他節(jié)點(diǎn)發(fā)布過該主題;若沒有,發(fā)布方采取廣播的方式發(fā)送主題到所有接入的節(jié)點(diǎn),各節(jié)點(diǎn)需要同步更新GDS主題信息表,所以各節(jié)點(diǎn)保持一樣的主題信息;

        ?當(dāng)訂閱者訂閱主題時(shí),DDS中間件通過查詢GDS主題信息表得到該主題的發(fā)布者,確定向哪里訂閱;

        ?當(dāng)確定主題發(fā)送者之后,即向發(fā)布者發(fā)送訂閱信息;訂閱信息存儲(chǔ)在發(fā)布者的訂閱登記表中;

        ?當(dāng)某個(gè)主題上有數(shù)據(jù)產(chǎn)生時(shí),需要在GDS訂閱登記表中查詢找到所有該主題的訂閱者,來確定數(shù)據(jù)的接收地;

        ?當(dāng)偵聽者收到訂閱主題或退訂消息時(shí),通過查找GDS確定是否需要保存該信息。

        4 全局?jǐn)?shù)據(jù)空間的設(shè)計(jì)

        基于以上的需求分析,提出了一種基于DCPS模型的發(fā)布訂閱中間件框架并設(shè)計(jì)了全局?jǐn)?shù)據(jù)空間的的組織結(jié)構(gòu)。如圖2所示。

        圖2 基于DCPS模型的發(fā)布訂閱中間框架及數(shù)據(jù)空間結(jié)構(gòu)

        通過以上對DDS規(guī)范的研究和對實(shí)際應(yīng)用的需求分析,GDS主要需要保存所有發(fā)布者的主題信息、本節(jié)點(diǎn)的訂閱信息、需要保存的數(shù)據(jù)、所有訂閱失敗的信息。所以設(shè)計(jì)的GDS由發(fā)布主題表、訂閱登記表、發(fā)布數(shù)據(jù)緩存區(qū)和訂閱失敗隊(duì)列四部分構(gòu)成。

        1)發(fā)布主題表

        定義發(fā)布主題表PT_Table(ID,P_IP,T_QOS)保存所有發(fā)布主題的狀態(tài)信息,其中ID為發(fā)布的主題標(biāo)識(shí);P_IP為發(fā)布者IP地址;T_QOS表示發(fā)布者所提供主題的服務(wù)質(zhì)量,T_QOS主要包括:(1)Durability數(shù)據(jù)持久性,其中 VOLATILE表示非持久性數(shù)據(jù),不需要保存,T RANSIENT表示需要暫時(shí)保存,PERSISTENT表示持久性數(shù)據(jù),需要永久保存;(2)Reliability為傳輸方式的可靠性,Best-effort表示盡力方式傳輸,Reliable表示采用可靠方式傳輸;(3)Priority表示訂閱時(shí)間的優(yōu)先級,值越小其優(yōu)先級越高。

        所有節(jié)點(diǎn)上的發(fā)布主題表保持一致并實(shí)時(shí)更新。對于一個(gè)有多個(gè)分布節(jié)點(diǎn)組成的具有特定功能的系統(tǒng)來說,所有節(jié)點(diǎn)應(yīng)用具備一張一致的發(fā)布主題表,描述了該系統(tǒng)的基本主題狀況。

        2)訂閱登記表

        定義訂閱登記表SR_T able(ID,S_IP,T_QOS)反映當(dāng)前訂閱該節(jié)點(diǎn)的訂閱信息,其中ID表示訂閱主題;S_IP為訂閱者地址;T_QOS表示訂閱方要求主題的服務(wù)質(zhì)量,與PR_Table的 T_QOS參數(shù)和意義相同。

        不同節(jié)點(diǎn)的訂閱登記表各不相同。節(jié)點(diǎn)在訂閱主題時(shí),通過發(fā)布主題來確定提供該訂閱主題的節(jié)點(diǎn);在發(fā)布數(shù)據(jù)時(shí),通過訂閱登記表來確定數(shù)據(jù)該發(fā)往何處。

        3)發(fā)布數(shù)據(jù)緩沖區(qū)

        Data_pool保存由本節(jié)點(diǎn)發(fā)布且需要保存的發(fā)送數(shù)據(jù),即主題的Durability_QOS屬性為TRANSIERNT或PERSISENT的數(shù)據(jù)。其結(jié)構(gòu)如圖3所示,數(shù)組每一項(xiàng)表示同一主題已發(fā)送的數(shù)據(jù),num表示現(xiàn)有數(shù)據(jù)條數(shù);ID為主題標(biāo)識(shí);ptr指向所有主題數(shù)據(jù)的鏈表,鏈表的每一項(xiàng)保存了一條數(shù)據(jù)信息,通過指針指向數(shù)據(jù)的內(nèi)存區(qū);Livaspan表示該主題數(shù)據(jù)需要保存的時(shí)間,若 Livaspan為0xffff則永久保存,否則在規(guī)定的時(shí)刻后刪除該主題下的首條消息;

        GDS根據(jù)每種主題下數(shù)據(jù)的Livaspan來決定何時(shí)更新緩沖區(qū)。

        圖3 發(fā)布數(shù)據(jù)緩沖區(qū)結(jié)構(gòu)示意圖

        4)訂閱失敗隊(duì)列

        Sub_fail_que保存本節(jié)點(diǎn)向其他節(jié)點(diǎn)失敗訂閱的歷史記錄,數(shù)組每一項(xiàng)表示在同一主機(jī)上訂閱失敗的記錄。中間件在收到發(fā)布方開機(jī)信息或間隔一定時(shí)間再進(jìn)行重新訂閱。

        5 GDS管理策略

        GDS是本模型實(shí)現(xiàn)主題訂閱和數(shù)據(jù)分發(fā)的關(guān)鍵。如何更新各節(jié)點(diǎn)上的發(fā)布主題表使其保持動(dòng)態(tài)一致,以及維護(hù)和更新訂閱登記表是GDS管理的核心環(huán)節(jié),所以GDS最后需要一些管理策略來進(jìn)行更新維護(hù)。本文提出了如下策略:

        ?每個(gè)節(jié)點(diǎn)開機(jī)時(shí)向所有節(jié)點(diǎn)廣播開機(jī)信息,收到開機(jī)信息后,各個(gè)節(jié)點(diǎn)檢查自己的訂閱失敗隊(duì)列,將在開機(jī)節(jié)點(diǎn)上訂閱失敗的訂閱消息重新發(fā)給開機(jī)節(jié)點(diǎn),訂閱成功后從隊(duì)列中刪除。

        ?訂閱者變更訂閱記錄時(shí)通知相應(yīng)發(fā)布者更新其訂閱登記表。發(fā)布者變更發(fā)布主題信息時(shí)通知所有節(jié)點(diǎn)更新發(fā)布主題表,以保持發(fā)布主題表的全局一致性。

        ?訂閱方根據(jù)發(fā)布主題表向發(fā)布者發(fā)送訂閱信息,若發(fā)布主題表中沒有相關(guān)發(fā)布記錄,則進(jìn)行廣播訂閱,若訂閱成功就在發(fā)布者的訂閱登記表中登記訂閱記錄。發(fā)布節(jié)點(diǎn)上的GDS在發(fā)布數(shù)據(jù)緩沖區(qū)查找是否存在該訂閱者所訂閱主題的數(shù)據(jù),然后激活相應(yīng)數(shù)據(jù)寫入者將數(shù)據(jù)發(fā)送給訂閱方的相應(yīng)數(shù)據(jù)讀入者。若訂閱失敗就將該訂閱記錄記入本節(jié)點(diǎn)的訂閱失敗隊(duì)列。

        ?節(jié)點(diǎn)離開或失效的情況:當(dāng)節(jié)點(diǎn)離開時(shí),向其他節(jié)點(diǎn)發(fā)送離線消息,其他節(jié)點(diǎn)刪除訂閱登記表中離線節(jié)點(diǎn)的訂閱記錄,并終止與離線節(jié)點(diǎn)間的所有發(fā)布/訂閱關(guān)系,離開節(jié)點(diǎn)同時(shí)清空節(jié)點(diǎn)上的訂閱登記表;各個(gè)節(jié)點(diǎn)通過定期向其他節(jié)點(diǎn)發(fā)送心跳信息來表示該節(jié)點(diǎn)還“活著”。一段時(shí)間內(nèi)收不到某節(jié)點(diǎn)的心跳信息表明該節(jié)點(diǎn)已“死亡”,其他節(jié)點(diǎn)要?jiǎng)h除訂閱登記表中“死亡”節(jié)點(diǎn)的訂閱記錄。

        6 結(jié)語

        傳統(tǒng)的中間件包括CORBA、EJB、DCOM 都采用C/S通信模式,它需要一個(gè)中心服務(wù)器來處理數(shù)據(jù)信息,增加了服務(wù)器的負(fù)載,產(chǎn)生了不可預(yù)測的時(shí)延,不適用于數(shù)據(jù)量大的實(shí)時(shí)系統(tǒng)。而DDS規(guī)范采用的以數(shù)據(jù)為中心的發(fā)布/訂閱(DCPS)模型,根據(jù)主題進(jìn)行點(diǎn)到點(diǎn)消息發(fā)送,實(shí)現(xiàn)了按需發(fā)送。而全局?jǐn)?shù)據(jù)空間概念的提出,實(shí)現(xiàn)了發(fā)布訂閱模型的異步性和松耦合性,同時(shí)本文提出一種全局?jǐn)?shù)據(jù)空間分布式設(shè)計(jì)方案,大大提高了系統(tǒng)的可靠性和可擴(kuò)展性。因此,DDS中間件在高性能、高可靠性、高實(shí)時(shí)的數(shù)據(jù)傳輸中應(yīng)用前景廣闊。

        [1]OMG Data Distribution Service for Real-time Systems Version 1.2,2007

        [2]Giddings V Tutorial on the OMG Data Distribution Service[R].Objective Interface Systems.Inc,2005

        [3]TAO Developer's Guide Excerpt Object Computing,Inc,2007

        [4]Data Distribution Service(DDS)and the RTPS protocol Gerardo Pardo Castellote gerardo@rti.com,2004

        [5]Addressing the Challenges of Tactical Information Management in Net-CentricSystemswith DDS Douglas C.Schmidt Angelo Corsaro Hans van't Hag PrismTech Corporation,2005

        [6]Middleware Solutions for automation application-case RTPS Helsinki University of Technology Seppo Sierla,2003

        [7]Designing and debugging real-time distributed systems By Geoff Revill,RTI,2008

        猜你喜歡
        發(fā)布者登記表中間件
        2021年山西省對口升學(xué)考試獎(jiǎng)勵(lì)照顧考生登記表
        山西省成人高校招生錄取照顧對象登記表
        2020年山西省對口升學(xué)考試獎(jiǎng)勵(lì)照顧考生登記表
        RFID中間件技術(shù)及其應(yīng)用研究
        電子制作(2018年14期)2018-08-21 01:38:10
        基于VanConnect中間件的設(shè)計(jì)與開發(fā)
        電子測試(2018年10期)2018-06-26 05:54:02
        基于NDN的高效發(fā)布/訂閱系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
        山西省對口升學(xué)考試獲獎(jiǎng)考生照顧加分登記表
        廣告發(fā)布者的著作權(quán)審查義務(wù)問題研究
        加權(quán)映射匹配方法的站內(nèi)搜索引擎設(shè)計(jì)
        中間件在高速公路領(lǐng)域的應(yīng)用
        国产一区二区三区在线观看免费| 国产影片免费一级内射| 亚洲专区路线一路线二网| 可免费观看的av毛片中日美韩| 老子影院午夜伦不卡| 中文成人无码精品久久久不卡| 99精品成人片免费毛片无码| 国产成年无码久久久久下载| 亚州中文字幕乱码中文字幕| 免费在线观看视频播放 | 成人精品天堂一区二区三区 | 丰满少妇愉情中文字幕18禁片| 国产国拍亚洲精品永久69| 国产国语一级免费黄片| 性色av色香蕉一区二区蜜桃| 精品国产免费一区二区三区香蕉| 午夜无码国产理论在线| 亚洲国产精品500在线观看| 成人偷拍自拍在线视频| av男人的天堂亚洲综合网| 欧美亚洲日本国产综合在线美利坚| 欧美gv在线观看| 2017天天爽夜夜爽精品视频| 亚洲伊人伊成久久人综合| 国产三a级三级日产三级野外| 99久久精品午夜一区二区| 亚洲乱码日产精品bd在线观看| 日本一区免费喷水| 蜜桃夜夜爽天天爽三区麻豆av| 岳丰满多毛的大隂户| 国产在线精品一区二区在线看| 欧美日韩免费一区中文字幕| 日韩熟女精品一区二区三区视频| 老熟女老女人国产老太| 国产69精品久久久久久久| 国产午夜精品理论片| 有码中文字幕一区二区| 日韩在线精品视频一区| 欧洲美女黑人粗性暴交| 一区二区无码中出| 亚洲av高清在线一区二区三区 |