你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

admin 2023年12月21日09:18:10评论31 views字数 1513阅读5分2秒阅读模式

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

如今,我们日常生活中每天都使用大量的物联网设备比如智能门锁、地铁扫码闸机、早餐店收款播报音箱、汽车充电桩、上班刷脸打卡等,作为 IoT 物联网领域的开发者,你有想过背后完整的网络通信过程么?


借助全球开发者使用最广泛的开源抓包软件 Wireshark,抓取终端设备网卡通信包,一切就一目了然了。


你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


你会发现终端设备先做了DNS解析,再建立 MQTT 长连接通道,订阅业务主题,上报采集的数据,通过发送心跳包实现连接保活,业务处理完后主动断开长连接




01

DNS 解析

DNS 服务是计算机域名系统 (Domain Name Service) 的缩写,它是由域名解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。


你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

观察DNS网络包,你会发现终端设备先去请求了 MQTT-Broker 服务器域名对应的 IP 地址。在 DNS 的 Answer 中终端设备获得了 addr 值,用于接下来的TCP/IP 网络连接。




02

TCP 三次握手

终端设备建立 MQTT 长连之前,需要先建立 TCP连接,即终端设备与MQTT-Broker 服务器的三次握手

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?




03

MQTT 建立连接 CONNECT

MQTT(消息队列遥测传输) 是基于 TCP/IP 协议栈而构建的支持在各方之间异步通信的消息协议。MQTT 在空间和时间上将消息发送者与接收者分离,因此可以在不可靠的网络环境中进行扩展,使用了发布和订阅(Pub/Sub)的模型。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


在 TCP 连接基础上,终端设备主动发起 MQTT 的 CONNECT 指令,包含协议版本 v3.1.1,心跳时间 60s,连接标识 ClientId,用于认证的 Username 和 Password,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


MQTT-Broker 服务器收到终端设备建立连接请求,身份验证通过后,应答CONNACK报文,其中 ReturnCode 为0,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?




04

MQTT 订阅主题 SUBSCRIBE

终端设备建立 MQTT 连接后,需主动订阅业务主题,用于接收云端下发的控制指令,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


MQTT-Broker 服务端成功建立订阅关系后,会给终端设备响应SUBACK,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?




05

MQTT 上报数据 PUBLISH

终端设备采集到数据后,可以通过PUBLISH主动将数据发送到云端,同时设置消息主题Topic,数据报文Payload,以及QoS,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


MQTT-Broker 服务端成功接收数据后,如果是QoS=1消息,会响应PUBACK,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?




06

MQTT 心跳 PINGREQ

当终端设备和 MQTT-Broker 服务器之间长时间没有业务包交互时,就需要通过心跳包 PINGREQ/PINGRESP 来实现网络长连接通道保活。


终端设备发送 PINGREQ 报文,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

MQTT-Broker 服务器响应PINGRESP报文,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?




07

MQTT 心跳 DISCONNECT

终端设备需要断开 MQTT 长连接时,可以MQTT-Broker 服务器主动发送DISCONNECT 报文,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?



08

TCP 连接断开

当终端设备的 MQTT 长连接断开后,TCP 也会随之销毁,如下图。

你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


以上就是通过 Wireshark 网络抓包工具,从终端设备视角抓包分析 IoT 物联网设备完整网络通信过程,希望对你有所帮助!


往期推荐



☞ 十年回望,中国物联网平台消亡史

☞ IDC中国 IoT物联网平台评估报告

 IoT物联网平台趋势: 私有化
☞ 5个值得分享的物联网创业失败教训
☞ 国内 4 大 IoT物联网平台选型对比
☞ 云厂商的「IoT物联网平台不香了吗?


你真的了解 IoT 终端设备接入物联网平台的网络过程吗?


你真的了解 IoT 终端设备接入物联网平台的网络过程吗?
你真的了解 IoT 终端设备接入物联网平台的网络过程吗?
你真的了解 IoT 终端设备接入物联网平台的网络过程吗?
你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

原文始发于微信公众号(IoT物联网技术):你真的了解 IoT 终端设备接入物联网平台的网络过程吗?

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月21日09:18:10
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   你真的了解 IoT 终端设备接入物联网平台的网络过程吗?http://cn-sec.com/archives/2322281.html

发表评论

匿名网友 填写信息