第 4 章 · CoAP 受限应用协议详解 章节摘要:CoAP 是"给受限节点用的 Web"——它把 HTTP 的请求响应搬上 UDP,用极小的二进制报文与可观察机制服务低功耗、小内存的设备。本章先立资源模型,再拆报文与消息类型,接着讲方法与 Observe,最后落到 DTLS 安全与真实落地。读完你应当能在受限节点上设计出一套 REST 风格的资源接口。 学习目标 阅读完本章,你应当能够: 说明 CoAP 为何选择 UDP 且与 REST 语义对齐,理解"受限"是怎样影响设计的。 逐字段拆开 CoAP 报文头部(版本、类型、Token 长度、Code、消息 ID)。 区分 CON、NON、ACK、RST 四类消息,用 Token 与 Message ID 对齐请求响应。
章节摘要:CoAP 是"给受限节点用的 Web"——它把 HTTP 的请求响应搬上 UDP,用极小的二进制报文与可观察机制服务低功耗、小内存的设备。本章先立资源模型,再拆报文与消息类型,接着讲方法与 Observe,最后落到 DTLS 安全与真实落地。读完你应当能在受限节点上设计出一套 REST 风格的资源接口。
阅读完本章,你应当能够:
CoAP 的世界观很统一:一切皆资源,用 REST 风格暴露。设备把自己的状态"装饰"成可被 GET 读、可被 PUT 写的 URI,像一个小型 Web 服务器:
金句:MQTT 让你"对主题喊话",CoAP 让你"对资源点名"——前者是广播分发,后者是精确读写。
四节同样由外而内:4.1 定三观(REST 资源模型),4.2 拆报文(看懂字节与消息),4.3 讲方法(怎么操作资源和观察变化),4.4 上安全并落地(真实受限系统)。它和第 3 章 MQTT 是平行对照,遇到相似概念(可靠、观察)可回看第 3 章对比记忆。
① 模型 · 一切皆资源 受限节点的REST →② 报文 · 头部/类型/Message ID/Token →③ 方法 · GET-POST-PUT-DELETE 与 Observe →④ 安全 · DTLS 与受限落地
学完第 4 章,用下面这张可考核清单自查:
第四章是"三层握手台"与 MQTT 并列的另一根支柱——CoAP。它回答"同一类有 IP 的受限设备,除 MQTT 之外的另一种对话方式":MQTT 坐 TCP、靠主题与 QoS 双向可靠,CoAP 坐 UDP、靠 REST 与 Observe 省电按需。两者在报文开销、可靠承担与语义模型上的差异,是第 6 章 6.1 对比台账的第一手素材;CoAP 的 DTLS 安全又与第 7 章整体安全议题咬合;而它的"资源化 + 代理可互操作",为第 8 章 Web 与 IoT 互操作演进埋了伏笔。所以本章既是一套独立协议的教学,也是后文多次横向对照的关键坐标点。
前置:会读 HTTP 的 GET/POST 基本语义即可;若已学第 3 章 MQTT,对比更能加深理解。
本章素材在 6.1"MQTT 与 CoAP 对比"里会再拿出来,也是第 7 章安全、第 8 章互操作(线程组、结构文档化)话题的背景板。