一文读懂物联网标准和协议……
物联网催生了许多新的标准和协议。设备制造商和应用程序创建者已经采用了更多其他原本用于其他目的，但非常适合于新物联网应用程序的协议。
尽管从某种意义上说，物联网设备与任何其他与互联网连接的设备相同，但许多物联网应用程序固有的带宽，功率和传输距离限制要求针对连接，数据传输，设备发现和通信的基本动作提供新颖的特殊解决方案。本文将作为与IoT通信协议和标准相关的术语的简要词汇表。
IPv4 / IPv6
IPv4和IPv6是Internet协议的两个主要版本）。Internet协议是一种用于在网络上的主机（最著名的是Internet）之间传递数据包并使用所谓的IP地址唯一标识网络上的主机的方法。IPv4和v6数据包都包含标头，这些标头是与数据包相关的元数据，例如发送方IP地址和接收方IP地址以及有效载荷，而有效载荷是要传输的实际数据。创建IPv6的主要推动力以及它与IPv4之间的主要区别之一是更大的地址空间。IPv4地址为32位，仅允许数十亿个唯一地址，而IPv6地址为128位，
6LoWPAN
6LoWPAN代表低功耗无线个人局域网上的IPV6。该标准旨在使通常以有限的电池供电和处理能力运行的IoT设备能够使用IPV6数据包进行通信。通过使用报头压缩和其他节电技术，6LoWPAN允许设备使用与整个Internet相同的数据包结构在IEEE 802.15.4网络（专为低功耗通信而设计）上进行通信。
RPL
RPL是为低功耗和有损网络而设计的路由协议，这意味着网络由可能遭受数据包丢失的低功耗设备组成。RPL的特点是针对多对一通信进行了优化，并且其节点之间具有有效共享网络拓扑信息（有关网络的形状和组成的信息）的能力。
由于诸如网络之类的各种原因，在所有设备的全球池中唯一标识IoT设备通常是有用且必要的。有几种流行的方法可用于实现此目的。
EPC
EPC代表电子产品代码。这是GS1定义的标准，GS1是与商业通信标准化有关的非营利组织。EPC概述了一种系统，用于根据产品类别信息（例如UPC）和标识一种对象类型的唯一实例的序列号，对世界上任何物理对象的通用唯一标识符进行编码和解码。
uCode
ucode是一个独特的标识系统，其工作方式与ICANN域名注册和DNS管理系统相似。唯一代码由一组冗余ID服务器管理，这些服务器可以发布ucode ID并解析它们，返回设备信息，就像DNS服务器将唯一URL解析为IP地址一样。
MAC地址
所有具有网络连接的设备都为每个网络接口分配了一个MAC地址。MAC地址是唯一的，并且已批量分配给设备制造商。然后由设备制造商来确保他们将批次中的编号分配给设备，以使每个设备只有一个唯一的编号MAC地址。
物联网设备可以使用许多网络传输协议，但其中一些最受欢迎的协议是：
将我们的大多数计算机和智能设备连接到互联网的相同Wi-Fi技术也可以用于连接IoT设备。由于与其他网络技术相比，Wi-Fi对功率的要求相对较高，因此它通常不是功率受限设备的首选，但是它的普遍存在使其成为某些解决方案的可行选择。
Bluetooth蓝牙
蓝牙既具有普遍采用的优点，又具有（至少在最新版本中）功耗极低的优点。但是，蓝牙的传输范围相对较短，对于大型地理应用而言并不理想。
LPWAN 低功耗广域网
LPWAN（低功耗广域网的缩写）是一种既省电又可以远距离传输数据的技术。LPWAN的主要缺点是其极低的传输速率，这对于需要向IoT设备传输大量数据或从IoT设备传输大量数据的应用程序提出了挑战。LPWAN也不是一种普遍采用的联网技术。因此，如果与现有网络的集成很重要，则LPWAN可能不是最佳选择。
Physical Web
Physical Web是Google创建的一种标准，允许物理对象以URL的形式广播信息，该URL允许用户以电子方式与设备进行交互。例如，停车收费表可以将URL广播到其付款页面，从而允许用户预订停车位。物理网络使用Bluetooth LE广播这些URL。
mDNS
mDNS是一种协议，其功能与普通DNS类似，但适用于较小的网络规模，并且没有名称服务器。特别是，它允许设备广播和接收有关网络上可用服务的信息。例如，在Apple的Bonjour系统（mDNS的专有实现）中，设备可以查询本地网络上的其他设备，以确定它们是否可用于打印，iTunes库共享或视频会议。mDNS网络上的设备会查询网络上的其他设备，然后所有设备都会以有关其提供的服务及其网络地址的信息进行响应。然后，该信息将被网络上的所有其他设备缓存，并用于将来的请求。
MQTT
MQTT是一种发布/订阅消息传递协议，用于在网络带宽较低的环境中的设备之间传递数据。MQTT网络上有两种类型的设备：发布者和消息代理。消息代理管理订阅主题和针对这些消息类型描述的设备。然后，在将新信息发布到主题时，它会向订户发布更新。
CoAP
CoAP是一种基于UDP的Web传输协议，它是TCP的替代传输协议。TCP也是基于Web构建的。CoAP旨在允许IoT设备和服务器之间的REST编程接口。REST是一种流行的编程范例，它允许服务器将资源公开给客户端，使其可以使用经过充分记录并经过时间验证的格式来查看，更新，创建和删除客户端。
WebSocket是一种协议，它允许通过单个连接在客户端（设备和服务器）之间进行双向通信，与HTTP之类的替代方法相比，通信速度更快。WebSocket可以用于例如将数据消息从设备或网关引导到服务器进行处理，但也可以允许服务器将消息发送回设备或网关（例如，请求设备方面的操作或发送软件或固件更新）。
TR-069
TR-069是一种协议，旨在允许设备自动配置为在网络上使用，并且允许这些设备接收将来的软件，固件和配置更新。该协议基于HTTP，并且一系列已定义的消息类型使设备可以安全地连接到ACS或自动配置服务器并接收配置数据。这使诸如机顶盒之类的嵌入式设备能够成功连接到网络，并在适当的时候进行自我更新。
OMA-DM
与TR-069相似，OMA-DM是用于配置和更新网络上设备的标准。它是由开放移动联盟（Open Mobile Alliance）创建的，因此已广泛用于移动电话和其他连接的消费类设备的配置，配置和维护。
除了在许多物联网解决方案中使用的上述构建模块外，还提供了将物联网应用程序堆栈的每个部分的解决方案组合在一起的多层框架。诸如IoTivity和Alljoyn（已与IoTivity合并）或OpenWeave（由Google创建）之类的开源堆栈是一站式框架解决方案，用于创建可以相互通信并与更广泛的Internet通信的设备。Apple的全栈IoT /智能家用设备解决方案HomeKit还提供了将设备轻松添加到网络以及向其他设备和用户宣传和展示其服务的机制。
IoTivity
iotivity是intel和三星牵头的一个开源项目，目的是建立统一的物联网设备连接标准，可实现无缝的设备到设备连接，IoT设备可以安全地相互连接并连接到互联网。OCF(开放式连接基金会)为这些设备制定规范，互操作性指南和认证计划。IoTivity是OCF规范的开源参考实现。IoTivity提供多种编程语言和支持多种操作系统，且考虑资源受限设备。其包含四个基本构建块：
OpenWeave
OpenWeave是Weave网络应用层的开源实现，该网络应用层是Nest产品的安全，可靠的通信主干。可为物联网（IoT）空间中的控制和数据提供设备到设备，设备到移动以及设备到云的通信。尽管Weave是围绕IPv6构建的，但它可以利用任何IP网络或点对点通信技术，例如Thread®，BLE或Cellular。
OpenWeave的设计考虑了以下目标：
HomeKit是一个与支持Apple HomeKit附件协议的连接的家庭自动化配件进行通信和控制的框架。HomeKit应用程序使用户能够发现兼容的配件并进行配置。用户还可以创建控制附件（如恒温器或光源）的动作，将它们组合在一起，然后使用Siri触发它们。HomeKit对象存储在用户iOS设备上的数据库中，该设备通过iCloud同步到其他iOS设备。HomeKit支持远程访问附件，多个用户设备和多个用户。HomeKit也为您处理安全和隐私。
希望这些定义将对您有所帮助，帮助您浏览这些新的物联网标准和协议带来的令人兴奋的新可能性。
来源：iotforall.com/ via EdgeAITech