Catalyst: Unlocking Power of Choice to Speed up Network Updates
Rohan Gandhi, Ori Rottenstreich, Xin Jin
1
Catalyst: Unlocking Power of Choice to Speed up Network Updates - - PowerPoint PPT Presentation
Catalyst: Unlocking Power of Choice to Speed up Network Updates Rohan Gandhi, Ori Rottenstreich, Xin Jin 1 Network Update Cycle Network Controller Network Updater Target state Compute network Update network target state to target state
Rohan Gandhi, Ori Rottenstreich, Xin Jin
1
Network Controller Network Updater
Target state Compute network target state Update network to target state
2
Current state (Traffic, topology etc.) Target state (Rules) Centralized Controller
3
4 S1 S3 S4
f1:4 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6
S1 S3 S4
f1:4 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6 Consistent network update plan Mv f1 Mv f2 Mv f4
Start
Initial State Target State
Naive (one-shot) update plan (Can cause inconsistencies) Mv f1, f4, f2
Start
Link capacity = 10 units B4 (SIGCOMM 2013): Network update takes 3-5X more time than controller
5
S1 S3 S4
f1:4 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6
S1 S3 S4
f1:4 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6 Update plan Mv f1 Mv f2 Mv f4
Start 6
Initial State Target State The controller has no information about the length (longest path)
7
Straggling switches can take 10x or more time to update rules Even a single update through a straggling switch can delay entire stage in dependency graph
Dionysus, SIGCOMM 2014
8
9 S1 S3 S4
f1:4 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6
S1 S3 S4
f1:4 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6 Update plan Mv f1 Mv f2 Mv f4
Start
Initial State Initial Target State
S1 S3 S4
f1:5 f4:6 f2:5
S2
f5:5
S5
f3:4 f6:6 Mv f1 Mv f2 Mv f4 Star
Modified Target State (+) Merging stages reduces number of stages, which reduces update time (-) Merging stages increases number of updates in a stage, which increases probability
Merging stages always reduces update time (proof in paper)
10
Assign single flow to multiple (equally optimal) paths
S1 S2 S3 S4 S6 Straggler Ingress Egress S2 Update time Catalyst Default S5 S3 S2 S3 S5 S4
Try all paths for a flow in parallel
11
12
13
“s” = fraction of redundancy compared to total capacity
Increasing number of paths per flow: (+) more alternatives to tackle straggler (-) less number of flows assigned to alternate paths
14