基于FPGA的网络处理技术的性能和灵活性分析

http://tech.ddvip.com   2008年01月24日    社区交流 收藏本文

内容摘要:本文将重点讨论线路卡。每个线路卡的入口和出口信道上均带有数据通路和控制通路,数据通路负责以线速率处理和传送分组数据而不产生较大的延迟,而控制通路则负责提供处理智能、强化规则、处理意外情况并监控统计数字。

  FPGA实现的网络处理实例

  本文提出了一种基于新型FPGA的解决方案:Virtex-II Pro FPGA实现了数据通路和控制功能,而协处理器则负责数据包分类和查询。下面以2.5Gbps(OC-48)线路卡为例进行说明。

  1. 利用VPN和管理规则设计2.5Gbps线路卡

  2.5Gbps(OC-48)线速率正日益受到广泛关注,因为OC-48能有效地对带宽和成本进行折衷。采用IPSec的加密VPN正是业务提供商探寻的高优先级业务。路由器制造商在下一代线路卡开发中,一直希望应用系统能具备以下大部分或全部功能(图4):VPN支持多个局部路由表和IPSec加密/解密;支持基于SONET的分组传输的全双工OC-48;支持基于MPLS的VPN;成千上万个VPN组,多项管理规则/VPN组;数百万个词头;支持DiffSERV;采用VPN组的QoS级别分类。ToS域和TCP/UDP源和目的端口数目。每个VPN组中均可建立数千条QoS准则。

基于FPGA的网络处理技术的性能和灵活性分析

  2. 方案选择

  设计选择通常与所需的规则数目、性能(每秒处理的分组数据包/信元)、器件数目和功耗相关。本文重点关注分类和流量管理。为实现上述功能,线路卡通常采用的器件包括:

  (1) 网络处理器和协处理器

  分类占用的计算量最大。NPU需要许多 专用存储器(如外置ZBT SRAM),因而功耗很大。IPSec通常用于VPN中的网络安全功能,因而既需要支持控制路径,也需要支持数据路径。由于NP耗尽了所有能量,因而需要能同时进行IPSec安全处理和流量管理的协处理器。

  (2) FPGA和备用协处理器

  FPGA确保了线速率IPSec的安全性,并提供比NPU更快的分类和查询功能。对IPSec而言,Virtex-II Pro在嵌入式PowerPC处理器软件中实现了控制路径/密码交换,还在FPGA逻辑电路中以Gbps级的线速率实现了数据路径AES/3-DES加密/解密。如果QoS规则需要经常改变,外置VLIW协处理器就能实现分类(FSM密集)功能。嵌入式PowerPC处理器可用于执行全部的控制和管理层功能。

  (3) 存储器子系统

  CAM查询子系统可提供很高的查询速率,并支持很大的表项结构。但CAM的功耗(每器件消耗20W)很大,而且为了支持较大的表项,通常需要大量的CAM和SRAM器件。昂贵的ZBT SRAM可提供较高的速率,并在层2和层3数据包分类中支持NPU,但也需要消耗较大的功率。

  SDRAM是最经济的器件,因而应用于大多数系统中。低功率的SDRAM通过采用管道和多线程架构实现了较高的性能以及较大的表项。但如果设计业务只是为了通过提高处理器速率而补偿性能的话,那么就明显不适合了。FPGA、VLIW/RISC处理器和SDRAM的结合为带有VPN和IPSec的2.5Gbps线路卡提供了最佳解决方案。

  目前,网络处理内核和分组处理参考设计均适合于采用FPGA平台设计。此外,Virtex-II Pro FPGA还支持所有的通用并行(单端和差动)和串行系统接口标准,以使其轻松地与任何协议进行接口并与线路卡上的任何器件相连。

来源:电子产品世界    作者:Anil Telikepalli    责编:豆豆技术应用

正在加载评论...