Spectral Autonomy

Data Distribution Service (DDS): The Publish-Subscribe Transport

Part of the Open Architecture Field Guide. All information is derived from unclassified, publicly releasable (Distribution A) sources.

DDS, the Data Distribution Service, is an open publish-subscribe standard for moving data between distributed systems in real time. Publishers write to a shared bus, subscribers receive only what they ask for, and quality-of-service rules govern the flow. It is the transport commonly used to carry UCI messages, and it is governed by the Object Management Group.

What it does

Wiring systems together one connection at a time does not scale. Each new component adds more point-to-point links, and every link is another thing to build, test, and maintain. Real-time systems also need control over how data moves, not just that it moves.

DDS solves both. Instead of connecting systems directly, it gives them a shared data bus. A publisher writes data to the bus without needing to know who reads it. A subscriber declares what it wants and receives only that. Quality-of-service settings control reliability, rate, and durability, so a system can specify that a track update must be delivered reliably while a raw video feed can drop frames. A companion wire protocol, RTPS, lets products from different vendors interoperate on the same bus.

Publishers and subscribers over a DDS data busPublishers write data to a shared DDS data bus without knowing who reads it. Subscribers declare what they want and receive only that. Quality-of-service settings control reliability, rate, and durability per data flow. The RTPS wire protocol lets products from different vendors interoperate on the same bus.Sensor publisherwrites tracksTrack publisherwrites tracksDDS data bus (RTPS wire protocol)DisplayQoS: reliableRecorderQoS: best-effort
Spectral Autonomy
Publishers write to a shared DDS bus; subscribers receive only what they ask for, with quality-of-service chosen per data flow.

Where it sits

DDS is the transport layer of the software and interface family. It sits beneath the message standards. UCI defines the content of a message; OMS carries it; DDS moves it. DDS is not part of the OMS or UCI specifications, but it is a common choice for carrying their traffic. It is used widely beyond defense, in areas such as autonomous vehicles and industrial control.

The software and interface stackMission software runs on top of the OMS abstraction layer, which carries UCI messages, commonly transported over DDS. FACE governs software portability alongside them, with no content overlap.FACEsoftware portabilityMission softwareUnits of ReplaceabilityOMSmission abstraction layerUCImessage schemaDDSpublish-subscribe transport
Spectral Autonomy
How the software family fits: DDS is the transport beneath UCI and OMS, with FACE governing software portability alongside.

Where this fits

FAQ

What is RTPS?
The DDS wire protocol that lets publish-subscribe products from different vendors interoperate on the same bus.
Is DDS part of OMS or UCI?
No. DDS is a separate transport standard. It is commonly used to carry OMS and UCI traffic, but it is not part of their specifications.
What is quality of service in DDS?
A set of controls for how data is delivered, such as reliability, rate, and durability, chosen per data flow.
Who governs DDS?
The Object Management Group (OMG), a multi-stakeholder standards body.

Sources