Auto implementation of parallel hardware architecture for Aho-Corasick algorithm

被引:0
|
作者
M. Najam-ul-Islam
Fatima Tu Zahra
Atif Raza Jafri
Roman Shah
Masood ul Hassan
Muhammad Rashid
机构
[1] Bahria University,Cyber Reconnaissance and Combat Lab
[2] Umm Al Qura University,Computer Engineering Department
来源
关键词
Automatic code generation; Parallel hardware; Aho-Corasick algorithm; Network security; FPGA implementation;
D O I
暂无
中图分类号
学科分类号
摘要
Pattern matching using Aho-Corasick (AC) algorithm is the most time-consuming task in an Intrusion Detection System, and therefore, the Field Programmable Gate Array (FPGA) based solutions are frequently employed. In this context, the two possibilities are memory based solutions and hardwired solution. The limitation of memory based solutions is the inefficient utilization of slices while the hardwired solutions require a tremendous amount of effort and time as writing Hardware Description Language (HDL) code for thousands of rules is prone to human errors. Consequently, the contributions of this article are twofold. The first contribution is to develop a tool for the automatic generation of Verilog-HDL code from the rule set. The second contribution is to propose an efficient parallel hardware implementation scheme and compare it with a serial hardware implementation scheme in terms of various design parameters such as resource utilization, operational frequency and throughput. The proposed parallel scheme advocates the division of entire rule set into smaller sub-sets for parallel execution. Experimental results reveal that the proposed tool can generate the target code for 10,000 rules in less than a minute without any error. The automatic generation of target code has allowed to perform a comprehensive design space exploration for the parallel implementation of AC algorithm in quick time. Finally, our Xilinx ZC702 evaluation FPGA board based prototype for 10,000 rules can efficiently examine the packet stream coming at a bit rate of 1.56 Gbps at an operational frequency of 195 MHz.
引用
收藏
页码:29 / 53
页数:24
相关论文
共 50 条
  • [21] Memory-Based Architecture for Multicharacter Aho-Corasick String Matching
    Wang, Xing
    Pao, Derek
    IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 2018, 26 (01) : 143 - 154
  • [22] Space-Time Tradeoff in the Aho-Corasick String Matching Algorithm
    Xu, Yisi
    Pao, Derek
    2015 IEEE CONFERENCE ON COMMUNICATIONS AND NETWORK SECURITY (CNS), 2015, : 713 - 714
  • [23] String Matching with Multicore CPUs: Performing Better with the Aho-Corasick Algorithm
    Arudchutha, S.
    Nishanthy, T.
    Ragel, R. G.
    2013 8TH IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL AND INFORMATION SYSTEMS (ICIIS), 2013, : 231 - 236
  • [24] Dictionary Matching: Review of the Aho-Corasick Algorithm and Vision for Large Dictionaries
    Qiao ZhanPeng
    Goto, Kento
    Ohshima, Takuya
    Tajima, Masahiro
    Motomichi, Toyama
    ICIST '18: PROCEEDINGS OF THE 8TH INTERNATIONAL CONFERENCE ON INFORMATION SYSTEMS AND TECHNOLOGIES, 2018,
  • [25] A Probability Model Chinese Word Segmentation Algorithm Based on Aho-Corasick Automata Algorithm
    Xu Y.-B.
    Dianzi Keji Daxue Xuebao/Journal of the University of Electronic Science and Technology of China, 2017, 46 (02): : 426 - 433
  • [26] Generalized Aho-Corasick algorithm for signature based anti-virus applications
    Lee, Tsern-Huei
    PROCEEDINGS - 16TH INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICATIONS AND NETWORKS, VOLS 1-3, 2007, : 792 - 797
  • [27] Aho-Corasick String Matching on Shared and Distributed-Memory Parallel Architectures
    Tumeo, Antonino
    Villa, Oreste
    Chavarria-Miranda, Daniel G.
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2012, 23 (03) : 436 - 443
  • [29] Improved Keyword Recognition Based on Aho-Corasick Automaton
    Guo, Yachao
    Qiu, Zhibin
    Huang, Hao
    Siong, Chng Eng
    2023 INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS, IJCNN, 2023,
  • [30] AUGMENTING THE AHO-CORASICK PATTERN-MATCHING MACHINE
    SRIDHAR, MA
    INTERNATIONAL JOURNAL OF COMPUTER MATHEMATICS, 1990, 32 (3-4) : 149 - 153