Qu’est-ce que le MQTT ?
Le MQTT (Message Queuing Telemetry Transport) est un protocole de communication conçu pour faciliter l’échange de messages entre des appareils, souvent dans des environnements où la bande passante ainsi que l’autonomie en énergie sont limitées et où les connexions sont peu fiables.
Il a été développé à l’origine par IBM dans les années 1990 pour des applications de télémétrie, puis il est devenu un standard très utilisé dans le domaine de l’Internet des Objets (IoT).
Le principe de base du MQTT repose sur un modèle de publication/abonnement :
- Publication : Un appareil (appelé « éditeur ») envoie un message à un « broker » (un serveur qui gère les communications).
- Abonnement : D’autres appareils (appelés « abonnés ») s’inscrivent auprès du broker pour recevoir des messages sur des sujets spécifiques.
- Transmission : Lorsque le broker reçoit le message d’un éditeur, il le transmet à tous les abonnés intéressés par ce sujet.
Une authentification par login et mot de passe permet au broker d’attribuer des droits d’accès individualisés par abonné aux données publiées pour chaque sujet.
Cas d’usage : Autosurveillance environnementale via MQTT
L’utilisation d’objets connectés via le protocole MQTT se révèle particulièrement adaptée à l’autosurveillance environnementale, notamment pour le suivi de sources d’eau ou de zones humides.
Dans ce cadre, plusieurs sites sont alors équipés de dataloggers MQTT, qui communiquent avec une plateforme IoT via un réseau cellulaire LTE-M. Ces dataloggers sont associés à divers capteurs permettant d’enregistrer un niveau d’eau, une température ou un taux d’oxygène. Ces mesures sont éventuellement complétées par une télérelève de température et d’humidité de l’air, ainsi que de pluviométrie.
Les données ainsi recueillies sont à la fois mises à disposition d’un bureau d’étude afin de réaliser un suivi comportemental du milieu surveillé, et sont aussi partagées en temps réel, en partie ou en totalité, avec la collectivité territoriale mandataire de cette étude.
Principaux avantages
1. Légèreté
Le MQTT est conçu pour être simple et léger, ce qui signifie qu’il utilise peu de ressources. Cela le rend idéal pour des appareils éco-conçus ou avec des capacités limitées, comme les capteurs ou les dispositifs portables.
2. Efficacité
Grâce à son modèle de publication/abonnement, le MQTT réduit le trafic réseau. Les appareils n’ont besoin d’envoyer des messages que lorsqu’il y a des informations à partager, ce qui économise de la bande passante et la consommation énergétique.
3. Fiabilité
Le protocole offre plusieurs niveaux de qualité de service (QoS), permettant aux utilisateurs de choisir le niveau de garantie pour la livraison des messages. Cela signifie que même si la connexion est instable, les messages peuvent être retransmis si nécessaire.
4. Puissance
Le MQTT peut facilement gérer un grand nombre d’appareils connectés. Il peut donc notamment être utilisé pour des applications IoT où des milliers, voire des millions, d’appareils doivent communiquer entre eux.
5. Simplicité
Le protocole est relativement simple à mettre en œuvre, ce qui permet aux développeurs de créer rapidement des applications qui utilisent le protocole MQTT pour la communication entre appareils.
6. Sécurité
Bien que le MQTT lui-même ne soit pas intrinsèquement sécurisé, il peut être utilisé avec des protocoles de sécurité tels que TLS/SSL pour chiffrer les données échangées, garantissant ainsi la confidentialité et l’intégrité des informations.
En conclusion…
Le protocole MQTT est un outil ouvert, à la fois léger, puissant et fiable.
Il permet d’assurer l’interopérabilité de la communication entre appareils de différentes natures et marques.
Il est particulièrement adapté à l’Internet des Objets et au partage des données.
Il est utilisable dans des environnements à haut niveau de cybersécurité.