Title: Estimating Congestion in TCP Traffic
1Estimating Congestion in TCP Traffic
- Stephan Bohacek and Boris Rozovskii University of
Southern California
Objective Develop stochastic model of
TCP Necessary ingredients Models of the network.
Specifically packet drop probability and
roundtrip time. The model parameters are
indicators of congestion.
2Outline
- A very brief introduction to TCP
- Modeling packet drop probability
- Modeling roundtrip time
- Dynamics of drop probability parameters
- A diffusion model of roundtrip time
- Estimating the model parameters
- Stochastic models of TCP
- Results and insights
3An Introduction to TCP
- TCP is acknowledgment based. The sender sends a
packet of data. When the receiver receives the
packet, it responds by sending an acknowledgment
packet to the sender. - If the sender fails to receive an acknowledgment,
it assumes that the packet has been dropped and
decreases the sending rate. - If the sender receives an acknowledgment, it
assumes that the network is not congested and
increases the sending rate.
4Some TCP Details
- The congestion window, X, defines the maximum
number unacknowledged packets. - When the sender receives an acknowledgment it
increases the congestion window by 1/Xt. - When a packet drop is detected, the sender
divides the congestion window in half.
Note the congestion window is not the sending
rate. sending rate congestion window /
roundtrip time.
5How the Congestion Window Increases
X4
send pkt A
Number of unacknowledged packets equals Cwnd.
Send no more packets.
Packet arrives at receiver. Receiver sends an
acknowledgment.
send pkt B
send pkt C
send pkt D
ack A
roundtrip time
ack B
X4.25
time
ack C
send pkt E
X4.5
ack D
send pkt F
X4.75
X5
send pkt G
send pkt H
send pkt F
6Time Series of the Congestion Window(simulation)
50
linear increase when no drops occur
divide by two when a drop is detected
45
40
35
30
Congestion Window
25
20
15
10
5
0
50
55
60
65
70
75
80
85
Seconds
7Time Series of the Congestion Window (simulation)
- Stochastic model of TCP
- Stochastic model of packet drops.
- Stochastic model of the roundtrip time.
8Drop Models
- Ott (1997) considered deterministic drops.
- Padhye (1998) assumed drops to be highly
correlated over short time scales, but
independent over longer time scales. - Altman (2000) assumes drops are bursty.
- Altman (2000) drop events are modeled as renewal
processes with particular examples,
deterministic, Poisson, i.i.d., and Markovian. - Savari (1999) drop events are modeled as Poisson
where the intensity depends on the window size of
the TCP protocol.
9Models for Packet Drop Probability
Let St be the sending rate at time t. Let Rt be
the roundtrip time experienced by a packet sent
at time t. Let ?t be the congestion level at
time t. Let g be the probability that a packet is
dropped
general model
memoryless
depends on roundtrip time only
Preliminary work indicates that, for reasonable
sending rates, the drop probability mostly
depends on roundtrip time.
Since drops are rare, it is difficult to collect
data for slow sending rates.
10Determining the Conditional Drop Probability
assume the congestion level, ?, is constant
observable
We assume that given Rtk, dk is independent of
Rtk-1
system of linear equations
11End-to-end model with many queues
queues
q1t
q2t
qn-1t
qnt
source
destination
queuing delay at time t Dn-1t
queuing delay at time t D1t
The kth is sent at time Tk
propagation delay
12Modified Diffusion Approximation for a Single
Queue
13Histogram of Observed RTT Increments (real data)
Agrees with queuing theory (Diffusion
Approximation)
Gaussian (RTT028) Queue empties slowly
Queue empties quickly
14Observed and Smoothed Conditional Drop
Probabilities
observed conditional drop probability
P(Drop Roundtrip Time )
smoothed conditional drop probability
12 noon
3pm
6pm
P(Drop Roundtrip Time )
9am
night
15Drop Model Parameter Variation
g(Rt, ?t) ?0(?t) ?1(? ) T1(R) ?2(? ) T2(R)
16Autocorrelation of the Increments of the Drop
Probability Parameters
Iit ?i(?t1) - ?i(?t) - increments
E(I0t I0t?)
It appears that the increments are uncorrelated.
E(I1t I1t?)
E(I2t I2t?)
E(I3t I3t?)
17Transition Probability for Drop Model Parameter
It appears that the transition probability is
spatially homogenous.
18A Simple Stochastic Model of the Roundtrip Time
Define Rt to be the queuing delay. Roundtrip time
propagation delay
mean reverting mean ?/?
CIR Model (short-term interest rates)
similar to gamma distribution
Note that the stationary distribution does not
depend on ?.
forward equation
? controls the rate at which the transition
probability converges to the stationary
distribution.
19Estimation of ?, ?, and ? (many approaches)
note the change in representation
likelihood ratio
maximum likelihood estimates
20Estimation of ?, ?, and ?
Select a set of observations Rtk where tk ltlt
tk1 Hence, Rtk are approximately i.i.d.
under the independence assumption
mean of log( Rt )
mean of Rt
the maximum likelihood estimates satisfy
21Estimating Diffusion
22Estimation of ?, ?, and ?
The transition probability is known
? and ? are found as before and
Computationally difficult
23Roundtrip Time Quasi-stationary Distribution
l
2
f
0.17
s
0.38
Night
Midday
P(RTT)
P(RTT)
RTT
RTT
ns-2 simulation
0.08
Observed RTT Dist
0.07
Fitted RTT Dist
0.06
0.05
P(RTT)
0.04
0.03
0.02
0.01
0
50
55
60
65
70
75
80
85
90
95
100
RTT
24Basic Stochastic Model of TCP
Xt congestion window Rt Tprop roundtrip time
Nt is a Cox process with intensity n(Rt, Xt, ?t)
n(Rt, Xt, ?t) Xt / Rt g(Rt, Xt, ?t)
drop probability
Sending Rate Xt / Rt Packets per RTT /
Seconds per RTT Packets / Second
Drop Probability g(Rt, Xt, ?t)
25Stochastic Model of TCPwith fast recovery
After a drop is detected, the congestion window,
X, is halved and remains constant until the
dropped packet is resent and acknowledged.
fast recovery
- A drop is detected at t0, so W0R0
- Wt gt 0 for 0 lt t lt R0
- WRo 0 and the congestion window continues to
increase until the next drop occurs.
26Stochastic Model of TCPwith fast recovery and
time-out
When a time-out occurs, the congestion window is
set to 1.
27The Forward Equation
No Time-outs Stationary environment (model
parameters are constant)
Assumptions
28Midday RTT and Drop Data
? 4, ? 0.85, ? 0.5
Roundtrip Time Stationary Distribution
Drop Probability
29ns-2 (network simulator)topology
Competing TCP Sources
A
B
D
C
Destination
Source
1
2
3
4
5
S
T
U
V
30ns-2 Simulation
? 2, ? 0.17, ? 0.34
Roundtrip Time Stationary Distribution
Marginal Density p(X)
0.07
Fitted
Measured
0.06
0.05
0.04
P(RTT)
0.03
0.02
0.01
0
0
5
10
15
20
25
30
35
40
45
50
RTT
Drop Probability
Marginal Density p(X,R)
30
25
20
X - Congestion Window
15
10
5
0
20
30
40
50
60
70
R - Roundtrip Time
31The Dependence on Drop Probability
Drops are modeled as a Cox process with
intensity n(Rt, Xt, ?t) Xt / Rt g(Rt, Xt, ?t)
Scale
32Dependence on ?
recall that ? controls the rate at which the
transition probability converges to the
stationary distribution
33Application to Variable Bit Rate Video
Transmission
TCP Friendly Send data at a rate similar to the
rate that TCP would.
When the video image changes quickly, the bit
rate increases and the sending rate must also
increase. The compatibility with TCPs sending
rate can the judged by examining the probability
density function of the congestion window.
34Future Work
- Better models dynamic models that depend on the
past sending rate. - For example
- Suppose that the sending rate is initially high.
Then other TCP flows should decrease their
sending rate. - If the sending rate suddenly decreases, then
there is temporarily extra capacity and there
should be few drops (maybe). - Time-out and slow start.
- Doubly stochastic processes Allow the parameters
to vary with time. - More accurate roundtrip time models
- Experimental verification
- More data, do general models for drop probability
exist?
35Conclusions
- System theoretical (input/output) view point to
the Internet is valid. - Drop probability models
- Roundtrip time models (queuing theory works!)
- Stochastic models
- seem to accurately predict the TCP in complex
networks. - give useful insight into the performance of TCP
(e.g. the dependence on ?) - might be for other types of congestion control
(e.g. VBR video)