1 / 23
文档名称:

mosquitto源码分析.doc

格式:doc   大小:440KB   页数:23页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

mosquitto源码分析.doc

上传人:花开花落 2019/10/25 文件大小:440 KB

下载得到文件列表

mosquitto源码分析.doc

文档介绍

文档介绍:mosquitto源码分析 本文由逍遥子撰写,转发请标注原址:/article/details/一、 ,提供轻量级的,支持可发布/可订阅的的消息推送模式,使设备对设备之间的短消息通信变得简单,例如现在应用广泛的低功耗传感器,手机、嵌入式计算机、微型控制器等移动设备。Mosquitto采用出版/订阅的模式实现MQTT协议,这种设计模式将通信终端之间的关系统一到服务程序中进行管理,可极大减轻客户端的开发和维护工作。、 mqtt协议简介MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。在某些应用场合中,可通过该协议维持与客户端的长连接。关于mqtt协议更详细的介绍,请参考其官方网站:其个版本源码下载位置:/source/、 出版/订阅模式简介出版/订阅模式定义了如何向一个节点发布和订阅消息,这些节点被称作主题(topic)。主题可以被认为是消息的传输中介,发布者(publisher)发布消息到主题,订阅者(subscriber)从主题订阅消息。这种模式使得消息订阅者和消息发布者保持互相独立,不需要接触即可保证消息的传送。Tcp协议中,tcp连接只提供一对一的可靠传输,例如:主机A与B进行通信,则发起tcp连接的一端只需要知道对方的ip地址和端口号即可,如下图1-1所示:图1-1         一对一通信每一个tcp连接都是由下面的五个元素确定:<源ip地址,源端口号,目的ip地址,目的端口号,通信协议>在实际程序的开发过程中一条连接建立之后,它可能需要在一段时间内一直被通信双方所保持,以备下次数据传输使用。另外,通信的终端数目可能是多个,这就需要每个终端都要维持它所有的通信关系,如下图1-2所示图1-2         多对多通信此时,每个参与通信的客户端所需维持的连接数量将非常庞大,这非常不利于程序的开发和实现。出版/订阅模式即是一种解决这种问题的方法,它通过增加一个中间层的方式,让中间层来维护这种多对多的关系,这个中间层通常称之为服务器,如下图1-3所示:图1-3增加中间层的多对多通信通过增加中间层服务器,每个客户端都只需要维护自己同服务器之间的连接即可,而客户端之间的关系则交由中间服务器来维护,这种设计模式将复杂的通信关系维护工作从客户端剥离出来,非常方便客户端的开发和维护。Mosquito程序即是通过这种方式进行工作,在mosquitto程序内部,将客户端之间的关系通过一棵订阅树来维持。、 MosquitoMosquito源码目录结构介绍。|----mosquitto-|----client|----examples    |----mysql_log    |----temperature_conversion|----installer|----lib    |----cpp    |----jsws    |----python|----logo|----man    |----po        |----libmosquitto        |----mosquitto        |----        |----mosquitto_pub        |----mosquitto_sub        |----mosquitto-tls        |----mqtt|----misc    |----currentcost        |----gnome-panel|----security|----service    |----monit    |----svscan    |----upstart|----src    |----db_dump|----test    |----broker        |----c    |----lib        |----c        |----cpp        |----python        |----python3    |----ssl        |----demoCA        |----rootCA        |----signingCA       所需关注的目录有/mosquitto-、/mosquitto-、/mosquitto-,其中src和lib目录下主要放置mosquitto的实现代码以及部分底层与网络相关的操作,client目录主要为两个客户端程序的实现源码。Mosquito的源码及

最近更新

道德与法治第二单元《我们的学校》测试卷及答.. 6页

行测数量关系试题含答案(精练) 107页

行测言语理解与表达真题及参考答案(预热题).. 176页

行测言语理解与表达试题【夺冠】 174页

脑垂体足底反射区 2页

言语理解与表达专项训练题库含答案(巩固) 177页

言语理解与表达之选词选择题及参考答案(综合.. 175页

言语理解与表达之选词选择题(考点提分) 177页

言语理解与表达刷题带答案(b卷) 176页

言语理解与表达学习精解及答案(名师系列) 175页

浙江省绍兴市2023-2024学年高一上学期期末调测.. 16页

水利工程危险源辨识记录表 16页

言语理解与表达题库附参考答案(实用) 177页

辅警招聘考试行政职业能力测验(言语理解与表达.. 175页

辽宁省公务员考试数量关系专项练习题【考点梳.. 107页

辽宁省公务员考试言语理解与表达专项练习题(.. 176页

辽宁省沈阳市公务员考试数量关系专项练习题附.. 105页

重庆公务员考试行测数量关系专项强化真题试卷.. 105页

重庆市公务员考试常识判断专项练习题【夺冠系.. 79页

重庆市公务员考试数量关系专项练习题附答案(.. 107页

银行考试笔试真题(常识判断)带答案(满分必刷.. 80页

银行考试笔试真题(言语理解与表达)及答案【精.. 172页

陕西省公务员考试言语理解与表达专项练习题(.. 174页

青海省西宁市公务员考试言语理解与表达专项练.. 178页

叉车驾驶员安全培训与评估措施 3页

黑龙江公务员考试行测数量关系专项强化真题试.. 105页

分析中班幼儿班级生活的特点,并有针对性地提出.. 18页

2025年郑州铁路职业技术学院单招职业倾向性测.. 67页

2025年鄂尔多斯生态环境职业学院单招职业适应.. 66页

2025年事业单位工勤技能综合知识试卷及答案 11页