10Gbps线速转发引擎的并行流水线设计与实现
4 工程实现
通过采用并行处理技术和流水线技术设计的转发引擎在实际工程中得到了很好的应用,工程中采用的FPGA为VIRTEX PRO系列的XC2VP70芯片。借助思博伦通信公司(Spirent Communications)的Adtech AX/4000网络测试仪构造的测试环境如图5所示。
图5中,测试仪与10GPOS线卡相连,双向发送与接收数据,线卡将10Gbps数据输入转发引擎,再由转发引擎送往高速交换网络。在测试过程中,选择40、64、128、256、512、1024、1280和1500字节的定长包进行分组转发率和丢包率测试。测试表明,在10G VAN和10G LAN接口下,转发引擎不丢包,即丢包率为0。在10GPOS接口下,转发引擎的吞吐率和丢包率如图6所示。
图中表明,在单一包长测试条件下,在负荷为100%、包长大于等于109.5字节时的丢包率低于1.07×10-6%,吞吐率接近于1%,该转发引擎可以实现40字节IPv6报文的10Gbps线速转发。
在测试过程中,还做了模拟实际应用的混合包传输(40字节包占25%,172字节包占20%,360字节包占15%,552字节包占20%,1500字节包占20%)测试。图7表示在模拟实际包长分布条件下,不同负荷时的转发引擎丢包率。
图中所示的测试结果表明,端口负荷低于90%时,丢包率低于3.0×10-4%。以上结果表明,该转发引擎能实现100%报文通过率的10Gbps线速转发。
10Gbps线路接口的出现,对转发引擎的设计是个极大的挑战:在不到4个时钟周期的时间内,需要实现各种协议类型的报文的线速转发。本文提出的一种基于FPGA的并行流水线转发引擎结构,很好地解决了10Gbps线速转发的问题。该引擎结构已经应用在863重大课题“可扩展到T比特的IPv4/v6 路由器基础平台及实验系统”中,并通过了测试。
随着线路传输技术的发展,链路接口速率即将突破40Gbps,这对转发引擎的结构设计又将是进一步的挑战,研究支持40Gbps的线速转发引擎将是我们下一步的研究方向。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 基于FPGA的快速并行FFT及其在空间太阳望远镜图像锁定系统中的应用(06-21)
- 3DES算法的FPGA高速实现(06-21)
- 用FPGA实现FFT算法(06-21)
- FPGA的DSP性能揭秘(06-16)