0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

常见的通讯协议介绍

jf_78858299 来源:Imagination Tech 作者:Imagination Tech 2023-03-23 14:30 次阅读

为了方便,将物联网通信协议分为两大类,一类是接入协议,一类是通讯协议。接入协议一般负责子网内设备间的组网及通信;通讯协议主要是运行在传统互联网TCP/IP协议之上的设备通讯协议,负责设备通过互联网进行数据交换及通信。本文介绍以通讯协议为主。

先说接入协议

市场上常见的有zigbee蓝牙以及wifi协议等。

一、zigbee

zigbee目前在工业控制领域应用广泛,在智能家居领域也有一定应用。它有以下主要优势:

  1. 低成本。zigbee协议数据传输速率低,协议简单,所以开发成本也比较低。并且zigbee协议还免收专利费用~
  2. 低功耗。由于zigbee协议传输速率低,节点所需的发射功率仅1mW,并采用休眠+唤醒模式,功耗极低。
  3. 自组网。通过zigbee协议自带的mesh功能,一个子网络内可以支持多达65000个节点连接,可以快速实现一个大规模的传感网络。
  4. 安全性。使用crc校验数据包的完整性,支持鉴权和认证,并且采用aes-128对传输数据进行加密。

zigbee协议的最佳应用场景是无线传感网络,比如水质监测、环境控制等节点之间需要自组网传输数据的工业场景中。在这些场景中zigbee协议的优势发挥的非常明显。

为什么厂商会抛弃使用比较广泛的wifi及蓝牙协议,而采用zigbee呢,主要有以下原因:

  1. 刚才提到zigbee协议有很强的自组网能力,可以支持几万设备,特别对于小米这种想构建智能家居生态链的企业,wifi和蓝牙的设备连接数量目前都是硬伤。
  2. 目前zigbee协议还很难轻易被破解,而其他协议在安全性上一直为人诟病。
  3. 很多智能家居产品如门磁为了使用方便,一般采用内置电池。此时zigbee的超低功耗大大提升了产品体验。

但是zigbee协议也有不足,主要就是它虽然可以方便的组网但不能接入互联网,所以zigbee网络中必须有一个节点充当路由器的角色(比如小米智能家居套装中的智能网关),这提高了成本并且增加了用户使用门槛。同时由于zigbee协议数据传输速率低,对于大流量应用如流媒体、视频等,基本是不可能。

相对wifi和蓝牙协议这些年的快速发展和商业普及,zigbee协议尽管在威廉希尔官方网站 设计和架构上拥有很大优势,但是威廉希尔官方网站 更新太慢,同时在市场推广中也被竞争对手拉开了差距。后续zigbee协议在行业领域还是有很大空间,但是家用及消费领域要挑战wifi及蓝牙协议不是那么容易了。

二、蓝牙

蓝牙目前已经成为智能手机的标配通信组件,其迅速发展的原因包括:

  1. 低功耗。我认为这是蓝牙4.0的大杀器~使用纽扣电池的蓝牙4.0设备可运行一年以上,这对不希望频繁充电的可穿戴设备具有十分大的吸引力。
  2. 智能手机的普及。近年来支持蓝牙协议基本成为智能手机的标配,用户无需购买额外的接入模块。

三、、wifi

wifi协议和蓝牙协议一样,目前也得到了非常大的发展。由于前几年家用wifi路由器以及智能手机的迅速普及,wifi协议在智能家居领域也得到了广泛应用。wifi协议最大的优势是可以直接接入互联网。相对于zigbee,采用wifi协议的智能家居方案省去了额外的网关,相对于蓝牙协议,省去了对手机等移动终端的依赖。

相当于蓝牙和zigbee,wifi协议的功耗成为其在物联网领域应用的一大瓶颈。但是随着现在各大芯片厂商陆续推出低功耗、低成本的wifi soc(如esp8266),这个问题也在逐渐被解决。

谁将一统江湖?

wifi协议和蓝牙协议谁会在物联网领域一统江湖?这是目前讨论比较多的一个话题。wifi和蓝牙的各自在威廉希尔官方网站 的优势双方都可以在协议升级的过程中互相完善,目前两个协议都在往“各取所长”的方向发展。最终谁能占据主导,可能更重要的是商业力量和市场决定的。短期内各个协议肯定是适用不同的场景,都有存在的价值。

再说通讯协议

对于物联网,最重要的是在互联网中设备与设备的通讯,现在物联网在internet通信中比较常见的通讯协议包括:HTTP、websocket、XMPP、COAP、MQTT

1、HTTP和websocket

在互联网时代,TCP/IP协议已经一统江湖,现在的物联网的通信架构也是构建在传统互联网基础架构之上。在当前的互联网通信协议中,HTTP协议由于开发成本低,开放程度高,几乎占据大半江山,所以很多厂商在构建物联网系统时也基于http协议进行开发。包括google主导的physic web项目,都是期望在传统web威廉希尔官方网站 基础上构建物联网协议标准。

HTTP协议是典型的CS通讯模式,由客户端主动发起连接,向服务器请求XML或JSON数据。该协议最早是为了适用web浏览器的上网浏览场景和设计的,目前在PC、手机、pad等终端上都应用广泛,但并不适用于物联网场景。在物联网场景中其有三大弊端:

  1. 由于必须由设备主动向服务器发送数据,难以主动向设备推送数据。对于单单的数据采集等场景还勉强适用,但是对于频繁的操控场景,只能推过设备定期主动拉取的的方式,实现成本和实时性都大打折扣。
  2. 安全性不高。web的不安全都是妇孺皆知,HTTP是明文协议,在很多要求高安全性的物联网场景,如果不做很多安全准备工作(如采用https等),后果不堪设想…
  3. 不同于用户交互终端如pc、手机,物联网场景中的设备多样化,对于运算和存储资源都十分受限的设备,http协议实现、XML/JSON数据格式的解析,都是“mission impossible”

所以,攀多物联团队在设计物联网云平台时,也只是在针对手机或PC的用户时,采用HTTP协议,针对设备的物联网接入没有采用HTTP协议。

当然,依然有不少厂商由于开发方便的原因,选择基于HTTP协议构架物联网系统,在设备资源允许的情况下,怎么避免上面提到的数据推送实时性低的问题呢?

websocket是一个可行的办法。websocket是HTML5提出的基于TCP之上的可支持全双工通信的协议标准,其在设计上基本遵循HTTP的思路,对于基于HTTP协议的物联网系统是一个很好的补充。

2、XMPP

由于物联网设备通信的模式和互联网中的即时通讯应用非常相似,互联网中常用的即时通讯协议也被大量运用于物联网系统构建中,这其中的典型是XMPP。

XMPP是基于XML的协议,由于其开放性和易用性,在互联网及时通讯应用中运用广泛。相对HTTP,XMPP在通讯的业务流程上是更适合物联网系统的,开发者不用花太多心思去解决设备通讯时的业务通讯流程,相对开发成本会更低。但是HTTP协议中的安全性以及计算资源消耗的硬伤并没有得到本质的解决。前段时间报出的黑客轻松破解的TCL洗衣机,正是采用XMPP协议。

无论是HTTP、websocket还是XMPP,在设计时都是根据互联网应用场景设计的,虽然很多厂商把他们应用在物联网系统中,但是必然会水土不服,这些协议的通病就是根本无法适用物联网设备的多样性,无法适用很多物联网设备对低功耗、低成本的需求,难以在极低资源的物联网设备中运用。能不能有协议既可以借用web威廉希尔官方网站 的设计思想,同时又能适应恶劣的物联网设备运行环境呢?

COAP协议应运而生了。

3、COAP

COAP协议的设计目标就是在低功耗低速率的设备上实现物联网通信。coap和HTTP协议一样,采用URL标示需要发送的数据,在协议格式的设计上也基本是参考HTTP协议,非常容易理解。同时做了以下几点优化:

  1. 采用UDP而不是TCP。这省去了TCP建立连接的成本及协议栈的开销。
  2. 将数据包头部都采用二进制压缩,减小数据量以适应低网络速率场景。
  3. 发送和接收数据可以异步进行,这样提升了设备响应速度。

COAP协议就像一个针对物联网场景的http移植品,很多设计保留了HTTP协议的影子,拥有web背景的开发者也能快速上手。但是由于很多物联网设备隐藏在局域网内部,coap设备作为服务器无法被外部设备寻址,在ipv6没有普及之前,coap只能适用于局域网内部(如wifi)通信,这也很大限制了它的发展。

4、MQTT协议

MQTT协议就很好的解决了coap存在的问题。MQTT协议是由IBM开发的即时通讯协议,相比来说比较适合物联网场景的通讯协议。MQTT协议采用发布/订阅模式,所有的物联网终端都通过TCP连接到云端,云端通过主题的方式管理各个设备关注的通讯内容,负责将设备与设备之间消息的转发。

MQTT在协议设计时就考虑到不同设备的计算性能的差异,所以所有的协议都是采用二进制格式编解码,并且编解码格式都非常易于开发和实现。最小的数据包只有2个字节,对于低功耗低速网络也有很好的适应性。有非常完善的QOS机制,根据业务场景可以选择最多一次、至少一次、刚好一次三种消息送达模式。运行在TCP协议之上,同时支持TLS(TCP+SSL)协议,并且由于所有数据通信都经过云端,安全性得到了较好地保障。

当前的物联网通信协议真的是百花齐放,没有任何协议能够在市场上占有统治地位。但要实现物联网设备互联互通(不同厂商、不同平台、不同架构),关键点并不在上述接入协议或通讯协议的统一,而在于上层业务应用层协议的统一。无论是wifi、蓝牙、亦或是mqtt、http都是设备进行数据通讯和交换的通道,规定的是通讯的格式;而通讯的内容的统一才是实现互联互通的关键。

5、DDS

DDS(Data Distribution Service for Real-Time Systems),面向实时系统的数据分布服务,这是大名鼎鼎的OMG组织提出的协议,其权威性应该能证明该协议的未来应用前景。

适用范围:分布式高可靠性、实时传输设备数据通信。目前DDS已经广泛应用于国防、民航、工业控制等领域。

特点:

• 以数据为中心

• 使用无代理的发布/订阅消息模式,点对点、点对多、多对多

• 提供多大21种QoS服务质量策略

协议主要实现:

• OpenDDS 是一个开源的 C++ 实现

• OpenSplice DDS

点评:DDS很好地支持设备之间的数据分发和设备控制,设备和云端的数据传输,同时DDS的数据分发的实时效率非常高,能做到秒级内同时分发百万条消息到众多设备。DDS在服务质量(QoS)上提供非常多的保障途径,这也是它适用于国防军事、工业控制这些高可靠性、可安全性应用领域的原因。但这些应用都工作在有线网络下,在无线网络,特别是资源受限的情况下,没有见到过实施案例。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信协议
    +关注

    关注

    28

    文章

    881

    浏览量

    40300
  • 物联网
    +关注

    关注

    2909

    文章

    44578

    浏览量

    372853
  • IP
    IP
    +关注

    关注

    5

    文章

    1703

    浏览量

    149511
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1353

    浏览量

    79057
收藏 人收藏

    评论

    相关推荐

    基于STM32的串口通讯协议

    通讯协议是指在嵌入式开发中,不同的硬件系统或者操作系统之间进行数据交换的方式,是一种数据通讯的规约。 通讯协议有很多种,而我今天要说的是串口
    发表于 08-03 06:12

    常见通讯协议有哪几种

    通讯载体目前实验设备中通讯方式有串口通讯、CAN通讯、以太网通讯常见
    发表于 08-18 07:27

    RS-485通讯协议介绍

    一、RS-485通讯协议介绍与CAN类似, RS-485是一种工业控制环境中常用的通讯协议,它具有抗干扰能力强、传输距离远的特点。 RS-
    发表于 08-20 06:08

    MODBUS通讯协议及编程

    ModBus通讯协议分为RTU协议和ASCII协议,下面就ModBus RTU协议简要介绍如下:
    发表于 07-17 11:58 1.5w次阅读

    rs485通讯协议

    rs485通讯协议是本威廉希尔官方网站 频道的核心内容,介绍了rs485通讯协议原理,rs485通讯
    发表于 08-13 17:21
    rs485<b class='flag-5'>通讯</b><b class='flag-5'>协议</b>

    MODBUS通讯协议详细介绍

    MODBUS通讯协议详细介绍标准通讯协议格式,工业通信的标准格式。
    发表于 03-10 11:42 38次下载

    常见的工业通讯协议有哪些

    每个仪表都有自己独特的通讯协议常见的有modbus通讯协议 、RS-232通讯
    发表于 11-13 10:14 12.5w次阅读
    <b class='flag-5'>常见</b>的工业<b class='flag-5'>通讯</b><b class='flag-5'>协议</b>有哪些

    常见通讯接口及转接头介绍ppt下载

    常见通讯接口及转接头介绍
    发表于 12-28 16:55 10次下载

    五种常见通讯协议

    是西门子公司专为s7-200系列plc开发的通讯协议。内置于s7-200CPU中。PPI协议物理上基于RS-485口,通过屏蔽双绞线就可以实现PPI通讯
    发表于 11-25 15:06 5.5w次阅读

    SPI通讯协议介绍

    来到SPI通讯协议了。废话两句,“SPI很重要”,这是我在学校时候听那些单片机开发工程师说的。出来实习,到后来工作,确实如此,SPI的使用很常见,那么自然重要咯。SPI(Serial
    发表于 12-22 19:18 11次下载
    SPI<b class='flag-5'>通讯</b><b class='flag-5'>协议</b><b class='flag-5'>介绍</b>

    PLC常见通讯接口和协议

    浅谈各种常用、常见的PLC通讯协议一、西门子系列PLC:主要包括其早期的S5和现在的S7-200、S7-300、S7-400等各型号PLC,早期的S5PLC支持的是3964R协议,但是
    发表于 03-31 15:27 1.7w次阅读

    IIC通讯协议的电路设计

    前面我们概述过一些常见通讯协议,本文着重讲讲关于IIC协议
    的头像 发表于 04-19 11:00 2066次阅读
    IIC<b class='flag-5'>通讯</b><b class='flag-5'>协议</b>的电路设计

    常见的PLC通讯协议

    : 01常见的PLC通讯协议 PLC通讯协议是用于规范和描述PLC设备之间通讯
    的头像 发表于 06-29 10:10 7134次阅读

    工业网络通讯协议有哪些

    随着工业自动化的不断发展,设备之间的互联互通和数据交换变得越来越重要。工业网络通讯协议作为实现这一功能的关键威廉希尔官方网站 ,其在工业自动化系统中扮演着至关重要的角色。本文将对工业网络通讯协议进行
    的头像 发表于 06-06 18:02 1649次阅读

    常见MCU通讯协议介绍

    ) I2C是一种同步的、多主机、多从机的串行通讯协议,由Philips Semiconductor(现为NXP Semiconductors)在1980年代开发。它允许多个设备共享同一总线,而不需要
    的头像 发表于 11-11 14:54 654次阅读