© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Minimizing Rulesets for TCAM Implementation.

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

Multi-dimensional Packet Classification on FPGA: 100Gbps and Beyond
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.
Nanxi Kang Princeton University
Fast Firewall Implementation for Software and Hardware-based Routers Lili Qiu, Microsoft Research George Varghese, UCSD Subhash Suri, UCSB 9 th International.
Bio Michel Hanna M.S. in E.E., Cairo University, Egypt B.S. in E.E., Cairo University at Fayoum, Egypt Currently is a Ph.D. Student in Computer Engineering.
A Fast and Compact Method for Unveiling Significant Patterns in High-Speed Networks Tian Bu 1, Jin Cao 1, Aiyou Chen 1, Patrick P. C. Lee 2 Bell Labs,
Incremental Consistent Updates Naga Praveen Katta Jennifer Rexford, David Walker Princeton University.
A Ternary Unification Framework for Optimizing TCAM-Based Packet Classification Systems Author: Eric Norige, Alex X. Liu, and Eric Torng Publisher: ANCS.
1 TCAM Razor: A Systematic Approach Towards Minimizing Packet Classifiers in TCAMs Department of Computer Science and Information Engineering National.
ClassBench: A Packet Classification Benchmark
Nick McKeown CS244 Lecture 6 Packet Switches. What you said The very premise of the paper was a bit of an eye- opener for me, for previously I had never.
On the Code Length of TCAM Coding Schemes Ori Rottenstreich (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel) 1.
Worst-Case TCAM Rule Expansion Ori Rottenstreich (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel)
CS 268: Lectures 13/14 (Route Lookup and Packet Classification) Ion Stoica April 1/3, 2002.
Efficient Multi-Match Packet Classification with TCAM Fang Yu
1 Energy Efficient Packet Classification Hardware Accelerator Alan Kennedy, Xiaojun Wang HDL Lab, School of Electronic Engineering, Dublin City University.
ENGIN112 L13: Combinational Design Procedure October 1, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 13 Combinational Design Procedure.
CS 268: Route Lookup and Packet Classification
Algorithms for Advanced Packet Classification with TCAMs Karthik Lakshminarayanan UC Berkeley Joint work with Anand Rangarajan and Srinivasan Venkatachary.
1 Wire Speed Packet Classification Without TCAMs: A Few More Registers (And A Bit of Logic) Are Enough Author: Qunfeng Dong, Suman Banerjee, Jia Wang, Dheeraj.
EaseCAM: An Energy And Storage Efficient TCAM-based IP-Lookup Architecture Rabi Mahapatra Texas A&M University;
CS 151 Digital Systems Design Lecture 13 Combinational Design Procedure.
Worst-Case TCAM Rule Expansion Ori Rottenstreich (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel)
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
UCSC 1 Aman ShaikhICNP 2003 An Efficient Algorithm for OSPF Subnet Aggregation ICNP 2003 Aman Shaikh Dongmei Wang, Guangzhi Li, Jennifer Yates, Charles.
Block Permutations in Boolean Space to Minimize TCAM for Packet Classification Authors: Rihua Wei, Yang Xu, H. Jonathan Chao Publisher: IEEE INFOCOM,2012.
ECE 526 – Network Processing Systems Design Network Processor Architecture and Scalability Chapter 13,14: D. E. Comer.
PEDS: Parallel Error Detection Scheme for TCAM Devices David Hay, Politecnico di Torino Joint work with Anat Bremler Barr (IDC, Israel), Danny Hendler.
Decision Trees & the Iterative Dichotomiser 3 (ID3) Algorithm David Ramos CS 157B, Section 1 May 4, 2006.
GLOBECOM (Global Communications Conference), 2012
ORange: Multi Field OpenFlow based Range Classifier Liron Schiff Tel Aviv University Yehuda Afek Tel Aviv University Anat Bremler-Barr Inter Disciplinary.
2-Level Minimization Classic Problem in Switching Theory Tabulation Method Transformed to “Set Covering Problem” “Set Covering Problem” is Intractable.
Wire Speed Packet Classification Without TCAMs ACM SIGMETRICS 2007 Qunfeng Dong (University of Wisconsin-Madison) Suman Banerjee (University of Wisconsin-Madison)
Firewall Fingerprinting Amir R. Khakpour 1, Joshua W. Hulst 1, Zhihui Ge 2, Alex X. Liu 1, Dan Pei 2, Jia Wang 2 1 Michigan State University 2 AT&T Labs.
Packet Classifiers In Ternary CAMs Can Be Smaller Qunfeng Dong (University of Wisconsin-Madison) Suman Banerjee (University of Wisconsin-Madison) Jia Wang.
Palette: Distributing Tables in Software-Defined Networks Yossi Kanizo (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel) and David Hay.
Multi-Field Range Encoding for Packet Classification in TCAM Author: Yeim-Kuan Chang, Chun-I Lee and Cheng-Chien Su Publisher: INFOCOM 2011 Presenter:
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.
On Finding an Optimal TCAM Encoding Scheme for Packet Classification Ori Rottenstreich (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel)
StrideBV: Single chip 400G+ packet classification Author: Thilan Ganegedara, Viktor K. Prasanna Publisher: HPSR 2012 Presenter: Chun-Sheng Hsueh Date:
A Smart Pre-Classifier to Reduce Power Consumption of TCAMs for Multi-dimensional Packet Classification Yadi Ma, Suman Banerjee University of Wisconsin-Madison.
Workpackage 3 New security algorithm design ICS-FORTH Ipswich 19 th December 2007.
TCAM –BASED REGULAR EXPRESSION MATCHING SOLUTION IN NETWORK Phase-I Review Supervised By, Presented By, MRS. SHARMILA,M.E., M.ARULMOZHI, AP/CSE.
Performance Analysis of Packet Classification Algorithms on Network Processors Deepa Srinivasan, IBM Corporation Wu-chang Feng, Portland State University.
High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98.
CS 740: Advanced Computer Networks IP Lookup and classification Supplemental material 02/05/2007.
Department of Computer Sciences The University of Texas at Austin Complete Redundancy Detection in Firewalls Alex X. Liu Department of Computer Sciences.
Intel Slide 1 A Comparative Study of Arbitration Algorithms for the Alpha Pipelined Router Shubu Mukherjee*, Federico Silla !, Peter Bannon $, Joel.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 6: January 26, 2004 Sequential Optimization (FSM Encoding)
1 Bit Weaving: A Non-Prefix Approach to Compressing Packet Classifiers in TCAMs Author: Chad R. Meiners, Alex X. Liu, and Eric Torng Publisher: IEEE/ACM.
Packet Classification Using Multidimensional Cutting Sumeet Singh (UCSD) Florin Baboescu (UCSD) George Varghese (UCSD) Jia Wang (AT&T Labs-Research) Reviewed.
On-Chip Logic Minimization Roman Lysecky & Frank Vahid* Department of Computer Science and Engineering University of California, Riverside *Also with the.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 17: March 11, 2002 Sequential Optimization (FSM Encoding)
1 Space-Efficient TCAM-based Classification Using Gray Coding Authors: Anat Bremler-Barr and Danny Hendler Publisher: IEEE INFOCOM 2007 Present: Chen-Yu.
Author : Lynn Choi, Hyogon Kim, Sunil Kim, Moon Hae Kim Publisher/Conf : IEEE/ACM TRANSACTIONS ON NETWORKING Speaker : De yu Chen Data :
IP Address Lookup Masoud Sabaei Assistant professor Computer Engineering and Information Technology Department, Amirkabir University of Technology.
scheduling for local-area networks”
Finite state machine optimization
Finite state machine optimization
IP Routers – internal view
Chapter 4 Simplification of Boolean Functions Karnaugh Maps
CS 31006: Computer Networks – The Routers
Scalable Multi-Match Packet Classification Using TCAM and SRAM
Worst-Case TCAM Rule Expansion
Authors: Ding-Yuan Lee, Ching-Che Wang, An-Yeu Wu Publisher: 2019 VLSI
Packet Classification Using Binary Content Addressable Memory
Presentation transcript:

© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Minimizing Rulesets for TCAM Implementation Presenter: Praveen Yalagandula In collaboration with Rick McGeer HP Labs, Palo Alto, CA

2 Packet Classification A typical task in most network appliances −Firewalls, switches, routers, etc. Definition −Classify packets into different buckets E.g., dstport=80 (web-traffic), ether-type=0x8906 (FCoE) −Apply different actions to packets in different buffers E.g., Allow, Deny, Deny-with-log, High-priority-queue Used for −Access Control Lists −QoS enforcement

3 Ternary Content Addressable Memory XXX Pattern Action Deny Forward ASIC to perform classification at line rates Matches a packet header in parallel against all entires Applies first matching entry’s action to the packet X : Don’t care XXXXXXX Deny-log …… Packet header

4 Problem: Large Rulesets & Range Rules TCAMs are expensive, space-hungry, and power-hungry Large rulesets & rules with ranges  Need large TCAMs −Ranges are common −A single rule with ranges can use up multiple entries E.g., rule 1 < src-port, dst-port < needs 900 entries!! If all rules do not fit into TCAM, then −Some packets need to be diverted to software  substantial reduction in throughput Switch vendors often receive several customer requests for dealing with such rulesets

5 Ruleset Minimization Given a ruleset, find a minimal set of TCAM entries that implement the ruleset 0-6: Deny * : Accept 0XX: Deny 10X: Deny 110: Deny XXX: Accept 111: Accept XXX : Deny Input Ruleset Direct Expansion into TCAM entries Optimized TCAM Entries 0: Deny 2: Deny *: Accept 000: Deny 010: Deny XXX: Accept 0X0: Deny XXX: Accept

6 Previous Research Mostly heuristics based on observed patterns Targeting rules with ranges −Expanding/Trimming ranges [Dong et al. SIGMETRICS’06] −Range Encoding [Liu et al. HotInterconnects’02] [Lakshminarayanan et al. SIGCOMM’05] Decision trees on header fields −TCAM Razor [Mieners et al. ICNP’07]

7 Our Approach: Leverage Boolean Logic Minimization Logic Minimization (LM) −Given a set of Boolean cubes (n-dimensions) −Find a minimal set of cubes that are equivalent to the input −Logic Minimization has been studied extensively A major research topic in VLSI CAD field Several heuristics and tools available However, straightforward LM misses TCAM’s first-match feature

8 LM misses TCAM’s First-Match Rule wx yz A A A A A D D D D D D A --- D A : Allow D : Deny --- : Don’t Care A = y’z’ + wy’ + x’y’ D = y + w’xz LM: 5 cubes 01X1 : Deny (w’xz) XX0X : Allow (y’) XXXX : Deny (1) TCAM: 3 entries ---

9 Our Contributions Formulated TCAM ruleset minimization problem in terms of LM −Minimal Sequential Cover problem Proposed an algorithm and proved its optimality Algorithm is exponential in computational complexity Derived heuristics based on the optimal algorithm Analyzed several artificial and two real rulesets −Avg. reduction in artifical rulesets: 42% −Reduction in real rulesets: 72% and 49%

10 Steps Input ruleset IndividualTa rget Functions Step 1 Minimum Sequential Cover Step 2

11 Converting input to target functions The ordering is significant in the input rulesets too Accept = C 1 Deny = C 2 Accept = C 1 Deny = C 1 ’C 2 C 1 : Accept C 2 : Deny Input Ruleset Boolean Functions C1C1 C2C2 Function F 1 associated with rule 1 Function F 2 associated with rule 2

12 Converting input to target functions (contd.) The ordering is significant in the input rulesets too Accept = C 1 + C 2 + C 3 ’C 4 Deny = C 1 ’C 2 ’C 3 + C 1 ’C 2 ’C 4 ’C 5 C 1 : Accept C 2 : Accept C 3 : Deny C 4 : Accept C 5 : Deny Input Ruleset Functions for rules F 1 = C 1 F 2 = F 1 ’C 2 F 3 = F 1 ’F 2 ’C 3 F 4 = F 1 ’F 2 ’F 3 ’C 4 F 5 = F 1 ’F 2 ’F 3 ’F 4 ’C 5 Accept = F 1 + F 2 + F 4 Deny = F 3 + F 5 Target functions Simplify using: x+x’y = x+y x+xy = x

13 Minimal Sequential Cover Problem Given: a set of target functions Sequential Cover: a sequence of tuples that implement the target functions in TCAM Minimal Sequential Cover: a minimal length sequential cover

14 Exact Solution Recursive procedure over all prime implicants for all functions We prove this is optimal Above is exponential in complexity

15 Heuristics for PERMIT/DENY rulesets PERMIT/DENY rulesets −Only PERMIT rules with an implicit DENY rule at the end −Common in the set of rulesets we have seen Heuristic 1: −Apply Logic Minimization (LM) only on PERMIT cubes Heuristic 2: −Generate DENY Cubes −For each DENY cube, run LM on PERMIT cubes with that deny cube as a don’t-care −Pick DENY cubes that reduce PERMIT cubes −Return those DENY cubes followed by the reduced set of PERMIT cubes Heuristic 3: −Reduce the set of DENY cubes tried in Heuristic 2 through quantification −See paper for details

16 Results Synthetic rulesets −Generated using ClassBench tool (From WU, St.Louis) Two real firewall rulesets −HP Palo Alto firewall −Firewall ruleset from a customer of ProCurve Avg Reduction: 41.6%

17 Further Steps Design a web service to provide our optimization as a service −Customers upload their rules −Our service computes a minimized ruleset −Customers apply the new ruleset in their network appliance Explore more heuristics for further reduction −Deal more than two actions −Deal incremental updates to rulesets

18 Q & A