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

22
1 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

Upload: flavia-pittman

Post on 01-Jan-2016

28 views

Category:

Documents


2 download

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

Page 1: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

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

Page 2: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

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.

Page 3: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Definitions

3

Page 4: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Leaf-Attaching Algorithm

4

Page 5: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Leaf-Attaching Algorithm

5

Page 6: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

BST String Matching Algorithm

6

Page 7: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Memory Efficiency of The BST String Matching Algorithm

7

Page 8: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Cascading approach

8

Page 9: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Cascading approach

9

Page 10: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Cascading approach

10

Page 11: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Arbitrary-Length String Matching Algorithm

11

Page 12: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Arbitrary-Length String Matching Algorithm

12

Page 13: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Overall Architecture

13

Page 14: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Pattern Matching Module (PMM) Architecture

14

Page 15: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Label Matching Module (LMM) Architecture

15

Page 16: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

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

Page 17: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Modular Extensibility horizontally

vertically

-intra-stream

-inter-stream

both

17

Page 18: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Experimental Setup

18

Page 19: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

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.

Page 20: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Memory Efficiency

20

Page 21: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Throughput

21

Page 22: A Memory-Efficient and Modular Approach for Large-Scale String Pattern Matching

Performance Comparison

22