Department of Information Engineering University of Pisa Network Telecomunication Research Group
description
Transcript of Department of Information Engineering University of Pisa Network Telecomunication Research Group
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