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:

Slides:



Advertisements
Similar presentations
A Search Memory Substrate for High Throughput and Low Power Packet Processing Sangyeun Cho, Michel Hanna and Rami Melhem Dept. of Computer Science University.
Advertisements

Author : Xinming Chen,Kailin Ge,Zhen Chen and Jun Li Publisher : ANCS, 2011 Presenter : Tsung-Lin Hsieh Date : 2011/12/14 1.
Authors: Wei Lin, Bin Liu Publisher: ICPADS, 2008 (IEEE International Conference on Parallel and Distributed Systems) Presenter: Chia-Yi, Chu Date: 2014/03/05.
A Scalable and Reconfigurable Search Memory Substrate for High Throughput Packet Processing Sangyeun Cho and Rami Melhem Dept. of Computer Science University.
An On-Chip IP Address Lookup Algorithm Author: Xuehong Sun and Yiqiang Q. Zhao Publisher: IEEE TRANSACTIONS ON COMPUTERS, 2005 Presenter: Yu Hao, Tseng.
1 An Efficient, Hardware-based Multi-Hash Scheme for High Speed IP Lookup Hot Interconnects 2008 Socrates Demetriades, Michel Hanna, Sangyeun Cho and Rami.
Low Power TCAM Forwarding Engine for IP Packets Authors: Alireza Mahini, Reza Berangi, Seyedeh Fatemeh and Hamidreza Mahini Presenter: Yi-Sheng, Lin (
An Efficient IP Address Lookup Algorithm Using a Priority Trie Authors: Hyesook Lim and Ju Hyoung Mun Presenter: Yi-Sheng, Lin ( 林意勝 ) Date: Mar. 11, 2008.
IP Address Lookup for Internet Routers Using Balanced Binary Search with Prefix Vector Author: Hyesook Lim, Hyeong-gee Kim, Changhoon Publisher: IEEE TRANSACTIONS.
1 MIPS Extension for a TCAM Based Parallel Architecture for Fast IP Lookup Author: Oğuzhan ERDEM Cüneyt F. BAZLAMAÇCI Publisher: ISCIS 2009 Presenter:
1 Searching Very Large Routing Tables in Wide Embedded Memory Author: Jan van Lunteren Publisher: GLOBECOM 2001 Presenter: Han-Chen Chen Date: 2010/01/06.
1 A Tree Based Router Search Engine Architecture With Single Port Memories Author: Baboescu, F.Baboescu, F. Tullsen, D.M. Rosu, G. Singh, S. Tullsen, D.M.Rosu,
Power Efficient IP Lookup with Supernode Caching Lu Peng, Wencheng Lu*, and Lide Duan Dept. of Electrical & Computer Engineering Louisiana State University.
Deterministic Memory- Efficient String Matching Algorithms for Intrusion Detection Nathan Tuck, Timothy Sherwood, Brad Calder, George Varghese Department.
Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers Author: Jing Fu, Jennifer Rexford Publisher: ACM CoNEXT 2008 Presenter:
1 A Novel Scalable IPv6 Lookup Scheme Using Compressed Pipelined Tries Author: Michel Hanna, Sangyeun Cho, and Rami Melhem Publisher: NETWORKING 2011 Presenter:
Efficient Multidimensional Packet Classification with Fast Updates Author: Yeim-Kuan Chang Publisher: IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 4, APRIL.
Parallel-Search Trie-based Scheme for Fast IP Lookup
Performance Evaluation of IPv6 Packet Classification with Caching Author: Kai-Yuan Ho, Yaw-Chung Chen Publisher: ChinaCom 2008 Presenter: Chen-Yu Chaug.
1 Regular expression matching with input compression : a hardware design for use within network intrusion detection systems Department of Computer Science.
Pipelined Architecture For Multi-String Match Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C.
Study of IP address lookup Schemes
1 Gigabit Rate Multiple- Pattern Matching with TCAM Fang Yu Randy H. Katz T. V. Lakshman
1 A Fast IP Lookup Scheme for Longest-Matching Prefix Authors: Lih-Chyau Wuu, Shou-Yu Pin Reporter: Chen-Nien Tsai.
An Efficient IP Lookup Architecture with Fast Update Using Single-Match TCAMs Author: Jinsoo Kim, Junghwan Kim Publisher: WWIC 2008 Presenter: Chen-Yu.
1 HEXA: Compact Data Structures or Faster Packet Processing Author: Sailesh Kumar, Jonathan Turner, Patrick Crowley, Michael Mitzenmacher. Publisher: ICNP.
1 Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection Department of Computer Science and Information Engineering National.
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
1 Efficient packet classification using TCAMs Authors: Derek Pao, Yiu Keung Li and Peng Zhou Publisher: Computer Networks 2006 Present: Chen-Yu Lin Date:
1 Route Table Partitioning and Load Balancing for Parallel Searching with TCAMs Department of Computer Science and Information Engineering National Cheng.
 Author: Tsern-Huei Lee  Publisher: 2009 IEEE Transation on Computers  Presenter: Yuen-Shuo Li  Date: 2013/09/18 1.
IP Address Lookup Masoud Sabaei Assistant professor
Authors: Yi Wang, Tian Pan, Zhian Mi, Huichen Dai, Xiaoyu Guo, Ting Zhang, Bin Liu, and Qunfeng Dong Publisher: INFOCOM 2013 mini Presenter: Chai-Yi Chu.
LayeredTrees: Most Specific Prefix based Pipelined Design for On-Chip IP Address Lookups Author: Yeim-Kuau Chang, Fang-Chen Kuo, Han-Jhen Guo and Cheng-Chien.
Scalable Name Lookup in NDN Using Effective Name Component Encoding
Data : The Small Forwarding Table(SFT), In general, The small forwarding table is the compressed version of a trie. Since SFT organizes.
An Improved Algorithm to Accelerate Regular Expression Evaluation Author: Michela Becchi, Patrick Crowley Publisher: 3rd ACM/IEEE Symposium on Architecture.
Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection Authors: Fang Yu, Zhifeng Chen, Yanlei Diao, T. V. Lakshman, Randy H.
TFA : A Tunable Finite Automaton for Regular Expression Matching Author: Yang Xu, Junchen Jiang, Rihua Wei, Tang Song and H. Jonathan Chao Publisher: Technical.
Fast Packet Classification Using Bloom filters Authors: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, and John Lockwood Publisher: ANCS 2006 Present:
Towards a Billion Routing Lookups per Second in Software  Author: Marko Zec, Luigi, Rizzo Miljenko Mikuc  Publisher: SIGCOMM Computer Communication Review,
Multi-Field Range Encoding for Packet Classification in TCAM Author: Yeim-Kuan Chang, Chun-I Lee and Cheng-Chien Su Publisher: INFOCOM 2011 Presenter:
An Efficient Regular Expressions Compression Algorithm From A New Perspective  Author: Tingwen Liu, Yifu Yang, Yanbing Liu, Yong Sun, Li Guo  Publisher:
Parallelization and Characterization of Pattern Matching using GPUs Author: Giorgos Vasiliadis 、 Michalis Polychronakis 、 Sotiris Ioannidis Publisher:
1 Power-Efficient TCAM Partitioning for IP Lookups with Incremental Updates Author: Yeim-Kuan Chang Publisher: ICOIN 2005 Presenter: Po Ting Huang Date:
A Small IP Forwarding Table Using Hashing Yeim-Kuan Chang and Wen-Hsin Cheng Dept. of Computer Science and Information Engineering National Cheng Kung.
PARALLEL-SEARCH TRIE- BASED SCHEME FOR FAST IP LOOKUP Author: Roberto Rojas-Cessa, Lakshmi Ramesh, Ziqian Dong, Lin Cai Nirwan Ansari Publisher: IEEE GLOBECOM.
TCAM –BASED REGULAR EXPRESSION MATCHING SOLUTION IN NETWORK Phase-I Review Supervised By, Presented By, MRS. SHARMILA,M.E., M.ARULMOZHI, AP/CSE.
A Dynamic Longest Prefix Matching Content Addressable Memory for IP Routing Author: Satendra Kumar Maurya, Lawrence T. Clark Publisher: IEEE TRANSACTIONS.
Memory-Efficient IPv4/v6 Lookup on FPGAs Using Distance-Bounded Path Compression Author: Hoang Le, Weirong Jiang and Viktor K. Prasanna Publisher: IEEE.
Author : Sarang Dharmapurikar, John Lockwood Publisher : IEEE Journal on Selected Areas in Communications, 2006 Presenter : Jo-Ning Yu Date : 2010/12/29.
Cross-Product Packet Classification in GNIFS based on Non-overlapping Areas and Equivalence Class Author: Mohua Zhang, Ge Li Publisher: AISS 2012 Presenter:
Author : Yang Xu, Lei Ma, Zhaobo Liu, H. Jonathan Chao Publisher : ANCS 2011 Presenter : Jo-Ning Yu Date : 2011/12/28.
TFA: A Tunable Finite Automaton for Regular Expression Matching Author: Yang Xu, Junchen Jiang, Rihua Wei, Yang Song and H. Jonathan Chao Publisher: ACM/IEEE.
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.
Fast and Memory-Efficient Regular Expression Matching for Deep Packet Inspection Publisher : ANCS’ 06 Author : Fang Yu, Zhifeng Chen, Yanlei Diao, T.V.
A NOVEL LEVEL-BASED IPV6 ROUTING LOOKUP ALGORITHM Author: Xiaohong Huang, Xiaoyu Zhao, Guofeng Zhao, Wenjian Jiang, Dongqu Zheng, Qiong Sun and Yan Ma.
Gnort: High Performance Network Intrusion Detection Using Graphics Processors Date:101/2/15 Publisher:ICS Author:Giorgos Vasiliadis, Spiros Antonatos,
Ofir Luzon Supervisor: Prof. Michael Segal Longest Prefix Match For IP Lookup.
Packet Classification Using Multi- Iteration RFC Author: Chun-Hui Tsai, Hung-Mao Chu, Pi-Chung Wang Publisher: 2013 IEEE 37th Annual Computer Software.
IP Address Lookup Masoud Sabaei Assistant professor Computer Engineering and Information Technology Department, Amirkabir University of Technology.
Statistical Optimal Hash-based Longest Prefix Match
Parallel Processing Priority Trie-based IP Lookup Approach
Scalable Memory-Less Architecture for String Matching With FPGAs
Authors: Sieteng Soh, Lely Hiryanto and Surech
A Small and Fast IP Forwarding Table Using Hashing
Compact DFA Structure for Multiple Regular Expressions Matching
Authors: A. Rasmussen, A. Kragelund, M. Berger, H. Wessing, S. Ruepp
MEET-IP Memory and Energy Efficient TCAM-based IP Lookup
Presentation transcript:

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: IEEE GLOBECOM, 2007 Presenter: Chen – Yu Lin Date: Aug, 4, 2008

2 Outline Introduction String matching as LPM (Longest Prefix Matching) Evaluation and analysis

3 Introduction (1/2) Deep packet content inspection is one of the most significant challenges and important issues to provide security service in high speed network. Boyer-Moore algorithm has the best search performance amount current well-known single pattern matching algorithm. Aho-Corasick and Wu-Manber are the two most well-known multiple- pattern matching algorithm.

4 Introduction (2/2) A novel scheme, “String Matching as Longest Prefix Matching”, is presented for applying the existing layer-3 LPM techniques of IP lookup to the layer-7 packet content inspection. In this paper, we show that IP lookup can be applied to the content inspection by employing the analogy between IP lookup and automaton-based string matching algorithms.

5 String Matching as LPM (1/11) The proposed model for performing string matching by LPM consists of two stages. 1. State transition by LPM-based table lookup. 2. Searches the pattern ID if the output of the first stage is an accept state. The fundamentality of all kinds of FSA operations is based on state transitions. Ascii code (u=8) Snort 2.4 patterns is (v=16) Input symbol : a Current state : b Index = { a:b } 8 16 a b

6 String Matching as LPM (2/11) The index is used to lookup the corresponding next state in the state table. The major job of the 2 nd stage, pattern search, is to determine whether the output state of state table lookup is an accepting state or not. If it is, then find the matched pattern ID. The state table in state table lookup stage can be represented as a state transition matrix as follows: e (x,y) : next state when current state y receives the input symbol x

7 String Matching as LPM (3/11) An IP lookup algorithm : Multibit trie It segments the 32bit IP address a.b.c.d into two parts: a.b.c & d The concept of this IP lookup algorithm can be adopted straightforwardly to use 24 bits as the index in our proposal. The original 2 24 elements in the automaton matrix can be rearranged as follows: Determine the next state

8 String Matching as LPM (4/11) We straightforwardly assume the combination of the current state and input symbol to be the index and determine the next state using directly-lookup mechanism. The next state and Index are seen as the next hop and IP address in LPM,respectively. Definitions: Index (x,y) = { w 23, w 22, …, w 15, …, w 0 } There are two ways to design the data structure of the state table: State-wise prefix : { v 15, …, v 0, u 7, …, u 0 } This design is suitable for the case when M is an NFA. Symbol-wise prefix : {u 7, …, u 0, v 15, …, v 0 }

9 String Matching as LPM (5/11) Nevertheless, it is interesting to see that when M is a DFA, for each symbol x, most of e (x,y) have the same next state for different current state y. Magic state of x (denoted as ms(x)).

10 String Matching as LPM (6/11) This provides the opportunity to aggregate many consecutive entries into one entry with shorter prefix length. For example: u=2, v=3, and e (x,y-1) = e (x,y) Assume that x = 3(11), y = 5(101), then we have e (11,100) = e (11,101) In other words, the 28 th (11100) and 29 th (11101) entry of state table can be merged into one entry with prefix 1110*. This symbol-wise prefix is the primary key that enables the state table lookup to be processed by using the LPM lookup algorithm.

11 String Matching as LPM (7/11) When u = 8 and v = 16, for the matrix M constructed by the Snort 2.4 patterns, the number of entries is dramatically reduced to from 16-million(2 24 ) entries when the symbol-wise prefix is employed, requiring only 3.5% of original number of entries.

12 String Matching as LPM (8/11) The magic state feature can be further applied to the symbol-wise prefix to reduce the prefix length. In matrix M, if e (x,y) = ms(x), the corresponding Index (x,y) will be transformed to Index ’ (x,y) = { w 23, w 22, …, w 16, *, *,…,* } More precisely, all the entries with the next state equals to the magic state can be merged into one symbol-wise prefix with a length of 8.

13 String Matching as LPM (9/11) With the magic state, the total number of prefix entries decreases to , and the total number of the lookup table entries is dramatically reduced to only 1.5% (273k / 16-million).

14 String Matching as LPM (10/11) [12] presented a data structure for forwarding table named Lulea algorithm designed for fast routing lookups. By ingenious design, it enables the IP routing table to be compressed for storing in the cache of a processor through three elegant structures: Code word array Base index array Maptable In Lulea, the routing prefix is segmented into three levels: One 16-bit level. Two 8-bit levels.

15 String Matching as LPM (11/11) When precessing the next state lookup: Use first 8 bits of Index to decide which code word array and base index array are needed for the lookup. Then, execute level-1 of the Lulea algorithm with the last 16 bits to obtain the next state value.

16 Evaluation and analysis E m (MB) : memory size E t (Mbps) : throughput E : overall efficiency [16] [12]