国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

異構(gòu)系統(tǒng)一體化仿真中間件系統(tǒng)實(shí)現(xiàn)研究

2021-08-06 06:25田立業(yè)
火力與指揮控制 2021年6期
關(guān)鍵詞:橋接中間件異構(gòu)

劉 劍,衛(wèi) 翔,田立業(yè)

(海軍潛艇學(xué)院,山東 青島 266199)

0 引言

分布式聯(lián)合作戰(zhàn)仿真需要將各種異構(gòu)仿真系統(tǒng)連接成一個有效的仿真整體,共同完成多任務(wù)多協(xié)同的仿真任務(wù),但原有各系統(tǒng)仿真結(jié)構(gòu)封閉,特別是開發(fā)語言又不盡相同,給系統(tǒng)的聯(lián)通和操作帶來了很大困擾。按照聯(lián)合系統(tǒng)一體化仿真的功能需求,對其進(jìn)行有效升級的一種可行方法是通過分布式仿真中間件系統(tǒng)[1-2],將多異構(gòu)仿真系統(tǒng)進(jìn)行有效聯(lián)通而無需深入改造各系統(tǒng)內(nèi)部,從而大大減少仿真資源消耗,降低系統(tǒng)結(jié)構(gòu)復(fù)雜度和維護(hù)升級成本。

針對系統(tǒng)一體化仿真中的多開發(fā)語言、通信協(xié)議設(shè)計以及綜合任務(wù)協(xié)調(diào)等問題,對異構(gòu)系統(tǒng)一體化仿真中間件系統(tǒng)的結(jié)構(gòu)功能進(jìn)行了分析,采用Thrift 跨語言服務(wù)架構(gòu)建立異構(gòu)系統(tǒng)一體化仿真中間件系統(tǒng)[3],為實(shí)物仿真系統(tǒng)、半實(shí)物仿真系統(tǒng),以及虛擬仿真系統(tǒng)等異構(gòu)系統(tǒng)提供仿真中間件集成、協(xié)議轉(zhuǎn)換、綜合導(dǎo)演控制與調(diào)度服務(wù),實(shí)現(xiàn)異構(gòu)系統(tǒng)的一體化綜合仿真的有效運(yùn)行。

1 分布式異構(gòu)系統(tǒng)仿真中間件系統(tǒng)設(shè)計需求

異構(gòu)仿真系統(tǒng)是指在結(jié)構(gòu)、協(xié)議、模型粒度和開發(fā)語言等多方面存在不同之處的仿真系統(tǒng)。這些仿真系統(tǒng)在初始設(shè)計時立足本系統(tǒng)功能要求,在系統(tǒng)結(jié)構(gòu)和對外交互方面形成了內(nèi)部界限,難以擴(kuò)展和升級。在一體化仿真新需求下將這些系統(tǒng)連接,需對異構(gòu)系統(tǒng)聯(lián)通的諸多問題進(jìn)行有效優(yōu)化解決,否則各系統(tǒng)改造升級將變得復(fù)雜和成本高昂。需要解決的問題主要包括:

1)不同開發(fā)設(shè)計語言下各異構(gòu)系統(tǒng)節(jié)點(diǎn)通信開發(fā)設(shè)計,例如采用java、C++等設(shè)計語言的客戶端與服務(wù)端的通信構(gòu)造協(xié)議設(shè)計;

2)各異構(gòu)系統(tǒng)節(jié)點(diǎn)的仿真統(tǒng)一控制協(xié)調(diào)設(shè)計,包括仿真時間域和空間域的統(tǒng)一,仿真效能的一致性評估判斷等;

3)各異構(gòu)系統(tǒng)節(jié)點(diǎn)的多仿真任務(wù)的支持設(shè)計,需要將多異構(gòu)節(jié)點(diǎn)組合,組織和并行多仿真任務(wù)。

針對不同的開發(fā)設(shè)計語言、不同的交互協(xié)議以及仿真任務(wù)同步控制需求,采用中間件系統(tǒng)無疑是以較小代價有效實(shí)現(xiàn)異構(gòu)系統(tǒng)一體化仿真的有效途徑。中間件系統(tǒng)可以提供對底層網(wǎng)絡(luò)、硬件、操作系統(tǒng)和編程語言異構(gòu)性的屏蔽,同時還為分布式應(yīng)用與服務(wù)提供一致的支撐計算模型。能夠較好地完成分布式異構(gòu)系統(tǒng)的集成、互操作,并保證這些系統(tǒng)的可移植性,是當(dāng)前分布式應(yīng)用開發(fā)和集成的主要手段。

現(xiàn)有仿真通信中間件系統(tǒng)通常采用protobuf[4]等通信協(xié)議解決跨語言系統(tǒng)通信問題,或者采用DDS 數(shù)據(jù)分發(fā)機(jī)制[5],建立以數(shù)據(jù)為中心的發(fā)布訂閱模型,實(shí)現(xiàn)分布式系統(tǒng)中數(shù)據(jù)實(shí)時、可靠、高效分發(fā)問題,這些系統(tǒng)的開放性和擴(kuò)展性不強(qiáng),難以滿足跨語言和跨平臺的一體化仿真綜合需求。Apache Thrift 是一個跨語言的開源服務(wù)部署框架,具有開發(fā)速度快、接口維護(hù)簡單、學(xué)習(xí)成本低、跨語言支持和穩(wěn)定等特點(diǎn),并已經(jīng)廣泛應(yīng)用于Cassandra、Hadoop、HBase、Facebook 以及百度、美團(tuán)等公司[6-7]。因此,可以利用Thrift 服務(wù)框架,構(gòu)建分布式異構(gòu)系統(tǒng)一體化仿真中間件系統(tǒng)。

2 異構(gòu)系統(tǒng)仿真中間件系統(tǒng)組成架構(gòu)

異構(gòu)仿真系統(tǒng)中間件系統(tǒng)主要包括異構(gòu)系統(tǒng)橋接轉(zhuǎn)換單元和綜合控制單元。綜合控制單元與各異構(gòu)系統(tǒng)通過橋接轉(zhuǎn)換單元構(gòu)成客戶端/服務(wù)端的C/S(Client/Server)系統(tǒng)結(jié)構(gòu)?;谥虚g件系統(tǒng)橋接轉(zhuǎn)換單元,各異構(gòu)系統(tǒng)采用Thrift IDL(Interface Description Language)接口描述語言進(jìn)行信息交互,并在綜合控制單元的協(xié)同控制下完成仿真的協(xié)調(diào)推進(jìn)。系統(tǒng)結(jié)構(gòu)如圖1 所示。

圖1 異構(gòu)系統(tǒng)聯(lián)通中間件系統(tǒng)結(jié)構(gòu)組成

2.1 Thrift IDL 接口通信

Thrift 軟件從下向上可分為傳輸層、協(xié)議層、處理層和服務(wù)層。異構(gòu)系統(tǒng)一體化仿真對處理層和協(xié)議層進(jìn)行按需處理。對于處理層,各異構(gòu)系統(tǒng)在仿真中間件系統(tǒng)支持下,采用IDL 按本系統(tǒng)開發(fā)設(shè)計語言生成系統(tǒng)信息交互所需的數(shù)據(jù)結(jié)構(gòu)代碼,例如各系統(tǒng)的狀態(tài)信息、所維護(hù)的內(nèi)部仿真實(shí)例信息以及仿真交互信息等。IDL 支持的數(shù)據(jù)類型包括基本類型、復(fù)雜結(jié)構(gòu)體類型(struct)以及容器類型(list、set、map),可以滿足復(fù)雜異構(gòu)系統(tǒng)信息交互數(shù)據(jù)定義需求。

對于協(xié)議層,其負(fù)責(zé)網(wǎng)絡(luò)傳輸數(shù)據(jù)的序列化和反序列化,其協(xié)議方式包括JSON、XML、二進(jìn)制數(shù)據(jù)等[8]。異構(gòu)系統(tǒng)一體化仿真采用二進(jìn)制傳輸協(xié)議定義數(shù)據(jù)傳輸格式以節(jié)約帶寬提高傳輸效率。此外,在調(diào)試聯(lián)測階段還可采用基于文本類型的JSON 協(xié)議,通過腳本解析信息,便于問題定位和狀態(tài)測試。采用Thrift IDL 定義系統(tǒng)間信息交互結(jié)構(gòu)以及相應(yīng)協(xié)議,使得異構(gòu)系統(tǒng)一體化仿真通過底層網(wǎng)絡(luò)封裝、傳輸和序列化方式進(jìn)行系統(tǒng)間數(shù)據(jù)通信,大大降低開發(fā)設(shè)計語言不同所導(dǎo)致的系統(tǒng)信息交互復(fù)雜性。

2.2 橋接轉(zhuǎn)換單元

橋接轉(zhuǎn)換單元是各異構(gòu)系統(tǒng)相互之間以及異構(gòu)系統(tǒng)與綜合控制單元之間信息交互的橋梁。由于異構(gòu)系統(tǒng)設(shè)計研制之初并沒有考慮對外信息交互的拓展需求,因此,為有效達(dá)成異構(gòu)系統(tǒng)一體化仿真,采用橋接轉(zhuǎn)換單元進(jìn)行信息交互在技術(shù)可行性以及系統(tǒng)升級維護(hù)成本上能達(dá)到優(yōu)化平衡,有效減少系統(tǒng)內(nèi)部深度改造的高昂成本。具體功能如下:

2.2.1 協(xié)議轉(zhuǎn)換

采用Thrift IDL 原語對異構(gòu)仿真系統(tǒng)內(nèi)部交互信息實(shí)施編碼和解碼。包括將外部仿真信息進(jìn)行轉(zhuǎn)錄和解釋后傳入至異構(gòu)系統(tǒng)內(nèi)部,并將異構(gòu)系統(tǒng)內(nèi)部仿真狀態(tài)信息,按照外部IDL 格式編碼后發(fā)送至綜合控制單元。

2.2.2 心跳守護(hù)

由異構(gòu)系統(tǒng)內(nèi)部主控程序驅(qū)動,定時向外部系統(tǒng)發(fā)送異構(gòu)系統(tǒng)節(jié)點(diǎn)當(dāng)前工作狀態(tài),便于外部系統(tǒng)進(jìn)行狀態(tài)檢測和相應(yīng)上線/離線控制。

2.2.3 仿真服務(wù)交互

通過協(xié)議轉(zhuǎn)換,將異構(gòu)系統(tǒng)內(nèi)部的仿真實(shí)例狀態(tài)信息或服務(wù)請求信息傳送給綜合控制單元;接收綜合控制單元的服務(wù)回調(diào)信息,將總體仿真控制命令、外部系統(tǒng)仿真狀態(tài)以及服務(wù)計算結(jié)果等信息通過協(xié)議轉(zhuǎn)換模塊,發(fā)送至異構(gòu)系統(tǒng)內(nèi)部。

需要說明的是,根據(jù)各異構(gòu)仿真系統(tǒng)通信機(jī)制不同,橋接轉(zhuǎn)換單元可以有不同的結(jié)構(gòu)形式,主要包括集中式和分布式兩種。

集中式指客戶端/服務(wù)端的CS 結(jié)構(gòu)方式,這類異構(gòu)系統(tǒng)在通信協(xié)議方式和類型可能有多種形式,例如,較為常用的Socket 通信或DDS 通信。此時橋接轉(zhuǎn)換單元以信息交互單元形式加入至各異構(gòu)系統(tǒng),由綜合控制單元協(xié)調(diào)異構(gòu)系統(tǒng)內(nèi)部主控單元,驅(qū)動異構(gòu)系統(tǒng)內(nèi)部各分系統(tǒng)協(xié)同工作。

分布式仿真方式通常有DIS 或HLA 兩種。以HLA 為例,橋接轉(zhuǎn)換單元加入至異構(gòu)系統(tǒng)成為RTI聯(lián)邦成員,由橋接轉(zhuǎn)換單元轉(zhuǎn)換外部綜合控制單元的允許仿真步進(jìn)信息,由RTI 服務(wù)器協(xié)調(diào)異構(gòu)聯(lián)邦各分系統(tǒng)聯(lián)邦成員協(xié)調(diào)推進(jìn),并將RTI 聯(lián)邦成員交互信息按照訂閱/發(fā)布機(jī)制進(jìn)行信息轉(zhuǎn)發(fā)。

2.3 綜合控制單元

由于組成一體化仿真系統(tǒng)的原有各異構(gòu)系統(tǒng)在仿真精度、仿真結(jié)構(gòu)、仿真控制邏輯上都有定制的個性化需求,就需要綜合控制單元這樣的中心樞紐控制節(jié)點(diǎn)進(jìn)行全局的控制,而不是將仿真同步控制等功能分解至各異構(gòu)系統(tǒng)內(nèi)部,那樣無疑會增加系統(tǒng)升級難度和結(jié)構(gòu)復(fù)雜度。綜合控制單元通過橋接轉(zhuǎn)換單元協(xié)調(diào)各異構(gòu)系統(tǒng)仿真同步,監(jiān)測系統(tǒng)內(nèi)各成員的仿真狀態(tài),生成系統(tǒng)綜合仿真全局態(tài)勢數(shù)據(jù),實(shí)施全局仿真控制,提供系統(tǒng)仿真服務(wù)。主要功能包括:

2.3.1 仿真想定編輯與生成

編輯仿真想定,生成初始仿真態(tài)勢并發(fā)送至各異構(gòu)系統(tǒng)節(jié)點(diǎn),各節(jié)點(diǎn)收到初始態(tài)勢后按照內(nèi)部業(yè)務(wù)邏輯在綜合控制單元導(dǎo)控下,進(jìn)行仿真計算和結(jié)果輸出。

2.3.2 協(xié)議轉(zhuǎn)換與心跳守護(hù)

對異構(gòu)系統(tǒng)與綜合控制單元之間的信息交互進(jìn)行協(xié)議轉(zhuǎn)換;接收異構(gòu)系統(tǒng)定時發(fā)送的節(jié)點(diǎn)工況信息,實(shí)施狀態(tài)實(shí)時監(jiān)測并保持異構(gòu)仿真系統(tǒng)與綜合控制單元的通信長連接,同時,對異常離線成員進(jìn)行系統(tǒng)異常判斷并進(jìn)行狀態(tài)保護(hù)。

2.3.3 仿真計算服務(wù)

采用服務(wù)器集群形式對異構(gòu)系統(tǒng)一體化仿真提供所需的仿真計算服務(wù),服務(wù)類型包括基礎(chǔ)性服務(wù)和功能性服務(wù)兩類?;A(chǔ)性服務(wù)實(shí)現(xiàn)對異構(gòu)系統(tǒng)一體化仿真的綜合控制功能,例如,仿真對象的管理、仿真推進(jìn)控制等;功能性服務(wù)為各異構(gòu)系統(tǒng)節(jié)點(diǎn)提供定制的業(yè)務(wù)邏輯仿真計算,保證仿真模型粒度一致性和重要核心仿真模型的可重用與可擴(kuò)展,例如,實(shí)體坐標(biāo)遞推計算、戰(zhàn)場環(huán)境分析等。

2.3.4 數(shù)據(jù)冗余備份

為異構(gòu)系統(tǒng)一體化仿真提供系統(tǒng)仿真數(shù)據(jù)備份和控制單元服務(wù)切換。由于綜合控制單元是異構(gòu)系統(tǒng)一體化仿真網(wǎng)絡(luò)的主控與核心,需要對控制單元進(jìn)行數(shù)據(jù)冗余設(shè)計,采用zookeeper[9-10]分布式協(xié)同服務(wù),在綜合控制單元故障情況下,實(shí)時備份和同步數(shù)據(jù),并按需進(jìn)行主從控制單元的冗余切換。

2.3.5 負(fù)載均衡

集群服務(wù)下對異構(gòu)系統(tǒng)一體化仿真全系統(tǒng)網(wǎng)絡(luò)實(shí)施負(fù)載均衡服務(wù)治理。仿真運(yùn)行時,根據(jù)中間件系統(tǒng)綜合控制單元服務(wù)器的實(shí)時負(fù)載信息,采用軟負(fù)載均衡方法,例如平均分配(輪詢)法,選擇和調(diào)度異構(gòu)系統(tǒng)任務(wù)仿真的服務(wù)分配,減輕可能的多仿真任務(wù)下的服務(wù)器壓力。

3 異構(gòu)仿真系統(tǒng)中間件系統(tǒng)服務(wù)與實(shí)現(xiàn)形式

作為一體化仿真系統(tǒng)的Thrift 服務(wù)端,由綜合控制單元實(shí)現(xiàn)中間件系統(tǒng)的仿真服務(wù)功能,為各異構(gòu)節(jié)點(diǎn)提供一體化仿真所需的仿真服務(wù)支撐。綜合控制單元仿真服務(wù)從頂至下可劃分為功能層、基礎(chǔ)層和支撐層。其仿真服務(wù)結(jié)構(gòu)層次如圖2 所示。

圖2 綜合控制單元組成與服務(wù)

3.1 功能層服務(wù)

功能層服務(wù)為各異構(gòu)系統(tǒng)節(jié)點(diǎn)提供定制的或?yàn)榫S護(hù)一體化仿真時空邏輯一致性的功能性服務(wù),主要包括作戰(zhàn)環(huán)境分析、態(tài)勢遞推、傳感器探測等。其中,環(huán)境仿真包括大氣環(huán)境仿真和水聲環(huán)境仿真,對電磁、聲波等能量在環(huán)境中的傳播特性進(jìn)行統(tǒng)一的建模描述;武器彈道仿真包括魚雷、導(dǎo)彈等武器搜索目標(biāo)、跟蹤目標(biāo)和命中目標(biāo)全程彈道進(jìn)行一致性的彈道邏輯描述;傳感器探測仿真對在環(huán)境分析基礎(chǔ)上的雷達(dá)、聲吶等傳感器探測發(fā)現(xiàn)目標(biāo)的物理過程進(jìn)行仿真描述。

各異構(gòu)系統(tǒng)節(jié)點(diǎn)利用Thrift RPC 遠(yuǎn)程服務(wù)框架,通過服務(wù)接口調(diào)用仿真所需的各項仿真計算,而無需關(guān)注底層通信細(xì)節(jié),可以最大程度地維護(hù)一體化仿真的一致性,避免諸如武器彈道仿真細(xì)節(jié)和粒度不一致導(dǎo)致的時空邏輯矛盾。同時由綜合控制單元服務(wù)器集群統(tǒng)一進(jìn)行仿真計算,可較好地提高仿真運(yùn)行效率,實(shí)現(xiàn)仿真模型資源的可重用和統(tǒng)一維護(hù)。

3.2 基礎(chǔ)層服務(wù)

基礎(chǔ)層服務(wù)為各異構(gòu)系統(tǒng)節(jié)點(diǎn)提供全系統(tǒng)綜合仿真控制服務(wù),主要包括:

3.2.1 服務(wù)注入與發(fā)現(xiàn)服務(wù)

綜合控制單元對服務(wù)端服務(wù)進(jìn)行注冊與發(fā)布,異構(gòu)系統(tǒng)橋接轉(zhuǎn)換單元可以通過zookeeper 的watcher 對服務(wù)自動發(fā)現(xiàn),也可使用curator[11]第三方工具實(shí)現(xiàn)服務(wù)的注冊、發(fā)現(xiàn)和訂閱。服務(wù)注冊與發(fā)現(xiàn)的內(nèi)容包括:服務(wù)地址、服務(wù)端口、服務(wù)名稱、服務(wù)交互參數(shù)結(jié)構(gòu)類型等,其結(jié)構(gòu)參數(shù)類型由系統(tǒng)Thrift IDL 定義。

采用服務(wù)注入發(fā)現(xiàn)的好處在于將綜合控制單元與異構(gòu)系統(tǒng)的通信解耦,從而實(shí)現(xiàn)對服務(wù)中心的靈活配置和動態(tài)連接,可在服務(wù)接口不變的條件下,實(shí)施仿真服務(wù)相關(guān)模型升級重構(gòu)而不影響各異構(gòu)系統(tǒng)。

3.2.2 全局命名服務(wù)

全局命名服務(wù)為系統(tǒng)仿真對象資源進(jìn)行唯一標(biāo)識。綜合控制單元利用Zookeeper 的屬性分層結(jié)構(gòu)和子節(jié)點(diǎn)的順序維護(hù)能力,對仿真對象進(jìn)行全局唯一性的ID 標(biāo)識。雖然依賴本地持久化數(shù)據(jù)庫主鍵,可以唯一標(biāo)識一個數(shù)據(jù)資源,但是在綜合控制單元服務(wù)集群下,分布式全局命名服務(wù)可以支持并發(fā)和負(fù)載均衡的要求,提供多仿真任務(wù)的實(shí)時在線運(yùn)行。

3.2.3 時間與數(shù)據(jù)同步服務(wù)

綜合控制單元生成統(tǒng)一的全系統(tǒng)仿真時間,例如仿真想定設(shè)置的某一天文時間,并將帶有時間戳的信息發(fā)送至異構(gòu)系統(tǒng)節(jié)點(diǎn),驅(qū)動異構(gòu)系統(tǒng)主控程序進(jìn)行相應(yīng)的仿真控制。

數(shù)據(jù)同步是指利用類似Redis 分布式緩存技術(shù)[11-12],對所有仿真過程關(guān)鍵數(shù)據(jù)進(jìn)行主從同步備份。在仿真結(jié)束后,數(shù)據(jù)從緩存持久化至本地數(shù)據(jù)庫以作為仿真數(shù)據(jù)記錄,同時所備份數(shù)據(jù)可支持綜合控制單元故障下的切換控制以進(jìn)行系統(tǒng)運(yùn)行的再恢復(fù)。

3.2.4 全局對象管理

對一體化仿真中的所有實(shí)體對象進(jìn)行全生命周期管理,建立全局對象實(shí)時快照,并定時通過數(shù)據(jù)同步存儲至數(shù)據(jù)庫系統(tǒng)。全局對象的綜合態(tài)勢信息可以通過附屬顯示系統(tǒng)顯示,進(jìn)而對綜合仿真狀態(tài)實(shí)時監(jiān)測顯示。同時,各異構(gòu)系統(tǒng)通過遠(yuǎn)程服務(wù)接口按需調(diào)用所需實(shí)體對象服務(wù),包括生成實(shí)體、刪除實(shí)體、獲取所需類型實(shí)體快照和歷史數(shù)據(jù)等以用于內(nèi)部仿真計算。這相比綜合控制單元采用全局?jǐn)?shù)據(jù)廣播形式,其能夠有效減輕系統(tǒng)通信負(fù)載。

3.2.5 全局沖突消解

全局沖突消解對于維護(hù)一體化仿真物理過程正確性具有非常重要的意義。因?yàn)榉抡孢\(yùn)行過程中,受異構(gòu)系統(tǒng)模型粒度和精度不匹配以及不同時空域的影響,綜合仿真的時序環(huán)節(jié)可能會存在沖突之處,這就需要綜合控制單元實(shí)施全局層面的沖突消解,主要包括:

1)異構(gòu)節(jié)點(diǎn)實(shí)體業(yè)務(wù)坐標(biāo)系不匹配導(dǎo)致的沖突和消解。例如,大地球面坐標(biāo)、平面直角坐標(biāo)以及地理絕對位置和相對位置轉(zhuǎn)換導(dǎo)致的對象實(shí)體坐標(biāo)與姿態(tài)不一致情況。可由綜合控制單元建立統(tǒng)一的坐標(biāo)系,對各實(shí)體的位置和姿態(tài)進(jìn)行統(tǒng)一遞推修正,或由異構(gòu)節(jié)點(diǎn)通過調(diào)用綜合控制單元的遠(yuǎn)程服務(wù)用于相關(guān)仿真計算。

2)作戰(zhàn)仿真能力沖突與消解,這表現(xiàn)在沖突雙方對相關(guān)作戰(zhàn)過程仿真建模描述不匹配。例如,異構(gòu)仿真系統(tǒng)在傳感器探測時,因?yàn)槟P土6群途炔煌?,?dǎo)致同相互探測雙方發(fā)現(xiàn)能力不協(xié)調(diào)。此時由綜合控制單元對雙方仿真能力進(jìn)行調(diào)節(jié),必要條件下強(qiáng)制干預(yù)和調(diào)整雙方的仿真性能指標(biāo)范圍。

3)作戰(zhàn)仿真效能的沖突與消解。這表現(xiàn)在沖突雙方在仿真效能評估模型算法和指標(biāo)不一致。例如,武器命中的毀傷達(dá)成效果、毀傷位置存在多方判定矛盾的情況。此時由綜合控制單元實(shí)施仲裁,對沖突涉及對象的毀傷效能實(shí)施綜合評估,并將結(jié)果發(fā)送至相關(guān)異構(gòu)節(jié)點(diǎn)。

3.2.6 仿真推進(jìn)控制

對各異構(gòu)仿真節(jié)點(diǎn)的時間推進(jìn)實(shí)施協(xié)調(diào)和控制。由于不同異構(gòu)節(jié)點(diǎn)和不同仿真對象對仿真步長要求不一,例如,導(dǎo)彈等高速運(yùn)動和艦船平臺等低速運(yùn)動仿真對象時間步長不同,此時綜合控制單元提供仿真同步推進(jìn),根據(jù)各異構(gòu)仿真節(jié)點(diǎn)要求推進(jìn)到的仿真時間進(jìn)行判別和協(xié)調(diào),確定系統(tǒng)仿真時間同步點(diǎn),控制各仿真節(jié)點(diǎn)是否允許推進(jìn),并對相關(guān)仿真對象運(yùn)動和姿態(tài)平滑,在此基礎(chǔ)上進(jìn)一步實(shí)現(xiàn)一體化仿真的加速、減速、暫停與恢復(fù)等仿真控制。

3.3 支撐層服務(wù)

綜合控制單元除了操作系統(tǒng)底層支撐外,還需要Zookeeper、分布式緩存和Thrift 的基礎(chǔ)軟件對各項功能和服務(wù)進(jìn)行支撐。

Zookeeper 提供配置維護(hù)、域名服務(wù)、分布式同步等一致性服務(wù)。為異構(gòu)系統(tǒng)一體化仿真的全局標(biāo)識、服務(wù)注入和發(fā)現(xiàn)等功能提供支撐。為仿真服務(wù)集群實(shí)現(xiàn)提供了有效配置和管理手段,提高了系統(tǒng)多任務(wù)仿真支撐能力。

分布式緩存Redis 提供高效率并發(fā)數(shù)據(jù)的讀取與管理機(jī)制,不僅提供了主從數(shù)據(jù)的備份功能,還實(shí)現(xiàn)了高并發(fā)條件下的數(shù)據(jù)吞吐,為系統(tǒng)仿真提供了基礎(chǔ)數(shù)據(jù)支持。

Thrift 不僅提供了跨語言的網(wǎng)絡(luò)通信手段,還提供了遠(yuǎn)程服務(wù)調(diào)用基本架構(gòu)。異構(gòu)系統(tǒng)一體化仿真將復(fù)雜的網(wǎng)絡(luò)通信抽象為遠(yuǎn)程過程調(diào)用,其調(diào)用形式如同調(diào)用本地子程序,使開發(fā)人員無需關(guān)注網(wǎng)絡(luò)通信底層細(xì)節(jié),提高了工作效率。

4 異構(gòu)系統(tǒng)適用性改造

異構(gòu)系統(tǒng)為實(shí)現(xiàn)一體化仿真必需對內(nèi)部系統(tǒng)進(jìn)行適用性改造。基于異構(gòu)系統(tǒng)仿真中間件系統(tǒng),重點(diǎn)對原系統(tǒng)導(dǎo)演控制單元和仿真計算單元實(shí)施功能性升級。以集中式C/S 結(jié)構(gòu)的異構(gòu)仿真系統(tǒng)為例,對其改造說明如下:

4.1 信息通道適用性修改

異構(gòu)系統(tǒng)導(dǎo)演控制單元增加與橋接轉(zhuǎn)換單元信息交互通道,實(shí)現(xiàn)異構(gòu)系統(tǒng)與外部仿真想定、仿真態(tài)勢、仿真控制等信息接收;仿真計算單元增加與橋接轉(zhuǎn)換單元信息交互通道,實(shí)現(xiàn)與外部綜合控制單元的功能層和基礎(chǔ)層仿真服務(wù)交互,其他各單元保持現(xiàn)有信息通道不變,以與原系統(tǒng)仿真功能兼容。

4.2 控制流程適用性修改

異構(gòu)系統(tǒng)導(dǎo)演控制單元對原仿真控制流程進(jìn)行修改,在原系統(tǒng)獨(dú)立控制基礎(chǔ)上通過增加系統(tǒng)仿真模式判斷(獨(dú)立或互聯(lián))、外部仿真指令受控處理等相應(yīng)調(diào)整,從而按外部綜合控制單元要求實(shí)施想定申請與分發(fā)、驅(qū)動和控制內(nèi)部系統(tǒng)仿真全程。

4.3 仿真計算服務(wù)適用性修改

異構(gòu)系統(tǒng)仿真計算單元保留原仿真計算服務(wù)功能并增加外部綜合控制單元仿真服務(wù)調(diào)用處理。異構(gòu)互聯(lián)模式下通過服務(wù)切換控制和屬性參數(shù)封裝等手段,兼容原系統(tǒng)內(nèi)部仿真計算服務(wù)交互接口,通過與外部綜合控制單元交互查詢和獲取外部仿真對象信息,調(diào)用環(huán)境、探測與武器仿真等仿真服務(wù)功能,將相應(yīng)對象屬性和交互參數(shù)信息向系統(tǒng)內(nèi)部各單元分發(fā),保障異構(gòu)系統(tǒng)內(nèi)部仿真正常運(yùn)行,實(shí)現(xiàn)基于異構(gòu)系統(tǒng)互聯(lián)的一體化仿真。

通過上述改造,異構(gòu)系統(tǒng)原有結(jié)構(gòu)和信息交互總體不變,原仿真想定編輯和各項仿真計算功能得以保留,從而在不影響原系統(tǒng)功能條件下實(shí)現(xiàn)各異構(gòu)系統(tǒng)聯(lián)通而無需深入改造異構(gòu)系統(tǒng)各內(nèi)部成員,實(shí)現(xiàn)異構(gòu)系統(tǒng)獨(dú)立仿真和基于仿真中間件系統(tǒng)的一體化仿真,充分發(fā)揮系統(tǒng)適用性改造效益。

5 異構(gòu)仿真系統(tǒng)中間件系統(tǒng)運(yùn)行流程

異構(gòu)系統(tǒng)一體化仿真中間件系統(tǒng)運(yùn)行流程包括了綜合控制單元和異構(gòu)節(jié)點(diǎn)兩部分,對其主要流程描述如圖3 所示。

圖3 異構(gòu)系統(tǒng)聯(lián)通中間件系統(tǒng)結(jié)構(gòu)組成

5.1 準(zhǔn)備階段

綜合控制單元啟動后,首先進(jìn)行服務(wù)注冊與發(fā)布,并寫入提供服務(wù)的服務(wù)器網(wǎng)絡(luò)地址信息;異構(gòu)系統(tǒng)節(jié)點(diǎn)通過橋接轉(zhuǎn)換單元發(fā)現(xiàn)服務(wù),并在負(fù)載均衡的協(xié)調(diào)下連接預(yù)定的控制單元服務(wù)器,發(fā)送心跳信息,確定雙方工作狀態(tài)。

綜合控制單元由用戶調(diào)用綜合態(tài)勢生成模塊,讀取數(shù)據(jù)庫生成綜合仿真初始態(tài)勢,利用保存的長連接向異構(gòu)節(jié)點(diǎn)發(fā)送初始仿真態(tài)勢;異構(gòu)節(jié)點(diǎn)收到信息后初始化本地態(tài)勢,向綜合控制單元發(fā)送實(shí)體初始化信息,綜合控制單元收到后進(jìn)行對象注冊生成仿真實(shí)體對象。

5.2 運(yùn)行階段

仿真開始后,異構(gòu)仿真節(jié)點(diǎn)進(jìn)行本地仿真計算,調(diào)用時間推進(jìn)控制服務(wù),向控制單元發(fā)出仿真推進(jìn)申請,綜合控制單元根據(jù)各節(jié)點(diǎn)申請時間,確定時間同步點(diǎn)控制各節(jié)點(diǎn)仿真同步推進(jìn)。

仿真過程中綜合控制單元維護(hù)全局仿真對象,對數(shù)據(jù)進(jìn)行緩存和同步,對異構(gòu)仿真過程中的坐標(biāo)轉(zhuǎn)換和仿真能力不匹配等沖突進(jìn)行消解,將消解的結(jié)果在對象屬性或交互參數(shù)上更新,異構(gòu)節(jié)點(diǎn)通過調(diào)用遠(yuǎn)程服務(wù)獲取相關(guān)參數(shù),引入系統(tǒng)內(nèi)部模型進(jìn)行更新,使得整個異構(gòu)系統(tǒng)在業(yè)務(wù)能力上保持匹配。

綜合控制單元在滿足仿真結(jié)束的條件下停止仿真推進(jìn),在用戶操作下保存相關(guān)數(shù)據(jù)并向各異構(gòu)節(jié)點(diǎn)發(fā)出仿真停止命令,各節(jié)點(diǎn)進(jìn)行內(nèi)部數(shù)據(jù)保存并斷開連接以結(jié)束仿真。

6 結(jié)論

本文分析了異構(gòu)系統(tǒng)一體化仿真的功能需求,利用Thrift IDL 建立包括橋接轉(zhuǎn)換單元和綜合控制單元的仿真中間件系統(tǒng),分析了中間件系統(tǒng)橋接轉(zhuǎn)換單元和綜合控制單元的組成與功能,集成Zookeeper 和Thrift RPC 建立面向一體化仿真的綜合服務(wù)層次架構(gòu)。在異構(gòu)系統(tǒng)一體化仿真中間件系統(tǒng)的支持下,各異構(gòu)仿真應(yīng)用系統(tǒng)可以有效連接和協(xié)同仿真,滿足異構(gòu)系統(tǒng)一體化仿真的綜合性仿真需求,實(shí)現(xiàn)跨語言和跨平臺的異構(gòu)仿真系統(tǒng)互聯(lián)互通,并可有效支持多異構(gòu)節(jié)點(diǎn)和多仿真任務(wù)的實(shí)時在線仿真。

猜你喜歡
橋接中間件異構(gòu)
ETC拓展應(yīng)用場景下的多源異構(gòu)交易系統(tǒng)
離散異構(gòu)線性多智能體系統(tǒng)的輸出一致性
試論同課異構(gòu)之“同”與“異”
FPGA互連測試中的反饋橋接故障覆蓋問題
Microchip推出首款車載以太網(wǎng)音視頻橋接(AVB)全集成解決方案
我國自主可控中間件發(fā)展研究
凝聚與鋪張——孫紹振教授《以丑、呆為美》兩岸同課異構(gòu)教學(xué)觀摩后記
板栗嫁接不親和挽救方法
利用橋接技術(shù)防治蘋果樹腐爛病
以實(shí)力證明 用事實(shí)說話