This is a very useful summary of which protocol does what.
Devices must communicate with each other (D2D). Device data then must be collected and sent to the server infrastructure (D2S). That server infrastructure has to share device data (S2S), possibly providing it back to devices, to analysis programs, or to people. From 30,000 feet, the protocols can be described in this framework as:
• MQTT: a protocol for collecting device data and communicating it to servers (D2S)
• XMPP: a protocol best for connecting devices to people, a special case of the D2S pattern, since people are connected to the servers
• DDS: a fast bus for integrating intelligent machines (D2D)
• AMQP: a queuing system designed to connect servers to each other (S2S)
Read more intersting articles from Electronic Design here: