Channels ▼

Embedded Systems

OMG's Data Distribution Service Standard

With the advent of ubiquitous networking and cheap processing, data distribution is emerging as a key paradigm for disseminating information in real-time and embedded systems. The applications are characterized by complex dataflows for example one-to-many, many-to-one, many-to-many dataflows with differing update rates, reliability, and bandwidth requirements; real-time performance which may be defined in terms of tight latency, throughput, or bandwidth requirements; fault-tolerance which may be defined in terms of not having a single point of failure or supporting self-healing communication, or having redundant communication paths; dynamic configuration changes where participants may join or leave arbitrarily; and the ability to scale with network size. The applications typically reflect the fluid and ever-changing nature of the real world.

The need for data-distribution is so fundamental that domains as diverse as command and control systems, traffic monitoring, financial data-distribution, combat systems, industrial sensing all use it as a core technology. The lack of established standards has led to the development of ad-hoc custom one-off solutions with sub-optimal performance and robustness that end up being very expensive to maintain. Commercial implementations of publish-subscribe data-distribution middleware have existed and have been deployed with success. However each vendor provided a different API and slightly different semantics for equivalent concepts.

This situation was similar to the one prior to the adoption of UML. Successful modeling tools existed but widespread acceptance, availability of trained developers, and broad knowledge exchange did not come until the UML standard consolidated terminology and notation. The recent adoption of the Data-Distribution Service (DDS) for Real-Time Systems specification by the Object Management Group (OMG) will do for data-distribution what UML did for modeling technologies.

The OMG Data Distribution Service (DDS) Standard specifies a mandatory API for data-centric publish-subscribe (DCPS) communication, and an optional data local reconstruction layer (DLRL). The DDS specification is programming language agnostic; it is specified via a platform independent model in UML, and a platform-specific model in IDL, which can be mapped to programming language APIs via standard mappings. In the rest of this article, we highlight the key aspects of the OMG DDS/DCPS specification and illustrate it by building a mock distributed real-time application.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.