210 likes | 298 Views
Layered Interval Codes for TCAM-based Classification. Author: Anat Bremler-Barr, David Hay, Danny Hendler Publisher: IEEE INFOCOM 2009 Presenter: Chun-Yi Li Date: 2009/03/04. Introduction.
E N D
Layered Interval Codes for TCAM-based Classification Author: Anat Bremler-Barr, David Hay, Danny Hendler Publisher: IEEE INFOCOM 2009 Presenter:Chun-Yi Li Date:2009/03/04
Introduction • Range expansion was found to cause an increase of more than 16% in TCAM space requirements for real-word databases. • The algorithms we present split the ranges between multiple layers, each of which consists of mutually disjoint ranges.
Introduction Encoding Example Liu’s basic dependent encoding
Introduction Encoding Example LIC encoding
Outline The Layered Interval Encoding Scheme Terminology The Layering Stage The Bits Allocation Stage The Encoding Stage Performance
The Layered Interval Encoding Scheme Terminology Minimum-space LIC (MLIC) The MLIC problem is to find a legal coloring C of G that minimizes The MLIC problem is to output a LIC code for the ranges of S that uses a minimum number of bits.
The Layered Interval Encoding Scheme Terminology Minimum-space LIC (MLIC) R4 R4 R1 R2 R3 R3 R2 R1
The Layered Interval Encoding Scheme Terminology Budgeted minimum LIC (BMLIC) An instance of BMLIC consists of a set S of weighted ranges and a positive integer b, the number of available bits. Under this restriction, it is required to output a LIC code for a maximum-weight subset S’ of S.
The Layered Interval Encoding Scheme Terminology weight – interval r’s total redundancy. Ex: R1 source port = [1,3] => 0001, 001* destination port = [9,12] => 1001, 101*, 1100 total redundancy = 2*3-1=5
The Layered Interval Encoding Scheme The Layering Stage Maximum Size Independent Sets (MSIS) This is a greedy layering algorithm that works iteratively. The algorithm finds a maximum size independent set.
The Layered Interval Encoding Scheme The Layering Stage Maximum Size Colorable Sets (MSCS) An i-colorable set of a graph G is a subset of G’s vertices that can be colored with i colors. MSCS finds a maximum size i-colorable set of G.
The Layered Interval Encoding Scheme The Layering Stage Maximum Size Colorable Sets (MSCS)
The Layered Interval Encoding Scheme The Layering Stage Maximum Weight Independent Sets (MWIS) Same as MSIS, except that we iteratively find a maximum weighted independent set. Maximum Weight Colorable Sets (MWCS) Same as MSCS, except that, instead of finding maximum size k-colorable sets ,MWCS finds maximum weight k-colorable sets.
The Layered Interval Encoding Scheme The Bits Allocation Stage Compute the above quantity for each layer Li, and assign the next bit to a layer for which this quantity is maximal.
The Layered Interval Encoding Scheme The Bits Allocation Stage Sort Li’s interval in decreasing weight order
The Layered Interval Encoding Scheme The Encoding Stage k1 = assigned[m] k2= assigned[m] code[i][j] = *k1.bin(j).*k2 assigned[i] is the number of bits assigner to i’th layer b bits layer 1 layer 2 layer i layer i+1 layer n k1 bits k2 bits
Outline The Layered Interval Encoding Scheme Terminology The Layering Stage The Bits Allocation Stage The Encoding Stage Performance
Performance Expansion and redundancy factors, using 36 extra bits, for different range encoding algorithms.
Performance The number of bits required to encode all the ranges that occur in our database as a function of the encoding scheme employed.
Performance Redundancy factor as a function of the number of extra bits for different encoding schemes.
Performance Redundancy factor as a function of the number of extra bits for different layering algorithms.