GAIMD Congestion Control Y. Richard Yang and Simon S. Lam, General - - PowerPoint PPT Presentation

gaimd congestion control
SMART_READER_LITE
LIVE PREVIEW

GAIMD Congestion Control Y. Richard Yang and Simon S. Lam, General - - PowerPoint PPT Presentation

GAIMD Congestion Control Y. Richard Yang and Simon S. Lam, General AIMD Congestion Control Proceedings IEEE ICNP 2000 Congestion Control, Proceedings IEEE ICNP 2000 , November 2000. GAIMD (Simon S. Lam) 1 3/9/2017 1 Motivation for new


slide-1
SLIDE 1

1

GAIMD Congestion Control

  • Y. Richard Yang and Simon S. Lam, “General AIMD

Congestion Control ” Proceedings IEEE ICNP 2000 Congestion Control, Proceedings IEEE ICNP 2000, November 2000.

1 GAIMD (Simon S. Lam)

3/9/2017

slide-2
SLIDE 2

2

Motivation for new congestion t l t ls control protocols

 Reducing cwnd to half of its value after a loss

g indication is too severe a reduction for some real- time apps (e.g., interactive multimedia)

 New apps may use UDP instead of TCP because they

do not require reliable delivery

 Increasing use of UDP without congestion control

would threaten stability of Internet y

  • > Need new CC protocols for apps that prefer an

alternative to TCP

GAIMD (Simon S. Lam) 2

alternative to TCP

slide-3
SLIDE 3

3

TCP-friendly protocols

 Alternatives to TCP congestion control with

smaller send rate fluctuations

 Equati n based rate c ntr l  Equation-based rate control

  • Datagram Congestion Control Protocol (RFC 4340)
  • Difficult to measure loss rate and TO in real time

 GAIMD in this paper

 TCP friendliness to better co exist with TCP  TCP-friendliness to better co-exist with TCP

traffic

 The send rate of a non-TCP flow should be

approximately the same as that of a TCP flow under the same conditions of round-trip time and loss rate

GAIMD (Simon S. Lam) 3

slide-4
SLIDE 4

4

GAIMD GAIMD

 Consider a more general version of AIMD;

let α > 0 and 1 > β > 0; let b denote the number of k t k l d d b h k packets acknowledged by each ack For each new ack received,

W W b α ← +

, For a TD ack,

bW

W W β ←

For a timeout, Oth h i (Sl St t ti

1 W ←

 Other mechanisms (Slow Start, congestion

indications, and round-trip time estimation) are the same as those of TCP Reno

GAIMD (Simon S. Lam) 4

slide-5
SLIDE 5

5

Previous models of TCP (f 1 β ½) (for α = 1, β = ½)

 No timeout (Matthis et al. 1997)  No timeout (Matthis et al. 1997)

1 3 send rate ( , , ) 2 T p RTT b RTT bp = =

 Timeouts included (Padhye et al. 1998)

send rate ( ) T p RTT T b =

p

send rate ( , , , ) 1 2 3 T p RTT T b b b = =    

2

2 3 min 1,3 (1 32 ) 3 8 bp bp RTT p p T     + +        

GAIMD (Simon S. Lam) 5

slide-6
SLIDE 6

6

GAIMD send rate

send rate ( ) T p RTT T b =

, 2

send rate ( , , , ) 1 T p RTT T b

α β

= =    

2 2

2 (1 ) (1 ) min 1,3 (1 32 ) (1 ) 2 b p bp RTT p p T β β α β α     − − + +       +    

 Same model and assumptions as Padhye et al.

 p : loss (indication) rate  RTT : mean round-trip time  RTT : mean round-trip time  T0 : mean timeout value

 Reduces to previous formula with α = 1 and β = ½  Send rate decreases with a larger RTT, larger T0 , or

larger b

 Send rate increases for a larger α ( > 0) or a larger β

GAIMD (Simon S. Lam) 6

 Send rate increases for a larger α ( > 0), or a larger β

( < 1)

slide-7
SLIDE 7

7

Interpreting the send rate formula

 Denominator is sum of the following 2 terms  Denominator is sum of the following 2 terms

2 (1 ) ( ) b p TD p RTT b RTT β   − =  

, 2 ,

( , , ) (1 ) ( , , ) (1 32 ) TD p RTT b RTT TO p T b Q p p T

α β α β

α β =   +   = +

, 2

(1 ) where min 1,3 2 bp Q

α β

β α   − =      

 Q, probability of a loss indication being a TO,

increases towards 1 as p increases 2α   increases towards 1 as p increases

 For a small p, TD = O(p0.5) >> TO = O(p1.5)

but s p inc s s th TO t m c nn t b i n d

GAIMD (Simon S. Lam) 7

but as p increases, the TO term cannot be ignored

slide-8
SLIDE 8

8

Formula validation Formula val dat on

 Is the formula accurate? Over what range  Is the formula accurate? Over what range

  • f loss rate p is it accurate?

 What is the general trend when the

formula loses accuracy? y

 When do sending rate variations become

W g m significant?

GAIMD (Simon S. Lam) 8

slide-9
SLIDE 9

9

Simulation setup

16 TCP Reno flows, 16 GAIMD flows, and flows with 16 TCP Reno flows, 16 GAIMD flows, and flows with ON/OFF times to model web-like traffic (UDP flows and short TCP flows)

  • Mean ON time = 1 s, mean OFF time = 2 s, Pareto distribution
  • During ON time, each source sends 500 Kbps

GAIMD (Simon S. Lam) 9

slide-10
SLIDE 10

10

Prediction accuracy

Measure of accuracy:

 predicted sending rate/ave. actual sending rate

Validity range of the formula

 For each β, vary α from 0.1 to 1.0  For each (α, β), vary the number of ON/OFF flows

from 10 to 70 to create a loss rate about 1% to 30%

Impact of loss pattern on the accuracy

  • f the formula

 Used different kinds of routers: drop-tail and RED

GAIMD (Simon S. Lam) 10

slide-11
SLIDE 11

11

Accuracy (1)

di ti / t prediction/measurement

GAIMD (Simon S. Lam) 11

slide-12
SLIDE 12

12

Accuracy (2)

prediction/measurement prediction/measurement Formula good for loss rate up to 20% up to 20%

GAIMD (Simon S. Lam) 12

slide-13
SLIDE 13

13

Accuracy (3)

prediction/measurement p RED router may not satisfy correlated loss assumption y y p

GAIMD (Simon S. Lam) 13

slide-14
SLIDE 14

14

Sending Rate Variation (drop-tail)

accuracy for individual GAIMD flows and TCP flows accuracy for individual GAIMD flows and TCP flows

TCP GAIMD

α=0.4, =0.4, β=0.75, =0.75, drop-tail router

GAIMD (Simon S. Lam) 14

slide-15
SLIDE 15

15

Sending Rate Variation (RED)

accuracy for individual GAIMD flows and TCP flows accuracy for individual GAIMD flows and TCP flows TCP E GAIMD α=0.4, =0.4, β=0.75, =0.75, RED router GAIMD

GAIMD (Simon S. Lam) 15

slide-16
SLIDE 16

16

Summary of Validation Tests

 A

t f l t 20%

 Accurate for loss rate p < 20%  Loss patterns (RED vs drop tail) do not  Loss patterns (RED vs. drop-tail) do not

have a large impact on accuracy

 Sending rate variance is small for a loss

rate of up to 10% p

 Trend: rate formulas tend to overestimate

h l h h h when loss rate is high or when α, β are aggressive

 Overestimates are similar for both TCP and

GAIMD (Simon S. Lam) 16

 Overestimates are similar for both TCP and

GAIMD (in most experiments)

slide-17
SLIDE 17

17

TCP-friendly GAIMD

 Choose α and β values such that

,

send rate ( , , , ) 1 T p RTT T b

α β

= =  

2 2

2 (1 ) (1 ) min 1,3 (1 32 ) (1 ) 2 b p bp RTT p p T β β α β α     − − + +       +    

1 1,2

( , , , ) T p RTT T b   =

 For all p, only solution is α = 1 and β = 1/2

GAIMD (Simon S. Lam) 17

slide-18
SLIDE 18

18

TD TCP-friendly curve

, 1 1,2

( , , ) ( , , ) TD p RTT b TD p RTT b

α β

= 2 (1 ) 2 (1 1/ 2) b p b p β     − −     2 (1 ) 2 (1 1/ 2) (1 ) (1 1/ 2) b p b p RTT RTT β α β     =     + +    

3(1 ) (1 ) β α β − = (1 ) β +

GAIMD (Simon S. Lam) 18

slide-19
SLIDE 19

19

TO TCP-friendly curve

, 1 1,2

( , , ) ( , , ) TO p T b TO p T b

α β

=

2 2 2

(1 ) (1 1/ 4) min 1,3 (1 32 ) min 1,3 (1 32 ) 2 2 bp bp p p T p p T β α     − − + = +              

2

(1 ) 3 β − = 2 8 α =

2

4(1 ) 3 β α − =

GAIMD (Simon S. Lam) 19

3

slide-20
SLIDE 20

20

Minimizing error over a range of p values

 Error function

1 , ( )

( ) ( ) 1 ( ) T p E w p dp T p

α β β α =

where w(p) ll t i ht

1 1,2

( ) T p

allocates weight p between 0 and 1

 For a given β  For a given β,

minimize error to get the best α get the best α

GAIMD (Simon S. Lam) 20

slide-21
SLIDE 21

21

Error as a function of α

 β = 0.875 T0 = 4(RTT)  Optimal value of α increases as threshold increases

GAIMD (Simon S. Lam) 21

 Optimal value of α increases as threshold increases

slide-22
SLIDE 22

22

(α, β) curves for the three approaches

1.8 2

TD

1 2 1.4 1.6

TO thr=0.1 thr=0.2

0 6 0.8 1 1.2 alpha

thr=0.3

We propose to use

0 2 0.3125

0.2 0.4 0.6

p p β=0.875 and α=0.31

0.2

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 beta

GAIMD (Simon S. Lam) 22

slide-23
SLIDE 23

23

Chiu and Jain model

Two competing TCP Reno flows:

 Additive increase gives slope of 1, as window size increases  Multiplicative decrease reduces window size proportionally

l i d i equal window size

congestion avoidance: additive increase loss: decrease window by factor of 2 congestion avoidance: additive increase loss: decrease window by factor of 2 congestion avoidance: additive increase

GAIMD (Simon S. Lam) 23

Connection 1 window size

slide-24
SLIDE 24

24

Evolution of Window Sizes

 Apply Chiu and Jain [5]

model to a TCP flow and a GAIMD flow (no and a GAIMD flow (no timeout, same RTT)

 GAIMD with α = 0.31

d and β = 0.875

 Windows of the two

flows do not converge flows do not converge to equal window size curve, but zigzag it across it

 GAIMD has smaller

window size

GAIMD (Simon S. Lam) 24

w ndow s ze

  • scillations
slide-25
SLIDE 25

25

Experiments on TCP friendliness E p m f

 TCP Reno flows compete with GAIMD(0.31,  TCP Reno flows compete with GAIMD(0.31,

0.875) flows, n flows each, same simulation topology

 Drop-tail or RED bottleneck link  Each run for 120 seconds of simulated time  Vary n from 1 to 64  Loss rate controlled by n value and link

L y bandwidth

GAIMD (Simon S. Lam) 25

slide-26
SLIDE 26

26

GAIMD competing with Reno

1.5 Mbps droptail link (high loss rate) .5 M ps ropta n (h gh oss rat )

TCP GAIMD TCP GAIMD TCP

GAIMD (Simon S. Lam) 26

slide-27
SLIDE 27

27

GAIMD competing with Reno

15 Mbps droptail link (-> smaller loss rate) p p

GAIMD TCP

GAIMD (Simon S. Lam) 27

slide-28
SLIDE 28

28

GAIMD competing with Reno

1.5 Mbps RED link (high loss rate) .5 M ps ED n (h gh oss rat )

TCP GAIMD

GAIMD (Simon S. Lam) 28

slide-29
SLIDE 29

29

GAIMD competing with Reno

15 Mbps RED link (-> smaller loss rate) 5 M ps ED n ( sma r oss rat )

GAIMD TCP GAIMD TCP GAIMD

GAIMD (Simon S. Lam) 29

slide-30
SLIDE 30

30

Rate Fluctuations vs. time

4 GAIMD(0.31 0.875) flows & 4 TCP Reno flows share 4 GAIMD(0.31, 0.875) flows & 4 TCP Reno flows share

 15 Mbps RED link  Each point in a trace obtained

by averaging over 150 ms, about 2 3 times RTT of a

 From [33] we know that the

CoV of GAIMD(0.31, 0.875) send rate is about half the CoV

  • f TCP send rate

GAIMD (Simon S. Lam) 30

about 2-3 times RTT, of a flow

  • f TCP send rate
slide-31
SLIDE 31

31

Conclusions

 A general version of AIMD with α and β  A general version of AIMD with α and β

parameter values

 A formula for the (mean) send rate of a GAIMD flow as a  A formula for the (mean) send rate of a GAIMD flow as a

function of α, β, p, b, RTT, and T0 ; it is accurate for p up to 20%

 Very easy to implement – modify a few lines of code  Very easy to implement modify a few lines of code  Equation-based rate control is complex and needs to measure p

and TO which is hard

 Relati nship between α and β f r GAIMD t

be

 Relationship between α and β for GAIMD to be

TCP-friendly

 Simulation results from experiments show that  Simulation results from experiments show that

GAIMD(0.31, 0.875) flows compete with TCP Reno (also SACK flows), at a drop-tail or RED bottleneck link, in a friendly manner

GAIMD (Simon S. Lam) 31

manner

 GAIMD(0.31, 0.875) has smaller rate fluctuatons

slide-32
SLIDE 32

32

The End The End

GAIMD (Simon S. Lam) 32