Control the complete interface
An interface control document, or ICD, should follow a command from the person
or authorized automation that originates it to the function that acts on it,
then follow the resulting state back to the operator. A practical boundary map
is:
- operator control and ground-control application;
- ground compute, gateway, and local network;
- communications service and any provider infrastructure;
- aircraft modem, router, and onboard network;
- flight-control or mission-compute command endpoint; and
- aircraft state, acknowledgement, and operator presentation on the return
path.
Power, time, identity, configuration, security, and logging cross several of
those boundaries. A supplier responsible for one box may not own the complete
behavior. Name the party responsible for each boundary, the party accepting the
integrated system, and the evidence each party must deliver.
NASA's
interface-management guidance
treats interface definition, compatibility, change control, and verification as
continuing systems-engineering work. That is the useful model for C2. A pinout
issued early in design is not a complete interface when command semantics,
network policy, or software versions can change independently.
The ICD should point to controlled artifacts: electrical drawings, connector and
cable specifications, a data dictionary or interface description, addressing and
network rules, a security and credential plan, software compatibility records,
and verification procedures. Each artifact needs an owner, revision, approval
state, and applicable hardware and software baseline.
Define authority before messages
Identify every possible command source: pilot controls, ground-control software,
mission software, onboard automation, a maintenance terminal, and an alternate
control station. For each aircraft mode, define which source has authority, what
it may command, how authority transfers, what interlocks apply, and how the
operator sees the current authority state.
Network reachability is not authorization. A connected application is not
automatically allowed to arm, change a route, control a payload, or reconfigure
a link. Document identity, role, command permissions, operating mode, and any
required confirmation separately.
Addressing must identify the intended vehicle, system, component, and session.
The
MAVLink system and component ID guidance
illustrates the integration issue: systems need unique system IDs, and
components within a system need unique component IDs for routing and targeting.
That is a protocol-specific example, not a requirement to use MAVLink. Every
chosen protocol needs an equivalent collision, allocation, and replacement
policy.
If onboard automation can issue commands or change modes, record its bounded
authority as part of the same contract. The
automation and autonomy authority test
helps separate programmed execution from a change in decision authority.
Specify command and state semantics
A message name is not a behavior. For each command, define:
- authorized sender and intended receiver;
- valid modes, preconditions, parameters, units, and ranges;
- receipt, validation, acceptance, start, progress, completion, and failure;
- transaction or sequence identifier, ordering, and duplicate handling;
- timeout origin and duration, retry conditions, and attempt limit;
- whether repeating the command is safe; and
- state or event messages that reconcile the final result.
An acknowledgement can mean that a packet arrived, that the command passed
validation, or that the requested action completed. Those meanings cannot be
left to inference. The
MAVLink command protocol, for
example, defines command acknowledgements and result states such as accepted, in
progress, temporarily rejected, and failed. An integrator still has to map those
states to the vehicle behavior and operator interface in the installed system.
Heartbeats need similar precision. Define their source, expected rate, timeout,
meaning, and relationship to end-to-end command availability. The
MAVLink heartbeat protocol
supports discovery and permits components to infer a disconnection after
expected heartbeats are missed. A local heartbeat can show that one component is
present without proving that the aircraft can receive a command from the
operator and return current state through the complete path.
Close physical and electrical assumptions
For every installed device, control the connector and mating part, contact
assignment, keying, retention, cable construction, strain relief, shielding,
grounding, and inspection method. Define voltage at the device, steady and peak
current, inrush, ripple, brownout response, reverse-polarity protection, power
sequencing, and restart behavior.
For Ethernet, serial, USB, CAN, or another bus, specify the physical-layer
variant, speed, duplex or termination, isolation, grounding, and allowable cable
length. Identify who supplies adapters and whether they are part of the accepted
flight configuration. Close thermal, environmental, and electromagnetic
assumptions instead of treating a laboratory connection as installed evidence.
The
payload integration interface gate
uses the same discipline across mass, power, thermal, mechanical, data, timing,
and software boundaries. A modem, router, or onboard computer needs equally
explicit closure.
Define the network as an end-to-end service
Record IPv4 or IPv6 use, address allocation, subnet ownership, ports, transport
protocols, flow direction, maximum packet size, fragmentation policy, DNS
dependence, multicast behavior, and firewall rules. Identify every network
address translator, carrier-grade NAT, proxy, tunnel, broker, and cloud relay.
State which side starts a session and how it reconnects after an address or path
change.
For multiple bearers, define route selection, preference, transition triggers,
session persistence, and shared dependencies. Two modems can still depend on one
airborne router, power rail, antenna installation, identity provider, cloud
gateway, or ground backhaul. Those common points belong in the architecture and
failure analysis.
Bandwidth, latency, jitter, loss, reordering, duplication, and data age need
separate requirements in both directions. Specify the observation points,
traffic load, test duration, and statistic. An average can hide a long delay
tail that matters to a short-lived command. The
RF, LTE, satellite, and mesh comparison
explains why a bearer name does not define those values.
Make time and traffic policy testable
For each timestamp, state the clock source, epoch, UTC handling, resolution,
accuracy, expected drift, synchronization method, and response to lost
synchronization. Identify where age is calculated and whether a receiver rejects
data that are stale, too far in the future, replayed, or out of order. Logs from
different components cannot reconstruct an event reliably unless their time
bases are known.
Traffic priority needs a classifier, marking, queue, scheduler, rate limit,
congestion behavior, and owner at every relevant hop.
RFC 2474 defines the
Differentiated Services field and per-hop behavior concept, while
RFC 4594 provides service-class
configuration guidance. Neither RFC makes a carrier or satellite provider honor
a marking end to end. Test the installed route with command, telemetry, video,
and payload traffic active at the same time.
Draw security boundaries explicitly
Identify where each device, user, application, session, and message is
authenticated. Separately show where confidentiality begins and ends. An
authenticated command can still be exposed on an intermediate bus. An encrypted
tunnel can protect a path without proving that the sender is allowed to issue a
particular command.
Document credential creation, provisioning, storage, renewal, rotation,
revocation, recovery, replacement, and retirement. Include factory, integration,
operational, maintenance, and end-of-life states. Control default accounts,
maintenance ports, local debug access, remote administration, audit events, and
the conditions under which each interface is enabled.
NISTIR 8259A provides a general
device baseline covering identification, configuration, data protection, logical
access to interfaces, software updates, and cybersecurity-state awareness. It is
not an aviation C2 standard. The current
NISTIR 8259 Revision 1 adds a
manufacturer-lifecycle perspective useful for procurement and support planning.
Together they prompt questions that a protocol specification alone does not
answer.
The
secure BVLOS communications guide
develops the threat, trust, key, monitoring, and recovery layers beyond this
interface checklist.
Define health, failover, and lost-link handoffs
List every health input with units, sample interval, valid range, threshold,
hysteresis, and confidence. Distinguish radio attachment, IP reachability,
application-session health, command round-trip success, aircraft-state age, and
operator-display health. A modem can report a good local connection while an
upstream gateway or ground application is unreachable.
For each degraded state, name the detector, decision owner, transition delay,
traffic policy, operator alert, aircraft response, and recovery criterion. If
paths switch, define whether commands can be in flight on both, how duplicates
and reordering are handled, and what happens to a transaction that is only
partly complete. Test restoration as well as initial failover.
The lost-link procedure guide owns the
operational response after loss is declared. The interface owns the signals,
threshold inputs, timing, and state transitions that support that declaration. A
NASA C2 architecture concept
shows aircraft, ground station, service-provider, and supporting-service
boundaries. Use it as a research architecture, not as a prescribed small-UAS
configuration.
Control logs, configuration, and updates
Logs should identify the vehicle, mission, hardware, firmware, software,
configuration, command source, network path, and synchronized time. Capture
commands, validation results, acknowledgements, mode changes, health
transitions, failover decisions, authentication events, configuration changes,
update events, and relevant link metrics.
Define log format, export method, retention, integrity protection, access
control, storage-exhaustion behavior, and handling of sensitive operational
data. The acceptance record should make clear which evidence was available from
which component and whether records can be correlated across the end-to-end
path.
An update interface needs an authenticated source, authorization policy,
integrity and compatibility checks, interruption behavior, recovery or rollback,
an audit record, and post-update verification. State who approves updates and
which hardware, software, and configuration combinations remain supported.
NASA's
configuration-management guidance
ties identification, control, status accounting, and audits to a known product
baseline. Applying that discipline prevents a test result for one configuration
from being carried forward to another without review.
Specify what the operator must see
The ground-control interface should define available commands, displayed state,
units, refresh rate, data age, stale-data treatment, active path, authority
owner, security state, degraded modes, alerts, and required acknowledgements. It
should distinguish command sent, received, accepted, in progress, completed,
rejected, and timed out.
Protect against selecting the wrong vehicle, component, mode, or stale display.
Define confirmation rules for consequential actions and the operator's options
when an action is partial or ambiguous. Exercise annunciations with real message
timing and injected interface failures rather than relying on static screen
review.
Turn the ICD into acceptance evidence
Every requirement needs a unique identifier, verification method, responsible
party, configuration, procedure, expected result, and recorded result. NASA's
requirements verification matrix
is a useful model for keeping those relationships visible. NASA's
product-verification guidance
also emphasizes verifying a product against requirements in the intended or a
representative environment.
An interface acceptance campaign can include:
- every command through accepted, rejected, timed-out, duplicate, and
interrupted paths;
- minimum, normal, peak, and competing traffic in both directions;
- controlled loss, latency, jitter, reordering, duplication, stale data, and
clock offset at named injection points;
- removal of each path and shared dependency, followed by transition and
restoration;
- invalid, expired, revoked, and rotated credentials;
- interrupted power, sessions, configuration changes, and updates;
- component reboots in different orders; and
- correlation of ground, gateway, airborne, and controller logs to the same
event.
The values and pass criteria must come from the system requirements. The list
does not prescribe universal delay, loss, or availability thresholds.
Procurement questions that expose gaps
Before accepting a component or service, require written answers to these
questions:
- Who owns each physical, electrical, network, application, security, and
operator boundary, and who accepts the complete system?
- Which protocol, hardware, firmware, and software versions interoperate, and
how long are they supported?
- How are authority, identity, acknowledgement, completion, retry, duplicate,
ordering, and stale-data behavior defined?
- Where do authentication and encryption start and stop, and who controls the
credential lifecycle?
- What are the measured directional latency, loss, data-age, and capacity
limits with all required traffic active?
- Which signals drive degraded, failover, and lost-link states, and how were
thresholds and restoration tested?
- Which dependencies remain common across the claimed alternate paths?
- Which logs and configuration records are delivered, in what format, and under
what retention and access terms?
- How are updates approved, authenticated, interrupted, recovered, rolled back,
and supported through end of life?
- Which requirements remain unverified, which representative conditions were
excluded, and who owns closure?
A complete interface package does not establish that a flight is authorized. It
does make system claims reviewable, changes controllable, and failures
reproducible. That is the evidence an integrator needs before deciding whether a
C2 architecture is ready for the intended aircraft and operation.