首页 > 其他分享 >【备忘】IOT的七大通信协议(IOT协议)

【备忘】IOT的七大通信协议(IOT协议)

时间:2023-05-07 12:22:04浏览次数:36  
标签:协议 HTTP IOT 通信协议 REST 备忘 联网

在物联网协议中,一般分为两大类,一类是传输协议,一类是通信协议。传输协议一般负责子网内设备间的组网及通信;通信协议则主要是运行在传统互联网TCP/IP协议之上的设备通讯协议,负责设备通过互联网进行数据交换及通信。

那么物联网都有哪些通信协议呢?

深度分析IOT的七大通信协议(IOT协议) 物联网 通信协议 IOT 第1张

一、REST/HTTP(松耦合服务调用)

REST即表述性状态传递,是基于HTTP协议开发的一种通信风格。

适用范围:REST/HTTP主要为了简化互联网中的系统架构,快速实现客户端和服务器之间交互的松耦合,降低了客户端和服务器之间的交互延迟。因此适合在物联网的应用层面,通过REST开放物联网中资源,实现服务被其他应用所调用。

特点:

REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。
客户端和服务器之间的交互在请求之间是无状态的。
在服务器端,应用程序状态和功能可以分为各种资源,它向客户端公开,每个资源都使用 URI 得到一个唯一的地址。所有资源都共享统一的界面,以便在客户端和服务器之间传输状态。
使用的是标准的 HTTP 方法,比如:GET、PUT、POST 和 DELETE。

二、CoAP协议

CoAP(Constrained Application Protocol),受限应用协议,应用于无线传感网中协议。

适用范围:CoAP是简化了HTTP协议的RESTful API,CoAP是6LowPAN协议栈中的应用层协议,它适用于在资源受限的通信的IP网络。

三、MQTT协议(低带宽)

MQTT (Message Queuing Telemetry Transport ),消息队列遥测传输,由IBM开发的即时通讯协议,相比来说比较适合物联网场景的通讯协议。MQTT协议采用发布/订阅模式,所有的物联网终端都通过TCP连接到云端,云端通过主题的方式管理各个设备关注的通讯内容,负责将设备与设备之间消息的转发。

适用范围:在低带宽、不可靠的网络下提供基于云平台的远程设备的数据传输和监控。

四、DDS协议(高可靠性、实时)

DDS(Data Distribution Service for Real-Time Systems),面向实时系统的数据分布服务。

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

五、AMQP协议(互操作性)

AMQP(Advanced Message Queuing Protocol),先进消息队列协议,用于业务系统例如PLM,ERP,MES等进行数据交换。

适用范围:最早应用于金融系统之间的交易消息传递,在物联网应用中,主要适用于移动手持设备与后台数据中心的通信和分析。

六、XMPP协议(即时通信)

XMPP(Extensible Messaging and Presence Protocol)可扩展通讯和表示协议,一个开源形式组织产生的网络即时通信协议。

适用范围:即时通信的应用程序,还能用在网络管理、游戏、远端系统监控等。

七、JMS

JMS (Java Message Service),即消息服务,这是JAVA平台中著名的消息队列协议。

Java消息服务应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。

协议应用的侧重方向

以智能家居为例,智能家居中智能灯光控制,可以使用XMPP协议控制灯的开关;智能家居的电力供给,发电厂的发动机组的监控可以使用DDS协议;当电力输送到千家万户时,电力线的巡查和维护,可以使用MQTT协议;家里的所有电器的电量消耗,可以使用AMQP协议,传输到云端或家庭网关中进行分析;最后用户想把自家的能耗查询服务公布到互联网上,那么可以使用REST/HTTP来开放API服务。

标签:协议,HTTP,IOT,通信协议,REST,备忘,联网
From: https://www.cnblogs.com/feily/p/17379130.html

相关文章

  • UIOTOS:一款无门槛的前端0代码搭建工具
    什么是UIOTOS?UIOTOS中文名称前端大师,是一款基于图形技术的前端0代码工具,支持通过连线和嵌套无门槛来搭建各类复杂的的交互界面,包括后台管理系统、组态数据大屏等,实现跟代码开发媲美的效果。为什么要做?前端技术更新快,开发和学习成本高在软件开发领域,UI界面开发技术更新迭代最......
  • Docker备忘录
    基础知识博客园内有很多作者分享全面的Docker快速入门教程Docker与虚拟机的区别Docker架构及工作原理手把手教你安装DockerDockerfile制作自己的镜像文件Docker日常工作常用命令网络#4个模式,一般只用briagehost#直连主机IPnone#没有设置briage#虚拟网卡containe......
  • 使用MASA全家桶从零开始搭建IoT平台(二)设备注册
    前言我们不希望任何设备都可以接入我们的IoT平台,所以一个设备正常的接入流程是这样的,1、上位机软件通过串口或其他方式读取设备的唯一标识码UUID。2、上位机调用IoT后台接口,发送UUID和ProductID。3、后台接口判断设备是否注册过,如果没有注册过,就根据ProductID并按照一定规律生......
  • 通信协议之序列化
    转:http://blog.chinaunix.net/uid-27105712-id-3266286.html?page=2通信协议可以理解两个节点之间为了协同工作实现信息交换,协商一定的规则和约定,例如规定字节序,各个字段类型,使用什么压缩算法或加密算法等。常见的有tcp,udo,http,sip等常见协议。协议有流程规范和编码规范。流程如呼......
  • Linux备忘录
    Linux备忘录文件目录-/bin:命令目录-/sbin:超级命令目录,只有admin可以执行-/boot:系统目录,等同于C盘-/dev:设备文件目录,SSD、光驱、U盘,/dev/sr0代表光驱,必须都要先挂载-/etc:配置文件目录。软件安装完成后,配置文件存放在此目录(重要)-/home:user的家目录-/root:admin......
  • nginx备忘录
    安装rpm(离线)直接进nginx下载包页面选择你要的版本连接wgethttps://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.20.2-1.el7.ngx.x86_64.rpmrpm-ivhnginx-1.20.2-1.el7.ngx.x86_64.rpmsystemctlstartnginxsystemctlstatusnginxnginx-Vyum(rhel/centos)......
  • 条件编译的几个写法备忘
    判断有某个keyword方式1,2#ifdefCOLOR_DEFAULT//...#elifdefined(COLOR_G)//...#endif方式3#ifCOLOR_DEFAULT//...#elifCOLOR_G//...#endif 判断没有某个keyword方式1#ifndefCOLOR_DEFAULT//...#endif方式2#if!defined(COLO......
  • 更改歌曲后缀-代码备忘录
    packagecom.java1234.todo;importjava.io.*;importjava.util.HashMap;importjava.util.Objects;importjava.util.Properties;importjava.util.regex.Matcher;importjava.util.regex.Pattern;/***//沈亦晨-爱人错过(小提琴版).flac//留下**//......
  • 1.Developer kit:阿里云IOTalios things iot 开发板套件入门试用
    1.功能示意图正面背面a.MINIPCI-E百度百科说明                          b.关于MiniPCIe二三事说明主控......
  • RTThread的初始化宏(备忘录)
    RTThread的初始化流程方便后续查找.一.初始化接口初始化顺序接口描述1INIT_BOARD_EXPORT(fn)硬件的初始化,此时调度器还未启动2INIT_PREV_EXPORT(fn)主要是用于纯软件的初始化、没有太多依赖的函数3INIT_DEVICE_EXPORT(fn)外设驱动初始化相关,比如网卡设备......