基于扩展XMPP协议的即时通信系统的设计与实现

来源 :中国海洋大学 | 被引量 : 0次 | 上传用户:lhihxk
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
XMPP协议作为即时通信领域的开放标准,有着良好的开放性和扩展性,但其核心协议只是即时通信所需的最小完备集,而已有的扩展存在不少缺陷,主要表现为:消息确认机制低效,XMPP协议的消息可靠性采用“一次一确认”方式,效率低下;其次,XMPP协议支持的文件传输方式,都必须直接从对方设备下载文件,文件传输速率不理想;最后,XMPP协议支持群组聊天,但是其开源实现Openfire中,群组不能被持久化存储。针对消息确认问题,本文在消息节中引入版本号属性,通信双方约定时间窗口,定时回复已收到的版本号,从而达到批量确认。新机制下通过消息的选择性重传,提高弱网络环境下通信的可靠性。针对文件传输问题,本文引入了专门的文件传输服务器负责文件数据传输,改进后的XMPP服务器只负责传输包含文件信息的消息,使文件传输和消息传输分离,将设备与设备之间的交互改进为设备与服务器之间的交互,增加了文件传输的可靠性。针对群组持久化问题,优化了XMPP的开源框架Openfire的数据持久模块,完成群组信息的持久化。此外,为了验证上述协议扩展的可行性,本文设计并实现了基于扩展XMPP协议的即时通信系统,并设计了详细的实验方案,对系统性能以及XMPP协议扩展结果进行分析,归纳整个研究过程,本文主要取得了以下几点创新成果:1、针对现有确认机制的不足,提出了基于版本号的消息确认机制扩展,将一次一确认改为批量确认,同时支持在弱网络下自动开启消息确认功能,提升了通信可靠性;2、引入了文件传输服务器,将文件数据的传输和文件消息的发送分离,保持了XMPP服务器的极简化,同时支持异步传输和发送离线文件。3、针对群组持久化问题,优化了Openfire框架的数据持久层,并设计群组插件,实现了完整的群组功能,提升了即时通信系统的功能完整性。实验结果以及系统试运行情况表明,扩展的XMPP协议性能改善明显,课题取得了预期的效果。
其他文献
随着货币的电子化发展,信用卡在银行业务中所占的比例越来越大。信用卡业务的开发、应用、服务、管理的水准直接关系到银行的经济收益。通过对信用卡业务数据的分析、挖掘,可以
近年来随着万维网甚至企业内联网内信息量的不断增加和人们对个性化搜索的需求的增大,文本体裁分类在计算语言学中的重要性逐渐得到体现,文本体裁自动分类问题已成为当前计算语
背景差分是目前视频领域中运动检测最常用的一种方法,主要思想是比较视频图像序列中的当前帧和背景参考模型来检测目标,但是受内外条件变化的干扰,存在虚警、相机抖动等许多
XML(可扩展标记语言),作为网络上数据表示和信息交换的工具,以其自描述性、独立于平台等特点,已经成为新一代的网络语言。随着XML的广泛应用,XML上的索引及其相关技术的研究
研究的目的是建立一套自动化程度高、技术先进的玻璃瓶在线检测系统。该系统要求实现两个基本检测功能:玻璃瓶直径测量和模号识别。在对尺寸测量和模号识别的相关技术深入研
勘探生产门户是用微软企业信息门户解决方案实现的。随着门户文档的上载,门户内目前各类文档数达到了53733个,勘探生产公司领导和员工提出了准确、快速地检索到这些文档的要求,
数字图像修补,是利用受损区域周围的图像信息给受损区域填充信息的一门技术,本质上是一种图像插值问题。它属于图像复原的研究领域,是图像处理领域的一个分支。在多余物体的剔除
Shor于1994年提出多项式时间内求解大因数和离散对数的量子算法,使得目前使用的基于大因数分解困难性提出的RSA公钥密码体制可以被量子计算机快速破解:Grover提出量子搜索算法,
手写数字识别是利用机器或计算机自动辨认手写体阿拉伯数字的一种技术,是光学字符识别技术的一个分支。由于阿拉伯数字的世界通用性,并且数字的识别和处理也常常是一些自动化
随着科技的进步以及人们生活节奏的加快,智能化的生活已经逐渐取代原有的生活方式。电力技术的发展也进入了智能电网时代。针对早期的电力系统,智能电网通过完全自动化的,基