Back to CERTI User Documentation index
Executing HLA simulation

CERTI executables

CERTI comes with two main executables: RTIA and RTIG.

dot_inline_dotgraph_1.png

certi_user_execute

If ones want to properly execute an HLA simulation using CERTI one must: (FIXME more detail to come).

  1. configure PATH
  2. store .fed (or .xml) FOM file in the search path of the rtig
    See Also
    CERTI FOM file search algorithm
  3. run rtig,
    See Also
    RTIG
  4. configure HOST/PORT/PROXY,
  5. run federations, rtia is started automatically.

CERTI environment variables

CERTI uses a set of environment variables which may influence its execution behavior. Those variables may be set on federate execution location or on RTIG (a.k.a. The CERTI CRC) location.

VariableUsed byDescription
CERTI_HOME RTIGthe CERTI installation base directory. This is used by the RTIG in order to look for FOM files (see RTIG).
CERTI_FOM_PATH RTIGthe CERTI Federation Object Model search path. The variable may contain a ":" separated list of paths. This is used by the RTIG in order to look for FOM files (see RTIG).
CERTI_HOST RTIAmachine on which RTIG is running. As soon as it starts the RTIA will try to connect to the RTIG running on CERTI_HOST (or "localhost" if the variable is not defined or void) (see RTIA).
CERTI_TCP_PORT RTIG, RTIA TCP port used for RTIA/RTIG communications (default: 60400)
CERTI_UDP_PORT RTIG, RTIA UDP port used for RTIA/RTIG communications (default: 60500)
CERTI_HTTP_PROXY RTIA HTTP proxy address in the format http://host:port. See HTTP tunneling.
http_proxy RTIA System-wide HTTP proxy address used if CERTI_HTTP_PROXY is not defined.
CERTI_NO_STATISTICS RTIA if set, do not display service calls statistics

RTIG: CERTI RunTime Infrastructure Gateway

The CERTI RunTime Infrastructure Gateway (RTIG) is a process which coordinate the HLA simulation with CERTI, there should be at least one rtig process for each federation. However a single RTIG may be used for several federations. The command line usage of the RTIG is following:

rtig [-v 2] [-l @IP|hostname]
  • -v (optional) verbosity level
    • 0 -> no output
    • 1 -> small amount
    • 2 -> show fed parse
  • -l (optional) listening address

Once the RTIG is launched an HLA Federate may interact with the RTI. In fact a federate does not talk to the RTIG directly but it uses its RTIA. RTIG is listening to RTIA connection on TCP port:

  1. 60400 or,
  2. the value of environment variable CERTI_TCP_PORT if it is defined

The RTIG exchange messages with the RTIA in order to satify HLA request coming from the Federate. In particular RTIG is responsible for giving to the Federate (through its RTIA) the FOM file needed to create or join the federation. When a federate calls the CreateFederationExcution API RTIG tries to open FOM file from different predefined places, using various environment variables:

  1. Bare filename considered as a path provided through FEDid_name
  2. Use CERTI federation object model serach PATH getenv(CERTI_FOM_PATH) + FEDid_name.
    CERTI_FOM_PATH environment variable may contains a list of path separated with ':'.
  3. Using the CERTI_HOME environment variable getenv(CERTI_HOME)+"/share/federations/"+ FEDid_name
  4. installation place plus FEDid_name
    PACKAGE_INSTALL_PREFIX + "/share/federation/" + FEDid_name
  5. on Unix "/usr/local/share/federation/" + FEDid_name for backward compatibility reason.

RTIA: CERTI RunTime Infrastructure Ambassador

The CERTI RunTime Infrastructure Ambassador (RTIA) is a process which is automatically launched by the federate as soon as its RTIambassador is created. The command line usage of the RTIA is following:

rtia [-v] [-p <port>]
  • -v (optional) verbose, display more information
  • -p (optional) tcp port to be used to communicate with FederateAmbassador
RTIA will try to connect to RTIG process on the machine specified in CERTI_HOME (see CERTI environment variables) environment variable. If it is void or not set then he will try to connect to localhost. RTIA connect to TCP port specified by CERTI_TCP_PORT and UDP port specified by CERTI_UDP_PORT.

Sample federate: Billiard

Open a windows command prompt and run the RTIG.

 rtig
rtig.png

Open another windows command prompt and run the billard program.

 billard -n 1 fTest FTest.fed
billard.png

Generated on Fri Feb 28 2014 16:33:59 for CERTIUserDocumentation by doxygen 1.8.6