COAP学习笔记2--Option
来源:互联网 发布:淘宝注册会员名大全 编辑:程序博客网 时间:2024/06/05 10:25
上一篇写到的COAP消息格式来自coap-18规范,但是发现它跟coap-03的规定不一样,按理说协议规范应该向下兼容,但事实不知道是我理解错了还是怎样~不过在实际的通信过程中信息格式是符合coap-03的。
还是建议阅读coap-03,比18更容易理解。
今天看了一下Option。
OC(Option Count)定义了Option在信息中的个数,实际上Option并不是必须的。这个可以理解在平时应用其他东西的时候,“选项”总是可有可无的嘛~
上边是Option的格式,主要包括三块。delta,length和value
从下边的抓包可以看出来OC=2说明有两个Option
delta:“增量”,然后再Option1的delta=7,option2的delta=6
因为delta1=option1.type=0;delta2=option2.type-option1.type。至此就可以理解为什么用delta来定义它了,即它就是一个增量。
length:是指选项后面所跟的字节数。
在coap中定义的Option包括:
C=Critical, U=Unsafe, N=NoCacheKey, R=Repeatable
以下是Californium在用JAVA实现coap时对Option的定义;
public static final int DEFAULT_MAX_AGE = 60;// draft-ietf-core-coap-13public static final int RESERVED_0 = 0;public static final int IF_MATCH = 1;public static final int URI_HOST = 3;public static final int ETAG = 4;public static final int IF_NONE_MATCH = 5;public static final int URI_PORT = 7;public static final int LOCATION_PATH = 8;public static final int URI_PATH = 11;public static final int CONTENT_TYPE = 12;public static final int MAX_AGE = 14;public static final int URI_QUERY = 15;public static final int ACCEPT = 16;public static final int LOCATION_QUERY = 20;public static final int PROXY_URI = 35;public static final int PROXY_SCHEME = 39;// draft-ietf-core-observe-07public static final int OBSERVE = 6;// draft-ietf-core-block-08public static final int BLOCK2 = 23;public static final int BLOCK1 = 27;public static final int SIZE = 28;// derived constantpublic static final int TOKEN_LEN = 8;public static final int ETAG_LEN = 8;
0 0
- COAP学习笔记2--Option
- CoAP学习笔记1--概述
- CoAP学习笔记——CoAP资源发现
- CoAP学习笔记——CoAP格式详解
- CoAP协议学习笔记——CoAP格式详解
- CoAP学习笔记——CoAP格式详解
- CoAP学习笔记——CoAP格式详解
- CoAP学习笔记——CoAP格式详解
- CoAP学习笔记——nodeJS node-coap安装和使用(Linux平台)
- CoAP学习笔记——nodeJS node-coap安装和使用(windows平台)
- CoAP学习笔记——nodeJS node-coap返回JSON数据包
- CoAP学习笔记——STM32平台上实现CoAP Server
- CoAP学习笔记——STM32平台上实现CoAP Server
- CoAP学习笔记——Libcoap安装和使用
- CoAP学习笔记——IETF文档和draft文档
- CoAP学习笔记——IETF文档和draft文档
- CoAP协议学习——CoAP基础
- CoAP协议学习——CoAP基础
- 在php中,session退出
- 【操作系统】请求分页储存管理方式
- PHP socket编程案例,参照视频教程
- ``Accordian'' Patience
- 动态IP或无公网IP时外网访问内网ORACLE数据库
- COAP学习笔记2--Option
- 船
- 数据库分页
- Oracle 用户管理(一)
- [Unity+Android]横版扫描二维码
- 动态IP或无公网IP时外网访问内网SQLSERVER数据库
- Singleton(二)
- ubuntu14.04 下修改mysql5.5编码
- 淘宝内部大量使用的开源系统监控工具:Tsar