Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan,...
-
Upload
bradley-estabrooks -
Category
Documents
-
view
216 -
download
0
Transcript of Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan,...
![Page 1: Compressing Forwarding Tables Ori Rottenstreich (Technion, Israel) Joint work with Marat Radan, Yuval Cassuto, Isaac Keslassy (Technion, Israel) Carmi.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/1.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/2.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/3.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/4.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/5.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/6.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/7.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/8.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/9.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/10.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/11.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/12.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/13.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/14.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/15.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/16.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/17.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/18.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/19.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/20.jpg)
• 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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/21.jpg)
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.](https://reader035.fdocuments.net/reader035/viewer/2022062417/5519b17b55034660578b45ed/html5/thumbnails/22.jpg)
Thank You