layered interval codes for tcam-based classification

21
1 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

Upload: rajah-merrill

Post on 03-Jan-2016

24 views

Category:

Documents


1 download

DESCRIPTION

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. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Layered Interval Codes for TCAM-based Classification

1

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

Page 2: Layered Interval Codes for TCAM-based Classification

2

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.

Page 3: Layered Interval Codes for TCAM-based Classification

5

IntroductionEncoding Example

Liu’s basic dependent encoding

Page 4: Layered Interval Codes for TCAM-based Classification

6

IntroductionEncoding Example

LIC encoding

Page 5: Layered Interval Codes for TCAM-based Classification

7

Outline

The Layered Interval Encoding Scheme Terminology The Layering Stage The Bits Allocation Stage The Encoding Stage

Performance

Page 6: Layered Interval Codes for TCAM-based Classification

8

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.

Page 7: Layered Interval Codes for TCAM-based Classification

9

The Layered Interval Encoding Scheme

Terminology Minimum-space LIC (MLIC)

R4

R1

R2 R3R1

R2 R3

R4

Page 8: Layered Interval Codes for TCAM-based Classification

11

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.

Page 9: Layered Interval Codes for TCAM-based Classification

12

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

Page 10: Layered Interval Codes for TCAM-based Classification

13

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.

Page 11: Layered Interval Codes for TCAM-based Classification

14

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.

Page 12: Layered Interval Codes for TCAM-based Classification

15

The Layered Interval Encoding Scheme

The Layering Stage Maximum Size Colorable Sets (MSCS)

Page 13: Layered Interval Codes for TCAM-based Classification

16

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.

Page 14: Layered Interval Codes for TCAM-based Classification

17

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.

Page 15: Layered Interval Codes for TCAM-based Classification

18

The Layered Interval Encoding Scheme

The Bits Allocation Stage

Sort Li’s interval in decreasing weight order

Page 16: Layered Interval Codes for TCAM-based Classification

19

The Layered Interval Encoding Scheme

The Encoding Stagek1 = assigned[m]

k2= assigned[m]

code[i][j] = *k1. bin(j). *k2

‥‥ ‥‥ ‥‥‥‥ ‥‥ ‥‥ ‥‥‥‥‥ ‥‥

k1 bits

layer 1 layer 2 layer i layer i+1

k2 bits

b bits

layer n

assigned[i] is the number of bits assigner to i’th layer

Page 17: Layered Interval Codes for TCAM-based Classification

24

Outline

The Layered Interval Encoding Scheme Terminology The Layering Stage The Bits Allocation Stage The Encoding Stage

Performance

Page 18: Layered Interval Codes for TCAM-based Classification

25

Performance

Expansion and redundancy factors, using 36 extra bits, for different range encoding algorithms.

Page 19: Layered Interval Codes for TCAM-based Classification

26

Performance

The number of bits required to encode all the ranges that occur in our database as a function of the encoding scheme employed.

Page 20: Layered Interval Codes for TCAM-based Classification

27

Performance

Redundancy factor as a function of the number of extra bits for different encoding schemes.

Page 21: Layered Interval Codes for TCAM-based Classification

28

Performance

Redundancy factor as a function of the number of extra bits for different layering algorithms.