ClickNP: Highly Flexible and High-Performance Network Processing with Reconfigurable Hardware
Highly flexible software network functions (NFs) are crucial components to enable multi-tenancy in the clouds. However, software packet processing on a commodity server has limited capacity and induces high latency. While software NFs could scale out using more servers, doing so adds significant cost. This paper focuses on accelerating NFs with programmable hardware, i.e., FPGA, which is now a mature technology and inexpensive for datacenters. However, FPGA is predominately programmed using low-level hardware description languages (HDLs), which are hard to code and difficult to debug. More importantly, HDLs are almost inaccessible for most software programmers.
This paper presents ClickNP, an FPGA-accelerated platform for highly flexible and high-performance NFs with commodity servers. ClickNP is highly flexible as it is completely programmable using high-level C-like languages, and exposes a modular programming abstraction that resembles Click Modular Router. ClickNP is also high performance. Our prototype NFs show that they can process traffic at up to 200 million packets per second with ultra-low latency (< 2µs). Compared to existing software counterparts, with FPGA, ClickNP improves throughput by 10x, while reducing latency by 10x. To the best of our knowledge, ClickNP is the first FPGA-accelerated platform for NFs, written completely in high-level language and achieving 40 Gbps line rate at any packet size.
Publication
Bojie Li, Kun Tan, Layong (Larry) Luo, Yanqing Peng, Renqian Luo, Ningyi Xu, Yongqiang Xiong, Peng Cheng and Enhong Chen.
Proceedings of the 2016 ACM SIGCOMM Conference (SIGCOMM ‘16). [PDF] [Slides]
Talks and Demos
- Aug. 2016, SIGCOMM’16 Presentation. [Slides] [Talk Transcription]
- Aug. 2016, SIGCOMM’16 Demo. [Abstract] [Poster] [Video]
- Aug. 2016, University of Science and Technology of China.
- Sep. 2016, Tsinghua University Ph.D. Forum.
- Oct. 2016, MSRA Ph.D. Forum. [Poster]
- Jul. 2017, China SDN Research Training Camp (Nanjing).
- Aug. 2017, The First Asia-Pacific Workshop on Networking (APNet’17) Invited Talk: Implementing ClickNP. [Abstract] [Slides]
Awards
- Aug. 2016, SIGCOMM’16 Student Travel Grant.
- Oct. 2016, Best Presentation Award, MSRA 2016 Student Techfest. [Poster]
Media Coverage
- Microsoft Research Asia: The vane of network technology - SIGCOMM 2016
- Microsoft Research Asia; Chip architecture blood transfusion! How to evaluate Microsoft’s use of FPGA in data centers?
- AI Technology Review: How to evaluate Microsoft’s practice of using FPGA instead of traditional CPU in data centers?
- FastSwitch.org: A few discussions about ClickNP
Resources
People
- Bojie Li, 2nd year Ph.D. student in MSRA and USTC
- Dr. Kun Tan, Senior Researcher in Microsoft Research Asia
- Dr. Larry Luo, Associate Researcher in Microsoft Research Asia
- Yanqing Peng, 4th year undergraduate in Shanghai Jiaotong University (now a Ph.D. student in Utah)
- Renqian Luo, 4th year undergraduate in USTC (now a Ph.D. student in MSRA and USTC)
- Dr. Ningyi Xu, Lead Researcher in Microsoft Research Asia
- Dr. Yongqiang Xiong, Lead Researcher in Microsoft Research Asia
- Dr. Peng Cheng, Researcher in Microsoft Research Asia
- Prof. Enhong Chen, Professor in USTC