Packet Classifiers In Ternary CAMs Can Be Smaller Qunfeng Dong (University of Wisconsin-Madison) Suman Banerjee (University of Wisconsin-Madison) Jia Wang.

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

CST Computer Networks NAT CST 415 4/10/2017 CST Computer Networks.
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.
1 An Efficient, Hardware-based Multi-Hash Scheme for High Speed IP Lookup Hot Interconnects 2008 Socrates Demetriades, Michel Hanna, Sangyeun Cho and Rami.
Fast Firewall Implementation for Software and Hardware-based Routers Lili Qiu, Microsoft Research George Varghese, UCSD Subhash Suri, UCSB 9 th International.
Ultra-High Throughput Low-Power Packet Classification
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.
© 2006 Cisco Systems, Inc. All rights reserved. ICND v2.3—4-1 Managing IP Traffic with ACLs Introducing ACLs.
Efficient Multi-match Packet Classification with TCAM Fang Yu Randy H. Katz EECS Department, UC Berkeley {fyu,
Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers Author: Jing Fu, Jennifer Rexford Publisher: ACM CoNEXT 2008 Presenter:
Oct 26, 2004CS573: Network Protocols and Standards1 IP: Routing and Subnetting Network Protocols and Standards Autumn
Worst-Case TCAM Rule Expansion Ori Rottenstreich (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel)
Packet Classification on Multiple Fields Pankaj Gupta and Nick McKeown Stanford University {pankaj, September 2, 1999.
1 Energy Efficient Multi-match Packet Classification with TCAM Fang Yu
1 Range Encoding Cheng-Chien Su. 2 Outline DRES: Dynamic Range Encoding Scheme for TCAM Coprocessors  Hao Che, Zhijun Wang, Kai Zheng, Bin Liu  IEEE.
Efficient Multi-Match Packet Classification with TCAM Fang Yu
1 DRES:Dynamic Range Encoding Scheme for TCAM Coprocessors Authors: Hao Che, Zhijun Wang, Kai Zheng and Bin Liu Publisher: IEEE Transactions on Computers,
Two stage packet classification using most specific filter matching and transport level sharing Authors: M.E. Kounavis *,A. Kumar,R. Yavatkar,H. Vin Presenter:
Packet Classification George Varghese. Original Motivation: Firewalls Firewalls use packet filtering to block say ssh and force access to web and mail.
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;
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
Chapter 9 Classification And Forwarding. Outline.
1 Efficient packet classification using TCAMs Authors: Derek Pao, Yiu Keung Li and Peng Zhou Publisher: Computer Networks 2006 Present: Chen-Yu Lin Date:
Block Permutations in Boolean Space to Minimize TCAM for Packet Classification Authors: Rihua Wei, Yang Xu, H. Jonathan Chao Publisher: IEEE INFOCOM,2012.
Workpackage 3 New security algorithm design ICS-FORTH Paris, 30 th June 2008.
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.
Protocols and the TCP/IP Suite
CoPTUA: Consistent Policy Table Update Algorithm for TCAM without Locking Zhijun Wang, Hao Che, Mohan Kumar, Senior Member, IEEE, and Sajal K. Das.
Chapter 21: IP Encapsulation, Fragmentation & Reassembly
Applied Research Laboratory Edward W. Spitznagel 7 October Packet Classification for Core Routers: Is there an alternative to CAMs? Paper by: Florin.
Access Control List (ACL) W.lilakiatsakun. ACL Fundamental ► Introduction to ACLs ► How ACLs work ► Creating ACLs ► The function of a wildcard mask.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Minimizing Rulesets for TCAM Implementation.
Timothy Whelan Supervisor: Mr Barry Irwin Security and Networks Research Group Department of Computer Science Rhodes University Hardware based packet filtering.
ORange: Multi Field OpenFlow based Range Classifier Liron Schiff Tel Aviv University Yehuda Afek Tel Aviv University Anat Bremler-Barr Inter Disciplinary.
Wire Speed Packet Classification Without TCAMs ACM SIGMETRICS 2007 Qunfeng Dong (University of Wisconsin-Madison) Suman Banerjee (University of Wisconsin-Madison)
Packet Classification on Multiple Fields 참고 논문 : Pankaj Gupta and Nick McKeown SigComm 1999.
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.
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,
1. Outline Introduction Related work on packet classification Grouper Performance Analysis Empirical Evaluation Conclusions 2/42.
TASHKENT UNIVERSITY OF INFORMATION TECHNOLOGIES Lesson №18 Telecommunication software design for analyzing and control packets on the networks by using.
Chapter 9 Hardware Addressing and Frame Type Identification 1.Delivering and sending packets 2.Hardware addressing: specifying a destination 3. Broadcasting.
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.
MPLS Concepts Introducing Basic MPLS Concepts. Outline Overview What Are the Foundations of Traditional IP Routing? Basic MPLS Features Benefits of MPLS.
Workpackage 3 New security algorithm design ICS-FORTH Ipswich 19 th December 2007.
High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98.
Bit Weaving: A Non-Prefix Approach to Compressing Packet Classifiers in TCAMs Author: Chad R. Meiners, Alex X. Liu, and Eric Torng Publisher: 2012 IEEE/ACM.
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.
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.
IP Routing table compaction and sampling schemes to enhance TCAM cache performance Author: Ruirui Guo a, Jose G. Delgado-Frias Publisher: Journal of Systems.
CSE5803 Advanced Internet Protocols and Applications (13) Introduction Existing IP (v4) was developed in late 1970’s, when computer memory was about.
1 IP Routing table compaction and sampling schemes to enhance TCAM cache performance Author: Ruirui Guo, Jose G. Delgado-Frias Publisher: Journal of Systems.
DRES: Dynamic Range Encoding Scheme for TCAM Coprocessors 2008 YU-ANTL Lab Seminar June 11, 2008 JeongKi Park Advanced Networking Technology Lab. (YU-ANTL)
Author : Tzi-Cker Chiueh, Prashant Pradhan Publisher : High-Performance Computer Architecture, Presenter : Jo-Ning Yu Date : 2010/11/03.
Scalable Multi-match Packet Classification Using TCAM and SRAM Author: Yu-Chieh Cheng, Pi-Chung Wang Publisher: IEEE Transactions on Computers (2015) Presenter:
IP Routers – internal view
Transport Layer Systems Packet Classification
Implementing an OpenFlow Switch on the NetFPGA platform
Jason Klaus, Duncan Elliott Confidential
Scalable Multi-Match Packet Classification Using TCAM and SRAM
Worst-Case TCAM Rule Expansion
Presentation transcript:

Packet Classifiers In Ternary CAMs Can Be Smaller Qunfeng Dong (University of Wisconsin-Madison) Suman Banerjee (University of Wisconsin-Madison) Jia Wang (AT&T Laboratories – Research) Dheeraj Agrawal (University of Wisconsin-Madison) Ashutosh Shukla (University of Wisconsin-Madison) SIGMETRICS 2006

 Introduction  TCAM is the favoured solution for wire speed packet classification in backbone routers.  TCAM suffers size explosion on range specifications.  Previous techniques require modification to packet processors.  Motivation  Trimming rules  Expanding rules  Adding rules  Merging rules  Design  Evaluation  Summary  Future work Outline

 Packet classification [SVSW98,LS98]  Use a set of rules for finer differentiation of packets based on multiple packet header fields.  Is the foundation of many Internet functions (e.g. security, QoS, VPN, etc).  Each rule specifies a range clause on each relevant field  e.g. the source port must be in the range [5000, 65535]  Prefix, single value and wildcard are all special ranges. matches  A rule matches a packet iff every range clause is satisfied.  Objective:  For each incoming packet, find the first (i.e., highest priority) rule that matches the packet. Introduction

 TCAM is the favoured solution for packet classification.  Pure software solutions are becoming increasingly difficult as the gap between wire speeds and memory speeds keeps widening.  Unfortunately, TCAM suffers size explosion on range clauses and accounts for a significant portion of the cost of a router line card.  Each range clause can take many TCAM entries.  The total amount of TCAM entries needed is the product of the number of TCAM entries needed to represent individual range clauses. Introduction

Rule: TCAM: Field A Decision [64, 127] Deny Field A Decision 01×××××× 0

Rule: TCAM: Field A Decision [80, 127] Deny Field A Decision 0101×××× 0 011××××× 0

Fact: A range clause defined on a k-bit field may take 2k-2 TCAM entries to represent.

Rule: TCAM: Field A Decision [80, 127] Deny Field A Decision 0101×××× 0 011××××× 0

Rule: TCAM: Field A Field B Decision [80, 127] Deny Field A Field B Decision 0101×××× 0 011××××× ×××× 0 011××××× 0

Fact: The total number of TCAM entries needed to represent a rule is the product of the number of TCAM entries needed to represent its range clauses!

Fact: A rule that specifies range clauses on the 16-bit source port and destination port can take (2×16-2) × (2×16-2) = 900 TCAM entries to represent!

 Our objective  To be cost efficient, we want to reduce the amount of TCAM entries needed to implement a given rule set.  Without modifying its semantics!  Our approach is to transform the given rule set into a semantically equivalent rule set that requires less TCAM entries to represent.  Previously proposed techniques:  Represent rules in a new format (e.g., [SIGCOMM’05])  Need to modify packet processor hardware to interpret the new format.  Our techniques do not change the format of rule sets and hence do not require any hardware modification  Trimming rules  Expanding rules  Adding rules  Merging rules Our Objective & Approach

Rule: TCAM: Trimming Rules Field A Decision [96, 127] Deny [100, 255] Permit Field A Decision 011××××× ×× ×××1 0111××××1 1×××××××1 Field A Decision [96, 127] Deny [128, 255] Permit Field A Decision 011××××× 0 1×××××××1

Rule: TCAM: Expanding Rules Field A Decision [32, 79] Deny [72, 255] Permit Field A Decision 001××××× ×××× ×××1 0101××××1 011×××××1 1×××××××1 Field A Decision [32, 79] Deny [64, 255] Permit Field A Decision 001××××× ×××× 0 01××××××1 1×××××××1

Rule: TCAM: Adding Rules Field A Decision [64, 119] Deny [0, 255] Permit Field A Decision 010××××× ×××× ××× 0 ××××××××1 Field A Decision [120, 127] Permit [64, 127] Deny [0, 255] Permit Field A Decision 01111××× 1 01×××××× 0 1×××××××1

Rule: TCAM: Merging Rules Field A Decision [96, 111] Permit [64, 95] Deny [100, 127] Deny [0, 255] Permit Field A Decision 0110×××× 1 010××××× ×× ××× ×××× 0 ××××××××1 Field A Decision [96, 111] Permit [64, 127] Deny [0, 255] Permit Field A Decision 0110×××× 1 01×××××× 0 1×××××××1

Question: How to define a systematic solution?

Framework Expanding will help? NO YES Last Rule? YES NO Remove Redundancy Trim Rule Set Expand Rule Adding a rule will help? NO YES Add A Rule Merge with other rules will help? NO YES Merge Rules Get Next Rule

Last Rule? YES NO Compute the core region of each rule Trim the rule to be the minimum hypercube that encloses its core region If a range clause originally specifies a prefix, expand it to be the minimum prefix Trim Rule To preserve the semantics of the rule set To avoid unnecessary increase in the number of TCAM entries needed Core region is the part of a rule’s definition region that is not covered by higher rules or lower rules of the same color Get Next Rule

Expansion allowed? YES NO Perform a minimum expansion of the chosen range clause Expand Rule A minimum expansion of the chosen clause should lead to the largest decrease in the number of TCAM entries needed Pick a range clause to expand Any range clause can be expand? NO YES

Expand with Adding Rules

Expansion allowed? YES NO Perform a minimum expansion of the chosen range clause Expand with Adding Rules A minimum expansion of the chosen clause should lead to the largest decrease in the number of TCAM entries needed Pick a range clause to expand Any range clause can be expand? NO YES Add a rule before and expand the current rule Semantics of the rule set preserved? YES NO Roll back Number of TCAM entries of the rule reduced? YESNO

Expand with Adding/Merging Rules

Expansion allowed? YES NO Perform a minimum expansion of the chosen range clause A minimum expansion of the chosen clause should lead to the largest decrease in the number of TCAM entries needed Pick a range clause to expand Any range clause can be expand? NO YES Add a rule before and expand the current rule Semantics of the rule set preserved? NO Roll back Number of TCAM entries of the rule set reduced? YESNO YES Number of TCAM entries of the rule reduced? Remove redundancy YES Expand with Adding/Merging Rules

 Real rule sets  real rule sets from the network of a tier-1 ISP  Each rule specifies clauses on source IP, destination IP, source port, destination port and protocol type.  Action doesn’t matter here. Evaluation

Evaluation: real rule sets

 Ramdom rule sets  100 randomly generated rule sets  IP addresses  a random prefix  Protocol type  a random number  Port range  a random sub-range of [0, 65535]  Action  randomly selected from actions in real rule sets Evaluation

Evaluation: random rule sets

 Packet classification is the foundation of many Internet functions.  TCAM is the favoured solution for packet classification.  Pure software solutions are becoming increasingly difficult as the gap between wire speeds and memory speeds keeps widening.  TCAM suffers size explosion on range clauses.  TCAM accounts for a significant portion of the cost of router line cards.  We propose (a set of techniques) to define smaller but semantically equivalent rule sets.  Do not require any hardware modification.  Become even more effective with more range clauses! Summary

We have tried to compress TCAM. Question: Can we totally eliminate TCAM? Future Work

Work in progress: Wire Speed Packet Classification Without TCAM: One More Register (And A Bit of Logic) Is Enough ACM SIGCOMM 2006 Pisa, Italy 9.11 ~ 9.15 Future Work

More coming… Besides packet classification based on the standard 5-tuple, deep packet classification based on payload is another important topic of interest. Future Work

Thank you! Qunfeng Dong University of Wisconsin - Madison SIGMETRICS 2006