430 likes | 577 Views
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
E N D
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 • 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
Sender Receiver Sender Receiver TCP congestion control algorithm • 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
Evolution of TCP’s Congestion Window TCP Reno vs. TCP Tahoe Loss detected by a triple DupACK Loss detected by a timeout cwnd = 16 cwnd = 14 ssthresh = 8 ssthresh = 7
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
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
Simple stationary model W(t) Wmax periodic behaviour of congestion window Wmax/2 b · Wmax b · Wmax/2 time (RTT) Total packets per cycle Loss Probability Maximum cwnd Throughput
Simple stationary model • 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)
TCP window size evolution W(t) ni cycles with Additive Increase (cwnd-cycles) New TCP cycle Timeout period Acj Tcj t Ends of Congestion Avoidance phase (timeout mechanism)
Throughput estimation Amount of data delivered in a cwnd-cycle period Mean duration of a timeout period Probability that congestion is detected by timeout Mean duration of a cwnd-cycle period
Modeling timeout • T0is 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 loss loss loss Exponential Backoff t T0 2T0 4T0 Mean duration of a timeout period
Fast Retransmit / Fast Recovery W(t) A period of congestion window increasing t w w • 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.
Probability of timeout Probability of having k<w successful transmissions in the penultimate round Distribution of the number m of packets successfully transmitted in the last round Probability that the cwnd-cycle ends with a timeout (the sender receives less than three duplicate ACKs)
Probability of timeout • A good numerical approximation of the conditional timeout probability is the limit as p→0of expression of Q: • 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].
Model validation Additional term related to the impact of the window limitation From [PFTK]
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
The case loss-free path (fluid model) bottleneck link TCP TCP The total latency of the path is the sum of transmission delay and propagation delay B c • 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
The case loss-free path The queue is filling up loss epoch W(t) pipesize capacity linear increase time The first sub-period of congestion avoidance The second sub-period of congestion avoidance
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 • The mean throughput of TCP-Reno is then given by:
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 bottleneck link TCP TCP B c q Window size after n successful packet transmissions (w initial window) Time required to complete n successful packet transmissions
Markov chain analysis Since the independent loss model used … … … … … 0 1 wi-1 wi wi+1 2wi-1 Nw(wi) … … The cwnd evolution is expressed through theserecursive equations … … 0 1 wi-1 … … 0 1 wi-1 Once solved the time-homogenousMarkov chain, we can evaluate thethroughput
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
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 TCP load ploss RTT Network
Active Queue Management: RED • 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/Markingbased on the mean queue length • Moving Average Algorithm used to smooth the instantaneous queue size p(x) 1 Pmax Probability of Dropping Tmin Tmax x Mean queue size
Active Queue Management: RED x(t) Instantaneous queue length t Mean queue length Moving average filter Sampled data system
Model of the network • The network is modelled as a set of L links with capacities cll = 1,2, … , L and the links are shared by a set of S sources indexed by s = 1,2, … , S each using a subset Lsof links • Basic quantities congestion window associated with each TCP source probability of drop and instantaneous length associated with each link routing matrix
Model of the network Parameters related to the s-th TCP connection • Round trip time • End-to-end dropping probability ts is the round trip propagation delay since we are considering AQM/RED, we may reasonably assume that drops at different queue are independent
Model of the network Parameters related to dynamic of the l-th queue Outgoing traffic Incoming traffic • Differential version of the Lyndley equation • Mean transient behaviour (by approximating the expectation of both sides):
Model of the source W(t) t loss events • 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: Additive Increase Multiplicative Decrease • Again, taking the expectation
Model of the source • In proportional marking schemes the dropping rate is proportional to the share of the connection expected value for drop rate at link lLs • 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
Stochastic differential equations system • 2L+S coupled equations in the unknowns (x,q,W) that can be solved numerically TCP Lindley RED The time needed to solve the system is several order of magnitude less than that needed for the simulation of the same network scenario
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 losses BOTTLENECK
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. • We have assumed that the server is always transmitting packets (bottleneck) • Common value of RTT:
Block diagram Congested Router TCP + + - X RED LOW PASS X controller
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
Small signal analysis • Operating point derivative equal to zero: • Difference variables linearization in a neighbourhood of the operating point
Laplace representation • Representation of the system in the Laplace domain: • 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
+ + - Small signal model • RED acts as a proportional controller controller gain controller time-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.
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: • Basic Result: Under previous constraints, if K and β satisfy the following condition: dominant pole compensation where the system converges exponentially fast to the equilibrium, for whatever initial condition.
Designing AQM/RED Bode Plots Usually the dynamics of the queue are faster than those of TCP Amplitude Phase -900 phase margin -1800
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
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”, InPERFORMANCE, Istanbul, Turkey, 1999. • [HMTG01] C. Hollot, V. Misra, D. Towsley and W. Gong. “A ControlTheoretic Analysis of RED”, In INFOCOMM 2001