当前位置:首页 > 技术 > 通信业务 > 文摘 > 一种新型的分布式IMS(IP多媒体子系统)实现方法

一种新型的分布式IMS(IP多媒体子系统)实现方法

2008-07-01 00:00:00   作者:   来源:   评论:0  点击:





  经过业界多年的努力,IMS标准已经相对成熟,各主流电信设备厂家均能提供符合3GPP R6版本的IMS系列产品。全球已经部署了100多个IMS试点和试商用网络,其中AT&T、Vodafone、BT、Orange/FT、Telecom Italia、匈牙利电信等国外运营商已部署了正式商用网络。但IMS网络架构相对于互联网上的VoIP系统仍然比较复杂,对网络建设和维护的要求比较高,难于应对来自互联网方面的竞争。近年来,P2P(peer to peer)[1]技术获得了明显的进步,基于P2P的VoIP系统取得了显著的成功,例如,Skype在世界范围内得到了广泛的使用。本文将结合P2P技术的最新研究进展,借鉴IMS网络的优点提出了一种分布式的IMS实现方案。
2、从P2P到P2P-SIP
  2.1 P2P概述
  Napster[2]和Gnutella[3]的广泛应用引起了人们对P2P网络越来越多的关注,与传统的C/S计算模式不同的是,P2P系统中的节点既可以做服务器又可以做客户端,并且P2P利用空闲资源降低了资源共享的开销,提高了共享资源节点的自治性和系统的顽健性。同时,P2P可以分散资源,平衡网络负载,避免单点失效问题。
  P2P自出现以来就被广泛应用于各个领域,比如文件共享、科学计算与协作、数据存储以及实时通信等。由于P2P的种类繁多,很多研究人员从不同角度对它们进行分类。按照P2P的发展历程可以将P2P分为非结构化和结构化。非结构化P2P系统又可以分为集中式和完全分布式的,代表分别是Napster和Gnutella。Napster是最早出现的P2P系统之一,并在短期内迅速成长起来。Napster采用了集中式的目录服务器机制,用于存放对等节点的地址信息和所保存数据的信息,能够对请求数据进行查找并返回最合适的目的节点。与Napster不同,Gnutella采用了完全分布式的策略,利用洪泛算法对数据进行查找。Gnutella无单点失效问题,可扩展性好,但是定位效率低。由于非结构化的不可扩展性,大量的研究集中在如何构造高度结构化的系统,因此,结构化P2P系统应运而生。结构化P2P系统将每个资源定位在确定的节点上,保证在有限步数内定位到资源,比如Chord[4]、CAN[5]、Pastry[6]等。
  2.2 SIP协议
  SIP(session initiation protocol)是一种信令协议,用于在互联网两个端点之间建立多媒体会话的控制信令,由IETF制定。SIP协议简单、可扩展性好,被很多互联网电话业务采用,成为VoIP的两大协议之一。通常情况下,两个端点使用SIP来协商一次“呼叫”,一旦协商成功,两个端点就会使用选中的方法相互交谈,这就与SIP无关。
  同样是与传输和控制无关,但与P2P不同的是SIP电话系统仍然是基于C/S模式的。SIP服务器保存了用户和他的注册IP地址之间的映射关系。当某一用户发起呼叫时,SIP服务器会把请求直接转发给呼叫申请用户,或者SIP可以看作是处理过的P2P系统,这种系统通过SIP服务器状态设置超级节点(SuperNode),然后基于DNS域名解析发现节点,而不是像P2P一样通过标识符寻找节点。
  随着用户的高速增长,现有SIP服务器也反映出一些不足,即C/S模式带来的单点失效和性能瓶颈问题。由此可见。使用一个P2P架构代替现有的SIP服务器状态设置,既可以提高系统的可靠性,又允许系统动态适应节点失效的情况,Skype使用P2P机制解决了这个问题。Skype网络把节点分为超级节点和普通节点,超级节点为普通节点提供注册服务,当超级节点失效时,它所管理的普通节点会注册到其他超级节点0从而避免了单点失效。
  然而,P2P系统也有其自身的局限性,主要表现在各种应用都采用封闭的软件,接口是专用的而不是互通的。因此,需要提出二个开放的体系结构,可以支持各种多媒体业务,IETF借鉴P2P的机制提升SIP,提出了P2P-SIP。
  2.3 P2P-SIP
  P2P在VoIP和通信领域的最新发展是P2P-SIP技术。P2P-SIP是P2P和SIP技术的结合,它的目的是利用P2P的灵活性和负载均衡的特点改造原有基于SIP韵集中式呼叫控制实现架构。P2P和SIP的结合有两种方式:一种是基于P2P实现SIP,即把SIP的一个集中维护配置和控制设施用P2P变成分布式,达到降低SIP的成本和改善SIP可靠性的目的;另一种方法是在SIP上运行P2P,用SIP协议的消息传递方式实现P2P算法,其中,前者P2P和SIP之间具有较低的耦合度,实现起来更加灵活。因此,本文提出的分布式IMS架构基于P2P-SIP。
  SIP电话系统是C/S结构的,如图1(a)所示,代理服务器A和B启动SIP终端,终端会在SIP服务器上注册各自的IP地址,DNS会保存用户域名和它的IP地址间的映射关系。当某节点通过A向另一节点发起呼叫时,DNS通过映射关系找到相应的代理服务器B,于是把请求转发给B,随后A和B之间通过SIP协议进行通信。可以发现,SIP电话是基于DNS域名解析来发现节点,因此存在单点失效问题。图1(b)给出了基于DHT(distributed hash table)架构代替现有SIP服务器来提高系统可靠性的架构。

图1 SIP系统架构和P2P-SIP架构比较

  P2P-SIP使用大量以DHT形式互联的分布式服务器取代集中式的DNS,其作用类似于P2P系统中的超级节点。如图1(b)所示的P2P-SIP网络中,原来管理一个域的单台服务器变成多个超级节点,超级节点之间通过P2P机制互联,进行负荷分担。超级节点可以承担注册、代理和计费等功能。用户可以通过任一超级节点使用服务,并且部分超级节点的故障不会影响P2P-SIP网络的正常运行,增加新的超级节点就可以对服务器容量进行扩充,因为每个服务器的地位是对等的。




  2 Napster website,http://www.napster.com,1999

  3 Clip2com.The gnutella protocol specification v0.4,http://rfc-gnutella.sourceforge.net/Development,2001

  4 Stoica I,Morris R,et al.A scalable peer-to-peer lookup protocol for Internet applications.IEEE/ACM Transactions on Networking,2003,11(1)

  5 Ratnasamy S,Francis P,et al.A scalable content-addressable network.In:Proceedings of the Acm Sigcomm 2001 Conference on Applications,Technologies Architectures,and Protocols for,Computer Communication,San Diego,CA,USA:ACM Press,2001

  6 Rowstron A,Druschel P.Pastry:Scalable,decentralized object location and routing for largescale peer-to-peer systems.In:Proceedings of the IFTP/ACM International Conference on Distributed Systems Platforms (Middleware'01),Heidelberg,Germany:Springer-Verlag,2001

泰尔网

相关阅读:

分享到: 收藏