DDS™ - The Proven Data Connectivity Standard for IoT™ Nov. 2016 | Page 4
What Is DDS?
THE PROVEN DATA CONNECTIVITY STANDARD FOR THE INTERNET OF THINGS
In a distributed system, middleware is the software layer that lies between the operating system and applications. It enables the various components of a system to more easily communicate and share data. It simplifies the development of distributed systems by letting software developers focus on the specific purpose
of their applications rather than the mechanics of passing information between applications and systems.
Middleware
Application
Platform
WHAT IS DDS?
The Data-Distribution Service (DDS) is a middleware protocol and API standard for data-centric connectivity
from the Object Management Group. It integrates the components of a system together, providing lowlatency data connectivity, extreme reliability, advanced security, and a scalable architecture that business
and mission-critical Internet of Things (IoT) applications need.
API
C, C++, Java, C#, ...
PRESENTATION
Data, Topics, Types, Serialization, QoS, Cache, Filtering, ...
PROTOCOL
Session, Reliability, QoS, Discovery, ...
OPERATING SYSTEM
Windows, Unix (Linux, MacOS), VxWorks, Android, ...
NETWORK
UDP, TCP, STCP, ...
LINK/PHYSICAL LAYER
Ethernet, IEEE 802.11, 3G, 4G
The DDS Middleware is a software layer that abstracts the Application from the details of the operating system,
network transport, and low-level data formats. The same concepts and APIs are provided in different programming languages allowing applications to exchange information across of operating systems, languages, and
processor architectures. Low-level details like data wire format, discovery, connections, reliability, protocols, QoS
management, etc. are manage by the middleware.
DATA CENTRICITY
There are many communications middleware standards and products. DDS is uniquely data-centric, which
is ideal for the Internet of Things. Most middleware works by sending information between applications and
systems. Data centricity ensures that all messages include the contextual information an application needs
to understand the data it receives.
4