sip服务器响应高并发请求,融合通信中SIP服务器的设计与实现

摘要:

近年来,移动互联网技术日趋成熟,人们的通信方式也从过去的单纯的语音、短信逐步转变为融合通信。当下代表融合通信的即时通信类应用,诸如微信,阿里钉钉,skype等在移动互联网时代不断涌现。如何在融合通信的现有体系中高效的支持即时通信类应用,是需要考虑的问题。现有即时通信类应用主要采用SIP(会话初始协议,Session Initiation Protocol)作为底层协议。然而SIP作为应用层的信令协议,在处理会话类业务上具有优势,但在处理消息类业务上却显得不足。并且随着业务的增长和对服务质量要求的提高,SIP服务器系统如何高并发处理业务也成为一个值得研究的问题。因此对SIP的研究与优化,以及研究SIP服务器的分布式部署和集群搭建具有重要意义。针对上述问题,本文研究了SIP并进行拓展,实现了一种基于发布/订阅模型的IM Broker,并可通过集群的方式完成多个SIP Broker服务器的分布式部署,具有良好的开放性,为未来业务需求的增长提供了空间。本文首先阐明了课题的背景意义,分析了国内外现有即时通信类应用在处理消息类业务上的方式。然后简述了SIP的特点,作用,消息格式和通信流程。研究了SIP现有处理即时消息的几种机制,并通过对比发布/订阅模型指出了现有机制在处理即时消息上的不足。通过事件通告机制研究了SIP扩展的几种方法。此外还对SIP开源项目OpenSIPS做了简单介绍。通过上述对SIP和相关协议的研究,扩展了一种基于话题的发布/订阅模型的SIP,并给出相应的IM方案。在OpenSIPS的基础上实现了一种能够处理即时消息的IM Broker,并给出集群的设计思路和部署方案。最后对系统功能和性能进行了测试,证明了扩展后的SIP在处理即时消息上的可行性及构建SIP集群对系统性能上的提升。

展开