Les objets connectés : technologies utilisées (protocole MQTT,HTTP)

📝 Mini-cours GRATUIT

Les objets connectés par le protocole MQTT

Le protocole MQTT

Le protocole MQTT (Message Queuing Telemetry Transport) est un protocole de messagerie de type publication/souscription s'appuyant sur le protocole TCP/IP.

Caractéristiques principales

MQTT permet à deux équipements distants de communiquer via des messages avec une faible bande passante, donc une faible charge en données et une faible consommation. En raison de cela, ce protocole est spécialement dédié au monde du M2M (machine to machine) et aux objets connectés.

Plateformes supportées

MQTT est porté sur Arduino, STM32, les nano-ordinateurs LINUX de type Raspberry pi ou sur PC.

Architecture du système

Les clients sont connectés au monde physique (capteurs / actionneurs). Le Broker ou serveur MQTT concentre les données issues des clients.

Langages de programmation

Des librairies MQTT sont disponibles pour la conception de clients MQTT dans les langages comme C, C++, Java, C#, Python etc.

Position dans le modèle OSI

MQTT se situe sur la couche 5 du modèle OSI. Dans la couche 6, le message est codé (binaire, JSON, ASCII ou autre) et transmis à la couche 5 (MQTT) qui se charge du protocole. Les données MQTT sont alors encapsulées dans une trame TCP-IP (couche 4).

cielobjetsconnectes10

EN RÉSUMÉ

Avantages du MQTT

Avantages de MQTT

Flexibilité

MQTT est sur la couche "session" au-dessus de la couche réseau TCP/IP sur le modèle OSI, utilisée par les protocoles comme HTTP. MQTT est donc routable sur Internet. Il est possible de transmettre n'importe quel message sur les topics (sujets), de l'ASCII, du binaire ou du JSON.

Légèreté

Les échanges MQTT sont beaucoup plus légers que HTTP.

Sécurité

La sécurisation est possible avec un chiffrement SSL/TLS, mais cela a un coût non négligeable en termes de performances sur de l'embarqué. MQTT sécurisé ne peut être déployé sans consommation excessive qu'avec du matériel puissant ce qui exclut les Arduino 8 bits par exemple.

Intégrité des données

MQTT introduit la notion de qualité de service (QOS) qui permet à un client de s'assurer qu'un message a bien été transmis, avec différents niveaux de fiabilité.

EN RÉSUMÉ


FAQ