Blog

Blog

PHODAL

CoAP与物联网系统

CoAP简介

引自维基百科上的介绍,用的是谷歌翻译。。。

受约束的应用协议(COAP)是一种软件协议旨在以非常简单的电子设备,使他们能够在互联网上进行交互式通信中使用。它特别针对小型低功率传感器,开关,阀门和需要被控制或监督远程,通过标准的Internet网络类似的组件。 COAP是一个应用层协议,该协议是用于在资源受限的网络连接设备,例如无线传感器网络节点使用。 COAP被设计为容易地转换为HTTP与Web简化集成,同时也能满足特殊的要求,例如多播支持,非常低的开销,和简单性。多播,低开销,以及简单性是因特网极其重要物联网(IOT)和机器对机器(M2M)设备,这往往是积重难返,有太多的内存和电源,比传统的互联网设备有。因此,效率是非常重要的。 COAP可以在支持UDP或UDP的模拟大多数设备上运行。

简单地来说,CoAP简化了HTTP协议,只提供了REST的四个方法,PUT,GET,POST和DELETE,和其与HTTP的不同之处在于——CoAP简化了HTTP协议。至于为什么是REST可以看一下这个页面物联网系统设计的相关文章。

CoAP使用UDP的好处在于: 对于微小的资源受限,在资源受限的通信的IP的网络,HTTP不是一种可行的选择。它占用了太多的资源和太多的带宽。而对于物联网这种嵌入式设备来说,这是我们需要优先考虑的问题。

  • CoAP采用了二进制报头,而不是文本报头(text header)
  • CoAP降低了头的可用选项的数量。
  • CoAP减少了一些HTTP的方法
  • CoAP可以支持检测装置

看看这张图

CoAP & UDP
CoAP & UDP

CoAP相关库

在百科上找到了几个未来可能用到的库

  • Copper 一个Firefox的插件
  • node-coap Nodejs的CoAP库
  • libCoAP 轻量级的C实现
  • txThings CoAP库用于Twisted框架。

Arduino CoAP库

在Github上找到了两个库

https://github.com/1248/microcoap https://github.com/dgiannakop/Arduino-CoAP

需要借助于网络驱动板。

其他

最小物联网系统 CoAP版进行中

https://github.com/phodal/iot-coap

相关文章

CoAP与物联网系统

物联网系统与CoAP之Hello,World

CoAP与物联网系统之返回JSON

CoAP与物联网系统之返回XML

IoT CoAP 块传输——使用Block传输数据

构建基于CoAP SQLite Nodejs的物联网之查询数据

构建基于CoAP SQLite Nodejs的物联网之数据库

Liscense

© 2014 Phodal Huang. This code is distributed under the MIT license.

关于我

Github: @phodal     微博:@phodal     知乎:@phodal    

微信公众号(Phodal)

围观我的Github Idea墙, 也许,你会遇到心仪的项目

QQ技术交流群: 321689806

新书《全栈应用开发:精益实践》

这不是一本深入前端、后台、运维、设计、分析等各个领域的书籍。本书以实践的方式,将这一系列的领域及理论知识结合到一起,来帮助读者构建全栈Web 开发的知识体系,并辅以精益及敏捷的思想,来一步步开发Web 应用:从创建一个UI 原型到编写出静态的前端页面;从静态的前端页面到带后台的应用,并部署应用;从Web 后台开发API 到开发移动Web 应用。在这个过程中,我们还将介绍一些相辅相成的步骤:使用构建系统来加速Web 应用的开发;为应用添加数据分析工具来改进产品;使用分析工具来改善应用的性能;通过自动化部署来加快上线流程;从而帮助读者开发出一个真正可用的全栈 Web 应用。同时,我们也将帮助读者把这些步骤应用到现有的系统上,改进现有系统的开发流程。

comment

Feeds

RSS / Atom

最近文章

关于作者

Phodal Huang

Developer, Consultant, Writer, Designer

ThoughtWorks 高级咨询师

工程师 / 咨询师 / 作家 / 设计学徒

开源深度爱好者

出版有《自己动手设计物联网》、《全栈应用开发:精益实践》

联系我: h@phodal.com

微信公众号: 与我沟通

标签