当前位置: 首页 > news >正文

博客发布 网站模版网站网页区别

博客发布 网站模版,网站网页区别,wordpress汉化广告插件,口碑好的o2o网站建设1. MQTT协议概述 1.1 MQTT协议是什么 MQTT : Message Queuing Telemetry Transport 模式 : 发布 / 订阅主题优点 : 代码量小、低带宽、实时可靠应用 : 物联网、小型设备、移动应用MQTT 常用端口 : 1883 MQTT是一个网络协议#xff0c;和HTTP类似#xff0c;因为轻量简单和HTTP类似因为轻量简单很多时候传输效率是后者的数十倍。 它仅用极少的代码和有限的带宽就能为连接远程设备提供实时可靠的消息服务所以逐渐在物联网(IOT)领域成为了最佳选择。 其实日常生活中我们也许使用过MQTT比如你用手机解锁一辆共享单车的时候。 1.2 MQTT里的角色 MQTT里有3个角色基于发布 / 订阅模式 代理 Broker (服务器) (消息中转站) 负责接收各个设备发送来的消息然后把消息转发给需要的设备 发布者 Publisher (客户端)订阅者 Subscriber (客户端) 可以用视频软件如抖音/B站举例子你(订阅者)关注了某个创作者(发布者)当这个创作者发布新视频的时候你就会收到B站的推送通知。MQTT协议和上面的简直一模一样。 2. MQTT协议的工作原理 MQTT协议的消息传输基于客户端-服务器模型客户端可以是发布者(Publisher)或订阅者(Subscriber)而服务器则负责消息的路由和分发。 2.1 工作流程 客户端首先与MQTT服务器建立TCP连接连接成功后客户端发送一个CONNECT消息包含客户端标识、用户名、密码等信息。服务器验证这些信息后返回一个CONNACK消息确认连接。发布者客户端发送PUBLISH消息将消息发送到特定的主题(Topic)消息包含主题名称、消息有效荷载(Payload)和质量服务等级(QoS)。MQTT服务器接收到PUBLISH消息后根据消息的主题将消息分发给所有订阅了该主题的客户端。这个过程是异步的确保了消息的高效分发。 2.2 MQTT底层是TCP/IP MQTT底层是TCP/IP 连接 : 主动连接服务器连接的时候带了很多的信息比如用户名和密码 信息匹配成功后才会给你响应 发送心跳 回应心跳 : 发布者或订阅者发起服务端响应。 如果长时间没有发送心跳服务端会认为这个客户端已经离线了会主动断开连接。 服务质量等级QoS 等级 QoS0 : “最多一次” : 只管发送不管接收等级 QoS1 : “最少一次” : 发布以后服务器必须要回复。如果没收到回复那么还会继续发直到你给我回复。等级 QoS2 : “仅一次” : 发布以后服务器回复客户端收到回复以后发布释放客户端回复发布完成 应用 : 计费的场景对次数有严格要求只要求有一次就够了 除了基于 TCP 的 MQTT也存在基于 UDP 的 MQTT-SN 等变种协议不过它们的应用场景和特性与基于 TCP 的 MQTT 有所不同。 3. MQTT数据结构 在MQTT协议中一个MQTT数据包由固定头Fixed header、可变头Variable header、消息体 payload三部分构成。MQTT数据包结构如下 固定头部Fixed Header : 这是每个 MQTT 消息都有的部分长度最小为 2 字节。它包含了消息类型和标志位等信息。可变头部Variable Header : 可选(根据消息类型来判定是否存在) 存在于部分MQTT数据包中数据包类型决定了可变头是否存在及其具体内容。 有效载荷Payload : 可选(根据消息类型来判定是否存在) 存在于部分MQTT数据包中表示客户端收到的具体内容。 3.1 固定头部 这是每个 MQTT 消息都有的部分长度最小为 2 个字节最多为 5 个字节。 3.1.1 第一个字节 MQTT 协议明确规定高 4 位用于表示消息类型低 4 位用于表示标志位如 QoS 级别、保留位、重复位等。这种定义是基于一种默认的、统一的位顺序来理解的所有遵循 MQTT 协议的实现都应该按照这个规定的顺序来解析和处理消息。 3.1.2 第二个字节 - 至多五个字节 第二个字节高位第一个字节如果为1表明存在第三个字节如果为0表示不存在第三个字节。 3.2 可变报头 如果是连接请求可见报头就是下图所示这样。 Byte1-Byte2 是 协议长度。 Byte3-Byte6 是 协议名。 Byte7 是 协议级别。 Byte8 是 连接标志用来确定是否包含 用户名、密码等。 Byte9-Byte10 用作心跳间隔时间。 3.3 有效载荷 如果是连接请求有效载荷就是下图所示这样。 客户端标识符 : 表示你设备的名字 还有用户名和密码就是放在这里的 (如果有的话) 4. 抓包 4.1 连接的请求报文 可以看到固定报头、可变报头和有效载荷 Message Type是Connect Command。 4.2 连接的响应报文 没有有效载荷只有固定报头和可变报头 4.3 发布的请求报文 Message Type : Publish Message Topic Length : 主题的长度 Topic : 主题 Message Identifier : 消息ID Message : 有效载荷其实解析后就是一个JSON字符串 4.4 发布的应答报文 5. 智能家居场景示例 5.1 设备角色介绍 想象一下你有一个智能家居系统。在这个系统中有各种各样的设备就像一个个“小通讯员”。其中包括温度传感器、湿度传感器、智能灯泡和智能窗帘等设备这些设备就是MQTT中的“客户端Client”。 5.2 代理服务器Broker的作用 在这个智能家居网络中还有一个“消息中转站”也就是MQTT代理Broker。它就像是一个社区的收发室负责接收各个设备发送来的消息然后把消息转发给需要的设备。 5.3 发布/订阅模式的体现 发布过程温度传感器就像一个小广播员它会定期检测室内的温度然后把温度信息发送发布出去。例如它会把温度数据发布到一个主题Topic下这个主题可以是“home/temperature”。这就好比广播员在广播频道“家庭温度频道”上广播室内温度信息。订阅过程智能空调是一个对温度很感兴趣的设备它会订阅“home/temperature”这个主题。当温度传感器发布了新的温度消息后代理服务器就会把这个消息转发给智能空调。这就像智能空调一直收听“家庭温度频道”一旦有新的温度消息广播它就能收到并根据温度信息来决定是否调整制冷或制热模式。 5.4 不同QoS级别的应用场景 QoS 0 - 最多一次传递智能灯泡的颜色变化信息可以采用QoS 0级别。假设你有一个可以改变颜色的智能灯泡你通过手机应用设置了一个灯光颜色变化的动态效果。这个颜色变化的消息对于偶尔丢失几条数据不太敏感。如果因为网络问题有一两条关于颜色变化的指令没有传达到灯泡可能不会被用户明显察觉因为灯光效果的连续性不会因为偶尔的丢失而受到严重影响。QoS 1 - 至少一次传递对于智能窗帘的控制指令可以采用QoS 1级别。比如你发送一个指令让窗帘打开这个指令比较重要不能丢失。如果因为网络波动代理服务器没有收到智能窗帘的确认消息它会重新发送这个指令这样就确保了窗帘至少能收到一次打开的指令。即使偶尔收到两次相同的指令窗帘也只是执行相同的动作打开不会产生严重的后果。QoS 2 - 恰好一次传递在智能家居系统与外部支付系统进行联动的场景下例如当你购买了一个智能家居服务套餐支付成功的消息需要以QoS 2级别传递。这个消息必须准确无误地在智能家居系统和支付系统之间传递既不能丢失也不能重复以确保你的服务能够正确开通同时避免因为重复支付而造成损失。 6. MQTT相关工具 调试工具 : MQTTX抓包工具 :Wireshark密钥计算工具 : 用于生成用户名和密码加密后的字符串 hex_hmac_sha1.jshex_md5.jssign.html 7. 其他 参考 物联网系列 - MQTT协议原理与数据包结构 用B站解释MQTT协议 MQTT协议的工作原理——消息传输 MQTT协议原理与应用精讲 MQTT 协议入门基础知识和快速教程 | EMQ MQTT协议测试——MQTT X工具使用_梦的博客-CSDN博客_mqtt测试 推荐八款常用 MQTT 客户端工具 - 知乎 (zhihu.com) 两款常用的 MQTT 调试工具_zuozewei的博客-CSDN博客_mqtt测试工具 MQTT基础 三 发布、订阅和取消订阅 - 简书 (jianshu.com)
http://www.hkea.cn/news/14363435/

相关文章:

  • 网站开发用怎么语言佛山 网站开发
  • 网站产品推广制作临沂企业建站模板
  • 开发网站建设的问卷调查wordpress同步到微博
  • 二级单位网站建设广州微信网站建设价格
  • 做公司网站的服务费入什么费用怎么制作链接
  • 百度建网站网站开发需求表
  • 西安网站建设首选那家洛阳网站改版维护公司
  • 腾讯网站建设专家中国对外贸易网站
  • 宣传型电子商务网站林州网站建设
  • 安岳网站建设免费小程序制作软件
  • 廊坊建设公司网站wordpress gallery
  • 湖州 外贸网站建设加盟创业商机网
  • 网站地图分析工具app推广在哪里可以接单
  • 即墨网站建设哪家好外贸公司手机网站
  • 网站建设一定要买数据盘吗中国建设银行门户
  • 优秀的网站建设开发案例设计网名的花样符号
  • 郑州河北建设工程信息网站教育培训网站源码 模板 php培训机构网站源码培训学校网站源码
  • 深圳网站建设报价做商城网站哪里好
  • 电子政务网站建设方案牡丹江定制软件开发
  • 国外免费素材模板网站专业简历制作网站推荐
  • 重庆网站推广公司哪家好做网站怎么接单
  • 做网站信息外链网站大全
  • 旅游做哪个网站好centos wordpress 安装
  • 好的室内设计网站网页设计需要什么书
  • 郑州高端定制建设网站网站做3年3年包括什么软件
  • 做运动鞋的网站视频做网站服务器可以挂到外地么
  • 广州网站建设提供商中小企业有哪些公司
  • 盐城建站2000个免费货源网站
  • 个人作品网站制作图片软件有哪些
  • 下载网站后怎么做网站开发的教学视频