IP上的话音

来自EEWiki.

跳转到: 导航, 搜索

VoIP是Voice over Internet Protocol的缩写,指的是将模拟的声音讯号经过压缩与封包之后,以数据封包的形式在IP 网络的环境进行语音讯号的传输,通俗来说也就是互联网电话、网络电话或者简称IP电话的意思。

VoIP的基本原理

通过语音的压缩算法对语音数据编码进行压缩处理,然后把这些语音数据按 TCP/IP 标准进行打包,经过 IP 网络把数据包送至接收地,再把这些语音数据包串起来,经过解压处理后,恢复成原来的语音信号,从而达到由互联网传送语音的目的。 IP 电话的核心与关键设备是 IP 网关,它把各地区电话区号映射为相应的地区网关 IP 地址。这些信息存放在一个数据库中,数据接续处理软件将完成呼叫处理、数字语音打包、路由管理等功能。

在用户拨打长途电话时,网关根据电话区号数据库资料,确定相应网关的 IP 地址,并将此 IP 地址加入 IP 数据包中,同时选择最佳路由,以减少传输时延, IP 数据包经 Internet 到达目的地的网关。在一些 Internet 尚未延伸到或暂时未设立网关的地区,可设置路由,由最近的网关通过长途电话网转接,实现通信业务。 VoIP的基本传输过程

传统的电话网是以电路交换方式传输语音,所要求的传输宽带为64kbit/s。而所谓的VoIP是以IP分组交换网络为传输平台,对模拟的语音信号进行压缩、打包等一系列的特殊处理,使之可以采用无连接的UDP协议进行传输。

为了在一个IP网络上传输语音信号,要求几个元素和功能。最简单形式的网络由两个或多个具有VoIP功能的设备组成,这一设备通过一个IP网络连接。VoIP模型的基本结构图如图1所示。从图中可以发现VoIP设备是如何把语音信号转换为IP数据流,并把这些数据流转发到IP目的地,IP目的地又把它们转换回到语音信号。两者之音的网络必须支持IP传输,且可以是IP路由器和网络链路的任意组合。因此可以简单地将VoIP的传输过程分为下列几个阶段。

image:bk071051_1.jpg

图1 VoIP 模型的基本结构图

(1) 语音-数据转换

语音信号是模拟波形,通过IP方式来传输语音,不管是实时应用业务还是非实时应用业务,道貌岸首先要对语音信号进行模拟数据转换,也就是对模拟语音信号进行8位或6位的量化,然后送入到缓冲存储区中,缓冲器的大小可以根据延迟和编码的要求选择。许多低比特率的编码器是采取以帧为单位进行编码。典型帧长为10~30ms。考虑传输过程中的代价,语间包通常由60、120或240ms的语音数据组成。数字化可以使用各种语音编码方案来实现,目前采用的语音编码标准主要有ITU-T G.711。源和目的地的语音编码器必须实现相同的算法,这样目的地的语音设备帮可以还原模拟语音信号。

(2)原数据到IP转换

一旦语音信号进行数字编码,下一步就是对语音包以特定的帧长进行压缩编码。大部份的编码器都有特定的帧长,若一个编码器使用15ms的帧,则把从第一来的60ms的包分成4帧,并按顺序进行编码。每个帧合120个语音样点(抽样率为8kHz)。编码后,将4个压缩的帧合成一个压缩的语音包送入网络处理器。网络处理器为语音添加包头、时标和其它信息后通过网络传送到另一端点。语音网络简单地建立通信端点之间的物理连接(一条线路),并在端点之间传输编码的信号。IP网络不像电路交换网络,它不形成连接,它要求把数据放在可变长的数据报或分组中,然后给每个数据报附带寻址和控制信息,并通过网络发送,一站一站地转发到目的地。

(3)传送 在这个通道中,全部网络被看成一个从输入端接收语音包,然后在一定时间(t)内将其传送到网络输出端。t可以在某全范围内变化,反映了网络传输中的抖动。网络中的同间节点检查每个IP数据附带的寻址信息,并使用这个信息把该数据报转发到目的地路径上的下一站。网络链路可以是支持IP数据流的任何拓结构或访问方法。

(4)IP包-数据的转换

目的地VoIP设备接收这个IP数据并开始处理。网络级提供一个可变长度的缓冲器,用来调节网络产生的抖动。该缓冲器可容纳许多语音包,用户可以选择缓冲器的大小。小的缓冲器产生延迟较小,但不能调节大的抖动。其次,解码器将经编码的语音包解压缩后产生新的语音包,这个模块也可以按帧进行操作,完全和解码器的长度相同。若帧长度为15ms,,是60ms的语音包被分成4帧,然后它们被解码还原成60ms的语音数据流送入解码缓冲器。在数据报的处理过程中,去掉寻址和控制信息,保留原始的原数据,然后把这个原数据提供给解码器。

(5)数字语音转换为模拟语音

播放驱动器将缓冲器中的语音样点(480个)取出送入声卡,通过扬声器按预定的频率(例如8kHz)播出。 简而言之,语音信号在IP网络上的传送要经过从模拟信号到数字信号的转换、数字语音封装成IP分组、IP分组通过网络的传送、IP分组的解包和数字语音还原到模拟信号等过程。整个过程如图2-19所示。

image:bk071051_2.jpg

图2 语音信号在IP网络上的传送过程示意图

VoIP的安全性

随着 IP 语音(VoIP)技术在全球电信市场的不断普及,对服务供应商、设备制造商以及最终用户而言,性能改善、成本降低以及功能支持使VoIP 成为一种极富吸引力的事物。 由于人们对 VoIP 的兴趣日益增加,语音通信的安全性有可能发展成为 VoIP 解决方案的一项关键要求。基于分组的通信对安全风险尤其脆弱,这些风险包括:数据包监听语音“窃听”、伪造网络ID的未付费服务使用以及操纵数据包造成的服务中断等。

既然PSTN(公共交换电话网络)语音呼叫通常都不安全,那么VoIP呼叫真的还有必要具备安全性吗?答案有两重。首先,IP网络的分组性质使其比PSTN更易受到安全威胁。就当前为数据网络提供服务的技术而言,在数据包网络上刺探语音信息比物理刺探电路交换网络要更为容易。此外,就当前社会政治条件提出的新型安全顾虑而言,在我们的语音网络中集成安全特性对服务供应商和最终用户都有利。

从服务供应商的角度看,实施安全保障措施可避免各种破坏性行为,这些行为可能导致盗窃服务以及损失大笔收入等。通过访问网络数据库及 IP 地址,可以获得伪造的服务注册,无需付费就可使用服务,或者其费用会转嫁到另一实际客户头上。此外,电话终端设备的实施和配置可能会使其好像有效的终端设备的克隆一样,能够在不为人知的情况下免费而有效地访问服务。如果网络黑客能够成功访问网络设备、修改数据库或复制设备的话,那么他们就会成为威胁,导致语音网络的关闭或“拥堵”,并控制语音网络。最后,诸如会话启动协议(SIP)、H.323 以及媒体网关控制协议(MGCP)等分组网络协议可通过访问数据包进行操纵,从而修改协议信息,导致数据包目的地或呼叫连接的变化。

其他安全威胁会对最终用户构成隐私威胁。黑客只需通过简单的分组网络“窃听”,就能“听到”语音载体通道,或“看到”呼叫设置(信令)信息,从而获取详细的呼叫信息。如果用户的个人信息、行为及习惯被提取用于非法途径或破坏性行为,那么这就会导致个人信息被盗或名誉受损。终端电话设备克隆经过配置,通过上述网络协议操纵伪装成其他无辜用户,或“窃听”正在进行的语音和相关信号传送流量用于脱机分析,就能实现上述目的。

尽管上述安全威胁切实存在,但这并不意味着 VoIP 部署是完全脆弱的。我们可实施各种安全特性以解决上述难题。 互联网安全组件

安全的 VoIP 可利用大部分目前数据通信已有的安全性组件。当前互联网安全基础设施的关键功能之一就是传输数据的完整性。该组件既保证两实体之间的消息不被破坏,又确保接收方进行确认。与此类似的组件是对不可否认性的支持,即排斥数字签名消息(通过安全钥匙),从而避免收费。互联网安全的保密度可确保只有消息的接收方和传输方才能看到该消息的内容。安全组件集(security element suite)的认证功能可保证网络用户只有在身份得到满意确认后才能访问特定的网络。

根据最终用户或服务供应商对安全关心的程度不同,可要求多种不同级别的安全特性。一个共有特性就是语音有效负载自身的加密。另一安全级别则要求建立电话呼叫的信令消息必须加密。 IP安全工具包与相关标准

加密/解密算法及其相关密钥是解决消息机密性的常用工具。加密算法有很多种,算法中还有各种模式,密钥实施类型也各不相同,这就使可能的实施配置数目繁多。先进的加密标准 AES和三重数据加密标准(3DES)是两种常见的加密方案。消息摘译是使用密钥创建消息认证码(MAC)并提取预编码信息进行消息完整性及认证的算法。消息摘译5(MD5)和安全散列算法1(SHA-1)是两种用于认证的常见算法。公共密钥交换和密钥分配(如用于上述加密和认证方案)对整体安全系统至关重要。ITUx.509 标准定义了获得密钥数字签名的格式,这就为密钥认证提供了权限。

IETF 通过 IP 安全协议(IPsec)来解决互联网数据应用的安全性问题。该协议层的目的在于提供密码安全服务,可通过协议栈中立即运行于 IP 层之上的网络层安全性灵活地支持认证、完整性、访问控制和机密性的结合。IPSec 为传输控制协议(TCP)或Unigram数据协议(UDP)层及以上提供了安全性,它包括两个子协议:IPsec 封装安全有效负载(ESP)与IPsec认证报头(AH)。ESP 是上述二种协议中更常见的一个,它通过保证任何跟随在分组报头之后内容的安全性实现了认证、完整性、回放保护(replay protection)和机密性。AH 可实现认证、完整性和回放保护,但不具机密性。

除使用UDP之外,VoIP解决方案通常采用实时协议(RTP)传输电话有效负载,采用实时控制协议(RTCP)用于消息控制。安全RTP(SRTP)是当前IETF的一项草案,为RTP提供了安全配置文件(security profile),向数据包添加了机密性、消息认证及分组回放保护,专门解决了互联网上的电话技术应用问题。SRTP的目的在于只保证RTP 和RTCP流的安全性,而不提供完全的网络安全架构。SRTP使用RTP/RTCP报头信息与AES算法,得到代数方法上适用于RTP/RTCP有 效负载的密钥流。SRTP可调用基于散列的消息认证码(HMAC)——将SHA1 算法用于认证功能。

个人工具箱
导航
支持单位