Skip to main navigation Skip to search Skip to main content

Bolt: Scalable and Cost-Efficient Multistring Pattern Matching With Programmable Switches

  • Shicheng Wang
  • , Menghao Zhang*
  • , Guanyu Li
  • , Chang Liu
  • , Zhiliang Wang
  • , Ying Liu*
  • , Mingwei Xu
  • *Corresponding author for this work
  • Tsinghua University
  • Kuaishou
  • Zhongguancun Laboratory

Research output: Contribution to journal › Article › peer-review

Abstract

Multi-string pattern matching is a crucial building block for many network security applications and thus of great importance. Since every byte of a packet has to be inspected by a large set of patterns, it often becomes a bottleneck of these applications and dominates the performance of an entire system. Many existing studies have been devoted to alleviating this performance bottleneck either by algorithm optimization or hardware acceleration. However, neither one provides the desired scalability and costs that keep pace with the drastic increase in network bandwidth and traffic today. To address these issues, in this paper, we present BOLT, a scalable and cost-efficient multi-string pattern matching system leveraging the capability of emerging programmable switches. BOLT combines the following techniques: (1) an efficient state encoding scheme to fit a large number of strings into the limited memory on a programmable switch; (2) a variable k -stride transition mechanism to increase the throughput significantly with the same level of memory cost; and (3) a compact pattern2rule mapping method to accommodate multiple co-existing strings in one rule. We implement a prototype of BOLT and make its source code publicly available. Extensive evaluations demonstrate that BOLT can provide multi-hundred Gbps throughput and scales well with various pattern sets and workloads.

Original languageEnglish
Pages (from-to)846-861
Number of pages16
JournalIEEE/ACM Transactions on Networking
Volume31
Issue number2
DOIs
StatePublished - 1 Apr 2023
Externally publishedYes

Keywords

  • Programmable switch
  • pattern matching

Fingerprint

Dive into the research topics of 'Bolt: Scalable and Cost-Efficient Multistring Pattern Matching With Programmable Switches'. Together they form a unique fingerprint.

Cite this