OpenDDS is an open source and widely adopted standards-based real-time publish/subscribe solution for distributed systems that defines the standardized interfaces and behaviors that enable application portability.
OpenDDS is free Open Source software (FOSS), which means no vendor lock-in and maximum user control. There are no license fees whatsoever.
Full source code available (also at no cost).
The OpenDDS Modeling Software Development Kit (SDK), built on top of the Eclipse Modeling Framework, simplifes the use of OpenDDS, leaving the developer free to devote more time to application issues rather than the details of internal middleware plumbing.
Efficient marshaling and demarshalling of user-defined data types.
Robust federated information repository that allows publishers and subscribers to discover one another, to support registration of participants and creation of topics, and to support publication of built-in topics for meta-data propagation.
Scalable, multi-threaded architecture.
Includes an easy-to-use run-time configuration framework that supports configuration via a combination of files, options, and application programming interfaces.
Broad platform support, including real-time and non-real time operating systems on a variety of hardware platforms.
- Operating systems include Linux, Windows™, Mac OS™, VxWorks™, LynxOS™, and others
- Hardware platforms include the Intel Core Processor Family, ARM, Raspberry Pi, and others.
Complies with the OMG DCPS layer of the Data Distribution Service for Real-Time Systems (DDS) specification.
A Pluggable Transport Layer that allows data transmission across a variety of transport protocols. OpenDDS currently implements simple TCP, UDP, reliable multicast, and unreliable multicast transports. In addition, application developers may implement their own custom transport protocols and plug them into OpenDDS.
Interoperability with other DDS. implementations through the RTPS transport.
Support for Java bindings through JNI and the option of inclusion with JBoss (ESB) frameworks by means of a JMS wrapper.
The Object Management Group (OMG) Data-Distribution Service for Real-Time Systems (DDS) is the first open international middleware standard directly addressing publish-subscribe communications for real-time and embedded systems.
DDS introduces a virtual Global Data Space where applications can share information by simply reading and writing data-objects addressed by means of an application-defined name (Topic) and a key. DDS features fine and extensive control of QoS parameters, including reliability, bandwidth, delivery deadlines, and resource limits. DDS also supports the construction of local object models on top of the Global Data Space.