MQTT (MQ Telemetry Transport) es un protocolo de mensajería ligero que facilita la transmisión de datos de telemetría para clientes de red con recursos limitados. Este protocolo, sigue un modelo de comunicación de tipo publicación / suscripción a través de un intermediario de mensajes, se utiliza para intercambios de máquina a máquina (M2M). Desempeña un papel importante en Internet de las cosas.

MQTT es una buena opción para redes inalámbricas que experimentan variaciones en la latencia debido a limitaciones ocasionales de ancho de banda o conexiones poco confiables. En el caso de una pérdida de conexión entre un cliente y un intermediario de mensajes, este último almacena los mensajes en el buffer y los envía al suscriptor una vez que se restablece la conexión. Si la conexión entre el cliente y emisor se interrumpe inesperadamente, el emisor puede cortar la conexión y enviar a los clientes un mensaje previamente almacenado en la caché que contiene las instrucciones del editor.

MQTT fue establecido en 1999 por el Dr. Andy Stanford-Clark, IBM y Arlen Nipper, Arcom (ahora Eurotech). Su objetivo era crear una forma confiable y rentable de vincular los dispositivos de monitoreo utilizados en la industria del petróleo y el gas a servidores corporativos remotos.

Ante la necesidad de transmitir datos desde sensores de oleoductos ubicados en el desierto a sistemas de supervisión industrial SCADA, optaron por una topología de red tipo TCP / IP basada en el principio de publicación / suscripción.

Esta topología se basa en eventos para limitar los costos del enlace por satélite.

Aunque MQTT todavía está estrechamente asociado con IBM, este protocolo está abierto y supervisado por la Organización para la Promoción de Estándares de Información Estructurada (OASIS).

Al contrario de lo que podría sugerir el nombre, MQTT no forma parte de la suite IBM MQ inicial, pero desde la v7.1 está disponible en WebSphere MQ.

Fuente: MQTT en Wikipedia