物联网标准和协议

目录

 

协议

基础设施

发现

数据协议

通信/传输层

LPWAN

蜂窝电话

语义

多层框架

安全

垂直领域

架构

联盟和组织

Others

其他资源

General

背景文章

MQTT

CoAP协议

XMPP

AMQP

RESTful HTTP

LwM2M



原文链接: https://www.postscapes.com/internet-of-things-protocols/

 

这是物联网设备和应用程序涉及的协议概述。帮助澄清物联网层技术堆栈和头对头比较。
物联网涵盖了广泛的行业和用例,从单一受限设备扩展到嵌入式技术和云系统的大规模跨平台部署,实时连接。
将所有这些结合在一起的是众多传统和新兴的通信协议,它们允许设备和服务器以新的、更加互连的方式相互通信。
与此同时,数十个联盟和联盟正在形成,希望统一破碎的有机物联网景观。

以下频道指南:

  • 提供有助于支持电源物联网设备,应用和应用的流行协议和标准的概述列表
  • 深入研究特定层或行业特定协​​议
  • 列出流行协议的头对头比较(即:mqtt vs xmpp)

协议

我们已经将协议分解为以下层,以提供某种程度的组织,而不是尝试在OSI模型等现有架构模型之上安装所有IoT协议 :

  • 基础设施 (例如:6LowPAN,IPv4 / IPv6,RPL)
  • 识别 (例如:EPC,uCode,IPv6,URI)
  • 通讯/传输 (例如:Wifi,蓝牙,LPWAN)
  • 发现 (例如:物理网,mDNS,DNS-SD)
  • 数据协议 (例如:MQTT,CoAP,AMQP,Websocket,Node)
  • 设备管理 (例如:TR-069,OMA-DM)
  • 语义 (例如:JSON-LD,Web Thing模型)
  • 多层框架 (例如:Alljoyn,IoTivity,Weave,Homekit)

安防
行业垂直(连接家庭,工业等)

基础设施

  • IPv6 - “IPv6,是用于分组交换网络互联的互联网层协议,并提供跨多个IP网络的端到端数据报传输。
  • 6LoWPAN - “6LoWPAN是IPv6低功耗无线个人局域网的首字母缩写。它是IPv6 over IEEE802.15.4链路的自适应层。该协议仅在2.4 GHz频率范围内运行,传输速率为250 kbps。”
  • UDP (用户数据报协议) - 一种简单的OSI传输层协议,用于基于Internet协议(IP)的客户端/服务器网络应用程序。UDP是TCP的主要替代方案,也是1980年推出的最古老的网络协议之一. UDP通常用于专门针对实时性能调整的应用程序。
  • QUIC (Quick UDP Internet Connections,发音为quick)支持通过用户数据报协议(UDP)在两个端点之间建立一组多路复用连接,旨在提供与TLS / SSL等效的安全保护,同时减少连接和传输延迟,以及每个方向的带宽估计以避免拥塞。
  • Aeron - 高效可靠的UDP单播,UDP多播和IPC消息传输。
  • uIP - uIP是一个开源TCP / IP堆栈,能够与微型8位和16位微控制器一起使用。它最初由瑞典计算机科学研究所的“网络嵌入式系统”小组的Adam Dunkels开发,根据BSD风格许可证授权,并由广泛的开发人员进一步开发。
  • DTLS (数据报传输层) - “DTLS协议为数据报协议提供通信隐私。该协议允许客户端/服务器应用程序以防止窃听,篡改或消息伪造的方式进行通信.DTLS协议基于传输层安全性(TLS)协议并提供等效的安全保证。“
  • ROLL / RPL(低功耗/有损网络的IPv6路由)
  • NanoIP “NanoIP,代表纳米互联网协议,是一个概念,旨在为嵌入式和传感器设备带来类似互联网的网络服务,而不需要TCP / IP的开销. NanoIP的设计具有最小的开销,无线网络和考虑当地的解决方案。“
  • 内容为中心的网络 (CCN) - 技术概述, “下一代网络架构,解决内容分发可扩展性,移动性和安全性方面的挑战 .CCN直接在网络的数据包级别路由和传送指定的内容,实现自动和应用 - 内存缓存在内存中,无论它位于网络中的哪个位置。结果?无论何时何地需要,都可以高效,有效地传送内容。由于架构使这些缓存效果成为数据包传送的自动副作用,因此可以在不构建内存的情况下使用内存昂贵的应用程序级缓存服务。“
  • 时间同步网格协议 (TSMP)一种用于称为节点的无线设备的自组织网络的通信协议。TSMP设备彼此保持同步并在时隙中进行通信,类似于其他TDM(时分复用)系统。

发现

  • mDNS (多播域名系统) - 将主机名解析为不包含本地名称服务器的小型网络中的IP地址。
  • 物理Web - 通过物理Web,您可以使用蓝牙低功耗(BLE)信标查看由您周围环境中的对象广播的URL列表。
  • HyperCat - 一种开放,轻量级的基于JSON的超媒体目录格式,用于公开URI集合。
  • UPnP (通用即插即用) - 现在由Open Connectivity Foundation管理的是一组网络协议,允许联网设备无缝地发现彼此在网络上的存在,并为数据共享,通信和娱乐建立功能性网络服务。

数据协议

  • MQTT (消息队列遥测传输)“MQTT协议以极轻量级的方式启用发布/订阅消息传递模型。对于需要小代码占用空间和/或网络带宽非常宝贵的远程位置的连接非常有用。”
  • MQTT-SN (传感器网络的MQTT) - 专为机器对机器和移动应用而设计的开放轻量级发布/订阅协议 Mosquitto:开源MQTT v3.1代理, IBM MessageSight
  • CoAP (约束应用协议)“CoAP是一种应用层协议,旨在用于资源受限的互联网设备,如WSN节点.CoAP旨在轻松转换为HTTP,以简化与Web的集成,同时满足特殊要求CoRE组为CoAP提出了以下功能:RESTful协议设计,最大限度地降低了HTTP映射的复杂性,低报头开销和解析复杂性,URI和内容类型支持,支持发现由已知CoAP服务提供的资源。简单订阅资源,以及产生推送通知,基于max-age的简单缓存。“
  • SMCP - A-的基于C CoAP协议栈,其适合于嵌入式环境。功能包括:支持draft-ietf-core-coap-13,完全异步I / O,支持BSD套接字和UIP。
  • STOMP - 面向简单文本的消息传递协议
  • XMPP (可扩展消息传递和在线协议)“一种用于实时通信的开放技术,支持广泛的应用,包括即时消息,在线状态,多方聊天,语音和视频呼叫,协作,轻量级中间件,内容联合以及XML数据的通用路由。“
  • XMPP-IoT “与XMPP在同一庄园中默默地创造了人与人之间的通信互操作性。我们的目标是让人们和机器之间的通信机器可以互操作。”
  • Mihini / M3DA “Mihini代理是一个软件组件,充当M2M服务器和嵌入式网关上运行的应用程序之间的中介. M3DA是一种优化用于传输二进制M2M数据的协议。它在Mihini项目中可用通过允许用户应用程序与M2M服务器来回交换类型化数据/命令,以优化设备管理方式,通过简化设备数据模型的操作和同步以及资产管理方式,以优化方式使用带宽“
  • AMQP (高级消息队列协议)“面向消息的中间件的开放标准应用层协议.AMQP的定义特征是消息定向,排队,路由(包括点对点和发布 - 订阅),可靠性和安全性“。
  • DDS (实时系统数据分发服务)“第一个直接解决实时和嵌入式系统发布 - 订阅通信的开放式国际中间件标准。”
  • JMS(Java消息服务) - 用于在两个或多个客户端之间发送消息的Java消息中间件(MOM)API。
  • LLAP (轻量级本地自动化协议)“LLAP是一个简单的短消息,使用普通文本在智能对象之间发送,它不像TCP / IP,蓝牙,zigbee,6lowpan,WiFi等在低级别”如何“移动这意味着LLAP可以在任何通信媒介上运行.LLAP的三个优点是,它现在可以运行在任何东西上,未来的任何东西都可以被人类理解。“
  • LWM2M (轻量级M2M)“轻量级M2M(LWM2M)是开放移动联盟中的系统标准。它包括DTLS,CoAP,Block,Observe,SenML和资源目录,并将它们与对象结构一起编织到设备 - 服务器接口中。 “
  • SSI (简单传感器接口)“一种简单的通信协议,专为计算机或用户终端与智能传感器之间的数据传输而设计”
  • Reactive Streams “JVM上具有非阻塞背压的异步流处理标准。”
  • ONS 2.0
  • REST (Representational state transfer) - RESTful HTTP
  • HTTP / 2 - 通过引入头字段压缩并允许在同一连接上进行多个并发交换,可以更有效地使用网络资源并减少对延迟的感知。
  • SOAP (简单对象访问协议),JSON / XML, WebHooks, Jelastic, MongoDB
  • Websocket 作为HTML5计划的一部分开发的WebSocket规范引入了WebSocket JavaScript接口,该接口定义了一个全双工单插槽连接,通过它可以在客户端和服务器之间发送消息。WebSocket标准简化了双向Web通信和连接管理的复杂性。
  • JavaScript / Node.js物联网项目
    可在此处找到Contiki,Riot OS等物联网软件项目列表 。

通信/传输层

在这里插入图片描述

  • 以太网络
  • WirelessHart “WirelessHART技术为各种过程测量,控制和资产管理应用提供了强大的无线协议。”
  • DigiMesh“DigiMesh是一种专有的点对点网络拓扑,适用于无线端点连接解决方​​案。
  • ISA100.11a “ISA100.11a是由国际自动化学会(ISA)开发的无线网络技术标准。官方描述为”工业自动化无线系统:过程控制及相关应用“
  • IEEE 802.15.4 IEEE 802.15.4是一种标准,它规定了低速率无线个域网(LR-WPAN)的物理层和媒体访问控制。它由IEEE 802.15工作组维护。它是ZigBee,ISA100.11a,WirelessHART和MiWi规范的基础,每个规范都通过开发IEEE 802.15.4中未定义的上层来进一步扩展标准。或者,它可以与6LoWPAN和标准Internet协议一起使用,以构建无线嵌入式Internet。
  • NFC 基于标准ISO / IEC 18092:2004,使用中心频率为13.56 MHz的电感耦合器件。与无线传感器网络相比,数据速率高达424 kbps,范围缩短了几米。
  • ANT ANT是一种专有的无线传感器网络技术,具有无线通信协议栈,能够在2.4 GHz工业,科学和医疗分配的RF频谱(“ISM频段”)中运行的半导体无线电通过建立共存的标准规则进行通信,数据表示,信令,认证和错误检测。
    -蓝牙 蓝牙工作在2.4 GHz ISM频段,并使用跳频。数据速率高达3 Mbps,最大范围为100米。可以使用蓝牙的每种应用类型都有自己的配置文件。
  • Eddystone - 为接近信标消息定义蓝牙低功耗(BLE)消息格式的协议规范。
  • ZigBee ZigBee协议使用802.15.4标准,工作在2.4 GHz频率范围内,速率为250 kbps。网络中的最大节点数为1024,范围最大为200米。ZigBee可以使用128位AES加密。
  • EnOcean EnOcean是一种能量收集无线技术,其工作频率为欧洲868 MHz,北美315 MHz。建筑物的传输范围高达30米,室外高达300米。
  • WiFi
  • WiMax WiMax基于标准IEEE 802.16,适用于无线城域网。固定电台的距离不同,可达50公里,移动设备可达5至15公里。WiMAx的工作频率为2.5 GHz至5.8 GHz,传输速率为40 Mbps。

LPWAN

  • Weightless Weightless是一种提议的专有开放式无线技术标准,用于在基站与其周围的数千台机器之间交换数据(在未占用的电视传输信道中使用波长无线电传输),具有高安全性。
  • NB-IoT (窄带物联网)由3GPP标准组织标准化的技术
  • LTE-MTC (LTE机器类型通信) - 基于标准的技术系列支持适用于物联网的多种技术类别,例如Cat-1和CatM1。
  • EC-GSM-IoT (扩展覆盖范围-GSM-IoT) - 为LPWA(低功率广域)物联网应用实现现有蜂窝网络的新功能。EC-GSM-IoT可以通过在非常大的GSM足迹上部署的新软件激活,为服务IoT设备增加更多的覆盖范围。
  • LoRaWAN - 用于无线电池操作的网络协议区域,国家或全球网络中的事物。
  • RPMA (随机相位多址)采用具有多址的直接序列扩频(DSSS)的技术通信系统。

蜂窝电话

  • GPRS / 2G / 3G / 4G蜂窝电话
    在这里插入图片描述

语义

  • IOTDB “用于描述物联网的JSON /关联数据标准”
  • SensorML “SensorML提供标准模型和XML编码,用于描述传感器和测量过程。”
  • 语义传感器网络本体 - W3C “这个本体描述了传感器和观测,以及相关概念。它没有描述域概念,时间,位置等,这些都是通过OWL导入从其他本体中包含的。”
  • Wolfram语言 - 连接设备 - “每个设备的符号表示。然后有一组标准的Wolfram语言函数,如DeviceRead,DeviceExecute,DeviceReadBuffer和DeviceReadTimeSeries,它们执行与设备相关的操作。”
  • RAML (RESTful API建模语言) - 使从设计到共享的整个API生命周期变得容易。它简洁 - 您只需编写您需要定义的内容 - 并且可以重复使用。
  • SENML (传感器标记语言的媒体类型) - 简单的传感器(如温度传感器)可以在HTTP或CoAP等协议中使用此媒体类型来传输传感器的测量值或进行配置。
  • LsDL (Lemonbeat智能设备语言) - 面向服务的设备的基于XML的设备语言

多层框架

  • Alljoyn - 一个开源软件框架,使设备和应用程序可以轻松地相互发现和通信。
  • IoTivity 是一个由Linux基金会主办的开源项目,由OIC赞助。
  • IEEE P2413 - 物联网(IoT)架构框架标准
  • Thread - 以6LoWPAN为基础,以开放标准和IPv6技术为基础。
  • IPSO应用程序框架 (PDF) “此设计定义了一组REST接口,智能对象可以使用这些接口来表示其可用资源,与其他智能对象和后端服务进行交互。此框架旨在补充现有的Web配置文件,包括SEP2和oBIX。“
  • OMA LightweightM2M v1.0 “ LightweightM2M的动机是开发一种快速部署的客户端 - 服务器规范,以提供机器到机器的服务.LightweightM2M主要是一种设备管理协议,但它应该能够扩展以满足要求LightweightM2M不仅限于设备管理,它应该能够传输服务/应用程序数据。“
  • Weave - 物联网设备的通信平台,支持设备设置,电话到设备到云的通信以及移动设备和网络的用户交互。
  • Telehash - JSON + UDP + DHT = Freedom 一种安全的线路协议,为应用和设备提供分散的覆盖网络

安全

  • 开放信任协议 (OTrP) - 用于安装,更新和删除应用程序以及在可信执行环境(TEE)中管理安全配置的协议。
  • X.509 - 用于管理数字证书和公钥加密的公钥基础结构(PKI)标准。传输层安全协议的关键部分,用于保护Web和电子邮件通信。

垂直领域

  • IEEE 1451:IEEE 1451是一系列智能传感器接口标准,描述了一组开放的,通用的,独立于网络的通信接口,用于将传感器(传感器或执行器)连接到微处理器,仪器系统和控制/现场网络。
  • IEEE 1888.3-2013 - “无处不在的绿色社区控制网络IEEE标准:安全性”
  • IEEE 1905.1-2013 - “用于异构技术的融合数字家庭网络的IEEE标准”
  • IEEE 802.16p-2012 - “用于宽带无线的空中接口的IEEE标准访问系统“
  • IEEE 1377-2012 - ”IEEE标准实用工业计量通信协议应用层“
  • IEEE P1828 - ”带虚拟组件的系统标准“
  • IEEE P1856 - “电子系统预测和健康管理的标准框架”

架构

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

物联网 - 通信栈,“通信模型旨在定义连接实体的主要通信范例,如域模型中所定义。我们提供参考通信栈,以及洞察域模型中参与者之间的主要交互。我们开发了类似的通信栈ISO OSI 7层网络模型,将域模型所需的功能映射到通信范例。我们还描述了如何将通信方案应用于物联网中不同类型的网络。“

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

联盟和组织

组织:

  • ETSI (欧洲电信标准协会)
  1. 连接物集群
  • IETF (互联网工程任务组)
  1. CoRE工作组 (约束RESTful环境)
  2. 6lowpan工作组 (IPv6 over low power WPAN)
  3. ROLL工作组 (低功耗和有损网络路由)
  • IEEE (电气和电子工程师协会)
  1. 物联网“创新空间”
  • OMG (对象管理组)
  1. 数据分发服务门户
  • OASIS (结构化信息标准促进组织)
  1. MQTT技术委员会
  • OGC (开放地理空间联盟)
  1. 物联网标准工作组的传感器网络
  • IoT-A “针对物联网架构的欧洲灯塔集成项目,提出了一个架构参考模型的创建以及一组初始关键构建块的定义。”
  • OneM2M “ oneM2M的目的和目标是开发技术规范,满足对可以轻松嵌入各种硬件和软件的通用M2M服务层的需求,并依赖于将现场的无数设备与M2M应用服务器连接起来全世界。”
  • OSIOT “一个专注于为新兴物联网开发和推广免版税,开源标准的组织。”
  • IoT-GSI (物联网全球标准倡议)
  • ISA 国际自动化学会
  • W3C
  1. 语义传感器网络本体
  2. Web of Things社区组
  • EPC Global
  • IEC(国际电工委员会)和ISO(国际标准化组织),通过JTC(联合技术委员会)。委员会
  • RRG (路由研究组)
  • HIPRG (主机身份协议研究组)

Others

  • Eclipse Paho项目 “ Paho项目的范围是提供开放和标准消息传递协议的开源实现,支持M2M与Web和企业中间件和应用程序集成的当前和新兴要求。它将包括在嵌入式平台上使用的客户端实现具有社区确定的相应服务器支持。“

  • OpenWSN “用作基于物联网标准的协议栈的开源实现的存储库,使用各种硬件和软件平台。”

  • CASAGRAS“我们是代表欧洲,美国,中国,日本和韩国的国际合作伙伴的重要组织,他们参加了欧盟战略性的第7框架计划,该计划将审视有关RFID的全球标准,监管和其他问题及其在实现“物联网。”

  • AllSeen联盟 “AllSeen联盟是一个非营利性联盟,致力于通过一个充满活力的生态系统和蓬勃发展的技术社区支持的开放,通用的开发框架,支持和推动广泛采用支持万物互联的产品,系统和服务”

  • IPSO
    “该联盟是一个全球性的非营利组织,通过向公众提供协调的营销工作,为寻求建立互联网协议作为智能对象连接网络的各个社区提供服务。”

  • Wi-SUN联盟 Wi-SUN联盟旨在通过促进基于IEEE 802.15.4g标准的全球区域市场互操作性来推进无缝连接。

  • OMA(开放移动联盟)“OMA是开发市场驱动,可互操作的移动服务推动者的领先行业论坛”

  1. OMA LightweightM2M v1.0
  • 工业互联网联盟 “成立于2014年,旨在进一步开发,采用和广泛使用互联机器,智能分析和工作人员”

其他资源

General

“理解互操作性:物联网协议和标准化倡议”,(2013)Sutaria。R.和Govindachari,R
“许多不同的标准化机构和团体正在积极致力于为物联网创建更多可互操作的协议栈和开放标准。当我们从HTTP,TCP,IP堆栈转移到IOT特定协议栈时,我们突然面临以协议的首字母缩略词 - 来自无线协议,如ZigBee,RFID,蓝牙和BACnet tonext生成协议标准,如802.15.4e,6LoWPAN,RPL,CoAP等,试图统一无线传感器网络和已建立的互联网。“

“ 物联网的体系结构和协议”,(2010)AP Castellani,N Bui,P Casari,M Rossi,Z Shelby,M Zorzi的案例研究
“ (重要)物联网的标准化协议栈 ”,(2012)Maria Rita Palattella,Nicola Accettura,Xavier Vilajosana,Thomas Watteyne,Luigi Alfredo Grieco,Gennaro Boggia和Mischa Dohler。
“ 用于智能对象的轻量级IPv6堆栈:三个独立且可互操作的实现的体验 ”智能对象的互联网协议(IPSO)AByJulienAbeillé,Mathilde Durvy,Jonathan Hui,Stephen Dawson-Haggerty
“ 智能物体需要一种新的互联网工程方法 ”作者:Carolyn Duffy Marsan IETF期刊2012年3月
“ 超越互操作性 - 推动传感器网络IP栈的性能 ”作者:JeongGil Ko,Joakim Eriksson,Nicolas Tsiftes,Stephen Dawson-Haggerty,Jean-Philippe Vasseur,Mathilde Durvy,Andreas Terzis,Adam Dunkels和David Culle
为什么智能对象的IP? Jean-Philippe Vasseur和Adam Dunkels
超越MQTT:思科对物联网协议的看法 - 思科
网络拥塞和轻量级协议 - Telit
Iot和M2M协议的选择将决定市场的出现和成功 - Michael Holdmann
标准推动物联网 - 扎克谢尔比
了解物联网 - Ronak Sutaria和Raghunath Govindachari | 电子设计
了解物联网背后的协议 (MQTT,XMPP,DDS,AMQP) - 电子设计
消息传递技术:DDS,AMQP,MQTT,JMS和REST之间的比较 (PDF)PrismTech
真是太棒了!第2部分 - 网络架构和协议
MQTT和CoAP,IoT协议 - Toby Jaffey

背景文章

半导体工程: 物联网行业标准在哪里? (10/16)

MQTT

用于M2M的MQTT和DDS:物联网的不同方法 - RTJ
建立物联网 --DDS 与MQTT Angelo Corsaro
MQTT将实现物联网 - Andy Stanford-Clark的电子设计
MQTT和DDS作为物联网的M2M协议的比较 - 实时创新
QEST 是说MQTT的设备世界和讲HTTP和REST的应用程序世界之间的星际门。
使用MQTT将Arduino连接到物联网 --Chris Larson
MQTT简介 (PDF) - 戴夫洛克
MQTT和物联网的语言 - Housahedron
探索物联网协议 (MQTT和CoAP) - SparkFun

CoAP协议

CoAP简介M2M的REST协议 - 作者 Julien Vermillard
与物联网的REST - 嵌入式软件商店合作
CoAP教程 - 扎克谢尔比
具有REST优势的无线传感器网络节点:CoAP协议 - WSN杂志
针对m2m和物联网场景的CoAP课程 - Carlos Ralli

XMPP

统一弥合差距:将XMPP引入物联网 (PDf) - Michael Kirsche,Ronny Klauck
M2M和IoT的XMPP服务发现扩展 - Servicelab
基于XMPP的物联网服务基础设施 (PDF) - Sven Bendel,Thomas Springer,Daniel Schuster,Alexander Schill,Ralf Ackermann,Michael Ameling
使用IoT和XMPP在现实世界中工作 - 对于Hvac来说是道路 - Michael Holdmann

AMQP

将物联网与AMQP整合 (PDF) - RedHat
AMQP和消息传递的未来之一 --David Goehrig

RESTful HTTP

RESTful HTTP在实践中 - Infoq
RESTful API的事件模型 - Michael Koster
物联网让我们共同拥抱 - 博世
寻找物联网服务架构:REST还是WS- *?开发者的观点 (PDF) - Dominique Guinard, Iulia Ion和 Simon Mayer

LwM2M

使用开源LwM2M实现管理所有大小的东西 --BenjaminCabé

 

 

你可能感兴趣的:(物联网通信,物联网)