OptFlow: A Flow-based Abstraction for Programmable Topologies - - PowerPoint PPT Presentation

optflow a flow based abstraction for programmable
SMART_READER_LITE
LIVE PREVIEW

OptFlow: A Flow-based Abstraction for Programmable Topologies - - PowerPoint PPT Presentation

OptFlow: A Flow-based Abstraction for Programmable Topologies Klaus-Tycho Foerster Long Luo Manya Ghobadi Computer Science and Artificial Faculty of Computer Science University of Electronic Science University of Vienna and Technology of


slide-1
SLIDE 1

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 1

OptFlow: A Flow-based Abstraction for Programmable Topologies

Klaus-Tycho Foerster

Faculty of Computer Science University of Vienna Austria

Long Luo

University of Electronic Science and Technology of China P.R. China

Manya Ghobadi

Computer Science and Artificial Intelligence Laboratory, MIT USA

Paper available at https://dl.acm.org/doi/10.1145/3373360.3380840

slide-2
SLIDE 2

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 2

Wide/Regional/Metro-Area Networks are not Static

slide-3
SLIDE 3

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 2

Wide/Regional/Metro-Area Networks are not Static

slide-4
SLIDE 4
  • Dense Wavelength Division Multiplexing (DWDM)
  • > 100 wavelengths (e.g. 100Gbps) per fiber

Closer look: Optical components

edges

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 3

slide-5
SLIDE 5
  • Dense Wavelength Division Multiplexing (DWDM)
  • > 100 wavelengths (e.g. 100Gbps) per fiber
  • Wavelengths can be steered at connection points
  • By ROADMs (reconfigurable add/drop multiplexers)

Closer look: Optical components

edges nodes

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 3

slide-6
SLIDE 6

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x

wavelength

slide-7
SLIDE 7

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x

wavelength capacity = 1

slide-8
SLIDE 8

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x

wavelength

1 1 1 1

capacity = 1

slide-9
SLIDE 9

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x u v w x

wavelength

1 1 1 1 1 1 1 1

capacity = 1 throughput: 1+1

slide-10
SLIDE 10

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x u v w x u v w x

wavelength

1 1 1 1 1 1 1 1 2 2

capacity = 1 throughput: 1+1 throughput: 2+2

slide-11
SLIDE 11

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x u v w x u v w x

wavelength

1 1 1 1 1 1 1 1 2 2

capacity = 1 throughput: 1+1 throughput: 2+2

demand-aware capacity (wavelengths)

slide-12
SLIDE 12

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 4

Intuition: Move wavelengths

u v w x u v w x u v w x

wavelength

Topology Programmability (TP) + Traffic Engineering (TE) > TE

1 1 1 1 1 1 1 1 2 2

capacity = 1 throughput: 1+1 throughput: 2+2

demand-aware capacity (wavelengths)

slide-13
SLIDE 13
  • Variant #A: Optimize TP and Traffic Engineering (TE) separately?
  • Inefficient, misses opportunities (recall last slide)
  • Variant #B: Redesign TE to include TP?
  • Tedious, operators are reluctant
  • Variant #C: Don’t change TE, still incorporate TP!
  • Abstractions!

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 5

How to leverage Topology Programmability (TP)?

slide-14
SLIDE 14

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 6

How to incorporate current Traffic Engineering (TE)?

Unmodified Traffic Eng. Augmented Topology Reconfiguration Flow routing

Abstractions

slide-15
SLIDE 15

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 7

How to design the Abstraction?

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths
slide-16
SLIDE 16

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 7

How to design the Abstraction?

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths

Idea: u should only send 2 real units of traffic

  • Implement fake flows that block capacity
  • Represent dual wavelength assignment
  • TEs can deal with flows

u v x

slide-17
SLIDE 17

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 7

How to design the Abstraction?

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths

Idea: u should only send 2 real units of traffic

  • Implement fake flows that block capacity
  • Represent dual wavelength assignment
  • TEs can deal with flows

u v x

TE performs TP by routing both flow types

  • Fake flows from u to x or v
  • Real traffic from u to x

u v x

slide-18
SLIDE 18

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 8

Intuition for the Abstraction

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths
  • u wants to send traffic to x
  • v wants to send traffic to w

u→x: 2 v→w: 2

slide-19
SLIDE 19

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 8

Intuition for the Abstraction

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths
  • u wants to send traffic to x
  • v wants to send traffic to w

u v w x

Abstraction intuition

  • Every node sends 2 unit flows to neighbors
  • Every edge has a capacity of 2
  • u still wants to send traffic to x
  • v still wants to send traffic to w

2 2 2 2 u→x: 2 v→w: 2 u→x: 2 u↔{x,v}: 2 v→w: 2 v↔{u,w}: 2 u→x: 2 x↔{u,w}: 2 v→w: 2 w↔{v,x}: 2

slide-20
SLIDE 20

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 8

Intuition for the Abstraction

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths
  • u wants to send traffic to x
  • v wants to send traffic to w

u v w x

Abstraction intuition

  • Every node sends 2 unit flows to neighbors
  • Every edge has a capacity of 2
  • u still wants to send traffic to x
  • v still wants to send traffic to w

2 2 2 2 u→x: 2 v→w: 2 u→x: 2 u↔{x,v}: 2 v→w: 2 v↔{u,w}: 2 u→x: 2 x↔{u,w}: 2 v→w: 2 w↔{v,x}: 2

u v w x

Result:

  • 2 fake flows between u,v & x,w
  • No capacity left between u,v & x,w
  • 2 units of capacity for u,v & x,w
  • Real throughput of: 2+2

2 2 2 2 2 2 2 2

slide-21
SLIDE 21

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 8

Intuition for the Abstraction

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths
  • u wants to send traffic to x
  • v wants to send traffic to w

u v w x

Abstraction intuition

  • Every node sends 2 unit flows to neighbors
  • Every edge has a capacity of 2
  • u still wants to send traffic to x
  • v still wants to send traffic to w

2 2 2 2 u→x: 2 v→w: 2 u→x: 2 u↔{x,v}: 2 v→w: 2 v↔{u,w}: 2 u→x: 2 x↔{u,w}: 2 v→w: 2 w↔{v,x}: 2

u v w x

Result:

  • 2 fake flows between u,v & x,w
  • No capacity left between u,v & x,w
  • 2 units of capacity for u,v & x,w
  • Real throughput of: 2+2

2 2 2 2 2 2 2 2

u v w x

2 2

slide-22
SLIDE 22

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 8

Intuition for the Abstraction

u v w x

Setting in our example:

  • Every node supports 2 wavelengths
  • Every edge supports 2 wavelengths
  • u wants to send traffic to x
  • v wants to send traffic to w

u v w x

Abstraction intuition

  • Every node sends 2 unit flows to neighbors
  • Every edge has a capacity of 2
  • u still wants to send traffic to x
  • v still wants to send traffic to w

2 2 2 2 u→x: 2 v→w: 2 u→x: 2 u↔{x,v}: 2 v→w: 2 v↔{u,w}: 2 u→x: 2 x↔{u,w}: 2 v→w: 2 w↔{v,x}: 2

u v w x

Result:

  • 2 fake flows between u,v & x,w
  • No capacity left between u,v & x,w
  • 2 units of capacity for u,v & x,w
  • Real throughput of: 2+2

2 2 2 2 2 2 2 2

u v w x

2 2

TE performs TE+TP on abstraction details in the paper

slide-23
SLIDE 23
  • TE performs TE and TP due to the abstraction
  • Details in the paper
  • Consistent update methods for flows carry over
  • Abstraction enables cross-layer updates for free
  • Support for major TE types (max. throughput, k-shortest path routing etc.)

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 9

Takeaway

slide-24
SLIDE 24

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 10

Physical setup of our testbed Logical setup

Testbed: Demonstration of TP in Practice

slide-25
SLIDE 25
  • Traffic from A to C (via A-C and A-B-D-C)

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 11

Experiment setup Logical setup

Experiment: Demonstration of TP in Practice

slide-26
SLIDE 26
  • Traffic from A to C (via A-C and A-B-D-C)
  • Fail A-B link

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 12

Experiment setup Logical setup

Experiment: Demonstration of TP in Practice

slide-27
SLIDE 27
  • Traffic from A to C (via A-C and A-B-D-C)
  • Fail A-B link
  • Controller notices cut & shifts wavelength

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 13

Experiment setup Logical setup

Experiment: Demonstration of TP in Practice

(s)

slide-28
SLIDE 28

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 14

Simulations: k-Shortest Path Routing

slide-29
SLIDE 29
  • Comparison: Standard ILP (JointOpt) vs. our approach (OptFlow)

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 14

Simulations: k-Shortest Path Routing

slide-30
SLIDE 30
  • Comparison: Standard ILP (JointOpt) vs. our approach (OptFlow)

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 14

Simulations: k-Shortest Path Routing

slide-31
SLIDE 31
  • Comparison: Standard ILP (JointOpt) vs. our approach (OptFlow)

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 14

Simulations: k-Shortest Path Routing

slide-32
SLIDE 32
  • Our abstraction enables Traffic Engineering to leverage Topology Programming
  • Main idea: represent reconfigurability as flows
  • Key items evaluated in a small testbed
  • Simulations show good run time performance
  • Outlook: Expand to
  • further Traffic Engineering objectives
  • include amplifiers and long-range wavelengths

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 15

Summary and Outlook

slide-33
SLIDE 33

OptFlow: A Flow-based Abstraction for Programmable Topologies (SOSR'20) 16

OptFlow: A Flow-based Abstraction for Programmable Topologies

Klaus-Tycho Foerster

Faculty of Computer Science University of Vienna Austria

Long Luo

University of Electronic Science and Technology of China P.R. China

Manya Ghobadi

Computer Science and Artificial Intelligence Laboratory, MIT USA

Paper available at https://dl.acm.org/doi/10.1145/3373360.3380840