Sommai - Fotolia.

评估 衡量您正在考虑的技术,产品和项目的优缺点。

受限制的应用程序协议:CAAP是IOT的“现代”协议

Cyap正在取代更老,“沉重”协议,并帮助将事物互联网的承诺带到受限制的低功耗设备。

将网络带到缺乏计算机或智能手机功能的受限设备需要特殊的IOT协议,CoAP是一个适合该账单的这样的协议。

较新的协议比大多数更新,互联网工程任务力量(IETF)在2014年标准化了受约束的应用程序协议或COAP作为RFC 7252 - 基本上是专门为受限设备设计的HTTP。

受约束的应用协议是必要的,因为传统协议被认为是涉及受限设备的IOT应用程序的“太重”。IOT终端节点的网络往往是“损失”,但依赖于它们的低功耗器件将继续运作 - 电池供电或能量收集- 多年,需要尽可能少的能量。

CoAP是一种软件协议,它允许简单的受限“事物”(如低功耗传感器和执行器)通过互联网进行交互通信。它运行在支持用户数据报协议(UDP),并实现了“轻量级”应用层这具有小的信息大小,消息管理和轻量级信息,非常适合低功耗,低存储器设备。

IOT领域广泛使用COAP作为家庭自动化和众多工业应用的协议。它还用于使用Open Mobile Alliance(OMA)轻量级机器到机器(LWM2M)协议的设备管理设备,以及其他组织 - 包括开放式连接基础和ZigBee - 将Coop作为其框架的核心协议攻丝产品实现。

为了跟上寒武纪的冰袋的爆炸,即连接的“事物”的增长,一个专门针对约束设备(如CYAP)设计的物联网协议具有重要作用。

在非常拥挤的无线网络(Wi-Fi或蜂窝网络)上,CoAP可以继续工作,而像MQTT这样的TCP协议甚至无法完成握手。
朱利安Vermillard软件开发的主要工程师,塞拉无线

在早期的采用者中,塞拉无线是使用CAAP的IOT云。“我们主要使用它来将基于Legato.IO的设备连接到我们的云使用OMA LWM2M,这是基于CAAP的,”朱利安Vermillard他是Sierra Wireless公司软件开发的首席工程师。

有Myriad其他物联网应用程序进行块,以及克里斯马蒂苏Citrix Octoblu的IoT Engineering总监是看它的“最常用于低带宽场景,如卫星通信和较小的节能传感器。”

CoAP与其他物联网协议

在设计受约束的应用程序协议时,IETF的目标是确保它会很好地扩展并提供可扩展性 - 并且它确实如此,它确实如此,它确实如此。

其他物联网协议包括众所周知的HTTP,WebSocket,可扩展的消息传递协议(XMPP)MQ遥测运输(MQTT)- 其中大部分至少有十年或两个。

根据Carsten Bormann和Jaime Jimenez,IETF受到约束的宁静环境(核心)工作组的椅子,其中一些其他协议仍然可以进行远程过程调用或促进普通发布/订阅,如MQTT。

乍一看,这些替代方案似乎很吸引人,但Bormann和Jimenez指出:“它们的可伸缩性很差,而且不能提供CoAP等基于rest的替代方案的可扩展性。”

值得注意的是,CAAP和其他物联网协议可以很好地一起玩。Matthieu看到转变为控制无人机和流动的农业IOT应用程序的现场传感器数据以及“这两者用例他指出,更多地依赖于能源效率和快速的通信,“他指出。octoblu的平台“允许COAP设备”谈话“到MQTT,HTTP,WebSocket,XMPP和AMQP设备 - 以及反之亦然 - 因此,根据每个用例的要求,很容易混合和匹配设备和协议。”

最终,只有众所周知网络宁静模型对于受限制的设备和网络,“最适合将设备保持为愚蠢的应用程序,只能暴露传感器的值和执行器端点,”威尔明德表示。

关键块福利

根据Bormann和Jimenez的说法,受约束的应用程序协议提供的主要好处之一是,该协议被设计成无缝地映射到现有的web协议(如HTTP)。它还“提供了简单的资源发现、安全性,并维护了在web上使用的关键概念,如统一资源标识符、方法和媒体类型,”他们说。也许同样重要的是,“它非常简单,并且基于RESTful。”

早期采用者认为,受约束的应用程序协议对于受限网络和设备非常好。没有众所周知的东西:“在非常拥挤的无线网络上 - Wi-Fi或蜂窝 - COAP可以继续工作,在那里基于传输控制协议(TCP像MQTT这样的协议甚至不能完成一次握手,”Vermillard说。

这是因为与大多数其他物联网协议不同,CoAP是建立在UDP基础上的。换句话说,这意味着不像使用TCP时那样进行协议握手或错误纠正。“CoAP可能不像HTTP那样可靠,也不像MQTT那样保证消息的传递,但它非常快,”Matthieu指出。“如果你可以接受一些信息没有被接收,你可以在同一时间内发送更多的信息。”

能够快速发送许多信息是很有用的。Octoblu的一名开发者在一场战斗机器人比赛中使用CoAP控制了一个机器人,并能够向他的机器人发送比其他竞争者多三倍的信息——最终让他赢得了比赛。

受限应用协议安全性

IETF设计了CAAP以“从使用数据报传输层安全(DTL)来源的全力安全性(DTL),一个类似协议传输层安全(TLS)的版本,可以保护大网站 - 不影响安全参数”Bormann和Bormann和吉尼斯说。

由于CoAP安全是基于可靠的DTLS标准,Vermillard说他并不担心。“如果你想在CoAP之上建立一个密钥管理机制,可以由LWM2M来处理,”他补充说。

为了额外的安全性,octoblulu选择了实现它的REST API进入支持的每个协议。“我们的CoAP API依赖于设备唯一标识符(UUID)和秘密令牌,“Matthieu解释道。”这与我们的HTTP REST API相同。octoblu的IoT角色管理子系统允许您指定哪些UUID可以访问发现,订阅,消息或配置其他UUID。“

受约束的应用程序协议确实有一些相当有趣的怪癖加密流量正如马修所指出的那样。因为CoAP是一个基于UDP的协议与其他物联网协议不同,它不能使用TLS加密。“Cyap必须使用与TL有意的DTLS,”他说。“除了DTL必须解决两个问题:数据包丢失和重新排序。DTLS实现数据包重传,在握手和重放检测中分配序列号。”看RFC 6347有关详细信息。

CoAP发展迅速

与所有新协议部署一样,正在进行工作以继续改进块。IETF的未来CAAP工作包括“除DTL,组通信,管理和交互模型之外的新安全模式,”Bormann和Jimenez表示。IETF的核心工作组正在解决这些问题,并鼓励参与。

在受约束申请协议的早期采用者遇到的问题方面,蜡狼警告说,拍摄传动设施可以是一点性能猪。“所以要小心和性能 - 测试你的牌丢失应用程序,以避免在以后发现问题,”他建议。

与拍照相关的挑战octoblu.使用其目前在Amazon Web服务中运行的IOT堆栈中遇到的是AWS的弹性负载平衡服务非常适合支持TCP流量的IPv6 - 但不是UDP。“要扩展IPv6支持CAAP,我们部署了AWS之外的基于UDP的IPv6服务,”Matthieu指出。“同时支持拍摄有一些初步挑战......这是一个非常的挑战现代物联网协议有许多新的好处。“

下一步

了解更多关于MQTT协议

考虑您的选择非实时数据交换物联网协议

为您的企业做好准备IOT波

在物联网上深入挖掘(物联网)无线

搜索CIO.

搜索安全

搜索联网

搜索数据中心

搜索数据管理

关闭