Skip to main navigation Skip to search Skip to main content

Recursive Multi-Tree Construction with Efficient Rule Sifting for Packet Classification on FPGA

  • Yao Xin
  • , Wenjun Li*
  • , Chengjun Jia
  • , Xianfeng Li
  • , Yang Xu
  • , Bin Liu
  • , Zhihong Tian
  • , Weizhe Zhang
  • *Corresponding author for this work
  • Guangzhou University
  • Peng Cheng Laboratory
  • Harvard University
  • Tsinghua University
  • Macau University of Science and Technology
  • Fudan University
  • Harbin Institute of Technology

Research output: Contribution to journalArticlepeer-review

Abstract

As a programmable accelerator, SmartNIC provides more opportunities for algorithmic packet classification. Our aim in this work is to achieve both line-speed rule search and efficient rule update, two highly desired metrics for SDN data plane. We leverage the parallelism offered by the FPGA in SmartNIC following an algorithm/hardware co-design paradigm. Particularly, we first design an algorithm that constructs multiple trees for the rule set with a recursive rule sifting process. Unlike traditional space-cutting-based multi-tree construction, our rule sifting mechanism breaks the space constraints of rule-to-tree mapping and enables bounded height on each tree, thus providing the potential of bounded worst-case and line-speed performance. We then design a flexible hardware architecture with multiple systolic arrays that can be implemented in parallel on FPGA. Each systolic array works as a coarse-grained pipeline, and the multiple trees constructed earlier will be mapped onto these pipeline stages. This hardware-software mapping enables bounded worst-case rule searching. Additionally, incremental rule update is achieved simply by traversing the pipeline in one pass, with little and bounded impact on rule searching. Experimental results show that our design achieves an average classification throughput of 600.8/147.5 MPPS and an update throughput of 8.2/5.9 MUPS for 10k/100k-scale 5-tuple and OpenFlow rule sets.

Original languageEnglish
Pages (from-to)1707-1722
Number of pages16
JournalIEEE/ACM Transactions on Networking
Volume32
Issue number2
DOIs
StatePublished - 1 Apr 2024
Externally publishedYes

Keywords

  • FPGA
  • SDN
  • SmartNIC
  • packet classification

Fingerprint

Dive into the research topics of 'Recursive Multi-Tree Construction with Efficient Rule Sifting for Packet Classification on FPGA'. Together they form a unique fingerprint.

Cite this