What is MQTT?
Internet of Things structures are getting complex and the large number of interconnected device systems are growing fast. For example a modern car has about 100 electronic controllers. As the number of systems are rapidly growing CPU and power usage have to be optimised.
The MQTT protocol was invented in 1999 by IBM and Arcom. It is a free, open-source protocol.
MQTT is a machine-to-machine (M2M)/”Internet of Things” connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium. For example, it has been used in sensors communicating to a broker via satellite link, over occasional dial-up connections with healthcare providers, and in a range of home automation and small device scenarios. It is also ideal for mobile applications because of its small size, low power usage, minimised data packets, and efficient distribution of information to one or many receivers. (source: http://mqtt.org/ )
How MQTT is different from HTTP?
For specific tasks such as M2M communication, MQTT is superior compared to HTTP. MQTT can receive almost 100 times more packages and send almost 10 times more packages than traditional HTTPS at the same time.
See comparison table below:
It is clear then, that the MQTT protocol is significantly more efficient. The footprint of the packets can be as small as 2 bytes. 2 bytes are very small, it’s exactly to characters in text file for example “AB”. Further to this it was designed to be simple and reliable.
The Internet of Things combines all web, mobile and machine-to-machine (M2M) devices. Distributing packets in huge volumes is only available using MQTT in an efficient manner. Since its introduction in 1999 almost every industry adopted the technology and while the IoT hits the consumer market we will see systems that are getting complex and efficient at the same time.