General ternary bit strings on commodity longest-prefix-match infrastructures

Ternary Content-Addressable Memory (tcam) is a powerful tool to represent network services with line-rate lookup time. There are various software-based approaches to represent multi-field packet classifiers. Unfortunately, all of them either require exponential memory or apply additional constraints on field representations (e.g, prefixes or exact values) to have line-rate lookup time. In this work, we propose alternatives to tcam and introduce a novel approach to represent packet classifiers based on ternary bit strings (without constraining field representation) on commodity longest-prefix-match (lpm) infrastructures. These representations are built on a novel property, prefix reorderability, that defines how to transform an ordered set of ternary bit strings to prefixes with lpm priorities in linear memory. Our results are supported by evaluations on large-scale packet classifiers with real parameters from ClassBench; moreover, we have developed a prototype in P4 to support these types of transformations.

[1]  R. P. Dilworth,et al.  A DECOMPOSITION THEOREM FOR PARTIALLY ORDERED SETS , 1950 .

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

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

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

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

[6]  Kirill Kogan,et al.  How to represent IPv6 forwarding tables on IPv4 or MPLS dataplanes , 2016, 2016 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS).

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

[8]  Brian A. Davey,et al.  An Introduction to Lattices and Order , 1989 .

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

[10]  Danny Hendler,et al.  Space-Efficient TCAM-Based Classification Using Gray Coding , 2007, IEEE Transactions on Computers.

[11]  Timothy Sherwood,et al.  Modeling TCAM power for next generation network devices , 2006, 2006 IEEE International Symposium on Performance Analysis of Systems and Software.

[12]  Patrick Th. Eugster,et al.  Strategies for Mitigating TCAM Space Bottlenecks , 2014, 2014 IEEE 22nd Annual Symposium on High-Performance Interconnects.

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

[14]  D. R. Fulkerson Note on Dilworth’s decomposition theorem for partially ordered sets , 1956 .

[15]  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.

[16]  Attila Korösi,et al.  Compressing IP Forwarding Tables: Realizing Information-Theoretical Space Bounds and Fast Lookups Simultaneously , 2014, 2014 IEEE 22nd International Conference on Network Protocols.

[17]  Min Chen,et al.  Chain-Based DFA Deflation for Fast and Scalable Regular Expression Matching Using TCAM , 2011, 2011 ACM/IEEE Seventh Symposium on Architectures for Networking and Communications Systems.

[18]  Eric Torng,et al.  Topological Transformation Approaches to TCAM-Based Packet Classification , 2011, IEEE/ACM Transactions on Networking.

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

[20]  David E. Taylor Survey and taxonomy of packet classification techniques , 2005, CSUR.

[21]  Eric Torng,et al.  Fast Regular Expression Matching Using Small TCAM , 2014, IEEE/ACM Transactions on Networking.

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

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

[24]  George Varghese,et al.  Scalable packet classification , 2001, SIGCOMM 2001.

[25]  Nick McKeown,et al.  Packet classification on multiple fields , 1999, SIGCOMM '99.

[26]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[27]  Patrick Th. Eugster,et al.  Exploiting Order Independence for Scalable and Expressive Packet Classification , 2016, IEEE/ACM Transactions on Networking.

[28]  Dafang Zhang,et al.  Scalable TCAM-based regular expression matching with compressed finite automata , 2013, Architectures for Networking and Communications Systems.

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

[30]  Patrick Th. Eugster,et al.  FIB efficiency in distributed platforms , 2016, 2016 IEEE 24th International Conference on Network Protocols (ICNP).

[31]  Michael Segal,et al.  Space and Speed Tradeoffs in TCAM Hierarchical Packet Classification , 2008 .

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