VoIP解决方案及双处理器实现架构分析
2006-12-04    Debbie Greenstreet/Fred Zimmerman   
打印自: 安恒公司
地址: HTTP://vpopmail.anheng.com.cn/news/article.php?articleid=922
VoIP解决方案及双处理器实现架构分析

业界对VoIP技术日益增长的兴趣和投资正在改变VoIP的现有市场结构。像Linksys和摩托罗拉等制造商已经开发出了很多VoIP产品,并通过其强大的零售渠道出售,从而使这些产品得到了迅速普及,同时带来的价格压力迫使全球的服务提供商重新思考这样的问题,即当他们将建设重点从功能众多和利润可观的企业级应用转向住宅市场时如何正确地对待VoIP。

为了保持竞争优势,许多制造商已经认识到他们的产品能够支持的功能和特性将决定他们的成败。当然对更高语音质量的追求永无止境,不仅要克服直接影响QoS和可感知质量的WAN瓶颈,而且要提供比传统PSTN更高的质量。至少每个VoIP端口必须支持G.711 PCM语音编码以及一般采用T.38协议实现的传真服务。大多数宽带服务提供商为了满足那些使用较低带宽连接(如DSL lite)的用户需求,同样需要通过支持G.729ab等低比特率声码器(vocoder)来节省有限的带宽资源。然而,为了完成语音质量平衡,每个 VoIP通道必须有一个完整的、强大的语音处理系统,其中包含优秀的回波抵消、语音活动检测、自适应抖动缓存/语音播放、音调检测和产生、用于DTMF中继的RFC2833、各种主叫号码变量等功能,并支持呼叫转送和呼叫转移等附加服务。

但仅仅把重点放在核心语音功能上还不能形成具有竞争力的VoIP网络。制造商已经开始向同一产品中集成强大的语音网关和家庭路由器功能,从而形成了丰富多彩的各种最终产品配置。常用产品价格、一体化功能、先进性能、服务质量管理以及无经验的零售渠道等,来自这些方面的压力将使性能和成本期望值达到目前许多处理器无法承担的水平。

VoIP解决方案处理负荷

VoIP开发人员要想开发出能够保持最优成本,同时又能提供必要性能和功能的高效架构,必须充分理解提供合理语音质量和服务所需的所有处理功能。然而,每种功能都会占用CPU运算周期,如果不认真地实现,将降低器件性能,从而潜在地影响VoIP质量和总的数据吞吐量。

通常在宽带调制解调器或光纤/以太网连接背后存在一个住宅语音网关。除了为每个支持的语音通道提供语音处理功能外,网关还必须提供各种WAN到LAN的数据路由功能,包括服务质量(QoS)机制、防火墙保护、网络地址转换(NAT)、可选的无线LAN连接、认证和语音安全以及最近市场上出现的体验质量(QoE)。其中每个功能在保持和保护语音连接和质量中都起着重要的作用,不能正确地满足这些要求将直接导致可感知的语音质量下降。

1. QoS机制

QoS一直是VoIP部署中的关键因素。虽然大多数QoS机制采用某种形式的服务标签或队列来实现峰值业务条件下的数据包优先等级传输,但事实上QoS机制有很多种。从VoIP来看,网关的主要任务是确保语音包有比数据包更高的优先级,因为语音包对延迟特别敏感,如果它们延迟到达,语音质量将严重受损。另外,如果对延迟敏感的视频业务也是语音-视频-数据“三合一”家庭网络中的一部分,那就必须认真加以对待,确保视频业务不完全占据最高的优先级队列而影响到语音业务。

2. 防火墙保护

防火墙在保护VoIP设备免受未授权访问中扮演非常重要的角色,它通过阻止未授权业务进入LAN的机制来加强LAN和WAN之间的安全性。防火墙必须提供丰富的功能,包括防止未经许可的远程登录、SMTP会话劫持(session hijacking)、拒绝服务(DoS)攻击、电子邮件炸弹、黑客设计的宏、病毒、垃圾过滤等。根据不同的网络弱点,这些功能的部分覆盖仍然会使设备存在暴露或滥用的风险,因此任何不完全的功能覆盖都是不能接受的。

3. NAT技术

NAT技术用于将私有IP网络地址翻译成公用IP网络地址,从而有效地克服IPv4地址的容量限制问题。NAT技术可以将家庭网络中的多个设备(包括VoIP电话和PC)捆绑到单个地址,这些设备呈现给外部公用网络的只是单个IP地址。这样可以给VoIP网络带来更高的安全性,因为它可以隔离私有的LAN地址,防止外部的非法访问。NAT还能利用内部寻址机制方便LAN的管理,并且不会与公共IP寻址模型发生冲突。

4. 认证和语音安全

当VoIP通过WAN实现时,可靠的端到端语音连接可以不受网络类型或物理位置的约束。不幸的是,这样做同时会使LAN暴露在无数的安全威胁下,因为这是WAN固有的特性。例如在没有防火墙的情况下,VoIP网络上的一位用户可能会劫持另一位用户的接入服务,从而免费地使用前一位用户的语音网络服务。安全性对保护用户和服务提供商来说都很重要,只有安全可靠才能保证用户的隐私、呼叫的完整性,才能认证用户的真实身份,确保用户不会否认使用的服务或费用准确性,也才能保证语音连接的可靠性。基本安全特性由众多基础组件组成,如密钥生成、会话配置、密钥交换、单向或双向认证和加密/解密。所有这些功能都需要耗费大量处理器资源,因此用硬件实现比在CPU上用软件实现更高效。

5. 可选的无线LAN连接

假定语音网关直接连接LAN,那么实现无线LAN连接将是最便利的一种方式。随着VoIP设备不断向消费类销售渠道的渗透,这种无线连接显得特别重要,因为将无线接入和路由与语音处理功能集成在一起可以促使用户购买单个设备中多个盒子的功能。然而,引入无线接入将增加处理器通过802.11 堆栈在PC/笔记本电脑和宽带调制解调器之间路由无线数据包的负担,而且还要能够支持多种无线安全标准。

6. 体验质量

最近的网络测试和对VoIP服务的调查表明,多达20%的VoIP呼叫存在语音质量差的问题。如果不能从用户体验那里了解发生了什么事,那么也就无法确定导致质量差的根本原因,即无法采取正确的纠正措施。由于网络固有架构的原因,收集和报告正在运行的VoIP网络上的信息是非常复杂的一项任务。与电路交换网络不同的是,交换网络的智能很好地集中在中心局交换设备上,而IP网络的相当一部分智能却位于网络远端的用户驻地设备(CPE)中。对于希望成功提供VoIP服务的服务提供商来说,丰富的用户体验非常重要。这意味着每个住宅VoIP边缘设备必须提供(处理和提供)重要的VoIP服务质量度量、相应的统计和诊断信息,以主动帮助服务提供商进行故障根本原因分析和随后的实时缓解或解决,必须保持用户的体验质量。当然这意味着VoIP解决方案要提供一定程度的额外智能和实时处理性能。

 

通过处理器架构扩展IP语音解决方案

所有这些解决方案功能都会额外增加处理器的负担。为了成功实现提供可接受的语音质量和性能的VoIP设备,开发人员必须使用能够处理大量并发实时操作的架构。这样的系统至少需要处理4或5个并发数据流:WAN连接,一般是宽带接口;LAN接口,如单个PC连接,或3到5个端口的以太网连接;至少2个语音通道;当时可能在用也可能不在用的可选WLAN接口。

为了使单个芯片支持所有这些处理功能,开发人员往往采用以硬件形式集成了许多相关VoIP组件的系统级芯片(SoC)处理器。这种处理器通过合理组合集成组件来控制成本,包括以太网连接、TDM接口、存储器和基于硬件的特殊任务加速器。这些处理器必须能够正确处理数据路由和应用层功能,并使数据移动不成为过重的负担而导致瓶颈问题,从而影响对时间敏感的其它语音处理功能。

由于VoIP系统的分割处理特性,集成了RISC和DSP处理资源的双处理器方案可以提供最优的架构,用来最有效地实现一个可靠的VoIP系统所要求的众多组件。在专门设计处理这些任务的架构上实现每个任务可以降低系统复杂性,并缩短开发时间。

一般来说,在RISC处理上执行语音编码器的内核算法的指令数约是DSP上执行指令数的3倍,保守地估计周期数大体上至少相当于2倍。例如仅采用RISC架构的SoC要求处理器能够执行所有的VoIP组件,包括通话、网络协议和路由器功能以外的语音处理操作,还要处理来自执行错误架构上的某些组件导致的2倍以上的低效任务。这种处理器需要频率非常高的工作时钟,从而导致更高的成本和发热量。另外,需要特别注意对整个系统功能的规模调整,因为额外的处理容量成本非高,而且如果是最新推出的处理器甚至不可能实现。即使满足了容量要求,也必定要牺牲一定的性能或语音质量。

与只是RISC的架构或双RISC、多线程架构相比,使用双处理器架构划分跨越两个处理器的系统后不仅可以均衡处理负载,还能显著降低每个处理器需要的时钟频率。因为功耗正比于频率的平方,因此还能实质性地减轻功耗和散热问题。另外,由于双处理器是独立的,它们可以工作在不同的时钟频率,因此能够以最低的成本最大化语音和数据处理性能。根据发展规划,双处理器还可以在速度、性能和功能等方面做进一步优化,从而高效地实现从基本的网关到具有先进安全性的完整防火墙和路由器等功能。

然而,时钟频率和周期效率只是其中的两大关键性能指标。如果没有流经处理器的高效数据,那么大量的数据移动将形成性能瓶颈,有可能将语音质量劣化到不能接受的程度。可以采用直接存储器访问(DMA)机制,将处理器移出数据搬移的关键路径,从而使数据到处理器之间的发送和存储无需耗用CPU 资源。例如,当DSP完成数据块的处理后,DMA就可以将数据移到存储器等候其它设备的访问,这一过程无需耗用一个DSP执行周期。弥补DMA效率的是高速内部交换、宽的总线带宽、数据突发功能以及无需CPU持续监视而实现直接数据移动和处理的智能外设,从而达到最大化整体系统性能、降低时延、减少抖动效应,提高语音质量的目的。利用这种方式,双处理器中每个处理器都无需管理数据流,可以专注于执行它们最擅长的处理、命令和控制功能。其它重要的数据移动技术包括:

  1. 内部总线交换
    纵横交叉(Cross-bar)功能可以有效避免拥塞效应,减少数据移动冲突,允许多个数据流同时流动,并允许并发的控制寄存器访问。交换功能使任意两个外设之间的数据移动无需RISC或DSP内核的参与。
  2. 处理器缓存大小调整
    指令和数据缓存可以根据特定的应用处理和业务要求进行优化。缓存以与处理器相同的速度运行可以有效减少引起处理器宕机的外部存储器存取次数,从而提高系统总体性能。
  3. 外部存储器接口
    一个高效的处理器如果馈入数据的速度跟不上使用数据的速度就容易宕机。存储器访问效率取决于总线带宽、时钟速度和段交错操作(bank-interleaving)。当结合使用优化的软件时,性能效率最多时可以提高40%。
  4. 外设配置
    专用外设经过配置可以在初始化后无需直接的RISC或DSP支持。结合分布式DMA控制和数据突发操作,可以最大化外设效率,从而无需RISC或DSP的干预就能执行特定的任务。

作者:
Debbie Greenstreet/Fred Zimmerman
DSP系统组/德州仪器

责任编辑: admin