随着物联网技术的发展与普及,越来越多的智能设备具备了网络连接与数据传输能力。
物联网场景中设备大多都是资源限制型的,比如 CPU、RAM、Flash、网络宽带等。尤其是由电池供电的设备,对传输协议的功耗以及带宽非常敏感,直接使用 TCP 和 HTTP 协议来实现设备与平台之间的数据交换无法满足设备对低功耗的要求。
为了让这部分设备能够顺利接入网络,CoAP 协议应运而生。作为致力于为物联网各类场景提供数据连接能力的全托管 MQTT 消息服务,EMQX Cloud 也支持 CoAP 协议的设备接入,允许符合某种定义的 CoAP 消息格式向 EMQX Cloud 执行发布、订阅、和接收消息等操作。
本文将介绍如何使用 EMQX Cloud 实现 CoAP 协议设备的接入。
CoAP 协议简介
由于物联网场景复杂多样,设备端硬件条件、网络稳定性、流量限制、设备功耗以及设备连接数量等多方面因素造成物联网设备的消息传递与传统互联网场景有着很大不同,也因此产生了多种物联网通讯协议。
CoAP 协议网关作为一种在物联网世界的类 HTTP 的协议,使用在资源受限的物联网设备上,它的详细规范定义在 RFC 7252。
协议特性
CoAP 参考了很多 HTTP 的设计思路,同时也根据受限资源限制设备的具体情况改良了诸多设计细节,增加了很多实用的功能。如:
- 基于消息模型
- 传输层基于 UDP 协议,支持受限设备
- 使用类似 HTTP 请求的请求/响应模型,HTTP 是文本格式,CoAP 为二进制格式,且比 HTTP 更加紧凑
- 支持双向通信
- 轻量、低功耗
- 支持可靠传输,数据重传,块传输,确保数据可靠到达
- 支持 IP 多播
- 支持观察模式
- 支持异步通信

本文介绍了如何利用EMQXCloud实现资源受限的物联网设备通过CoAP协议进行低功耗数据交换,包括CoAP协议的特点、与MQTT的比较以及在EMQXCloud上的部署步骤和示例。
最低0.47元/天 解锁文章
269

被折叠的 条评论
为什么被折叠?



