Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification...

91
Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar * , Aaron Gember Jacobson # , and Aditya Akella * 1 * University of Wisconsin-Madison, # Colgate University

Transcript of Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification...

Page 1: Tiramisu: Fast Multilayer Network Verification...Tiramisu: Fast Multilayer Network Verification Anubhavnidhi “Archie” Abhashkumar*, Aaron Gember Jacobson#, and Aditya Akella* 1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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