Google Cloud IoT Core ne sera plus disponible à compter du 16 août 2023. Pour en savoir plus, contactez l'équipe chargée de votre compte Google Cloud.

Protocoles

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Cloud IoT Core accepte deux protocoles de connexion et de communication pour les appareils: MQTT et HTTP. Les appareils communiquent avec Cloud IoT Core via un pont MQTT ou HTTP. Le pont MQTT/HTTP est un composant central de Cloud IoT Core, comme illustré dans la présentation des composants.

Lorsque vous créez un registre d'appareils, vous sélectionnez des protocoles à activer : MQTT, HTTP ou les deux.

  • MQTT est un protocole standard de publication et d'abonnement qui est fréquemment utilisé et compatible avec les appareils intégrés. Il est également courant dans les interactions de machine à machine.

  • HTTP est un protocole "sans connexion" : avec le pont HTTP, les appareils ne maintiennent pas de connexion à Cloud IoT Core. Au lieu de cela, ils envoient des requêtes et reçoivent des réponses. Cloud IoT Core n'est compatible qu'avec le protocole HTTP 1.1 (et non la version 2.0).

Le tableau suivant compare le fonctionnement des deux protocoles dans Cloud IoT Core :

Pont MQTT Pont HTTP
La connexion de l'appareil est maintenue Sans connexion (demande/réponse)
Connexion TCP full-duplex Connexion TCP semi-duplex
JWT est envoyé dans le champ du mot de passe du message CONNECT. Le jeton JWT est envoyé dans l'en-tête Authorization de la requête HTTP
Les événements de télémétrie sont transférés vers Cloud Pub/Sub Les événements de télémétrie sont transférés vers Cloud Pub/Sub
L'état de la connexion de l'appareil est signalé Aucun état de connexion de l'appareil n'est signalé
Les configurations des appareils sont propagées via des abonnements Les configurations d'appareil doivent être explicitement demandées (via les sondages)
La configuration la plus récente (récente ou non) est toujours reçue par les appareils sur abonnement Les appareils peuvent spécifier que seules les configurations plus récentes doivent être reçues
Les configurations d'appareil sont confirmées (accusés de réception) lors de l'utilisation de QoS 1 Aucun ACK explicite pour les configurations d'appareil
L'heure de la dernière pulsation de l'appareil est conservée Aucune donnée de pulsation sur l'appareil

Vous pouvez également prendre en compte les fonctionnalités générales suivantes de chaque protocole :

MQTT HTTP
  • Consommation de bande passante plus faible
  • Latence réduite
  • Débit plus élevé
  • Compatible avec les données binaires brutes
  • Plus léger (prise en main facile ; commandes curl simples)
  • Moins de problèmes de pare-feu
  • Les données binaires doivent être encodées en base64, ce qui nécessite davantage de ressources réseau et de processeur

Les deux ponts utilisent l'authentification par appareil à clé publique (asymétrique) et des jetons Web JSON (JWT). Pour en savoir plus, consultez la section sur la sécurité des appareils.