Coap(ConstrainedApplicationProtocol)是一种在物联网世界的类web协议,它的详细规范定义在RFC7252。COAP名字翻译来就是“受限应用协议”,顾名思义,使用在资源受限的物联网设备上。物联网设备的ram,rom都通常非常小,运行TCP和HTTP是不可以接受的。1COAP协议网络传输层由TCP改为UDP。
2它基于REST。服务器的资源地址类似于Internet。客户端还具有POST,GET,PUT和DELETE方法来访问服务器,从而简化了HTTP。3COAP采用二进制格式,HTTP采用文本格式,COAP比HTTP更紧凑。4轻量级,COAP最小长度仅为4B,一个HTTP头是几十个B.5支持可靠传输,数据重传,块传输。确保数据可靠地到达。
NON-不需要确认的请求。如果发送了NON请求,则另一方不必响应。这适用于重复且频繁发送的消息,丢包不会影响正常操作。这与UDP非常相似。用于不可靠的消息传递。
ACK-响应消息对应于CON消息的响应。RST-重置消息,当传输可靠时无法识别或错误接收消息时,无法返回ACK消息,并且必须返回RST消息。
标头的第一行(HEAD)是消息头,必须用4个字节固定。Ver:2bit,版本信息,目前必须写成0x01。T:2bit,消息类型,包括CON,NON。ACK,RST。TKL:4bit,令牌长度,目前支持0~8B长度,其他长度保留用于将来扩展。代码:8bit,分为前3bit(0~7)和后5bit(0~31),前3bit代表类型。
领取专属 10元无门槛券
私享最新 技术干货