OpenDDS

OpenDDS is an open source native C++ implementation of the OMG Data Distribution Service (DDS) for Real-Time Systems specification. It is also available wrapped for Java use. DDS defines a strongly typed publish-subscribe service for efficiently distributing application data between participants in a distributed application. OpenDDS leverages ACE to provide portability and configurability across a wide variety of operating systems and deployment environments. OpenDDS is sponsored by OCI with significant support from key customers.

Why OpenDDS?

  • Complies with the OMG Data Distribution Service for Real-Time Systems (DDS) specification.
  • Provides 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.
  • Generates code to provide efficient marshaling and demarshalling of user-defined data types.
  • Provides a 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.
  • Exhibits a 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.
  • OpenDDS is free open source software (FOSS), which means no vendor lock-on and maximum user control. There are no license fees whatsoever.
  • The OpenDDS Modeling Software Development Kit (SDK), built on top of the Eclipse Modeling Framework, simplifies using OpenDDS, leaving the developer free to devote more time to application issues rather than the details of internal middleware plumbing.

Why OCI?

  • OCI originally developed OpenDDS, working closely with key customers, users, and other researchers at various universities and other locations all over the world.
  • OCI's engineers are experts in designing and building distributed, concurrent applications across a wide variety of operating systems and development and deployment environments.
  • OCI offers a variety of support models, including on-demand ad hoc support, on-going consulting and mentoring, project-based software development, and 24x7 support for deployed systems.
  • OCI developed and delivers training on OpenDDS.