Scalable Mul*-Class Traffic Management in Data Center - - PowerPoint PPT Presentation

scalable mul class traffic management in data center
SMART_READER_LITE
LIVE PREVIEW

Scalable Mul*-Class Traffic Management in Data Center - - PowerPoint PPT Presentation

Scalable Mul*-Class Traffic Management in Data Center Backbone Networks Amitabha Ghosh (UtopiaCompression) Sangtae Ha (Princeton) Edward Crabbe (Google) Jennifer


slide-1
SLIDE 1

Scalable ¡Mul*-­‑Class ¡Traffic ¡Management ¡ in ¡Data ¡Center ¡Backbone ¡Networks ¡

Amitabha ¡Ghosh ¡(UtopiaCompression) ¡ Sangtae ¡Ha ¡(Princeton) ¡ Edward ¡Crabbe ¡(Google) ¡ Jennifer ¡Rexford ¡(Princeton) ¡

slide-2
SLIDE 2

Outline ¡

  • Mo*va*on ¡
  • Contribu*ons ¡
  • Model ¡and ¡Formula*on ¡
  • Scalable ¡Designs ¡
  • Performance ¡Evalua*on ¡
  • Conclusions ¡
slide-3
SLIDE 3

Mo*va*ons ¡

q Mul*ple ¡interconnected ¡data ¡centers ¡(DCs) ¡with ¡mul*ple ¡paths ¡between ¡ them ¡ q DCs, ¡traffic ¡sources, ¡and ¡backbone ¡owned ¡by ¡the ¡same ¡OSP, ¡e.g., ¡Google, ¡ Yahoo, ¡MicrosoR ¡

Backbone ¡

q Traffic ¡with ¡different ¡performance ¡ requirements ¡ q Different ¡business ¡importance ¡

Data ¡center ¡& ¡host ¡

slide-4
SLIDE 4

Contribu*ons ¡

Controlling ¡the ¡three ¡“knobs” ¡

q Sending ¡rates ¡of ¡hosts ¡ q Weights ¡on ¡link ¡schedulers ¡ q SpliYng ¡of ¡traffic ¡across ¡paths ¡ Joint ¡op*miza*on ¡of ¡rate ¡control, ¡ rou*ng, ¡and ¡link ¡scheduling ¡

Data ¡center ¡ backbone ¡ Source ¡DC ¡& ¡host ¡ ¡ Des*na*on ¡ host ¡& ¡DC ¡ ¡ Edge ¡ router ¡ ¡

slide-5
SLIDE 5

Contribu*ons ¡

q Computa*on ¡is ¡distributed ¡across ¡mul*ple ¡*ers ¡using ¡a ¡few ¡controllers ¡ ¡ q Result ¡is ¡provably ¡op*mal ¡using ¡op*miza*on ¡decomposi*on ¡ ¡ q Semi-­‑centralized ¡solu*ons ¡viable ¡and, ¡in ¡fact, ¡preferred ¡in ¡prac*ce, ¡e.g., ¡ Google’s ¡B4 ¡globally-­‑deployed ¡soRware ¡defined ¡private ¡WAN ¡(SIGCOMM ¡‘13) ¡

Fully-­‑centralized ¡ Not ¡scalable ¡ Fully-­‑distributed ¡ Scaling ¡issues ¡due ¡to ¡ message ¡passing, ¡slow ¡ convergence ¡ Semi-­‑centralized: ¡Our ¡work ¡ Modular, ¡scalable ¡with ¡low ¡message-­‑ passing ¡and ¡fast ¡convergence ¡ ¡ TRUMP ¡(CoNEXT ¡‘07) ¡ DaVinci ¡(CoNEXT ¡‘08) ¡

slide-6
SLIDE 6

Model ¡and ¡Formula*on ¡

Traffic ¡Model ¡

q Performance ¡requirements ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Set ¡of ¡traffic ¡classes ¡ q Mul*ple ¡flows ¡per ¡class ¡

  • Flow: ¡traffic ¡between ¡a ¡source-­‑des*na*on ¡pair ¡

¡

q Business ¡importance ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡flow ¡weight ¡

¡

U*lity ¡Func*on ¡of ¡a ¡Class ¡

q All ¡flows ¡in ¡the ¡same ¡class ¡have ¡the ¡same ¡u*lity ¡func*on ¡ ¡ q For ¡simplicity, ¡assume ¡only ¡throughput ¡and ¡delay ¡sensi*ve ¡traffic ¡

f k(·) gk(·)

U k(·)

wk

s

K = {k} s ∈ Fk

slide-7
SLIDE 7

Model ¡and ¡Formula*on ¡

Network ¡Model ¡

q Set ¡of ¡unidirec*onal ¡links ¡

  • Capacity ¡
  • Propaga*on ¡delay ¡

¡ q Set ¡of ¡paths ¡ ¡ q Rou*ng ¡matrix ¡ q One ¡queue ¡per ¡class ¡ ¡ q Mul*-­‑path ¡rou*ng ¡

  • Path ¡rate ¡of ¡flow ¡s ¡of ¡class ¡k ¡over ¡path ¡p ¡

L = {l} cl pl A = [Alp] R = ⇥ Rk

sp

Topology ¡matrix ¡ Path ¡rou*ng ¡matrix ¡

zk

sp

P = {p}

smaller ¡ larger ¡

slide-8
SLIDE 8

Model ¡and ¡Formula*on ¡

Throughput ¡ sensi*vity ¡of ¡ class ¡k, ¡e.g., ¡ log(.) ¡ Delay ¡ sensi*vity ¡

  • f ¡class ¡k ¡

Weight ¡of ¡ flow ¡s ¡of ¡ class ¡k ¡ Coefficients ¡to ¡model ¡different ¡degrees ¡

  • f ¡sensi*vity ¡to ¡throughput ¡and ¡delay ¡

Total ¡sending ¡ rate ¡of ¡flow ¡s ¡

  • f ¡class ¡k ¡

U*liza*on ¡

  • f ¡class ¡k ¡
  • ver ¡link ¡l ¡

U k

s = wk s

 akf k(xk

s) − bkgk(uk l )

  • U*lity ¡of ¡Flow ¡s ¡of ¡Class ¡k ¡

Sum ¡of ¡the ¡products ¡of ¡path ¡rates ¡and ¡ average ¡end-­‑to-­‑end ¡delays ¡on ¡those ¡paths ¡

slide-9
SLIDE 9

Model ¡and ¡Formula*on ¡

Objec*ve ¡Func*on ¡

q Data ¡centers, ¡backbone ¡and ¡traffic ¡sources ¡under ¡the ¡same ¡OSP ¡

  • wnership ¡

¡ q Maximize ¡the ¡sum ¡of ¡u*li*es ¡of ¡all ¡flows ¡across ¡all ¡traffic ¡classes ¡ (global ¡“social ¡welfare”) ¡

Global ¡Problem ¡G: ¡

subject to ARkzk yk, 8k X

k

yk

l ≤ cl,

∀l variables zk ⌫ 0, 8k maximize U = X

k

X

s∈Fk

U k

s

slide-10
SLIDE 10

Two-­‑Tier ¡Design ¡

Network ¡

C1 ¡ CK ¡

Classes ¡ . ¡. ¡. ¡ ¡ F F F F F F F Flows ¡ Link ¡Coordinator ¡(LC) ¡ ¡ Op*mizes ¡aggregate ¡ link ¡bandwidth ¡across ¡ classes ¡ Class ¡Allocator ¡(CA) ¡ ¡ Op*mizes ¡sending ¡ rates ¡across ¡flows ¡in ¡ its ¡own ¡class ¡

  • A ¡centralized ¡en*ty ¡
  • Knows ¡network ¡topology ¡
  • One ¡for ¡each ¡class ¡ ¡
  • Knows ¡the ¡u*lity ¡

func*on, ¡weights, ¡and ¡ paths ¡of ¡individual ¡flows ¡ in ¡its ¡own ¡class ¡

Each ¡controller ¡has ¡a ¡limited ¡view ¡about ¡the ¡network ¡and ¡inter-­‑DC ¡traffic ¡

yk zk

Coordina*on ¡

slide-11
SLIDE 11

Two-­‑Tier ¡Design ¡

Network ¡

C1 ¡ CK ¡

Classes ¡ . ¡. ¡. ¡ ¡ F F F F F F F Flows ¡ Message-­‑passing ¡ Message-­‑passing ¡

  • Coordina*on ¡
slide-12
SLIDE 12

Two-­‑Tier ¡Decomposi*on ¡

Primal ¡Decomposi*on ¡

Link ¡Coordinator ¡ Coordinates ¡all ¡the ¡subproblems ¡ Class ¡Allocator ¡ Solves ¡independently ¡

slide-13
SLIDE 13

Two-­‑Tier ¡Decomposi*on ¡

Primal ¡Decomposi*on ¡

Link ¡Coordinator ¡ Coordinates ¡all ¡the ¡subproblems ¡ Class ¡Allocator ¡ Solves ¡independently ¡

  • Subproblem ¡for ¡Class ¡k ¡

variables zk ⌫ 0 subject to ARkzk yk 8k maximize Uk = X

s∈Fk

U k

s

slide-14
SLIDE 14

Two-­‑Tier ¡Decomposi*on ¡

Primal ¡Decomposi*on ¡

Link ¡Coordinator ¡ Coordinates ¡all ¡the ¡subproblems ¡ Class ¡Allocator ¡ Solves ¡independently ¡

  • Subproblem ¡for ¡Class ¡k ¡

variables zk ⌫ 0 subject to ARkzk yk 8k maximize Uk = X

s∈Fk

U k

s

Master ¡Primal ¡

maximize U = X

k

Uk∗(yk) subject to X

k

yk

l ≤ cl

∀l variables yk ⌫ 0

slide-15
SLIDE 15

Two-­‑Tier ¡Decomposi*on ¡

Primal ¡Decomposi*on ¡

Link ¡Coordinator ¡ Coordinates ¡all ¡the ¡subproblems ¡ Class ¡Allocator ¡ Solves ¡independently ¡

  • Message-­‑Passing ¡
  • yk : Aggregate bandwidth assigned to class k

λk∗ : Optimal subgradient of CLASS(k)

step size : β

slide-16
SLIDE 16

Three-­‑Tier ¡Design ¡

Network ¡

C1 ¡ CK ¡

Classes ¡ . ¡. ¡. ¡ ¡ F F F F F F F Flows ¡

Why ¡another ¡*er? ¡(High ¡control ¡overhead) ¡

q Flow ¡of ¡a ¡given ¡class ¡may ¡originate ¡from ¡any ¡DC ¡ q Each ¡class ¡allocator ¡poten*ally ¡communicates ¡ with ¡all ¡DCs ¡

slide-17
SLIDE 17

Three-­‑Tier ¡Design ¡

Network ¡

C1 ¡ CK ¡

Classes ¡ . ¡. ¡. ¡ ¡ F F F F F F F Flows ¡

Why ¡another ¡*er? ¡(High ¡control ¡overhead) ¡

q Flow ¡of ¡a ¡given ¡class ¡may ¡originate ¡from ¡any ¡DC ¡ q Each ¡class ¡allocator ¡poten*ally ¡communicates ¡ with ¡all ¡DCs ¡

C1 ¡ CK ¡

Classes ¡ . ¡. ¡. ¡ ¡

DC1 ¡ DCj ¡ DCJ ¡

F F F F F F F Flows ¡ . ¡. ¡. ¡ ¡ . ¡. ¡. ¡ ¡ Data ¡ centers ¡

slide-18
SLIDE 18

Three-­‑Tier ¡Design ¡

Network ¡

C1 ¡ CK ¡

Classes ¡ . ¡. ¡. ¡ ¡

DC1 ¡ DCj ¡ DCJ ¡

F F F F F F F Flows ¡ . ¡. ¡. ¡ ¡ . ¡. ¡. ¡ ¡ Data ¡ centers ¡ Link ¡Coordinator ¡(LC) ¡ ¡ Op*mizes ¡aggregate ¡link ¡ bandwidth ¡across ¡classes ¡ Class ¡Allocator ¡(CA) ¡ ¡ Op*mizes ¡aggregate ¡link ¡ bandwidth ¡across ¡DCs ¡sending ¡ traffic ¡in ¡its ¡own ¡class ¡ Data ¡Center ¡Allocator ¡(DCA) ¡ ¡ Op*mizes ¡sending ¡rates ¡across ¡ flows ¡in ¡its ¡own ¡class ¡origina*ng ¡ from ¡its ¡own ¡DC ¡

yk zk ykj

One ¡ centralized ¡ en*ty ¡ One ¡per ¡ class ¡ One ¡per ¡class, ¡per ¡DC ¡

slide-19
SLIDE 19

Three-­‑Tier ¡Design ¡

Message-­‑passing ¡ Message-­‑passing ¡ Message-­‑passing ¡

slide-20
SLIDE 20

Three-­‑Tier ¡Decomposi*on ¡

2-­‑Level ¡Primal ¡Decomposi*on ¡

Link ¡Coordinator ¡ Coordinates ¡the ¡secondary ¡primals ¡ Class ¡Allocator ¡ Coordinates ¡the ¡ subproblems ¡of ¡its ¡

  • wn ¡class ¡

Data ¡Center ¡Allocator ¡ ¡Solves ¡independently ¡

slide-21
SLIDE 21

Three-­‑Tier ¡Decomposi*on ¡

Message-­‑Passing ¡

  • Inner ¡loop ¡

faster ¡ Outer ¡loop ¡ slower ¡

ykj : Aggregate bandwidth assigned to DC j sending traffic of class k yk : Aggregate bandwidth assigned to class k

λkj∗ : Optimal subgradient of DATACENTER(k,j) sk∗ : Optimal subgradient of CLASS(k)

slide-22
SLIDE 22

Performance ¡Evalua*on ¡

  • 4 ¡DCs ¡

1 ¡Gbps ¡link ¡capacity ¡in ¡each ¡direc*on ¡ First ¡3 ¡shortest ¡possible ¡paths ¡between ¡every ¡ pair ¡of ¡DCs ¡(36 ¡total) ¡ Two ¡classes ¡with ¡log ¡u*lity ¡func*ons ¡ Abilene ¡topology ¡

Performance ¡Metrics ¡

q Rate ¡of ¡convergence ¡ q Message-­‑passing ¡overhead ¡

  • Simple ¡topology ¡

DC1 ¡& ¡DC2 ¡send ¡traffic ¡to ¡DC3 ¡ 100 ¡Mbps ¡link ¡capacity ¡ Two ¡classes ¡with ¡log ¡u*lity ¡

slide-23
SLIDE 23

Rate ¡of ¡Convergence ¡

50 100 150 2 4 6 8 10 # of iterations to convergence % error =1 =2 =5 =10 =20 100 200 300 400 500 5 10 15 # of iterations to convergence % error =1 =2 =5 =10 =20

Each ¡itera*on ¡is ¡in ¡the ¡order ¡of ¡a ¡few ¡seconds: ¡ ¡

q There ¡can ¡be ¡only ¡so ¡many ¡different ¡types ¡of ¡performance ¡requirements ¡(~10) ¡ q Only ¡so ¡many ¡inter-­‑connected ¡DCs ¡(a ¡few ¡10s) ¡ Two-­‑*er ¡ Class-level step size : β Three-­‑*er ¡ DC-level step size : α = 2 Class-level step size : β

slide-24
SLIDE 24

Rate ¡of ¡Convergence ¡

Three-­‑*er: ¡Number ¡of ¡itera*ons ¡to ¡converge ¡for ¡different ¡combina*ons ¡of ¡ class-­‑level ¡and ¡DC-­‑level ¡step ¡sizes. ¡ 2 6 10 14 18 22 26 30 50 100 150 200 250

  • # of iterations to convergence

=2 =4 =6 =10

slide-25
SLIDE 25

Rate ¡of ¡Convergence ¡

Summary ¡of ¡the ¡convergence ¡behavior ¡

q In ¡prac*ce, ¡choose ¡step ¡sizes ¡that ¡converge ¡quickly. ¡ q Dynamic ¡traffic ¡demand: ¡For ¡private ¡OSP ¡backbone, ¡the ¡demand ¡variability ¡can ¡be ¡ controlled ¡to ¡some ¡extent ¡

slide-26
SLIDE 26

Message-­‑Passing ¡Overhead ¡

10 10

1

10

2

10

3

5 10 15x 10

5

# of flows in each class per data center # of messages exchanged 2−tier design 3−tier design

N 0 (2KL + 2JKLM) Two-­‑*er: ¡ # ¡of ¡variables ¡ Three-­‑*er: ¡ # ¡of ¡variables ¡ N @2KL + X

k

X

j

X

s∈Fkj

X

p

Rk

sp

1 A

N K L N 0 J M

  • No. ¡of ¡classes ¡
  • No. ¡of ¡backbone ¡links ¡
  • No. ¡of ¡DCs ¡
  • No. ¡of ¡class-­‑level ¡alloca*ons ¡

to ¡converge ¡in ¡two-­‑*er ¡and ¡ three-­‑*er ¡designs ¡

  • No. ¡of ¡DC-­‑level ¡alloca*ons ¡to ¡

converge ¡in ¡three-­‑*er ¡

(Un*l ¡convergence) ¡

q Messages ¡are ¡sent ¡over ¡the ¡wide ¡area ¡network ¡ q Number ¡of ¡messages ¡depends ¡on ¡the ¡number ¡of ¡flows ¡in ¡the ¡two-­‑*er ¡design, ¡but ¡not ¡ in ¡the ¡three-­‑*er ¡design ¡ q Small ¡compared ¡to ¡the ¡total ¡traffic ¡volume ¡ 100 ¡ 5 ¡

slide-27
SLIDE 27

Conclusions ¡

q SoRware ¡defined ¡traffic ¡management ¡for ¡wide ¡area ¡data ¡center ¡backbone ¡ networks ¡ q Two ¡scalable ¡and ¡prac*cal ¡semi-­‑centralized ¡designs ¡using ¡a ¡small ¡number ¡

  • f ¡controllers ¡that ¡can ¡be ¡implemented ¡in ¡real-­‑world ¡data ¡center ¡

backbones ¡(Google) ¡ q Joint ¡rate ¡control, ¡rou*ng, ¡and ¡link ¡scheduling ¡using ¡op*miza*on ¡in ¡a ¡ modular, ¡*ered ¡design ¡ q Results ¡provably ¡op*mal ¡using ¡principles ¡of ¡op*miza*on ¡decomposi*on ¡ q Tradeoff ¡between ¡rate ¡of ¡convergence ¡and ¡message-­‑passing ¡– ¡choose ¡the ¡ design ¡that ¡suits ¡the ¡OSP ¡best ¡

slide-28
SLIDE 28

Thank ¡You ¡

q Amitabha ¡Ghosh, ¡Sangtae ¡Ha, ¡Edward ¡Crabbe, ¡and ¡Jennifer ¡Rexford, ¡“Scalable ¡ Mul*-­‑Class ¡Traffic ¡Management ¡in ¡Data ¡Center ¡Backbone ¡Networks,” ¡IEEE ¡ JSAC: ¡Networking ¡Challenges ¡in ¡Cloud ¡Compu*ng ¡Systems ¡and ¡Applica*ons, ¡

  • vol. ¡13, ¡no. ¡12, ¡2013 ¡(in ¡press). ¡

¡ ¡ ¡ ¡ ¡ ¡hsp://anrg.usc.edu/~amitabhg/papers/JSAC-­‑CloudCompu*ng-­‑2013.pdf ¡