A packet service is used to send messages between applications. JAS assumes that each processing element has one packet service for each packet format that is defined. In order to promote reuse, a layered architecture is used whereby applications are abstracted from the packet format details. The packet service contains the details of constructing and parsing packets so applications do not have to include this knowledge. The benefit is that applications are more reusable because they are not tied to a specific packet implementation.
JAS Packet Service
The JAS Packet Service is an instantiation of a CCSDS SOIS packet service. JAS command and telemetry packets are based on the CCSDS/PUS packet standards, specifically tailored for JAS. The CCSDS/PUS standard implies a specific communication architecture. However, the SOIS standard, which also implies a communication architecture, is better suited to the JAS layered architecture approach. Therefore, the packet formats from the CCSDS/PUS packet standards along with the SOIS communication architecture standard comprise the JAS Packet Service. The JAS packet format is defined in more detail in the Communication Specification.
Some enhancements were made to the CCSDS/PUS packet standard in order to fit within the JAS communication architecture. The CCSDS/PUS standards assume that applications create and parse packets directly. This is contrary to the idea of a modular and reusable architecture like JAS. JAS supports the capability to use different packet services if needed, which promotes reuse of applications across different systems. The enhancements made to the CCSDS/PUS packet standard are highlighted in the Communication Specification.
The JAS Packet Service accepts data from applications, then segments and packetizes the data according to the JAS packet format. The packets are passed to a data link protocol for delivery over one of the data links. Quality of Service (QoS) parameters are used to determine the protocol to use, when multiple protocols are available. For example, data can be sent over a SpaceWire network using a reliable delivery protocol or a best-effort protocol.
The JAS Packet Service also receives JAS packets from the data link protocols and delivers the data to the applications. The JAS Packet Service performs the necessary functions to reassemble the data and provide it to the receiving application in the same form that it was provided by the sending application.