Space Packet Protocol
A Space Packet is a 6-octet Primary Header followed by a Packet Data Field of 1 to 65536 octets (7 to 65542 octets in total). The Packet Secondary Header has no structure defined by the Standard; its split into Time Code and Ancillary Data Fields comes from the mission settings.
Open the interactive diagram, Frame Builder and Frame Decoder
Packet Primary HeaderPH
The mandatory six-octet header of every Space Packet: version number, identification, sequence control and data length.
Packet Version NumberPVN
Identifies the data unit as a Version 1 CCSDS Packet. Always set to ‘000’.
| Value | Meaning | Clause |
|---|---|---|
‘000’ | Version 1 CCSDS Packet — the only version defined by this Standard | § 4.1.3.2.2 NOTE |
Packet Identification Field
Identifies the packet: its type (TM/TC), the presence of a Secondary Header, and the APID naming the managed data path.
Packet TypeTYPE
Distinguishes telemetry (reporting) Packets from telecommand (requesting) Packets.
| Value | Meaning | Clause |
|---|---|---|
‘0’ | Telemetry (reporting) Packet | § 4.1.3.3.2.3 |
‘1’ | Telecommand (requesting) Packet | § 4.1.3.3.2.3 |
Secondary Header FlagSHF
Indicates the presence or absence of the Packet Secondary Header within this Space Packet. Static per APID throughout a Mission Phase.
| Value | Meaning | Clause |
|---|---|---|
‘1’ | Packet Secondary Header present | § 4.1.3.3.3.2 |
‘0’ | Packet Secondary Header not present — mandatory value for Idle Packets | § 4.1.3.3.3.2 / .4 |
Application Process IdentifierAPID
The naming mechanism for the managed data path; may uniquely identify the sending or receiving application process within a space vehicle.
| Value | Meaning | Clause |
|---|---|---|
‘11111111111’ | Idle Packet — the only APID value reserved by the CCSDS | § 4.1.3.3.4.4 |
Packet Sequence Control Field
Sequence Flags plus the Packet Sequence Count or Packet Name — orders the Packets generated by one APID.
Sequence FlagsSEQF
May indicate that the User Data in this Packet is a segment of a larger set of application data.
| Value | Meaning | Clause |
|---|---|---|
‘00’ | Continuation segment of User Data | § 4.1.3.4.2.2 a) |
‘01’ | First segment of User Data | § 4.1.3.4.2.2 b) |
‘10’ | Last segment of User Data | § 4.1.3.4.2.2 c) |
‘11’ | Unsegmented User Data — mandatory whenever the Octet String service is invoked | § 4.1.3.4.2.2 d) / .3 |
Packet Sequence Count or Packet NamePSC
For telemetry Packets: a continuous modulo-16384 count per APID. For telecommand Packets: either the count or a free-form 14-bit Packet Name.
| Value | Meaning | Clause |
|---|---|---|
MODULO-16384 | Count range 0–16383; for Type ‘1’ (telecommand) Packets the field may instead hold a Packet Name — any 14-bit binary pattern | § 4.1.3.4.3 |
Packet Data LengthPDL
A length count C equal to one fewer than the length in octets of the Packet Data Field.
| Value | Meaning | Clause |
|---|---|---|
C = DATA FIELD OCTETS − 1 | Encoded length count — Data Field range 1 to 65536 octets | § 4.1.3.5.3 |
Packet Data FieldPDF
Carries the packet content: an optional Packet Secondary Header followed by the User Data Field — at least one of the two must be present.
Packet Secondary HeaderPSH
A mission-specific means for consistently placing ancillary data (time, position/attitude, format info) in the same location within a Space Packet: a Time Code Field, an Ancillary Data Field, or both.
Time Code FieldTCF
One of the CCSDS segmented or unsegmented binary time codes (reference [3]): an optional P-Field (preamble) plus the mandatory T-Field.
Ancillary Data FieldADF
Mission-defined ancillary information: data needed to interpret the User Data Field, mission-specific header fields, or an extension of the APID naming domain.
User Data FieldUDF
The application data supplied by the sending user — or Idle Data in an Idle Packet.
Rules
- A Packet is 7 to 65542 octets: 6 of header, then a Packet Data Field of 1 to 65536.
- The Packet Data Field holds at least one octet.
- The Secondary Header is mandatory if there is no User Data Field.
- The User Data Field is mandatory if there is no Secondary Header.
- Secondary Header contents are not in the packet: they are set per APID, by management.
- A Secondary Header is a Time Code Field, an Ancillary Data Field, or both, in that order.
- The time code’s P-field, if used, is fixed for the data path.