论文部分内容阅读
随着计算机网络和多媒体技术的飞速发展,VOIP技术作为一种IP通讯技术得到了广泛的关注。SIP协议(Session Initiation Protocol)是实现VOIP技术的一种常用协议,由IETF组织提出。SIP协议是基于文本的协议,具有结构简单、易于扩展等诸多优点,但是,因其采用客户端/服务器结构,存在“单点失效”和“性能瓶颈”的缺点。P2P网络是近年来互联网领域另一个研究热点。P2P网络具有分布式、去中心化、可扩展性强、鲁棒性强的优点,随着用户数目的增加,提供服务的能力也在同步增强,不存在客户端/服务器模式的缺点。因此,人们开始关注P2P与SIP结合技术,目前主流的两种P2P与SIP结合方式是SIP-using-P2P方式和P2P-over-SIP方式。但是目前为止,P2P与SIP更多停留在理论研究阶段,实际应用系统比较少,也并不成熟。P2P与SIP结合仍是当今计算机网络和多媒体技术的研究热点。本文将对SIP协议和P2P网络的结合开展研究和讨论。针对传统SIP系统“单点失效”和“性能瓶颈”的缺点,提出一种P2P网络与SIP协议相结合的系统设计方案,并对系统各个模块的设计进行详细的说明。该方案采用SIP-using-P2P方式,引入P2P网络取代原有SIP服务器,由P2P网络完成节点注册、定位和查询的功能。充分发挥P2P去中心化、可扩展性强的优势;采用全分布式结构化P2P网络作为底层网络架构。全分布式结构化拓扑(DHT)的P2P网络由于采用了确定的拓扑结构,具有较高的节点查找效率和良好的可维护性,适宜应用到VOIP系统中。该方案使用Chord作为节点维护算法。该方案使用的SIP协议栈为PJSIP。PJSIP是一个开源的轻量级协议栈,具有高性能、可移植性强、占用存储空间小等优点。为系统性能提供了有利保障,并且使系统具有良好的可扩展性和可移植性。本系统采用SIP-Using-P2P方式,P2P模块与SIP模块通过应用层接口进行交互。本系统在无需进行NAT穿透的情况下是一个纯P2P的VOIP系统,系统中的所有节点都是对等的,彻底克服了传统SIP系统客户端/服务器模式带来的“单点失效”和“性能瓶颈”的缺点。最后,本文在Windows环境下对系统予以实现并且对所设计的系统原型进行了多方面测试。并与目前主流的基于P2P技术的VOIP系统进行了比较。测试结果表明,本文所设计的系统通话延时小,语音质量好,克服了传统SIP语音通话系统的缺点,实现了预期的设计目标。