Setup and Configuration

Microsoft Message Queuing (MSMQ)

As MSMQ is the transport mechanism of the Interface, a detailed explanation is required to ensure it is set up correctly.

The Interface sends messages over MSMQ in compressed and encrypted packets. The responsibility of successfully delivering the packet to the destination queue lies within the MSMQ architecture, which in turn relies on the network connectivity provided between the source and destination. Since ships send data over satellite and this connectivity can be lost at any time, MSMQ holds the messages at the source until it re-establishes connectivity and then sends it across, thereby ensuring a successful transfer of every packet.

The MSMQ component needs to be installed on every machine that runs either of the 2 components of the Interface. Since it is NOT installed by default, it has to be installed later from the Windows Components under Add/Remove Programs. During the installation process, it is essential that ALL sub controls of MSMQ are installed, and that it is NOT Active Directory Integrated.

A typical one-way communications requires the queues to be created only on the Receiving end, logically this would imply shore side. But if the solution requires a two-way communication, a queue also needs to be created onboard to handle any messages coming in. At shore side, a queue should be created for each ship.

To create a queue, access Computer Management, select Services and Applications.
  1. Expand Message Queuing, and right-click Private Queues.

  2. Select New, Private Queue. The queue is to remain non transactional.

Since use of MSMQ is not limited to Fleet Management, It is recommended using intuitive queue names to reflect the locations they represent. For example, a fleet with three ships called MV Sun, MV Moon and MV Cloud, the queue names could be FMsun, FMmoon, and FMcloud. However, to meet an operator’s compliance guidelines, the names can be set as desired.

At ship-side, when using two-way communications, the queue is expected to be utilized for administrative system messages. Fidelio Cruise naming standard for this queue is FMdata, but like other shore-side queue names, this can be changed to meet a company’s needs.

At queue creation, journaling must be enabled on all FM queues and validate that the queues were created as Non-transactional. With the exception of the queue names, all properties must be set as seen below.

WARNING:

The option to make a queue non-transactional appears ONLY at the time of creation, it cannot be modified after creation.
When setting up the Interface Servers/PCs that runs the two components of the FM Transfer Interface, one must ensure that there is proper connectivity between the source and destination PCs. This can include troubleshooting routing and firewall.