High latency links (e.g. Iridium Satellite links) provide global connectivity, albeit with significant message latency and high cost-per-message. Generally the cost and latency means that high-latency links are only used when there is no lower-latency alternative, and when active the links should only send essential information.
The protocol provides a heartbeat-like message (HIGH_LATENCY2) for transmitting just the most important telemetry at low rate, and a command (MAV_CMD_CONTROL_HIGH_LATENCY) for enabling/disabling the high latency link when needed (i.e. when no lower-latency link is available).
|HIGH_LATENCY2||A heartbeat-like message that contains all the most important (but not time-sensitive) telemetry for sending over high latency links.|
|MAV_CMD_CONTROL_HIGH_LATENCY||Command to start/stop transmitting high latency telemetry (|
|HL_FAILURE_FLAG||Flags to report failure cases over the high latency telemetry.|
A GCS will typically have one primary link that is used for all vehicle communications, but may also have secondary links that it can switch to if needed (which will then become the primary link).
The diagram below shows a GCS switching from a higher-latency primary link to a lower latency secondary link when one becomes available, and then back to the higher latency link when the primary link drops out. MAV_CMD_CONTROL_HIGH_LATENCY is sent to turn the high latency link on and off.