MQTT vs DDS in IoT | Difference between MQTT and DDS
This page compates MQTT vs DDS protocol used IoT. It mentions difference between MQTT and DDS (Data Distribution Service) w.r.t. architecture, requirements, complexity etc.
The figure-1 depicts MQTT protocol architecture.
Following are the features of MQTT protocol:
• It consists of three components viz. publishers, broker and subscribers.
• It is based on publish/subscribe architecture.
• Publishers are like sensors or IoT devices which send their data or change in some information to the broker as per topic.
• Subscribers are like applications which subscribed with broker to receive change in parameters of a certain topic or sensory data.
• Refer MQTT vs HTTP>> for core features of MQTT protocol.
Refer MQTT Protocol>> for more information.
Following are the features of DDS protocol.
• It is broker less protocol used mainly for M2M and IoT applications.
• It is session layer protocol.
• Instead of broker, it uses data writers and data readers.
• Like MQTT, it is also publish/subscribe protocol without broker.
• It has 23 QoS levels which include security, priority, reliability, urgency, durability etc.
• Let us see working of DDS protocol. Publisher distributes the sensory data to be delivered. Data writer part interacts with the publisher and takes of any changes to be sent to subscribers. Data readers read the published data and deliver to subscribers. Subscribers need to subscribe for the topic which is nothing but sensory data.
Following table mentions comparison between MQTT and DDS protocols.
|Full Form||Message Queue Telemetry Transport||Data Distribution Service|
|Architecture||Centralized, all communications route through the broker.||Decentralized, peer to peer communication.|
|Transport layer protocol||TCP||UDP|
|Admin needed||Yes, Broker is required to be installed, all the clients configured with server or broker address||No, automatic discovery (i.e. plug and play), self forming, self healing|
|message rate||few messages/second per device||upto 10000s messages/second per device|
|Service interruptions||They are tolerable in MQTT network.||They are potentially calamitous in DDS architecture.|