An Approximation Algorithm for Path Computation and Function - - PowerPoint PPT Presentation

an approximation algorithm for path computation and
SMART_READER_LITE
LIVE PREVIEW

An Approximation Algorithm for Path Computation and Function - - PowerPoint PPT Presentation

An Approximation Algorithm for Path Computation and Function Placement in SDNs Matthias Rost Technische Universitt Berlin July 21, SIROCCO 2016 Joint work with Guy Even and Stefan Schmid Matthias Rost (TU Berlin) Approximating PCFP in SDNs


slide-1
SLIDE 1

An Approximation Algorithm for Path Computation and Function Placement in SDNs

Matthias Rost

Technische Universität Berlin

July 21, SIROCCO 2016 Joint work with Guy Even and Stefan Schmid

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 1

slide-2
SLIDE 2

Introduction

slide-3
SLIDE 3

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

switches endpoints links

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-4
SLIDE 4

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-5
SLIDE 5

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-6
SLIDE 6

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-7
SLIDE 7

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Firewall Gateway

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-8
SLIDE 8

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Firewall Gateway

A C

Service Chain: 100$

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-9
SLIDE 9

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Firewall Gateway x86-Server

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-10
SLIDE 10

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Firewall Gateway x86-Server

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-11
SLIDE 11

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Firewall Gateway x86-Server

A C

Service Chain: 100$

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-12
SLIDE 12

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A

B C

SDN Controller

Firewall Gateway x86-Server

A C

Service Chain: 100$

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-13
SLIDE 13

Introduction Networking Opportunities

Opportunities: Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) [Kreutz et al., 2015]

A B C

SDN Controller

Firewall Gateway x86-Server

A C

Service Chain: 100$

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 3

slide-14
SLIDE 14

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

10 Gbps 10 Gbps 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-15
SLIDE 15

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

10 Gbps 10 Gbps 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps

? ? ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-16
SLIDE 16

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

10 Gbps 10 Gbps 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps

C B

? ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-17
SLIDE 17

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

10 Gbps 10 Gbps 5 Gbps

A C

300$ / 10 Gbps

A

10 Gbps

B C

150$ / 5 Gbps

A B

100$ / 10 Gbps

C B

? ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-18
SLIDE 18

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

0 Gbps 0 Gbps G b p s 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps 10 Gbps

?

A A B B ?

100$ / 10 Gbps 0 Gbps

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-19
SLIDE 19

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

0 Gbps 0 Gbps G b p s 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps 10 Gbps

A A B B ?

100$ / 10 Gbps 0 Gbps

? ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-20
SLIDE 20

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

SDN Controller

0 Gbps 0 Gbps G b p s 0 Gbps 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps

B ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-21
SLIDE 21

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

A B C

0 Gbps

SDN Controller

0 Gbps G b p s 0 Gbps 5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps

B ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-22
SLIDE 22

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

0 Gbps 0 Gbps G b p s

A B C

0 Gbps

SDN Controller

5 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps

B ?

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-23
SLIDE 23

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

G b p s

A B C

SDN Controller

0 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps 0 Gbps 0 Gbps 0 Gbps 5 Gbps

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-24
SLIDE 24

Introduction Informal Problem Definition

Path Computation and Function Placement Problem (PCFP)

G b p s

A B C

SDN Controller

0 Gbps

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps 10 Gbps 0 Gbps 0 Gbps 0 Gbps 5 Gbps

Achieved profit: 450$

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 4

slide-25
SLIDE 25

Introduction Definition of PCFP

Formal Definition of PCFP

Substrate Network Directed network N = (V , E) capacities c : V ∪ E → R≥0 Requests Acyclic graph Gi = (Xi, Yi) mapping restrictions Ui : Xi ∪ Yi → 2V ∪ 2E benefit, demand: bi, di ∈ R≥0 start, target: si, ti ∈ Xi c(a, d) = 10

b d a

c(a) = 10

c

fw si ti

Ui(ti) = {c} Ui(si) = {b} Ui(x86) = {c} Ui(fw) = {a} Ui(gw) = {d}

gw

x86

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-26
SLIDE 26

Introduction Definition of PCFP

Formal Definition of PCFP

Substrate Network Directed network N = (V , E) capacities c : V ∪ E → R≥0 Requests

B C

150$ / 5 Gbps

c(a, d) = 10

b d a

c(a) = 10

c

fw si ti

Ui(ti) = {c} Ui(si) = {b} Ui(x86) = {c} Ui(fw) = {a} Ui(gw) = {d}

gw

x86

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-27
SLIDE 27

Introduction Definition of PCFP

Formal Definition of PCFP

Substrate Network Directed network N = (V , E) capacities c : V ∪ E → R≥0 Requests Acyclic graph Gi = (Xi, Yi) mapping restrictions Ui : Xi ∪ Yi → 2V ∪ 2E benefit, demand: bi, di ∈ R≥0 start, target: si, ti ∈ Xi Task Find set I ′ ⊆ I of requests to embed and valid realizations ¯ pi for i ∈ I ′, s.t.

1

¯ pi represents a path from si ti

2 capacities of substrate nodes and edges is not violated 3 the profit

i∈I ′ bi is maximized.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-28
SLIDE 28

Introduction Definition of PCFP

Formal Definition of PCFP

Substrate

b d a c

Request ri fw si ti

Ui(ti) = {c} Ui(si) = {b} Ui(x86) = {c} Ui(fw) = {a} Ui(gw) = {d}

gw

x86

Valid Realizations via Product Networks: pn(N, ri)

ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

fw gw x86 si ti

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-29
SLIDE 29

Introduction Definition of PCFP

Formal Definition of PCFP

Valid Realizations Any ˆ si-ˆ ti path in pn(N, ri) represents a valid realization of request ri. Valid Realizations via Product Networks: pn(N, ri)

ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-30
SLIDE 30

Introduction Definition of PCFP

Formal Definition of PCFP

Valid Realizations: Example 1

A B C B C

Valid Realizations in Product Networks pn(N, ri)

ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-31
SLIDE 31

Introduction Definition of PCFP

Formal Definition of PCFP

Valid Realizations: Example 2

A B C B C

Valid Realizations in Product Network pn(N, ri)

ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 5

slide-32
SLIDE 32

Approximating PCFP

slide-33
SLIDE 33

Approximation Algorithm Flow Approach

PCFP as a Flow Problem

Requests

B C

150$ / 5 Gbps

A C

300$ / 10 Gbps

A B

100$ / 10 Gbps

Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

ˆ si ˆ ti

b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 7

slide-34
SLIDE 34

Approximation Algorithm Flow Approach

PCFP as a Flow Problem

Flow Formulation Compute unsplittable flows ¯ fi : E(pn(N, ri)) → {0, di} Flow preservation within each product network (except at ˆ si and ˆ ti) max

i bi · |¯

fi|/di s.t. node and edge capacities are not violated Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

ˆ si ˆ ti

b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 7

slide-35
SLIDE 35

Approximation Algorithm Flow Approach

PCFP as a Flow Problem

Flow Formulation Compute unsplittable flows ¯ fi : E(pn(N, ri)) → {0, di} Flow preservation within each product network (except at ˆ si and ˆ ti) max

i bi · |¯

fi|/di s.t. node and edge capacities are not violated Flow Solution in Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

| ˜ fi| = 10 ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

| ˜ fi| = 5

ˆ si ˆ ti

b d a c b d a c

| ˜ fi| = 0

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 7

slide-36
SLIDE 36

Approximation Algorithm Flow Approach

PCFP as a Flow Problem

Flow Formulation Compute unsplittable flows ¯ fi : E(pn(N, ri)) → {0, di} Flow preservation within each product network (except at ˆ si and ˆ ti) max

i bi · |¯

fi|/di s.t. node and edge capacities are not violated NP-Hardness follows from . . . the Unsplittable Flow Problem. Flow Solution in Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

| ˜ fi| = 10 ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

| ˜ fi| = 5

ˆ si ˆ ti

b d a c b d a c

| ˜ fi| = 0

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 7

slide-37
SLIDE 37

Approximation Algorithm Flow Approach

PCFP as a Flow Problem

USF Requests

B C A C A B

NP-Hardness follows from . . . the Unsplittable Flow Problem. Product Networks

ˆ si ˆ ti

b d a c

ˆ si ˆ ti

b d a c

ˆ si ˆ ti

b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 7

slide-38
SLIDE 38

Approximation Algorithm Flow Approach

Approximating PCFP using Randomized Rounding: Idea

Flow Formulation Compute flows as above, but relax integrality: ¯ fi : E(pn(N, ri)) → [0, di] Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

˜ fi(e) = 8 ˜ fi(e) = 4 ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

˜ fi(e) = 2 ˜ fi(e) = 1

ˆ si ˆ ti

b d a c b d a c

˜ fi(e) = 2

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 8

slide-39
SLIDE 39

Approximation Algorithm Flow Approach

Approximating PCFP using Randomized Rounding: Idea

Flow Formulation Compute flows as above, but relax integrality: ¯ fi : E(pn(N, ri)) → [0, di] Algorithm

1 Scale capacities by 1/(1 + ε) 2 Compute fractional flows 3 Place request i ∈ I into set

I ′ ⊆ I with probability |¯ fi|/di

4 Perform random walks to

  • btain ¯

pi for i′ ∈ I ′ Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

˜ fi(e) = 8 ˜ fi(e) = 4 ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

˜ fi(e) = 2 ˜ fi(e) = 1

ˆ si ˆ ti

b d a c b d a c

˜ fi(e) = 2

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 8

slide-40
SLIDE 40

Approximation Algorithm Flow Approach

Approximating PCFP using Randomized Rounding: Idea

Algorithm

1 Scale capacities by 1/(1 + ε) 2 Compute fractional flows 3 Place request i ∈ I into set

I ′ ⊆ I with probability |¯ fi|/di

4 Perform random walks to

  • btain ¯

pi for i′ ∈ I ′ Questions

1 What is the expected profit? 2 How badly do we violate

capacities? Product Networks

ˆ si ˆ ti

b d a c b d a c b d a c

˜ fi(e) = 8 ˜ fi(e) = 4 ˆ si ˆ ti

b d a c b d a c b d a c b d a c b d a c

˜ fi(e) = 2 ˜ fi(e) = 1

ˆ si ˆ ti

b d a c b d a c

˜ fi(e) = 2

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 8

slide-41
SLIDE 41

Performing Random Walks

slide-42
SLIDE 42

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Random Walk at node v: Pr[choose e] = ¯ fi(e)/

e′∈δ+(v) ¯

fi(e) ˆ si ˆ ti

b d a c b d a c

f(e) = 2 ˜ fi(e) = 1 Pr[e] = 1/3 Pr[e] = 2/3

b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-43
SLIDE 43

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Random Walk at node v: Pr[choose e] = ¯ fi(e)/

e′∈δ+(v) ¯

fi(e) ˆ si ˆ ti

b d a c b d a c

˜ fi(e) = 2 ˜ fi(e) = 1 Pr[e] = 1/3 Pr[e] = 2/3

b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-44
SLIDE 44

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Random Walk at node v: Pr[choose e] = ¯ fi(e)/

e′∈δ+(v) ¯

fi(e)

ˆ si ˆ ti

b d a c b d a c

Pr[e] = 0.5 ˜ fi(e) = 2 ˜ fi(e) = 1

b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-45
SLIDE 45

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Random Walk at node v: Pr[choose e] = ¯ fi(e)/

e′∈δ+(v) ¯

fi(e)

ˆ si ˆ ti

b d a c b d a c

˜ fi(e) = 2 ˜ fi(e) = 1

b d a c b d a c b d a c

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-46
SLIDE 46

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Random Walk at node v: Pr[choose e] = ¯ fi(e)/

e′∈δ+(v) ¯

fi(e)

ˆ si ˆ ti

b d a c b d a c

˜ fi(e) = 2 ˜ fi(e) = 1

b d a c b d a c b d a c

Theorem (by induction, cf. Motwani et al. [1996]) The probability that an edge e ∈ E(pn(N, ri)) will be used equals ¯ fi(e)/di. Hence, the expected load on an edge e ∈ E(pn(N, ri)) equals ¯ fi(e).

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-47
SLIDE 47

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Resulting realization ¯ pi

ˆ si ˆ ti

b d a c b d a c

Projected flow fi

b d a c

fi(e) = di

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-48
SLIDE 48

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Other potential realization ¯ pi

ˆ si ˆ ti

b d a c b d a c b d a c

Projected flow fi

b d a c

fi(e) = 2 · di fi(e) = 1 · di

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-49
SLIDE 49

Approximation Algorithm Random Walks

Approximating PCFP using Randomized Rounding: Random Walk

Other potential realization ¯ pi

ˆ si ˆ ti

b d a c b d a c b d a c

Projected flow fi

b d a c

fi(e) = 2 · di fi(e) = 1 · di Notation Let Ei(e) denote all copies of edge e ∈ E within pn(N, ri). Important fi(e) ≤ |Ei(e)| · di.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 10

slide-50
SLIDE 50

Analysis of Randomized Rounding

slide-51
SLIDE 51

Approximation Algorithm Analysis of Edge Violations

Approximating PCFP using Randomized Rounding: Analysis of Edge Capacities

Notation Let ∆max = maxi∈I Ei(e) and dmax = maxj∈I di Approach: Fix single substrate edge e ∈ E Interpret fi(e) as random variable Define Xi ∈ [0, 1]: Xi fi(e)/(∆max · dmax).

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 12

slide-52
SLIDE 52

Approximation Algorithm Analysis of Edge Violations

Approximating PCFP using Randomized Rounding: Analysis of Edge Capacities

Notation Let ∆max = maxi∈I Ei(e) and dmax = maxj∈I di Approach: Fix single substrate edge e ∈ E Interpret fi(e) as random variable Define Xi ∈ [0, 1]: Xi fi(e)/(∆max · dmax). Observe E [Xi] =

e′∈Ei(e) ¯

fi(e′)/(∆max · dmax).

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 12

slide-53
SLIDE 53

Approximation Algorithm Analysis of Edge Violations

Approximating PCFP using Randomized Rounding: Analysis of Edge Capacities

Notation Let ∆max = maxi∈I Ei(e) and dmax = maxj∈I di Approach: Fix single substrate edge e ∈ E Interpret fi(e) as random variable Define Xi ∈ [0, 1]: Xi fi(e)/(∆max · dmax). Observe E [Xi] =

e′∈Ei(e) ¯

fi(e′)/(∆max · dmax). Note that E [Xi] ≤ µi holds for µi ¯ c(e) ∆max · dmax ·

  • e′∈Ei(e) ¯

fi(e′)

  • j∈I
  • e′∈Ej(e) ¯

fj(e′) , as

j∈I

  • e′∈Ej(e) ¯

fj(e′) ≤ ¯ c(e) holds.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 12

slide-54
SLIDE 54

Approximation Algorithm Analysis of Edge Violations

Approximating PCFP using Randomized Rounding: Analysis of Edge Capacities

Notation Let ∆max = maxi∈I Ei(e) and dmax = maxj∈I di Approach: Fix single substrate edge e ∈ E Interpret fi(e) as random variable Define Xi ∈ [0, 1]: Xi fi(e)/(∆max · dmax). Observe E [Xi] =

e′∈Ei(e) ¯

fi(e′)/(∆max · dmax). Note that E [Xi] ≤ µi holds for µi ¯ c(e) ∆max · dmax ·

  • e′∈Ei(e) ¯

fi(e′)

  • j∈I
  • e′∈Ej(e) ¯

fj(e′) , as

j∈I

  • e′∈Ej(e) ¯

fj(e′) ≤ ¯ c(e) holds. Hence, µ

i∈I µi = ¯

c(e)/(∆max · dmax).

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 12

slide-55
SLIDE 55

Approximation Algorithm Analysis of Edge Violations

Approximating PCFP using Randomized Rounding: Analysis of Edge Capacities

Approach: Fix single substrate edge e ∈ E Interpret fi(e) as random variable Define Xi ∈ [0, 1]: Xi fi(e)/(∆max · dmax). Observe E [Xi] ≤ µi = µi

¯ c(e) ∆max·dmax ·

  • e′∈Ei (e) ¯

fi(e′)

  • j∈I
  • e′∈Ej (e) ¯

fj(e′).

Let X =

i∈I Xi with E [X] ≤ µ = j∈I µi = ¯

c(e)/(∆max · dmax). The capacity along edge e ∈ E is violated, if X ≥ (1 + ε) · µ = c(e) ∆max · dmax)

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 13

slide-56
SLIDE 56

Approximation Algorithm Analysis of Edge Violations

Excursion: A Chernoff-Bound

Chernoff Let {Xi}i denote a sequence of independent random variables attaining values in [0, 1]. Assume that E [Xi] ≤ µi. Let X

i Xi and µ i µi.

Then, for ε > 0, Pr [X ≥ (1 + ε) · µ] ≤ e−β(ε)·µ.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 14

slide-57
SLIDE 57

Approximation Algorithm Analysis of Edge Violations

Excursion: A Chernoff-Bound

Chernoff Let {Xi}i denote a sequence of independent random variables attaining values in [0, 1]. Assume that E [Xi] ≤ µi. Let X

i Xi and µ i µi.

Then, for ε > 0, Pr [X ≥ (1 + ε) · µ] ≤ e−β(ε)·µ. Definition of β The function β : (−1, ∞) → R is defined by β(ε) (1 + ε) ln(1 + ε) − ε. Observation For 0 < ε < 1 we have β(ε) ≥

2ε2 4.2+ε and hence β(ε) = Θ(ε2).

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 14

slide-58
SLIDE 58

Approximation Algorithm Analysis of Edge Violations

Approximating PCFP using Randomized Rounding: Analysis of Edge Capacities

Approach: Fix single substrate edge e ∈ E Define Xi ∈ [0, 1]: Xi fi(e)/(∆max · dmax), with E [Xi] ≤ µi. Let X =

i∈I Xi with E [X] ≤ µ = ¯

c(e)/(∆max · dmax). The capacity along edge e ∈ E is violated, if X ≥ (1 + ε) · µ Application of Chernoff-Bound Pr

  • i∈I

Xi ≥ (1 + ε) · µ

  • ≤ e−β(ε)·µ = e−β(ε)·¯

c(e)/(∆max·dmax)

Under small demands, i.e. assuming

¯ c(e) ∆maxdmax ≥ 4.2+ε ε2

· ln |E| As β(ε) ≥ 2ε2 4.2 + ε holds, Pr

  • i∈I

Xi ≥ (1 + ε) · µ

  • ≤ 1/|E|2 follows.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 15

slide-59
SLIDE 59

Main Results

slide-60
SLIDE 60

Approximation Algorithm Main Results

Approximating PCFP using Randomized Rounding: Main Results

Main Theorem Assume that

cmin ∆max·dmax ≥ 4.2+ε ε2

· (1 + ε) · ln |E| for ε ∈ (0, 1). The rounding scheme – under scaling capacities by 1/(1 + ε) – yields Pr [original edge capacity is violated] ≤ 1 |E| Pr

  • B(alg) < 1 − ε

1 + ε · B(opt∗)

  • ≤ e−β(−ε)·B(opt∗)/((1+ε)·bmax·dmax).

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 17

slide-61
SLIDE 61

Approximation Algorithm Main Results

Approximating PCFP using Randomized Rounding: Main Results

Main Theorem Assume that

cmin ∆max·dmax ≥ 4.2+ε ε2

· (1 + ε) · ln |E| for ε ∈ (0, 1). The rounding scheme – under scaling capacities by 1/(1 + ε) – yields Pr [original edge capacity is violated] ≤ 1 |E| Pr

  • B(alg) < 1 − ε

1 + ε · B(opt∗)

  • ≤ e−β(−ε)·B(opt∗)/((1+ε)·bmax·dmax).

Monte Carlo By repeating the rounding finitely many times, a high quality solution can be found with high probability.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 17

slide-62
SLIDE 62

Approximation Algorithm Main Results

Approximating PCFP using Randomized Rounding: Main Results

Main Theorem Assume that

cmin ∆max·dmax ≥ 4.2+ε ε2

· (1 + ε) · ln |E| for ε ∈ (0, 1). The rounding scheme – under scaling capacities by 1/(1 + ε) – yields Pr [original edge capacity is violated] ≤ 1 |E| Pr

  • B(alg) < 1 − ε

1 + ε · B(opt∗)

  • ≤ e−β(−ε)·B(opt∗)/((1+ε)·bmax·dmax).

Corollary If additionally, bi = 1 holds for all i ∈ I, then with probability 1 − O(1/Poly(|E|), the algorithm returns a solution with at least 1 − O(ε) times the optimal benefit with high probability.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 17

slide-63
SLIDE 63

Conclusion

slide-64
SLIDE 64

Conclusion

Conclusion

Summary PCFP considers the placement of functions and the routing between these for multiple requests to maximize the profit. Apply randomized rounding (cf. Raghavan and Tompson [1987]) and

  • btain approximation under certain assumptions:

Small demands

¯ c(e) ∆maxdmax ≥ 4.2+ε ε2

· ln |E| to not violate capacites Small demands and unit benefits yield 1 − O(ε) approximation.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 19

slide-65
SLIDE 65

Conclusion

Conclusion

Summary PCFP considers the placement of functions and the routing between these for multiple requests to maximize the profit. Apply randomized rounding (cf. Raghavan and Tompson [1987]) and

  • btain approximation under certain assumptions:

Small demands

¯ c(e) ∆maxdmax ≥ 4.2+ε ε2

· ln |E| to not violate capacites Small demands and unit benefits yield 1 − O(ε) approximation.

Contribution: “Rediscovery” of randomized rounding Consider several (virtual) embedding options for requests (DAGs). Show applicability of randomized rounding to exert admission control. Perform concise mathematical analysis. First non-trivial approximation for embeddings multiple graphs.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 19

slide-66
SLIDE 66

Conclusion

Related Work

Randomized Rounding VLSI design to minimize width [Raghavan and Tompson, 1987] Analysis of the approximation for PCFP without requiring assumptions and generalization to ‘cyclic’ requests [Rost and Schmid, 2016] Modeling and Embedding Requests Product Network and Online Approximation [Even et al., 2016] Heuristics for choosing virtual embedding options and embedding services [Sahhaf et al., 2015]

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 20

slide-67
SLIDE 67

Conclusion

References I

Guy Even, Moti Medina, and Boaz Patt-Shamir. Competitive path computation and function placement in sdns. CoRR, abs/1602.06169,

  • 2016. URL http://arxiv.org/abs/1602.06169.
  • D. Kreutz, F. M. V. Ramos, P. E. Verissimo, C. E. Rothenberg,
  • S. Azodolmolky, and S. Uhlig. Software-defined networking: A

comprehensive survey. Proceedings of the IEEE, 103(1):14–76, 2015. ISSN 0018-9219. doi: 10.1109/JPROC.2014.2371999. Rajeev Motwani, Joseph Seffi Naor, and Prabhakar Raghavan. Randomized approximation algorithms in combinatorial optimization. In Approximation algorithms for NP-hard problems, pages 447–481. PWS Publishing Co., 1996. Prabhakar Raghavan and Clark D Tompson. Randomized rounding: a technique for provably good algorithms and algorithmic proofs. Combinatorica, 7(4):365–374, 1987.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 21

slide-68
SLIDE 68

Conclusion

References II

Matthias Rost and Stefan Schmid. Service chain and virtual network embeddings: Approximations using randomized rounding. CoRR, abs/1604.02180, 2016. Sahel Sahhaf, Wouter Tavernier, Matthias Rost, Stefan Schmid, Didier Colle, Mario Pickavet, and Piet Demeester. Network service chaining with optimized network function embedding supporting service

  • decompositions. In Journal Computer Networks (COMNET), Elsevier,

2015.

Matthias Rost (TU Berlin) Approximating PCFP in SDNs Helsinki, July 2016 22