MQTT – Protocole de messagerie légère Publish/Subscribe
MQTT (Message Queuing Telemetry Transport) est un protocole de plus en plus populaire, notamment pour le transfert de données des appareils physiques vers le cloud. Bien que ce protocole de messagerie existe en fait depuis plus de 20 ans, il n’a pris de l’importance que lorsqu’il a contribué à façonner l’Internet des objets (IoT). Ce protocole léger peut utiliser efficacement la bande passante disponible et s’est spécialisé dans la latence élevée. C’est pourquoi il est le protocole optimal pour la communication “machine to machine” (M2M). Dans cet article, nous allons en discuter les raisons.
Dans un modèle de communication Publish/Subscribe, il existe un degré élevé d’indépendance. La raison en est que les participants (clients) communiquent entre eux de manière asynchrone. Le “broker”, le centre de la communication, joue un rôle central. Les clients se connectent au broker et peuvent agir en tant que subscriber, publisher ou les deux. Dès que le broker reçoit un message d’un éditeur, il le transmet à tous les clients qui se sont abonnés à ce message.
Comment fonctionne MQTT ?Au lieu d’une architecture client/serveur traditionnelle, la transmission des données s’effectue avec MQTT selon le principe “Publish/Subscribe”. Le protocole est en outre très flexible en ce qui concerne la “qualité de service” (accord entre l’expéditeur et le destinataire sur la garantie de livraison d’un message). Grâce à sa légèreté, le protocole peut également être mis en œuvre dans des appareils aux ressources limitées.
Quels sont les courtiers MQTT disponibles ?Il existe différents types de brokers MQTT sur le marché, des versions open source (p. ex. Mosquito) aux produits commerciaux (p. ex. HiveMQ).
Données utiles – Que sont les topics et les payloads ?Outre la flexibilité de l’architecture de communication, le contenu des messages peut également être conçu librement. L’adressage des messages se fait par le biais de ce que l’on appelle des topics : une structure hiérarchique de certains thèmes, semblable à une URL. Des messages au contenu librement définissable (payload) peuvent ensuite être envoyés à ces topics. Le format JSON est souvent utilisé à cet effet, un format texte facile à lire pour les humains et facile à interpréter pour les logiciels. Pour donner tout de même aux clients et aux courtiers une certaine orientation sur la structure des données, on peut utiliser Sparkplug B ou OPC UA Pub Sub comme standard. Ces standards ajoutent des métadonnées au contenu afin que les abonnés puissent interpréter eux-mêmes la structure et le type de données qu’ils souhaitent recevoir. Les clients MQTT qui supportent ces standards peuvent ainsi communiquer plus facilement entre eux.
MQTT dans l’automatisation industrielleL’utilisation de MQTT prend également de plus en plus d’importance dans l’automatisation industrielle. De grands fournisseurs de cloud tels que Microsoft, Google et Amazon privilégient ce protocole pour la collecte de données et proposent donc des points d’entrée MQTT, comme par exemple l’Azure IoT Hub. D’autre part, la simplicité du protocole permet d’intégrer un client MQTT dans tous les types d’appareils : des systèmes Windows complets aux ordinateurs miniatures comme les Raspberry Pi ou les cartes Arduino. Aujourd’hui, il existe déjà des capteurs qui peuvent publier leurs données directement avec MQTT.
Quels produits offrent une prise en charge de MQTT ?De nombreux produits pour l’accès et le stockage des données supportent aujourd’hui MQTT de manière standard. Vous trouverez ici un bref aperçu avec des liens vers d’autres informations détaillées sur nos produits :
Nous vous en disons plus !
Si vous souhaitez en savoir plus sur MQTT ou sur son utilisation dans votre environnement de production, nos experts se feront un plaisir de vous en dire plus !