0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CoAP协议是什么?

汽车电子技术 来源:码农与软件时代 作者:码农与软件时代 2023-02-15 14:26 次阅读
  1. CoAP协议是什么?

CoAP,全称是Constrained Application Protocol,译为受限制的应用协议,用于资源受限(CPU、内存、硬盘)的小型物联设备。

RFC 7252中有如下说明:

The interaction model of CoAP is similar to the client/server model of HTTP. However, machine-to-machine interactions typically result in a CoAP implementation acting in both client and server roles.

CoAP的交互模型类似于HTTP的客户端/服务器模型。但CoAP是双向通信

Unlike HTTP, CoAP deals with these interchanges synchronously over a datagram-oriented transport such as UDP.

与HTTP不同,CoAP通过面向数据报的传输(例如UDP)同步处理这些交换。

  1. 为什么会有CoAP协议?

计算机网络中,网络设备的资源都是相对充足的,传输层使用的是TCP协议,应用层使用的是HTTP协议,该协议构建在REST架构之上。

物联网中,网络环境通常是不稳定的,采集数据的传感设备资源往往是有限的,使用HTTP协议显然是不合适的。

那么,就需要在受限制的物联网环境中,实现类似HTTP协议却使用极少资源且用于M2M通信的应用层协议。

CoAP协议因此而诞生。

从产生的原因中,不难看出:

(1)CoAP协议使用请求/响应模型,能够双向通信;

(2)CoAP协议是Client和Server之间的点对点协议;

  1. CoAP协议是如何工作的?

(1)CoAP如何定位资源?

与HTTP协议类似:

使用coap://[IP Addr]:5683/sensors/temp;

使用coap://[IP Addr]:5684/sensors/temp;

同样地,使用的请求方法:GET\\POST\\PUT\\DELETE。

(2)CoAP协议能够保证消息可靠传输吗?

CoAP协议有4种消息:Confirmable Message(可确认消息)、Non-confirmable Message(无法确认的消息)、Acknowledgement Message(确认信息)、Reset Message(重置消息)。

CoAP协议通过可确认消息和确认信息来保证消息可靠传输。

(3)CoAP协议如何保证传输数据的安全性?

CoAP使用数据包传输层安全性协议DTLS来保证传输数据的安全。DTLS是基于SSL TLS协议架构上的扩展。

  1. 测试CoAP协议的开源工具有哪些?

开源工具有:浏览器Chrome插件Copper、coap-cli、libcoap。其中,libcoap是一个优秀的开源项目,使用C语言实现(https://github.com/obgm/libcoap)。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 协议
    +关注

    关注

    2

    文章

    570

    浏览量

    38911
  • 设备
    +关注

    关注

    2

    文章

    4172

    浏览量

    69267
  • CoAP
    +关注

    关注

    0

    文章

    9

    浏览量

    10531
收藏 人收藏

    评论

    相关推荐

    【WRTnode2R试用体验】使用 Coap 协议控制Wrtnode2R 的WLED

    /direction c. 设置gpio的值: echo v> /sys/class/gpio/gpio44/value在这里v=1时led为off状态,v=0时,led状态为on状态.3. 代码实现Coap协议
    发表于 11-10 16:20

    AliOS Things全链路优化-CoAP FOTA

    摘要: FOTA(Firmware Over-The-Air)即空中固件升级功能;CoAP(Constrained Application Protocol),字面意思为受限的应用协议,基于UDP
    发表于 12-28 15:35

    关于鸿蒙软总线的调试中遇到的问题

    创建了SessionServer,但是手机(EMUI 11 )搜不到设备 不知道什么问题 调试日志如下图我尝试用工具去模拟手机发广播包能收到我设备发上来的单播coap协议包 而且capabilityData是对应的
    发表于 10-28 18:24

    【HarmonyOS HiSpark AI Camera试用连载 】萌新闯关之物联网COAP协议梳理二

    今天我们来梳理作为物联网主要协议之一的CoAP协议(ps:为什么标题是2呢?那是因为这篇文章第一次发布失败后卡住,把标题占用了)前言:物联网的初衷之一也就是通过大数据的采集分析去颠覆去交通、运输
    发表于 12-15 20:21

    【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】将microcoap移植到鸿蒙系统

    https://github.com/1248/microcoap0、coap是指受限制的应用协议(Constrained Application Protocol),协议参考https
    发表于 01-10 23:57

    求Hi3861wifi的 coap 协议开发的示例

    coap协议在网上找的例程基本上都是在虚拟机上跑的,求一份c语言的coap客户端和服务器的例子
    发表于 07-04 18:33

    无法通过COAP POST发送数据怎么解决?

    我正在使用 2 个 ESP8266 板来测试 COAP 协议。 一个是 COAP 服务器,另一个是客户端。 我使用了 ESP8266-FreeRTOS-SDK 的 CoAP 示例,但是
    发表于 05-15 06:23

    无线物联网中CoAP协议的研究与实现

    由于物联网中的很多设备都是资源受限型的,即只有少量的内存空间和有限的计算能力,所以传统的HTTP协议应用在物联网上就显得过于庞大而不适用。 IETF的CoRE工作组提出了一种基于REST架构的CoAP协议
    发表于 04-27 10:49 8889次阅读
    无线物联网中<b class='flag-5'>CoAP</b><b class='flag-5'>协议</b>的研究与实现

    基于STM32平台的CoAP Server方案

    0.前言 CoAP是受限制的应用协议(Constrained Application Protocol)的代名词。在当前由PC机组成的世界,信息交换是通过TCP和应用层协议HTTP实现的。但是对于
    发表于 11-29 19:32 1085次阅读
     基于STM32平台的<b class='flag-5'>CoAP</b> Server方案

    nb-iot通信模块-使用BC95模组【可不走CoAP协议

    该模块是一款使用NB-IoT网络进行无线数据传输的嵌入式终端,采用移远BC95专业通信芯片,支持链接、IDLE、PSM状态,实现低达几个uA的值守功耗,支持UDP、 CoAP网络协议,为用户提供
    的头像 发表于 06-07 15:16 2w次阅读
    nb-iot通信模块-使用BC95模组【可不走<b class='flag-5'>CoAP</b><b class='flag-5'>协议</b>】

    中国电信物联网开放平台NB-IoT模组对接指导书免费下载

    在设备侧,智能设备采用了 NB-IOT 芯片,它和中国电信物联网开放平台之间通过 CoAP 协议通讯。CoAP 报文的 payload 里是设备的应用数据。
    发表于 02-25 08:00 103次下载
    中国电信物联网开放平台NB-IoT模组对接指导书免费下载

    CoAP协议中文版PDF电子书免费下载

    恰当的方式在受限节点(如 8位微控制器、较小RAM和ROM)和受限网络(例如6LoWPAN,[RFC4944])上实现REST 架构。6LoWPAN等受限网络支持把IPv6数据包分片成为小的链路层数据帧。然而,这导致数据发送成功率的下降。CoAP协议的设计目标之一是使数据
    发表于 03-09 08:00 0次下载
    <b class='flag-5'>CoAP</b><b class='flag-5'>协议</b>中文版PDF电子书免费下载

    大白NBIOT 移远BC28模块+stm32开发板例程、教程(打通TCP、COAP协议

    大白为了开发者能够快速入门BC28的开发,加快开发者的项目进度,大白开发出此款针对BC28的stm32开发板和完善的发送网络数据的示例程序(TCP协议COAP协议),程序流程逻辑清楚,注释完善
    发表于 12-03 17:51 9次下载
    大白NBIOT 移远BC28模块+stm32开发板例程、教程(打通TCP、<b class='flag-5'>COAP</b><b class='flag-5'>协议</b>)

    “不会过时”的协议CoAP与其他协议相比有何不同?

    什么是CoAP协议CoAP(ConstrainedApplicationProtocol,受限应用协议)是一种专为物联网(IoT)设备和资源受限网络设计的应用层
    的头像 发表于 10-20 08:21 469次阅读
    “不会过时”的<b class='flag-5'>协议</b>?<b class='flag-5'>CoAP</b>与其他<b class='flag-5'>协议</b>相比有何不同?

    COAP协议的双层模型及其传输特性

    作为物联网世界的主流协议之一,CoAP协议为低功耗受限设备的数据交互和网络接入提供了可能,IETF在RFC7252中对其进行了详细的定义,本文结合CoAP
    的头像 发表于 11-20 10:19 374次阅读
    <b class='flag-5'>COAP</b><b class='flag-5'>协议</b>的双层模型及其传输特性