5.4.6 选项编号
一个option由一个option编号所定义,这个编号也能提供一些额外的语义信息,比如,奇数编号代表一个重要option,偶数编号代表非重要option。注意,这不只是一个约定,也是协议的一个功能:option是否重要,取决于这个option编号是奇数还是偶数。
更通俗点说,一个option编号由一位掩码来确定这个option是否重要,是unsafe还是safe-to-forward,还有,如果是safe-to-forward,还提供一个cache-key,如下图所示。在下文中,这位掩码被表示成为一个字节,当LSB格式时,option编号表示成无符号整数。当bit7(最低有效位)是1,option是重要(同样,如果是0的话为非重要)。当bit6是1,option是unsafe(同样,如果是0的话为safe-to-forward)。当bit6是0的时候,也就是这个option不是unsafe。当且仅当bit 3-5全都设置为1的时候它不是一个cache-key(NoCacheKey),所有其他的bit的组合,代表它确实是一个Cache-Key。这些options的分类在下面章节中有阐述。
一个端可以使用一段等价的C代码(如图11),来得到这个option的编号“onum”的特性。
Option的编号都定义在CoAP选项编号文档中(见12.2节)。
最后更新于
这有帮助吗?