1 2004.5.18.  Last Class  This Class  Chapter 6.3. ~ 6.4.  TCP congestion control.

Slides:



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

Slide Set 14: TCP Congestion Control. In this set... We begin Chapter 6 but with 6.3. We will cover Sections 6.3 and 6.4. Mainly deals with congestion.
Different TCP Flavors CSCI 780, Fall TCP Congestion Control Slow-start Congestion Avoidance Congestion Recovery Tahoe, Reno, New-Reno SACK.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
EE 122: Congestion Control The Sequel October 1, 2003.
Congestion Control An Overview -Jyothi Guntaka. Congestion  What is congestion ?  The aggregate demand for network resources exceeds the available capacity.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
Introduction to Congestion Control
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.
1 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
Lecture 8 Congestion Control EECS 122 University of California Berkeley.
15-744: Computer Networking L-10 Congestion Control.
Week 9 TCP9-1 Week 9 TCP 3 outline r 3.5 Connection-oriented transport: TCP m segment structure m reliable data transfer m flow control m connection management.
Spring 2002CS 4611 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
Spring 2003CS 4611 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
Computer Networks : TCP Congestion Control1 TCP Congestion Control.
Chapter 6 Congestion Control and Resource Allocation
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.
TCP Congestion Control
CS :: Fall 2003 TCP Friendly Streaming Ketan Mayer-Patel.
Introduction 1 Lecture 14 Transport Layer (Congestion Control) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
1 EE 122: Advanced TCP Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks to Vern Paxson,
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
CSE 461 University of Washington1 Topic How TCP implements AIMD, part 1 – “Slow start” is a component of the AI portion of AIMD Slow-start.
CSCI-1680 Transport Layer II Data over TCP Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Theophilus Benson.
Congestion Control (cont’d). TCP Congestion Control Review Congestion control consists of 3 tasks  Detect congestion  Adjust sending rate  Determine.
Fundamentals of Computer Networks ECE 478/578 Lecture #22: Resource Allocation and Congestion Control Instructor: Loukas Lazos Dept of Electrical and Computer.
ACN: RED paper1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking, Vol.1, No. 4, (Aug.
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
9.7 Other Congestion Related Issues Outline Queuing Discipline Avoiding Congestion.
Lecture 9 – More TCP & Congestion Control
Spring 2003CS 3321 Congestion Avoidance. Spring 2003CS 3322 Congestion Avoidance TCP congestion control strategy: –Increase load until congestion occurs,
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.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Winter 2008CS244a Handout 81 CS244a: An Introduction to Computer Networks Handout 8: Congestion Avoidance and Active Queue Management Nick McKeown Professor.
1 John Magee 20 February 2014 CS 280: Transport Layer: Congestion Control Concepts, TCP Congestion Control Most slides adapted from Kurose and Ross, Computer.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
Advance Computer Networks Lecture#09 & 10 Instructor: Engr. Muhammad Mateen Yaqoob.
Spring 2015© CS 438 Staff - University of Illinois1 Next Topic: Vacation Planning UIUC Chicago Monterey San Francisco Chicago to San Francisco: ALL FLIGHTS.
Random Early Detection (RED) Router notifies source before congestion happens - just drop the packet (TCP will timeout and adjust its window) - could make.
Congestion Control CS 168 Discussion Week 7. RECAP: How does TCP set rate? How much data can be outstanding? – min{RWND, CWND} RWND: do not overload the.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
Spring Computer Networks1 Congestion Control II Outline Queuing Discipline Reacting to Congestion Avoiding Congestion DECbit Random Early Detection.
Peer-to-Peer Networks 13 Internet – The Underlay Network
Congestion Avoidance Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
CS492B Project #2 TCP Tutorial # Jin Hyun Ju.
 Last Class  Resource Allocation  This Class  Chapter 6.3. ~ 6.4.  TCP congestion control.
@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.
Other Methods of Dealing with Congestion
CS450 – Introduction to Networking Lecture 19 – Congestion Control (2)
Chapter 3 outline 3.1 transport-layer services
Introduction to Congestion Control
Chapter 6 Congestion Avoidance
Congestion Control Outline Queuing Discipline Reacting to Congestion
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Lecture 19 – TCP Performance
Other Methods of Dealing with Congestion
Other Methods of Dealing with Congestion
EE 122: Congestion Control The Sequel
Computer Science Division
Transport Layer: Congestion Control
TCP flow and congestion control
Presentation transcript:

 Last Class  This Class  Chapter 6.3. ~ 6.4.  TCP congestion control

2 When congestion happens …  ssthresh = ½ of cwnd  In case of TCP Tahoe, cwnd = 1  When timeout happened/triple ACKs arrived  Start from minimum sending rate (slow start)  In case of TCP Reno, cwnd = ssthresh  When triple duplicate ACKs arrive  Sending rate decreased only by half (fast recovery)  When timeout happened, same as in Tahoe.

3 Problems with TCP Reno  Triple ACKs often fails to be triggered due to either  Losses in burst  Small sending window  Timeout needs unnecessarily long delay.  Congestion control in Reno  Need to create packet losses to find the available bandwidth of the connection  Continually congesting the network  Creating losses for other connections sharing the link.  Oscillations

4 TCP Vegas  Ideas  Detect congestion before losses occur Compare RTT between two ACKs If delay has increased, retransmit before a third ACK  Lower the rate when this imminent packet loss is detected Estimate the thruput by cwnd and RTT Increase/decrease cwnd by 1

5 How would you compare Tahoe, Reno, and Vegas?  Which town offers best skiing?  Highest probability to win a jackpot?  All employ AIMD  Distributed – no coordination between connections needed?  Efficient – desired load level close to total?  Fairness – connections split the share equally?  Responsive to and smooth in equilibrium?

6 Congestion Avoidance  Instead of reacting to congestion, try to predict when congestion is about to happen and reduce sending rates  DECbit  router sets congestion bit to notify users of impending congestion  Random Early Detection  Source-based Congestion Avoidance

7 Random Early Drop (RED)  Main idea  Instead of waiting for the queue to get full to start dropping, it drops arriving packets with some drop probability whenver queue length exceeds some threshold.

8 MaxTMinT MaxT Drop Probability 1 MaxP AvgQLen Drop all Drop with some p

9 AvgQLen = (1-α) AvgQLen + α SampleLen Queue Length Time Average Instantaneous

10 Drop Probability of RED TempP = MaxP ·(AvgQLen – MinT)/(MaxT-MinT) P = TempP/(1-count · TempP) count = # of pkts not dropped while MinT < AvgQLen < MaxT

11 Source-Based Congestion Avoidance  Key idea  Figure out that some router’s queue is building up  Monitor RTT for increase

12 Source-Based Congestion Avoidance Mechanisms 1.If CurrRTT > (minRTT+maxRTT)/2 Then decrease cwnd by 1/8 2.If (CurrW – OldW) x (CurrRTT – OldRTT) > 0 Then decrease cwnd by 1/8 Else increase cwnd by 1/8 3.Per RTT, increase/decrease cwnd by 1 pkt Compare thruput with previous one 4.TCP Vegas

13 When congestion happens …  ssthresh = ½ of cwnd  In case of TCP Tahoe, cwnd = 1  When timeout happened/triple ACKs arrived  Start from minimum sending rate (slow start)  In case of TCP Reno, cwnd = ssthresh  When triple duplicate ACKs arrive  Sending rate decreased only by half (fast recovery)  When timeout happened, same as in Tahoe.

14 Problems with TCP Reno  Triple ACKs often fails to be triggered due to either  Losses in burst  Small sending window  Timeout needs unnecessarily long delay.  Congestion control in Reno  Need to create packet losses to find the available bandwidth of the connection  Continually congesting the network  Creating losses for other connections sharing the link.  Oscillations

15 TCP Vegas  Ideas  Detect congestion before losses occur Compare RTT between two ACKs If delay has increased, retransmit before a third ACK  Lower the rate when this imminent packet loss is detected Estimate the thruput by cwnd and RTT Increase/decrease cwnd by 1

16 Quality of Service  Real-time applications  need more than best-effort  require some form of QoS guarantee  intolerant of loss/delay

17 VoIP Timing Charts Sue speaks encoded and packetized at receiver played out

18 QoS Support Approaches  IntServ’s RSVP  DiffServ  EF/AF  ATM  CBR  VBR-rt, VBR-nrt  ABR  UBR  Equation-based congestion control

19 Next Class  HW #8 due  End-to-End data (Chap. 7)