MQTT,CoAP,,LWM2M,UDP,TCP各自特点,NB

UDP 用户数据报协议(UDP,User Datagram Protocol) 传输层协议

  1. 是无连接的,即发送数据之前不需要建立连接。
  2. 尽最大努力交付,即不保证可靠交付
  3. 传输效率高,适用于对高速传输和实时性有较高的通信或广播通信。
  4. 支持一对一,一对多,多对一和多对多的交互通信。

TCP传输控制协议(TCP,Transmission Control Protocol) 传输层协议

  1. TCP面向连接(如打电话要先拨号建立连接)。
  2. 提供可靠的服务,
  3. 通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达。传输效率相对较低。
  4. 连接只能是点到点、一对一的

CoAP 约束应用协议(CoAP The Constrained Application Protocol)应用层协议

  1. 基于REST架构的CoAP协议。
  2. 工作在 UDP协议族
  3. COAP是二进制格式的,
  4. HTTP是文本格式的,COAP比HTTP更加紧凑。
  5. 轻量化,COAP最小长度仅仅4B,一个HTTP的头都几十个B
  6. 支持可靠传输,数据重传,块传输。
  7. 确保数据可靠到达支持IP多播, 即可以同时向多个设备发送请求。
  8. 非长连接通信,适用于低功耗物联网场景。

MQTT 消息队列遥测传输(MQTT Message Queuing Telemetry Transport) 应用层协议

  1. 基于客户端-服务器的消息发布/订阅传输协议。
  2. 工作在 TCP/IP协议族
  3. MQTT协议是轻量、简单、开放和易于实现的
  4. 机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。
  5. MQTT协议的优势是可以支持所有平台,它几乎可以把所有的联网物品和互联网连接起来。

LwM2M 轻量级机器到机器 (Lightweight Machine-To-Machine)应用层协议

  1. 协议基于REST架构。
  2. 协议的消息传递是通过CoAP协议来达成的。
  3. 协议定义了一个紧凑高效又不乏扩展性的数据模型
  4. 协议最主要的实体包括LwM2M Server和LwM2M Client。 LwM2M Serve作为服务器,部署在M2M服务供应商处或网络服务供应商处。 LwM2M Client作为客户端,部署在各个LwM2M设备上。
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )