Title: Modeling the Effect of a Rate Smoother on TCP Congestion Control Behavior
1Modeling the Effect of a Rate Smoother on TCP
Congestion Control Behavior
- Kang Li, Jonathan Walpole, David C. Steere
- kangli, walpole, steere_at_cse.ogi.edu
- Department of Computer Science and Engineering
- Oregon Graduate Institute
Molly H. Shor shor_at_ece.orst.edu Department of
Electrical and Computer Engineering Oregon State
University
2Well-known Behaviors of TCP Congestion Control
TCP Transmission Rate
Available bandwidth
45
40
35
30
25
20
15
10
5
0
Time
0
10
20
30
40
50
- The phase plot for 2 competing TCPs
- The sawtooth figure for an individual TCP
3Trajectories of Various TCP-Friendly Congestion
Controls Competing with a TCP
A TCP-friendliness by Varying TCP AIMD
Parameters
BTCP-friendliness by Damping TCPs Rate
Variations
C An Arbitrary Trajectory that Tracks Around the
Fair Share Point
- There exists many limit cycles that oscillate
around the equal fair sharing point - However, we have assumed all the competing flows
back off together. - If the assumption is false, they may experience
different congestion signals. - Temporary rate mismatches may lead to non-uniform
losses across flows - Different network buffering states may affect the
timing of packet losses.
4Modeling Temporary Rate Mismatch
Rate Smoother
Buffer Fill-level
Rate Adjustment
Pacing Control
Sending Rate Calculated by TCP
Smoothed Output
0
B/2
-B/2
Forward and Wait
Mismatch window (a virtual Buffer)
TCP with a Rate Smoother Component
- We add a rate smoother to TCP to control the rate
mismatch - The pacing period and other control parameters
can be tuned. - Many existed and new pacing and smoothing
algorithms can be simulated. - By tracking a TCPs throughput, the rate smoother
provides an implementation of an Equation-Based
TCP-friendly Congestion Control. - To study the effect of smoothing on TCP, we built
a Matlab simulation and a Linux-based
implementation.
5Simulation in Matlab
Rate Smoother
- Smoothing is simulated based on the following
equations - TCP congestion avoidance is simulated by
- When no congestion signal
- When congestion signal arrives
Pacing Control
TCP AIMD
6Simulation of Two TCPs (one with rate smoother)
7Simulation Results (1) System Plot under Uniform
Packet Losses
A
B
- Uniform Losses The same congestion signal for
all TCP flows. - The system trajectory converges to a limit cycle
that oscillates around the equal bandwidth
sharing point. (Figure A) - Same phase plot as Figure 3-B with an additional
dimension for buffer fill-level. - The rate produced by AIMD algorithm is used as
the input to the rate smoother. (Figure B) - An alternative would be to use the TCP throughput
equation as a function of congestion signals as
the input to the rate smoother.
8Simulation Results(2) The Impact of Non-Uniform
Packet Losses
A
B
- Non-Uniform Losses Rate-dependent congestion
signal for each TCP flow. - Bandwidth Sharing Ratios depend on loss
distributions. - Figures A and B show the backing-off probability
and average throughput ratio for a set of loss
distribution models in which a TCPs backing-off
probability P is a function of its current
transmission rate r - The ratio is close to 1 when the distribution is
proportional to the rate (b1/100) or when it is
close to a uniform distribution (b10). - Next step simulate feedback between loss
distributions and rate mismatches.
9Conclusion Future Work
- Conclusion
- No big conclusion yet,
- Feedback control based conceptual model and
simulation tools lead to clear understanding of
TCP congestion control behavior. - Developed a generic model and implementation of
Rate Smoothing based on feedback control. - Future Work
- Simulate feedback between loss distributions and
rate mismatches. - Combine the model with some realistic loss event
distributions. - Extend model from a continuous to a hybrid
event-driven system. - Build a tunable paced TCP implementation that
exposes smoothing control parameters to
applications.