department of information engineering university of pisa network telecomunication research group
DESCRIPTION
A Survey on TCP Performance Evaluation and Modeling. Michele Pagano and Raffaello Secchi. Department of Information Engineering University of Pisa Network Telecomunication Research Group wwwtlc.iet.unipi.it. Outline. Fast overview on TCP congestion control mechanisms - PowerPoint PPT PresentationTRANSCRIPT
1 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Department of Information Engineering University of Pisa
Network Telecomunication Research Groupwwwtlc.iet.unipi.it
Michele Pagano and Raffaello Secchi
A Survey on TCP Performance Evaluation and Modeling
2 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Outline
• Fast overview on TCP congestion control mechanisms
• Models of TCP congestion control
• A simple stationary models
• The long-term TCP bandwidth
• TCP in high bandwidth-delay product networks
• TCP interactions with AQM
• Tuning RED parameters through linear control theory
3 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
TCP congestion control algorithm
ReceiverSender
ReceiverSender• Key parameters• cwnd
• ssthresh
• Additive-Increase Multiplicative Decrease • TCP increases its cwnd by roughly one MSS every RTT as long as no loss event occurs (linear increase phase or congestion avoidance)
• Slow Start• TCP increases its rate exponentially fast by doubling its value of cwnd every RTT
• Reaction to loss events (triple duplicate ACKs)• Fast Retransmit
• Fast Recovery
4 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Evolution of TCP’s Congestion Window
0
2
4
6
8
10
12
14
16
18
0 2 4 6 8 10 12 14 18 20 22 24 26 28
Time (RTT)
cwnd
(M
SS)
ssthresh = 8
cwnd = 16Loss detected by a timeout
Loss detected by a triple DupACK
cwnd = 14
ssthresh = 7
TCP Reno vs. TCP Tahoe
5 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Models of TCP congestion control
• Single connection models – Assume the knowledge of network characteristics, such as mean RTT
and loss probability, and try to evaluate the performance of TCP connections
– This class can be further divided into models for short-lived and long-lived connections
• Models of interaction with AQM– Derive the performance of TCP and network statistics– Introduce a sub-model of TCP and a sub-model of IP network protocol
and solves through fixed-point procedures
• Models for TCP Network Optimization– Interpret the steady-state behaviour of TCP sources as the solution of a
large optimization problem– An utility function is associated to each source. The aggregate of TCP
sources converges toward a global optimality point
6 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Single source traffic models
• Underlying assumptions:
• Steady state
• The loss rate and RTT are independent from the source
• No ACK loss
• Neglect the slow-start phase
• TCP-Reno model:
• Congestion Avoidance
• Fast Retransmit – Fast Recovery
• Delayed-ACK
7 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
W(t)
Wmax/2
Wmax
2maxWb83
1p
Loss
Probability
periodic behaviour of congestion window
Total packets per cycle
2maxmax
maxmax Wb
8
3
2
WbW
2
W
2
1
b · Wmax/2 b · Wmax time (RTT)
2bp
3
RTT
MSSThroughput
3bp
8max WMaximum cwnd
Simple stationary model
8 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
• The previous expression does not take into account the timeout mechanisms
• It is an optimistic estimate of the bandwidth of a TCP connection.
– It is accurate in the range of small loss probabilities
– It is not suitable to determine performance of TCP over slow-speed line (few packets in transit)
Simple stationary model
9 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
TCP window size evolution
W(t)
t
ni cycles with Additive Increase
(cwnd-cycles)
Ends of Congestion Avoidance phase
(timeout mechanism)
Timeout period
New TCP cycle
Acj Tcj
10 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Throughput estimation
timeoutcycle
cycle
T QT
ABw
2cycle Eb8
3A W
2
WERTTbTcycle
Mean duration of a cwnd-cycle period
Probability that congestion is detected by timeout
Mean duration of a timeout period
Amount of data delivered in a cwnd-cycle period
3bp
8WE
11 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Modeling timeout
• T0 is the initial value of the timeout period• For each unsuccessful retransmission (which happens with probability p) the
timeout period is doubled until a threshold value (64T0) is reached• The retransmit timeout remains constant after 64T0
Exponential BackoffExponential Backoff
T0 2T0 4T0
loss loss
0
6
1k
k
1k
1kk T
p)2(1
2pp1pL
7kforT6k6463
6kforT12L
0
0k
k
Mean duration of a timeout period
loss
t
12 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Fast Retransmit / Fast Recovery
w
t
W(t)
A period of congestion A period of congestion window increasingwindow increasing
•The losses in consecutive RTT are independent
•The losses of packets within the same round are correlated since DropTail discipline induces a bursty dropping behaviour
• A packet is lost with probability p given that the previous was not lost
• All the packets following the first packet lost in a round of packet transmission would be also lost.
w
13 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Probability of timeout
w
k
p11
p1k)A(w,
Probability of having k<w successful transmissions in the penultimate round
Distribution of the number m of packets successfully transmitted in the last round
nmforp1
1nmforp1p)mn,(
n
m
C
otherwisemk,Ckw,Akw,A
3 wif1
(w)Q̂ w
3k
2
0m
2
0k
Probability that the cwnd-cycle ends with a timeout (the sender receives less than three duplicate ACKs)
14 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Probability of timeout
WEQ̂WQEwWPrwQ̂Q1w
•A good numerical approximation of the conditional timeout probability is the limit as p→0 of expression of Q:
w
31,minwQ̂
•This expression is based on the assumption that, when p→0, all packets in a particular round are equally liked to be dropped, with at most one drop per round. In that case, any one of last 3 packets in a round can cause a timeout if dropped
•Finally, the probability of timeout is computed as a function of the mean size of congestion window E[W].
3bp
8WE
15 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Model validation
2
0
max
32p1p8
3bp31,minT
32bp
RTT
1,
RTT
Wmin)( pB
From [PFTK]
Additional term related to the impact of the window limitation
16 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
TCP in high bandwidth-delay product networks
• The goal of TCP is to keep outstanding an amount of data equal to the bandwidth-delay product of path.
• Over WANs TCP experiences a round trip delay of the same order of magnitude of buffering delay.
• Keep the pipe full can be difficult if TCP suffers occasional random losses due to:
– transient congestion– lossy link (wireless)– link sharing with uncontrolled load (real-time traffic)
• Performance of TCP-Reno with respect to …– WAN delay-bandwidth product– rate of random losses
17 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
The case loss-free path (fluid model)
BcTWmax
•When the size of window exceeds Wmax a buffer overflow occurs and the cwnd is set to Wmax /2
•The cwnd-evolution is governed by following equation
•The ACK reception rate is equal to the link rate c if the bottleneck is congested, otherwise it is equal to the sending rate W/T
1/cτT
The total latency of the path isthe sum of transmission delay and propagation delay
dt
da
W
1
dt
da
da
dW
dt
dW
c} ,T
Wmin{
dt
da
TCP
B c
TCP
bottleneck link
18 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
The case loss-free path
W(t)
time
The queueis filling up loss
epoch
The first sub-period of congestion avoidance
pipesizecapacity
linear increase
cT
1T 2T
1N2N
1T
211max
1 2T
2T/TTWdt
T
tWN
/2WcTTT max1
22 TcN
2c
cTWT
22max
2
The second sub-period
of congestion avoidance
19 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
The case loss-free path
• The performance of TCP can be expressed as a function of the ratio between the bottleneck buffer size and pipe size– TCP suffers the presence of small buffers
– Larger buffers determine an increase of delays
– To fully exploit the capacity of bottleneck the buffer should be at least equal to pipe size
2
2
21
21
cTB
cTB
1
cTB
1
4
3c
TT
NNB
• The mean throughput of TCP-Reno is then given by:
20 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Random loss scenario
• A packet, successfully delivered at the bottleneck link, can be lost randomly with probability q.
• The evolution of congestion window is determined by the window size w at the beginning of cwnd-cycle (Markov process)
• We introduces two functions:
random loss
wn,W Window size after n successful packet transmissions (w initial window)
wn,T Time required to complete n successful packet transmissions
TCP
B c q
TCP
bottleneck link
21 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Markov chain analysis
0
q1
iw
q
…1 wi-1 wi…wi+1 2wi-1
q1 q1
… … Nw(wi)
0
q1
…1 wi-1 …
q1 q1
0
q1
…1 wi-1 …
q1 q1
2
1w i
2
w i
Since the independent loss model used …q1 q1 q1q1
q qq q q
ii1i
ii1i
w,NTT
w,NW2
1w
The cwnd evolution is expressed through these recursive equations
Once solved the time-homogenous Markov chain, we can evaluate the throughput
i
i
TE
NEBw
… …
22 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
General comments
• This analysis can be extended also to other versions of TCP
• Since the analysis is computational expensive, approximated solutions have been proposed (see [LM97]).
• Even small loss leads to a significant throughput deterioration over networks with high bandwidth-delay products.
• TCP performance is strongly dependent on the parameter q(cT)2
and decreases sharply as this parameter increases– “too early” drops in the TCP cycle induce the over-reaction
• Random losses should be avoided– flow isolation– link layer protocols
23 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Interaction between TCP and AQM
• Fluid model:– The congestion window is a continuous variable– A continuous flow of data
• Interaction between TCP-Reno and AQM mechanism
• Fixed-Point approach
TCPTCP
NetworkNetwork
load ploss RTT
24 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
• RED (Random Early Detection): implicit congestion avoidance mechanism
• RED discards packets randomly in order to:
– Prevent the incipient congestion by reacting earlier
– Avoid the synchronization between sources
– Mechanism of Dropping/Marking based on the mean queue length
– Moving Average Algorithm used to smooth the instantaneous queue size
x
p(x)
1
TmaxTmin
Pmax
Mean queue size
Pro
ba
bili
ty o
f D
rop
pin
g
Active Queue Management: RED
25 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Active Queue Management: RED
Moving average filter
Sampled data system
kTqdτebkTxeT1kxT1k
kT
τkTaaT
kTqαkTxα1T1kx
tqT
α1lntx
T
α1ln
dt
dx
t
x(t)
Instantaneous queue length
Mean queue length
26 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Model of the network
•The network is modelled as a set of L links with capacities cl l = 1,2, … , L and the links are shared by a set of S sources indexed by s = 1,2, … , S each using a subset Ls of links
• Basic quantities
routing matrix
otherwise
LlA s
ls ,0
if,1
congestion window associatedwith each TCP source
)(tWs
)()( tqtp llprobability of drop and instantaneous length associated with each link
27 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Model of the network
Parameters related to the s-th TCP connection
sLl l
lss c
tqτtRTT
• Round trip time
• End-to-end dropping probability
Ll
lls
L
1lllss (t)pA(t))pA(11(t)p̂
s is the round trip propagation delay
since we are considering AQM/RED, we may reasonably assume that drops at different queue are independent
28 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Model of the network
lc
S
1s s
slsltq
l
(t)RTT
(t)WAc1
dt
(t)dql
S
1s s
sls )t(RTT
(t)WA
• Differential version of the Lyndley equation
• Mean transient behaviour (by approximating the expectation of both sides):
S
1s s
slsl}tE{ql (t)}E{RTT
(t)}E{WAc1(t)}E{q
dt
dl
Parameters related to dynamic of the l-th queue
tlqIncoming traffic Outgoing traffic
29 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Model of the source
tdN2
(t)W
tRTT
dt(t)dW s
s
ss
t
W(t)
loss events
Additive Increase Multiplicative Decrease
(t)λs
• Again, taking the expectation
(t)dtλ2
(t)}E{W
}tE{RTT
dt(t)}dE{W s
s
ss
• Packet losses at flow s are modelled by a Poisson process with time varying rate
• Ni(t): number of losses suffered by flow i
• t: point of time when the flow detects losses
• Evolution of cwnd:
30 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Model of the source
• In proportional marking schemes the dropping rate is proportional to the share of the connection
(t)RTT
(t)W(t)p
s
sl expected value for
drop rate at link l Ls
• Actually, drops occur at the node about a round trip time before they can detected by the sender (the latency of feedback is important in a control system since it impacts on stability)
•This equation governs the evolution of congestion window of s-th connection
)τ(tp̂)τ(tRTT
)τ(tW
2
(t)W
(t)RTT
1
dt
(t)Wdss
s
sss
s
s
31 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Stochastic differential equations system
ss
ss
sss
s
sτtp̂
τtRTT
τtW
2
tW
)(RTT
1
dt
tWd
t
sl
Ls ss
ss
l0tql
τtRTT
τtWc1
dt
tqd
tqT
α1lntx
T
α1ln
dt
xdll
l
• 2L+S coupled equations in the unknowns (x,q,W) that can be solved numerically
L}{1,2,...,l
S}{1,2,...,s
The time needed to solve the system is several order of magnitude less than that needed for the simulation of the same network scenario
L}{1,2,...,l
TCP
RED
Lindley
32 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Linearized analysis of TCP with AQM
• Goal: linearization of the previous set of equations in the case of single bottleneck link topology
• The linearized system is suitable to be studied through the classic tools of linear control theory.
• The linear analysis gives us many suggestions on the way to modify the algorithm in order to achieve stability and robustness
BOTTLENECK
losseslosses
33 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Linear analysis: the single link case
• Let us consider N identical TCP Reno flows (with the same RTT) sharing a common link with capacity C.
CNR(t)
W(t)(t)q
τ)p(tτ)2R(t
τ)W(tW(t)
R(t)
1(t)W
C
q(t)τR(t)
• We have assumed that the server is always transmitting packets (bottleneck)
• Common value of RTT:
34 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Block diagram
+
X
(.)
1
RTT tW tW
2
1
(.)
1
RTT X
(.)
1
RTT
tp LOWPASS
N +
dx
dpxK )(
TCPTCP
tq
K
REDRED
tq
CCongested
Router
Congested Router
tq
tq tq
-
controller
35 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Small signal analysis
• Goals of an AQM (RED) controller
• Stable closed-loop system
• Acceptable transient response
• Insensitivity to variations of model parameters
• Insensitivity to disturbance factors (short lived flows)
• Strategy
• Linearization around the operating point (W0, q0, p0)
• Input: Loss probability
• Output: Queue size
• Design of RED using dominant pole compensation
36 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Small signal analysis
N
CRW
pW
00
00
2
01
02
1
0
0
00
20
0
NR
W
pR
W
R
• Operating point derivative equal to zero:
δq(t)R
1δW(t)
R
N(t)qδ
τ)δp(t2N
CRtδWτtδW
CR
N(t)Wδ
00
2
20
20
• Difference variables linearization in a neighbourhood of the operating point
tδW2
37 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Laplace representation
2NCR
s1
4NCR
sP 20
3
330
tcp
sR1
NsP
0queue
• The static gain of plant is
• proportional to RTT and capacity
• inversely proportional to the number of active flows
• A small number of TCP flows lead to an oscillatory response
• An increase in the round trip time reduces the controllability of the system
• High speed links are difficult to control
• Representation of the system in the Laplace domain:
38 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Small signal model
s/β1
1KsCred
minmax
max
tt
pK
T
α)ln(1β
controllergain
• RED acts as a proportional controller
controllertime-constant
• Internet routers typically implement a drop tail policy in the queues (ON-OFF control strategy) strong oscillation in queue size, with the alternation of emptiness and buffer overflow
• RED should reduce the extent of variations in queue length
• Trade-off between acceptable queuing delay and link utilization.
sP sτe sCred++
-
39 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
RED Design
• In choosing the parameters of RED controller (K,β), it is necessary to introduce some bounds on the number of TCP sessions and on RTT:
max0min RR,NN
• Basic Result: Under previous constraints, if K and β satisfy the following condition:
1β
ω
2N
CRK2
g
2min
3max
the system converges exponentially fast to the equilibrium,for whatever initial condition.
Queuemin
TCPming ω,ωmin
10
1ω where
dominant pole
compensation
40 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Designing AQM/RED
Bode Plots
Amplitude
Phase -900
-1800
QueueωTCPωgω
phase
margin
ω
ω
Usually the dynamics of the queue are faster than those of TCP
41 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
Conclusions
• Summary of analytical modelling for the performance evaluation of Internet congestion control
• Bandwidth achieved by a TCP connection in response to network conditions
– These models are also useful in asymptotic conditions with many sources
• Interaction between TCP and AQM (RED) schemes
– Qualitative understanding of TCP transient behaviour.
– Powerful tools of linear control theory
– Selection of the network parameters leading to stable and robust working conditions
42 Michele Pagano – A Survey on TCP Performance Evaluation and Modeling
A few references
[PFTK98] J. Padhye, V. Firoiu, D. Towsley and J. Kurose, “Modeling TCP Throughput: A Simple Model and its Empirical Validation”, In SIGCOMM, 1998.
[LM97] T. Lackshman and U. Madhow, “The performance of TCP/IP for networks with high bandwidth-delay products and random loss”, In Transaction on Networking, 1997
[VGT99] V. Misra, W. Gong, D. Towsley, “Stochastic Differential Equation Modeling And Analysis of TCP-Windowsize Behavior”, In PERFORMANCE, Istanbul, Turkey, 1999.
[HMTG01] C. Hollot, V. Misra, D. Towsley and W. Gong. “A ControlTheoretic Analysis of RED”, In INFOCOMM 2001