IoT 终端设备接入物联网平台的网络过程

互联网的小白2023-12-21 17:20:36

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

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

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

1.DNS 解析

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

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

2.TCP 三次握手

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

3.MQTT 建立连接 CONNECT

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

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

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

4.MQTT 订阅主题 SUBSCRIBE

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

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

5.MQTT 上报数据 PUBLISH

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

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

6.MQTT 心跳 PINGREQ
 

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

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

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

7.MQTT 心跳 DISCONNECT

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

   

8.TCP 连接断开

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

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

物联网平台mqtt
本作品采用《CC 协议》,转载必须注明作者和本文链接
如今,我们日常生活中每天都使用大量的联网设备,比如智能门锁、地铁扫码闸机、早餐店收款播报音箱、汽车充电桩、上班刷脸打卡等,作为 IoT 联网领域的开发者,你有想过背后完整的网络通信过程么?借助全球开发者使用最广泛的开源抓包软件 Wireshark,抓取终端设备网卡通信包,一切就一目了然了。你会发现终端设备先做了DNS解析,再建立 MQTT 长连接通道,订阅业务主题,上报采集
绿盟科技《2021网络空间测绘年报》中对公有云上的消息队列遥测传输服务进行了测绘分析。 MQTT 是IBM发布的基于发布/订阅范式的消息协议。由于其轻量、简单、开放和易于实现的特点,非常适用于联网设备。MQTT服务中有三种角色:发布者、订阅者和代理。
2021年9月23日,据国际网络安全资讯网站ThreatPost报道,网络安全提供商Guardara的安全研究人员近期发现了一个严重的NanoMQ平台零日漏洞。攻击者可以通过构建低于预设长度的MQTT数据包触发该漏洞,使得依赖NanoMQ平台联网产品在使用期间完全崩溃。
更多地使用工业蜂窝网关和路由器会使 IIoT 设备暴露给攻击者并增加 OT 网络的攻击面。
在“万物皆可联”的今天,一个小小的IoT设备被入侵能有多大“杀伤力”? 可能成为大型DDoS攻击的跳板,导致互联网大面积中断; 可能被恶意利用控制报警系统、篡改传感器数据,导致城市的交通系统瘫痪; 可能导致医院、企业、监狱、学校的监控视频被曝光,大量隐私数据泄露;
MQTT协议是1999年IBM公司发布的一种基于发布/订阅(Publish/Subscribe)模式的轻量级通讯协议。MQTT协议的底层构建基于TCP/IP协议,它的特点是其规范简单,非常适用于低性能、低开销和有限带宽的联网场景。作为一种轻量级的传输协议,MQTT协议的传输过程有三方构成,分别是发布者(Publish)、代理(Broker)和订阅者(Subscribe)。
随着攻击变得越来越复杂和频繁,能给整个生态系统带来大规模影响的大门已经打开,智能移动汽车利益相关者必须意识到新兴威胁以及它们对网络韧性的潜在影响。在2023年,网络攻击变得更加复杂和频繁,针对各种车辆系统和组件,以及智能移动平台联网设备、应用程序,并使整个行业快速意识到任何连接点都有遭受攻击的风险。
对于要有孩子的家庭来说,有一个婴儿监视器是比较好的选择。婴儿监视器类型包括 Wi-Fi、移动app和云平台等。我们决定使用Motorola-Crib-Baby-Monitor-Soother-Camera,使用之前我想仔细研究一下这款设备的安全性。
为了统一业界对关键术语和定义的认识和理解,规范术语和定义的使用,在工业和信息化部的指导下,工业互联网产业联盟对工业互联网术语和定义进行了汇总、梳理、研究、讨论,在此基础上,编制形成了《工业互联网术语和定义(1.0版本)》。
中国信通院一直深耕金融科技技术与应用研究,先后在技术标准、行业研究、产业生态等方面取得一系列进展。
互联网的小白
小白的自由言论