一种基于hla的通用分布式数据记录装置和方法

文档序号:7768497阅读:213来源:国知局
专利名称:一种基于hla的通用分布式数据记录装置和方法
技术领域
本发明涉及计算机仿真技术中基于HLA的数据记录装置,本发明还涉及应用该 装置的记录方法。
背景技术
仿真技术是以相似理论、控制理论、计算机技术、信息技术及其应用领域的专 业技术为基础,以计算机和各种物理效应设备为工具,利用系统模型对实际的或设想的 系统进行动态试验研究的一门综合性技术。仿真技术具有学科面广、综合性强、应用领 域宽、无破坏性、可多次重复、安全、经济、可控、不受气候条件和场地空间的限制等 诸多独特优点,这是其它技术所无法比拟的。随着复杂大系统仿真应用的不断扩展以及 仿真器的物理分布性的限制,分布式仿真技术应运而生;同时计算机网络技术的发展, 也使得构建大规模分布式的仿真应用得以可行。HLA(high level architecture,高层体系结 构)作为新一代分布式仿真标准,目标是要提高不同仿真间的互操作性及仿真、组件的 可重用性。它在许多方面改进了原有的体系结构(如DIS协议,ALSP等),具有广泛适 用性、可伸缩性及用户自定制性等优势。仿真数据记录是基于HLA的分布式仿真研究的重点内容,仿真数据记录是实现 仿真重演、结果分析和评估的基础。现有的数据记录工具多采用集中式的方式,即采用 单一数据记录成员的形式加入仿真联邦,订购并记录所有数据。这同HLA采用的组播 通信机制以及数据过滤机制而获得的减少通讯数据量的优势相矛盾,并容易造成网络拥 塞,产生数据丢失,不能满足大规模仿真系统的需求。然而随着基于HLA仿真应用的不 断深入,仿真系统的规模越来越大,运行周期越来越长,仿真运行产生海量数据,传统 的集中式数据记录模式会造成仿真数据丢失、影响仿真系统性能和精度等问题,进而制 约仿真规模的扩展及HLA仿真的应用。

发明内容
本发明的目的是提供一种基于HLA的通用分布式数据记录装置和方法,以克服 现有的集中式数据记录工具容易造成网络拥塞,产生数据丢失,不能满足大规模仿真系 统需求的缺陷。本发明的装置包括计算机网络1、中央控制单元2和多个数据记录单元 3;所述中央控制单元2包括数据记录任务初始分配模块Si、数据记录任务运行时调度模 块S2和控制端通信模块S4,每个数据记录单元3由数据接收存储模块S3和存储端通信 模块S6组成;中央控制单元2的控制端通信模块S4和数据记录单元3的存储端通信模块 S6与计算机网络1相联以传输数据和控制命令;数据记录任务初始分配模块Sl 实现读取并解析联邦对象模型文档数据文件内 容,在仿真开始运行前将仿真对象类记录任务和交互类记录任务分配给各个数据记录单 元3 ;数据记录任务运行时调度模块S2 根据各个数据记录单元3的负载信息在仿真运行时对其数据记录任务进行动态调整,将负载超过阀值的数据记录单元3的部分数据 记录任务转移给负载较轻的数据记录单元3 ;数据接收存储模块S3 在仿真运行时接收通过RTI传输的对象实例数据和交互 实例数据,并压缩存储为二进制数据文件;控制端通信模块S4 用于数据记录单元3向中央控制单元2汇报自身负载信息 和调度执行情况,以及中央控制单元2向数据记录单元3发布初始记录任务分配信息和运 行时记录任务调度指令信息。本发明还提供基于HLA的通用分布式数据记录方法,它通过下述步骤实现 一、数据记录任务初始分配模块Sl在仿真开始运行前将仿真的对象类记录任务和交互类 记录任务分配给各个数据记录单元3; 二、仿真运行开始;三、各个数据记录单元3记录 仿真数据;四、各记录单元3上报自身负载信息;五、中央控制单元2逐个检查数据记 录单元3的负载;六、是否存在重载的数据记录单元;结果为“是”则执行步骤七、计 算该数据记录单元3重载程度,确定需迁移的数据量和记录任务;八、确定轻载的数据 记录单元3来接收迁移出的记录任务;九、相关的数据记录单元3增加、取消相应的记录 任务;十、返回步骤三,各个数据记录单元3继续进行仿真数据的记录;十一、仿真运 行结束,步骤六的结果为“否”则返回步骤三的开始端。本发明在仿真网络的计算节点上配置一个中央控制单元和多个数据记录单元, 建立中央控制单元与其他各个数据记录单元的通信连接;中央控制单元解析联邦对象模 型文档数据文件,在仿真开始运行前按照主机性能将仿真的对象类记录任务和交互类记 录任务分配给各个数据记录单元;在仿真运行开始后,中央控制单元根据各个数据记录 单元的负载信息动态调度数据记录任务;本发明与现有技术相比有益效果是(1)实现 对基于HLA的大规模仿真系统运行产生的海量数据的完整记录;(2)解析符合标准规范 的联邦对象模型文档数据文件,适用于基于HLA标准构建的不同仿真系统,具有通用 性;(3)可根据实际系统情况配置数据记录单元的数量,并且在仿真运行时可动态调度 数据记录任务,具有灵活性。由于本发明能够动态平衡各个数据记录单元的负载,克服了现有的集中式数据 记录工具容易造成网络拥塞,产生数据丢失,不能满足大规模仿真系统需求的缺陷。


图1是本发明的结构示意图,
图2是本发明的工作流程示意图3为本发明中解析联邦对象模型文档数据文件的流程图; 图4为本发明中的数据排序示意图。
具体实施例方式具体实施方式
一下面结合图1具体说明本实施方式。本发明的装置包括计算 机网络1、中央控制单元2和多个数据记录单元3 ;所述中央控制单元2包括数据记录任 务初始分配模块Si、数据记录任务运行时调度模块S2和控制端通信模块S4,每个数据记 录单元3由数据接收存储模块S3和存储端通信模块S6组成;中央控制单元2的控制端通信模块S4和数据记录单元3的存储端通信模块S6与计算机网络1相联以传输数据和控制 命令;数据记录任务初始分配模块Sl 实现读取并解析联邦对象模型文档数据文件内 容,在仿真开始运行前将仿真对象类记录任务和交互类记录任务分配给各个数据记录单 元3 ;数据记录任务运行时调度模块S2 根据各个数据记录单元3的负载信息在仿真 运行时对其数据记录任务进行动态调整,将负载超过阀值的数据记录单元3的部分数据 记录任务转移给负载较轻的数据记录单元3 ;数据接收存储模块S3 在仿真运行时接收通过RTI (Run-Time Infrastaicture,运
行时底层支撑)传输的对象实例数据和交互实例数据,并压缩存储为二进制数据文件;控制端通信模块S4:用于数据记录单元3向中央控制单元2汇报自身负载信息 和调度执行情况,以及中央控制单元2向数据记录单元3发布初始记录任务分配信息和运 行时记录任务调度指令信息。图1中单线箭头代表本发明内部数据交互关系,双线箭头代表仿真系统内部数 据交互关系。
具体实施方式
二 下面结合图1具体说明本实施方式。本实施方式与实施方式 一的不同点是中央控制单元2还包括数据整合输出模块S5,数据整合输出模块S5将多 个数据记录单元3输出的多个二进制数据文件进行数据排序和重复数据剔除,并整合输 出为一个文件。
具体实施方式
三下面结合图2具体说明本实施方式。本实施方式通过下述步 骤实现一、数据记录任务初始分配模块Sl在仿真开始运行前将仿真的对象类记录任务 和交互类记录任务分配给各个数据记录单元3; 二、仿真运行开始;三、各个数据记录 单元3记录仿真数据;四、各记录单元3上报自身负载信息;五、中央控制单元2逐个检 查数据记录单元3的负载;六、是否存在重载的数据记录单元;结果为“是”则执行步 骤七、计算该数据记录单元3重载程度,确定需迁移的数据量和记录任务;八、确定轻 载的数据记录单元3来接收迁移出的记录任务;九、相关的数据记录单元3增加、取消相 应的记录任务;十、返回步骤三,各个数据记录单元3记录仿真数据;十一、仿真运行 结束,步骤六的结果为“否”则返回步骤三的开始端。本实施方式包括运行前准备阶段、运行时记录及管理阶段和后处理三个阶段。 在仿真运行前的准备阶段,首先分别在仿真网络上的计算节点上配置一个中央控制单元 和多个数据记录单元,然后建立中央控制单元与其他各个数据记录单元的通信连接,接 下来中央控制单元解析联邦数据执行文件,并按照主机性能将仿真对象类记录任务和交 互类记录任务分配给各个数据记录单元,最后各个数据记录单元加入HLA仿真联邦。在 仿真运行时的记录及管理阶段,各个数据记录单元通过网络和RTI接收仿真数据,并压 缩存储为二进制文件,同时各个数据记录单元将自身负载信息汇报给中央控制单元,中 央控制单元根据这些负载信息在必要时调度相关数据记录单元的记录任务。在本发明第一步骤前的解析联邦对象模型文档数据文件,是实现本实施方式通 用性的关键。解析符合IEEE 1516标准的联邦对象模型文档数据文件中的对象类及其属 性信息的流程如图3所示,而解析交互类及其参数信息的流程与其类似。
解析联邦对象模型文档数据文件的过程如下101、开始;102、载入FDD (联 邦对象模型文档数据)文件;103、获取顶级对象类节点的信息;104、读取当前节点下 一个子节点的信息;105、判断是否为属性类信息?结果为“是”,则执行步骤106、 读取属性名称及类型;然后返回步骤104的开始端;步骤105的结果为“否”,则执行 步骤107、判断是否为对象类信息?结果为“是”,则返回步骤104的开始端;结果为
“否”,则结束。
具体实施方式
四下面结合图4具体说明本实施方式。本实施方式与实施方式 三的不同点是它还包括步骤十二、在仿真运行结束后,中央控制单元将多个数据记录 单元输出的多个二进制数据文件整合输出为一个文件。将多个数据记录单元输出的二进制数据文件整合输出时需要进行数据排序,由 于在基于HLA的仿真系统中不存在通用的和全局的时钟,因而本实施方式中数据排序的 依据是数据记录单元的仿真时间。对于记录时刻相同的数据包,同一数据文件中按接收 的先后顺序排序,多个数据文件中则按文件读取的先后顺序排序。两个数据文件进行整 合时的数据排序示意如图4所示,其中菱形块代表数据包,块内数字代表该包在当前文 件中的位置,块上方数字代表该数据包的记录时刻。
权利要求
1.一种基于HLA的通用分布式数据记录装置,其特征在于它包括计算机网络(1)、 中央控制单元(2)和多个数据记录单元(3);所述中央控制单元(2)包括数据记录任务初 始分配模块(Si)、数据记录任务运行时调度模块(S2)和控制端通信模块(S4),每个数据 记录单元(3)由数据接收存储模块(S3)和存储端通信模块(S6)组成;中央控制单元(2) 的控制端通信模块(S4)和数据记录单元(3)的存储端通信模块(S6)与计算机网络(1)相 联以传输数据和控制命令;数据记录任务初始分配模块(Si)实现读取并解析联邦对象模型文档数据文件内 容,在仿真开始运行前将仿真对象类记录任务和交互类记录任务分配给各个数据记录单 元⑶;数据记录任务运行时调度模块(S2)根据各个数据记录单元(3)的负载信息在仿真 运行时对其数据记录任务进行动态调整,将负载超过阀值的数据记录单元(3)的部分数 据记录任务转移给负载较轻的数据记录单元(3);数据接收存储模块(S3)在仿真运行时接收通过RTI传输的对象实例数据和交互实 例数据,并压缩存储为二进制数据文件;控制端通信模块(S4)用于数据记录单元(3)向中央控制单元(2)汇报自身负载信 息和调度执行情况,以及中央控制单元(2)向数据记录单元(3)发布初始记录任务分配信 息和运行时记录任务调度指令信息。
2.根据权利要求1所述的一种基于HLA的通用分布式数据记录装置,其特征在于中央 控制单元(2)还包括数据整合输出模块(S5),数据整合输出模块(S5)将多个数据记录单元 (3)输出的多个二进制数据文件进行数据排序和重复数据剔除,并整合输出为一个文件。
3.利用权利要求1所述的一种基于HLA的通用分布式数据记录方法,其特征在于它 通过下述步骤实现一、数据记录任务初始分配模块(Si)在仿真开始运行前将仿真的 对象类记录任务和交互类记录任务分配给各个数据记录单元(3) ; 二、仿真运行开始; 三、各个数据记录单元(3)记录仿真数据;四、各记录单元(3)上报自身负载信息; 五、中央控制单元(2)逐个检查数据记录单元(3)的负载;六、是否存在重载的数据记录 单元;结果为“是”则执行步骤七、计算该数据记录单元(3)重载程度,确定需迁移的 数据量和记录任务;八、确定轻载的数据记录单元(3)来接收迁移出的记录任务;九、 相关的数据记录单元(3)增加、取消相应的记录任务;十、返回步骤三,各个数据记录 单元(3)记录仿真数据;十一、仿真运行结束,步骤六的结果为“否”则返回步骤三的 开始端。
4.根据权利要求3所述的一种基于HLA的通用分布式数据记录方法,其特征在于它 还包括步骤十二、在仿真运行结束后,中央控制单元将多个数据记录单元输出的多个二 进制数据文件整合输出为一个文件。
5.根据权利要求3所述的一种基于HLA的通用分布式数据记录方法,其特征在于在 第一步骤前的解析联邦对象模型文档数据文件的过程如下101、开始;102、载入FDD 文件;103、获取顶级对象类节点的信息;104、读取当前节点下一个子节点的信息; 105、判断是否为属性类信息?结果为“是”,则执行步骤106、读取属性名称及类型; 然后返回步骤104的开始端;步骤105的结果为“否”,则执行步骤107、判断是否为对 象类信息?结果为“是”,则返回步骤104的开始端;结果为“否”,则结束。
全文摘要
一种基于HLA的通用分布式数据记录装置和方法,本发明涉及计算机仿真技术中基于HLA的数据记录装置和方法。它克服了现有的集中式数据记录工具容易造成网络拥塞,产生数据丢失,不能满足大规模仿真系统需求的缺陷。本发明的装置包括计算机网络、中央控制单元和多个数据记录单元;中央控制单元实现初始分配数据记录任务、运行时动态调度数据记录任务以及事后数据整合输出等功能;数据记录单元实现记录仿真数据、接收调度指令并调整数据记录任务以及上报负载信息等功能。方法包括下述步骤各个数据记录单元记录仿真数据;中央控制单元逐个检查数据记录单元的负载;确定需迁移的数据量和记录任务;相关的数据记录单元增加、取消相应的记录任务。
文档编号H04L29/08GK102014137SQ201010584968
公开日2011年4月13日 申请日期2010年12月13日 优先权日2010年12月13日
发明者李伟, 杨明, 焦松, 王松艳, 霍炬, 马萍 申请人:哈尔滨工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1