SAX-PAC (Scalable And eXpressive PAcket Classification)

Efficient packet classification is a core concern for network services. Traditional multi-field classification approaches, in both software and ternary content-addressable memory (TCAMs), entail tradeoffs between (memory) space and (lookup) time. TCAMs cannot efficiently represent range rules, a common class of classification rules confining values of packet fields to given ranges. The exponential space growth of TCAM entries relative to the number of fields is exacerbated when multiple fields contain ranges. In this work, we present a novel approach which identifies properties of many classifiers which can be implemented in linear space and with worst-case guaranteed logarithmic time \emph{and} allows the addition of more fields including range constraints without impacting space and time complexities. On real-life classifiers from Cisco Systems and additional classifiers from ClassBench (with real parameters), 90-95% of rules are thus handled, and the other 5-10% of rules can be stored in TCAM to be processed in parallel.

[1]  Christopher Umans The minimum equivalent DNF problem and shortest implicants , 1998, Proceedings 39th Annual Symposium on Foundations of Computer Science (Cat. No.98CB36280).

[2]  David Walker,et al.  Optimizing the "one big switch" abstraction in software-defined networks , 2013, CoNEXT.

[3]  George Varghese,et al.  Network Algorithmics-An Interdisciplinary Approach to Designing Fast Networked Devices , 2004 .

[4]  Éva Tardos,et al.  Algorithm design , 2005 .

[5]  Xin Zhao,et al.  On the Aggregatability of Router Forwarding Tables , 2010, 2010 Proceedings IEEE INFOCOM.

[6]  Isaac Keslassy,et al.  Compression for fixed-width memories , 2013, 2013 IEEE International Symposium on Information Theory.

[7]  梅迪恩·索马孙达拉姆 Memory and power efficient mechanism for fast table lookup , 2004 .

[8]  T. N. Vijaykumar,et al.  TreeCAM: decoupling updates and lookups in packet classification , 2011, CoNEXT '11.

[9]  Mohan Kumar,et al.  CoPTUA: Consistent Policy Table Update Algorithm for TCAM without locking , 2004, IEEE Transactions on Computers.

[10]  戴维·保罗·霍夫,et al.  A content addressable memory , 2007 .

[11]  Eric Torng,et al.  Bit Weaving: A Non-Prefix Approach to Compressing Packet Classifiers in TCAMs , 2012, IEEE/ACM Transactions on Networking.

[12]  Danny Hendler,et al.  Layered Interval Codes for TCAM-Based Classification , 2008, IEEE INFOCOM 2009.

[13]  Isaac Keslassy,et al.  Optimal Fast Hashing , 2009, IEEE INFOCOM 2009.

[14]  Huan Liu,et al.  Efficient mapping of range classifier into ternary-CAM , 2002, Proceedings 10th Symposium on High Performance Interconnects.

[15]  Attila Korösi,et al.  Compressing IP Forwarding Tables: Towards Entropy Bounds and Beyond , 2013, IEEE/ACM Transactions on Networking.

[16]  Bin Liu,et al.  DRES: Dynamic Range Encoding Scheme for TCAM Coprocessors , 2008, IEEE Transactions on Computers.

[17]  Mark H. Overmars,et al.  Range Searching and Point Location among Fat Objects , 1996, J. Algorithms.

[18]  Jonathan S. Turner,et al.  ClassBench: A Packet Classification Benchmark , 2005, IEEE/ACM Transactions on Networking.

[19]  Yeim-Kuan Chang,et al.  Multi-field range encoding for packet classification in TCAM , 2011, 2011 Proceedings IEEE INFOCOM.

[20]  Haoyu Song,et al.  Fast packet classification using bloom filters , 2006, 2006 Symposium on Architecture For Networking And Communications Systems.

[21]  Rami Cohen,et al.  Exact Worst Case TCAM Rule Expansion , 2013, IEEE Transactions on Computers.

[22]  T. N. Vijaykumar,et al.  EffiCuts: optimizing packet classification for memory and throughput , 2010, SIGCOMM '10.

[23]  Venkatachary Srinivasan,et al.  Packet classification using tuple space search , 1999, SIGCOMM '99.

[24]  Haim Kaplan,et al.  On finding an optimal TCAM encoding scheme for packet classification , 2013, 2013 Proceedings IEEE INFOCOM.

[25]  Tal Mizrahi,et al.  Compressing Forwarding Tables for Datacenter Scalability , 2014, IEEE Journal on Selected Areas in Communications.

[26]  George Varghese,et al.  Fast and scalable layer four switching , 1998, SIGCOMM '98.

[27]  Subhash Khot,et al.  Hardness of Minimizing and Learning DNF Expressions , 2008, 2008 49th Annual IEEE Symposium on Foundations of Computer Science.

[28]  Isaac Keslassy,et al.  Palette: Distributing tables in software-defined networks , 2013, 2013 Proceedings IEEE INFOCOM.

[29]  Lisa Hellerstein,et al.  Minimizing DNF Formulas and AC0 Circuits Given a Truth Table , 2005, Electron. Colloquium Comput. Complex..

[30]  Suman Banerjee,et al.  A smart pre-classifier to reduce power consumption of TCAMs for multi-dimensional packet classification , 2012, SIGCOMM '12.

[31]  H. Jonathan Chao,et al.  Block permutations in Boolean Space to minimize TCAM for packet classification , 2012, 2012 Proceedings IEEE INFOCOM.

[32]  Parinya Chalermsook,et al.  Maximum independent set of rectangles , 2009, SODA.

[33]  George Varghese,et al.  Packet classification using multidimensional cutting , 2003, SIGCOMM '03.

[34]  Michael Segal,et al.  Space and Speed Tradeoffs in TCAM Hierarchical Packet Classification , 2008, 2008 IEEE Sarnoff Symposium.

[35]  Haoyu Song,et al.  ABC: Adaptive Binary Cuttings for Multidimensional Packet Classification , 2013, IEEE/ACM Transactions on Networking.

[36]  Michael Mitzenmacher,et al.  BubbleSearch: A simple heuristic for improving priority-based greedy algorithms , 2006, Inf. Process. Lett..

[37]  Danny Hendler,et al.  Space-Efficient TCAM-Based Classification Using Gray Coding , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.

[38]  Patrick Th. Eugster,et al.  Towards efficient implementation of packet classifiers in SDN/OpenFlow , 2013, HotSDN '13.

[39]  Nick McKeown,et al.  Classifying Packets with Hierarchical Intelligent Cuttings , 2000, IEEE Micro.

[40]  Chad R. Meiners,et al.  All-Match Based Complete Redundancy Removal for Packet Classifiers in TCAMs , 2008, IEEE INFOCOM 2008 - The 27th Conference on Computer Communications.