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