Download presentation

Presentation is loading. Please wait.

Published byLoren Chavez Modified over 2 years ago

1
**Models and techniques for verification of Software Defined Networks**

Victor Altukhov Eugene Chemeritsky Vladislav Podymov Vladimir Zakharov Applied Research Center for Computer Networks

2
**Outline Introduction Software Defined Networks**

SDN Packet Forwarding Policies PFP Model Policy language FO[TC] Verifying monitor Vermont Experiments & Comparison

3
**What is Software Defined Network?**

What is SDN? Conventional network Application Forwarding state Host Port Link Switch B A

4
**What is SDN? … Conventional network B A Task How to forward a packet**

Application Topology … Forwarding state Packet Packet Packet B A

5
**What is SDN? Conventional network decentralized control non-uniformity**

Application Forwarding state decentralized control non-uniformity App App FS FS B App App FS A FS

6
**What is SDN? Conventional network SDN Controller centralized control**

decentralized control uniformity non-uniformity App App FS FS B App App FS A FS

7
**What is SDN? SDN Controller centralized control uniformity**

Application centralized control uniformity Control plane OpenFlow Data plane FS FS B FS A FS

8
**What is SDN? SDN Controller centralized control uniformity**

Application Upd Upd centralized control uniformity Control plane OpenFlow Ok, I can do it Don’t know what to do Data plane FS FS B FS A FS

9
**What is Packet Forwarding Policy?**

What is PFP? What is Packet Forwarding Policy? Example: Requirements imposed on a network to guarantee that its behavior is safe correct secure …

10
**What is PFP? Example: Reachability B A**

Packets from the host A will eventually reach the host B B A

11
**What is PFP? Example: No topological loops B A**

Packets do not traverse the same switch twice B A

12
**What is PFP? Example: Short routes only B A**

1 2 3 4 All hosts are reached in at most 3 hops B A

13
**What is PFP? Static Timeline Why ? Hardware errors**

Software (application) errors We want to check if PFPs hold in a real SDN Static and consider PFPs Timeline w.r.t. to

14
**How to check PFPs? Fast! Fast! ⊧ Policies Network M P Network model**

Formal specification Fast! ⊧ M P ~ 10μs Model checking

15
**Packet state Switch #2 Port #1 Header #h2 Switch #1 Port #1 Switch #4**

B h1 h4 A Switch #4 Port #3 Header #h4

16
**Packet state Switch #2 Port #1 Header #h2 Switch #w Port #p Header #h**

B A Switch #4 Port #3 Header #h4

17
**Packet state S sizew sizep sizeh is the set of all packet states … 1**

Switch #w Port #p Header #h Switch #w Port #p Header #h … 1 sizew sizep sizeh S is the set of all packet states

18
**Raw model (p1, h1) (p2, h2) (p, h) … (pk, hk) rule**

is an explicit description of key SDN components such as: (p1, h1) (p2, h2) rule (p, h) … (pk, hk)

19
**Raw model table (p1, h1) (p2, h2) (p, h) … (pk, hk) rule rule rule**

is an explicit description of key SDN components such as: table (p1, h1) rule (p2, h2) rule (p, h) rule … rule (pk, hk) default

20
**Raw model table table … (p1, h1) (p2, h2) … (p, h) … … (pk, hk) Switch**

is an explicit description of key SDN components such as: Switch … (p1, h1) table table (p2, h2) … (p, h) … … (pk, hk)

21
Relational model Step ⊆ S x S In ⊆ S Out ⊆ S

22
**Relational model Step In Out ⊆ S x S ⊆ S ⊆ S (x, y) BDD (x) BDD (x)**

23
**PFP Specification Language: syntax**

Step In Out (x, y) (x) (x) Atoms: First order logic constructors: ⋁ & ⌝ ∀ ∃ x = y x = const State equalities: x.w = y.w x.w = const x.p = y.p x.p = const x.h = y.h x.h = const Closure constructors: + F (x, y) – transitive closure [i1, i2] F (x, y) – bounded transitive closure

24
**PFP SL: semantics (Step, In, Out, …) F RF ⊆ S × … × S n times**

Given a relational model F (x1, …, xn) a PFP SL formula defines a relation RF ⊆ S × … × S n times How?

25
**PFP SL: semantics (Step, In, Out, …) F RF Step In Out ⊆ S × … × S**

Given a relational model F (x1, …, xn) a PFP SL formula defines a relation RF ⊆ S × … × S n times How? Step In (x, y) (x) Obvious Out (x) … = …

26
**PFP SL: semantics (Step, In, Out, …) F RF F1 F2 F1 F2 F ⊆ S × … × S**

Given a relational model F (x1, …, xn) a PFP SL formula defines a relation RF ⊆ S × … × S n times F1 F2 (…) (…) How? ⋁ Union F1 F2 (…) (…) & Intersection F ⌝ (…) Complement

27
**PFP SL: semantics (Step, In, Out, …) F RF F F ⊆ S × … × S n times**

Given a relational model F (x1, …, xn) a PFP SL formula defines a relation RF ⊆ S × … × S n times How? F ∀ x (…) Universal projection F ∃ x (…) Existential projection

28
**PFP SL: semantics (Step, In, Out, …) F RF F F ⊆ S × … × S n times**

Given a relational model F (x1, …, xn) a PFP SL formula defines a relation RF ⊆ S × … × S n times + How? F (x, y) Transitive closure [i1, i2] F (x, y) Bounded transitive closure

29
**PFP SL: examples A B Step In Step Step In Out Step Step Reachability y**

∀ x (x) ∃ (y) Step * & (x, y) No topological loops In Step * ⌝ ∃ x,y,z (x) & (x, y) & + Step (y, z) & y.w = z.w Short routes only In Out ⌝ ∃ x,y (x) & (y) & + Step Step [1, 3] (x, y) ⌝ & (x, y)

30
**What else? adequate Model update Model Model Network**

continuously changes adequate Model should be at every instant We should be able to update Model on-line Model The update rate for Network should surpass the update rate for We can do it not discussed (to some extent)

31
**How does it work? Checker Controller Loader Proxy Network**

Main usage now: Checker Proxy Network

32
**We tested it for Stanford University Network 16 switches**

Fat Tree topology 48 tables forw. rules 1500 ACL rules >100 VLAN

33
**(strict superset of others)**

Tool comparison Tool Build (ms.) Update Policies OpenFlow concepts VERMONT (2014) 4600 FO[TC] (strict superset of others) Full NetPlumber (2013) 37000 CTL Partial VeriFlow (2013) > 4000 68-100 Small fixed set Minimal AP Verifier (2013) 1000 0.1 FlowChecker (2010) Anteater (2011) 400000 ??? No

34
The End Me:

Similar presentations

OK

VeriCon: Towards Verifying Controller Programs in SDNs Thomas Ball, Nikolaj Bjorner, Aaron Gember, Shachar Itzhaky, Aleksandr Karbyshev, Mooly Sagiv, Michael.

VeriCon: Towards Verifying Controller Programs in SDNs Thomas Ball, Nikolaj Bjorner, Aaron Gember, Shachar Itzhaky, Aleksandr Karbyshev, Mooly Sagiv, Michael.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Ppt on workplace etiquette powerpoint presentation Ppt on standardization and grading function Ppt on water activity meters Ppt on leverages definition Ppt on direct torque control method Ppt on human resource management system project Ppt on hard gelatin capsule Ppt on c language basics pdf Ppt on patient monitoring system using gsm Ppt on forward contracts