compressing forwarding tables ori rottenstreich (technion, israel) joint work with marat radan,...

22
Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi Arad, Tal Mizrahi, Yoram Revah (Marvell Israel) Avinatan Hassidim (Google Israel & Bar-Ilan Univ.)

Upload: bradley-estabrooks

Post on 31-Mar-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

Compressing Forwarding Tables

Ori Rottenstreich (Technion, Israel)

Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel)

Carmi Arad, Tal Mizrahi, Yoram Revah (Marvell Israel)

Avinatan Hassidim (Google Israel & Bar-Ilan Univ.)

Page 2: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Forwarding information in datacenter networks is stored in switch forwarding tables• Example:

o Lookup key: MAC Address + VLANo Forwarding Information: Target Port

Forwarding Tables in Datacenters

2

?

Page 3: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Typical table size: h∙d·b bits

• Host virtualization in datacenter networks results in a rapid growth of forwarding tables.

o More hosts ( h↑ )o More attributes ( d↑ )o More attribute values ( b↑ )

Growth of Forwarding Tables

3

d fields, each of b bits (on average)

1

h

h rows

Field 1

Field 2

Field d

This table architecture doesn’t scale!

hash-based

matching

Packet

header

Page 4: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Direct access to all rows regardless of their indiceso High packet rate

• Storing each row in a fixed-width memory wordo We would like to minimize the required memory width

Required Properties of a Solution

4

width

row 1

row h

Page 5: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

i

P bits (with d fields)

• Illustration of access to the encoded forwarding table. • A single encoded row of at most P bits is retrieved. • Then, d pipelined accesses to d dictionaries are performed.

• Goal: Find d codes that minimize the maximal width P.

Solution Overview

σ1

σ2σd

1

h

hash-based

matching

h rows

5

001 1 10

Packet

header

Page 6: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Table A with d=3 columns and its encoding scheme

• Obtained maximal width of bits

A Forwarding Table Example

Today

d=3 dictionaries

Suggested Solution

6

Encoded table

Original table

3+1+1=5

2+1+2=5

2+1+1=4

2+1+2=5

2+1+2=5

3+1+1=5

2+1+2=5

width

Page 7: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Huffman encoding:

o Minimizes the average width but not the maximal widtho Existence of long rows

• Fixed uniform encoding:

o Without long rows, but not efficient

• Our goal: Find an encoding scheme that minimizes the maximal width:

Traditional Solutions

7

Page 8: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Definition 1 (Encoding Scheme): An encoding scheme of a FIB table with d columns is composed of d prefix codes, one for each column. •Definition 2 (Encoding Width): The encoding width of an encoding scheme is defined as the maximal sum of the lengths of the d codewords in the encoding of a row of A, i.e.

Problem Definition

8

Page 9: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Definition 3 (Optimal Encoding Width): For a table A, we denote by the smallest possible width of an encoding scheme of A such that

• Our goal: Find an encoding scheme that minimizes the encoding width

• Constraint on the encoding scheme (Kraft’s Inequality): There exists a prefix encoding of the elements in a set with codeword lengths iff

Problem Definition (2)

9

Page 10: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• For a table A with h rows , we define the following optimization problem:

• We would like to minimize the maximal width P while satisfying the Kraft’s inequality for the d prefix codes The codeword lengths should be positive integers.

Optimization Problem

10

Page 11: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Theorem: Finding the optimal encoding is NP-hard in the general case ( ). • Convex Algorithm:

o Consider the relaxed problem: codeword lengths are not necessarily integers. (The relaxed problem is convex.)o Take the ceiling of the codeword lengths in its solutiono Example: Solution: (2.2, 3.71) (3, 4)

• Theorem: By taking the ceiling of the codeword lengths in an optimal solution to the relaxed problem, we achieve a legal encoding scheme that satisfies

Approximation of the Optimal Encoding

11

Page 12: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

Outline

Introduction and Problem Definition General Properties Two Column FIB Tables

Graph Representation Optimal Conditional Encoding Bounds on the Optimal Encoding Width

Experimental Results Summary

12

Page 13: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Motivation: L2 MAC tables with two fields: Target Port + An additional attribute.

• Assumption: The table A has two columns with distinct elements in each column. •Theorem: The optimal encoding width of A satisfies

Two-Column FIB Tables

13

Page 14: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• A two-column FIB table A can be represented as a bipartite graph. •Example: Two-column FIB table with h=6 rows and (for W=2) distinct elements in each column.

Graph Representation

Forwarding table Bipartite graph

14

Page 15: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Given an encoding of one column, we would like to find an encoding of the second column that minimizes the encoding width P.

• For an element , we should consider the maximal codeword length of an element in that shares a row with .

Notation:

Optimal Conditional Encoding

15

u a

y

w b

y

y

P bits

v

z

u

Page 16: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Theorem: The optimal conditional encoding width satisfies

• Notes:• We should encode in bits. • Linear complexity

Optimal Conditional Encoding

16

Page 17: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Reminder (Edge Cover): In an undirected graph

a set of edges is an edge cover of if .

• Example: nodes at each side ( )

• Intuition:

Smaller covering number More independent edges

Constraints on more elements Larger optimal width

Lower Bound on the Optimal Encoding Width

17

(A) (B)

Edge covering number: 8 Edge covering number: 14

Page 18: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Theorem: The optimal encoding width of a table A with an edge covering number satisfies

• Example: ( )

Lower Bound on the Optimal Encoding Width

18

(A) (B)

Edge covering number: 8 Edge covering number: 14

33333333

33333333

14444444

14444444

Page 19: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

Effectiveness of the encoding algorithm on synthetic FIB tables with d=2 columns and (W=8) elements, as a function of Zipf dist. parameter.

Simulation details: 1000 rows, 10 iterations.

Experimental Results

A lower bound of

.

Lower parameter Closer to the

uniform distribution

19

8 8 1 9

9 1

Page 20: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

• Table: 903 rows. Collected in the enterprise network of a large company. • Without encoding: row width of 29 bits.

• With convex encoding: width of only 11 bits.

Real-Life FIB Table

20

improvement

Page 21: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

Concluding Remarks

• New architecture for compression of forwarding tables in datacenters

• Approximation of the optimal solution

• Analysis of the optimal encoding width

21

Page 22: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi

Thank You