摘要
公有云中需要灵活地部署网络功能以实现多租户间的网络隔离、服务质量保证与安全防护.软件实现的网络功能具有较高的灵活性,但性能较低,并存在分组处理吞吐率较低、处理延时较高等不足.FPGA具有良好的可编程性及较高的处理性能.但如何使用FPGA实现可重构的网络功能缺乏统一的架构和方法.针对FPGA实现网络功能提出了一种可重构流水线模型——DrawerPipe.该模型将网络功能实现架构抽象为5个标准的"抽屉",不同的"抽屉"可以根据需要装载不同的处理模块,通过组合这些处理模块实现各种网络功能.此外,DrawerPipe采用了一种协议无关的可编程模块接口,以实现不同模块接口之间的适配,从而解除模块间由特定接口信号定义而绑定的耦合性.最后,基于DrawerPipe实现了多种网络功能.实验结果表明DrawerPipe具有良好的可扩展性,以及线速处理性能、资源利用率高等优点,可用于网络功能的快速部署.
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.
作者
厉俊男
杨翔瑞
孙志刚
Li Junnan;Yang Xiangrui;Sun Zhigang(College of Computer,National University of Defense Technology,Changsha 410072)
出处
《计算机研究与发展》
EI
CSCD
北大核心
2018年第4期717-728,共12页
Journal of Computer Research and Development
基金
国家自然科学基金项目(61702538)~~
关键词
FPGA
网络功能加速
可重构流水线模型
模块重用
可编程模块接口
FPGA
network functions acceleration
reconfigurable pipeline model
module reuse
programmable module interface