Top Banner
Fast Control Plane Analysis Using an Abstract Representation Aaron Gember-Jacobson, Raajay Viswanathan, Aditya Akella, Ratul Mahajan 1
26

Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Jun 20, 2018

Download

Documents

truongliem
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Fast Control Plane Analysis Using an Abstract Representation

AaronGember-Jacobson,RaajayViswanathan,AdityaAkella,RatulMahajan

1

Page 2: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ConfiguraAonerrorsarecommon

•  MulAplerouAngprotocols•  RouAngprocessprioriAes•  Routeexchange•  TrafficSelecAvity

–  RouteFilters–  ACLs

2

Humanerrorsareunavoidable

Page 3: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ErrorsleadtopolicyviolaAons

3

NetworkverificaAonisimportant

ViolaAonPolicy

Page 4: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

SomeviolaAonsonlyoccurunderfailures

4

RC RB

RA

OSPF1

1

3

SRC

DST

NetworkverificaAonunderarbitraryfailuresisrequired

Page 5: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

State-of-the-artverificaAonwithfailures•  Analyzecurrentdataplane[HSANSDI’13,VeriFlowNSDI’13]

–  Cannotverifypoliciesacrossfailures

5

ForwardingTable

ForwardingTable

ForwardingTable

ForwardingTable’

ForwardingTable’

ForwardingTable’

ForwardingTable’’

ForwardingTable’’

ForwardingTable’’

ForwardingTable’’’

ForwardingTable’’’

ForwardingTable’’’

•  Simulatelowlevelprotocolmessages[Ba[ishNSDI’15]•  Generatedataplanesforeachfailurecase

–  Timeconsuming

Page 6: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

6

HowdowespeedupnetworkverificaAonunderfailures?

NetworkverificaAon

underfailures

GraphAnalysis

Page 7: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

NetworkverificaAonunderfailuresusinggraphalgorithms

7

NetworkconfiguraAons

•  Graphsencodethenetwork’sforwardingbehaviorunderallpossiblefailurescenarios

•  VerificaAonreducestocheckingsimplegraph-levelproperAesàpolynomial:me

•  CollecAonofdigraphsàARC:AbstractRepresentaAonforControlplanes

22

4

1.2

10

0

6

CollecAonofweighteddigraphs

…...

Page 8: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Outline

•  MoAvaAon•  Requirements&ChallengesforARCcreaAon•  OurapproachforconstrucAngARCs•  NetworkverificaAonusingARCs•  EvaluaAon

8

Page 9: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Requirement:Encodingforwardingbehaviorsunderallfailures

•  Graphcontainsallpossiblepathsintheactualnetwork

•  ActualpathunderparAcularfailurescenarioisobtainablethroughgraphtraversal

9

22

4

1.2

10

0

6

6

2

10

Page 10: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ARCconstrucAon:Firststeps

•  NetworktopologyisessenAallyagraph

•  RouAngprotocolsdoleastcostforwarding–  OSPF:Djikstra’sAlgorithm

usingOSPFweights–  BGP:MinAShops

•  RouteredistribuAon•  RouAngcostvaries/protocol•  AdministraAveDistance•  Trafficclassfilters•  RouAnggranulariAes•  …

10

ShortestpathSRC

DST

NeedsophisAcatedapproachestodeterminegraphstructureandedgeweights

Opportuni:es Challenges

11

1

1

1110

10

10

10

20 20

OSPF BGP

SRC DST

A D

EB

C20

10

10

Page 11: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ARCConstrucAon:GraphStructure

•  OnedirectedgraphperSrc-Dstsubnetpair•  Ver:ces:hosts,rouAngprocesses•  Edges:flowofdataenabledbyexchangeofrouAnginformaAon

11

SRC:S

DST:T

A.1I

A.1O B.1I

B.1O Z.1I

Z.1O

Z.3I

Z.3O

Y.3O

Y.3I

X.3I

X.3OZ

B

X

BGP1

OSPF3

T

S

Y 1

2

A

3

Inter-device:adver:sements

Intra:Routeredistribu:on

Intra:withindeviceforwarding

Page 12: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

2

Z.5O

ARCconstrucAon:Edgeweights

•  ForsinglerouAnginstance,use:•  OSFPlinkweights•  BGPhopcounts

•  MulApleprocesses:AD?RedistribuAon?•  Normalizeweightsacross

instances

•  Novelalgorithmforscalingweights

12

SRC:S

DST:T

A.1I

A.1O B.1I

B.1O Z.1I

Z.1O

Z.3I

Z.3O

Y.3O

Y.3I

X.3I

X.3O

1

1

1

1

0 0 0

0 0 0

2

2

3

3

1

0.4 0.6

0.4 0.6

ShortestpathinARC==actualpath

Page 13: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

PolicyverificaAonusingARCs

13

Isapolicyviolatedin

thenetwork?::

DoesthegraphsaAsfysomeproperty?

Whatgraphalgorithmstouse?

Page 14: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Verifyalwaysblockedpolicy

14

CI

CO

DO

DI

DST SRC

IscommunicaAonbetweenSRCandDSTnotallowedunderanyfailurescenario?

::DoesthereexistapathfromSRCtoDSTinthecorrespondingARC?

Connectedcomponents

SRC

DST

3

1

1

D

CB

Page 15: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Verify‘k-’reachabilitypolicy

15Max-flow=3

DO

DI

EO

EI

FO

FI

GO

GI

CO

CI

BO

BIDST

SRC

OSPF ∞ 1

IsDSTalwaysreachablefromSRCwith‘<k’failures?

Arethere’k’edge-disjointpathsfromSRCtoDST?

Max-flowalgorithmonARC

::

SRCDST

D

CB

F G

3edge-disjointpaths

E

Page 16: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Verifypathequivalency

•  Re-scalingalgorithmscanresultindifferentweights•  Reduceweightstocanonicalformandcompare

16

?

u2

u1u3

u1

u5

u4u8

u7

u6

u9

u10

w2

w1

w3w1

w5

w4w8

w7

w6

w9

w10

Isatrafficclassforwardedinthesamemanner,beforeandaneraconfiguraAonchange?

AreARCsthesame?::

Page 17: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

AddiAonalproperAeswecanverify

•  Alwaysisolated:Trafficofdifferenttenantsarealwaysisolated

•  Alwaystraversewaypoints:Trafficbetweenhostsalwaystraversewaypoints

17

Page 18: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

EvaluaAon

•  ARCconstrucAonperformance•  ARCverificaAonperformance•  ARCfidelity

18

Page 19: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

NetworkconfiguraAons

•  ConfiguraAonsfrom314datacenternetworksoperatedbyalargeonlineserviceprovider

19

Page 20: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

TimetogenerateARC

20

Fast(<10seconds)evenforlargenetworks

TimetobuildARC

s(second

s)

Networks(sortedbysize)

ParseconfiguraAonsBuildARCfromscratch

Page 21: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

TimetoverifyARC

21

Alwaysblocked(connectedcomponents)

Alwaysreachablewith<kfailures

(maxflow)

Equivalentpaths(converttocanonicalweightsandcompare)

<500ms Upto100s<1sec

•  VerificaAonpertrafficclassisparallelizable

Page 22: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ComparisonwithBa[ish

22

AlwaysblockedusingARC

AlwaysblockedusingBaCish

<500ms Upto694days!

3-5ordersofmagnitudespeedup

Page 23: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ARCfidelity

23

•  Foranygivenfailurescenario,isARCshortestpath==actualnetworkpath?

•  FormallyproveARCfidelityfornetworkswith:– RouAngprotocols:OSPF,RIP,BGP– RouteredistribuAonisacyclic– RouteselecAonpreferencefollowaglobalorder

96%ofnetworkssaAsfytheseproperAes

Page 24: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

ARCfidelity

24

•  Forremainingnetworks– WecansAllgeneratethegraphstructure– Cannotgenerateedgeweights– Verify“alwaysblocked”,“k-reachability”

96% 4%

AllproperAescanbeverified

Cannotverifypathequivalence

Page 25: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

Summary•  NetworkverificaAonunder

failurescanbeformulatedasgraphanalysis

•  PresentedanabstractrepresentaAon,ARC

•  CanconstructhighfidelityARCsfor96%ofnetworks

•  O(103)-O(105)speedupinverificaAon

25

hDps://bitbucket.org/uw-madison-networking-research/arc

Page 26: Fast Control Plane Analysis Using an Abstract Representationpages.cs.wisc.edu/~raajay/papers/sigcomm16-arc-slides.pdf · Fast Control Plane Analysis Using an Abstract Representation

26