¿Qué es MQTT? Diferencia entre el protocolo mqtt y el protocolo http

Resumen: ¿Qué es MQTT? MQTT (Message Queuing Telemetry Transport) se traduce como: Message Queuing Telemetry Transport, que es un protocolo de comunicación ligero que se utiliza para transmitir mensajes en la red. MQTT fue lanzado originalmente por IBM y luego se convirtió en un estándar abierto de OASIS (Organización para el Avance de los Estándares de Información Estructurada).

    ¿Qué es MQTT? MQTT (Message Queuing Telemetry Transport) se traduce como: Message Queuing Telemetry Transport, que es un protocolo de comunicación ligero que se utiliza para transmitir mensajes en la red. MQTT fue lanzado originalmente por IBM y luego se convirtió en un estándar abierto de OASIS (Organización para el Avance de los Estándares de Información Estructurada). MQTT está específicamente diseñado para transmitir mensajes en entornos de red pequeños, de bajo ancho de banda, de alta latencia o inestables, y se usa ampliamente en comunicaciones de Internet de las cosas (IoT) y de máquina a máquina (M2M) .

El concepto de diseño central     de MQTT es el modelo de publicación/suscripción (Publicar/Suscribir) , en el que el editor del mensaje (Editor) publica el mensaje en un tema específico (Tema) y el suscriptor del mensaje (Suscriptor) lo recibe. suscribiéndose a un tema específico de noticias . Este modelo desacopla el emisor y el receptor de mensajes y admite modos de comunicación de mensajes flexibles y dinámicos.

    MQTT proporciona algunas características clave, que incluyen:

    Ligero : MQTT es un protocolo liviano que utiliza un formato de protocolo binario y encabezados de mensajes compactos , lo que lo convierte en un bajo consumo de ancho de banda y almacenamiento en entornos con recursos limitados.

    Confiabilidad : MQTT admite tres niveles de calidad de entrega de mensajes (QoS) diferentes: 0, 1 y 2, y se puede seleccionar el nivel de QoS adecuado de acuerdo con los requisitos de la aplicación para garantizar una entrega de mensajes confiable.

    Flexibilidad : MQTT proporciona un mecanismo completo de tema (Tema) y suscripción (Suscripción) , que puede admitir temas de varios niveles y comodines, para que la publicación y suscripción de mensajes se pueda administrar y controlar de manera flexible.

    Seguridad : MQTT admite la transmisión encriptada basada en TLS/SSL , lo que puede garantizar la seguridad y confidencialidad de los mensajes durante la transmisión. Al mismo tiempo, MQTT también admite mecanismos de autenticación y autorización, que pueden realizar la verificación de identidad y la gestión de autorización en los clientes.

   Amplia aplicación : MQTT se usa ampliamente en los campos de Internet de las cosas y M2M, y se usa en varios escenarios, como redes de sensores , monitoreo remoto, hogares inteligentes, automatización industrial e Internet de vehículos.

    Diferencia entre el protocolo mqtt y el protocolo http

    1. Modelo de comunicación : MQTT es un protocolo basado en el modelo de publicación/suscripción (Publish/Subscribe) , en el que un servidor MQTT (también conocido como proxy MQTT o servidor proxy MQTT) se encarga de publicar y suscribir datos intermediarios . Y HTTP es un protocolo basado en el modelo de solicitud/respuesta (Request/Response) , el cliente envía una solicitud y espera a que el servidor responda.

    2. Método de transmisión de datos : MQTT utiliza un protocolo binario ligero para transmitir datos y transmite datos a través de TCP/IP u otros protocolos de capa de transporte, con bajo ancho de banda y bajo consumo de recursos. HTTP utiliza un protocolo de texto para transferir datos, generalmente a través de TCP/IP.

    3. Retención de la conexión : MQTT admite la conexión persistente y la reconexión después de la desconexión. El cliente puede mantener una conexión a largo plazo y recibir datos enviados por el servidor. Y HTTP es un protocolo sin estado, cada solicitud debe restablecer la conexión.

    4. Tiempo real : MQTT admite envío de mensajes en tiempo real, que es adecuado para escenarios con altos requisitos en tiempo real, como las aplicaciones de Internet de las cosas (IoT). HTTP es generalmente un modelo de solicitud/respuesta, no adecuado para la transmisión de datos en tiempo real.

    5. Sobrecarga de red : MQTT generalmente tiene una sobrecarga de red más baja porque usa un protocolo binario y admite compresión. Sin embargo, HTTP usa un protocolo de texto, lo que puede generar una gran sobrecarga de red.

    6. Seguridad : MQTT admite transmisión encriptada SSL/TLS, lo que puede garantizar la seguridad de los datos. HTTP también se puede transmitir encriptado a través de HTTPS, pero el valor predeterminado es la transmisión de texto claro.

    7. Escenarios aplicables : MQTT generalmente se usa en Internet de las cosas (IoT) y redes de sensores, y es adecuado para escenarios que necesitan transmitir datos en tiempo real. HTTP es adecuado para transferir datos de texto grandes o escenarios que requieren un modelo de solicitud/respuesta, como la navegación web y las aplicaciones cliente/servidor.

Supongo que te gusta

Origin blog.csdn.net/liuqinhou/article/details/130875218
Recomendado
Clasificación