Aller au contenu principal

RFC 7252 - The Constrained Application Protocol (CoAP)

Date de publication: Juin 2014
Statut: Standards Track
Auteurs: Z. Shelby, K. Hartke, C. Bormann


Résumé (Abstract)

Le Constrained Application Protocol (CoAP) est un protocole de transfert Web spécialisé pour une utilisation avec des nœuds contraints et des réseaux contraints (par exemple, à faible consommation d'énergie, avec pertes). Les nœuds ont souvent des microcontrôleurs 8 bits avec de petites quantités de ROM et RAM, tandis que les réseaux contraints tels que IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) ont souvent des taux d'erreur de paquets élevés et un débit typique de dizaines de kbit/s. Le protocole est conçu pour les applications machine-to-machine (M2M) telles que l'énergie intelligente et l'automatisation des bâtiments.

CoAP fournit un modèle d'interaction requête/réponse entre les points de terminaison d'application, prend en charge la découverte intégrée des services et des ressources, et inclut des concepts clés du Web tels que les URI et les types de médias Internet. CoAP est conçu pour s'interfacer facilement avec HTTP pour l'intégration avec le Web tout en répondant à des exigences spécialisées telles que le support multicast, une surcharge très faible et la simplicité pour les environnements contraints.


Contenu (Contents)


Ressources connexes


Référence rapide

Qu'est-ce que CoAP?

CoAP (Constrained Application Protocol) est un protocole Web spécialisé conçu pour les appareils Internet des objets (IoT) et les environnements contraints.

Caractéristiques clés

  • Léger - Convient aux appareils à ressources limitées
  • Basé sur UDP - Utilise le transport UDP avec sécurité DTLS optionnelle
  • RESTful - Modèle requête/réponse de type HTTP
  • Ressources observables - Supporte le modèle publication/abonnement
  • Découverte intégrée - Mécanismes de découverte de ressources et services
  • Support multicast - Découverte efficace des appareils

CoAP vs HTTP

CaractéristiqueHTTPCoAP
TransportTCPUDP
Surcharge d'en-têteGrande (centaines d'octets)Petite (4 octets fixes)
MéthodesGET/POST/PUT/DELETE...GET/POST/PUT/DELETE
Codes de réponse3 chiffres2 chiffres
Mise en cacheSupportéeSupportée
ProxySupportéSupporté
SécuritéTLSDTLS
Cas d'usageApplications WebAppareils IoT

Scénarios d'application

  • 🏠 Maison intelligente - Lumières, thermostats, capteurs
  • 🏭 Automatisation industrielle - Surveillance et contrôle d'appareils
  • Réseau électrique intelligent - Gestion de l'énergie
  • 🏢 Automatisation du bâtiment - Systèmes HVAC, éclairage
  • 📡 Réseaux à faible consommation - 6LoWPAN, LoRa, etc.