首 页IT 新闻硬件评测微机原理电脑知识IT 历史软件下载科技视频系统进程查询Windows vista论坛

您现在的位置: itfind >> 微机原理 >> 微机原理正文

 

网络电话音质与改善方法

作者:佚名    微机原理来源:本站原创    点击数:    更新时间:2008-2-20

 因特网的普及让全球连结的效率增加、成本降低,进而带来透过因特网传送声音的实现。由于使用因特网的成本非常低,因而网络电话的成本也能大幅降低,远低于长途电话、国际电话以及行动电话费率。

 

然而由于网络电话是透过因特网来传送封包,因此会发生的封包迟延、掉包等问题。一般网页呈现、电子邮件以及档案传输,都不必具有实时传输的需求。但是电话要求的却是实时系统,只要双方通话的延迟超过400ms(0.4秒),就会造成通话上的严重干扰。

 

此外,数据传输如果发生封包遗失,可以透过重传的方式来确保数据的完整性,但是声音转换成数据封包传送出去,如果封包遗失,基于实时的要求,重传是不可能也不可行的作法。封包遗失率超过5%会造成杂音、断话等现象。另外,封包延迟则会带来回音与颤音现象。

 

影响网络电话质量的因素

 

一、语音压缩与解压缩

 

语音编码压缩与解压缩Codec(Code and Decode)能影响需要的频宽大小与声音质量,尤其是对于封包遗失率的处理能力。传统交换机的Codec为G.711,频宽为64Kbps,如果加上OverHead,大约为108Kbps,但是因特网目前尚无法大量使用超过100Kpbs的应用,频宽取得的费用虽然比起10年前大幅降低,但是这种频宽消耗,就因特网现况而言,仍然稍微「奢侈」了些。

 

早期网络电话采用的Codecs以G.723、G.726、G.729以及GSM最常见,目前iLBC有愈来愈普及的现象,主要原因是iLBC为开放原始码形式,G.723与G.729需要付License费用。G.723虽然占用频宽小(5~6Kbps左右),但是加上Overhead时超过30Kbps。iLBC需要的CPU处理能力与G.729约略相当,封包小于G.729,且对于封包遗失率的处理能力能超过20%,G.729则只能应付不到10%的封包遗失率。

 

二、取样频率与可用频宽

 

取样频率的不同,会影响声音转换成数据封包,再转换成声音的真实性。传统交换机系统受限于先前的技术,只能使用窄频的8KHz(每秒8000Hz)技术来进行声音取样,这种取样方式的目的是尽量让声音能够经过转换之后,能够顺利让受话端接听。

 

目前使用的取样频率,渐渐开始采用16KHz(每秒16000Hz)技术来进行声音取样,宽带取样的好处,除了让受话端声得懂发话端的声音,还要求将发话端的声音以立体音的方式,传到受话端。

 

网络电话顾名思义是使用网络来传送电话,因此网络频宽会严重影响声音的效果与质量。不同Codec使用的频宽各不相同。计算频宽需求除了要考虑Codec所需要的频宽之外,也必须将封包头与封包尾加入一齐计算。有些Codec本身占用的频宽不大,但是加算封包头尾的成本(OverHead)之后,需要频宽反而大幅增加。

 

三、迟延

 

尽管封包在铜缆与光纤中能以非常快的速度传送,但不同网络设备的介接与转换,都会造成封包传递的迟延,这种因为物质特性所造成的迟延称为物理迟延。

 

TCP/IP架构让封包能透过不同的路由,从发送端抵达接收端,不同的封包达到接收端的时间可能并不相同,因此到达接收端之后,必须将封包进行排列,这样也会造成一定时间的迟延,这种迟延称为网络迟延。

 

由于网络架构与设计的目的会让封包在传送过程产生各种不同的迟延,封包迟延会造成回音与颤音。当封包迟延超过40ms(0.04秒)时,人耳就可以分辨出有回音出现。好的网络环境是确保封包迟延低于150ms(0.15秒)。人耳能接受的声音迟延大约是150ms到400ms(0.4秒)。超过400ms的迟延会造成声音质量恶劣而无法接听。

 

四、封包遗失率

 

在因特网环境上,可能因为特定网络段的拥塞、设备无法负荷过大的流量等因素,造成封包遗失,在不同介质连接或不同网络标准或协议转换时,也可能造成封包遗失。一般因特网上的服务是使用TCP协议,当发生封包遗失的情形发生时,透过协商(Hand Shaking)的方式,接收端会要求发送端传送丢失的封包,甚至全部重新传送。但是语音有实时性的要求,所以通常采用发送后不理的UDP协议(更正确地说是使用RTP协议),因此当封包遗失的情形严重时,网络电话就会出现杂音、声音消失,甚至于通话中断的情形。

 

早期网络电话使用的Codec(s),对于封包遗失率的忍受能力欠佳,超过5%的封包遗失率将使MOS(Mean Opinion Score)值低于3.0而无法提供「可营运质量」的声音。一般来说,传统电话的MOS约在4.1左右,低于MOS 3.0代表语音质量欠佳,无法用来作为网络电话营运之用。新的Codec(s)技术会透过对于语音编码技术的处理来处理封包遗失率,这些算法能处理超过10%甚至于高达20%的封包遗失率,MOS仍然保持3.0以上的声音质量。

 

改善网络电话音质的方法

 

一、颤音缓冲(Jitter Buffer)

 

由于颤音(jitter)的发生是由于网络中封包传送的速度忽快忽慢产生的抖动、令人觉得不舒服的声音。解决颤音的作法,通常是在设备接受端使用若干内存当做缓冲区,可以收集忽快忽慢到达的封包,然后加以排序,以改善颤音现象。由于声音的特定是实时性,颤音处理必须在有限的时间条件下完成,因此太大的缓冲区不但可能浪费内存,同时也会让语音封包的迟延反而变得更为严重。反之,如果颤音缓冲区太小,会造成有些封包被丢弃,造成封包遗失率增加。因此,颤音缓冲区的大小应该从实际操作端加以调校,找出最适合的大小。

 

二、服务保证(QoS)

 

QoS作法是针对不同的封包或协议,贴上标签(Tag)进行处理,让带特定标签的封包或协议能被优先处理并加以传送。QoS的算法有数十种以上,有些QoS能针对不同的封包或协议,使用多个不同优先等级队列(Queue)的方式,保证让后到但是优先权较高的封包或协议优先处理传送。此外并可针对可用频宽加以切割分级,不同的封包或协议透过不同的频宽传送。更复杂的算法设计还能使用「借用频宽」的方式,来加速封包的传送。有些算法甚至于针对优先等级来决定频宽借用问题,高优先等级的封包或协议可以借用低优先等级的频宽。

 

QoS并非改善网络电话音质的万灵丹,当网络环境不良时,封包遗失率的增加将会抵消QoS带来的效益。此外,由封包发送端到接收端,所有的节点(Hup)都必须支持同样的QoS机制,一旦其中任何一个节点不支持QoS,将使封包混合而减低封包分类、传送的效果。

 

三、改善网络环境

 

改善网络电话音质最直接有效的方式,就是改善网络环境,透过增加接取设备的频宽,将使电话音质能得到具体的改善。例如将频宽由64Kbps增加到256Kbps。必须强调的是Codec(s)占用频宽的大小,应该考虑封包成本(Overhead),举例来说G.711虽然只站64Kbps,但是把 Overhead一齐加总的结果,所需要的频宽超过100Kbps。改善往网络环境意味着必须增加投资,可能包括更换设备与增加频宽。

 

改善网络环境还是会有坏消息:由于因特网跨越范围可能很广,众多连接设备可能有一个到数个会发生问题,这时候会使封包遗失率瞬间提高,甚至于超过10%以上,这种现象对于浏览网页与收发电子邮件时,没有什么感觉。但是,对于需要即使的语音封包却可能造成要命的影响。

 

四、选择好的Codec(s)

 

改善网络电话音质最终极的方法是选择好的Codec(s),使用好的Codec(s)能对抗瞬间爆发的封包遗失率。建议在窄频环境使用iLBC,宽带环境使用ISAC或Enhence G.711(简称EG.711),这些Codec(s)在封包遗失率超过20%的情形下,MOS值仍然超过3.0的优异效果,这个优点对于网络环境不佳的国家或地区特别有吸引力。当然,前提是频宽还是要满足这些Codecs的需求,iLBC建议至少30Kbps以上,EG.711最少应该有80Kbps。

 

结论

 

传统网络与因特网的迷思是透过QoS的技术,保证特殊的服务与封包能够优先处理与传送。但是如果网络环境不佳,优先传送的封包发生遗失(俗称掉包)的情形,网络电话的音质依旧会发生不稳定或不良的情形。因此要彻底改善网络电话音质,应该由改善网络环境着手,使用较大的频宽,尽量以Cable取代无线环境。当网络环境无法改善或短期无法改善时,选择好的Codec能改善的效果,将会远优于使用传统QoS的效果。

作者:康仁财/普罗通信股份有限公司技术部经理

   
相关文章最新文章
没有相关微机原理
 

 
 
点击排行
 
Copyright © 2007 ITFind.com.cn IT先锋网版权所有粤ICP备06075376号