Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 1 Department of Information Engineering University of Pisa Network Telecomunication.

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Advertisements

Modeling TCP Throughput Jitendra Padhye Victor Firoiu Don Towsley Jim Kurose Presented by Jaebok Kim A Simple Model and its Empirical Validation.
Simulation-based Comparison of Tahoe, Reno, and SACK TCP Kevin Fall & Sally Floyd Presented: Heather Heiman September 10, 2002.
Different TCP Flavors CSCI 780, Fall TCP Congestion Control Slow-start Congestion Avoidance Congestion Recovery Tahoe, Reno, New-Reno SACK.
24-1 Chapter 24. Congestion Control and Quality of Service (part 1) 23.1 Data Traffic 23.2 Congestion 23.3 Congestion Control 23.4 Two Examples.
1 Transport Protocols & TCP CSE 3213 Fall April 2015.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
1 End to End Bandwidth Estimation in TCP to improve Wireless Link Utilization S. Mascolo, A.Grieco, G.Pau, M.Gerla, C.Casetti Presented by Abhijit Pandey.
EE 122: Congestion Control The Sequel October 1, 2003.
Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Fourth Edition,Peterson.
Introduction 1 Lecture 14 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
Congestion Control Tanenbaum 5.3, /12/2015Congestion Control (A Loss Based Technique: TCP)2 What? Why? Congestion occurs when –there is no reservation.
Transport Layer3-1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much.
Stochastic Differential Equation Modeling and Analysis of TCP- Windowsize Behavior EE228a Class Presentation Anshi Liang.
Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Third Ed.,Peterson.
CSEE W4140 Networking Laboratory Lecture 7: TCP flow control and congestion control Jong Yul Kim
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
Computer Networks : TCP Congestion Control1 TCP Congestion Control.
Congestion Avoidance and Control CSCI 780, Fall 2005.
Networks : TCP Congestion Control1 TCP Congestion Control.
Networks : TCP Congestion Control1 TCP Congestion Control Presented by Bob Kinicki.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
Advanced Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Fourth.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
TCP Congestion Control
Copyright © 2005 Department of Computer Science CPSC 641 Winter Tutorial: TCP 101 The Transmission Control Protocol (TCP) is the protocol that sends.
Introduction 1 Lecture 14 Transport Layer (Congestion Control) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
1 Transport Protocols (continued) Relates to Lab 5. UDP and TCP.
TCP CS 168 Discussion Week 6 Many thanks to past EE 122 GSIs.
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
1 TCP - Part II Relates to Lab 5. This is an extended module that covers TCP data transport, and flow control, congestion control, and error control in.
Lecture 9 – More TCP & Congestion Control
What is TCP? Connection-oriented reliable transfer Stream paradigm
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Computer Networking Lecture 18 – More TCP & Congestion Control.
TCP: Transmission Control Protocol Part II : Protocol Mechanisms Computer Network System Sirak Kaewjamnong Semester 1st, 2004.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
1 Sonia FahmyPurdue University TCP Congestion Control Sonia Fahmy Department of Computer Sciences Purdue University
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
The Macroscopic behavior of the TCP Congestion Avoidance Algorithm.
CS 6401 Congestion Control in TCP Outline Overview of RENO TCP Reacting to Congestion SS/AIMD example.
Recap Slow start introduced cwnd Slow start introduced cwnd Can transmit up to Can transmit up to min( cwnd, offered window ) Flow control by the sender.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.
Window Control Adjust transmission rate by changing Window Size
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
9.6 TCP Congestion Control
Transport Layer CS 381 3/7/2017.
Chapter 3 outline 3.1 transport-layer services
Introduction to Congestion Control
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
Congestion Control in TCP
CS4470 Computer Networking Protocols
EE 122: Lecture 10 (Congestion Control)
EE 122: Congestion Control The Sequel
Computer Science Division
Transport Layer: Congestion Control
TCP flow and congestion control
Presentation transcript:

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 1 Department of Information Engineering University of Pisa Network Telecomunication Research Group wwwtlc.iet.unipi.it Michele Pagano and Raffaello Secchi A Survey on TCP Performance Evaluation and Modeling

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 2 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 3 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 4 Evolution of TCPs Congestion Window ssthresh = 8 cwnd = 16 Loss detected by a timeout Loss detected by a triple DupACK cwnd = 14 ssthresh = 7 TCP Reno vs. TCP Tahoe

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 5 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 6 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 7 W(t) W max /2 W max Loss Probability periodic behaviour of congestion window Total packets per cycle b · W max /2 b · W max time (RTT) Throughput Maximum cwnd Simple stationary model

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 8 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 9 TCP window size evolution W(t) t n i cycles with Additive Increase (cwnd-cycles) Ends of Congestion Avoidance phase (timeout mechanism) Timeout period New TCP cycle A cj T cj

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 10 Throughput estimation 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 11 Modeling timeout T 0 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 (64T 0 ) is reached The retransmit timeout remains constant after 64T 0 Exponential Backoff T0T0 2T 0 4T 0 loss Mean duration of a timeout period loss t

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 12 Fast Retransmit / Fast Recovery w t W(t) A period of congestion window 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 13 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)

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 14 Probability of timeout A good numerical approximation of the conditional timeout probability is the limit as p0 of expression of Q: This expression is based on the assumption that, when p0, 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].

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 15 Model validation From [PFTK] Additional term related to the impact of the window limitation

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 16 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 17 The case loss-free path (fluid model) 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 total latency of the path is the sum of transmission delay and propagation delay TCP B c TCP bottleneck link

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 18 The case loss-free path W(t) time The queue is filling up loss epoch The first sub-period of congestion avoidance pipesize capacity linear increase The second sub-period of congestion avoidance

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 19 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:

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 20 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 Window size after n successful packet transmissions (w initial window) Time required to complete n successful packet transmissions TCP B c q TCP bottleneck link

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 21 Markov chain analysis 0 … 1 w i -1wiwi … w i +1 2w i -1 … … N w (w i ) 0 … 1 w i -1 … 0 … 1 … Since the independent loss model used … The cwnd evolution is expressed through these recursive equations Once solved the time-homogenous Markov chain, we can evaluate the throughput ……

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 22 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 23 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 Network load p loss RTT

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 24 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 T max T min P max Mean queue size Probability of Dropping Active Queue Management: RED

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 25 Active Queue Management: RED Moving average filter Sampled data system t x(t) Instantaneous queue length Mean queue length

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 26 Model of the network The network is modelled as a set of L links with capacities c l 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 L s of links Basic quantities routing matrix congestion window associated with each TCP source probability of drop and instantaneous length associated with each link

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 27 Model of the network Parameters related to the s-th TCP connection Round trip time End-to-end dropping probability s is the round trip propagation delay since we are considering AQM/RED, we may reasonably assume that drops at different queue are independent

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 28 Model of the network Differential version of the Lyndley equation Mean transient behaviour (by approximating the expectation of both sides): Parameters related to dynamic of the l-th queue Incoming traffic Outgoing traffic

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 29 Model of the source t W(t) loss events Additive Increase Multiplicative Decrease Again, taking the expectation 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:

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 30 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 l L s 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 31 Stochastic differential equations system 2L+S coupled equations in the unknowns (x,q,W) that can be solved numerically The time needed to solve the system is several order of magnitude less than that needed for the simulation of the same network scenario TCP RED Lindley

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 32 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 losses

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 33 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:

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 34 Block diagram + X X LOW PASS + TCP RED Congested Router - controller

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 35 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 (W 0, q 0, p 0 ) Input: Loss probability Output: Queue size Design of RED using dominant pole compensation

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 36 Small signal analysis Operating point derivative equal to zero: Difference variables linearization in a neighbourhood of the operating point

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 37 Laplace representation 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:

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 38 Small signal model controller gain RED acts as a proportional controller 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 39 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: the system converges exponentially fast to the equilibrium, for whatever initial condition. where dominant pole compensation

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 40 Designing AQM/RED Bode Plots Amplitude Phase phase margin Usually the dynamics of the queue are faster than those of TCP

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 41 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

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 42 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, [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, [HMTG01] C. Hollot, V. Misra, D. Towsley and W. Gong. A Control Theoretic Analysis of RED, In INFOCOMM 2001