Ir para o conteúdo

MQTT

Origem: Wikipédia, a enciclopédia livre.
Estrutura padrão publish-subscriber do MQTT

MQTT, sigla de Message Queuing Telemetry Transport,[1] é um protocolo de mensagens leve para sensores e pequenos dispositivos móveis otimizado para redes TCP/IP.[2] O esquema de troca de mensagens é fundamentado no modelo Publicador-Subscritor, extremamente simples e leve. O protocolo segue princípios arquitetônicos que minimizam o uso de banda de rede e de recursos dos equipamentos, enquanto provê confiabilidade e algum nível de garantia de entrega. Esses princípios tornam este protocolo ideal para as comunicações emergentes machine-to-machine (M2M) e para as aplicações internet das coisas (IoT), além das aplicações mobile onde banda e potência da bateria são relevantes.[3] Atualmente se encontra na versão 5.0[4] e a 3.1.1[5] (padrão ISO), ambos são padrões OASIS. MQTT-SN é uma variação do protocolo destinada a redes que não sejam baseadas em TCP/IP, como ZigBee.[6] MQTT hoje é usado em uma ampla variedade de indústrias, como automotiva, manufatura, telecomunicações, petróleo e gás, etc.[7]

História

[editar | editar código]

O MQTT[8] é um protocolo de mensagens (camada de aplicação) projetado para um baixo consumo de banda de rede e recursos de hardware, desenvolvido pela IBM e Eurotech na década de 90.

Inicialmente, as letras "MQ" não tinham um significado específico para o protocolo, vinham de uma linha de produtos da IBM chamada 'MQ Series'.[9] O protocolo fornecia mensagens de publicação e subscrição sem filas de espera e foi especificamente projetado para dispositivos com recursos limitados, baixa largura de banda e redes de alta latência, assim como as linhas discadas e ligações via satélite.

Em 1999, Andy Stanford-Clark (IBM) e Arlen Nipper (Cirrus Link, Eurotech) criaram a primeira versão do protocolo MQTT. Sua primeira aplicação foi destinada ao monitoramento de oleodutos. O objetivo era um protocolo leve com economia de banda e baixo consumo de energia e hardware, uma vez que os aparelhos eram conectados via satélite que, na época, era um recurso extremamente caro.[10]

Em 2013, a IBM submeteu o MQTT v3.1 ao organismo de especificação da OASIS com uma carta que assegurava que apenas alterações menores à especificação poderiam ser aceitas.[11]

Atualmente, MQTT é um protocolo de comunicação máquina para máquina (M2M) com foco em internet das coisas (IoT).

MQTT métodos (methods)

[editar | editar código]

MQTT define pacotes de controle (Control Packets) [12] para indicar a ação desejada a ser executada pelo recurso desejado. O MQTT possui uma estrutura de pacotes de controle própria, que basicamente é constituída de três partes principais: Cabeçalho fixo, cabeçalho variável e o payload.

Referências

  1. «FAQ - Frequently Asked Questions | MQTT» (em inglês)
  2. Especificação do protocolo MQTT versão 3.1.1 (em inglês)
  3. «MQTT» (em inglês). Consultado em 24 de setembro de 2019
  4. «MQTT Version 5.0». docs.oasis-open.org. Consultado em 24 de setembro de 2019
  5. «MQTT Version 3.1.1». docs.oasis-open.org. Consultado em 24 de setembro de 2019
  6. Especificação do protocolo MQTT for Sensor Networks (MQTT-SN) versão 1.2 (em inglês)
  7. «MQTT - The Standard for IoT Messaging». mqtt.org. Consultado em 7 de novembro de 2020
  8. «Cross-Platform MQTT Client». ioctrl.com. Consultado em 4 de setembro de 2021. Cópia arquivada em 4 de setembro de 2021
  9. HiveMQ - Introdução ao protocolo MQTT (em inglês)
  10. Team, The HiveMQ. «Getting Started with MQTT». www.hivemq.com (em inglês). Consultado em 28 de setembro de 2020
  11. «Call for Participation: Message Queuing Telemetry Transport (MQTT) TC». lists.oasis-open.org. Consultado em 28 de setembro de 2020
  12. http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html MQTT Version 3.1.1 OASIS Standard
Ícone de esboço Este artigo sobre redes de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.