DrawerPipe: A Reconfigurable Pipeline for Network Processing on FPGA-Based SmartNIC

Junnan Li, Zhigang Sun, Jinli Yan, Xiangrui Yang, Yue Jiang, Wei Quan
2019 Electronics  
In the public cloud, FPGA-based SmartNICs are widely deployed to accelerate network functions (NFs) for datacenter operators. We argue that with the trend of network as a service (NaaS) in the cloud is also meaningful to accelerate tenant NFs to meet performance requirements. However, in pursuit of high performance, existing work such as AccelNet is carefully designed to accelerate specific NFs for datacenter providers, which sacrifices the flexibility of rapidly deploying new NFs. For most
more » ... nts with limited hardware design ability, it is time-consuming to develop NFs from scratch due to the lack of a rapidly reconfigurable framework. In this paper, we present a reconfigurable network processing pipeline, i.e., DrawerPipe, which abstracts packet processing into multiple "drawers" connected by the same interface. NF developers can easily share existing modules with other NFs and simply load core application logic in the appropriate "drawer" to implement new NFs. Furthermore, we propose a programmable module indexing mechanism, namely PMI, which can connect "drawers" in any logical order, to perform distinct NFs for different tenants or flows. Finally, we implemented several highly reusable modules for low-level packet processing, and extended four example NFs (firewall, stateful firewall, load balancer, IDS) based on DrawerPipe. Our evaluation shows that DrawerPipe can easily offload customized packet processing to FPGA with high performance up to 100 Mpps and ultra-low latency (<10 µs). Moreover, DrawerPipe enables modular development of NFs, which is suitable for rapid deployment of NFs. Compared with individual NF development, DrawerPipe reduces the line of code (LoC) of the four NFs above by 68%.
doi:10.3390/electronics9010059 fatcat:mei5qxvl75ho5fo3w25ichfjgu