IP电话是指在IP网上通过TCP/IP协议实时传送语音信息的应用。比起传统的模拟电话来,IP电话是将语音信号在传送之前先进行数字量化处理,并压缩、打包转换成8kbit/s或更小带宽的数据流,然后再送到网络上进行传送。而传统的模拟电话是以纯粹的音频信号在线路上进行传送。与传统电话不仅存在着较大的资费差,而且存在着明显的技术差异,我们可以从简单物理模型来比较一下两者之间的编码差异,从编码差异上分析两者网路利用率。 从技术角度分析,IP-phone技术一是采用了压缩编码及基于TCP/IP的包交换技术,二是利用了具有统计复用的IP数据网,三是充分利用了现有的光纤传输技术,因此在资源占用率上来讲明显高于仅仅采用PCM语音编码技术的传统模拟交换技术。在IP-phone刚刚面世不久,人们从H.323系列的语音编码标准中,如G.723.1编解码器(输出码流速率为6.3kbit/s或5.3kbit/s)或者G.729编解码器(速率为8kbit/s)推出结论,IP电话与基于64kbit/s的PCM交换相比,编码处理后利用率提高了8倍甚至更高。其实,这种结论是不确切的。 我们知道,IP电话与传统电话最大的不同在于语音模拟信息以分组数据的形式在数据网中传输,因此,在语音终端和数据传输网络之间需要一个信源编码器(通常叫网关),将连续的语音模拟信号分割成一定长度的多个语音数据分组,并对其进行压缩处理,减小信源语音消息的多余度,降低传输码率,提高传输消息的有效性。又因为采用基于TCP/IP协议的包交换技术,所以在通过传输信道传送前,将压缩后得到的数据封装到IP数据包中实现在IP交换网的传输,由于网络上实际传送的码流并不是编码后输出净菏码流(语音包)如5.3kbit/s(G.723.1)或8kbit/s(G.729),而是经过封装后的码流。它的一般封装形式为:在语音包前加上IP包头、UDP包头和RTP包头。IP包头为20字节,UDP包头为8字节,RTP包头12字节,总包头长度为40字节。通过增加这部分多余字节,达到寻址、提高可靠性等功能。封装的效率取决于一个RTP包中打多少数量的语音包。RTP包头所打的语音包越多,封装效率就越高,单位流量也就越小,电路利用率就越高,但同时,由于RTP包头所携带的语音包个数增加,单个IP数据包的传输时延在一个话音来回的历时加长,全网时延就加大,给消费者最直接的感觉就是“对方反应迟钝”,反之亦然。因此,在设计系统时,运营商需要在提高电路利用率和减少时延中做出选择,两者是难以两全的。 一般地,在全程时延(包括编码时延、打包时延、处理时延、网络时延、缓冲排队时延等)中分配给编码的时延为30ms左右,这种时延要求也是普通电信业务的时延最低要求。要满足这个时延要求,取决于一个RTP的包打进多少压缩后的语音包。IP电话的实际码流可估算如下:实际传送码流=压缩后的语音包/封装效率。封装效率的估算公式为: 封装效率=(压缩后的语音包× n × 帧长/ 8)/[(压缩后的语音包× n× 帧长/ 8 )+40] 。n表示打进n个语音包。以G.729信源编码为例,如一个RTP包打进一个语音包,则实际传送码流为40kbit/s,时延约为 10 ms;如打两个语音包,则实际传送码流为24kbit/s,时延约为 20 ms;如打四个语音包,实际传送码流为16kbit/s,时延为40ms。为保证编码打包的时延,若将缺省语音包的数量定为两个,实际传送码流即为24kbit/s,而不是8kbit/s。因此对于语音业务这类实时性要求非常高的业务,要保证语音的质量,根据ITU-T标准语音的全程往返时延应当控制在450ms为宜,编码打包后形成的单位码流通常是在20kbit/s。从这一点可以看出带宽压缩与普通电话相比仅为3倍左右,而不是8倍或更多。 当然,我们采用不同的信源编码器和采用不同的封装形式所产生的实际传送码流差异是很大的。我们只有通过信源编码和信道编码来提高信道传输消息的有效性和可靠性。我们分别从信源编码和信道编码两方面来改善IP-phone的传输效率,以及时下谈得较多的QoS问题。 采用某种语音编码方式可以提高编码效率,但没有提高整个网络的传输效率,仅仅是将大量的网络带宽节省下来。从目前中国电信的发展趋势来讲,随着传输技术的不断提高,传输速率越来越快,带宽也将越来越高,届时网络带宽资源可能无须那样节约,这种压缩编码方式是否适用还很难说,但从目前使用来看,这种技术的运用应该是有其优越性。 在消费者使用电话进行交流时,有一个较为突出的特点,即交互式。当对端说话时,本端一般保持沉默;而本端说话时,对端保持沉默。而语音冲突的现象并不多见,正如图1所示。 目前所采用的IP语音编码压缩技术是ITU-T于1995年11月批准的被称为G.729的新的语音压缩标准,正如前面所说,G.729标准采用的算法,可以仅用8kbit/s带宽传输话音,而话音质量与32kbit/sADPCM相同。而这种语音编码技术并没有充分利用图1的这种交互式,也就是说编码时将许多无用的空白消息进行了编码。从某些资料显示:大量的研究表明,在一个全双工电话交谈中,只有36%-40%的信号是有效的。这一数据与图二的表示有异曲同工之意。在对对端语音进行编码时,开始由于没有语音信号,所以不进行语音编码,默认值为零,当x1时刻到来时,检测到语音信号,此时再进行采样、量化、编码,当x2时刻到来时,检测到语音信号的渐渐衰落而进入抑制编码阶段,即编码间隔进行适当的调整,当语音信号消失时,编码间隔趋于无穷大,从而提高了编码效率。 从图1的语音曲线来看,似乎是没有规律的。但我们知道中国语言中词、惯用语较多,单个的字很少,尤其是口语的交流,有很多连续的词句。正如计算机汉字编码一样,常用词汇只有5000多条。我们在编码时充分利用这一规律,可以在语音识别的基础上进行语音预编码。我们可以将语音看作一个马尔可夫信源。例如:我们在接电话时,习惯用语是:“喂,你好!找哪位?”如果我们在编码中已经将这段话进行了预编码,当收到语音信号“喂”时,根据转移概率P(你!喂)发出“你”,再根据转移概率P(好!你)发出“好”字等等,这就好比,你还没说,我这儿就预测到你下面要说的话。这将大大缓解现有IP-phone语音延迟大的现象。 我们再从信道编码入手。在通信信道传输中包含了很多技术,也经过了许多传输信道,因此,片面地去改变现有的信道编码技术或者笼统地去改变某一信道编码技术来追求资源利用率是不现实的。因为信道编码是在信源编码的基础上,有目的的增加某些码元,使之具有纠错或检错功能,在IP通信中,就是在信源编码的基础上,在语音包前封装某些信息,例如寻址信息,使之能有目的的进行传输。由于IP是基于TCP/IP协议的包交换技术,因此它在进行语音包交换时,每一个语音包前必须加上IP包头、UDP包头和RTP包头,这些包头如果采用某些压缩技术是可以达到提高网路利用率的目的,但随之产生的误码也将会增加。因此,从个人观点出发,从信道编码角度来提高网路利用率是不可取的。
IP技术的发展是日新月异的,尤其是信源编码技术的更新,对IP-phone 来讲是具有重大意义的,可以想象,将来IP-phone无论从质量还是效率来讲应该远远超过普通电话。 |