论文部分内容阅读
对等网络(P2P :Peer-to-Peer)技术是当前网络应用的热门技术,在文件共享、分布计算和分布存储等方面取得了巨大的成功。P2P在应用中所表现出的分布性、扩展性、可靠性和负载均衡性正好是对传统的客户端/服务器(C/S : Client/Server)模式固有缺陷的一种回应。与此同时,在C/S架构下基于SIP(Session Initiation Protocol)的VoIP系统使用中逐渐暴露出扩展性、可靠性、安全性和灵活性等方面的缺陷。随着用户规模的日益扩大,问题会越发严重。源于P2P和SIP技术融合思想的P2P-SIP技术正好可以将两者的优势统一,解决VoIP的固有缺陷。论文就是对P2P-SIP关键技术进行研究、设计和实现。论文归纳了SIP协议和P2P技术的主要内容和特点,分析了两者的融合点,进而阐述了P2P-SIP技术是一种以P2P方式组网的分布式的SIP技术的概念。结合当今互联网的业务多样性、网络异构性和泛在性的趋势,提出了P2P-SIP技术的网络异构模型,根据该模型给出了P2P-SIP的开放性组网方案,并进一步研究了实现该方案的关键性技术,包括基本通话建立流程、P2P-SIP节点的设计、P2P-SIP穿越防火前/NAT方案、安全问题和QoS(Quality of Service)保障等问题。P2P-SIP节点实现的关键是如何找到一个简单和维护性强的方法将P2P技术融合到现有的VoIP系统中去。P2P技术在SIP中的功能主要是利用P2P分布式特点来实现VoIP用户信息的分布式存储和分布式查询,从而代替原有的域名服务器(DNS :Domain Name Server)方式。在设计结构上讨论了结构化和非结构化以及SIP-using-P2P和P2P-over-SIP之间的优缺点,选用结构化的P2P-over-SIP模型来实现P2P-SIP技术。结构化中分布式哈希表(DHT :Distribute-Hash-Table)算法的选用是个关键,通过对经典DHT算法的对比和应用现状的分析,首次提出了把Kademlia协议作为P2P-SIP技术DHT算法的方法,并开发了相应的动态链接库。利用该库设计了组网方案中的面向Proxy的节点(Proxy Peer)、面向SBC(Session Border Controller)的节点(SBC Peer)和面向UA(User Agent)的节点(UA Peer)。同时,尝试在Proxy Peer中引入P2P-AVS(P2P Anti-Voice-Spam)信誉机制。论文最后进行了算法仿真和与现有VoIP系统兼容性测试,做了必要的性能分析。