LTP is designed to run directly over a data link layer (e.g. the Advanced Orbiting Systems (AOS) Space Data Link Protocol). It can also run on the
User Datagram Protocol (UDP), e.g. if used in a sensor network, in a private network (where bandwidth contestation is not an issue), or for software debug purposes. Therefore, it does not address issues like routing or congestion control. It was originally designed to support “long-haul” transmission in an interplanetary network; its design is based on experiences with the
CCSDS File Delivery Protocol (CFDP). Developed for space communication, its features are: • Reliable data transport for important data (such as a file header) • Unreliable data transport for less important data (such as image pixels—a damaged pixel can be overcome) • No exchange of messages to perform negotiation. The protocol avoids this process to avoid delays due to high
round-trip times. It also avoids link underutilisation. • Energy efficiency, as it only transmits if a link is available and distinguishes between important and unimportant data. • Its timers work together with communication schedules and can be suspended whenever a scheduled link outage occurs. • It needs to be informed about link layer availability, round-trip time and communication schedules, basically requiring a management information base (MIB). LTP is highly stateful. • Unidirectional transmission sessions, circumvent high round-trip times or the inability of a peer communication node to transmit The application divides its data to send into two parts (either part may have a size of 0): • a
red part: It contains data that has to be transported reliably, has to be acknowledged by the receiver, and has to be held available until acknowledged. This could, e.g., be a header that contains important information to decode the following data, and whose corruption would render all following data useless. • a
green part. It contains data that does not require reliable transport. Since reception of this data is not acknowledged, it can be discarded after transmission. ==Protocol==