Packet Classification Using Coarse-Grained Tuple Spaces

Slides:



Advertisements
Similar presentations
Router/Classifier/Firewall Tables Set of rules—(F,A)  F is a filter Source and destination addresses. Port number and protocol. Time of day.  A is an.
Advertisements

1 IP-Lookup and Packet Classification Advanced Algorithms & Data Structures Lecture Theme 08 – Part I Prof. Dr. Th. Ottmann Summer Semester 2006.
Balajee Vamanan, Gwendolyn Voskuilen, and T. N. Vijaykumar School of Electrical & Computer Engineering SIGCOMM 2010.
A Scalable and Reconfigurable Search Memory Substrate for High Throughput Packet Processing Sangyeun Cho and Rami Melhem Dept. of Computer Science University.
Network Algorithms, Lecture 4: Longest Matching Prefix Lookups George Varghese.
An On-Chip IP Address Lookup Algorithm Author: Xuehong Sun and Yiqiang Q. Zhao Publisher: IEEE TRANSACTIONS ON COMPUTERS, 2005 Presenter: Yu Hao, Tseng.
Fast Firewall Implementation for Software and Hardware-based Routers Lili Qiu, Microsoft Research George Varghese, UCSD Subhash Suri, UCSB 9 th International.
1 Fast Routing Table Lookup Based on Deterministic Multi- hashing Zhuo Huang, David Lin, Jih-Kwon Peir, Shigang Chen, S. M. Iftekharul Alam Department.
IP Routing Lookups Scalable High Speed IP Routing Lookups.
Outline Introduction Related work on packet classification Grouper Performance Empirical Evaluation Conclusions.
A Ternary Unification Framework for Optimizing TCAM-Based Packet Classification Systems Author: Eric Norige, Alex X. Liu, and Eric Torng Publisher: ANCS.
Digital Search Trees & Binary Tries Analog of radix sort to searching. Keys are binary bit strings.  Fixed length – 0110, 0010, 1010,  Variable.
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:
Multiple-key indexes Index on one attribute provides pointer to an index on the other. If V is a value of the first attribute, then the index we reach.
Fast Filter Updates for Packet Classification using TCAM Authors: Haoyu Song, Jonathan Turner. Publisher: GLOBECOM 2006, IEEE Present: Chen-Yu Lin Date:
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.
Efficient Multidimensional Packet Classification with Fast Updates Author: Yeim-Kuan Chang Publisher: IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 4, APRIL.
Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.
Parallel-Search Trie-based Scheme for Fast IP Lookup
1 Performance Improvement of Two-Dimensional Packet Classification by Filter Rephrasing Department of Computer Science and Information Engineering National.
Study of IP address lookup Schemes
1 A Fast IP Lookup Scheme for Longest-Matching Prefix Authors: Lih-Chyau Wuu, Shou-Yu Pin Reporter: Chen-Nien Tsai.
Two stage packet classification using most specific filter matching and transport level sharing Authors: M.E. Kounavis *,A. Kumar,R. Yavatkar,H. Vin Presenter:
An Efficient IP Lookup Architecture with Fast Update Using Single-Match TCAMs Author: Jinsoo Kim, Junghwan Kim Publisher: WWIC 2008 Presenter: Chen-Yu.
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
Address Lookup in IP Routers. 2 Routing Table Lookup Routing Decision Forwarding Decision Forwarding Decision Routing Table Routing Table Routing Table.
1 Efficient packet classification using TCAMs Authors: Derek Pao, Yiu Keung Li and Peng Zhou Publisher: Computer Networks 2006 Present: Chen-Yu Lin Date:
Sarang Dharmapurikar With contributions from : Praveen Krishnamurthy,
IP Address Lookup Masoud Sabaei Assistant professor
Applied Research Laboratory Edward W. Spitznagel 7 October Packet Classification for Core Routers: Is there an alternative to CAMs? Paper by: Florin.
Author: Haoyu Song, Fang Hao, Murali Kodialam, T.V. Lakshman Publisher: IEEE INFOCOM 2009 Presenter: Chin-Chung Pan Date: 2009/12/09.
Fast Packet Classification Using Bloom filters Authors: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, and John Lockwood Publisher: ANCS 2006 Present:
Packet Classification using Tuple Space Search
Applied Research Laboratory Edward W. Spitznagel 24 October Packet Classification using Extended TCAMs Edward W. Spitznagel, Jonathan S. Turner,
Balajee Vamanan and T. N. Vijaykumar School of Electrical & Computer Engineering CoNEXT 2011.
1. Outline Introduction Related work on packet classification Grouper Performance Analysis Empirical Evaluation Conclusions 2/42.
IP Address Lookup Masoud Sabaei Assistant professor
1 Power-Efficient TCAM Partitioning for IP Lookups with Incremental Updates Author: Yeim-Kuan Chang Publisher: ICOIN 2005 Presenter: Po Ting Huang Date:
1 Fast packet classification for two-dimensional conflict-free filters Department of Computer Science and Information Engineering National Cheng Kung University,
Efficient Cache Structures of IP Routers to Provide Policy-Based Services Graduate School of Engineering Osaka City University
Cross-Product Packet Classification in GNIFS based on Non-overlapping Areas and Equivalence Class Author: Mohua Zhang, Ge Li Publisher: AISS 2012 Presenter:
CS 740: Advanced Computer Networks IP Lookup and classification Supplemental material 02/05/2007.
Author: Haoyu Song, Murali Kodialam, Fang Hao and T.V. Lakshman Publisher/Conf. : IEEE International Conference on Network Protocols (ICNP), 2009 Speaker:
Packet Classification Using Multidimensional Cutting Sumeet Singh (UCSD) Florin Baboescu (UCSD) George Varghese (UCSD) Jia Wang (AT&T Labs-Research) Reviewed.
IP Routing table compaction and sampling schemes to enhance TCAM cache performance Author: Ruirui Guo a, Jose G. Delgado-Frias Publisher: Journal of Systems.
1 IP Routing table compaction and sampling schemes to enhance TCAM cache performance Author: Ruirui Guo, Jose G. Delgado-Frias Publisher: Journal of Systems.
Hierarchical packet classification using a Bloom filter and rule-priority tries Source : Computer Communications Authors : A. G. Alagu Priya 、 Hyesook.
Author : Masanori Bando and H. Jonathan Chao Publisher : INFOCOM, 2010 Presenter : Jo-Ning Yu Date : 2011/02/16.
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.
BUFFALO: Bloom Filter Forwarding Architecture for Large Organizations Minlan Yu Princeton University Joint work with Alex Fabrikant,
Scalable Multi-match Packet Classification Using TCAM and SRAM Author: Yu-Chieh Cheng, Pi-Chung Wang Publisher: IEEE Transactions on Computers (2015) Presenter:
CPS216: Data-intensive Computing Systems
Indexing Structures for Files and Physical Database Design
IP Routers – internal view
CSE7701: Research Seminar on Networking
Toward Advocacy-Free Evaluation of Packet Classification Algorithms
Transport Layer Systems Packet Classification
Bloom Filters Very fast set membership. Is x in S? False Positive
Higher Order Tries Key = Social Security Number.
A Small and Fast IP Forwarding Table Using Hashing
Scalable Multi-Match Packet Classification Using TCAM and SRAM
Publisher : TRANSACTIONS ON NETWORKING Author : Haoyu Song, Jonathan S
EMOMA- Exact Match in One Memory Access
Author: Xianghui Hu, Xinan Tang, Bei Hua Lecturer: Bo Xu
Authors: A. Rasmussen, A. Kragelund, M. Berger, H. Wessing, S. Ruepp
A SRAM-based Architecture for Trie-based IP Lookup Using FPGA
Packet Classification Using Binary Content Addressable Memory
Presentation transcript:

Packet Classification Using Coarse-Grained Tuple Spaces Haoyu Song, Jon Turner and Sarang Dharmapurikar www.arl.wustl.edu

Overview Two-dimensional packet classification problem in list of 2d filters, find first match for given address pair (1011,0111): [<101*,10*>, <10*,011*>, <1*,01*>] Limitations of current solutions fast algorithmic methods require excessive space (≥50x) TCAM has high cost per bit, significant power usage Combining cross-product and tuple-space search hybrid strategy with range of time-space tradeoff options Improving 1d lookups combining tree bitmap and Bloom filters Possible extensions

Cross-Product Method Procedure do 1d lookup on all fields combine results into lookup key in cross-product table direct lookup table or hash table Fast, but space grows as nk for n filters, k fields filter set F0: <1010*, 01*> F1: < 101*,0111*> cross product table key filter S0D0 F0 S0D1 F0 S1D0 none S1D1 F1 10100, 01110 S0D1

2D Tuple Space Search Group by prefix length Rectangle search 32 Source IP Prefix Length Destination IP Prefix Length Group by prefix length hash table per group up to 33 x 33= 1,089 groups in practice 30-100 occupied tuples Rectangle search markers to guide search at most 33 probes, often less hard to update Pruned tuple space search 1d search on src/dest fields find prefix lengths that match src/dest fields of packet search intersecting tuples if ≤k matching prefixes, at most k2 probes

Coarse-Grained Tuple Space Select coarse-grained partition of tuple space Build cross-product table per sub-space Search procedure 1d lookups for LPM probe each subspace terminate early if possible Pruning identify candidate sub-spaces during 1d lookup probe selected sub-spaces Space/time tradeoff 32 Source IP Prefix Length Destination IP Prefix Length

Performance of Basic Algorithm Equal size divisions of 2d tuple space Ratio of cross-products to filter set size 2x2 partition brings space usage to 2x minimum maximum of four probes required compared to 30-90 for simple tuple space search Pruning of limited use for filter sets of size <104

Performance of Best Configurations 2x 3x 4x

Alternate Partitioning Approaches 32 Source IP Prefix Length Destination IP Prefix Length Arbitrary sub-spaces are possible potential for fewer regions with good space efficiency Preliminary results mixed may be useful for smaller filter sets More evaluation needed Note: filters of form <prefix,*> and <*,prefix> stored in 1d data structures

Fast 1d Lookups Tree Bitmap Hashing + Bloom Filters Multibit trie 110 1011 1 1 0 1 Bloom Filters 1 0 1 1 0 0,1 110,111, 000,001 10100,10101, 10110,10111 1 3 5 off-chip hash tables 1 Multibit trie Co-located children Bitmaps for prefix nodes subtree presence 4 bit stride implies 8 memory accesses Expand prefixes to “standard” lengths Off-chip hash table per length On-chip Bloom filters to avoid unproductive probes Large space requirements for good worst-case performance

Fast and Compact 1d Lookups Bloom filters 1 0 1 0 1 1 0 1 2 4 subtree hash tables 1 1 Insert tree bitmap subtree roots into off-chip hash tables and on-chip Bloom filters Lookup prefix of subtree roots in Bloom filters if match on length k and all shorter lengths, probe off-chip table for length k Reduction in on-chip memory for Bloom filters shape-shifting trie yields further space reduction

1d Lookup Performance 200K IPv4 prefixes 5 bit stride for tree bitmap 8 bit on-chip “root table” 4 Bloom filters 1 BF entry for every 2 prefixes 1 off-chip probes (4 incl. FP) 2 Bloom filters 1 BF entry for every 6 prefixes 2 off-chip probes (4 incl. FP)

Practical Configuration Configure 1d lookups for 1 off-chip probe each (excluding false positives) about 5 bits per prefix for Bloom filters with low FP rate Record <prefix,*> and <*,prefix> filters in 1d lookup data structures also proposed in recent paper by Kounavis, et. al. Divide remaining filters among four subspaces approximately 2 off-chip hash table entries per filter at most four probes With single QDR SRAM at 200 MHz, 32 bit word size can do 200 million probes per second about 33 million packets/second 40 byte packets at 10 Gb/s

Possible Extensions More extensive evaluation scaling to larger filter sets – 100-200K filters integrated evaluation of 1d and 2d lookups systematic evaluation of alternate partitioning strategies Alternate representations of filter sub-spaces any filter set data structure is candidate using decision trees, can skip 1d lookups Generalization to more dimensions handling fields with ranges (for port numbers) coarse-grained grouping of tuple-spaces defined on “nesting level” can we beat TCAM?