Block-Wise Transfers in the Constrained Application Protocol (CoAP)
Metadata
- Publisher
- IETF
- Doc Type
- Standard
- Pages
- 37
- Abstract
- The Constrained Application Protocol (CoAP) is a RESTful transfer protocol for constrained nodes and networks. Basic CoAP messages work well for small payloads from sensors and actuators; however, applications will need to transfer larger payloads occasionally -- for instance, for firmware updates. In contrast to HTTP, where TCP does the grunt work of segmenting and resequencing, CoAP is based on datagram transports such as UDP or Datagram Transport Layer Security (DTLS). These transports only offer fragmentation, which is even more problematic in constrained nodes and networks, limiting the maximum size of resource representations that can practically be transferred. Instead of relying on IP fragmentation, this specification extends basic CoAP with a pair of "Block" options for transferring multiple blocks of information from a resource representation in multiple request-response pairs. In many important cases, the Block options enable a server to be truly stateless: the server can handle each block transfer separately, with no need for a connection setup or other server-side memory of previous block transfers. Essentially, the Block options provide a minimal way to transfer larger representations in a block-wise fashion. A CoAP implementation that does not support these options generally is limited in the size of the representations that can be exchanged, so there is an expectation that the Block options will be widely used in CoAP implementations. Therefore, this specification updates RFC 7252.
- Publication Date
- 2016-08-01
- Status Note
- Proposed Standard
- DOI
10.17487/RFC7959- Link
- https://doi.org/10.17487/RFC7959
- Author(s)
- Carsten BormannZach Shelby
- Keyword(s)
- CoAP, Constrained Application Protocol, REST, IoT, Smart Object, Constrained Node
Latest version of IETF RFC 7959
Document Versions — IETF RFC 7959
-
▶ IETF RFC 7959 (2016-08-01)THIS DOC [ACTIVE] [LATEST VERSION]
Normative Reference(s)
- IETF RFC 2119 [Active*]
- IETF RFC 7252 [Active*]
- IETF RFC 7641 [Active*]
Bibliographic Reference(s)
- Fielding, R., "Architectural Styles and the Design of Network-based Software Architectures", Ph.D. Dissertation, University of California, Irvine, 2000, < http://www.ics.uci.edu/~fielding/pubs/dissertation/ fielding_dissertation.pdf >. EXTERNAL
- IETF RFC 4919 [Active*]
- IETF RFC 4944 [Active*]
- IETF RFC 6690 [Active*]
- IETF RFC 7228 [Active*]
- IETF RFC 7230 [Superseded*]
- IETF RFC 7233 [Superseded*]
Source Data (JSON)
Full registry record with provenance metadata. Open directly: /api/doc/RFC7959.json
Reference Tree
Explore all references and references to this document, as a navigable tree.
Open Reference TreeReference this Doc
Plain text (ISO 690 compliant)
Preview:
IETF RFC 7959, Block-Wise Transfers in the Constrained Application Protocol (CoAP). Available at https://doi.org/10.17487/RFC7959
Snippet:
IETF RFC 7959, Block-Wise Transfers in the Constrained Application Protocol (CoAP). Available at https://doi.org/10.17487/RFC7959
HTML (ISO 690 compliant)
Preview:
IETF RFC 7959, Block-Wise Transfers in the Constrained Application Protocol (CoAP). Available at https://doi.org/10.17487/RFC7959
Snippet:
<span class="citation"><cite>IETF RFC 7959</cite>, Block-Wise Transfers in the Constrained Application Protocol (CoAP). Available at <a href="https://doi.org/10.17487/RFC7959" target="_blank" rel="noopener">https://doi.org/10.17487/RFC7959</a></span>
SMPTE's HTML Pub
Preview:
IETF RFC 7959, Block-Wise Transfers in the Constrained Application Protocol (CoAP)
doi: 10.17487/RFC7959
url: https://doi.org/10.17487/RFC7959
doi: 10.17487/RFC7959
url: https://doi.org/10.17487/RFC7959
Snippet:
<li> <cite id="bib-rfc7959">IETF RFC 7959</cite>, Block-Wise Transfers in the Constrained Application Protocol (CoAP) <span class="doi">10.17487/RFC7959</span> </li>
Referenced By
- IETF draft-ietf-core-object-security-08 [Active*]
- IETF RFC 8075 [Active*]
- IETF RFC 8132 [Active*]
- IETF RFC 8323 [Active*]