HLA多联邦桥接工具的实现结构
2009-04-26周君张洋
周 君 张 洋
摘要:比较HLA联邦网络互联的三种实现方式的优缺点,并阐述了联邦桥接工具的理论结构,它可以支持具有不同联邦对象模型的对等联邦间的互操作,进行多联邦间对象属性和交互的信息交换。
关键词:HLA;中间件;桥接成员;FBT
1引言
HLA为仿真应用的开发者提供了构造和描述仿真应用的通用框架,它试图解决仿真中的两大关键问题:提高仿真应用之间的互操作和促进模型在不同领域的重用。HLAm提供的分布式网络平台——RTI(Run TimeInfrastructure)使各种仿真子系统集成在一起仿真运行成为可能的同时,还提供了很多接口调用函数,将实际网络操作和独立的分布式操作封装起来,实现系统的透明化。
2仿真系统互操作通用方式
2.1HLA邦员代理法
两个相互独立的联邦成员进行数据传输时,需要由其各自的联邦代理进行数据交换。该方法思路简单,但是多联邦之间需要一一对接,代码重复大,资源泊费多。
2.2中间件方法
与邦员代理方法基本相同,只是将各自的联邦代理整合为一个中间件。中间件做出符合TCP/IP网格仿真协议的数据单元与HLA的数据格式之间的相互转换,但是多联邦之间就需要多个中间件,仍然造成资源浪费。
2.3桥接器方法
这是一种通用中间件方法,可以实现想定中多个联邦之间的互操作,与以上两种方法比较,该方法更具有通用性。
3FBT理论结构
构建HLA多联邦系统需要保证分布式虚拟环境的时空一致性,特别是数据流和控制流的逻辑正确性,桥接成员(Bridge Fed-eration)是实现多联邦互联的一种简单直观的方法。联邦桥接工具(Federation BridgeTool,FBT),其思路就是通过向导自动生成桥接成员,快速地将已有的联邦进行互联。因此。桥接成员的原理即为桥接联邦工具设计与实现的理论依据。本节主要介绍一下桥接成员的基本原理。
使用桥接成员可以支持具有不同联邦对象模型(LOM)的对等联邦间的互操作,进行多联邦间对象属性和交互的信息交换。桥接成员还可以支持使用不同版本的运行支撑框架(RTI)的联邦之间的互联,最大限度地重用已开发的联邦仿真系统。构建桥接联邦的最基本原则是:
桥接成员只能以星形的、线性的、链状的方式连接联邦(如图1b所示),而不能以环形方式连接联邦(如图1a所示)。
桥接成员的组成通常包含如下两部分:
1)代理(Surrogate)部件
代理部件作为成员加入联邦,并代表它所加入的联邦与其它联邦进行交互。代理能将其所表现的联邦的相关性质反射到桥接另一侧的联邦,同时把从转换部件接收的其它联邦的信息发送给它所加入的联邦。
2)转换部件
转换部件通过将桥接两侧对应的消息(如服务、对象、属性和交互)进行关联和映射,在两个FOM间进行转换。而且也可以按需要执行另外的处理,这样可以使用守护(guard)的功能,如过滤掉一些安全和保密信息。
根据联邦在网络中所处的位置不同,以及网络功能和性能的不同,从通信效率和计算开销考虑,桥接成员可以有不同的实现结构,即集中式和分布式,分别如图2a、图2b所示。
4结论
联邦桥接工具可以实现HLA/RTI模式下的多联邦网络互联,可根据仿真功能需求选择互连方式。目前,桥接联邦工具已应用在多个联邦集成的复杂仿真系统中,也可以实现仿真模拟器与仿真平台的数据交换。