Combining Web Services to Manage Real-Time Navigation Data Distribution

Like many other disciplines, Positioning Navigation and Timing (PNT) data distribution has various requirements that depend on the use and criticality for its consumers, and satisfying these multiple varying needs from a single common source can be a challenge. In particular, the need to manage the distribution of PNT data on a ship, where some systems require various real-time accuracy and latency, as well as different sets of data, is critical. One example is the US Navy's Navigation Sensor System Interface (NAVSSI) that integrates the various ship sensor data, computes a single accurate PNT solution, and distributes it in real-time to other shipboard users. The problem arises when the number of users continues to grow and change, which has led to the creation of multiple PNT data messages in order to isolate the changes from affecting other users. Once a user implements a particular PNT data structure, there is resistance to change it unless it is for their benefit and someone else pays for it. The ideal solution would be to build a single variable superset of PNT data that can add fields without disrupting existing users. The NAVSSI Standard Navigation Message (SNM) was an attempt to provide such a solution. Each field in the SNM included a corresponding description of it, so that a user can scan the SNM and pick the individual fields of interest. The order of the fields and the length of the message were not guaranteed to be the same, so that a new fully described field can be inserted anywhere into the SNM. Unfortunately, there was no enforcement on the user side to implement the flexibility provided by the SNM, which resulted in multiple fixed messages to accommodate later changes. This paper describes a revisit of this problem in light of more recent technological developments, and offers a better solution using Web Services. Under this new proposed solution, a user connects to a Web server that provides the user with the ability to select the set of PNT data fields from a list and create their own tailored message. The user will also specify the rate at which the PNT messages are to be received, and the IP address to which the message will be sent. For security, a user will first have to present credentials and a need-to-know in order to set up an account with access controls. While the Web service is used to set up the transmission parameters, it does not provide the real-time PNT data distribution via the same Web Service, since the Hyper Text Transfer Protocol (HTTP) is not suitable for real-time communications. Instead, the real-time PNT data distribution is via User Datagram Protocol (UDP) over Internet Protocol (IP). However, a separate Web Service for PNT data can also be configured to support non real-time applications that use a Web Browser for their Graphical User Interface (GUI). This service, similar to the management and setup interface, will translate the PNT data into an extensible Markup Language (XML) formatted message, and using Simple Object Access Protocol (SOAP) for delivery over HTTP. With this proposed solution, a user's implementation will no longer be able to restrict the PNT data distribution service from changing to accommodate new users. A user can still poorly implement their client side, but it will be decoupled from the next user's implementation through the use of the Web Service to set up the distribution.