Inferensys

Glossary

Data Distribution Service (DDS)

Data Distribution Service (DDS) is a real-time, publish-subscribe middleware standard and protocol that provides deterministic, scalable data communication for distributed systems, forming the core of ROS 2.
Data scientist building training data pipeline on laptop, data preprocessing visible, technical workspace.
MIDDLEWARE STANDARD

What is Data Distribution Service (DDS)?

The Data Distribution Service (DDS) is a critical middleware standard for deterministic, real-time communication in distributed robotic and industrial systems.

The Data Distribution Service (DDS) is a real-time, data-centric publish-subscribe middleware standard defined by the Object Management Group (OMG). It provides deterministic, scalable, and low-latency data communication for distributed systems by managing direct peer-to-peer data exchange between publishers and subscribers. Its core abstraction is a Global Data Space, where applications write and read data objects addressed by topics, enabling loose coupling and high performance without intermediary brokers. This architecture is foundational for ROS 2 and complex embodied intelligence systems.

DDS ensures Quality of Service (QoS) through configurable policies that guarantee data delivery, reliability, deadlines, and resource limits, which is essential for real-time robotic control systems. It operates over standard IP networks and supports automatic discovery, dynamic reconfiguration, and robust security profiles. By providing a data-centric model rather than a message-centric one, DDS excels in environments requiring predictable performance, such as autonomous vehicles, industrial automation, and hardware-in-the-loop (HIL) testing, where synchronization and fault tolerance are paramount.

DATA DISTRIBUTION SERVICE

Core Architectural Features of DDS

The Data Distribution Service (DDS) is a middleware standard defined by the Object Management Group (OMG) that provides a scalable, real-time, publish-subscribe communication framework for distributed systems, forming the core of ROS 2.

01

Global Data Space

DDS introduces the concept of a Global Data Space (GDS), a virtual shared memory accessible by all participants in a distributed system. Applications do not communicate directly with each other but instead read and write data objects (Topics) to this space. This decouples data producers (Publishers) from data consumers (Subscribers), enabling:

  • Dynamic discovery of new participants without configuration changes.
  • Location transparency; applications don't need to know the network location of data sources or sinks.
  • Scalability as the number of participants grows, as communication is based on data identity, not point-to-point connections.
02

Data-Centric Publish-Subscribe (DCPS)

This is the core communication model of DDS. Unlike message-centric middleware, DCPS is focused on the state and value of data, not transient messages.

  • Topics: Define the data structure (type) and a unique name within the Global Data Space (e.g., RobotJointState).
  • Publishers: Declare intent to write data for specific Topics.
  • Subscribers: Declare intent to read data for specific Topics.
  • DataWriters/DataReaders: The objects used by applications to actually write or read data instances for a Topic. The middleware handles matching Publishers and Subscribers and efficiently distributing data updates.
03

Quality of Service (QoS) Policies

DDS provides fine-grained control over communication behavior through a rich set of QoS Policies. These are contracts between data producers and consumers that the middleware strives to enforce. Key policies include:

  • Reliability: BEST_EFFORT (faster) vs. RELIABLE (guaranteed delivery).
  • Durability: VOLATILE (late joiners miss data) vs. TRANSIENT_LOCAL (history sent to new subscribers).
  • History: How many samples (KEEP_LAST) or all samples (KEEP_ALL) to store.
  • Deadline: The maximum expected period between data updates.
  • Liveliness: How a participant signals it is still active. Mismatched QoS between a Publisher and Subscriber prevents them from connecting.
04

Real-Time Publish-Subscribe (RTPS) Protocol

RTPS is the wire protocol that implements DDS interoperability. It is standardized separately from the DDS API and is the protocol used by ROS 2. Its features enable deterministic, real-time communication:

  • Discovery Protocol: Allows participants to dynamically find each other on the network using multicast or unicast.
  • User Datagram Protocol (UDP) based: Minimizes latency and overhead, though TCP is also supported.
  • Interoperability: Different DDS vendor implementations can communicate if they both use the standard RTPS protocol.
  • Efficiency: Uses a binary format and is designed for minimal serialization/deserialization overhead.
05

Deterministic Discovery

DDS provides a built-in, decentralized discovery mechanism that operates without a central broker. The Simple Discovery Protocol (SDP) and Enhanced Discovery Protocol allow participants to:

  • Automatically advertise their existence and the Topics they publish/subscribe to.
  • Discover other participants and establish direct peer-to-peer communication channels.
  • Dynamically handle participant joins, leaves, and failures. This brokerless architecture eliminates a single point of failure and reduces latency, as data flows directly between matched Publishers and Subscribers after discovery is complete.
06

Content-Based Filtering

Beyond Topic-based subscription, DDS allows for content-based filtering at the subscriber side. A DataReader can attach a QueryCondition or ContentFilteredTopic to receive only data samples that meet specific criteria.

  • Example: A navigation subsystem could subscribe to the ObjectDetection Topic but filter to receive only samples where object_class == 'person' and confidence > 0.8.
  • This reduces network traffic and application processing load by pushing filtering logic into the middleware layer, which can evaluate filters efficiently as data is received.
CORE ARCHITECTURE

How DDS Works: The Publish-Subscribe Mechanism

The Data Distribution Service (DDS) is a real-time, publish-subscribe middleware standard and protocol that provides deterministic, scalable data communication for distributed systems, forming the core of ROS 2.

The publish-subscribe (pub/sub) mechanism is a messaging pattern where data producers (publishers) and consumers (subscribers) communicate indirectly through a data-centric global data space, decoupling components in time, space, and synchronization. Publishers declare a Topic—a unique data type and name—and send structured data messages. Subscribers express interest in a Topic and receive updates automatically. This decoupling enables scalable, dynamic systems where nodes can join or leave without reconfiguration, a critical feature for modular robotic systems.

Communication is managed by a DDS Data Distribution Service implementation, which handles discovery, serialization, and delivery without a central broker. Quality of Service (QoS) policies govern data delivery, allowing engineers to specify requirements like reliability, deadline, latency budgets, and durability. For example, a sensor publisher can use a best-effort policy for high-frequency data, while a safety-critical control command uses reliable, deadline-monitored delivery. This deterministic, configurable transport is why DDS is foundational for real-time robotic control systems and embodied intelligence platforms requiring predictable performance.

APPLICATION DOMAINS

Where is DDS Used?

The Data Distribution Service (DDS) is a foundational middleware for systems requiring deterministic, scalable, and high-performance data exchange. Its primary application is in real-time, distributed, and mission-critical environments.

01

Robotics & Autonomous Systems

DDS is the core communication middleware for ROS 2 (Robot Operating System 2), enabling deterministic data flow between sensors, planning nodes, and actuators. Its Quality of Service (QoS) policies allow developers to guarantee latency, reliability, and bandwidth for critical control loops.

  • Real-time control: Ensures sensor data and actuator commands are delivered within strict deadlines.
  • Modular architecture: Supports the decoupled, publish-subscribe model essential for complex robotic software stacks.
  • Example: An autonomous mobile robot uses DDS to stream LiDAR point clouds to a SLAM node while simultaneously receiving velocity commands from a navigation planner.
02

Defense & Aerospace Systems

DDS is mandated in major defense standards for its deterministic performance and robust security features. It forms the data-centric backbone for C4ISR (Command, Control, Communications, Computers, Intelligence, Surveillance, and Reconnaissance) systems and unmanned platforms.

  • Interoperability: Enables communication between heterogeneous systems from different vendors (e.g., radar, avionics, ground control).
  • DDS Security Specification: Provides authentication, encryption, and access control for classified networks.
  • Example: The U.S. Navy's Integrated Combat System uses DDS to share real-time track data between ships, aircraft, and command centers.
03

Industrial IoT & Smart Manufacturing

In Industry 4.0 and software-defined automation, DDS connects PLCs, robots, HMIs, and analytics engines into a unified, real-time data fabric. It is key to OpcUa over DDS, combining information modeling with high-performance pub/sub.

  • Machine-to-Machine (M2M) Communication: Facilitates peer-to-peer data sharing without central brokers, reducing latency and single points of failure.
  • Predictive Maintenance: Streams high-frequency vibration and temperature sensor data to analytics models.
  • Example: A smart factory uses DDS to synchronize a robotic arm's movements with a conveyor belt's speed, with sub-millisecond coordination.
04

Medical Devices & Healthcare

DDS enables the integration of real-time patient monitoring systems, surgical robots, and diagnostic imaging devices. Its QoS policies ensure vital signs and device status are delivered reliably and on time.

  • Deterministic Latency: Critical for closed-loop systems like automated drug delivery or robotic surgery assistance.
  • Data-Centric Model: Allows new devices (e.g., a new vital signs monitor) to discover and subscribe to relevant data streams dynamically.
  • Example: An integrated operating room uses DDS to share real-time video from surgical scopes, patient vitals from monitors, and instrument telemetry from a robotic surgical system.
05

Automotive & Connected Vehicles

DDS is used in advanced driver-assistance systems (ADAS), autonomous driving stacks, and vehicle-to-everything (V2X) communication. It manages the high-volume, low-latency data flow between cameras, radar, fusion engines, and control units.

  • Scalable Data Bus: Handles the massive data streams from multiple high-resolution sensors and LiDAR units.
  • Fault Tolerance: Built-in redundancy and discovery mechanisms support functional safety requirements.
  • Example: An autonomous vehicle uses DDS to distribute object detection results from a perception node to the path planning and vehicle control nodes, with strict deadlines for collision avoidance.
06

Energy & Smart Grids

DDS provides the real-time data distribution layer for smart grid control systems, substation automation, and renewable energy integration. It ensures timely delivery of grid sensor data (phasor measurement units) for stability monitoring and automated control.

  • Wide-Area Monitoring: Enables real-time synchrophasor data exchange across geographically dispersed substations.
  • QoS for Critical Alerts: Allows high-priority fault or alarm messages to preempt regular traffic.
  • Example: A utility control center uses DDS to receive real-time power flow and frequency data from hundreds of substations to dynamically balance load and generation.
PROTOCOL COMPARISON

DDS vs. Other Communication Middleware

A technical comparison of Data Distribution Service (DDS) against other common middleware patterns used in robotic and real-time systems, focusing on architectural and quality-of-service features.

Feature / MetricData Distribution Service (DDS)ROS 1 (Custom TCP/UDP)Traditional Message Queues (e.g., RabbitMQ, Kafka)REST/gRPC APIs

Core Communication Model

Data-Centric Publish-Subscribe

Node-Based Publish-Subscribe & Services

Message-Centric Producer-Consumer

Client-Server Request-Response

Discovery Mechanism

Fully Decentralized (No Broker)

Centralized Master Node

Centralized Broker/Server

Manual Service Discovery (DNS, etc.)

Real-Time Determinism

Built-in Quality of Service (QoS) Policies

Latency (Typical, Local Network)

< 1 ms

5-20 ms

1-10 ms

1-100 ms

Throughput Scalability

Peer-to-Peer; Scales with network

Limited by Master & network config

Scales with broker cluster

Scales with server/load balancer

Fault Tolerance (Brokerless)

Dynamic Type Discovery

Standardization Body

Object Management Group (OMG)

Open Source Robotics Foundation

Vendor/Community Driven

IETF, gRPC Project

Primary Use Case

Deterministic, hard real-time systems (Robotics, Aerospace)

Robotics research & prototyping

Enterprise data streaming & workflow

Web services, microservices, configuration

DATA DISTRIBUTION SERVICE (DDS)

Frequently Asked Questions

The Data Distribution Service (DDS) is a critical middleware standard for deterministic, real-time communication in distributed robotic systems. These FAQs address its core mechanisms, role in ROS 2, and key advantages for system integration.

The Data Distribution Service (DDS) is a real-time, data-centric publish-subscribe middleware standard defined by the Object Management Group (OMG) that provides deterministic, scalable, and high-performance data communication for distributed systems. It works by decoupling data producers (Publishers) from data consumers (Subscribers) through a shared Global Data Space. Publishers write data to a uniquely identified Topic, and Subscribers that have expressed interest in that Topic receive the data automatically. The underlying DDS protocol handles discovery, reliability, durability, and quality-of-service (QoS) policies without requiring application code to manage point-to-point connections. This architecture enables a flexible, dynamic network where components can join or leave without disrupting the overall system.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.