## 7 Experimentation of ArTIC-MS: Federation with OCEAN
User A creates the CSAR package, which wraps the _scenario generator_ service template and the relevant executable artifacts, and uploads it to the service repository. The relevant metadata are also uploaded to the service registry (see Figure 14 steps 1-3);
2. User B logs into the OCEAN platform and executes a keywords-based query to discover the M&S services required for simulating the addressed scenario. Specifically,  
Figure 12: Federated MSaaS Infrastructure for the simulation of a maritime defense scenario. Figure 13: OpenStack-based OCEAN implementation. the service registry is inquired to identify the services whose metadata satisfy the search criteria specified by User B (see Figure 14 step 4). The _naval simulator_ service is available in the local infrastructure. Thanks to the capabilities provided by the federated service discovery component of ArTIC-MS, User B is able to discover the _scenario generator_ hosted by the federated infrastructure;
3. User B retrieves the CSAR descriptions of the _scenario generator_ M&S service provided by User A and stored in the ArTIC-MS repository (see Figure 14 step 5);
4. The TOSCA template contained in the CSAR package is translated to a HOT template (see Figure 14 step 6);
5. The generated HOT template is configured and deployed to the OCEAN infrastructure. 6. User B uses the visual environment provided by OCEAN to specify and configure the orchestration and, finally, executes the simulation (see Figure 14 steps 7-8). The _scenario generator_ service provided by User A is available as a.iso virtual image to be deployed on top of a virtual machine. The server configuration includes two different network interfaces. A fragment of the TOSCA-based YAML service template is provided in Listing 1, while a fragment of the HOT-based YAML template yielded as output by the HEAT translator is provided in Listing 2. Figure 14: Federation of ArTIC-MS and OCEAN. ```
``` tosca_definitions_version:tosca_simple_yaml_1_0 description:scenariogenerator topology_template:... mode_templates: virtual_machine: type:SoftwareComponent artifacts: vm_image: file:images/service-image.iso type:tosca.artifacts.Deployment.Image.VM.iso requirements: host:server # VM deployment interfaces: Standard: create:vm_image server: type:tsca.nodes.Compute capabilities: host: profiles: disk_size:15 GB num_cpus:1 mem_size:4096 MB...
```

Listing 1: TOSCA Service Template. ```
heat_template_version:2013-05-23 description:> TOSCA_Scenario_Generator... virtual_machine_create_deploy: type:OS::Heat::SoftwareDeployment properties: config: get_resource:virtual_machine_create_config server: get_resource:server flavor:m1.medium user_data_format:SOFTWARE_CONFIG network: - port:{get_resource:port1} - port:{get_resource:port2} virtual_machine_create_config: type:OS:Heat::SoftwareConfig properties: group:script config: get_file:vm_image... outputs:{}
```

Listing 2: HOTService Template. The next section discusses the experiment's results. #### Results and Discussion

The experimentation has demonstrated the feasibility of the proposed approach and also showed how ArTIC-MS might support the development of a MSaaS-based distributed simulation in a federation of heterogeneous cloud infrastructure. The capabilities provided by the proposed conceptual architecture allow the simulation developer to discover and retrieve remote M&S services available in federated infrastructure. The adoption of TOSCA for describing services in the cloud in a vendor- and technology-independent fashion constitutes a relevant opportunity for supporting any MSAaS efforts. TOSCA might constitute the backbone of MSAaS implementations that increase the portability and interoperability degrees of M&S services in federated heterogeneous infrastructure, also fostering service reuse in different application scenarios.