VoIP基本原理
VoIP是通过Internet等互联网络传递语音信息的,主要包括终端设备、网关、网守和网络管理等部分。网关负责提供IP网络和传统的PSTN
接口。
VoIP的基本原理:通过语音压缩算法对语音数据进行压缩编码处理,然后将语音数据按照TCP/IP
标准打包,经过IP
网络把数据包发送到接收端,之后将语音数据包串起来,经过解码解压之后,恢复成原来的语音信号,从而达到利用互联网传送语音的目的。与之相似的有公共交换电话网络(Public Swithched Telephone Network, PSTN
):这是一种日常生活中经常使用的电话网。由于PSTN是一种电路交换的方式,所以一条通路自建立直至释放,其全部带宽仅能被通路两端的设备使用,因此带宽利用率极低。
VoIP的核心与关键设备是IP网关。网关具有路由管理功能,它把各地区电话区号映射为相应的地区网关IP地址。这些信息存放在一个数据库中,数据接续处理软件将完成呼叫处理、数字语音打包、路由管理等功能。在用户拨打长途电话时,网关根据电话区号数据库资料,确定相应网关的IP地址,并将此IP地址加入IP数据包中,同时选择最佳路由以减少传输时延,IP数据包经Internet到达目的地的网关,在一些Internet尚未延伸到或暂时未设立网关的地区,可设置路由,由最近的网关经过长途电话网转接,实现通信业务。
为了在一个IP网络上传输语音信号,对网络有一些最低要求。最简单形式的网络由两个或多个具有VoIP功能的设备组成,这些设备通过一个IP网络连接。VoIP传输过程:
-
语音->数据转换
语音信号本身是模拟信号,如果通过IP传输语音,不管是实时应用还是非实时应用,首先都需要对语音信号进行模拟数据转换,也就是对模拟信号进行8位或16位的量化,然后送入缓冲存储区中,缓冲区大小可以根据延迟和编码的要求选择,低比特率的编码器通常采取以帧为单位进行编码,典型帧长为10ms~30ms。考虑传输过程中的代价,语音包通常由60ms、120ms和240ms的语音数据组成。数字化可以使用各种语音编码方案来实现,目前采用的语音编码标准有
ITU-T G. 711、G. 729
等。发送端和接收端的语音编码器和语音编码器必须实现相同的算法,这样接收端才能恢复原始的语音信号。 -
原始数据->IP转换
语音数据数字编码之后,下一步就是对语音包以特定的帧长进行压缩编码。大部分的编码器都有特定帧长,若一个编码器使用15ms的帧,则把第1步中的60ms的包分成4帧,并按照顺序进行编码,如果采样率8kHz,则每帧共
15ms*8kHz=120
个采样点。编码后将4个数据包合成一个压缩语音包送入网络处理器,网络处理器为语音添加包头、时序和其它信息通过互联网传送到另一端。IP网络不像电路交换网络,其不形成连接,它要求把数据放在变长的数据报或分组中,每个数据报附带寻址和控制信息,并通过网络发送,一站一站转发到目的地。 -
传送
在这个通道中,全部网络被看成一个整体,持续不断地从输入端接收语音包,然后在一定时间(t)内将其传送到网络输出端。时间(t)可以在某个范围内变化,反映了网络传输中的抖动。网络中的中间节点检查每个IP数据附带的寻址信息,并使用这个信息把该数据报转发到目的地路径上的下一站。
-
IP包->数据转换
目的地VoIP设备接收这个IP数据报并开始处理,并提供一个变长缓冲区用来调节网络产生的抖动。小的缓冲区延迟较小,但不能容纳更大的抖动。
-
数字信号->模拟语音
播放驱动器将缓冲器中的语音样本点送入声卡,通过扬声器按照预定的频率播放。