[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1477942.1477948acmconferencesArticle/Chapter ViewAbstractPublication PagesancsConference Proceedingsconference-collections
research-article

Compact architecture for high-throughput regular expression matching on FPGA

Published: 06 November 2008 Publication History

Abstract

In this paper we present a novel architecture for high-speed and high-capacity regular expression matching (REM) on FPGA. The proposed REM architecture, based on nondeterministic finite automaton (RE-NFA), efficiently constructs regular expression matching engines (REME) of arbitrary regular patterns and character classes in a uniform structure, utilizing both logic slices and block memory (BRAM) available on modern FPGA devices. The resulting circuits take advantage of synthesis and routing optimizations to achieve high operating speed and area efficiency. The uniform structure of our RE-NFA design can be stacked in a simple way to produce multi-character input circuits to scale up throughput further. An n-state m-character input REME takes only O (n X log2 m) time to construct and occupies no more than O (n X m) logic units. The REMEs can be staged and pipelined in large numbers to achieve high parallelism without sacrificing clock frequency.
Using the proposed RE-NFA architecture, we are able to implement 3 copies of two-character input REMEs, each with 760 regular expressions, 18715 states and 371 character classes, onto a single Xilinx Virtex 4 LX-100-12 device. Each copy processes 2 characters per clock cycle at 300 MHz, resulting in a concurrent throughput of 14.4 Gbps for 760 REMEs. Compared with the automatic NFA-to-VHDL REME compilation [13], our approach achieves over 9x throughput efficiency (Gbps*state/LUT). Compared with state-of-the-art REMEs on FPGA, our approach also indicates up to 70% better throughput efficiency.

References

[1]
Bro Intrusion Detection System. http://bro-ids.org/.
[2]
SNORT.ORG. http://www.snort.org/.
[3]
Michela Becchi and Patrick Crowley, "A Hybrid Finite Automaton for Practical Deep Packet Inspection", CoNEXT '07: Proceedings of the 2007 ACM CoNEXT conference (New York, NY, USA), ACM, 2007, pp. 1--12.
[4]
Michela Becchi and Patrick Crowley, "An Improved Algorithm to Accelerate Regular Expression Evaluation", ANCS '07: Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems (New York, NY, USA), ACM, 2007, pp. 145--154.
[5]
Joao Bispo, Ioannis Sourdis, Joao M. P. Cardoso, and Stamatis Vassiliadis, "Regular Expression Matching for Feconfigurable Packet Inspection", FPT '06: Proceedings of the IEEE International Conference on Field Programmable Technology, 2006., Dec. 2006, pp. 119--126.
[6]
C. R. Clark and D. E. Schimmel, "Scalable pattern matching for high speed networks", FCCM '04: Proceedings of the 12th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2004., April 2004, pp. 249--257.
[7]
Robert W. Floyd and Jeffrey D. Ullman, "The Compilation of Regular Expressions into Integrated Circuits", "J. ACM" (New York, NY, USA), vol. 29, ACM, 1982, pp. 603--622.
[8]
Christopher L. Hayes and Yan Luo, "DPICO: A High Speed Deep Packet Inspection Engine Using Compact Finite Automata", ANCS '07: Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems (New York, NY, USA), ACM, 2007, pp. 195--203.
[9]
B. L. Hutchings, R. Franklin, and D. Carver, "Assisting Network Intrusion Detection with Reconfigurable Hardware", FCCM '02: Proceedings of the 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Washington, DC, USA), IEEE Computer Society, 2002, p. 111.
[10]
Sailesh Kumar, Balakrishnan Chandrasekaran, Jonathan Turner, and George Varghese, "Curing Regular Expressions Matching Algorithms from Insomnia, Amnesia, and Acalculia", ANCS '07: Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems (New York, NY, USA), ACM, 2007, pp. 155--164.
[11]
Sailesh Kumar, Sarang Dharmapurikar, Fang Yu, Patrick Crowley, and Jonathan Turner, "Algorithms to Accelerate Multiple Regular Expressions Matching for Deep Packet Inspection", SIGCOMM '06: Proceedings of the 2006 conference on Applications, technologies, architectures, and protocols for computer communications (New York, NY, USA), ACM, 2006, pp. 339--350.
[12]
Cheng-Hung Lin, Chih-Tsun Huang, Chang-Ping Jiang, and Shih-Chieh Chang, "Optimization of regular expression pattern matching circuits on FPGA", DATE '06: Proceedings of the conference on Design, automation and test in Europe (3001 Leuven, Belgium, Belgium), European Design and Automation Association, 2006, pp. 12--17.
[13]
Abhishek Mitra, Walid Najjar, and Laxmi Bhuyan, "Compiling PCRE to FPGA for accelerating SNORT IDS", ANCS '07: Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems (New York, NY, USA), ACM, 2007, pp. 127--136.
[14]
R. Sidhu and V. K. Prasanna, "Fast Regular Expression Matching Using FPGAs", FCCM '01: Proceedings of the 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2001., 2001, pp. 227--238.
[15]
R. Smith, C. Estan, and S. Jha, "Backtracking Algorithmic Complexity Attacks against a NIDS", ACSAC '06: Proceedings of the 22nd Annual Computer Security Applications Conference, 2006., Dec. 2006, pp. 89--98.
[16]
Norio Yamagaki, Reetinder Sidhu, and Satoshi Kamiya, "High-Speed Regular Expression Matching Engine Using Multi-Character NFA", FPL '08: Proceedings of the International Conference on Field Programmable Logic and Applications, 2008., Aug. 2008, pp. 697--701.
[17]
Fang Yu, Zhifeng Chen, Yanlei Diao, T. V. Lakshman, and Randy H. Katz, "Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection", ANCS '06: Proceedings of the 2006 ACM/IEEE symposium on Architecture for networking and communications systems (New York, NY, USA), ACM, 2006, pp. 93--102.

Cited By

View all
  • (2024)BVAP: Energy and Memory Efficient Automata Processing for Regular Expressions with Bounded RepetitionsProceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 210.1145/3620665.3640412(151-166)Online publication date: 27-Apr-2024
  • (2024)FPGAs for Network Function Virtualization: Challenges in Placement and Partitioning2024 37th SBC/SBMicro/IEEE Symposium on Integrated Circuits and Systems Design (SBCCI)10.1109/SBCCI62366.2024.10704007(1-5)Online publication date: 2-Sep-2024
  • (2023)NAPOLY: A Non-deterministic Automata Processor OverLaYACM Transactions on Reconfigurable Technology and Systems10.1145/359358616:3(1-25)Online publication date: 22-Jun-2023
  • Show More Cited By

Index Terms

  1. Compact architecture for high-throughput regular expression matching on FPGA

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ANCS '08: Proceedings of the 4th ACM/IEEE Symposium on Architectures for Networking and Communications Systems
    November 2008
    191 pages
    ISBN:9781605583464
    DOI:10.1145/1477942
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 06 November 2008

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. BRAM
    2. FPGA
    3. NFA
    4. finite state machine
    5. intrusion detection
    6. regular expression

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    ANCS '08

    Acceptance Rates

    ANCS '08 Paper Acceptance Rate 17 of 67 submissions, 25%;
    Overall Acceptance Rate 88 of 314 submissions, 28%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)11
    • Downloads (Last 6 weeks)3
    Reflects downloads up to 26 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)BVAP: Energy and Memory Efficient Automata Processing for Regular Expressions with Bounded RepetitionsProceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 210.1145/3620665.3640412(151-166)Online publication date: 27-Apr-2024
    • (2024)FPGAs for Network Function Virtualization: Challenges in Placement and Partitioning2024 37th SBC/SBMicro/IEEE Symposium on Integrated Circuits and Systems Design (SBCCI)10.1109/SBCCI62366.2024.10704007(1-5)Online publication date: 2-Sep-2024
    • (2023)NAPOLY: A Non-deterministic Automata Processor OverLaYACM Transactions on Reconfigurable Technology and Systems10.1145/359358616:3(1-25)Online publication date: 22-Jun-2023
    • (2023)Modular VNF Components Acceleration With FPGA OverlaysIEEE Transactions on Network and Service Management10.1109/TNSM.2022.321144820:1(846-857)Online publication date: Mar-2023
    • (2023)OD-REM: On-Demand Regular Expression Matching on FPGAs for Efficient Deep Packet Inspection2023 International Conference on Field Programmable Technology (ICFPT)10.1109/ICFPT59805.2023.00029(217-226)Online publication date: 12-Dec-2023
    • (2022)Software-hardware codesign for efficient in-memory regular pattern matchingProceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation10.1145/3519939.3523456(733-748)Online publication date: 9-Jun-2022
    • (2022)FPGA-CPU Architecture Accelerated Regular Expression Matching With Fast PreprocessingThe Computer Journal10.1093/comjnl/bxac13866:12(2928-2947)Online publication date: 23-Oct-2022
    • (2021)Reinhardt: Real-time Reconfigurable Hardware Architecture for Regular Expression Matching in DPIProceedings of the 37th Annual Computer Security Applications Conference10.1145/3485832.3485878(620-633)Online publication date: 6-Dec-2021
    • (2021)NFA Based Regular Expression Matching on FPGA2021 International Conference on Computer, Information and Telecommunication Systems (CITS)10.1109/CITS52676.2021.9618426(1-5)Online publication date: 11-Nov-2021
    • (2020)Optimizing Complex OpenCL Code for FPGA: A Case Study on Finite Automata Traversal2020 IEEE 26th International Conference on Parallel and Distributed Systems (ICPADS)10.1109/ICPADS51040.2020.00073(518-527)Online publication date: Dec-2020
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media