论文部分内容阅读
随着工业4.0及万物互联的发展和兴起,各种联网设备之间的消息推送逐渐成为了一种基础性需求。与传统互联网相比,在新的网络环境中由于其设备处理器性能、网络带宽和稳定性以及电池蓄电量等诸多方面的限制,对消息推送提出了更高的要求。MQTT是一种基于发布/订阅模型的轻量级消息传输协议。针对低带宽,低CPU计算能力,以及不稳定的网络环境做了特殊的优化,能够有效节省终端的耗电量和流量,使其能够适用于嵌入式智能终端和移动终端的消息推送。基于此,本文研究提出一种基于MQTT的云推送平台的技术方案。主要工作内容包括:(1)MQTT协议的研究和分析。针对MQTT协议中的关键点进行分析,包括MQTT协议的各种消息类型,MQTT协议中消息的基本格式,MQTT协议中消息各个标志字段的特殊含义及MQTT协议的整个通信流程。(2)MQTT协议的扩展研究。针对消息的安全可靠传输,提出一种基于MQTT协议的消息加密验证机制,在协议层面实现对消息的加密和校验,来确保消息的可靠传输;此外,针对MQTT协议的心跳报文,本文提出一种基于动态反馈的心跳维护机制,实现动态地修改心跳时间间隔,使得MQTT协议能够更好的适应复杂无线网络环境。(3)MQTT协议实现若干关键技术的研究。在对开源系统Mosquitto进行研究的基础上,本文提出一种基于哈希表的主题发布/订阅关系维护模型,实现对主题发布/订阅关系维护性能的改进;基于Epoll模型对开源系统的并发性能进行改进研究,以提升系统的并发性能;基于分布式缓存对系统存储性能进行改进。同时对上述改进结果进行实验验证。(4)SaaS模式消息云推送平台的设计实现。在上述研究成果的基础上,设计实现MQTT消息云推送平台,使消息推送可以以基础服务的形式供第三方应用使用。最后,将云推送平台进行实际应用,验证系统的可行性。