infinite cacheflow in software-defined networkingjrex/talks/cacheflow14.pdf · 2015-01-09 ·...
TRANSCRIPT
![Page 1: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/1.jpg)
Infinite CacheFlow in Software-Defined Networking
Naga Katta Omid Alipourfard, Jennifer Rexford, David Walker
Princeton University
![Page 2: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/2.jpg)
Recent News
2
![Page 3: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/3.jpg)
SDN Promises Flexible Policies
3
Controller
Switch
TCAM
![Page 4: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/4.jpg)
SDN Promises Flexible Policies
4
Controller
Switch
TCAM
Lot of fine-grained rules
![Page 5: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/5.jpg)
SDN Promises Flexible Policies
5
Controller
Lot of fine-grained rules
![Page 6: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/6.jpg)
SDN Promises Flexible Policies
6
Controller
Lot of fine-grained rules
![Page 7: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/7.jpg)
SDN Promises Flexible Policies
7
Controller
Lot of fine-grained rules
![Page 8: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/8.jpg)
SDN Promises Flexible Policies
8
Controller
Limited rule space!
![Page 9: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/9.jpg)
SDN Promises Flexible Policies
9
Controller
Limited rule space!
What now?
![Page 10: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/10.jpg)
State of the Art
10
Hardware Switch Software Switch Rule Capacity Low (~2K-4K) High Lookup Throughput High (>400Gbps) Low (~40Gbps) Port Density High Low Cost Expensive Relatively cheap
![Page 11: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/11.jpg)
TCAM as cache
11
CacheFlow
TCAM
Controller
S2 S1
Software Switches
![Page 12: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/12.jpg)
TCAM as cache
12
CacheFlow
TCAM
Controller
S2 S1
<5% rules cached
![Page 13: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/13.jpg)
TCAM as cache
13
CacheFlow
TCAM
Controller
S2 S1
low expected cache-misses
![Page 14: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/14.jpg)
• High throughput + high rule space
TCAM as cache
14
CacheFlow
TCAM
Controller
S2 S1
![Page 15: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/15.jpg)
• High throughput + high rule space
TCAM as cache
15
CacheFlow
TCAM
Controller
S2 S1
Flexible Deployment
![Page 16: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/16.jpg)
• Abstraction of an “infinite” switch Ø Correct: realizes the policy Ø Efficient: high throughput & large tables Ø Transparent: unmodified applications/switches
16
A Correct, Efficient and Transparent Caching System
![Page 17: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/17.jpg)
1. Correct Caching
![Page 18: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/18.jpg)
Caching under constraints
18
Easy: Cache rules greedily
Rule Match Action Priority Traffic
R1 110 Fwd 1 3 10
R2 100 Fwd 2 2 60
R3 101 Fwd 3 1 30
![Page 19: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/19.jpg)
Caching Ternary Rules
19
Rule Match Action Priority Traffic
R1 11* Fwd 1 3 10
R2 1*0 Fwd 2 2 60
R3 10* Fwd 3 1 30
• Greedy strategy breaks rule-table semantics
![Page 20: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/20.jpg)
Caching Ternary Rules
20
Rule Match Action Priority Traffic
R1 11* Fwd 1 3 10
R2 1*0 Fwd 2 2 60
R3 10* Fwd 3 1 30
• Greedy strategy breaks rule-table semantics
Rules Overlap!
![Page 21: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/21.jpg)
Caching Ternary Rules
21
Rule Match Action Priority Traffic
R1 11* Fwd 1 3 10
R2 1*0 Fwd 2 2 60
R3 10* Fwd 3 1 30
• Greedy strategy breaks rule-table semantics • Beware of switches that claim large rule tables
Rules Overlap!
![Page 22: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/22.jpg)
Dependency Graph
22
R3
R2
R1
R6
R5
R4
(*)
Rule Match Action Priority Traffic
R1 0000 Fwd 1 6 10
R2 000* Fwd 2 5 20
R3 00** Fwd 3 4 90
R4 111* Fwd 4 3 5
R5 11** Fwd 5 2 10
R6 1*** Fwd 6 1 120
![Page 23: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/23.jpg)
Dependent-Set Caching
23
R3
R2
R1
R6
R5
R4
(*)
• All descendants in DAG are dependents • Cache dependent rules for correctness
![Page 24: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/24.jpg)
2. Efficient Caching
![Page 25: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/25.jpg)
Dependent-Set Overhead
25
R3
R2
R1
R6
R5
R4
(*)
Too Costly?
![Page 26: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/26.jpg)
Cover-Set
26
Rule Match Action R1 000 Fwd 1
R2 00* Fwd 2
R3 0** Fwd 3
R4 11* Fwd 4
R5 1*0 Fwd 5
R5^ 1*0 To_SW
R6 10* Fwd 6
(*) *** To_SW
R6
R5
R4
(*)
R5^
R3
R2
R1
Cover rule
![Page 27: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/27.jpg)
Dependency Splicing reduces rule cost!
27
Dependent-Set Cover-Set
Rule Space Cost
![Page 28: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/28.jpg)
Deep Dependency Chains – Clear Gain
28
• ClassBench Generated ACL
0
20
40
60
80
100
0.5 1 2 5 10 25 50
% C
ach
e-h
it tr
aff
ic
% TCAM Cache Size (Log scale)
Cover-Set AlgoDependent-Set Algo
![Page 29: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/29.jpg)
Shallow Dependency Chains – Marginal Gain
29
0
20
40
60
80
100
1 2 5 10 25 50
% C
ach
e-h
it tr
affic
% TCAM Cache Size (Log scale)
Dependent-Set AlgoCover-Set Algo
• Stanford Backbone Routing table
![Page 30: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/30.jpg)
3. Transparent Caching
![Page 31: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/31.jpg)
31
CacheFlow
HW_Cache (TCAM)
Controller
S4 S1 S2 S3
OpenFlow Datapath
3. Transparent Design
![Page 32: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/32.jpg)
32
CacheFlow
HW_Cache (TCAM)
Controller
S4 S1 S2 S3
Virtual switch
OpenFlow Datapath
3. Transparent Design
![Page 33: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/33.jpg)
33
CacheFlow
HW_Cache (TCAM)
Controller
S4 S1 S2 S3
OpenFlow Datapath
Emulates counters, barriers, timeouts etc.
3. Transparent Design
Virtual switch
![Page 34: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/34.jpg)
• Rule caching for OpenFlow rules
Ø Dependency analysis for correctness Ø Splicing dependency chains for efficiency Ø Transparent design
Conclusion
34
![Page 35: Infinite CacheFlow in Software-Defined Networkingjrex/talks/cacheflow14.pdf · 2015-01-09 · Infinite CacheFlow in Software-Defined Networking Naga Katta Omid Alipourfard, Jennifer](https://reader035.vdocuments.us/reader035/viewer/2022062921/5f0368cf7e708231d40911c8/html5/thumbnails/35.jpg)
Infinite Ca$heFlow in SDN
Questions?