Title: Improving Adaptability and Fairness in Internet Congestion Control
1Improving Adaptability and Fairness in Internet
Congestion Control
- May 30, 2001
- Seungwan Ryu
- PhD Student of IE Department
- University at Buffalo
2I. Internet Congestion Control
- Internet Congestion Control
- Mathematical Modeling and Analysis
- Adaptive AQM and User Response
- Future Study Plan
3I. Internet Congestion Control
- What is Congestion ?
- Congestion Control and Avoidance
- Implicit vs. Explicit feedback
- TCP Congestion Control
- Active Queue management (AQM)
- Explicit Congestion Notification (ECN)
4What is congestion ?
- What is congestion ?
- The aggregate demand for bandwidth exceeds the
available capacity of a link. - What will be occur ?
- Performance Degradation
- Multiple packet loss
- Low link utilization (low Throughput)
- High queueing delay
- Congestion collapse
5Congestion Control and Avoidance
- Two approaches for handling Congestion
- Congestion Control (Reactive)
- Play after the network is overloaded
- Congestion Avoidance (Proactive)
- Play before the network becomes overloaded
6Implicit vs. Explicit feedback
- Implicit feedback Congestion Control
- Network drops packets when congestion occur
- Source infer congestion implicitly
- time-out, duplicated ACKs, etc.
- Example end-to-end TCP congestion Control
- Simple to implement but inaccurate
- implemented only at Transport layer (e.g., TCP)
7Implicit vs. Explicit feedback - 2
- Explicit feedback Congestion Control
- Network component (e.g., router) Provides
congestion indication explicitly to sources - use packet marking, or RM cells (in ATM ABR
control) - Examples DECbit, ECN, ATM ABR CC, etc.
- Provide more accurate information to sources
- But is more complicate to implement
- Need to change both source and network algorithm
- Need cooperation between sources and network
component
8TCP Congestion Control
- Use end-to-end congestion control
- use implicit feedback
- e.g., time-out, triple duplicated ACKs, etc.
- use window based flow control
- cwnd min (pipe size, rwnd)
- self-clocking
- slow-start and congestion avoidance
- Examples
- TCP Tahoe, TCP Reno, TCP Vegas, etc.
9TCP Congestion Control - 2
- Slow-start and Congestion Avoidance
cwnd
Congestion Avoidance
Slow Start
W1
W
4
2
1
RTT
RTT
Time
10Active Queue Management (AQM) - 1
- Performance Degradation in current TCP Congestion
Control - Multiple packet loss
- Low link utilization
- Congestion collapse
- The role of the router (i.e., network)
- Control congestion effectively with a network
- Allocate bandwidth fairly
11AQM - 2
- Problems with current router algorithm
- Use FIFO based tail-drop (TD) queue management
- Two drawbacks with TD lock-out, full-queue
- Possible solution AQM
- Drop packets before buffer becomes full
- Examples RED, BLUE, ARED, SRED, FRED,.
- Use (exponentially weighted) average queue length
as an congestion indicator
12AQM - 3
- Random Early Detection (RED)
- use network algorithm to detect incipient
congestion - Design goals
- minimize packet loss and queueing delay
- avoid global synchronization
- maintain high link utilization
- removing bias against bursty source
- Achieve goals by
- randomized packet drop
- queue length averaging
13RED
P
1
maxp
minth
maxth
K
14Active Queue Management (AQM) - 4
- Problems with existing AQM Proposals
- Mismatch between macroscopic and microscopic
behavior of queue length - Insensitivity to the change of input traffic load
- Configuration (parameter setting) problem
- Reasons
- Queue length averaging
- use inappropriate congestion indicator
- Use inappropriate control function
15Explicit Congestion Notification (ECN)
- Current congestion indication
- Use packet drop to indicate congestion
- source infer congestion implicitly
- ECN
- to give less packet drop and better performance
- use packet marking rather than drop
- need cooperation between sources and network
- need two bits in IP header ECT-bit, CE-bit
16ECN - 2
ECT
CE
ECT
CE
1 0
1 1
IP Header
1
2
TCP Header
0
0
CWR
CWR
ACK TCP Header
1
ECN-Echo
3
TCP Header
1
4
CWR
Source
Router
Destination
17Contents
- Internet Congestion Control
- Mathematical Modeling and Analysis
- Adaptive AQM and User Response
- Future Study Plan
18II. Mathematical Modeling and Analysis
- An Overview
- Mathematical Modeling of AQM
- Window based packet switching and the Internet
- Mathematical modeling and analysis of AQM
- Problems with existing AQMs
- Problems with existing AQMs
- Adaptive congestion indicator and control function
19Overview
- Goal of mathematical modeling
- see system dynamics (in steady state)
- capture main factors influence to performance
- provide design and/or operational recommendations
- Two approaches
- Modeling steady state TCP behaviors
- the square root law, PFTK
- assume TD queue management at the router
- Mathematical modeling and analysis of AQM (RED)
20Overview - 2
- AQM modeling and analysis
- Analytic modeling and analysis
- Control Theoretic Analysis
- Window based modeling and Analysis
- Assumptions
- Poisson assumption for input traffic
- Fixed number of persistent TCP traffics
- Steady state window size saturation
21Mathematical Modeling of AQM
- Window based packet switching Model (Yang 99)
- If link j is not congested
- If link j is congested
22Mathematical Modeling of AQM - 2
- Window size of an individual connection
- Since
- Limitation of this model
- Assume infinite buffer size
- No buffer overflow
- No packet drop
- No queue management algorithm at routers
23Mathematical Modeling of AQM - 3
24Mathematical Modeling of AQM - 4
- Extend Yangs Model to AQM model
- Finite buffer capacity K
- The router use AQM to control congestion
- When congested
- Our Model
- Yangs Model
25Mathematical Modeling of AQM - 5
- Case 1 Tail drop
- We obtain two relationship
- Finally, packet drop probability Pd
26Mathematical Modeling of AQM - 6
- Case 2 AQM
- Let
- Then
- Packet drop prob. Pd
27Mathematical Modeling of AQM - 7
- Congestion Indicator
- Input traffic load should be the congestion
Indicator - Current AQMs
- Use queue length Q as an alternative
- Assume that the input traffic load is fixed
in equilibrium - Reason
- can not measure(or estimate) exactly for on
line implementation of packet drop function
28Mathematical Modeling of AQM - 8
- Packet drop function
- Reason
- The traffic load fluctuate, NOT stay in
equilibrium - queue length is a function of input traffic
- Alternatively
29Problems with existing AQMs
- Mismatch between macroscopic and microscopic
behavior of queue length - Insensitivity to the input traffic load variation
- parameter configuration problem
30Problems with existing AQMs - 2
31Problems with existing AQMs - 3
- Mismatch between macroscopic and microscopic
behavior of queue length
32Problems with existing AQMs - 4
- Insensitivity to the input traffic load variation
- With light traffic (i.e., )
33Problems with existing AQMs - 5
- Insensitivity to the input traffic load variation
- With medium traffic (i.e.,
)
34Problems with existing AQMs - 6
- Insensitivity to the input traffic load variation
- With heavy traffic (i.e.,
)
35Problems with existing AQMs - 7
- Parameter configuration problem
- Has been a main design issue since 1993
- many modified AQMs has been proposed
- Verified with simple simulation or simple
experiment - good for particular traffic conditions
- Real traffic is totally different.
- Need adaptive congestion indicator and control
function - Adaptive to input traffic load variation
- Avoid congestion NOT based on current state
(i,e,. Q)
36 Contents
- Internet Congestion Control
- Mathematical Modeling and Analysis
- Adaptive AQM and User Response
- Future Study Plan
37III. Adaptive AQM and User Response
- Input traffic load Prediction
- Adaptive AQM algorithms
- Adaptive parameter configuration
- Adaptive User response algorithm
38Input traffic load Prediction
- Consider time-slotted model
- Time is divided into unit time slots, ?t, t0,1,
- calculate parameters at the end of each slot
- estimate Qt1 to detect congestion proactively
- Predict from measured input traffic ?t-1,
?t of past two time slots - Then, predict of next time slot ?t
39Adaptive AQM algorithms
- Algorithm I E-RED and E-GRED
- Enhanced-RED
- E-GRED similar to E-RED
40Adaptive AQM algorithms - 2
- Algorithm II
- Use both predicted traffic intensity and
current buffer utilization ?tQt/K - Possible algorithms
- Example
- If ?t is low and is high more penalty to
incoming packets - If ?t is high and is low more penalty on
existing packets - Only High penalty for both packets when ?t and
are high
41Adaptive AQM algorithms - 3
- Algorithm III E-BLUE
- BLUE Algorithm
- uses packet drops and link idle for adjusting
packet drop probability - Can not avoid some degree of performance
degradation - Enhancement
- Use Virtual lower/upper bound (VL, VU)
- Combine predicted queue length with BLUE
- Impose penalty according to the traffic situation
( , )
42Adaptive AQM algorithms - 4
- E-BLUE
- If , then pd pd- ?
- Else if VL lt ltVU,
- Else ( gtVU)
- pdpd?
43Adaptive parameter configuration
- Adaptive queue length sampling interval ?t
- Previous recommendations
- In 22, minimum RTT was recommended
- In 65, static and link speed independent value
was recommended - However, models of 22, 65 were assumed to have
persistent fixed N TCP traffics - Our recommendation
- The amount of incoming traffic fluctuate with
time - Adjust ?t according to the varying traffic
situation - (i.e., adjust ?t according to the amount of
input traffic)
44Adaptive parameter configuration - 2
Q
?(i-1)
Time
?(i2)
?(i1)
?i
45Adaptive parameter configuration - 3
- Adaptive filtering weight wq
- In RED, wq was recommended with 0.02 for
long-term (macroscopic) performance goal - Fixed small value of wq shows problems
- Parameter setting problem
- Insensitivity of control function to the change
of traffic - Fairness problem impose penalty to innocent
packets - Need to have adaptive wq to the change of traffic
load - One possible method
- Set wq as a function of current queue
utilization, - e.g., wq ? Qt/C , 0 lt ? lt 1
46Adaptive User response algorithm
- AQM need work with intelligent source response
for better performance - Enhanced-ECN
- If receive ECN feedback in ?(t-1)
- If No ECN feedback in ?t
- If received ACK gt 0
- Else
- Else, Continue usual response to ECN feedback
- Else, Continue TCP Congestion Avoidance
47Contents
- Internet Congestion Control
- Mathematical Modeling and Analysis
- Adaptive AQM and User Response
- Future Study Plan
48IV. Future Study Plan
- Future Study plan a schedule
- Mathematical Modeling and Analysis
- Stability and Control Dynamics
- Alternative Modeling
- Control Theoretic Consideration
- Simulation plan
- Traffics
- Performance Metrics
49Future Study plan a schedule
- Documentation
- Mathematical Modeling and Analysis
- Simulation plan
- Performance Metrics
50Mathematical Modeling and Analysis
- Since pf(?,q) ,
- Then find equilibrium point (?,p)
p
?g(p)
Pf(?)
(?,p)
?
51Mathematical Modeling and Analysis - 2
- Alternative Modeling
- State dependent service M/M/1 queueing model
- Lminth, KK-minth
52Mathematical Modeling and Analysis - 3
- Service rates
- Steady state probabilities
53Mathematical Modeling and Analysis - 3
- Control Theoretic Consideration
54Simulation plan
- Goal of simulation study
- See dynamics and performance of our AQM
- Compare results with other AQM such as RED
- Use realistic traffic
- previous studies has been done with simple and
unreal traffic (fixed number of persistent TCPs) - Generate realistic Internet traffic
- Long-lived (FTP) and short-lived (web-like) TCP
traffic - UDP traffic CBR and/or ON/OFF
55Performance Metrics
- TCP traffics
- Network-centric for aggregate traffic
- Throughput (or goodput)
- Packet dropping (marking) probability
- Link utilization (or queueing delay)
- User-centric for Individual traffic
- goodput (or throughput)
- mean response time (RTT)
- UDP traffic
- individual packet drop probability and its
distribution