质量保证措施方案_网络电话服务质量保证机制的研究

  【摘 要】P2P在提升VoIP整体性能的同时,还存在一系列的可靠性问题。对此,文章提出了一种网络电话服务质量保证机制,旨在当P2P VoIP系统中网络环境变化时保证系统的服务质量,并分析了该机制的设计思想和网络架构。实际部署系统的功能测试结果表明,当网络环境变化时,系统能够动态透明地选择切换通话链路以提供良好的会话服务质量。
  【关键词】VoIP P2P 服务质量保证机制 中转节点
  1 引言
  VoIP(Voice over IP)[1]是指应用IP技术传输语音包,实现相关服务管理与控制的工具或协议的集合。其基本原理是通过语音压缩的设备对话音进行压缩编码处理,然后把这些语音数据根据相关协议进行打包,经过IP网络把数据包传输到目的地,再把这些语音数据包串起来,经过解码解压处理后,恢复成原来的语音信号,从而达到由IP网络传送话音的目的。由于技术和成本优势,VoIP是目前增长最快的通讯技术之一。
  现有的VoIP系统大多运行在C/S模式下,服务器统一管理用户的各种行为,提供注册、通话等服务。当网络规模较小时,C/S由于方便管理而具有一定的优越性;但当用户数量急剧上升时,C/S模式的缺点就显露出来,单一的服务器对于提供VoIP此类大量用户同时并发访问的服务显得力不从心。如果依靠增加服务器来缓解系统压力,无疑将大大增加运营成本,也无法从根本上解决系统瓶颈。
  由此,现有技术方案将点对点(P2P,Peer-to-Peer)技术引入VoIP系统,期望从根本上解决此问题[2]。但引入P2P在提升VoIP整体系统性能的同时,也带来了系统服务质量可靠性问题。这些问题主要包括:用户无法确保完成中转节点的申请过程;中转节点的服务状态对通话服务质量影响较大;信令在P2P网络中的传输过程无法得到保证。
  本文主要侧重于分析传统SIP(Session Initiation Protocol)网络引入P2P技术存在的问题,探讨如何有效地在P2P网络结构中实现稳定可靠的VoIP网络电话系统,研究系统服务质量和可靠性问题,提出一种系统信令和媒体层可靠性问题的解决方案,并评估这种方案的性能和可行性。
  2 现有软件平台
  VoIP业务的服务质量涉及许多方面,主要包括:(1)信令层可靠性;(2)媒体层可靠性;(3)节点失效问题;(4)语音质量保证。可以利用P2P网络中节点多样性的特点,使用中转节点来构建音视频转发链路,减小用户的通讯时延,并使网络中用户的连接更加灵活,系统更为稳定,性能更为优越。
  Skype是国外较为流行的P2P VoIP软件,不仅网络通信技术较为成熟,更是率先将P2P技术引入传统的VoIP系统中,所有结点可以获得其他结点的资源,并参与到路由路径选择、资源分配等任务中,提高了网络电话的语音质量,减小了系统的会话时延[3]。系统由用户终端(SC,Skype Client)、超级节点(SN,Super Node)和登录服务器节点(Bootstrap)组成[4]。Skype的网络架构如图1所示。
  另一个值得研究的是Cutephone网络电话系统,该系统已成功部署到中国移动的业务网络中并得到了广泛的应用。系统同样采取了P2P网络架构,每个节点作为对等的网络实体,共同分担系统的会话任务。系统架构如图2所示。
  然而,不论是在Skype还是在Cutephone中,都存在这样的问题:P2P的动态性和差异性造成了服务节点的不稳定性,而在通话过程中,服务节点由于退出或者拥塞造成会话服务中断的情况时有发生。
  例如,通过对Skype数据包的分析和测试,发现了以下几个问题:
  (1)用户终端对超级节点的依赖程度较高,在终端加入到覆盖网络后,超级节点一旦失效,将严重影响用户的通话过程;
  (2)系统对呼叫双方提供了不同的转发路径,在减小单一路径失效对会话过程影响的同时,也加大了转发路径失效的概率;
  (3)为了解决NAT等问题,中转节点的存在导致了系统的服务质量对中转节点的服务状况要求较高,中转节点的退出或转发效率不佳会对实时业务产生较大的影响。
  为此,系统应动态选择服务节点,来完成信令传输和中转查找的过程;在中转通话中应动态调整转发路径,用户通过切换不同的中转节点,来保证通话服务质量。另外,Skype由于采用了私有协议,并不兼容标准的SIP客户端,给P2P VoIP技术广泛推广普及造成了一定的困难。
  3 服务质量保证机制
  3.1 设计思想
  服务质量保证机制,主要是指当利用P2P等分布式计算技术构建起来的核心支撑网的局部,出现了因不可抗力造成部分网络损坏而导致服务过载的情况,系统能够实施面向用户的透明的服务迁移,保证服务以较高的质量运行。传统的VoIP系统中,服务节点的单一性,容易造成信令以及媒体数据流的转发过程不可靠;于是考虑在覆盖网中寻找能接管服务的节点,借助冗余机制来改善传统VoIP服务的不足,以此来增进服务质量的可靠性。
  本文提出的服务质量保证机制主要应对两种情况:(1)当转发音视频媒体数据的中转节点RN出现服务失效的情况时,如何保证通话继续进行而不受影响;(2)当客户端UE注册的SIP服务器SN-C出现故障时,如何确保SIP信令能正常传输至对方客户端。由此,本方案的工作重点在于:客户端能自动检测到通话过程中的异常状态,并及时通过备份链路恢复通话;同时保证系统的实时性,使服务器节点发生故障时用户感知度最小,即最大限度地减小端到端的时延。
  经过大量的研究与实验发现,要满足系统的服务质量保证需求,系统设计上应满足以下几个原则:
  (1)通话前完成备份链路的部分准备工作。如在通话过程中进行备份链路的选择以及切换等过程,则端到端的时延过大,将严重影响通话质量,进而降低用户体验。   (2)系统使用中转节点进行通话时,客户端如检测到通话质量不佳,应重新向中转服务器RN-S请求新的中转节点。如在通话前即申请冗余中转节点,由于网络的局部性原理和节点的动态性,此冗余中转节点可能同样无效,将会导致通话无法正常进行。
  (3)通话时由中转服务器和冗余中转服务器共同协商完成中转节点的选择过程。选择中转节点时,中转服务器承担着较多的工作,当中转服务器发生故障时,中转过程将会由于无法选择中转节点而不能正常进行。因此,为提高系统整体的可靠性,客户端加入中转覆盖网时,应同时请求冗余中转服务器。
  (4)SIP信令传输中,相关事务和状态应进行备份,并储存在P2P网络中,在节点失效时后继节点能动态接管相关SIP事务处理。对于SIP请求,应完成正常SIP服务器流程;对于SIP响应,需要在DHT中获取备份SIP事务消息之后,完成正常SIP服务器流程。
  3.2 网络架构
  按照上述设计思想,基于P2P网络架构的VoIP系统的可靠性主要体现在两方面:首先是中转通话过程的可靠性,这将直接影响用户的通话体验;其次是SIP信令传输的可靠性,在网络中节点非正常退出等情况下,确保系统能顺利完成呼叫、通话、挂断等功能。针对这两个问题,将质量保证机制分为两块较为独立的内容,分别运行在媒体层和信令层。
  (1)媒体层网络架构
  首先描述中转通话时的服务质量保证方案。系统媒体层的中转架构如图3所示。
  客户端UE在启动后,向中转覆盖网的启动节点(RN-BS)申请中转服务器RN-S,中转服务器的作用是接受UE申请中转节点的请求并返回合适的中转节点RN给UE。根据方案的设计思想,UE应申请两个中转服务器,即中转服务器和冗余中转服务器,以确保在通话时能申请到中转节点RN。同时,RN-S应选择延迟较小的节点作为RN进行通话数据包转发。
  由此,系统的媒体层构建了一个基于延迟聚集的拓扑网络,通话数据包在低延迟节点簇中进行转发。双方RN-S通过基于环状结构的延迟聚集算法完成RN的选择。节点加入中转覆盖网时,与RN-BS通信并按照临近原则得到一批节点作为此节点的邻居节点。在中转覆盖网的维护过程中,RN-S通过与其他节点保持心跳来更新自身延迟聚集环中节点的信息,以方便拓扑网络中节点的加入和退出,完成网络的维护。UE在获得中转节点后,通过ICE流程进行连通性测试,根据测试结果确定通话的连接方式,测试结果和UE所在的网络类型有关。一般来说,当UE处于对称防火墙之后时,双方将选择中转节点进行通话。
  (2)信令层网络架构
  另一个对系统服务质量影响较大的是系统信令可靠性。根据方案的设计思想,信令层的网络架构如图4所示。
  根据实验和分析得知,在VoIP信令传输和处理中,一般出现的可靠性问题在于从客户端振铃到用户摘机(Ringing→200OK),以及从通话建立到用户挂机这段时间(ACK→BYE)。在SIP会话中,系统将事务的备份信息传输给SN-C的后继结点,在SN-C失效时通过后继节点恢复SIP信令的传输。事务的备份信息以的格式存储,其中key表示事务标识符的160bits哈希值;value表示事务信息,包括SIP事务状态信息和包信息。在信令的传输过程中,主SN-C在接收SIP信令的同时,计算并在DHT中查找接管服务器的IP(find_successor(node_id+1)),随后将事务的备份信息存储在接管服务器中。
  4 测试结果
  4.1 中转节点的重新发现命中率
  中转节点的重新发现命中率是中转选择中的重要性能指标,该评价指标是指在中转通话以及动态中转过程中,通过中转服务器可以成功找到中转节点的概率。此概率越大表明中转选择算法的可行性越高,系统动态切换中转节点的成功率也越高。
  中转节点的重新发现命中率随着节点规模的变化情况如图5所示。图5表明,中转选择算法在节点规模不超过1000的情况下保持了较高的命中率,发现中转节点的概率不低于90%。同时,中转选择算法的命中率随着节点规模的扩大而有减小的趋势。原因在于节点数目的增加,造成了在规定的TTL内中转搜索效率的降低,搜索包所能覆盖的网络范围相对减小,系统能找到合适的中转节点的概率也随之降低。但是不难发现,当节点规模超过2000时,中转节点的命中率稳定在70%以上,这也证明了节点选择算法具有稳定性和收敛性。
  4.2 动态中转的时延分析
  对于动态中转来说,首先要考虑的是切换中转的时延,这将直接影响到用户的通话体验。从切换中转的流程来看,整体时延由客户端检测的时延、申请新中转节点的时延以及重新发起RE-INVITE的时延组成。由于各个节点以及覆盖网网络状况的差异,动态中转不同步骤的时延差异也较大。实验中分别模拟了200个、300个、400个至2300个覆盖网节点的网络规模,并且不断将节点添加到中转覆盖网中;同时检测客户端从发现中转节点失效,到重新恢复通话的时延。试验统计结果如图6所示:
  除了网络环境的影响,切换时延还随着网络中节点数目的增加而增大,导致申请中转节点的时延、RE-INVITE消息在网络中的传输时延增大。在图6中可以看到,节点间的平均延迟增长速度也随着节点数目的扩大而不断增加,但是当节点数目达到一定的规模时,延迟增长的速度有减缓的趋势。这主要是由于在客户端采用了超时机制,控制了申请中转节点的时间。在节点规模不是很大时,动态中转的时延在150ms左右,满足动态切换的要求和ITU的标准。节点规模增大后虽然延迟增长到250ms以上,根据ITU的标准以及实际测试,用户会感觉到有较大的时延;但对于不采用动态切换功能的VoIP系统来说,算法在中转节点失效后仍能保持通话的进行,改善服务质量效果依然明显,延迟时间随节点规模的扩大基本上趋于平缓,这证明了算法依然是收敛的。
  4.3 信令可靠性的性能分析   随着节点规模的变大,SN-C失效的可能性也变大;在节点失效时,会话的完成率是衡量系统可行性的重要指标。
  对原始P2P-SIP和信令可靠性P2P-SIP分别做了六组实验,分别对应失效节点数为1、5、9、13、17和21。会话的完成率如图7所示,可以看出,原始P2P-SIP随着节点失效数增多,会话完成率达大幅下降;而采用本系统的算法,则能保证通话完成率在99%。
  5 结束语
  经过实际部署系统的功能测试,结果表明当网络环境变化时,系统能够动态透明地选择切换通话链路以提供良好的会话服务质量。在性能方面,通过NS2进行了模拟,结果表明当前超级节点失效时,通话完成率在99%以上;中转节点选择算法的平均命中率在70%到90%之间;在动态切换中转节点时,切换时延在网络规模不大时基本维持在150ms以内。测试结果说明,本文提出的服务质量保证机制对于VoIP系统的性能及服务可靠性有着明显的提升。
  参考文献:
  [1] Scalabrino N, De Pellegrini F, Riggio R, et al. Measuring the quality of VoIP traffic on a WiMAX testbed[A]. Proc. TRIDENTCOM[C]. May 2007.
  [2] Fabio Ricciato, Ugo Monaco. Distributed Schemes for Diverse Path Computation in Multidomain MPLS Networks[J]. IEEE Communications Magazine, 2005,43(6).
  [3] Guha S, Daswani N, Jain R. An experimental study of the Skype peer-to-peer VoIP system. in IPTPS[A]. Santa Barbara, February 2006.
  [4] Kho W, Baset S. Skype Relay Calls: Measurements and Experiments[A]. Proc. of IEEE Global Internet Symposium[C]. Phoenix, 2008.
  [5] Suh K, Figuieredo D R, Kurose J. Characterizing and Detecting Relayed Traffic: A Case Study using Skype[A]. Proc. of IEEE INFOCOM[C]. Barcelona, April 2006.

推荐访问:网络电话 质量保证 机制 研究