国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于HLA的分布式網絡仿真組件的研究實現

發布時間:2010-12-6 19:56    發布者:designer
關鍵詞: HLA , 分布式 , 網絡仿真
1 引 言

仿真技術作為人類第三種認識、改造客觀世界的重要手段已經深入應用到各個領域并取得了很多成果,如軍事、電力、以及能源等。在各類應用需求的作用下仿真技術已經發展形成綜合性的專業技術體系,特別是DIS,HLA等技術的發展給仿真的應用帶來了新的機遇。

分布式協同工作網絡系統(Distributed CollaborativeWorking Network System)是指分布在不同平臺上的多個處理系統,通過TCP/IP網絡進行數據交互,完成同一個任務,達到快速解決問題及實現協同工作。作為DIS和HLA仿真系統中底層必備的網絡通信模塊,在實際開發中各Agent封裝自己底層通信模塊,分布式各節點只暴露他對外通信接口,因此使各個節點的通信細節不明確、耦合度很差;造成開發資源的極大浪費,以及開發成本的增加。同時也讓仿真系統開發人員需要花大部分精力對底層通信進行調試,這種工作非常繁瑣,同時也不易進行。本文將重點介紹應用在HLA仿真系統中新型底層通信組件設計方案及實現方法。

2 HLA簡介及組件開發模型

2.1 HLA高層體系結構

分布交互仿真(DIS)技術從產生(SIMENT計劃)到DIS2.X,IEEE1278.X系列協議和ALSP協議制定,進而發展到今天的HLA,都是力圖解決系統建模與系統仿真(Modeling and Simulation,M&S)領域存在的問題:絕大多數仿真器的應用實現較為獨立,仿真器之間的互操作性和重用性差;開發、維護和使用費時且成本高;可驗證性、有效性和置信度較差。HLA就是從體系結構上建立這樣的一個框架,他能盡量涵蓋M&S領域中所涉及的各種不同類型仿真系統,并利于他們之間的互操作性和重用性。同時能利用不斷發展的新技術,來滿足復雜大系統的仿真要求。HLA按照面向對象的思想和方法來構建仿真系統,他的基本思想是不考慮如果有對象構造成員,而是在假設已有成員的情況下考慮如何構建聯邦。采用面向對象的方法來設計、開發和實現方針系統的對象模型(OM)以獲取聯邦的高層次的互操作和重用。雖然HLA本身不能完全實現互操作,但他定義了實現聯邦成員互操作的體系結構和集中,提供靈活的仿真框架。由各聯邦成員和運行支持環境RTI(Run-Time Infrastrueture,運行時間基礎結構或運行支撐環境)一起構成一個分布式仿真系統,用于集成分布的各種聯邦成員,在聯邦運行時提供各種標準的服務,并具有良好的可擴充性。主要包含聯邦管理、聲明管理、對象管理、所有權管理、時間管理和數據分發管理。一個典型的機遇HLA的仿真邏輯結構圖如圖1所示:





2.2 底層網絡通信組件模型

基于組件開發(Component-Based Development,CBD)是當前的最新發展階段,是解決軟件復用和重用的突破點,能更好地滿足目前軟件開發的需求。他是經過封裝的、定義完備接口可發布的軟件包,提供特定的服務,并期望得到外部特定的接口輸入。從某種程度上說他也是一種程序接口,實現系統模塊之問的互操作和重用。每個組件包含一組屬性、事件和方法,組合若干組件就可以生成設計者所需要的特定程序,并能集成到其他軟件產品中。應用程序開發者可以購買現成的組件,他們只要利用現有的組件,再加上自己的業務規則,就可以開發一個應用軟件。總之,組件開發技術使軟件設計變得更加簡單和快捷,并極大地增強軟件的重用能力。他相對系統軟件體系獨立的不關心軟件系統業務實現,因此可以獨立于系統軟件的開發,從而降低軟件調試困難。

本網絡底層通信組件主要為解決基于HLA分布式仿真應用系統中底層網絡通信接口通信,分布各仿真模擬器節點的網絡數據交換,以及網絡通信服務質量(QOS)的保證。提高系統運行的時效、完整的數據報文交換、及數據報文的丟失解決、冗余數據檢測等。下面是為HLA分布式仿真系統設計的網絡通信組件的設計的模型結構圖,各仿真模擬器節點通過他實現對整個模擬交換和互操作,實現協同完成系統模擬仿真工作。仿真模型結構如圖2所示。

3 仿真網絡組件設計與實現

3.1 仿真網絡通信組件的設計

本網絡通信組件采用CORBA設計思想對網絡底層通信協議異步套接字(Socket)進行的封裝,統一實現對整個系統的通信的支持。CORBA(公共對象請求代理架構) 由OMT提出,用于在不同進程(程序)之間,甚至是不同物理機器上的進程(程序)之間通訊。底層技術依靠RPC(遠程過程調用)實現。面向對象的軟件,以數據為中心設計,對象類既具有模塊的封裝性和類屬等特性,還具有繼承特性,極大地提高了類的可擴充性和可再用能力。對象類較之于傳統軟件的功能模塊而另具有的優點是:易于理解,具有完整的語義特征;易于擴充和修改,具有較高的通用性和適應性;易于構造組裝,具有規范的外部接口。





基于CORBA的對象請求代理ORB為客戶機/服務器開發提供了中間件的新格式。把IDL說明編譯為面向對象程序設計語言的實代碼后,客戶可以調用已知對象的操作。在某些應用中,用戶并不了解應用接口編譯信息,但也要求調用對象的操作,這時就要動態調用接口來調用用戶的操作。具體的對象操作的調用實際上是用動態調用接口來完成的。在基于HLA仿真應用系統的各個仿真節點實現互操作,及協同工作完成整個仿真任務都是通過網絡數據進行數據交換,及對數據報文進行解析、分發、操作實現的任務協同,因此對于HLA仿真應用對整個TCP報文或者UDP報文采用統一的格式,例如:對整個系統環境網、系統模擬仿真網絡中傳輸的TCP,UDP報文采用統一的報文標識,如系統仿真時統UDP報文標示為0x1,那么在仿真系統中收到標識為0x1的UDP報文。各個分布式仿真節點將對該報文進行時統系統對時,實現整個仿真系統的時間一致行,保證對整個仿真過程中時間與現實的同步,選擇異步Socket進行自我封裝成能夠符合HLA仿真系統的報文傳輸要求。同時組件的設計安裝面向對象設計的一般過程、軟件工程的要求。

設計如下的組件的結構如圖3所示。





3.2 通訊組件的實現

作為一種通信組件,他不僅需要完成上層HLA仿真主程序給他的發送報文的分發及從其他仿真節點收到的仿真數據報文的解析,還提供對外清晰的交互接口。同時作為仿真工作的一個部件,他需要工作在一個復雜的網絡環境中,在不能很多程度上與占有寶貴的分布式處理機的處理時問,作為網絡組件經常會在某些時間,等待連接、或者等待數據報文而發生嚴重的阻塞,以及需要不斷的監聽端口,從而耗費處理機時間,信號Windows提供了異步SOCKET的API接口使得組件設計能夠一直以異步方式工作的應用層,不斷向網絡層接收和發送數據報文。但是單純實用原始異步SOCKET的API接口仍然不能滿足某些特定的要求,不能很好地融入HLA仿真應用系統中去。因此首先對Windows提供的異步SOCKET套接字CAsyncSocket進行特定封裝。

下面給出部分封裝代碼:





在應用中申請一個組件的主構造類,在該類中去實例化經過封裝的異步套接字來進行底層網絡數據的收發,組件實例可以接收到初始化該組件的操作句柄,完成配合仿真節點完成仿真主題工作,數據的交互,數據的處理等。

下面是主題組件的實體類。






仿真節點只要向組件發送一啟動命令(IniComponent(HWND m_hWnd))組件就將啟動并完成組件的初始化,如組件全局SOCKET的版本請求、版本協商、經過封裝后的異步套接字實例化、SOCKET通信API的實例初始化等。同時組件完成初始化以后,組件將一直開始監聽本機指定端口、并等待接收本仿真節點的消息發送命令等。仿真節點在按照HLA仿真體系中規定的報文協議填寫完成數據報文以后,只需要調用組件對外的接口函數:Send-Data(char *bur,char*pDataCode,char*pIDNode)即能完成把報文發送到指定目的仿真接點,協同完成仿真模擬任務。組件在接收到網絡消息的時候調用OnReceive(intnErrorCode)進行報文的預處理,確定是否需要仿真節點處理該報文。如首先對接收到的報文進行長度分析如果長度很小為系統發送確認報文,就不需要仿真主程序進行處理,為仿真節點主處理器節省處理時間。如果長度超過一定長度,是仿真節點中協同報文的話,組件將首先對報文得到報文標識頭(GetNodeByName(char*IdNode,CString strPeerAddress))然后進行報文解析,并向仿真主程序發送消息函數::PostMessage(…)到主程序中,進行最終的報文處理工作;如界面更新、數據交互處理等,同時組件線程在完成了對解析以后需要對發送方發送解析和成功解析報文,以確認發送方的發送報文別目的節點成功接受并成功解析。

4 結 語

基于HLA高層體系結構的分布式仿真系統中通過分布在不同物理點的分布式仿真節點,借助網絡進行數據報文交互、仿真同步、仿真協同完成對真實世界的模擬。作為仿真系統在必備的通信模塊,在頻繁地設計和不斷地重寫,在一個特定的仿真領域中需不同的仿真網絡通信模塊,重復的開發和設計使得各個仿真節點之間的交互需要不斷地協調協議接口;不統一的設計方案也同樣讓仿真開發人員陷入重復工作的泥潭中。本文針對以上的開發弊端,采用現代軟件設計思想,組件的開發設計模式,使得代碼得以最大程度上的共享,并易于調試。他使得仿真開發人員能夠花最小的時間和代價協調網絡通信模塊,從而集中精力在仿真主題功能的設計和實現上。在實際應用中本仿真組件清晰、而又簡單的對外接口,對基于HLA分布式仿真應用系統功能開發者基本上不需要了解他的設計和實現,就能很好地使用本組件完成通信要求,從而將最大程度上為開發者節省項目時間、項目花費。

組件采用異步SOCKET套接字進行自封裝,隱藏了組件通信如何進行的過程,從而不必要求對HLA傳真系統功能開發者關心底層網絡通信是如何進行的。同時組件工作的異步模式下,對系統不會產生過大的資源浪費,同時也能很好地滿足HLA分布式仿真節點的實時性要求。
本文地址:http://m.qingdxww.cn/thread-44384-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲最大成人综合网| 午夜男人天堂| 亚洲图片另类| 香蕉免费一区二区三区在线观看| 艳妇岳3p| 果冻传媒mv国产陈若瑶主演| qvod电影网| 久久久久九九| 校花爽好大快深点h| 欧美伊人网| 四虎国产成人免费观看| 青青青视频免费线看 视频| 日本不卡在线观看免费v| 亚洲第一页在线视频| 亚洲国产天堂综合一区| 97在线观看免费| 久久99精品国产免费观看| 亚洲国产欧美在线看片| 亚洲国产日韩在线观频| 日本黄网址| 亚洲手机在线观看| 在线国产视频| 国语自产一区视频| 伊人大香线蕉精品在线播放| 欧美人妖猛交| 色无极亚洲影院| 丝瓜视频性福宝| 中文字幕亚洲精品资源网| 寂寞护士中文字幕 mp4| 亚洲一级毛片免费在线观看| 日韩人成免费网站大片| 水蜜桃一区一区三全集| 天启影院在线观看| 777米奇色狠狠俺去啦| 麻豆出品国产AV在线观看| 伊人伊人影院| 一本伊在人香蕉线观新在线| 色香蕉网| 亚洲午夜精品久久久久| 国产亚洲免费观看| 亚洲欧美国产双大乳头|