VoIP技术应用中存在的问题的分析研究

VoIP技术应用中存在的问题的分析研究摘 要 VoIP技术是由原来的一种互联网上的增值应用发展成为一种得到广泛应用的通信技术,较传统的PSTN通信具有明显优势,但在实际应用中也面临诸多问题。文章简述了VoIP基本原理及其分析研究了实际应用中VoIP技术现存问题,并提出了相应的解决方法,最后讨论了VoIP技术的发展方向和研究趋势。   关键词 VoIP;QoS;攻击;语音编码  1 引

大家好,欢迎来到IT知识分享网。

摘  要  VoIP技术是由原来的一种互联网上的增值应用发展成为一种得到广泛应用的通信技术,较传统的PSTN通信具有明显优势,但在实际应用中也面临诸多问 题。文章简述了VoIP基本原理及其分析研究了实际应用中VoIP技术现存问题,并提出了相应的解决方法,最后讨论了VoIP技术的发展方向和研究趋势。

   
关键词  VoIP;QoS;攻击;语音编码
 

 

1  引言

    VoIP 又称 IP电话或IP网络电话,是Voice over IP的缩写,这种技术通过对语音信号进行编码数字化、压缩处理成压缩帧,然后转换为IP数据包在IP网络上进行传输,从而达到了在IP网络上进行语音通信 的目的。IP电话极大地改进了网络带宽的利用率,大大降低了通信的费用,它的广泛应用也促进了宽带多媒体应用的发展。VoIP可以在IP网络上便宜地传送 语音、传真、视频和数据等业务,如统一消息、虚拟电话、虚拟语音/传真邮箱、查号业务、Internet呼叫中心、Internet呼叫管理、电视会议、 电子商务、传真存储转发和各种信息的存储转发等。VoIP对于传统的电信业务来说有很大的优势,但是由于传统的电信业务使用电路交换技术,而VoIP采用 IP包交换技术,因此VoIP技术与电路交换技术相比有些问题需要解决。

2  VoIP基本原理

2.1  VoIP电话基本原理

VoIP技术应用中存在的问题的分析研究

图1  语音数据处理示意图

    传统的电话网是以电路交换方式传输语音。而VoIP方式是以IP分组交换网为传输平台,对模拟的语 音信号进行压缩、打包等一系列的处理,并采用无连接的UDP协议,在IP分组交换网络进行传输。VoIP设备需要把语音信号转换为IP数据流,并把这些数 据流转发到IP目的地,IP目的地又把它们转换回到语音信号,它们之间的网络必须支持IP传输。VoIP技术语音数据处理如图1所示。
    目前,VoIP系统一般由IP电话终端、网关、网守、网管系统、计费系统等几部分组成。IP电话终 端包括传统的语音电话机、PC、IP电话机,也可以是集语音、数据和图像于一体的多媒体业务终端。由于不同种类的终端产生的数据结构是不同的,要在同一个 网络上传输,就要由网关或者是适配器进行数据转换,形成统一的IP数据包。

2.2  VoIP的信令协议

    在传统电话系统中,一次通话从建立系统连接到拆除连接都需要一定的信令来配合完成。同样,在IP电 话中,如何寻找被叫方、如何建立应答、如何按照彼此的数据处理能力发送数据,也需要相应的信令系统,一般称为协议。目前被广泛接受的VoIP控制信令体系 包括ITU-T的H.323系列和IETF的会话启动协议SIP。

3  VoIP技术在应用中面临的问题

3.1  延时与抖动

    在电路交换的方式下,语音的传输延时取决于信号在线路上的传输速率,我们可将铜线上信号的传输速率 近似地看为光速。而且信号是均匀传输的,因此不存在抖动的问题。对于VoIP所采用的包交换方式来说,语音被封装在IP报文中通过数据网络,有多种因素造 成延时。造成延时的原因如表1。在实际应用中,由于经常出现的网络拥塞现象,延时还会进一步增大。
    在发送方来说,某种编码方式的语音帧是以基本恒定的速率产生的。但是在传输过程中每个报文受到的时 延是不均匀的,造成接收方并不是以与发送方相同的恒定速率与顺序收到报文,这就是抖动(Jitter)。如果我们按照接收的速率顺序回放每个报文,就可能 听到一团杂音,从而影响了语音聆听效果。

 

表1  造成延时的原因
延时值
原因
说明
~20ms
编码延迟
编码算法的限制,以G.729为例
~20ms
打包延时
以G729为例,每个RTP包需要2个10ms帧
1~2ms
送入发送队伍
 
<10ms
发送队列延时
遇到拥塞、或由于队列算法的影响
~10ms
发送至链路层
链路层速率越慢,延时越大
<70ms
主干网延时
受到光速的限制
<10ms
从链路层接收
链路层速率越慢,延时越大
1~2ms
移入接收队列
 
20~40ms
Jitter Buffer延时
由于平滑语音的需要设置Jitter Buffer引起
0ms
解码延时
如G729编码方式

 

3.2  丢包

    丢包现象主要是报文的延时引起的。在设置了一定的抖动缓冲(Jitter Buffer)深度后,当报文由于拥塞等问题被延时后,到达的时间晚于当前的抖动缓冲深度,我们就必须将该报文丢弃。也就是说在输出队列中填满了等待传输 的数据包,没有更多的空间可以用来存储入站数据包,这种情况被称为输出队列已满。对于数据包进行排队的网络设备别无选择,只能丢弃数据包。大多数丢包都是 由于这个问题引起的。

3.3  降低带宽占用

    用于媒体传输的实时传输协议(RTP)在头部压缩前与压缩后的报文结构如图2所示:
VoIP技术应用中存在的问题的分析研究
 
图2  RTP与cRTP报文结构

 

    其中假设数据链路层使用PPP协议,则头部为6字节;IP头部最小为20字节;UDP头为8字 节;RTP头部最小为12字节;PayLoad部分假设使用G.729编码方式,每个RTP报文包含2个帧,为20字节。我们发现实际数据部分为20字 节,但是头部却占了46字节,实际的有效带宽占用为约30%。如果我们RTP的载荷(PayLoad)使用PCM编码方式,这部分将占用64K带宽。

3.4  带宽的保证

    传输通道满足语音带宽需求实际上还是不能完全保证语音的连续和平滑。在以下情况会出现语音断续的情况:
    (1)队列中大量其它数据需要传输,导致无法以正常的频率转发语音报文。
    (2)在低速链路上同时存在超长的IP报文需要发送,如一个19200bps的串行链路发送一个 1920字节的FTP报文需要约0.8秒时间。假设在该链路上存在一条FTP数据流,每10秒发送一个如上所述的报文,则FTP占用约1.6K带宽;同时 进行一次采用CRTP及G.731.1 5.3K编码方式的语音会话,总带宽占用率不到11K,似乎应该能听到良好的通话效果。可是考虑每次发送FTP报文时,需要延时0.8秒,这时队列中的 RTP报文也就被延时了0.8秒。用户会每隔10秒就会有0.8秒听不到声音,这种通话效果是用户无法忍受的。

3.5  VoIP的安全问题

    由于 IP 网络的开放性所致,VoIP 系统中的所有设备都能够在网络上被随处分配,因而出现了一些安全威胁。主要的安全威胁有如下四点:
    1)包窃听/呼叫截取
    VoIP 语音服务的传输与安全机制与传统电话服务截然不同。由于 IP 协议本身并没有防范攻击的能力,因而未加密的语音数据流量在传输时极易被截取或侦听。尽管目前来看,数据包侦听在 VoIP 安全事件中所占的比例并不高,但由于这种侦听方式技术难度不大,因此,在 VoIP 逐渐成为语音服务的主流之后,语音数据包侦听可能会成为 VoIP 的一个主要安全威胁。IP 具有的移动性和灵活性使得它容易受到“中间人攻击”,即地址解析协议(ARP)被用来强制流量通过某台 PC 传输,然后就能获取这些流量。
    2)拒绝服务攻击(DoS)
    拒绝服务攻击一直是黑客在网际网络四处寻求下手目标或企业网站的惯用手法,随着VoIP 的普及,黑客当然会将同样手法施展在 VoIP 上。黑客可以对 IP呼叫处理服务器、语音网守等不同目标进行 DoS 攻击。一般来说,要建立 VoIP 通话,必须将语音讯号转变成网络封包,若在传送过程中想中断通话,系统就必须传送特定讯号来中断联机,因此黑客可以透过不断传送中断讯号封包的方式攻击 VoIP,使其通话质量大受影响,如果攻击量够大,还可能造成断话的情形,因此,VoIP 网络对于 DoS 攻击特别敏感。
    3)非授权访问
    非授权访问攻击并不是指某种类型的攻击,它指的是当今网络中发生的多数攻击。如果某人想攻击 Telnet登录,他/她必须首先获得系统上的Telnet提示。连接到Telnet端口上之后,将显示以下信息:“只有经过授权才能使用这种资源。”如 果黑客继续试图接入,他/她的操作将变成“非授权操作”。这些攻击可以从网络内部和外部发起。黑客可能以不良企图对语音服务进行非授权访问。
    4)垃圾语音
    垃圾语音(Spam over Internet Telephony;SPIT)非常可能成为 VoIP 应用上最严重的安全问题,其严重程度甚至可与垃圾邮件相提并论。攻击者伪造一个虚假的呼叫,发送给每一位用户,因为大多数VoIP 系统都被设计成同时处理很多链接请求,这也会使系统过载从而完全瘫痪。还有一些非常狡诈阴险的攻击方式,比如伪造一个假的数字声音消息,甚至连专业的声音 分析器都识别不出来。此外,可能会在真正的通话中插入混淆词汇,从而彻底改变了通话的内容和上下文。另外一种攻击会使用 sniffer 程序,在用户的 PC 上或 VoIP 提供方服务器上窃取 VoIP 的通话内容,当通话结束时,存下来的.wav 等声音文件就会被发送给入侵者。一旦企业开始全面投入 VoIP 的外部通讯,垃圾语音(SPIT) 将成为 VoIP 安全性的最大问题来源,因为 VoIP 是透过公开的网际网络进行端对端通讯,所以 IP 地址将被公开,换句话说,黑客可以轻易查找到受话者的 IP 地址,并展开巨量的垃圾语音攻击。

4  VoIP技术应用中存在问题的解决方法

    VoIP 是有自身的不足的,它兼有IP网络和话音网络的一些弱点。IP 分组 IP 网络的性能无法达到电路交换网的水平,其网络安全脆弱性加大了宽带电话的安全风险。面对这些不足也有其相应的解决方法。

4.1  延时与抖动的解决方法

    经过研究分析发现,当延时在150ms以下时,通话双方几乎不能感觉到延时的存在,而当延时在400ms以下时,也是用户能够接受的,当延时进一步增大后,达到800ms以上,正常的通话就无法进行。
    1)延时的解决方法
    从表1中可以发现队列延时最小,几乎可以忽略;而编码的延时是由算法决定的不可能减小;在骨干网络 中的传输延时也是不可改善的。我们可能对链路层延时或抖动缓冲(Jitter Buffer)延时进行改善。如果我们在使用低速串行链路进行传输,那么可以采用IP/UDP/RTP头部压缩策略来减小链路层报文大小,从而降低链路层 延时。
    2)抖动的解决方法
在接收方收到语音帧报文由于拥塞及多个路由设备转发后往往会产生不均匀的延时。这时,我们可以在接收方设置一个Jitter Buffer,将收到的报文在Jitter Buffer中排序,当Jitter Buffer 中的连续报文达到一定长度时才开始回放报文中包含的语音帧。但是考虑到Jitter Buffer造成的延时,我们需要根据统计到的语音传输情况动态的调整Jitter Buffer的深度。采用一个良好的Jitter Buffer 算法可在尽可能小的延时下,向用户提供尽可能平滑的语音流。

4.2  丢包的解决方法

    由于语音编码方式的采样率往往是非常高的,通常为8000Hz,因此对连续的数个语音帧来说,它们之间的差异是非常小的。所以我们无法从Jitter Buffer中继续取得语音帧时,可以将刚处理过的语音帧重用一次,当然如果无限制地重用一定会造成语音失真。对于G.729或G723.1来说,我们设 定的重用次数是2次。丢包还可以通过QoS、资源预留等策略来改善。

4.3  降低带宽占用的解决方法

    可用以下3种策略解决以上问题。
4.3.1压缩实时传输协议(CRTP )
    如果RTP报文在采用CRTP后,可以将报文头部压缩至PPP头部的6字节,CRTP头部2字节,这样带宽利用率提高到约71%。目前CRTP使用于2M 以下的串行链路,主要在FR、HDLC、PPP协议上使用。假设采用G.723.1 5.3k编码方式,在不使用CRTP的情况下,带宽占用在18K左右,而使用CRTP后可以降低到低于9K。
4.3.2压缩编码方式
    可以使用一系列的低带宽压缩编码方式代替脉冲编码模式(PCM),如表2所示。
表2  不同压缩编码方式所占用的带宽
编码方式
带宽(kbps)
G726ADPCM
32
G728LD-CELP  
16
G729CS-ACELP
8
G729aCS-ACELP
8
G723.1MP-MLQ 
6.3
G723.1ACELP  
5.3
4.3.3 静音压缩
    通过各种语音编码方式提供的静音压缩算法,可以达到大大降低带宽占用的目的。VAD的原理就是设置一个阀值,当算法检测到采样的音量在阀值以下时即认为是 静音,不产生语音帧。由于一般的通话过程往往均为交互的,即一方说话时另一方处于收听状态,如果采用了VAD技术,我们可以将带宽占用率降低到原来的 50%以下。
4.3.4 带宽保证的解决方法
    1)资源预留
    RFC2205定义了RSVP协议,这个协议为主机上的上层应用提供了一种机制来为指定的应用数据流向IP网络申请指定的服务质量,而实际的流控制策略是 由下层的队列QoS策略来实现的。RSVP是一个端到端的协议,但是,在流经过的路径上的所有路由器均需要支持RSVP协议。
    2)QoS策略
为了解决带宽保证问题我们可以通过对QoS排队策略进行优化,保证VoIP业务的正常进行,可以根据以下的区分策略在链路层设置多个队列,以不同的队列算法区分。
    ● 根据服务区分:为特定的协议在指定端口上保留一定的带宽。比如可以为RTP协议、FTP协议、Telnet协议分别预留一定的带宽,这时,算法就会尽力确保这个设置。我们可使用CQ(Custom Queue)算法来实现。
    ● 根据优先级区分:我们还可以为指定性的报文流设定优先级,然后队列算法确保在高优先级的报文队列为空后才开始发送低优先级报文。我们使用PQ(Priority Queue)算法来实现。
    ● 流量均衡:也可以由链路根据报文特征将它划分为多个队列,同时确保每个队列中的报文以均等的几率得到发送(每个队列所占带宽均等)。我们使用 WFQ(Qeighted Fair Queue)算法来实现。这种算法是最适合VoIP应用的,可以在即使拥塞的情况下保证VoIP应用所需的带宽,从链路层上有力的支持RSVP协议在 VoIP应用中的使用。
    ● 拥塞预防:使用WRED(Weighting Random Early Detection)算法。这种算法在预测到拥塞发生的可能性时,主动从队列中丢弃一些报文来避免拥塞,算法的一个典型用途是用来处理TCP报文传输的拥塞预防。
4.3.5  降低最大传输单元(MTU)值
    在一定条件下,可以动态的设定某个物理端口上的MTU值,这样,就不可能有大报文通过。例如:可将MTU设定为576字节,则有FTP报文通过时延时将被降到不到300ms,在这样的延时的通路上,语音传输的质量还是可以被用户接受的。
4.3.6  VoIP的安全问题解决方法
    (1) 对VoIP 数据包进行加密和认证流量可以有效的防止通话受到窃听和截取。IETF RFC 2401 定义的安全性IP( IPSec) 是常用的安全协议,它提供了加密和认证功能,保护分组数据包免遭窃听和篡改,可以有效抵御网络攻击,为IP 网络通信提供透明的安全服务。为了加解密,终端用户点之间必须建立安全联盟(SA)并交换密钥。
    (2)一般来说,防火墙、加密是信息安全最行之有效的方法。虚拟专用网(VPN) 技术则综合了这两种方法的优点,可以在IP 网和VoIP 网关之间加上网关型VPN 或在IP 网和移动主机间加上主机型VPN来增强VoIP 的安全性。VPN 是利用开放性网络作为信息传输的媒体,通过加密、认证、封装,以及密钥交换技术在公网上开辟一条隧道,保证合法用户之间的安全通信。利用VPN 的安全机制来保证VoIP 的安全,不但可为用户提供安全的语音服务,而且可充分利用企业现有的网络设施,降低企业的营运成本。
    (3)将VoIP 网络和数据传输网络隔离。这里所说的隔离并不是指物理上的隔离,而是指将所有的VoIP 终端放到一个独立的虚拟局域网(VLAN)中,同时限制无关的PC 终端进入该网段。把VoIP 终端的IP 地址与其媒体访问控制(MAC)地址绑定,同时配合VLAN划分,把IP语音设备和数据网从逻辑上隔离,从而起到隔离病毒和防止攻击的目的。配合数据网络 的QoS 设定,将有助于保护VoIP语音系统,提高语音质量。

5  总结

    从VoIP 未来的发展角度出发,出于节省成本的考虑,固网和移动网络运营商都将会逐步地在自己的核心网络上通过IP 提供话音业务,并将IP 化从核心网向边缘网推进。目前运营商用软交换替代电路交换机的趋势已经非常明显,VoIP 向网络融合的远景迈出了一大步。虽然VoIP技术在应用中存在一些问题,但是伴随着技术的不断进步,存在的诸多问题都会迎刃而解。VoIP多媒体业务将会 得到快速的发展和广泛的利用,我们有理由相信无论是在国外还是在国内,作为给用户提供的一种选择,VoIP电话业务尤其是多媒体业务必将得到迅猛发展。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/22855.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信