Information Technology Reference
In-Depth Information
callback is received, the LRC delivers it to the local federate by calling the
corresponding callback function provided by the local federate.
18.4.2
Local Service
The LS operates as a messaging broker for federates. On initialization, the
RTIambassador instance in each federate calls LFS's createResource func-
tion to create a new LRI for communication purposes. A federate's LRC
communicates with the outside world through its corresponding LRI
and the LIS dei nes miscellaneous grid service interfaces for accessing
the LRI, such as an interaction-sending operation invoked by other feder-
ates' LRIs to exchange an interaction and an unsubscription notii cation
operation invoked by the DMS to notify an unsubscription made by
another federate.
As introduced previously, the LRI has six modules and each of them
except the callback module corresponds to one of the management
services. The FM module communicates with the FMS to provide HLA
federation management services to the federate. The DM module commu-
nicates with the Declaration Management Service (DMS) to provide HLA
declaration management services to the federate. It keeps subscription
and publication information of the LRI's corresponding federate as well
as relevant subscription and publication information of other federates.
This subscription and publication information ensures correct message
exchanges between federates' LRIs. The OOM module communicates
with the OOMS to provide HLA object and ownership management ser-
vices to the federate. It is responsible for directly exchanging messages
with other federates' LRIs with the help of the DM and DDM modules.
The TM module communicates with the TMS to provide HLA time man-
agement services to the federate. The DDM module communicates with
the Data Distribution Management Service (DDMS) to provide HLA data
distribution management services to the federate. It keeps the relevant
overlapping information of regions to ensure correct message exchanges
between federates' LRIs.
The callback module maintains two callback queues, namely the TSO
queue and non-TSO queue. The TSO queue keeps time-stamp-order mes-
sages while the non-TSO queue keeps receive-order messages as well as
system callbacks such as timeRegulationEnabled and timeAdvanceGrant.
Other modules insert callbacks in the corresponding queues of the call-
back module. The callback module works closely with the TM module to
ensure the correct delivery sequence of TSO messages to the federate.
Originally, we were considering whether each of the modules could be
implemented as a separate grid service. Realizing that it will make the
framework performance too low because of the close communications
between modules, we decided to bundle all modules in the LS and imple-
ment each module as a separate Java class. An LIS grid service invocation
 
Search WWH ::




Custom Search