物联网中常见的应用层协议解释物联网在理论上很简单:利用互联网的巨大连接将数据从最小的设备(例如交换机和传感器)发送到云、本地服务器群或大型数据平台,以更准确地对世界进行建模. 该模型构成了全新类别的应用程序、分析以及以前无法想象的效率和优化的基础。 就技术创新和社会重要性而言,基于物联网的应用程序的全球增长使云看起来很温和。物联网为世界提供了自动化工业运营、个人医疗监控、交通控制和智能家居。这份清单很长,而且还在不断增加。 然而,对于物联网推动的所有可用连接和技术革命,它提出了在更传统的网络场景中很少见的通信挑战。 了解物联网通信挑战 物联网中的应用层协议必须解决物联网网络中的一些主要挑战通讯。物联网中的数据比传统网络中的数据更复杂。在一个简单的场景中,传感器向本地网络报告温度,然后通过互联网将数据传递到云。复杂的场景可能会变得像工厂车间多台机器之间的对话一样棘手,当环境传感器报告检测到火灾时,它们有选择地关闭电源,而云AI系统则监控关闭并将事件报告给多个外部系统。简单的场景包括单一数据类型和一个方向移动的单一消息。复杂的一种在许多必须有效交换数据的设备之间的许多消息中包括许多数据类型。硬件本身可能会有很大差异。 传统的协议标准HTTP不一定适用于小型设备。一些物联网设备支持HTTP并受益于HTTP传输的功能,但许多(如果不是大多数)不是也不能。HTTP设计用于非常繁重、丰富的通信,而考虑到大多数设备的小尺寸和稀疏硬件和固件,大多数物联网通信必然是最小的。一个 HTTP头可以包含数百个字节;这在大多数互联网通信中不算什么,但对于大多数物联网设备来说却是巨大的。需要更精简且能够承载HTTP但不是HTTP的协议。 应用层的工作原理 一些物联网设备直接内置网络功能,但大多数通过网关连接到互联网。 物联网利用开放系统互连模型,该模型采用七个交互层来处理消息传输的每个阶段。物联网应用层是七层之一,其中三层对物联网应用协议特别重要。 物理网络层是移动数据的实际基础设施,例如以太网、Wi-Fi 或蓝牙。 传输层是支持数据移动的协议,例如传输控制协议 (TCP)、HTTP 或用户数据报协议(UDP)。 应用层是物联网设备与其将与之通信的网络之间的接口。它处理数据格式化和呈现,并充当物联网设备正在执行的操作与其生成的数据的网络切换之间的桥梁。 物联网中的顶级应用层协议 工程师有许多物联网应用层协议可供选择,涵盖广泛的功能。特定物联网应用程序的正确协议取决于许多因素,具体取决于所涉及的设备类型及其将执行的功能: 数据延迟。数据传输需要多快?一个数据包从一个点移动到另一个点需要多少时间? 可靠性。物联网应用中数据丢失的后果有多大?设备通信必须有多冗余? 带宽。需要容纳的数据量是多少? 运输。物联网应用程序的最佳传输协议是什么?TCP、UDP 和 HTTP 各自提供了可以被与之兼容的应用层协议利用的功能。 在考虑特定协议以确定哪些功能最重要之前,工程师必须回答这些问题。 对物联网最重要的五种顶级协议及其功能是: 受限应用协议。组织使用CoAP和有限的硬件,因为它是轻量级的,因此传输速率很低。该协议对HTTP友好,使用两种基本消息类型:请求和响应。消息可以是可确认的或不可确认的。数据包小,所以报文丢失少。缺点是协议缺乏安全性,工程师通常可以通过数据报传输层安全性来弥补,但DTLS在物联网中的使用有限。 消息队列遥测传输。MQTT 是一种发布/订阅协议,它对于通过TCP的轻量级机器对机器 (M2M) 连接有效并最大限度地减少数据丢失。发布或订阅物联网意味着客户端不必调用更新,从而减少网络流量和处理负载。该协议还适应一系列质量执行级别,从单次握手交付到确认要求。 可扩展的消息和在线协议。XMPP基于XML,XML是一种文档编码标记语言,因其对人类友好的可读性而广受欢迎。作为HTML扩展,XMPP可用于实时通信,包括状态、内容联合和即时消息。该协议具有高度可扩展性,并提供设备数据承载节点,这些节点可以根据请求与其他节点连接,以创建复杂的本地网络和数据共享。 高级消息队列协议。AMQP是一种异步协议。与MQTT一样,它使用发布或订阅方法。工程师主要通过TCP使用该协议,但它也支持其他传输方法。该协议质量灵活,并提供可选的一个或多个交付保证。AMQP 通过传输层安全和安全套接字层实现安全。 代表性状态转移。REST 是最普遍的协议,它通过HTTP提供IoT同步请求-响应。HTTP使其功能丰富,并且能够进行身份验证和缓存,这两者在复杂环境中都很有用,但在物联网中很难实现。该协议同时兼容XML和JSON,这对于M2M以及与平板电脑和智能手机的通信非常有用,这对IoT来说是一个福音。 下一篇如何选择物联网无线网络
文章分类:
新闻动态
|