a memory-efficient and modular approach for large-scale string pattern matching

Post on 01-Jan-2016

28 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching. Author : Hoang Le, Viktor K. Prasanna Publisher: IEEE Transactions on Computers, 2012 Presenter: Zi-Yang Ou Date: 2012/02/29. Introduction. - PowerPoint PPT Presentation

TRANSCRIPT

1

A Memory-Efficient and Modular Approach for Large-Scale String

Pattern Matching

Author:Hoang Le, Viktor K. PrasannaPublisher: IEEE Transactions on Computers, 2012Presenter:Zi-Yang OuDate:2012/02/29

Introduction

2

An algorithm called leaf-attaching to efficiently disjoint a given dictionary without increasing the number of patterns.

An architecture that achieves a memory efficiency of 0.56 (for Rogets) and 1.32 byte/char (for Snort). State-of-the-art designs can only

achieve the memory efficiency of over 2 byte/char in the best case.

The implementation on ASIC and FPGA shows a sustained aggregated throughput of 24 Gbps and 3.2 Gbps, respectively.

The design can be duplicated to improve the throughput by exploiting its simple architecture.

Definitions

3

Leaf-Attaching Algorithm

4

Leaf-Attaching Algorithm

5

BST String Matching Algorithm

6

Memory Efficiency of The BST String Matching Algorithm

7

Cascading approach

8

Cascading approach

9

Cascading approach

10

Arbitrary-Length String Matching Algorithm

11

Arbitrary-Length String Matching Algorithm

12

Overall Architecture

13

Pattern Matching Module (PMM) Architecture

14

Label Matching Module (LMM) Architecture

15

Dictionary Update (1) pattern deletion

-(a) including more than one pattern

-(b) including only one pattern

-lazy deletion

-complete deletion

(2) new pattern insertion

-has parent pattern(s)

-has no parent pattern

16

Modular Extensibility horizontally

vertically

-intra-stream

-inter-stream

both

17

Experimental Setup

18

Memory Efficiency

19

The window size L should be greater than or equal to the matching latency of the LMM.

Hence, 3 values of L(16, 20, 24) are used in our analysis.

Memory Efficiency

20

Throughput

21

Performance Comparison

22

top related