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 trafﬁc 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.
- 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]
- Aug. 2016, SIGCOMM’16 Student Travel Grant.
- Oct. 2016, Best Presentation Award, MSRA 2016 Student Techfest. [Poster]
- Microsoft Research Asia: 网络技术的风向标——SIGCOMM 2016
- Microsoft Research Asia; 芯片架构换血！如何评价微软在数据中心使用FPGA？
- AI 科技评论: 如何评价微软在数据中心使用FPGA代替传统CPU的做法？
- FastSwitch.org: 关于ClickNP的几点讨论
- 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 undergraduine in Shanghai Jiaotong University (now a Ph.D. student in Utah)
- Renqian Luo, 4th year undergraduine 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