Author: Domenico Ficara ,Gianni Antichi ,Nicola Bonelli ,

Slides:



Advertisements
Similar presentations
Author : Xinming Chen,Kailin Ge,Zhen Chen and Jun Li Publisher : ANCS, 2011 Presenter : Tsung-Lin Hsieh Date : 2011/12/14 1.
Advertisements

Optimizing Regular Expression Matching with SR-NFA on Multi-Core Systems Authors : Yang, Y.E., Prasanna, V.K. Yang, Y.E. Prasanna, V.K. Publisher : Parallel.
Code Generation Steve Johnson. May 23, 2005Copyright (c) Stephen C. Johnson The Problem Given an expression tree and a machine architecture, generate.
1 Blooming Trees: Space-Efficient Structures for Data Representation Author: Domenico Ficara, Stefano Giordano, Gregorio Procissi, Fabio Vitucci Publisher:
Using Cell Processors for Intrusion Detection through Regular Expression Matching with Speculation Author: C˘at˘alin Radu, C˘at˘alin Leordeanu, Valentin.
1 Introduction to Computability Theory Lecture3: Regular Expressions Prof. Amos Israeli.
Lecture 3UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 3.
1 A Heuristic and Hybrid Hash- based Approach to Fast Lookup Author: Gianni Antichi, Andrea Di Pietro, Domenico Ficara, Stefano Giordano, Gregorio Procissi,
1 ReCPU:a Parallel and Pipelined Architecture for Regular Expression Matching Department of Computer Science and Information Engineering National Cheng.
Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers Author: Jing Fu, Jennifer Rexford Publisher: ACM CoNEXT 2008 Presenter:
Improved TCAM-based Pre-Filtering for Network Intrusion Detection Systems Department of Computer Science and Information Engineering National Cheng Kung.
Performance Evaluation of IPv6 Packet Classification with Caching Author: Kai-Yuan Ho, Yaw-Chung Chen Publisher: ChinaCom 2008 Presenter: Chen-Yu Chaug.
Pipelined Architecture For Multi-String Match Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C.
1 Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection Department of Computer Science and Information Engineering National.
1 Performing packet content inspection by longest prefix matching technology Authors: Nen-Fu Huang, Yen-Ming Chu, Yen-Min Wu and Chia- Wen Ho Publisher:
1 Scalable Pattern-Matching via Dynamic Differentiated Distributed Detection (D 4 ) Author: Kai Zheng, Hongbin Lu Publisher: GLOBECOM 2008 Presenter: Han-Chen.
Memory-Efficient Regular Expression Search Using State Merging Department of Computer Science and Information Engineering National Cheng Kung University,
1 Route Table Partitioning and Load Balancing for Parallel Searching with TCAMs Department of Computer Science and Information Engineering National Cheng.
Packet Classification using Rule Caching Author: Nitesh B. Guinde, Roberto Rojas-Cessa, Sotirios G. Ziavras Publisher: IISA, 2013 Fourth International.
PARALLEL TABLE LOOKUP FOR NEXT GENERATION INTERNET
Sampling Techniques to Accelerate Pattern Matching in Network Intrusion Detection Systems Author: Domenico Ficara, Gianni Antichi, Andrea Di Pietro, Stefano.
MIDeA :A Multi-Parallel Instrusion Detection Architecture Author: Giorgos Vasiliadis, Michalis Polychronakis,Sotiris Ioannidis Publisher: CCS’11, October.
Author : Ozgun Erdogan and Pei Cao Publisher : IEEE Globecom 2005 (IJSN 2007) Presenter : Zong-Lin Sie Date : 2010/12/08 1.
An Improved Algorithm to Accelerate Regular Expression Evaluation Author: Michela Becchi, Patrick Crowley Publisher: 3rd ACM/IEEE Symposium on Architecture.
Introduction to CS Theory Lecture 3 – Regular Languages Piotr Faliszewski
Leveraging Traffic Repetitions for High- Speed Deep Packet Inspection Author: Anat Bremler-Barr, Shimrit Tzur David, Yotam Harchol, David Hay Publisher:
Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection Authors: Fang Yu, Zhifeng Chen, Yanlei Diao, T. V. Lakshman, Randy H.
Multi-Field Range Encoding for Packet Classification in TCAM Author: Yeim-Kuan Chang, Chun-I Lee and Cheng-Chien Su Publisher: INFOCOM 2011 Presenter:
Parallelization and Characterization of Pattern Matching using GPUs Author: Giorgos Vasiliadis 、 Michalis Polychronakis 、 Sotiris Ioannidis Publisher:
StriD 2 FA: Scalable Regular Expression Matching for Deep Packet Inspection Author: Xiaofei Wang, Junchen Jiang, Yi Tang, Bin Liu, and Xiaojun Wang Publisher:
Sampling Techniques to Accelerate Pattern Matching in Network Intrusion Detection Systems Author : Domenico Ficara, Gianni Antichi, Andrea Di Pietro, Stefano.
 Author: Domenico Ficara, Stefano Giordano, Gregorio Procissi, Fabio Vitucci, Gianni Antichi, Andrea Di Pietro  Publisher: 2008 ACM SIGCOMM  Presenter:
1 Blooming Trees for Minimal Perfect Hashing Author: Gianni Antichi, Domenico Ficara, Stefano Giordano, Gregorio Procissi, Fabio Vitucci Publisher: GLOBECOM.
StriD2FA Scalable Regular Expression Matching for Deep Packet Inspection Author : Xiaofei Wang, Junchen Jiang, Yi Tang,Yi Wang,Bin Liu Xiaojun Wang Publisher.
Extending Finite Automata to Efficiently Match Perl-Compatible Regular Expressions Publisher : Conference on emerging Networking EXperiments and Technologies.
Author : Sarang Dharmapurikar, John Lockwood Publisher : IEEE Journal on Selected Areas in Communications, 2006 Presenter : Jo-Ning Yu Date : 2010/12/29.
CS 203: Introduction to Formal Languages and Automata
A Fast Regular Expression Matching Engine for NIDS Applying Prediction Scheme Author: Lei Jiang, Qiong Dai, Qiu Tang, Jianlong Tan and Binxing Fang Publisher:
Parallel tree search: An algorithmic approach for multi- field packet classification Authors: Derek Pao and Cutson Liu. Publisher: Computer communications.
LaFA Lookahead Finite Automata Scalable Regular Expression Detection Authors : Masanori Bando, N. Sertac Artan, H. Jonathan Chao Masanori Bando N. Sertac.
Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection Publisher : ANCS’ 06 Author : Fang Yu, Zhifeng Chen, Yanlei Diao, T.V.
An Improved DFA for Fast Regular Expression Matching Author : Domenico Ficara 、 Stefano Giordano 、 Gregorio Procissi Fabio Vitucci 、 Gianni Antichi 、 Andrea.
Author : S. Kumar, B. Chandrasekaran, J. Turner, and G. Varghese Publisher : ANCS ‘07 Presenter : Jo-Ning Yu Date : 2011/04/20.
Overview of Previous Lesson(s) Over View  A token is a pair consisting of a token name and an optional attribute value.  A pattern is a description.
SWM: Simplified Wu-Manber for GPU- based Deep Packet Inspection Author: Lucas Vespa, Ning Weng Publisher: The 2012 International Conference on Security.
Accelerating Multi-Pattern Matching on Compressed HTTP Traffic Dr. Anat Bremler-Barr (IDC) Joint work with Yaron Koral (IDC), Infocom[2009]
Advanced Algorithms for Fast and Scalable Deep Packet Inspection Author : Sailesh Kumar 、 Jonathan Turner 、 John Williams Publisher : ANCS’06 Presenter.
Gnort: High Performance Network Intrusion Detection Using Graphics Processors Date:101/2/15 Publisher:ICS Author:Giorgos Vasiliadis, Spiros Antonatos,
JA-trie: Entropy-Based Packet Classification Author: Gianni Antichi, Christian Callegari, Andrew W. Moore, Stefano Giordano, Enrico Anastasi Conference.
Counting bloom filters for pattern matching and anti-evasion at the wire speed Author: Gianni Antichi, Domenico Ficara, Stefano Giordano, Gregorio Procissi,
2018/4/27 PiDFA : A Practical Multi-stride Regular Expression Matching Engine Based On FPGA Author: Jiajia Yang, Lei Jiang, Qiu Tang, Qiong Dai, Jianlong.
Memory COMPUTER ARCHITECTURE
A DFA with Extended Character-Set for Fast Deep Packet Inspection
Distributed Network Traffic Feature Extraction for a Real-time IDS
2018/6/26 An Energy-efficient TCAM-based Packet Classification with Decision-tree Mapping Author: Zhao Ruan, Xianfeng Li , Wenjun Li Publisher: 2013.
Challenging Cloning Related Problems with GPU-Based Algorithms
Regular Expression Matching in Reconfigurable Hardware
COSC 3340: Introduction to Theory of Computation
SigMatch Fast and Scalable Multi-Pattern Matching
Speculative Parallel Pattern Matching
Scalable Memory-Less Architecture for String Matching With FPGAs
Virtual Memory Hardware
Practical Session 9, Memory
Virtual TCAM for Data Center Switches
Multithreaded Programming
Compact DFA Structure for Multiple Regular Expressions Matching
2019/5/3 A De-compositional Approach to Regular Expression Matching for Network Security Applications Author: Eric Norige Alex Liu Presenter: Yi-Hsien.
Author: Yaron Weinsberg ,Shimrit Tzur-David ,Danny Dolev and Tal Anker
Worst-Case TCAM Rule Expansion
Virtual Memory 1 1.
Presentation transcript:

Scaling Regular Expression Matching Performance in Parallel Systems through Sampling Techniques Author: Domenico Ficara ,Gianni Antichi ,Nicola Bonelli , Andrea Di Pietro ,Stefano Giordano , Gregorio Procissi and Fabio Vitucci Publisher: IEEE Globecom , 2011 Presenter: Tsung-Lin Hsieh Date: 2012/04/11

Outline Introduction Previous work[14] Motivation and Main idea The algorithm (proposed method) Algorithm evaluation

Introdution Many works have been proposed to improve DFAs, especially in terms of memory and speed. Instead, we address another issue: (1) the scalability of DFAs to parallel systems and (2) their buffer requirements.

Introduction We propose a solution in which a number of processing units are committed to walk in parallel a DFA for the same packet. At this aim, sampling techniques on both text and regular expressions are adopted. A certain number of execution units process the same packet with a different starting offset, thus giving partial results which are then collected by a synchronization unit for a final decision.

Previous work[14] Example: the regex ab.∗cd is sampled (with θ = 2) to [ab].∗[cd] and matched against a text of 16 bytes.

Previous work[14] Regex rewriting simple string str concatenation of regular expressions a and b: ab union of regular expressions a and b: a|b the case of a star closure of a character a followed by a regex

Previous work[14] For example : S2[.*ab.*cd] = .*(a|b).*(c|d) S2[.*abcde*fgh ] = .*(ac|bd)e*(fh|g) S3[.*abcde*fgh ] = .*(ad|b|c)e*(f|g|h)

Motivation & Main idea Traditionally, each execution unit(EU) walks a different packet(per-packet parallelism). The drawback of this solution is that it may require potentially large buffer memory. Since execution time grows linearly with packet size, threads may complete packets in arbitrary order, thus requiring a reordering buffer.

Motivation & Main idea The idea is to take advantage of in–packet parallelism through sampling. basically, we make P threads (P=sampling period) access the same packet in a sampled fashion (reading a byte every P bytes). Each thread is given a different starting offset, so that P threads can cover all the bytes of a packet.

Motivation & Main idea This approach reduces the need for a reordering buffer and, in addition, shows increased memory access locality. Compared to a standard run-to-completion mode, this scheme works on P-times less packets in P-times less time: this means that data-locality is increased and packets will most likely spend all their execution time in L1 and L2 caches.

Proposed scheme The system is made up of two different stages, a first stage (the working threads) that processes all of the incoming traffic. The second one (the sync-thread which is activated when a matching has to be confirmed), which only examines the traffic which has been flagged as suspicious by the first stage and that would hopefully inspect by walking through an unsampled DFA.

Proposed scheme The scheme works by allocating P threads to a packet. We refer to such a set of threads as EU. Each thread of an EU reads bytes from the same packet through sampling, starting from a different offset, and works on a sampled DFA. sync-thread adopts an unsampled DFA which scans the packet byte per byte and hence can confirm the match.

Proposed scheme We describe regexes as a sequence of closure-separated substrings of the form: r1.∗r2.∗r3 . . .It is evident from this notation that matching a regex corresponds mainly to matching its sequence of substrings r1, r2, r3 . . . Each closure in the previous notation introduces at least a root-state in the corresponding DFA.

Proposed scheme

Proposed scheme

Algorithm evaluation Simulation: in an environment simulating modern multi-core architecture.(4-core, 2 physical threads/core, 128 KB L1 cache/core, 4MB L2 cache).

Algorithm evaluation Experimental assessment implement a real prototype of algorithm and make it process real traffic.

Algorithm evaluation