![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
万物互联之通信协议篇
文章平均质量分 84
这个专栏将主要打通通信原理和协议相关的知识,重点在物联网相关的通信协议如mqtt,无线接入网协议,如5G/wifi/nb-iot/蓝牙等,覆盖一部分光通信协议。
HiveIOE
个人愿景:万物互联、万物感知和万物智能场景下,嵌入式设备如何去打破科研和工业化的gap
展开
-
mqtt broker商业解决方案-HiveMQ解读
前面介绍过mqtt broker的一种开源解决方案-mosquitto[1],本文将简单介绍一下商业化的解决方案-HiveMQ,目的是从商业化的视角看一下如何实现mqtt broker,有哪些可以借鉴和学习的思路,比如mqtt broker mesh组网是前面mosquitto中没有体现的,在商业应用中经常会遇到千万级的发布和订阅场景,此时就需要broker之间组网,进行负载均衡。还有一点值得学习的是,将这个看似简单的mqtt协议做到极致是一种怎样的体验。原创 2022-02-12 17:13:44 · 5166 阅读 · 0 评论 -
mqtt协议产品化实现-FreeRTOS实现mqtt客户端
前面的两篇博客,笔者分别介绍了华为鸿蒙系统中实现mqtt客户端和mosquitto实现服务端broker,本节将介绍一下FreeRTOS中是如何实现mqtt客户端的。FreeRTOS是一款应用在小微型处理器上的实时操作系统,在嵌入式系统中应用非常广泛,当前的物联网终端设备如果要接入互联网,需要支持联网的操作系统,FreeRTOS就提供了这样的一套解决轻量级的解决方案。在这套解决方案中提供了C/S架构下的请求/响应(http)和发布/订阅(mqtt)两种消息模式,完全可以满足小微设备的联网诉求。原创 2022-01-09 21:32:02 · 4952 阅读 · 0 评论 -
物联网协议选型-MQTT/AMQP/CoAP/HTTP/LwM2M
前面笔者简单谈了在实际的mqtt产品实现时,选择了参考文献[1]mosquitto服务端实现和[2]华为鸿蒙mqtt客户端实现,两个比较典型的项目作为例子对产品级的实现进行了解析。在实际的工程项目中,经常还需要根据应用场景,选择合适的物联网协议,那针对众多的物联网协议(MQTT/AMQP/CoAP/HTTP/LwM2M)应该如何做出选择,判断和选型的依据时什么呢?本文笔者从物联网的特点入手,提出了一些通信中需要考虑的要点,然后根据这些要点,梳理出各个协议的差异,希望对读者有一定的指导意义。原创 2022-01-02 22:27:23 · 3238 阅读 · 0 评论 -
mqtt协议产品化实现-华为鸿蒙实现mqtt客户端
mqtt协议的实现从角色上看包括broker端和客户端,这两者实现上还是有比较大的区别,本文选取了华为鸿蒙操作系统,其中对mqtt协议客户端的实现作为解读对象,看一下如果选用华为鸿蒙系统,mqtt在什么位置,怎么样移植和使用,内部又是怎么实现的。除了对技术的学习总结,笔者还穿插分享了自己的一些行文思路,架构思路和代码解读思路,比如爆炸思维、目录即架构、一张图秒懂,希望对读者有所启发。因为笔者始终坚信技术在写出来分享出来时就已经过时了,只有内在的本质的东西才是历久弥新的。原创 2021-12-23 23:29:29 · 2980 阅读 · 0 评论 -
MQTT协议产品化实现-mosquitto开源产品(2)
前一小节,参考文献[9],论述了mosquitto是如何实现mqtt协议的broker端功能,反向分析给出了系统架构,感兴趣的读者可以根据这个系统架构,快速地理清该产品的每个功能点的关联关系。本小节则从这个开源项目应用价值入手分析。原创 2021-12-20 09:30:11 · 411 阅读 · 0 评论 -
MQTT协议产品化实现-mosquitto开源产品(1)
前面的mqtt协议是从标准协议的视角进行的分析,接下来的这几个小节将从开源项目(mosquitto)、物联网操作系统(鸿蒙、freertos、rt-thread)对mqtt协议的支持、商业化的HiveMQ项目,三类产品和解决方案的视角去审视一下这个协议是如何实现的。原创 2021-12-15 22:36:37 · 2100 阅读 · 0 评论 -
MQTT协议实现-安全管理(4)
对物联网来说,安全问题一直是一个绕不开的话题,而作为一种重要的物联网传输协议的MQTT自然也需要重点关注。为何要关注安全?首先,之前上到云端的用户数据是少量的,在物联网场景下,大量的数据被送到云端,这些数据有可能是可穿戴设备搜集的健康数据,有可能是家里的摄像头、电视、智能音箱采集的环境和习惯数据,这些都是非常隐私的,如果通过MQTT协议传到云端,又缺乏足够的安全防护,将会带来多大的安全隐患。原创 2021-12-12 16:39:50 · 5191 阅读 · 0 评论 -
mqtt协议实现--订阅管理(3)
订阅管理是客户端从服务端根据主题获取需要的信息,包含正常的订阅流程,控制报文、有效载荷和异常的处理流程。两者交互的依据是主题。原创 2021-12-05 17:09:46 · 3045 阅读 · 0 评论 -
mqtt协议实现--发布管理(2)
发布管理是建链后,进行消息通信的第一步,是由发布客户端往服务端发送一个主题,或者由服务端往客户端发布一个主题。同样的我们将按照发布的正常流程和异常流程,以及发布的控制报文和有效载荷的视角进行解读。原创 2021-12-05 16:58:49 · 1787 阅读 · 0 评论 -
mqtt协议实现--协议框架和连接管理(1)
在了解了什么是MQTT以后,接下来了解一下怎么实现这个协议,也是对MQTT协议的解读和总结,这一小节主要是给出整体的架构图和连接管理,后续小节将详述发布管理和订阅管理两个重点模块。原创 2021-11-28 17:48:05 · 3907 阅读 · 0 评论 -
什么是MQTT
万物互联场景下,首先要解决的就是连接的问题,本文旨在介绍最基本的MQTT协议,当前对于mqtt协议的解读不具备系统性,力图通过本文的解读,将该协议详细且完整地呈现出来。原创 2021-11-28 13:06:50 · 7270 阅读 · 0 评论