《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > 一种基于SIP协议的VoIP服务质量保证

一种基于SIP协议的VoIP服务质量保证

2008-03-12
作者:陈季安,邢 果,戚文芽

摘 要:针对下一代网络中IP电话VoIP服务质量" title="服务质量">服务质量QoS的需求,对目前国内外各种QoS技术进行了分析研究,介绍了基于SIP协议的VoIP网络协议栈结构,提出了一种基于Q-SIP的VoIP网络服务器架构模型,并对其主要的功能模块进行了详细的阐述。
关键词:会话初始协议  网络电话  服务质量  多协议标记交换

 

    目前构建VoIP系统结构的信令协议主要有H.323协议和SIP协议[1]。虽然H.323协议正主导着VoIP技术,但其实现复杂、成本高、建立连接时延" title="时延">时延大,在现有网络中很难实现互联互通。因此,IETF组织提出了会话初始协议SIP(Session Initial Protocol)。SIP将网络设备的复杂性推向网络边缘,支持单播通信、多播通信、名称映射和重定向业务,还支持类似呼叫转发、呼叫拒绝等电信业务的实现以及支持用户移动性。与H.323协议相比,SIP协议更适合于智能用户终端,使用更加灵活、简单。
  IP技术是一种面向无连接的技术,IP网络只提供一种“尽力而为”(Best Effort)的服务,这对于只要求准确率而对时延没有严格要求的数据业务来说是合适的,而对于音、视频等实时通信的QoS(Quality of Service)却难以保证。因此,如何为音、视频等实时通信保证合理可预测的QoS,提供与公共开关电话网PSTN(Public Switched Telephone Network)可媲美的质量和服务已成为当前IP领域中一个重要的研究热点。
1 基于SIP协议的VoIP 网络及QoS指标
  VoIP泛指在以IP为网络协议的计算机网络中进行语音通话的系统,它采用的技术统称为VoIP(Voice over IP)。VoIP技术是建立在IP技术上的分组化、数字化语音传输技术,其基本原理是通过语音压缩算法对语音数据进行压缩编码处理,然后把这些压缩后的数据按照IP等相关协议进行打包,通过IP网络把数据包分组传输到目的地,再把这些包组合起来,经过解码解压处理后,恢复成原来的语音信号,从而达到由IP网络传送语音的目的。而呼叫的建立、拆除、控制、附加服务和能力交流等则需要由控制信令来实现[2]
1.1 基于SIP协议的VoIP协议栈架构
  基于SIP协议的IP电话的协议栈架构如图1所示,其实现方式是:IETF组织制定SIP协议的一个重要原则就是最大限度地重用已有的协议,力争只做少量的功能扩展和应用环境配置。因此,SIP协议栈中的媒体传送层与H.323系统相同,采用PCM编码或其他各种压缩编码的语音信号经过实时传送协议(RTP)封装后在IP网络上传送,并用实时传送控制协议(RTCP)监测QoS。而任选RSVP协议用于资源预留,以此保证传送的QoS。实时流协议(RTSP)用于控制存储媒体的一些实施操作,如播放、快进、暂停等动作,在IP电话中则主要用于语音信箱的控制。传输层协议可以使用TCP或UDP。如果采用UDP,可以由应用层控制消息的定时和重发,并且可以方便地利用多播机制并行搜索目的用户,无须为每个搜索建立一个单独的TCP连接,因此在实际应用中首选使用UDP[3-4]

 


1.2 VoIP网络的QoS指标
  VoIP在Internet各类应用中占据越来越大的比重,其QoS的保证问题也日益突出。要实现语音QoS的保证,首先要了解语音QoS的衡量指标。国际上对基于IP的语音QoS一般从端到端" title="端到端">端到端时延、时延抖动和丢包率等几个方面来评价[5]
   (1)端到端时延
  根据ITU-T组织建议使用G.144协议,端到端时延有如下规定:①0ms~150ms对于大多数应用可接受。②150ms~400ms对于有限的应用可接受。③400ms以上对于通常的网络应用不可接受。
    (2)时延抖动
  在VoIP技术中,时延抖动(Delay Jitter)一般是指语音流中两个连续的语音包的端到端时延的差值。时延抖动对需要规则化传输包的VoIP技术等应用(其他还包括视频播放等)的性能有着显著的影响。
    (3)丢包率
  语音质量的评价通常用丢包率(R值)来衡量。R=Ro-Is-Id-Ie+A。式中,Ro为基本信噪比,Is为同时损害因子,Id为延时带来的损害因子,Ie为设备带来的损害因子, A为有利因子。
  丢包率(R值)有如下规定:①<5%,可接受。②<10%,通过提示丢包噪音可接受。
    (4)保证QoS的关键
  减少延时和抖动是保证QoS的关键。在VoIP端到端传输过程中的时延,平均时延为150ms~400ms,所要做的是使时延小于100ms~150ms,以达到高QoS保证的VoIP技术。网络中的QoS可以通过使用高速的IP网络提高核心网的容量或者通过使用有QoS保证的IP网络(通过RSVP、Diffserv协议)来实现;客户端" title="客户端">客户端的QoS可以通过抖动补偿和选择合适的编解码算法(G.711、G.723等)来实现。
2 VoIP网络的QoS机制
  传统的Internet是一个面向无连接的网络,只提供一种承载业务,即尽力传送(Best Effort)业务,也就是说,网络并不保证数据流的传送时延、时延抖动和丢包率等技术指标,RTP也并不保证QoS,而且在一个连接路径上不做资源预留,还需要使用信令协议来建立连接,协商将要使用的介质格式。然而,为了保证音频、视频等实时通信应用,网络必须支持具有一定QoS的端到端的承载业务。为此,IETF组织已经提出了几种服务模型和机制。下面主要讨论综合服务(IntServ/RVSP)模型、区分服务" title="区分服务">区分服务(DiffServ)模型及多协议标记交换MPLS(Multiprotocol Label Switching) 模型等在保证基于SIP的VoIP技术业务中的应用[4]
2.1 综合服务模型
  综合服务模型(IntServ/RSVP)由IETF RFC1633提出,其基本思想是:将RSVP作为IntServ结构中的主要信令协议,利用RSVP消息,端点应用程序可以提出数据传送全过程必须预留的网络资源(如带宽、缓冲区大小等),同时也确定了沿途各路由器的传输调度策略,基于每个流提供端到端的保证或是受控负载的服务;IntServ在发送方与接收方之间用RSVP作为每个流的信令;RSVP信息跨越整个网络,从接收方到发送方之间沿途的每个路由器都要为每一个要求QoS的数据流预留资源;路径沿途的各路由器包括核心路由器必须为RSVP数据流维护软状态。
  资源预留协议RSVP(Resource Reservation Protocol)是为改善网络对业务流的控制能力而设计的信令协议,不是一种路由协议。这种协议在网络的各个节点之间交换信息,数据发送端将其服务请求通过RSVP协议发送给网络,服务请求则通过网络中的路由协议传递到目的节点,传递过程中RSVP协议收集各个节点的可用资源情况,目的节点根据这些信息以及接收到的QoS请求在返回的信息中在各个节点上申请预留资源,并在无法提供足够的资源预留时发出错误信息。
  IntServ的优点是具有很好的QoS保证,使用RSVP的软状态可以支持网络状态的动态改变与组播业务中成员的动态加入。IntServ存在的问题是网络的扩展性不好,需要进行端到端的资源预留。
2.2 区分服务模型
  区分服务模型(DiffServ)的基本思想是“边缘分类、内部转发”,即根据预先确定的规则对数据流进行分类和标记,以便将多种应用数据流聚合为有限的几种数据流等级。区分服务是由综合服务发展而来的,它采用IETF组织的基于RSVP的服务分类标准,抛弃了分组流沿路节点上的资源预留。
  DiffServ在网络边缘将业务流分成少量的类或聚集BA(Behavior Aggregation),它由IP分组头的区分服务码点DSCP(DiffServ Code Point)标志(在IPv4中的ToS字段,IPv6中流类型字段)。
  在网络的核心节点上,路由器根据每个BA相关的逐跳行为PHB(Per Hop Behavior)来转发分组。PHB是BA的外部表现,可分解成调度特性和丢弃优先级。
  DiffServ的优点是可扩展性较好,缺点是不能完全依靠自身提供端到端的QoS。
2.3 MPLS技术
  多协议标记交换的主要思想是将二层交换(虚电路)与三层路由有机结合,用二层的高速转发支持第三层,大大提高了路由器的转发性能。在MPLS网络中,对分组头的分析检查仅由网络入口处的入口标记路由器I-LER(Ingress LER)处理,即分组进人MPLS网络之前,控制层面的路由协议,如OSPF建立网络路由表、LDP建立到目的网络的标记交换通道LSP(Label Switch Path),将网络层的路由信息直接映射到数据链路层的交换路径上。I-LER确定分组所属的转发等价类FEC(Forwarding Equivalent Class),完成标记的映射和添加。在核心处,标记交换路由器LSR(Label Switch Router)只需根据标记表快速交换分组,用出标记替换入标记将分组逐级转发给LSP上的下一跳路由器;在网络的出口处,由E-LER(Egress LER)移出标记。
2.4 DiffServ Over MPLS技术[6]
  用MPLS技术来承载DiffServ,改变了DiffServ无连接的PHB分组转发方式,为实现端到端的QoS提供了基础平台。其中的I-LER不仅完成普通MPLS边界路由器的功能,同时融合了DiffServ中的ER职能,完成标记的封装和流的聚合形成BA,并将BA映射到对应的LSP上,完成对聚合流的监管和调度;LSR完成标记转发的同时,还需要对分组进行调度、丢弃和整形。可见其关键是如何实现标记到PHB的映射。
  对于标记到PHB的映射,RFC 3270中提供了两种映射方法,分别为L-LSP(Label-Infered-PSC LSP)和E-LSP(EXP-Infered-PSC LSP)。PSC(PHB Scheduling Class)是指一类具有相同队列处理要求的PHB。由于需要扩展来支持数量更多的PHB,在整个网络上接受这些PHB,但合并LSP却较困难。
3 基于Q-SIP的VoIP网络架构
  通过SIP在两个终端之间建立会话协议,虽然有统一的资源标识符,但是SIP协议在IP网络中进行会话时没有QoS控制能力,无控制会话功能,难于运营维护。因此,在当前追求会话传输质量的高通信要求下,原有的S1P协议体系难以满足这种需求[7]
  在SIP协议中,SIP客户端通过一个SIP代理服务器(Outbound Proxy)处理发出和进入的呼叫,客户端发送SIP消息给代理服务器并且从该服务器接收消息。由此,SIP服务器可以添加(和读取)SIP消息的QoS相关信息,从SIP信令中抽取QoS参数并与网络QoS机制实现交互,以下称改进的SIP服务器为Q-SIP服务器。因此,为了在未来宽带网络中更好地实现VoIP服务质量保证以克服原有SIP协议的缺点,本文提出一种基于Q-SIP的VoIP网络服务器架构模型如图2所示。该模型在实现服务质量会话控制时,可协同多种协议完成QoS任务,如RSVP、Diffserv、MPLS、COPS协议等。图2所示的新的Q-SIP网络架构具有QoS控制和服务功能,从而保证了VoIP网络的服务质量。

 


3.1 Q-SIP模型的功能
  Q-SIP模型的功能主要包括高级SIP代理、用户优先、QoS控制和策略等模块[7-9],其功能图如图3所示。

 


   下面对主要功能模块进行分析。
   (1)高级SIP代理模块
  该模块完成的功能主要是从SIP消息中提取有关的会话信息,完成SIP协议的相关内容。其主要任务是:①对IPV6的会话分析:提取会话的相关信息,例如源、目的地址、端口号等。②对SIP会话初始化协议:在会话建立前,在发送方和接收方之间协商互操作性、基于文本的编码方式。③SIP URI统一资源标识符:用于确定终端的地址语法;对IPV6网络提供的巨大地址空间有扩展性。④Q-SIP消息分析的流程为:分析SIP消息→使用源、目的IPV4/IPV6地址和端口号→配置Diffserv、MPLS等,使用路由器中的数据包优先级队列控制。
    (2)用户优先模块
  用户优先模块主要完成对会话有效的QoS数据优先功能,例如语音会议、视频会议;实现用户优先的会话控制,以提供个性化的服务,例如多媒体、位置信息等。
    (3)QoS控制模块
  该模块是非常重要的模块。其主要功能:①可以与高级SIP代理协作,根据会话信息确定QoS级别。②通过通用开放策略服务COPS(Common Open Policy Service),命令行接口CLI(Command Line Interface)和QoS命令来实现基于用户优先对路由器进行控制,配置RSVP、Diffserv、MPLS等。其中,COPS协议[10]是一种查询反馈类型协议,用于在策略服务器与一组客户端(通常是指网络中的设备,如交换机等)之间交换策略信息,为网络资源请求提供一种基于策略的控制机制。业务策略也可以采用命令行的方式部署在设备上,但是如果要实施动态策略则会非常繁琐,甚至无法实施,而且全网策略的同步没有机制保障,存在全网策略不一致的风险。COPS定义了两个逻辑实体:策略决策点PDP(Policy Decision Point)和策略执行点PEP(Policy Enforcement Point)。PDP与PEP的关系可以看作是服务器与客户机的关系,PEP向远端的PDP发送配置、更新、删除等请求,PDP收到后,将决策响应回送给PEP,PEP执行相关的操作。COPS采用TCP作为传输协议,PEP负责初始一个TCP连接,定时向PDP发送Keep_Alive消息,以检验连接的有效性。
    (4)策略模块
  所谓策略就是将业务分类并且与数据转发控制结合起来,实现网络的全局性流量管理。通常所说的策略包括:业务的优先级、安全过滤、网络容量。策略是支持策略网络的基本模块,一个完整的策略包括流量分类、定义的执行策略和策略安排。①流量分类:流量分类实际上是一个条件,当数据流满足这个条件时相应的策略就会执行。因此流量分类反映了管理者对业务质量的要求。②定义的执行策略:策略的执行定义了当流量分类满足某个条件时应当响应的动作。这些动作包括:标示特定的DSCP值;为满足条件的数据分配特定的带宽;突发数据的流量整形;丢弃该数据。③转发队列:每台支持策略优先级的网络设备均支持相应的排队机制,通过这些排队机制实现不同优先级业务的差分服务。
3.2 Q-SIP体系的协议序列
  Q-SIP呼叫过程的消息序列图如图4所示。

 


3.3 Q-SIP的可扩展性
  这种基于Q-SIP的VoIP网络架构模型可以在现有的网络上实现,并支持未来宽带网络,如IPV6网络、移动会话网络等[5]。该模型不需要部署在专用网上,因而具有很大的发展空间。Q-SIP可扩展性在于可以在大规模网络环境中通过多个Q-SIP服务器相互协作来完成网络会话服务,通过高级SIP代理进行QoS级别的设置等。
  根据VolP系统中高质量语音的需求,分析了如何满足与传统电信网相当的QoS要求(包括丢包率、传输延时和延时抖动等),提出了一种支持QoS的SIP代理服务器模型的实现方案。该方案充分利用了多层次和多平面结合的特点,协同多种协议工作,解决了SIP代理服务器无会话QoS控制的能力和VoIP网络中策略服务器无会话控制能力的问题。另外,模块化的设计结构增强了系统的通用性和可移植性,有利于系统的后期维护和功能扩展,而且对下一代网络中的IPV6技术有很好的扩展和支持。
参考文献
[1]  ROSENBERG J, SCHULZRINNE H, CAMANILO G. SIP:Session initiation protoco1[S] .Internet RFC 3261,2002.
[2]  LUO Lin, WARFIELD B. Analysis and applications of SIP in internet telephony[J]. The Journal of CUPT,2005,12(1):70-75.
[3]  DAVIDSON J, FOX T. Deploying cisco voice over IP solutions[M]. Beijing:Post and Telecommunications Press, 2003.
[4]  STEVENS W R.TCP/IP详解 卷1:协议[M]. 北京:机械工业出版社,2003.
[5]  吴雯,靳鹏.一种基于SIP-QoS体系的VoIP技术[J]. 军事通信技术,2004,25(4).
[6]  LE F F,DAVIE B, DAVAFI S, et a1. Multiprotocol label Switching support of diferentiated service[S].RFC3270,2002.
[7]  司端锋,韩心慧,龙勤,等.SIP标准中的核心技术与研究进展[J].软件学报,2005,16(2):239-250.
[8]  MCCABE J D. Network analysis, architecture, and design [second edition][M]. Beijing:Publishing House of Electronics  Industry,2005.
[9]  叶婷,杜旭,潘鹏,等.支持SIP代理服务器的方案设计与实现[J].计算机工程,2006,32(1):139-141.
[10] DURHAM D, BOYLE J, COHEN R, et al. The common open policy service protocol[S]. RFC 2748,2000.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。