ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展 ›› 2018, Vol. 55 ›› Issue (4): 717-728.doi: 10.7544/issn1000-1239.2018.20170927

所属专题: 2018网络功能虚拟化专题

• 网络技术 • 上一篇    下一篇

DrawerPipe:基于FPGA的可重构分组处理流水线模型

厉俊男,杨翔瑞,孙志刚   

  1. (国防科技大学计算机学院 长沙 410072) (lijunnan@nudt.edu.cn)
  • 出版日期: 2018-04-01
  • 基金资助: 
    国家自然科学基金项目(61702538)

DrawerPipe: A Reconfigurable Packet Processing Pipeline for FPGA

Li Junnan, Yang Xiangrui, Sun Zhigang   

  1. (College of Computer, National University of Defense Technology, Changsha 410072)
  • Online: 2018-04-01

摘要: 公有云中需要灵活地部署网络功能以实现多租户间的网络隔离、服务质量保证与安全防护.软件实现的网络功能具有较高的灵活性,但性能较低,并存在分组处理吞吐率较低、处理延时较高等不足.FPGA具有良好的可编程性及较高的处理性能.但如何使用FPGA实现可重构的网络功能缺乏统一的架构和方法.针对FPGA实现网络功能提出了一种可重构流水线模型——DrawerPipe.该模型将网络功能实现架构抽象为5个标准的“抽屉”,不同的“抽屉”可以根据需要装载不同的处理模块,通过组合这些处理模块实现各种网络功能.此外,DrawerPipe采用了一种协议无关的可编程模块接口,以实现不同模块接口之间的适配,从而解除模块间由特定接口信号定义而绑定的耦合性.最后,基于DrawerPipe实现了多种网络功能.实验结果表明DrawerPipe具有良好的可扩展性,以及线速处理性能、资源利用率高等优点,可用于网络功能的快速部署.

关键词: FPGA, 网络功能加速, 可重构流水线模型, 模块重用, 可编程模块接口

Abstract: In public cloud, flexible network functions are required to enforce network isolation, service-level agreement and security for multi-tenants. While software-based network functions are flexible, they have limited capacity with low processing throughput and induce high latency. FPGA has good programmability and high processing throughput, and it is appealing due to the balance between hardware performance and software flexibility. However, how to use FPGA to realize network function lacks a unified and reconfigurable architecture. This paper presents DrawerPipe, a reconfigurable pipeline model. This module abstracts the packet processing into five standard “drawers”. And operators can load their modules in these “drawers” which are combined as a packet processing pipeline. As the drawers are independent from each other, the modules loaded in different drawers can be excurted in parallel. Furthermore, we add a function-independent programmable interface between modules to adapt the communication format between different modules, which also helps to release the constraint imposed by the interface definition. Finally, we implement a variety of network functions based on DrawerPipe. The result shows that DrawerPipe not only has good scalability, but also has the advantages of wire-speed processing performance and high resource utilization, which can be used for rapid deployment of network functions.

Key words: FPGA, network functions acceleration, reconfigurable pipeline model, module reuse, programmable module interface

中图分类号: