Enforcing Customizable Consistency Properties in Software-Defined Networks
Wenxuan Zhou, Dong Jin, Jason Croft, Matthew Caesar, Brighten Godfrey
1
Enforcing Customizable Consistency Properties in Software-Defined - - PowerPoint PPT Presentation
Enforcing Customizable Consistency Properties in Software-Defined Networks Wenxuan Zhou , Dong Jin, Jason Croft, Matthew Caesar, Brighten Godfrey 1 Network changes control applications, changes in traffic load, system upgrades,
1
2
3
4
Is it possible to efficiently ensures customizable correctness properties as the network evolves?
Network Verification Dionysus Consistent Updates Fixed Consistency Property
6
Controller Stream of Updates
No loop, no black hole, Resource isolation, No suboptimal routing, ...
Magic engine
7
CCG Stream of Updates Fail Buffer of pending updates Network Model Verification Engine Confirmations Pass Controller No loop/black hole, Resource isolation, No suboptimal routing, No VLAN leak, ...
✴
identify the scope of cases that guarantees no deadlock
✴
For other cases, a more heavyweight update technique as a fallback, triggered rarely in practice
(uncertainty)
✴
compact uncertain forwarding graph
✴
verification optimization
8
CCG Network Model Verification Engine Stream of Updates Fail Buffer of pending updates Confirmations Pass
9
0$2"1$%#34$%.% 5-$467$-8% #34$%.% +'()!*%9% #34$%/% +'()!*%:% ;",)#"44$#% <,&)644%#34$%/% !"#$%&'
10
11
12
13
CCG
Verification Engine Stream of Updates Fail Buffer of pending updates Confirmations Pass
14
CCG
Verification Engine Stream of Updates Fail Buffer of pending updates Confirmations Pass
Even with FB triggered, CCG achieves better efficiency than using FB alone.
15
16
17
0.2 0.4 0.6 0.8 1 1 10 100 1000 10000 100000 1e+06 Fraction of trials Microsecond Uncertain-100 Uncertain-1000 Uncertain-10000 VeriFlow
Simulated network: BGP RIBs and update trace from RouteViews injected into 172-router AS 1755 topology, checking reachability invariant 15X less memory overhead (540MB vs. 9GB)
18
NOX (Shortest path & load balancing)
CCG
Mininet
… …
19
0.2 0.4 0.6 0.8 1 50 100 150 200 250 Fraction of trials Millisecond Optimal CCG CCG-waypoint Dionysus Consistent Updates Incremental CU
Local
0.2 0.4 0.6 0.8 1 200 400 600 800 1000 1200 1400 1600 1800 2000 Fraction of trials Millisecond Optimal CCG CCG-waypoint Dionysus Consistent Updates Incremental CU
Wide area No fallback triggered No additional memory
Traces from a enterprise network with 200+ layer-3 devices. One day, one snapshot per hour, 24 transitions, 4ms delay.
Rules overlapped with longest prefix match, not segment-independent.
20
Fallbacks happened rarely. Overhead close to Immediate Update, with no transient connectivity violations.
25000$ 20000$ 15000$ 10000$ 5000$ 0$ 7/22/2014$ 22:00:00$ 7/22/2014$ 23:00:00$ 7/23/2014$ 0:00:00$ 7/23/2014$ 1:00:00$
//$ //$ //$ //$ //$ //$
Time$ Number$of$Rules$ in$the$Network$
7/22/2014$ 22:00:02$ 7/22/2014$ 23:00:02$ 7/23/2014$ 0:00:02$ 7/23/2014$ 1:00:02$
Immediate Update GCC Consistent Updates
Comple?on$ Time$
CCG
implementation of Dionysus
21