1、 CoAP可以理解为一个轻量级的HTTP。主要目标就是设计一个通用Web协议,满足受限环境的特殊需求。CoAP不是盲目地压缩HTTP,而是实现一个针对M2M进行优化的与HTTP共同的REST形式的子集。虽然CoAP可以用于压缩简单的HTTP接口,更重要的是提供针对M2M的特性例如内置发现、多播支持和异步消息交换。CoAP可以轻易地翻译到HTTP,以满足对受限环境和M2M应用的特殊需求如多播支持、低开销和简单性的同时整合现有Web协议。
2、COAP模型。
COAP信息格式(Message Format)
通过wireshark抓包到COAP消息格式
对比可以清楚看到coap是通过UDP传输,端口号为5683;
COAP格式主要包括:
01 。。 。。。。 Version=1 2bits 版本号
。。00 。。。。 Type=0 2bits 类型(CON=0;NON=1;ACK=2 ;RST=3)
。。。。 0 0 0 0 OC=0 4bits 选项数(即Option Count ;信息发送时的附加选项设置,非必需)
0000 0001 code=1 1bytes 方法(GET,PUT ,POST,DELETE;比较复杂,后边再说 )
**************** TransactionID 2bytes MessageID 用来确认信息是否正确,发送一个CON接收到的ACK必须与CON的MessageID一致。
以上就是COAP的4字节头。
其中这个Token没有理解,在抓包的时候也没有抓到过相关的包...