¿Qué es MQTT?

Vía: iotconsulting.tech

Es un protocolo de comunicación entre máquinas que se caracteriza por su ligereza, bajo consumo de energía y ancho de banda mínimo. Se basa en la comunicación editor/suscriptor (publisher/subscriber) en el que un intermediario llamado «broker» controla el envío y recepción de los mensajes.

Algunas de las ventajas que posee son:

  • Asincronismo
  • Alta escalabilidad
  • Sencillez
  • Ligereza
  • Desacoplamiento entre clientes

Es ampliamente utilizado en la industria y el entorno maker, aunque no es el único protocolo de IoT. La transmisión de los paquetes se ve del siguiente modo:

Un ejemplo de aplicación práctica sería usar la aplicación Mosquitto que permite crear servidores de MQTT para crear el broker. Lo que sigue es utilizar un suscriptor para el protocolo, que puede ser un ESP8266. Las librerias pubsub incluidas en la IDE de Arduino permiten configurar la red a utilizar, la contraseña y la IP del servidor. Así como podemos enviar datos al suscriptor también puede ser a la inversa, como por ejemplo, cuando hacemos mediciones con un sensor.

Diagrama que muestra como implementar el protocolo con una Raspberry Pi y una tarjeta de desarrollo ESP8266. Via: randomnerdtutorials.

Referencias:

¿Qué es MQTT? Y su importancia como protocolo de IoT

ESP8266 and Node-RED with MQTT (Publish and Subscribe)