O que é o MQTT? - Comunicações - Movimento Maker Portugal
O que é o MQTT?
nunoazev Dezembro 19, 2018, 11:01pm #1
O protocolo MQTT ( Message Queue Telemetry Transport ) está presente no dia a dia da Internet das Coisas (IoT) e o seu principal uso é fazer as máquinas conversarem entre si, também conhecido como Machine-to-Machine (M2M).
O MQTT é um protocolo de comunicação com baixo consumo de banda de rede e requisitos de hardware sendo extremamente simples e leve. O MQTT foi desenvolvido pela IBM e pela Eurotech e tem como finalidade enviar dados através de redes intermitentes ou com baixa banda de dados, para isto o protocolo foi desenvolvido em cima de vários conceitos que garantem uma alta taxa na entrega das mensagens.
O protocolo MQTT é baseado no TCP/IP e ambos, cliente e broker, necessitam da pilha TCP/IP para o seu funcionamento.
O MQTT utiliza o paradigma publish/subscribe (pub/sub) para a troca de mensagens.
O paradigma pub/sub implementa um middleware chamado de broker. O broker é responsável por receber, e disparar as mensagens recebidas dos publishers para os subscribers.
O publisher é responsável por se ligar ao broker e publicar as mensagens.
Já o subscriber é responsável por se ligar ao broker e receber as mensagens que ele tiver interesse.
O paradigma pub/sub utiliza o conceito de tópicos para processar as mensagens, em que cada mensagem é enviada para um determinado tópico. Diferente de outros protocolos de mensagem, o publisher não envia a mensagem diretamente ao subscriber, mas sim ao broker.
O publisher envia a mensagem para o broker em um determinado tópico. O broker é responsável por receber a mensagem do publisher e fazer uma pré-filtragem das mensagens e enviá-las para os subscribers que estivem registrados em um determinado tópico.
5EC448AC-F4B3-43B8-A0CA-ECF656B383D8.png1126×664 69.8 KB
Brokers e Clientes
Existem vários brokers MQTT disponíveis, uns pagos, uns gratuitos.
Broker gratuito para testes: https://github.com/mqtt/mqtt.github.io/wiki/public_brokers
Este artigo é uma breve introdução ao protocolo MQTT. No próximo artigo irei utilizar o protocolo para enviar e receber informações através do esp8266.