27
1 - CS7701 – Fall 2004 Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks Paper by: Dah-Ming Chiu (Digital Equipment Corporation) Raj Jain (Digital Equipment Corporation) Published in: Computer Networks and ISDN Systems (1989) Presented by: Max Podlesny Discussion Leader: CS7701: Research Seminar on Networking http://arl.wustl.edu/~jst/cse/770/

Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

  • Upload
    bruno

  • View
    33

  • Download
    1

Embed Size (px)

DESCRIPTION

CS7701: Research Seminar on Networking http://arl.wustl.edu/~jst/cse/770/. Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks. Paper by: Dah-Ming Chiu (Digital Equipment Corporation) Raj Jain (Digital Equipment Corporation) Published in: - PowerPoint PPT Presentation

Citation preview

Page 1: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

1 - CS7701 – Fall 2004

Analysis of the Increase and Decrease Algorithms for Congestion

Avoidance in Computer Networks

• Paper by: Dah-Ming Chiu (Digital Equipment Corporation)

Raj Jain (Digital Equipment Corporation)

• Published in: Computer Networks and ISDN Systems (1989)

• Presented by: Max Podlesny

•Discussion Leader: Michela Becchi

CS7701: Research Seminar on Networkinghttp://arl.wustl.edu/~jst/cse/770/

Page 2: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

2 - CS7701 – Fall 2004

Outline

• Problem• Linear Controls• Optimizing the Control Schemes• Nonlinear Controls• Conclusion

Page 3: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

3 - CS7701 – Fall 2004

Problem• Mismatch of arrival and service rates

– Increased queuing in a buffer of a router– Packet drops

• Does TCP congestion control scheme have a theoretical basis?

Page 4: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

4 - CS7701 – Fall 2004

What is congestion?

Page 5: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

5 - CS7701 – Fall 2004

Criteria for selecting controls

• Distributedness• Efficiency• Fairness• Convergence

Page 6: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

6 - CS7701 – Fall 2004

Control system model

• n users share the resource• Time is divided into small slots• The i-th user’s load is xi(t) at time slot t

Page 7: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

7 - CS7701 – Fall 2004

Control system model

• The total load at the bottleneck resource is xi(t)

• The state of the system is characterized by

x(t)={x1(t), x2(t), …, xn(t)}

• Xgoal is the desired load level

Page 8: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

8 - CS7701 – Fall 2004

Control system model

• Users receive the same feedback• Users receive feedback at the same time

Page 9: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

9 - CS7701 – Fall 2004

Control system model

• Binary feedback y(t),

• xi(t+1) = xi(t) + f(xi(t), y(t))

Page 10: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

10 - CS7701 – Fall 2004

Control system model

User 1

User 2

User n

xi > Xgoal ?

x1

x2

xn

y

Page 11: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

11 - CS7701 – Fall 2004

Control functions

• MIMD (Multiple Increase/Multiple Decrease)

– bI > 1, 0 < bD,< 1

• AIAD (Additive Increase/Additive Decrease)

– aI > 0, aD,< 0

Page 12: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

12 - CS7701 – Fall 2004

Control functions

• AIMD (Additive Increase/Multiple Decrease)

– aI > 0, 0 < bD,< 1

• MIAD (Multiple Increase/Additive Decrease)

– bI > 0, aD,< 0

Page 13: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

13 - CS7701 – Fall 2004

Distributedness

• System does the minimum amount of feedback

• The following information is assumed to be unknown:– The desired load level– The number of users sharing the resource

Page 14: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

14 - CS7701 – Fall 2004

Efficiency

• X(t) > Xgoal or X(t) < Xgoal are considered to be inefficient

Page 15: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

15 - CS7701 – Fall 2004

Fairness

• 1/n<=F(x)<=1• Independent of scale(unit measurement)• A continuous function• Equal sharing by k users of n users, k-n users do

not receive any resource, F(x)=k/n

Page 16: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

16 - CS7701 – Fall 2004

Convergence

• Time taken till the system approaches the goal state from any starting state– Characterized by:

• Responsiveness• Smoothness

– Tradeoff between responsiveness and smoothness

Page 17: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

17 - CS7701 – Fall 2004

Vector representation

• 2 users, so n=2• x0 ={x10, x20}

• The fairness at any point (x1, x2) is equal

to

User 1’s allocation

User 2’sallocation

Fairness Line

x0

Efficiency Line

Page 18: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

18 - CS7701 – Fall 2004

AIAD

User 1’s allocation x1

User 2’sallocation

x2

Fairness Line

x0

Efficiency Line

Page 19: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

19 - CS7701 – Fall 2004

AIMD

User 1’s allocation x1

User 2’sallocation

x2

Fairness Line

x2

x0

x1

Efficiency Line

Page 20: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

20 - CS7701 – Fall 2004

How to find control function?

• Convergence to efficiency– The principle of negative feedback:

• if y(t) = 0 then xi(t+1) > xi(t)

• if y(t) = 1 then xi(t+1) < xi(t)

• Convergence to fairness– F(x(t)) 1 as t , so: F(x(t+1)) = F(x(t)) + (1-F(x(t))) (1- xi

2(t) / (c+xi(t))2),

where c = a/b

• Distributedness – if y(t) = 0 then xi(t+1) > xi(t) i

– if y(t) = 1 then xi(t+1) < xi(t) i

Page 21: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

21 - CS7701 – Fall 2004

Requirements for control function

• The linear increase policy should have an additive component, and optionally, a multiplicative component– aI > 0

– bI 1

• The linear decrease policy should be multiplicative– aD = 0

– 0 bD < 1

Page 22: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

22 - CS7701 – Fall 2004

Optimal Convergence to Efficiency

• Given– n states for n users, i.e. xi(t+1) = a + bxi(t),

i = 1, 2, …, n.– State of the system X(t) = xi(t)

– X(0) - initial state

– Xgoal – optimal state

• One can calculate– te - responsiveness

– se - smoothness

• te, se are decreasing functions of a and b

Page 23: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

23 - CS7701 – Fall 2004

Optimal Convergence to Fairness

• F(x(t+1)) – F(x(t)) is a monotonically increasing function of c = a/b

• aD = 0, so decrease steps have no affect on

Fairness

• The optimal value of bI is its minimum value, i.e.

bI =1

Page 24: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

24 - CS7701 – Fall 2004

Linear control conditions

• Increase policy should be additive• Decrease policy should be multiplicative

x1

x2

Fairness Line

x0

Efficiency Line

Page 25: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

25 - CS7701 – Fall 2004

Nonlinear Controls

• Control function

• A lot of complexity

Page 26: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

26 - CS7701 – Fall 2004

Conclusion

• Best control condition is AIMD within the described model

• AIMD is used in TCP congestion control• It is not the case in real networks• MIMD can also be a good decision

Page 27: Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

27 - CS7701 – Fall 2004

Questions?