物联网:协议总揽

物联网:协议总揽

 

物联网(IoT)从单一受限设备扩展到全系列的云系统,所有这些系统都通过一系列允许设备和服务器相互通信的协议进行连接。 我们来看看几个IoT协议。

国际电信联盟(ITU)将物联网定义为“信息社会的全球基础设施,通过基于现有的和不断发展的可互操作的信息和通信技术相互连接(物理和虚拟)的事物来实现先进的服务。”

物联网的范围正在不断扩大,因为基于物联网的解决方案正在扩展到几乎日常生活的所有领域,从智能家居到智能工业生产。工业4.0的发展已经开始。

“物联网”一词包含两个词 – 互联网和事物。 “物联网”一词指具有独特身份的各种物联网设备,它们具有执行某些类型数据的遥感,启动和实时监控的功能。物联网设备还可以直接或间接与其他连接的设备和应用程序实时交换数据,或者从其他设备收集数据,处理数据并将其发送到各种服务器。另一个术语“互联网”被定义为一个全球通信网络,连接全球数以万亿计算机,实现信息共享。

 

物联网:协议总揽

 

物联网:协议总揽

物联网架构
由于物联网能够通过互联网连接数十亿个异构对象,因此对动态分层架构有新的要求。图1展示了一个标准的物联网分层架构。
对象层:第一层(感知层)表示物联网的物理传感器来感知,收集和处理信息。
对象抽象层:通过安全通道将对象层获取的数据传输到服务管理层。数据可以通过3G,4G,GSM,UMTS,Wi-Fi,蓝牙,ZigBee等不同技术传输。
服务管理层:该层使IoT应用程序员能够处理异构对象,而不管硬件平台如何。
应用层:这使得高质量的智能服务能够按照他们的要求获取客户需要的东西。它涵盖智能家居,智能制造,交通运输,基于智能医疗的生物传感器设备等。
业务层:该层管理整个物联网系统的活动和服务。它负责根据应用层获取的数据构建业务模型,图表和流程图。

物联网协议

IEEE(电气和电子工程师协会)和ETSI(欧洲电信标准协会)已经为物联网定义了一些最重要的协议。这些在下面列出。

 

物联网:协议总揽

 

物联网:协议总揽

CoAP(Constrained Application Protocol约束应用协议):这是由IETF约束RESTful环境(CoRE)工作组创建的。 CoAP是受限设备的互联网应用协议。它被设计用于同一受限网络中的设备之间,互联网上的设备和通用节点之间,以及不同受限网络上的设备之间 – 都加入互联网。该协议专为基于HTTP协议的物联网系统而设计。 CoAP利用UDP协议实现轻量级。它还使用RESTful架构,这与HTTP协议非常相似。它用于基于移动设备和社交网络的应用程序,并通过使用HTTP get,post,put和delete方法消除了歧义。除了传送物联网数据之外,CoAP还与DTLS一起开发,用于安全交换消息。它使用DTLS在传输层中安全传输数据。

MQTT协议:MQTT(Message Queue Telemetry Transport消息队列遥测传输)是一种消息传递协议,由IBM的Andy Stanford-Clark和Arcom的Arlen Nipper于1999年开发。它主要用于IoT中的远程监控。其主要任务是从许多设备获取数据并将其传输到IT基础架构。 MQTT将设备和网络与应用程序和中间件连接起来。对于MQTT来说,hub-and-spoke架构是很自然的。所有设备连接到IBM新的MessageSight设备等数据集中器服务器。 MQTT协议在TCP之上工作,以提供简单而可靠的数据流。
MQTT协议由三个主要组件组成:订户,发布者和代理。发布者生成数据并通过代理将信息传输给订阅者。经纪人通过交叉核对发布者和订阅者的授权来确保安全。

MQTT协议是基于物联网设备的首选选项,能够为易受攻击的低带宽网络中的小型,廉价,低内存和耗电设备提供高效的信息路由功能。

 

物联网:协议总揽

物联网:协议总揽

XMPP(Extensible Messaging and Presence Protocol可扩展消息和存在协议):这是一种基于XML语言的面向消息的中间件的通信IoT协议。它支持在任何两个或多个网络实体之间实时交换结构化,可扩展的数据。该协议由Jabber开源社区于1999年开发,主要用于实时消息传递,状态信息和联系人列表的维护。 XMPP使消息传递应用程序能够实现认证,访问控制,逐跳和端到端加密。作为一个安全协议,它位于核心IoT协议之上,并通过XML节的流将客户端连接到服务器。 XML节有三个主要组件:消息,状态和IQ。

AMQP(Advanced Message Queuing Protocol高级消息队列协议):这是由John O’Hara在伦敦JP摩根大通开发的。 AMQP是面向消息中间件环境的应用层协议。它通过消息传递保证原语支持可靠的通信,例如最多一次,至少一次以及一次交付。 AMQP协议由一组组件组成,这些组件在代理服务中路由和存储消息,并有一组规则将组件连接在一起。 AMQP协议使客户端应用程序可以与代理进行通信并与AMQP模型进行交互。该模型具有以下三个组件,它们连接到服务器中的处理链中以创建所需的功能。
Exchange交换:从基于发行者的应用程序接收消息并将它们路由到“消息队列”。
Message queue消息队列:存储消息,直到消费客户端应用程序可以安全地处理它们。
Binding绑定:指出消息队列和交换机之间的关系。
数据分发服务(Data Distribution Service – DDS):这种用于实时机对机通信的IoT协议由对象管理组织(OMG)开发。它通过发布 – 订阅方法实现可扩展,实时,可靠,高性能和可互操作的数据交换。与MQTT和CoAP IoT协议相比,DDS利用无代理体系结构和多播技术为应用程序提供高质量的QoS。 DDS可以部署在从低占用空间设备到云的各种平台上,支持高效的带宽使用以及系统组件的敏捷协调。
DDS协议有两个主要层:数据中心发布订阅(DCPS)和数据本地重建层(DLRL)。 DCPS执行将信息传递给用户的任务,并且DLRL层提供DCPS功能的接口,使得能够在启用IoT的对象之间共享分布式数据。

STOMP(Simple Text Oriented Messaging Protocol简单的面向文本消息协议:这种面向文本的协议是为了与面向消息的中间件一起开发的。它提供了可互操作的连线格式,使STOMP客户端能够与任何STOMP消息代理进行通信,从而在多种语言,平台和代理之间实现简单而广泛的消息互操作性。像AMQP一样,STOMP为消息头提供属性和帧体。
但是,STOMP不处理队列和主题 – 它使用SEND语义和“目标”字符串。代理必须将其映射到内部理解的内容上,如主题,队列或交换。消费者然后订阅这些目的地。由于这些目的地在规格中没有规定,不同的经纪人可能会支持不同的目的地。因此,在代理之间移植代码并不总是直截了当的。

但是,STOMP简单轻便(尽管在网络上有些冗长),并且具有各种各样的语言绑定。它还提供了一些事务性语义。 RabbitMQ Web Stomp是最有趣的例子之一,它允许您通过Websockets在浏览器中公开消息。

 

物联网:协议总揽

物联网:协议总揽

VSCP(Very Simple Control Protocol非常简单的控制协议):是超越协议更多的框架。 VSCP具有高度可扩展性,占用空间小,是用于设备发现和识别,设备配置,自治设备功能和安全固件更新的免费兼开源解决方案。 VSCP使事物在应用程序层进行交互。它使用CAN,RS-232,以太网,TCP/IP,MQTT和6LowPan。
VSCP使用事件格式并支持节点的全局唯一标识符,因此无论节点安装在世界哪个地方,节点都可以识别。此外,它还包含一个寄存器模型,以便为节点配置提供灵活的通用接口,并为控制每个节点的功能提供模型。 VSCP对于用于实现与节点的物理互连的较低级系统没有作出任何假设;因此,它适用于以太网,TCP/IP,无线,Zigbee,蓝牙,CAN,GPRS,RS-232和USB等不同的传输机制。

VSCP是基于事件的。每次发生事件时,都会向网络上的所有其他节点广播。从那里开始,每个节点自行决定是否需要处理收到的事件。最终的决策取决于节点的决策矩阵,它由若干’if condition> then action> lines’组成,其中条件>根据广播给网络的VSCP数据报中存在的字段进行评估。

本文章来源于互联网,如有侵权,请联系删除!

相关推荐: 物联网大数据平台软件开发架构案例解析

物联网大数据平台软件开发架构案例解析 有人说物联网是引领信息技术的第三次浪潮。 第一次浪潮是个人电脑的出现,开创了信息时代的第一次革命,此次浪潮成就了微软、IBM等巨头。 第二次浪潮是以信息传输为特征的互联网及移动互联网,实现了计算机与人的联通,此次浪潮成就了…