1 TCAM Razor: A Systematic Approach Towards Minimizing Packet Classifiers in TCAMs Department of...

Post on 17-Dec-2015

217 views 3 download

Tags:

Transcript of 1 TCAM Razor: A Systematic Approach Towards Minimizing Packet Classifiers in TCAMs Department of...

1

TCAM Razor: A Systematic Approach Towards Minimizing Packet C

lassifiers in TCAMs

Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C.

Authors: Chad R. Meiners, Alex X. Liu, Eric Torng

Publisher: ICNP 2007

Present: Yu-Tso Chen

Date: November, 6, 2007

2

Outline

1. Introduction 2. Definitions and problem description 3. Multi-dimensional TCAM Mnimization 4. Experimental Result 5. Conclusion

3

Occam’s Razor

“Of two equivalent theories or explanations, all other things being equal, the simpler one is to be preferred.”

4

Introduction

TCAMs have their own limitations with respect to packet classification• a) Range expansion – TCAM only store rules that

are encoded in ternary format• Source & Destination port numbers are specified in Rang

es

30 prefixs are needed to represent the single range [1, 65534]

30 X 30 =900 TCAM entries

5

Encoding Considerations

Range expansions• Encoding ranges has a multiplicative effect

• [1,14] => 0001, 001*, 01**, 10**, 110*, 1110

• [1,14] /\ [1,14] => 6 × 6 = 36 entries

• 1 rule can lead to over 900 TCAM entries.

• Each port interval can leads to 30 rules

• w-bit interval => 2w-2 maximum entries

Prefix Encoding• Standard practice to encode entries in prefix format

• Each field is in prefix format

• Minimizing arbitrary ternary lists is NP-hard

6

TCAM Challenges

b) Low capacity• – Maximum of 18 Mb

• – 2 Mb and 1Mb modules are the most popular

• – Each entry has 144 bits

c) Larger capacity consumes more energy• – More power, more heat

• – Cooling is a concern

d) Larger capacity consumes more board space

e) Larger capacity is more expensive• – 1Mb module is ~ $250

7

Outline

1. Introduction 2. Definitions and problem

description 3. Matching of Individual Patterns 4. Selective Grouping of Multiple

Patterns 5. Evaluation Result 6. Conclusion

8

Definitions and problem description

Reducing the number of rules in a TCAM directly 900 entries

6 entries

9

Our solution : TCAM Razor Above problem is NP-hard, we using

three techniques• Decision diagrams

• Dynamic programming

• Redundancy removal

10

Our solution : TCAM Razor Our solution consists of four basic step

• 1)Convert a given packet classifier to a reduced decision diagram

• 2)Every non-terminal node in the decision diagram minimize the number of prefixs associated with its outgoing edges using dynamic programming

• 3)Generate rules from the decision diagram

• 4)Remove redundant rules

11

Outline

1. Introduction 2. Definitions and problem description 3. Multi-dimensional TCAM Mnimizati

on 4. Experimental Result 5. Conclusion

12

Example one-dimensional TCAM minimization problem

13

From single to Multiple dimension

First step of TCAM Razor is to convert rules into an FDD (Firewall Decision Diagram)

14

Multi-dimensional TCAMMinimization

Rule Field Decision

1 10** Accept

2 **** Discard

Rule Field Decision

1 **** Discard

Rule Field Decision

1 1001 V3

2 10** V2

3 **** V3

Work from the bottom upV2

V3

V1

15

MINIMUM PACKET CLASSIFIER

• 10** (with decision accept and cost 1)

• 0 *** (with decision discard and cost 1)

• 11** (with decision discard and cost 1)

16

MINIMUM PACKET CLASSIFIER

• 1000 (with decision V2 and cost 1)

• 101* (with decision V2 and cost 1)

• 0 *** (with decision V3 and cost 1)

• 1001 (with decision V3 and cost 1)

• 11** (with decision V3 and cost 1)Rule Field Decision

1 1001 V3

2 10** V2

3 **** V3

V1

17

Solution Composition

Redundant

Rule Field Decision

1 10** Accept

2 **** Discard

Rule Field Decision

1 **** Discard

Rule Field Decision

1 1001 V3

2 10** V2

3 **** V3

V2

V3

V1

Rule F1 F2 Decision

1 1001 **** Discard

2 10** 10** Accept

3 10** **** Discard

4 **** **** Discard

18

Outline

1. Introduction 2. Definitions and problem description 3. Multi-dimensional TCAM Mnimization 4. Experimental Result 5. Conclusion

19

Experimental Data

Real-life Packet Classifiers• 42 actual classifiers

• 17 structurally distinct classifiers

Synthetic Packet Classifiers• Difficult to get real-life packet classifiers

• 18 sets of 100 uniformly sized classifiers

Randomly generated Generated to look like real classifiers

20

Experimental Metrics

Direct Rule Expansion Direct(f)• Number of rules produced by encoding classif

ier f into prefix format

• Each rule is the expansion of the minimal prefix representations of each interval

Algorithm application A(f)• Number of prefix rules produced applying algo

rithm A on classifier f• TCAM Razor

• Redundancy Removal

21

Experimental Metrics

For a set of classifiers S

22

Experimental Factors

Field Ordering• FDD field order results in a substantial difference

• 5! = 120 permutations

Permutation 49 is the best with an average compression of 18.2%• (Source IP, Protocol type, Dest. IP, Dest. Port, So

urce Port) TCAM Razor(B) – TCAM Razor using the best of the

permutations for f

23

Compression Ratios

TCAM Razor: 18.2% average compression ratio

Redundancy Removal: 41.8%

24

Compression Ratios

13 of 17 classifiers have less than 1%

25

Expansion Ratio

26

Synthetic Packet Classifiers

Average compression ratio – .046 Total compression ratio – .016

27

Synthetic Packet Classifiers

Average expansion ratio – 8.737 Total expansion ratio – 3.082

28

Outline

1. Introduction 2. Definitions and problem description 3. Multi-dimensional TCAM Mnimization 4. Experimental Result 5. Conclusion

29

Concluding Remarks

TCAM Razor usually produces significant space savings• 82% reduction in TCAM entries on average

No hardware modification• Can be used to improve existing hardware