3.4网络通讯协议_第1页
3.4网络通讯协议_第2页
3.4网络通讯协议_第3页
3.4网络通讯协议_第4页
3.4网络通讯协议_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EMPOWERFORINDUSTRYGROWWITHPARTNERS网络通讯协议学习目标

能够理解长连接和短连接能够认知MQTT协议和HTTP协议

能够了解MQTT协议和HTTP协议的区别

能够了解MQTT协议的应用场景能够掌握网关MQTT参数的配置方法网络通讯协议1.长连接和短连接

前面项目三介绍了OSI模型,MQTT和HTTP都是应用层协议,底层是基于TCP/IP协议。TCP是一种面向连接的传输层协议,提供可靠的传输服务。当然还有面向无连接的UDP。对于UDP来讲,其无需建立连接就能够进行数据传输,而对于TCP来讲,其在进行数据传输之前,需要进行“三次报文握手”建立连接,然后才进行数据传输,数据传输完成之后,还需要进行“四次报文挥手”释放连接。

TCP协议连接和断开网络通讯协议1.长连接和短连接

长连接:长连接指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。短连接:短连接是相对于长连接而言的概念,指的是在数据传送过程中,只在需要发送数据时,才去建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。长连接与短连接的定义网络通讯协议2.MQTT协议MQTT是一种基于发布/订阅模式的“轻量级”通信协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通信协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。MQTT协议的定义网络通讯协议2.MQTT协议实现MQTT协议需要客户端和服务器端通讯完成,在通信过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker,服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT协议的原理MQTT原理网络通讯协议2.MQTT协议MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);payload,可以理解为消息的内容,是指订阅者具体要使用的内容。MQTT协议的原理网络通讯协议2.MQTT协议MQTT客户端与服务器一个使用MQTT协议的应用程序或者设备,它总是建立到服务器的网络连接。客户端可以:发布其他客户端可能会订阅的信息;订阅其他客户端发布的消息;退订或删除应用程序的消息;断开与服务器连接。MQTT服务器亦称为“消息代理”可以是一个应用程序或一台设备,它可以:接受来自客户的网络连接;接受客户发布的应用信息;处理来自客户端的订阅和退订请求;向订阅的客户转发应用程序消息。MQTT客户端MQTT服务器网络通讯协议2.MQTT协议MQTT三种消息发布的服务质量MQTT具体有三种消息发布的服务质量:至多一次,消息发布完全依赖底层TCP/IP网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。至少一次,确保消息到达,但消息重复可能会发生。只有一次,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。网络通讯协议3.HTTP/HTTPS协议HTTP/HTTPS协议的概述HTTP的全称是超文本传输协议,可以说是网络中使用的最多的协议了,无论是浏览网页或是下载文件,都离不开HTTP。物联网设备使用HTTP协议传输数据也是一种常用的方式,而且HTTP协议是个很成熟的东西,在服务器上很容易部署。HTTPS(HypertextTransferProtocoloverSecureSocketLayer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。注意:HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。网络通讯协议第一步:设备身份认证:通过三元组获取token认证请求示例:POST/authHTTP/1.1Host:接入域名Content-Type:application/jsonbody:{body内容}返回示例:{"code":0,//业务状态码"message":"success",//业务信息

"info":{

"token":"token值"

}}第二步:设备数据上报请求示例:POST/topic/当前设备对应topicHost:接入域名password:${token}//返回的token值Content-Type:application/octet-streambody:${your_data}返回示例{

"code":0,//业务状态码

"message":"success",//业务信息

"info":{"messageId":123}}3.HTTP/HTTPS协议HTTP定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。网络通讯协议3.HTTP/HTTPS协议常见的HTTP状态码200-请求成功301-资源(网页等)被永久转移到其他URL404-请求的资源(网页等)不存在500-内部服务器错误网络通讯协议3.HTTP/HTTPS协议MQTT与HTTP的区别MQTTHTTP架构基于发布/订阅模式基于请求/响应模型复杂度相对简单相对复杂运行方式基于TCP运行基于TCP,也可以使用UDP协议设计数据中心文档中心消息大小使用二进制,较小使用ASCII码,较大消息头2字节8字节端口号188380或8080数据安全提供SSL/TLS方法不提供安全方法,但是https提供小结

MQTT是一种基于发布/订阅模式的“轻量级”通信协议,该协议构建于TCP/IP协议上。MQTT最大优点在于可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。MQTT传输的消息分为:主题(Topic)和负载(pa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论