The Constrained Application Protocol
RFC 7252, “The Constrained Application Protocol”, is a Proposed Standard document published in June 2014 by Z. Shelby, K. Hartke, C. Bormann. It has since been updated by RFC 7959, RFC 8613, RFC 8974, RFC 9175, RFC 9876. The canonical text is published by the RFC Editor.
Abstract
The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained (e.g., low-power, lossy) networks. The nodes often have 8-bit microcontrollers with small amounts of ROM and RAM, while constrained networks such as IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) often have high packet error rates and a typical throughput of 10s of kbit/s. The protocol is designed for machine- to-machine (M2M) applications such as smart energy and building automation.
CoAP provides a request/response interaction model between application endpoints, supports built-in discovery of services and resources, and includes key concepts of the Web such as URIs and Internet media types. CoAP is designed to easily interface with HTTP for integration with the Web while meeting specialized requirements such as multicast support, very low overhead, and simplicity for constrained environments.
What “Proposed Standard” means
An entry-level standards-track specification: stable, peer-reviewed and a solid basis for implementation, though it may still evolve before becoming an Internet Standard.
The canonical text of RFC 7252 is hosted at rfc-editor.org. Available in TXT,HTML.
- RFC 7251 AES-CCM Elliptic Curve Cryptography Cipher Suites for TLS
- RFC 7253 The OCB Authenticated-Encryption Algorithm
- RFC 7250 Using Raw Public Keys in Transport Layer Security and Datagram Transport Layer Security
- RFC 7254 A Uniform Resource Name Namespace for the Global System for Mobile Communications Association and the International Mobile station Equipment Identity
- RFC 7249 Internet Numbers Registries
- RFC 7255 Using the International Mobile station Equipment Identity Uniform Resource Name as an Instance ID
- RFC 7248 Interworking between the Session Initiation Protocol and the Extensible Messaging and Presence Protocol : Presence
- RFC 7256 Multicast Control Extensions for the Access Node Control Protocol