The MQTT protocol was especially created for the machine to machine (M2M) communication, being lighter and easier to use. In a MQTT network, you have two types of nodes: the clients and the broker/server. Note that you can have more than one broker on a network, even if we won’t see that in more details. The broker, term specific for a server in the MQTT vocabulary, is a parser combined with a receiver/sender.
The MQTT protocol includes seven main frames: connect, disconnect, subscribe, unsubscribe, publish, ping_request, ping_respond. We won’t deal that much with the ping because when you connect, you can have the timeout mechanism deactivated by setting the Keep-Alive to field to 0. (ping_request: c000, ping_respond: d000)
On the next page we’ll see in more details the format of each frame.