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
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/
2 - CS7701 – Fall 2004
Outline
• Problem• Linear Controls• Optimizing the Control Schemes• Nonlinear Controls• Conclusion
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?
4 - CS7701 – Fall 2004
What is congestion?
5 - CS7701 – Fall 2004
Criteria for selecting controls
• Distributedness• Efficiency• Fairness• Convergence
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
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
8 - CS7701 – Fall 2004
Control system model
• Users receive the same feedback• Users receive feedback at the same time
9 - CS7701 – Fall 2004
Control system model
• Binary feedback y(t),
• xi(t+1) = xi(t) + f(xi(t), y(t))
10 - CS7701 – Fall 2004
Control system model
User 1
User 2
User n
xi > Xgoal ?
x1
x2
xn
y
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
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
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
14 - CS7701 – Fall 2004
Efficiency
• X(t) > Xgoal or X(t) < Xgoal are considered to be inefficient
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
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
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
18 - CS7701 – Fall 2004
AIAD
User 1’s allocation x1
User 2’sallocation
x2
Fairness Line
x0
Efficiency Line
19 - CS7701 – Fall 2004
AIMD
User 1’s allocation x1
User 2’sallocation
x2
Fairness Line
x2
x0
x1
Efficiency Line
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
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
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
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
24 - CS7701 – Fall 2004
Linear control conditions
• Increase policy should be additive• Decrease policy should be multiplicative
x1
x2
Fairness Line
x0
Efficiency Line
25 - CS7701 – Fall 2004
Nonlinear Controls
• Control function
• A lot of complexity
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
27 - CS7701 – Fall 2004
Questions?