CoAP 协议消息最小为4 字节,CoAP 协议的消息格式如图14-2 所示,以下是CoAP协议不同部分的描述。
Ver:2比特无符号整型,代表CoAP版本号,该规范的实现必须设置这个字段值为01,其他的值为以后版本保留,忽略带有未知版本号的消息。
T:2比特无符号整型,表示消息类型是CONfirmalbe(CON)时取值为0,类型是NONconfirmable(NON)时取值为1,类型是ACKnowledgement(ACK)时取值为2,类型是ReSeT(RST)时取值为3。这些消息类型相当于HTTP 协议的PUT、GET等。
TKL:4 比特无符号整型,表示变长的Token 字段(0~8 字节)的长度,长度9~15字节是保留的,不能设置长度为9~15,如果设置了长度为9~15,必须当作消息格式错误来处理。
Code:8 比特无符号整型,拆分为3 比特的分类信息(最重要的位)和5比特的细节信息(次重要的位)。该字段写作“c.dd”。c 是3 比特长,可以是一个从0到7的数字,dd是5比特长,从00到31的两位数字取值。分类信息c可以指示请求(0)、成功响应(2)、客户端错误响应(4)或者服务端错误响应(5),所有其他的值都是保留的。代码0.00 表示特殊情况,是空消息。当消息是请求消息时,Code 字段表示请求的方法。当消息响应是响应消息时,Code字段代表响应代码。(www.xing528.com)
Message ID:16比特无符号整型,以网络字节为序,用于检测消息重复以及匹配ACK/RST类型的消息和CON/NON类型的消息。
Token:可以有0~8 字节,由Token 长度字段指定。这个Token 值用于将某个请求和对应的响应关联。
Options:CoAP协议选项类似于HTTP请求头,它包括CoAP消息本身,例如CoAP端口号、CoAP主机和CoAP查询字符串等。
Payload:真正有用的交互数据。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。