Title: Some Internet Dynamics and Alternatives to TCP Friendly
1Some Internet Dynamics and Alternatives to TCP
Friendly
- Stephan Bohacek
- University of Southern California
Joint work with Boris Rozovskii, Joao Hespanha,
Katia Obraczka, Junsoo Lee, Khusbboo Shah, Vinay
Sridhara, and Raghava Sivaramu
2Developing stochastic models of the Internet and
investigating what can be determined about the
state of the Internet by observing round-trip
times and drops.
preliminary work
Stephan Bohacek University of Southern California
Joint work with Boris Rozovskii, Joao Hespanha,
Katia Obraczka, Junsoo Lee, Khusbboo Shah, Vinay
Sridhara, and Raghava Sivaramu
3Outline
- TCP friendly basics
- Problems with TCP fixes
- Modeling RTT and estimating queue parameters
- Observed dynamics of queue model parameters
- Drop Model
- Observed dynamics of the drop model parameters
- An alternative to TCP friendly congestion control
4TCP
Single bottleneck
100Mb
100Mb
10Mb
router queue
router queue
source
destination
drop detected
cwnd (congestion window)
time
5Derivation of the TCP Friendly Rule
w
cwnd (congestion window) (number of packets sent
/ RTT)
w/2
RTT Roundtrip Time
not true
time
Total number of packets sent between drops w/2
w/21 w/2 w/2 ? 3/8 w2
p probability of a packet being dropped 8/3
1/ w2 (assumes one drop)
cwnd ¾ w
T Sending Rate (pkts/sec) cwnd (pkts/rtt) /
RTT (sec/rtt)
T RTT cwnd ¾ w(8/3)1/2 1/p1/2
T RTT C 1/p1/2
6Similar formulas
T RTT C 1/p1/2
C 1.31 Ott, Kemperman and Mathis (1996) C
(8/3)1/2 Mathis, Semke, Mahdavi and Ott (1997) C
(3/2)1/2 Altman (2000) and others. C 1.27
Hespanha, Bohacek, Obraczka and Lee 2001
7RTT varies
cwnd
time
Hybrid systems model yields
Hespanha, Bohacek, Obraczka and Lee In Maria
Domenica Di Benedetto and Alberto
Sangiovanni-Vincentelli, Mar. 2001.
8Dumbbell topology
Single bottleneck link
S1
D1
S2
D2
S3
D3
router
router
10Mbs
Sn
Dn
100Mbs
9Validation of the TCP Friendly Rule
RTT T 1.02/p1/2
10TCP performs poorly over multi-hop connections
Competing TCP flows
S1
D1
S2
Dn-1
Dn
Sn
router
router
router
router
source
destination
pn drop probability
p1 drop probability
Each competing flow satisfies Ti RTTi C
1/pi1/2
Drop probability for multi-hop flow 1 - ?i(1 -
pi) gtgt pj
11End-to-end model with many queues
Objective Observe RTT and estimate the per-link
drop probability and adjust TCP accordingly.
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
12Probability Density FittingMinimum Distance Fit
Invariant density of the delay experienced in
M/M/1 queue (ignore increments)
?i - arrival rate at ith queue
?i - departure rate at ith queue
p(Di d) p(d) ?d0(?i - ?i) / ?i (?i -
?i) ?i /?i exp(-(?i - ?i)d)
Heavy-traffic assumption Account for most of the
delay
13Minimum Distance Fit
Theoretical
Actual
convolution
where
non - convex optimization
14RTT and Fitted Model 3/27/01LA San Jose
15Basic Queue Model
constant sending rate
random packet size
Poisson process with intensity ?
indicator so 0? qi? qimax maximum queue size
Delay Dit qit /?i
16Distribution of Packet Sizes
Cumulative distribution of packet size. A packet
of size one has 1500 bytes. The data was
collected by the NLANR project.
Density function ?(z)0.2/z for 0.011 ? z ? 1
17Conditional Probability Density of Queue Size
Define p(qtq0, ?, ?)p(q,tqo)
p(q,1000ms15)
p(q,10ms15)
0.12
0.1
0.08
p
p
0.06
0.04
0.02
0
q
q
0
5
10
15
20
25
30
35
40
18Diffusion Approximation
Diffusion approximation assumes m ? 0, that is, ?
? ?. This is true for queues with significant
delay.
19Modification to the Diffusion Approximation
work remaining to be processed
time
10 sec
0
? 9 sec
1 sec
P(dt, do) 0 for dlt do - t
- Two options
- Reflection
- Accumulation
20Reflection
Probability density function f(d d02, t1)
sum
diffusion
f
reflection
d
21Accumulation
Probability density function f(d d02, t1)
Accumulate at d do - t
diffusion
d
do - t
22Modified Diffusion Approximation
23Histogram of Simulated RTT Increments
One Queue m?0, ?lt1 t10
Gaussian
24Histogram of Simulated RTT Increments
One Queue mltlt0, ?gtgt1 t10
25Histogram of Simulated RTT Increments
Two Queues Queue 1 m1 ltlt 0, ?1 gtgt 1
Queue 2 m2?0, ?1 lt 1
26Histogram of Observed RTT Increments
Gaussian (RTT028) Queue empties slowly
Queue empties quickly
27Estimating Parameters of the Diffusion Model
28(No Transcript)
29Estimating Delay From RTT
Objective Observe RTT and estimate the per-link
drop probability and adjust TCP
accordingly.
Assume the kth drop occurs at t tk
P( q1tk gt qjtk, j ? 1 RTTK ) ? P( Queue 1 had
the drop )
( Assumes that all queues are the same size )
P1k P( D1tk gt Djtk, j ? 1 RTTK ) ? P( Queue
1 had the drop )
( Assumes that all routers have the same speed )
30Adjusting TCP
p1 ? probability of queue 1 dropping a packet
p1 ?k P1k / Total Number of Packets Sent
cwnd T RTT C mini (1/pi1/2)
31Computing per Queue Drop Probabilities
Vector of delays experienced by the kth packet
32Computing per Queue Drop Probabilities
Transition probabilities (we can compute these)
33Computing per Queue Drop Probabilities
Monte-Carlo Markov Chain works, but is very slow.
where l is random
proposal density
where j is random
34Round Trip Time
25
20
15
RTT
10
5
0
0
50
100
150
200
250
300
350
400
450
Time (ms)
35(No Transcript)
36MCMC Results
37(No Transcript)
38(No Transcript)
39actual
expected
40(No Transcript)
41(No Transcript)
42(No Transcript)
43(No Transcript)
44Adjusting the TCP Friendly Rule
- Assume that a drop occurs on the queue with the
longest delay. - Delay is related to the occupancy of queue (all
delays are not equal). - All queues are the same size (all queues are not
the same length).
Given the queue parameters ?i and drop
probability p, the drop probability at each queue
is
link drop probability
(the case with 3 queues)
end-to-end drop probability
Per Link TCP Friendly
cwnd T RTT C mini (1/pi1/2)
45Observed Dynamics of the Queue Parameters
RTTt ?i Dti
p(Dti d ) ?i exp( - ?i d ) for d ? 0
E(Dti) 1/ ?i - The smaller the ?i the more
significant the queue.
46(No Transcript)
47(No Transcript)
48Autocorrelation of the increments of the smallest
queue parameter.
smallest parameter
The autocorrelation decays very quickly, hence a
low order model should suffice (maybe even a
Markov chain).
next to smallest parameter
49Transition Probabilities Matrix
Partition the parameter space and estimate
transition probabilities
Smallest Queue Parameter
Next to Smallest Queue Parameter
The transition probability are nearly spatially
homogeneous
Pi,j ? Pi-j
50Transition Probability
Next to Smallest Queue Parameter
Smallest Queue Parameter
probability
probability
-3
-2
-1
0
1
2
3
Size of Increment
Size of Increment
51TCP Friendly
S
S
S
S
Source Under Test
Destination Under Test
router
router
router
router
D
D
D
D
Backbone link
Input link
Variables
- Number of routers
- Backbone link speed
- Input link speed
- Types of paths (all possible, downstream, single
hop) - Number of flows per path
52The TCP Friendly Rule
It is possible that topologies that never exists
were considered. It is possible that worst
topologies exists that have yet to be
considered. Further study is under way.
53Time-Varying TCP Friendly
cwnd T RTT C mini (1/pi1/2)
Even if the TCP rule is accurate, it is not clear
how to compute RTT, p, T.
54Alternatives to the TCP Friendly Rule(TCP
Mimicking)
At what rate would a TCP flow send data if it was
in the same situation?
Very simple continuous time model of TCP
Xt window size
Nt drop process
RTTt roundtrip time
- Approach
- Observe RTT and drops.
- Determine the pdf of TCPs window size.
55Drop 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.
56Drop Model
sending rate
Nt Poisson process with intensity nt(RTT,
X/RTT, ?)
time-varying random variable
n(RTT, X/RTT, ?) X/RTT g(RTT, X/RTT, ?)
g(RTT,X/RTT ?) drop probability
For simplicity, we neglect the effect of the
sending rate on the drop probability and model
the drop probability as
g(RTT, ?) ?0(? ) ?1(? ) T1(RTT) ?2(? )
T2(RTT)
Chebyshev polynomials
57Drop Dependence
probability of the next packet being dropped
given the past N packets have been dropped
probability
N
probability of N packets being dropped given the
last packet was dropped
probability
g(RTT, ?) is the probability of the the first
drop drop event.
N
58Drop Event Probability
59Drop Model Parameter Variation
g(RTT, ?) ?0(? ) ?1(? ) T1(RTT) ?2(? )
T2(RTT)
60Autocorrelation of the Drop Models Parameters
There appears to be some correlation, but
61Transition Probability for Drop Model Parameter
62Alternatives to the TCP Friendly Rule(TCP
Mimicking)
At what rate would a TCP flow send data if it was
in the same situation?
63Alternatives to the TCP Friendly Rule(single
queue)
64TCP Mimicking
- Every time an ack arrives and every time a packet
is about to be sent, the pdf is evaluated. - The decision whether to send a packet is based on
the pdf and on the application, e.g. multimedia
v.s. file transfer. - If acks fail to arrive, the drop probability
quickly adjusts to indicate that a TCP flow would
send at a slow rate (unlike other rate based
congestion control). - It is not clear if TCP mimicking leads to TCP
friendly.
65TCP Mimicking v.s. TCP Friendly
If these are equal, then TCP mimicking is also
TCP friendly.
Large network assumption - ? is the constant
function, i.e. the sending rate does not effect
the network. In this case, TCP mimicking is TCP
friendly. But so is everything else!
66Future Work
- More of the same more data, diversity paths.
More data for drops during large RTT. - Large network assumption I/O dynamics (in
progress) - Determine qmax from data relating RTT and queue
model parameters to drop model parameters.
67Conclusions
- It appears possible to develop stochastic models
of the internet. - It appears possible the estimate parameters and
the state of the Internet from the observations,
RTT and drops. - These models and estimation techniques may be
useful in developing congestion control
algorithms.
68The end