MQTT es un protocolo ligero para IoT que permite la comunicación confiable entre dispositivos con bajo consumo de ancho de banda. La versión 5.0 amplía este protocolo para mejorar la escalabilidad, la interoperabilidad y las interacciones entre los dispositivos y la nube.
Contexto
IoT Platform admite MQTT 5.0, MQTT 3.1.1 y MQTT 3.1.
IoT Platform ofrece un broker MQTT estándar compatible con suscripciones del lado del servidor, reenvío de datos y el SDK de IoT Platform para desarrollar aplicaciones en la nube de manera eficiente. Para obtener más información, consulte Server-side subscription, Data forwarding y Overview.
Límites
Un dispositivo registrado solo puede conectarse a IoT Platform mediante una única versión del protocolo. Si un dispositivo se conecta mediante MQTT 5.0, no podrá cambiar a MQTT 3.1 ni a MQTT 3.1.1.
Funciones de MQTT 5.0
MQTT 5.0 amplía la versión 3.1.1 con mejoras en rendimiento, escalabilidad e interoperabilidad, sin aumentar el consumo de recursos ni reducir la facilidad de uso.
|
Función |
Descripción |
|
Permite adjuntar propiedades personalizadas de tipo clave-valor a los encabezados de los mensajes, de forma similar a los encabezados HTTP. |
|
|
Sustituye nombres largos de temas por alias numéricos de cuatro bytes para reducir el uso de ancho de banda. |
|
|
Establece un tiempo de vida para el estado de la sesión después de que un dispositivo se desconecta del servidor. |
|
|
Define un tiempo de vida para los mensajes publicados, de modo que los suscriptores no reciban mensajes caducados. |
|
|
Envía un mensaje predefinido a los suscriptores cuando un dispositivo se desconecta de forma inesperada. |
|
|
Almacena el último mensaje publicado en un tema para entregarlo a los nuevos suscriptores. |
|
|
Distribuye los mensajes de un tema entre varios suscriptores para balancear la carga. |
|
|
Ofrece controles detallados de suscripción para filtrar mensajes y evitar tráfico innecesario. |
|
|
Habilita la comunicación de solicitud-respuesta sobre MQTT, similar a las llamadas RPC de HTTP. |
|
|
Declara el formato de la carga útil de un mensaje, lo que permite el reenvío transparente y el uso de cargas útiles con formatos variables. |
|
|
Incorpora retroalimentación de conexión, códigos de error detallados y desconexión iniciada por el servidor para agilizar la resolución de problemas. |