Dina Kat abi MI T Lab f or Comput er Science dk@mit.edu - - PowerPoint PPT Presentation

dina kat abi
SMART_READER_LITE
LIVE PREVIEW

Dina Kat abi MI T Lab f or Comput er Science dk@mit.edu - - PowerPoint PPT Presentation

XCP: eXplicit Control Protocol Dina Kat abi MI T Lab f or Comput er Science dk@mit.edu www.ana.lcs.mit.edu/dina Sharing t he I nt ernet I nf rast ruct ure I s f undament al Much research in Congest ion Cont rol, QoS, Dif f Serv,


slide-1
SLIDE 1

XCP: eXplicit Control Protocol

Dina Kat abi

MI T Lab f or Comput er Science

dk@mit.edu www.ana.lcs.mit.edu/dina

slide-2
SLIDE 2

Sharing t he I nt ernet I nf rast ruct ure Two Types of Requirement s:

  • 1. Ef f iciency: Use links t o maximum capacit y
  • 2. Allocat ion: What is t he shar e of each user ?
  • Fairness; Dif f erent ial Bandwidt h Allocat ion;

Priorit y …

  • I s f undament al

Much research in Congest ion Cont rol, QoS,

Dif f Serv, Pricing …

  • I s dif f icult because of Scale!
slide-3
SLIDE 3

Tradit ionally, a single mechanism cont rols bot h Ef f iciency and Allocat ion Example: I n TCP , it is Addit ive-I ncr ease Mult iplicat ive-Decrease (AI MD) XCP Approach: Decouple Ef f iciency and Allocat ion Cont rols

  • 1. Find best mechanism t o cont rol aggregat e t raf f ic

at a link t o achieve ef f icient links ut ilizat ion

  • 2. Find best mechanism t o shuf f le t he bandwidt h in

t he aggregat e t raf f ic t o converge t o t he desired allocat ion

slide-4
SLIDE 4

Decoupling Ef f iciency Cont rol f rom Allocat ion Cont rol

Sharing I nt ernet Resources

Show it via examples …

slide-5
SLIDE 5

Congest ion Cont rol

Example 1:

slide-6
SLIDE 6

Congest ion Cont rol

Example 1:

slide-7
SLIDE 7

Queue

Congest ion Cont rol

Example 1:

slide-8
SLIDE 8

Queue

Congest ion Cont rol

Example 1:

slide-9
SLIDE 9

Queue

Congest ion Cont rol

Example 1:

slide-10
SLIDE 10

Queue

Congest ion Cont rol

Example 1:

slide-11
SLIDE 11

Queue

Congest ion! I should slow down!

Congest ion Cont rol

Example 1:

slide-12
SLIDE 12

Congest ion! I should slow down!

Cont rol t he sources’ r at es t o get :

  • Ef f iciency: good link ut ilizat ion, small

queues, f ew dr ops

  • Fairness: Sender s congest ed at same link

get equal t hroughput

The Congest ion Cont rol Problem

slide-13
SLIDE 13

Tradit ional Approach

TCP TCP

TCP couples Ef f iciency & Fairness

Cont rol drops at rout er [RED, REM, AVQ, … ]

TCP ’s Throughput Drop Time

TCP uses AI MD:

  • No Drop: I ncrease by a

const ant increment (i.e., 1 packet / RTT)

  • Drop: Halve t hroughput
slide-14
SLIDE 14

Problems wit h Current Approaches:

  • Good perf ormance requires paramet er t uning [RED,

ARED, REM, PI -cont roller, AVQ, … ]

  • I nef f icient as bandwidt h or delay increases [Low02]

Round Trip Delay (sec) TCP Ut ilizat ion Bot t leneck Bandwidt h (Mb/ s) TCP Ut ilizat ion

⇒ Need t o change congest ion cont rol because:

  • Bandwidt h is increasing (demands f or it are

increasing t oo!) making TCP more inef f icient

  • Delay is already a problem

⇒ Need t o change congest ion cont rol because:

  • Bandwidt h is increasing (demands f or it are

increasing t oo!) making TCP more inef f icient

  • Delay is already a problem
slide-15
SLIDE 15

Congest ion Cont r ol is I nef f icient Because:

  • Congest ion f eedback is binar y (i.e., dr op or

no-dr op) and indif f er ent t o t he degr ee of congest ion

As a result , TCP oscillat es bet ween over-ut ilizing

t he link and under-ut ilizing it

Ef f icient congest ion cont r ol r equir es Explicit f eedback

(I .e., rout ers t ell senders t he degree of congest ion )

Ef f icient congest ion cont r ol r equir es Explicit f eedback

(I .e., rout ers t ell senders t he degree of congest ion )

Solut ion:

slide-16
SLIDE 16

Answer: Per-f low st at e in rout ers ⇒ Doesn’t Scale! Unexpressive & Scalable Expressive & Scalable Unexpressive & Unscalable

TCP , TFRC, Binomial, …

Why Current Approaches Don’t Use Expressive Feedback?

×

Expressive & Unscalable

I n ATM: ERI CA, Charny’s, OSU, … (almost none in t he I nt ernet )

(Flow: packet s f rom same sender)

slide-17
SLIDE 17
  • Ef f icient link ut ilizat ion needs expressive f eedback
  • I n coupled syst ems, expressive f eedback led t o

per-f low st at e (Unscalable!)

Ef f iciency Problem: Solut ion: Use Decoupling

  • Decoupling looks at ef f iciency as a problem about

aggregat e t raf f ic

  • Mat ch aggregat e t raf f ic t o link capacit y and drain t he

queue

  • Benef it s: No need f or per-f low inf ormat ion
slide-18
SLIDE 18

Rout er comput es a f low’s f air rat e explicit ly To make a decision, rout er needs st at e of all f lows Unscalable Shuf f le bandwidt h in aggregat e t o converge t o f air rat es To make a decision, rout er needs st at e of t his f low Put a f low’s st at e in it s packet s [St oica] Scalable

Fairness Cont rol

slide-19
SLIDE 19

XCP: An eXplicit Cont rol Prot ocol

  • 1. Ef f iciency Cont roller

2.Fairness Cont roller

slide-20
SLIDE 20

Feedback Round Trip Time Congestion Window

Congestion Header

Feedback Round Trip Time Congestion Window

How does XCP Work?

Feedback = + 0.1 packet

slide-21
SLIDE 21

Feedback = + 0.1 packet Round Trip Time Congestion Window Feedback =

  • 0.3 packet

How does XCP Work?

slide-22
SLIDE 22

Congest ion Window = Congest ion Window + Feedback

Routers compute f eedback without keeping any per- f low state Routers compute f eedback without keeping any per- f low state How does XCP Work?

slide-23
SLIDE 23

How Does an XCP Rout er Comput e t he Feedback? Ef f iciency Cont roller Fairness Cont roller

Goal: Mat ches input t r af f ic t o link capacit y & dr ains t he queue Goal: Divides ∆ bet ween f lows t o conver ge t o f air ness Looks at aggregat e t raf f ic & queue Looks at a f low’s st at e in Congest ion Header Algor it hm: Aggregat e t raf f ic changes by ∆ ∆ ~ Spare Bandwidt h ∆ ~ - Queue Size So, ∆ = α davg Spar e - β Queue Algor it hm: I f ∆ > 0 ⇒ Divide ∆ equally bet ween f lows I f ∆ < 0 ⇒ Divide ∆ bet ween f lows pr opor t ionally t o t heir current rat es

(Proven t o converge t o f airness)

MI MD AI MD

slide-24
SLIDE 24

∆ = α davg Spar e - β Queue

2 2 4

2

α β π α = < < and Theor em: Syst em is st able

(I .e., converges t o ef f iciency) f or any link bandwidt h, delay, number of sour ces if :

(Proof based on Nyquist Crit erion)

I t I s Tricky …

Ef f iciency Cont roller Fairness Cont roller

No Paramet er Tuning No Paramet er Tuning

Algorit hm: I f ∆ > 0 ⇒ Divide ∆ equally bet ween f lows I f ∆ < 0 ⇒ Divide ∆ bet ween f lows pr opor t ionally t o t heir cur r ent r at es

Need t o est imat e number of f lows N

× =

. avg

d in pkts i avg i

Cwnd d RTT

N

RTTi : Round Trip Time of pkt i Cwndi : Congest ion Window in pkt i

No Per -Flow St at e No Per -Flow St at e

Windows change by ∆ every davg Traf f ic rat e changes by every davg Rat e r(t ) changes per t ime unit by

avg

d ∆

2

) ( ) (

avg avg

d t Q d t S r β α − = &

2 avg

d r ∆ = &

slide-25
SLIDE 25

∆ = α davg Spar e - β Queue

2 2 4

2

α β π α = < < and Theor em: Syst em is st able

(I .e., converges t o ef f iciency) f or any link bandwidt h, delay, number of sour ces if :

(Proof based on Nyquist Crit erion)

I t I s Tricky …

Ef f iciency Cont roller Fairness Cont roller

No Paramet er Tuning No Paramet er Tuning

Algorit hm: I f ∆ > 0 ⇒ Divide ∆ equally bet ween f lows I f ∆ < 0 ⇒ Divide ∆ bet ween f lows pr opor t ionally t o t heir cur r ent r at es

Need t o est imat e number of f lows N

× =

. avg

d in pkts i avg i

Cwnd d RTT

N

RTTi : Round Trip Time of pkt i Cwndi : Congest ion Window in pkt i

No Per -Flow St at e No Per -Flow St at e

slide-26
SLIDE 26

I mplement at ion

I mplement at ion uses f ew mult iplicat ions & addit ions per packet

Pract ical!

XCP can co-exist wit h TCP and can be deployed gr adually

Gradual Deployment

slide-27
SLIDE 27

Perf ormance

slide-28
SLIDE 28

Simulat ions Show XCP is Bet t er

  • Ext ensive Simulat ions
  • Compar ed wit h TCP over Dr opTail, RED,

REM, AVQ, CSFQ XCP:

  • Bet t er ut ilizat ion
  • Near-zero drops
  • Fairer
  • Ef f icient & robust t o increase in bandwidt h
  • Ef f icient & robust t o increase in delay
slide-29
SLIDE 29

Bot t leneck S1 S2 R1, R

2, …

, Rn Sn

Subset of Result s

Similar behavior over:

slide-30
SLIDE 30

XCP Remains Ef f icient as Bandwidt h or Delay I ncreases

Bot t leneck Bandwidt h (Mb/ s) Utilization as a f unction

  • f Bandwidth

Ut ilizat ion Round Trip Delay (sec) Ut ilizat ion Utilization as a f unction

  • f Delay
slide-31
SLIDE 31

XCP Remains Ef f icient as Bandwidt h or Delay I ncreases

Bot t leneck Bandwidt h (Mb/ s) Utilization as a f unction

  • f Bandwidth

Ut ilizat ion Round Trip Delay (sec) Ut ilizat ion Utilization as a f unction

  • f Delay

XCP increases proportionally to spare bandwidth rather than by a constant amount α and β chosen t o make syst em robust t o delay

slide-32
SLIDE 32

Time (sec) Time (sec)

XCP is More Ef f icient t han TCP

RTT = 40ms, C = 100 Mbps

Time (sec) Time (sec)

XCP shows f ast adapt at ion! XCP shows f ast adapt at ion!

Start 40 Flows Start 40 Flows Stop the 40 Flows Stop the 40 Flows

slide-33
SLIDE 33

XCP Deals Well wit h Short Web-Like Flows

Arrivals of Short Flows/ sec Average Ut ilizat ion Average Queue Drops

slide-34
SLIDE 34

XCP is Fairer t han TCP

Flow I D Flow I D Dif f erent Round Trip Delay Same Round Trip Delay Throughput Throughput

(RTT is f rom 40 ms t o 330 ms )

slide-35
SLIDE 35

XCP Summary

  • XCP

Out perf orms TCP Ef f icient f or any bandwidt h Ef f icient f or any delay Scalable

  • Benef it s of Decoupling

Ef f icient ut ilizat ion becomes about aggregat e

t raf f ic ⇒ No need f or per-f low st at e

St abilit y analysis looks only at Ef f iciency

Cont roller (independent of number of f lows)

slide-36
SLIDE 36

Decoupling Ef f iciency Cont rol f rom Allocat ion Cont rol

Sharing I nt ernet Resources

slide-37
SLIDE 37

Dif f erent ial Service

Problem Cont rol sources’ r at es t o get :

  • Ef f iciency :

Good ut ilizat ion, small queues, and f ew drops

  • Dif f er ent ial Bandwidt h Allocat ion [Kelly]):

Each user pays a price per unit t ime Users congest ed at t he same link obt ain

t hroughput s proport ional t o t heir respect ive prices

Example 2:

slide-38
SLIDE 38

Ef f iciency Cont roller

Decoupling allows us t o use XCP’s Ef f iciency Cont roller Modularizat ion & Reuse

slide-39
SLIDE 39

Allocat ion Cont roller

  • Algorit hm:

I f ∆ >

0 ⇒ Divide ∆ equally bet ween f lows I f ∆ < 0 ⇒ Divide ∆ bet ween f lows proport ionally t o t heir current rat e/ price

  • I mplement at ion:

Subst it ut e t he congest ion window

f ield by congest ion window/ price

Round Trip Time Congestion Window Price Feedback

  • Goal:

Converge t o dif f erent ial bandwidt h allocat ion

  • Decoupling ⇒ Don’t have t o worry about ef f iciency
slide-40
SLIDE 40
  • Allocat ion Cont roller can use a new

class of algorit hms t hat converge t o desired allocat ion but not t o ef f iciency

Doesn’t work wit hout decoupling! E.g., modif ying

TCP t o “ I ncrease by one packet & Decrease proport ionally t o rat e/ price.” drops t oo many packet s

Benef it s of Decoupling

slide-41
SLIDE 41

Perf ormance

Experiment :

3 sources t ransf erring a 10 MB f ile each

Price 0 = 5 P

rice 1 = 10

P

rice 2 = 15

Result :

Users share t he link proport ionally t o t heir prices

2

slide-42
SLIDE 42

Conclusion

  • Decoupling Ef f iciency cont r ol f r om Allocat ion

cont r ol is usef ul f or r esour ce management

Ef f iciency cont rol is independent of varying

paramet ers such as number of f lows

Modularizat ion & reuse of cont rollers Allocat ion cont rol does not care about ut ilizat ion

issues ⇒ Can use a new class of aggressive allocat ion algorit hms

  • Cur r ent ly applying decoupling t o guar ant eed

service, priorit y service, react ion over dif f er ent t ime scale, …

slide-43
SLIDE 43

ht t p:/ / www.ana.lcs.mit .edu/ dina/ XCP

Quest ions?