tiramisu: fast multilayer network verification...tiramisu: fast multilayer network verification...
TRANSCRIPT
![Page 1: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/1.jpg)
Tiramisu: Fast Multilayer Network Verification
Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#,and Aditya Akella*
1
*University of Wisconsin-Madison, # Colgate University
![Page 2: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/2.jpg)
Distributed Control Planes
2
D C
BZ
Y
E
Policies
Y à Z
Configuration Exampleinterface GigabitEthernet0/1
ip address 1.0.1.1 255.255.0.0ip ospf cost 1
router ospf 10 network 3.0.1.2 0.0.255.255 area 0
![Page 3: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/3.jpg)
Distributed Control Planes
3
D C
BZ
Y
E
Policies
Y à Z
![Page 4: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/4.jpg)
Distributed Control Planes
4
D C
BZ
Y
E
Policies
Y à Z
![Page 5: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/5.jpg)
Distributed Control Planes
5
D C
BZ
Y
E
Policies
Y à Z
OSPFOSPF
OSPFOSPF 1
1
1
![Page 6: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/6.jpg)
Distributed Control Planes
6
D C
BZ
Y
E
Policies
Y à Z
OSPFOSPF
OSPFOSPF 1
1
Z1
![Page 7: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/7.jpg)
Router Configurations are Complex
7
interface GigabitEthernet0/1ip address 1.0.1.1 255.255.0.0ip ospf cost 1!interface GigabitEthernet0/2ip address 10.11.11.1 255.255.0.0!router bgp 300neighbor 2.2.2.2 route-map COMM out!route-map COMM permit 10 set community 1:1 additiveset local-preference 150!router ospf 10 network 3.0.1.2 0.0.255.255 area 0
• Multiple routing protocols• BGP• OSPF• …
![Page 8: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/8.jpg)
Router Configurations are Complex
8
interface GigabitEthernet0/1ip address 1.0.1.1 255.255.0.0ip ospf cost 1!interface GigabitEthernet0/2ip address 10.11.11.1 255.255.0.0!router bgp 300neighbor 2.2.2.2 route-map COMM out!route-map COMM permit 10 set community 1:1 additiveset local-preference 150!router ospf 10 network 3.0.1.2 0.0.255.255 area 0
• Multiple routing protocols• BGP• OSPF• …
• Multiple routing metrics• ospf cost• local preference• …
![Page 9: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/9.jpg)
Router Configurations are Complex
9
interface GigabitEthernet0/1ip address 1.0.1.1 255.255.0.0ip ospf cost 1!interface GigabitEthernet0/2ip address 10.11.11.1 255.255.0.0!router bgp 300neighbor 2.2.2.2 route-map COMM out!route-map COMM permit 10 set community 1:1 additiveset local-preference 150!router ospf 10 network 3.0.1.2 0.0.255.255 area 0
• Multiple routing protocols• BGP• OSPF• …
• Multiple routing metrics• ospf cost• local preference• …
• Multiple filters• Community• …
![Page 10: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/10.jpg)
Configuration Complexity Make Errors Common
10
![Page 11: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/11.jpg)
Configuration Complexity Make Errors Common
11
Policy violations manifest under failures
![Page 12: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/12.jpg)
Configuration Complexity Make Errors Common
12
Verification tools can proactively check for failures
![Page 13: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/13.jpg)
Multiple Network Verification tools
13Performance
Cove
rage
Bagpipe(OOPSLA’16)
Plankton (NSDI’20)
Minesweeper (SIGCOMM ’17)
ERA (OSDI’16)
Batfish (NSDI’15)
ARC (SIGCOMM’16)
P-REX (CONEXT’18)
![Page 14: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/14.jpg)
Multiple Network Verification tools
14Performance
Cove
rage
Bagpipe(OOPSLA’16)
Plankton (NSDI’20)
Minesweeper (SIGCOMM ’17)
ERA (OSDI’16)
Batfish (NSDI’15)
ARC (SIGCOMM’16)
P-REX (CONEXT’18)
Goal: A verification tool that has good coverage and good performance
Tiramisu (NSDI’20)
![Page 15: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/15.jpg)
Multiple Network Verification tools
15Performance
Cove
rage
Bagpipe(OOPSLA’16)
Plankton (NSDI’20)
Minesweeper (SIGCOMM ’17)
ERA (OSDI’16)
Batfish (NSDI’15)
ARC (SIGCOMM’16)
P-REX (CONEXT’18)
Goal: A verification tool that has good coverage and good performance
Tiramisu (NSDI’20)
![Page 16: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/16.jpg)
Performance VS Coverage• ARC (SIGCOMM’16)• Graph algorithms
Network configurations
22
4
1
06
Weighted Graphs
16
![Page 17: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/17.jpg)
Performance VS Coverage• ARC (SIGCOMM’16)• Graph algorithms
Network configurations
22
4
1
06
Weighted Graphs
17
• Minesweeper (SIGCOMM’17)• Symbolic encoding
Network configurations
Routing Algorithms
Policies
SMT Constraints
Z3 solver
![Page 18: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/18.jpg)
Cross Layer Dependency
18
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
![Page 19: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/19.jpg)
Cross Layer Dependency
19
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
IBGP uses OSPF computed route to reach next hop router
![Page 20: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/20.jpg)
Cross Layer Dependency
20
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
![Page 21: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/21.jpg)
Cross Layer Dependency
21
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
C à E
![Page 22: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/22.jpg)
Cross Layer Dependency
22
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
C à E
![Page 23: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/23.jpg)
Cross Layer Dependency
23
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
C à E
Cross Layer Dependency: iBGP - OSPF
![Page 24: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/24.jpg)
Cross Layer Dependency
24
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
C à E
![Page 25: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/25.jpg)
Cross Layer Dependency
25
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
C à E
![Page 26: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/26.jpg)
Cross Layer Dependency
26
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER D
![Page 27: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/27.jpg)
Cross Layer Dependency
27
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER DDst NextHop
E B
B D
D D
![Page 28: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/28.jpg)
Cross Layer Dependency
28
BE
CiBGP
iBGP
eBGP eBGP
1
D
iBGP
OSPF
OSPFOSPF
1
5
YZ
Dst NextHop
E B
B B
D D
Dst NextHop
E E
C C
D D
Dst NextHop
B B
C C
ROUTER C
ROUTER B
ROUTER DDst NextHop
E B
B D
D DE
![Page 29: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/29.jpg)
ARC and Minesweeper
29
• ARC (SIGCOMM’16)
Ebgp Bbgp
Bospf
Cospf Cospf
• Insufficient feature coverage• No IBGP, local preference,
community, ….
![Page 30: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/30.jpg)
ARC and Minesweeper• Minesweeper (SIGCOMM’17)
30
• ARC (SIGCOMM’16)
Ebgp Bbgp
Bospf
Cospf Cospf…….192.0.0.0 ≤ out.prefix out.prefix ≤ 192.1.0.0out.valid ⇒ truebest.valid ⇒ out.lp = 120best.valid ⇒ out.ad = 20…….
…….192.0.0.0 ≤ out.prefix out.prefix ≤ 192.1.0.0out.valid ⇒ truebest.valid ⇒ out.lp = 120best.valid ⇒ out.ad = 20…….
…….192.0.0.0 ≤ out.prefix out.prefix ≤ 192.1.0.0out.valid ⇒ truebest.valid ⇒ out.lp = 120best.valid ⇒ out.ad = 20…….
• Insufficient feature coverage• No IBGP, local preference,
community, ….
• Poor performance• replicate model for iBGP
![Page 31: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/31.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHMS
31
![Page 32: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/32.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHMS
32
Model VerificationARC Graph Graph
Minesweeper SMT SMT
![Page 33: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/33.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHMS
33
Model VerificationARC Graph Graph
Minesweeper SMT SMT
low coverage
high coverage low performance
high performance
![Page 34: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/34.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHMS
34
Model VerificationARC Graph Graph
Minesweeper SMT SMT
low coverage
high coverage low performance
high performance
Insight 1: Decouple network encoding from verification algorithm
![Page 35: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/35.jpg)
InsightsConfigurations
NETWORK MODEL
35
Multilayer graph with vector of edge weights
![Page 36: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/36.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
36
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 37: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/37.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
37
B
C
1
D
OSPF
OSPFOSPF
1
5
S1Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 38: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/38.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
38
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
Policy 1: Which path is preferred?C→B << C→D→B
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 39: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/39.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
39
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
Policy 1: Which path is preferred?C→B << C→D→B
C→B : ospf cost = 1C→D→B : ospf cost = 6
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 40: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/40.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
40
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
Policy 1: Which path is preferred?C→B << C→D→B
PATHENUMERATION C→B : ospf cost = 1
C→D→B : ospf cost = 6
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 41: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/41.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
41
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
Policy 2: Can C reach B with 1 link failure?
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 42: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/42.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
42
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
Policy 2: Can C reach B with 1 link failure?
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 43: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/43.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
43
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
Policy 2: Can C reach B with 1 link failure?
Min-cut = 2
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 44: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/44.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
44
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
Policy 2: Can C reach B with 1 link failure?
QUANTITATIVE GRAPH
PROPERTY Min-cut = 2
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 45: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/45.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N….
45
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
QUANTITATIVE GRAPH
PROPERTY
Policy 3: Is C always unreachable/blocked from B?
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 46: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/46.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N
46
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
QUANTITATIVE GRAPH
PROPERTY
Policy 3: Is C always unreachable/blocked from B?
PATHEXISTENCE
(CONNECTIVITY)
Multilayer graph with vector of edge weights
Categories policies based on fidelity
![Page 47: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/47.jpg)
InsightsConfigurations
NETWORK MODEL
VERIFICATIONALGORITHM-1
VERIFICATIONALGORITHM-2
VERIFICATIONALGORITHM-N
47
B
C
1
D
OSPF
OSPFOSPF
1
5
S1
PATHENUMERATION
QUANTITATIVE GRAPH
PROPERTY
PATHEXISTENCE
(CONNECTIVITY)
B
low performancehigh fidelity
high performancelow fidelity
Multilayer graph with vector of edge weights
Categories policies based on fidelity
Insight 2: Different properties require different levels of fidelity modeling of the control plane. Use property-specific algorithm for performance benefits
![Page 48: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/48.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
ConfigurationsGraph Model
48
![Page 49: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/49.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
PATHENUMERATION
Graph Model
Algorithms
49
TPVP
![Page 50: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/50.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
PATHENUMERATION
NUMERIC GRAPH PROPERTY
Graph Model
Algorithms
50
ILPTPVP
![Page 51: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/51.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
TDFS
PATHENUMERATION
NUMERIC GRAPH PROPERTY
PATHEXISTENCE
Graph Model
Algorithms
51
ILPTPVP
![Page 52: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/52.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
ConfigurationsGraph Model
52
![Page 53: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/53.jpg)
Traffic Propagation Graph (TPG)
53
BE
CiBGP
iBGPeBGP eBGP
1
DiBGP
OSPF
OSPFOSPF1
5
YZ
![Page 54: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/54.jpg)
Traffic Propagation Graph (TPG)
54
• Vertices: RIB of a routing processes and ingress/egress point of a switch/router
Bvlan:BC:in
Z
Bvlan:BD:inEvlan:BE:in
Bospf Cospf Dospf
Ebgp Bbgp Cbgp Dbgp
Y
Evlan:BE:out Bvlan:BD:out
Bvlan:BE:in Cvlan:BC:in
Cvlan:BC:out
Cvlan:CD:in
Cvlan:CD:out
Dvlan:CD:in
Dvlan:CD:out
Dvlan:BD:in
Bvlan:BC:out Dvlan:BD:outBvlan:BE:out
BE
CiBGP
iBGPeBGP eBGP
1
DiBGP
OSPF
OSPFOSPF1
5
YZ
![Page 55: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/55.jpg)
Traffic Propagation Graph (TPG)
55
• Vertices: RIB of a routing processes and ingress/egress point of a switch/router• Edges: establish route dependency and traffic flow
Bvlan:BC:in
Z
Bvlan:BD:inEvlan:BE:in
Bospf Cospf Dospf
Ebgp Bbgp Cbgp Dbgp
Y
Evlan:BE:out Bvlan:BD:out
Bvlan:BE:in Cvlan:BC:in
Cvlan:BC:out
Cvlan:CD:in
Cvlan:CD:out
Dvlan:CD:in
Dvlan:CD:out
Dvlan:BD:in
Bvlan:BC:out Dvlan:BD:outBvlan:BE:out
BE
CiBGP
iBGPeBGP eBGP
1
DiBGP
OSPF
OSPFOSPF1
5
YZ
![Page 56: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/56.jpg)
Traffic Propagation Graph (TPG)
56
• Vertices: RIB of a routing processes and ingress/egress point of a switch/router• Edges: establish route dependency and traffic flow
Bvlan:BC:in
Z
Bvlan:BD:inEvlan:BE:in
Bospf Cospf Dospf
Ebgp Bbgp Cbgp Dbgp
Y
Evlan:BE:out Bvlan:BD:out
Bvlan:BE:in Cvlan:BC:in
Cvlan:BC:out
Cvlan:CD:in
Cvlan:CD:out
Dvlan:CD:in
Dvlan:CD:out
Dvlan:BD:in
Bvlan:BC:out Dvlan:BD:outBvlan:BE:out
BE
CiBGP
iBGPeBGP eBGP
1
DiBGP
OSPF
OSPFOSPF1
5
YZ
![Page 57: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/57.jpg)
Traffic Propagation Graph (TPG)
57
• Vertices: RIB of a routing processes and ingress/egress point of a switch/router• Edges: establish route dependency and traffic flow• Vector of edge weights: multiple route metrics
Bvlan:BC:in
Z
Bvlan:BD:inEvlan:BE:in
Bospf Cospf Dospf
Ebgp Bbgp Cbgp Dbgp
Y
Evlan:BE:out Bvlan:BD:out
Bvlan:BE:in Cvlan:BC:in
Cvlan:BC:out
Cvlan:CD:in
Cvlan:CD:out
Dvlan:CD:in
Dvlan:CD:out
Dvlan:BD:in
Bvlan:BC:out
<ospf:1> <ospf:1>
<len:0><len:0>
<ospf:5>
<len:0><len:1>
<ospf:5> <ospf:1>Dvlan:BD:outBvlan:BE:out
BE
CiBGP
iBGPeBGP eBGP
1
DiBGP
OSPF
OSPFOSPF1
5
YZ
![Page 58: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/58.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
PATHENUMERATION
Graph Model
Algorithms
58
TPVP
![Page 59: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/59.jpg)
TPVP - Tiramisu Path Vector Protocol• Griffin et al. (TON’2002) and Sobrinho (TON’2005) models stable paths
problem as Simple Path Vector Protocol (SPVP) and routing algebra• TPVP is derived from SPVP and is modeled on routing algebra
• ⊕ operator to model path cost computation• ⪯ operator to model preference relation and path selection
59
![Page 60: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/60.jpg)
TPVP - Tiramisu Path Vector Protocol• Griffin et al. (TON’2002) and Sobrinho (TON’2005) models stable paths
problem as Simple Path Vector Protocol (SPVP) and routing algebra• TPVP is derived from SPVP and is modeled on routing algebra
• ⊕ operator to model path cost computation• ⪯ operator to model preference relation and path selection
60
Cospf<ospf:1>
<ospf:1><len:0>Cbgp
{} {}
![Page 61: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/61.jpg)
TPVP - Tiramisu Path Vector Protocol• Griffin et al. (TON’2002) and Sobrinho (TON’2005) models stable paths
problem as Simple Path Vector Protocol (SPVP) and routing algebra• TPVP is derived from SPVP and is modeled on routing algebra
• ⊕ operator to model path cost computation• ⪯ operator to model preference relation and path selection
61
Cospf<ospf:1>
<ospf:1><len:0>Cbgp
{ospf:5} Node ⊕ ⪯
Cospf {ospf:1} ⊕ospf {ospf:5}= {ospf:6}
{ospf:6} ⪯ ospf {}
{ospf:6} {}
![Page 62: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/62.jpg)
TPVP - Tiramisu Path Vector Protocol• Griffin et al. (TON’2002) and Sobrinho (TON’2005) models stable paths
problem as Simple Path Vector Protocol (SPVP) and routing algebra• TPVP is derived from SPVP and is modeled on routing algebra
• ⊕ operator to model path cost computation• ⪯ operator to model preference relation and path selection
62
Cospf<ospf:1>
<ospf:1><len:0>Cbgp
{ospf:1}
Node ⊕ ⪯
Cospf {ospf:1} ⊕ospf {ospf:1} = {ospf:2}
{ospf:2} ⪯ ospf {ospf:6}
{ospf:2} {}
![Page 63: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/63.jpg)
TPVP - Tiramisu Path Vector Protocol• Griffin et al. (TON’2002) and Sobrinho (TON’2005) models stable paths
problem as Simple Path Vector Protocol (SPVP) and routing algebra• TPVP is derived from SPVP and is modeled on routing algebra
• ⊕ operator to model path cost computation• ⪯ operator to model preference relation and path selection
63
Cospf<ospf:1>
<ospf:1><len:0>Cbgp {ospf:2}
{ospf:2} {len:0, ospf:2}
Node ⊕ ⪯
Cbgp {len:0} ⊕bgp {ospf:1}= {len:0, ospf: 2}
{len:0, ospf:2} ⪯ bgp {}
![Page 64: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/64.jpg)
TPVP - Tiramisu Path Vector Protocol• Griffin et al. (TON’2002) and Sobrinho (TON’2005) models stable paths
problem as Simple Path Vector Protocol (SPVP) and routing algebra• TPVP is derived from SPVP and is modeled on routing algebra
• ⊕ operator to model path cost computation• ⪯ operator to model preference relation and path selection
64
Cospf<ospf:1>
<ospf:1><len:0>Cbgp
{ospf:2} {len:0, ospf:2}
{ospf:5} Node ⊕ ⪯
Cospf {ospf:1} ⊕ospf {ospf:5}= {ospf: 6}
{ospf:6} ⪯ ospf {ospf:2}
![Page 65: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/65.jpg)
TPVP - Tiramisu Path Vector Protocol
65
B
C
1
D
OSPF
OSPFOSPF
4
1
S1
![Page 66: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/66.jpg)
TPVP - Tiramisu Path Vector Protocol
66
B
C
1
D
OSPF
OSPFOSPF
4
1
S1
P1: C→D→B : ospf cost = 2P2: C→B : ospf cost = 4
![Page 67: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/67.jpg)
TPVP - Tiramisu Path Vector Protocol
67
B
C
1
D
OSPF
OSPFOSPF
4
1
S1
P1: C→D→B : ospf cost = 2P2: C→B : ospf cost = 4
![Page 68: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/68.jpg)
TPVP - Tiramisu Path Vector Protocol
68
B
C
1
D
OSPF
OSPFOSPF
4
1
S1
P1: C→D→B : ospf cost = 2P2: C→B : ospf cost = 4
![Page 69: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/69.jpg)
TPVP - Tiramisu Path Vector Protocol
69
B
C
1
D
OSPF
OSPFOSPF
4
1
S1
P1: C→D→B : ospf cost = 2P2: C→B : ospf cost = 4
![Page 70: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/70.jpg)
TPVP - Tiramisu Path Vector Protocol• To verify path preference (P1 << P2), Tiramisu multiple instances of TPVP for
different failure scenarios• Runs TPVP three times
70
B
C
1
D
OSPF
OSPFOSPF
4
1
S1
P1: C→D→B : ospf cost = 2P2: C→B : ospf cost = 4
![Page 71: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/71.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
NUMERIC GRAPH PROPERTY
Graph Model
Algorithms
71
ILP
![Page 72: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/72.jpg)
ILPs - Integer Linear Programs
• Traffic flows in the direction opposite to route advertisement
72
B
CD
eBGP
eBGPeBGPS1
<at:c1>
<bt:c1>
![Page 73: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/73.jpg)
ILPs - Integer Linear Programs
• Traffic flows in the direction opposite to route advertisement• Only depends on quantitative path property and not exact path
73
min cut is 1
B
CD
eBGP
eBGPeBGPS1
<at:c1>
<bt:c1>B
B
![Page 74: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/74.jpg)
ILPs - Integer Linear Programs
• Traffic flows in the direction opposite to route advertisement• Only depends on quantitative path property and not exact path• ILP constraints model reachability• Tag/Community
74
min cut is 1
B
CD
eBGP
eBGPeBGPS1
<at:c1>
<bt:c1>B
B
![Page 75: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/75.jpg)
ILPs - Integer Linear Programs
• Traffic flows in the direction opposite to route advertisement• Only depends on quantitative path property and not exact path• ILP constraints model reachability• Tag/Community
• Objective models the graph property75
B
CD
eBGP
eBGPeBGPS1
<at:c1>
<bt:c1>B
B
Reachability < K failures = Minimize link failuresLongest path = Maximize path length
![Page 76: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/76.jpg)
ILPs - Integer Linear Programs
• Traffic flows in the direction opposite to route advertisement• Only depends on quantitative path property and not exact path• ILP constraints model reachability• Tag/Community
• Objective models the graph property• More details about the ILP and its corner cases are in the paper 76
B
CD
eBGP
eBGPeBGPS1
<at:c1>
<bt:c1>B
B
Reachability < K failures = Minimize link failuresLongest path = Maximize path length
![Page 77: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/77.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
TDFS
PATHEXISTENCE
Graph Model
Algorithms
77
![Page 78: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/78.jpg)
TDFS – Tiramisu Depth First Search
78
B
CD
eBGP
eBGPeBGPS1
<bt:c1>
<at:c1>
• Can’t use vanilla graph algorithms to model tags
![Page 79: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/79.jpg)
TDFS – Tiramisu Depth First Search
79
B
CD
eBGP
eBGPeBGPS1
<bt:c1>
<at:c1>
• Can’t use vanilla graph algorithms to model tags• Conditions• Block path: tag-blocking node à tag-adding node
![Page 80: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/80.jpg)
TDFS – Tiramisu Depth First Search
80
B
CD
eBGP
eBGPeBGPS1
<bt:c1><rt:c1>
<at:c1>
• Can’t use vanilla graph algorithms to model tags• Conditions• Block path: tag-blocking node à tag-adding node• Allow path: tag-blocking node à tag-removing node à tag-adding node
![Page 81: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/81.jpg)
TDFS – Tiramisu Depth First Search
81
B
CD
eBGP
eBGPeBGPS1
<bt:c1><rt:c1>
<at:c1>Verify if src and dst are always unreachable
• Can’t use vanilla graph algorithms to model tags• Conditions• Block path: tag-blocking node à tag-adding node• Allow path: tag-blocking node à tag-removing node à tag-adding node
![Page 82: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/82.jpg)
Tiramisu Overview
Traffic Propagation Graph (TPG)
Routing Adjacencies Graph (RAG)
Configurations
TDFS
PATHENUMERATION
NUMERIC GRAPH PROPERTY
PATHEXISTENCE
Graph Model
Algorithms
82
ILPTPVP
![Page 83: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/83.jpg)
Evaluation• Networks used • Real networks: 4 universities and 34 datacenters
• Evaluation• Tiramisu verification performance• Comparison with other state-of-the-art
83
Policy Name Algorithm
block Always blocked TDFS
bound Always bounded length ILP
pref Path preference TPVP
![Page 84: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/84.jpg)
Evaluation – Tiramisu’s Performance
84
• bound is slowest because it uses ILP
0
20
40
60
80
Uni1 (9) Uni2 (24) Uni3 (26) Uni4 (35)Ti
me
(ms)
University
pref bound block
![Page 85: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/85.jpg)
Evaluation – Tiramisu’s Performance
85
• bound is slowest because it uses ILP• block is fastest because it uses TDFS
0
20
40
60
80
Uni1 (9) Uni2 (24) Uni3 (26) Uni4 (35)Ti
me
(ms)
University
pref bound block
![Page 86: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/86.jpg)
Evaluation – Tiramisu’s Performance
86
• bound is slowest because it uses ILP• block is fastest because it uses TDFS• pref is slower than block as TPVP is more complex
0
20
40
60
80
Uni1 (9) Uni2 (24) Uni3 (26) Uni4 (35)Ti
me
(ms)
University
pref bound block
![Page 87: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/87.jpg)
Evaluation – Tiramisu’s Performance
87
• bound is slowest because it uses ILP• block is fastest because it uses TDFS• pref is slower than block as TPVP is more complex• For large networks, pref is as long as bound• Large networks à More candidate and longer paths à More calls to TPVP
0
20
40
60
80
Uni1 (9) Uni2 (24) Uni3 (26) Uni4 (35)Ti
me
(ms)
University
pref bound block
![Page 88: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/88.jpg)
Evaluation: Tiramisu vs. Minesweeper (No failures)
88
• block has the most speedup
0
10
20
30
40
0 5 10 15 20 25
Spee
dup
Network Size
pref
0
10
20
30
0 10 20 30
Spee
dup
Network Size
bound
0
50
100
150
0 10 20 30
Spee
dup
Network Size
block
![Page 89: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/89.jpg)
Evaluation: Tiramisu vs. Minesweeper (No failures)
89
• block has the most speedup• pref has the least speedup (especially for large networks)• Large networks à more and longer candidate paths à more calls to TPVP
0
10
20
30
40
0 5 10 15 20 25
Spee
dup
Network Size
pref
0
10
20
30
0 10 20 30
Spee
dup
Network Size
bound
0
50
100
150
0 10 20 30
Spee
dup
Network Size
block
![Page 90: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/90.jpg)
90
Evaluation: Tiramisu vs. Minesweeper (All failures)
• Same trend but significantly better speed up• Minesweeper uses same encoding for all policies• Tiramisu uses property specific algorithms
020406080
100
0 5 10 15 20 25
Spee
dup
Network Size
pref
0
20
40
60
0 10 20 30
Spee
dup
Network Size
bound
0
200
400
600
800
0 10 20 30
Spee
dup
Network Size
block
![Page 91: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1](https://reader035.vdocuments.net/reader035/viewer/2022062303/5f2866f7404c18450b01a1cb/html5/thumbnails/91.jpg)
Summary• Tiramisu decouples encoding of the network from verification algorithms• Tiramisu uses a multilayer graph control plane model• Tiramisu uses• TPVP to enumerate paths• ILP to measure quantitative graph property• TDFS to check path existence
• Tiramisu achieves good performance without losing too much coverage• No external advertisements
91