Multi-Commodity Flow with In-Network Processing Moses Charikar - - PowerPoint PPT Presentation

multi commodity flow with in network processing
SMART_READER_LITE
LIVE PREVIEW

Multi-Commodity Flow with In-Network Processing Moses Charikar - - PowerPoint PPT Presentation

Routing and Steering Network Design Multi-Commodity Flow with In-Network Processing Moses Charikar Yonatan Naamad Jennifer Rexford X. Kelvin Zou Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with


slide-1
SLIDE 1

Routing and Steering Network Design

Multi-Commodity Flow with In-Network Processing

Moses Charikar Yonatan Naamad Jennifer Rexford

  • X. Kelvin Zou

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-2
SLIDE 2

Routing and Steering Network Design

Outline

1 Routing and Steering 2 Network Design

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-3
SLIDE 3

Routing and Steering Network Design

In-Network Processing

Computer Networks are now dual-purpose.

1 Route traffic 2 Perform services

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-4
SLIDE 4

Routing and Steering Network Design

In-Network Processing

Computer Networks are now dual-purpose.

1 Route traffic 2 Perform services

Firewalls Load balancers Video transcoders Traffic encryption/compression Etc.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-5
SLIDE 5

Routing and Steering Network Design

In-Network Processing

Computer Networks are now dual-purpose.

1 Route traffic 2 Perform services

Firewalls Load balancers Video transcoders Traffic encryption/compression Etc.

Novel uses require novel algorithms.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-6
SLIDE 6

Routing and Steering Network Design

Middlebox Processing

Historically, middleboxes were single purpose. Network Function Virtualization (NFV) allows for greater flexibility. Question: how do we best utilize this newfound flexibility?

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-7
SLIDE 7

Routing and Steering Network Design

Our Model

Given

1 A graph G modeling our network. 2 Edge capacities Be on links. 3 Processing capacities Cv on vertices. 4 A collection of flow demand (si, ti) pairs.

Find

A way to route and process as much flow as possible.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-8
SLIDE 8

Routing and Steering Network Design

Our Model

Given

1 A graph G modeling our network. 2 Edge capacities Be on links. 3 Processing capacities Cv on vertices. 4 A collection of flow demand (si, ti) pairs.

Find

A way to route and process as much flow as possible.

Assumption: one unit of flow requires one unit of processing.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-9
SLIDE 9

Routing and Steering Network Design

Routing vs. Steering

Our problem has two components: Routing routes traffic between endpoints.

Equivalent to Maximum Multicommodity Flow

Steering steers traffic to processing nodes.

Equivalent to Multi-source/sink Maximum flow

We attempt to solve the joint routing and steering problem.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-10
SLIDE 10

Routing and Steering Network Design

An (exponential) LP

Problem admits an obvious walk-based LP

Maximize

D

  • i=1
  • π∈P

pi,π Subject to pi,π =

v∈π

pv

i,π

∀i ∈ 1..D, π ∈ P

D

  • i=1
  • π∋e

pi,π ≤ Be ∀e ∈ E

D

  • i=1
  • π∈P

pv

i,π ≤ Cv

∀v ∈ V pv

i,π ≥ 0

∀pv

i,π

Problem: program size may be exponential.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-11
SLIDE 11

Routing and Steering Network Design

Equivalent LP

We can also write an edge-based LP

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-12
SLIDE 12

Routing and Steering Network Design

Equivalent LP

We can also write an edge-based LP

Too big to fit on this slide.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-13
SLIDE 13

Routing and Steering Network Design

Equivalent LP

We can also write an edge-based LP

Too big to fit on this slide.

Key ideas:

1 Each flow demand gets two sets of variables: fi and wi.

wi = unprocessed flow being routed fi = total flow being routed

2 wi absorbed at middleboxes, fi absorbed at terminals 3 wi is bounded by fi 4 Other constraints are standard extensions of the

multicommodity flow LP.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-14
SLIDE 14

Routing and Steering Network Design

Proof of Equivalence (outline)

Equivalence of the two LPs is nontrivial OPT may use edges more than once. Care is required!

s 2 2 T 2 5 5 5 5 5 5 5 5

Proof outline:

Cancel redundant wi and fi flows as much as possible. Argue that cycles must have some e where wi(e) drops. Peel off this edge and proceed

Conclusion: O(|V | · |E| · |D|) algorithm for converting between the two LPs.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-15
SLIDE 15

Routing and Steering Network Design

Multiplicative Weights

Edge-based LP can get unwieldy. (1 − ǫ) MW-based approximation in ˜ O(dm2/ǫ2) time. Similar to the Garg-K¨

  • nemann algorithm with a more

elaborate update step.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-16
SLIDE 16

Routing and Steering Network Design

Experiments

Ran experiments on Abilene network traces Baseline: route flow first, worry about processing later Two sets of processing power distributions:

All nodes get equal processing capacity A random subset of n/2 nodes get processing capcity.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-17
SLIDE 17

Routing and Steering Network Design

Experiments (absolute)

Results

200 400 600 800 1000 1000 2000 3000 4000 Per-node Processing Capacity (Mbps) Average Routed Flow (Mbps) Naive (All) LP (All) Naive (Half) LP (Half) Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-18
SLIDE 18

Routing and Steering Network Design

Experiments (ratio)

Results

200 400 600 800 1000 0.5 0.6 0.7 0.8 0.9 1 Per-node Processing Capacity (Mbps) Naive-to-OPT Routing Ratio All Process Half Process Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-19
SLIDE 19

Routing and Steering Network Design

Outline

1 Routing and Steering 2 Network Design

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-20
SLIDE 20

Routing and Steering Network Design

Network Design

We now know how to utilize middleboxes. How do we optimally place them in the first place? Middleboxes are indivisible → combinatorial problem.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-21
SLIDE 21

Routing and Steering Network Design

Network Design

Given

1 An edge-capacitated graph G. 2 The set of flow demands 3 For each middlebox v, proposals and costs of installing various

amounts of processing capacity

Find

1 The optimal purchase plan of middlebox processing power in G.

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-22
SLIDE 22

Routing and Steering Network Design

Four Key Problems

Directed Undirected Budgeted Maximization Minimization

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-23
SLIDE 23

Routing and Steering Network Design

Four Key Problems

Directed Undirected Budgeted Maximization NP-Hard NP-Hard Minimization NP-Hard NP-Hard

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-24
SLIDE 24

Routing and Steering Network Design

Four Key Problems

Directed Undirected Maximization Approximation O(log n) O(1)(†) Hardness O(1) O(1) Minimization Approximation O(log n)(∗) O(log n)(∗) Hardness O(log n) O(log n)

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing

slide-25
SLIDE 25

Routing and Steering Network Design

End

Questions?

Moses Charikar, Yonatan Naamad, Jennifer Rexford, X. Kelvin Zou Multi-Commodity Flow with In-Network Processing