[物联网iot]对比WIFI、MQTT、TCP、UDP通讯协议
第一步:先理解最底子的关系(类比快递)假设你要给朋侪寄快递:
[*] Wi-Fi:相称于“公路和卡车”,负责把包裹从你家运到快递站。
[*] TCP/UDP:相称于“快递公司的运输规则”。
[*] TCP:顺丰快递(保证包裹不丢、按顺序送达,但速率可能慢)。
[*] UDP:普通快递(可能丢件、顺序乱,但速率快)。
[*] MQTT:相称于“快递单上的详细说明”(好比“货到付款”或“放门口”)。
第二步: 用“快递流程”理解完整通讯过程
假设你有一个智能温湿度传感器,要通过 Wi-Fi 上报数据得手机 APP:
[*] 数据准备(应用层 - MQTT):
[*] 传感器生成数据:温度25℃, 湿度60%。
[*] MQTT 负责包装这条数据:添加“快递单”(MQTT 头部),好比:
[*] 主题(Topic):home/sensor/temperature(告诉 Broker 这是客堂温度数据)。
[*] QoS 等级:1(至少送达一次)。
[*] 消息ID:123(用于确认)。
[*] 运输规则(传输层 - TCP):
[*] TCP 接手后,将 MQTT 数据包拆分成多个“小包裹”,每个包裹打上标签:
[*] 源端口:随机端口(如 54321)。
[*] 目标端口:1883(MQTT 默认端口)。
[*] 序列号(保证顺序)。
[*] 校验和(防数据破坏)。
[*] 地址定位(网络层 - IP):
[*] IP 协议 给包裹贴上“大地址标签”:
[*] 源 IP:传感器 IP(如 192.168.1.100)。
[*] 目标 IP:MQTT Broker 的 IP(如 broker.emqx.io)。
[*] 协议类型:TCP(告诉接收方这是 TCP 数据)。
[*] 物理搬运(数据链路层/物理层 - Wi-Fi):
[*] Wi-Fi 将 IP 数据包封装成“无线信号”,通过路由器中转:
[*] 转换为 Wi-Fi 帧(包含 MAC 地址:路由器的 MAC 是下一站)。
[*] 通过无线电波传输到路由器。
[*] 路由器再通过互联网将数据终极送达 Broker。
[*] 反向流程(手机 APP 接收数据):
[*] Broker 将数据通过同样的流程反向通报得手机 APP(Wi-Fi → IP → TCP → MQTT → 展示数据)。
第三步:焦点概念一句话总结
协议一句话总结典型场景TCP可靠的快递员,不丢件不乱序网页、微信消息UDP跑得快的快递员,可能丢件视频通话、游戏实时位置MQTT为物联网计划的“快递单规则”智能家居设备上报数据Wi-Fi无线版的“网线”手机、电脑无线联网 2. 关键协作要点
协议协作行为类比表明Wi-Fi只关心“如何把数据从A点传到B点”卡车司机不关心货品内容,只管运输TCP确保货品不丢失、按顺序到达快递员逐个包裹查抄,丢件就重发UDP一次性扔出所有包裹,不管是否到达快递员直接把包裹扔到客户家门口MQTT界说包裹内容如何解读(主题、QoS等级)快递单上写明“易碎品”或“加急”
第四步:常见问题解答
Q1:MQTT必须基于TCP吗?
[*] 是的,MQTT计划时基于TCP。但物联网中也有变种如MQTT-SN(基于UDP或其他协议)。
Q2:为什么我当地测试MQTT能通,真实项目连不上?
[*] 可能原因:
[*] 防火墙拦截了端口(如1883)。
[*] 未配置MQTT Broker的用户名密码(公开测试Broker不需要,但私有环境需要)。
https://i-blog.csdnimg.cn/direct/cb73323f30824085b063cfb2f7f6f2c3.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]