Karn’s Algorithm Do not use measured RTT to update SRTT and SDEV Calculate backoff RTO when a retransmission occurs Use backoff RTO for segments until.

Slides:



Advertisements
Similar presentations
Simulation-based Comparison of Tahoe, Reno, and SACK TCP Kevin Fall & Sally Floyd Presented: Heather Heiman September 10, 2002.
Advertisements

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.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
CS 408 Computer Networks Congestion Control (from Chapter 05)
TCP over ATM Dr. Abdulaziz Almulhem. Almulhem©20012 Agenda TCP over ATM Possible mapping (UBR/ABR) Performance over UBR Performance over ABR.
1 TCP - Part II. 2 What is Flow/Congestion/Error Control ? Flow Control: Algorithms to prevent that the sender overruns the receiver with information.
Introduction 1 Lecture 14 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
1 TCP CSE May TCP Services Flow control Connection establishment and termination Congestion control 2.
Chapter 12 TCP Traffic Control Chapter 12 TCP Traffic Control.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
Transport Layer3-1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much.
Congestion Dr. Abdulaziz Almulhem. Almulhem©20012 Congestion It occurs when network resources are becoming scarce High demand Over utilized Offered load.
1 Internet Networking Spring 2002 Tutorial 10 TCP NewReno.
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.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
TDC375 Winter 03/04 John Kristoff - DePaul University 1 Network Protocols Transmission Control Protocol (TCP)
Data Communication and Networks
Congestion Avoidance and Control CSCI 780, Fall 2005.
1 Internet Networking Spring 2004 Tutorial 10 TCP NewReno.
Semester Copyright USM EEE449 Computer Networks Congestion En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network.
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
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.
Chapter 12 TCP Traffic Control1 TCP Traffic Control COMP5416 Chapter 12.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
CIS : TCP Traffic Control. Effect of Window Size W = TCP window size (octets) R = Data rate (bps) at TCP source D = Propagation delay (seconds)
1 Transport Protocols (continued) Relates to Lab 5. UDP and TCP.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
Copyright © Lopamudra Roychoudhuri
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.
What is TCP? Connection-oriented reliable transfer Stream paradigm
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 TCP Timeout And Retransmission Chapter 21 TCP sets a timeout when it sends data and if data is not acknowledged before timeout expires it retransmits.
1 Chapter 12 TCP Traffic Control. Chapter 12: TCP Traffic Control 2 Introduction 1. Performance implications of TCP Flow and Error Control 2. Performance.
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.
1 TCP - Part II. 2 What is Flow/Congestion/Error Control ? Flow Control: Algorithms to prevent that the sender overruns the receiver with information.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
ECE 4110 – Internetwork Programming
TCP Congestion Control 컴퓨터공학과 인공지능 연구실 서 영우. TCP congestion control2 Contents 1. Introduction 2. Slow-start 3. Congestion avoidance 4. Fast retransmit.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
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.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
TCP Traffic Control: Performance and QoS Implications
Peer-to-Peer Networks 13 Internet – The Underlay Network
Chapter 12 TCP Traffic Control 1 Chapter 12 TCP Traffic Control.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
Performance of TCP over ATM How best to manage TCP’s segment size, window management and congestion control… …at the same time as ATM’s quality of service.
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.
Transmission Control Protocol (TCP) Retransmission and Time-Out
Computer Networks with Internet Technology William Stallings
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Chapter 17. Transport Protocols
Congestion Control (from Chapter 05)
CS4470 Computer Networking Protocols
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Transport Layer: Congestion Control
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
TCP: Transmission Control Protocol Part II : Protocol Mechanisms
Presentation transcript:

Karn’s Algorithm Do not use measured RTT to update SRTT and SDEV Calculate backoff RTO when a retransmission occurs Use backoff RTO for segments until an ack arrives for a segment that has not been retransmitted Then use Jacobson’s algorithm to calculate RTO Chapter 12 TCP Traffic Control 1

Window Management Slow start Dynamic window sizing on congestion Fast retransmit Fast recovery Limited transmit Chapter 12 TCP Traffic Control 2

Slow Start awnd = MIN[ credit, cwnd] where awnd = allowed window in segments cwnd = congestion window in segments credit = amount of unused credit granted in most recent ack cwnd = 1 for a new connection and increased by 1 for each ack received, up to a maximum Chapter 12 TCP Traffic Control 3

Figure 23.9 Effect of Slow Start Chapter 12 TCP Traffic Control 4

Dynamic Window Sizing on Congestion A lost segment indicates congestion Prudent to reset cwsd = 1 and begin slow start process May not be conservative enough: “ easy to drive a network into saturation but hard for the net to recover” (Jacobson) Instead, use slow start with linear growth in cwnd Chapter 12 TCP Traffic Control 5

Figure Slow Start and Congestion Avoidance Chapter 12 TCP Traffic Control 6

Figure Illustration of Slow Start and Congestion Avoidance Chapter 12 TCP Traffic Control 7

Fast Retransmit RTO is generally noticeably longer than actual RTT If a segment is lost, TCP may be slow to retransmit TCP rule: if a segment is received out of order, an ack must be issued immediately for the last in-order segment Fast Retransmit rule: if 4 acks received for same segment, highly likely it was lost, so retransmit immediately, rather than waiting for timeout Chapter 12 TCP Traffic Control 8

Figure Fast Retransmit Chapter 12 TCP Traffic Control 9

Fast Recovery When TCP retransmits a segment using Fast Retransmit, a segment was assumed lost Congestion avoidance measures are appropriate at this point E.g., slow-start/congestion avoidance procedure This may be unnecessarily conservative since multiple acks indicate segments are getting through Fast Recovery: retransmit lost segment, cut cwnd in half, proceed with linear increase of cwnd This avoids initial exponential slow-start Chapter 12 TCP Traffic Control 10

Figure Fast Recovery Example Chapter 12 TCP Traffic Control 11

Limited Transmit If congestion window at sender is small, fast retransmit may not get triggered, e.g., cwnd = 3 1.Under what circumstances does sender have small congestion window? 2.Is the problem common? 3.If the problem is common, why not reduce number of duplicate acks needed to trigger retransmit? Chapter 12 TCP Traffic Control 12

Limited Transmit Algorithm Sender can transmit new segment when 3 conditions are met: 1.Two consecutive duplicate acks are received 2.Destination advertised window allows transmission of segment 3.Amount of outstanding data after sending is less than or equal to cwnd + 2 Chapter 12 TCP Traffic Control 13

Performance of TCP over ATM How best to manage TCP’s segment size, window management and congestion control… …at the same time as ATM’s quality of service and traffic control policies TCP may operate end-to-end over one ATM network, or there may be multiple ATM LANs or WANs with non-ATM networks Chapter 12 TCP Traffic Control 14

Figure TCP/IP over AAL5/ATM Chapter 12 TCP Traffic Control 15

Performance of TCP over UBR Buffer capacity at ATM switches is a critical parameter in assessing TCP throughput performance Insufficient buffer capacity results in lost TCP segments and retransmissions Chapter 12 TCP Traffic Control 16

Effect of Switch Buffer Size Data rate of 141 Mbps End-to-end propagation delay of 6 μs IP packet sizes of 512 octets to 9180 TCP window sizes from 8 Kbytes to 64 Kbytes ATM switch buffer size per port from 256 cells to 8000 One-to-one mapping of TCP connections to ATM virtual circuits TCP sources have infinite supply of data ready Chapter 12 TCP Traffic Control 17

Figure Performance of TCP over UBR Chapter 12 TCP Traffic Control 18

Observations If a single cell is dropped, other cells in the same IP datagram are unusable, yet ATM network forwards these useless cells to destination Smaller buffer increase probability of dropped cells Larger segment size increases number of useless cells transmitted if a single cell dropped Chapter 12 TCP Traffic Control 19

Partial Packet and Early Packet Discard Reduce the transmission of useless cells Work on a per-virtual circuit basis Partial Packet Discard – If a cell is dropped, then drop all subsequent cells in that segment (i.e., look for cell with SDU type bit set to one) Early Packet Discard – When a switch buffer reaches a threshold level, preemptively discard all cells in a segment Chapter 12 TCP Traffic Control 20

Selective Drop Ideally, N/V cells buffered for each of the V virtual circuits W(i) = N(i) = N(i) × V N/V N If N > R and W(i) > Z then drop next new packet on VC i Z is a parameter to be chosen Chapter 12 TCP Traffic Control 21

Figure ATM Switch Buffer Layout Chapter 12 TCP Traffic Control 22

Fair Buffer Allocation More aggressive dropping of packets as congestion increases Drop new packet when: N > R and W(i) > Z × B – R N - R Chapter 12 TCP Traffic Control 23

TCP over ABR Good performance of TCP over UBR can be achieved with minor adjustments to switch mechanisms This reduces the incentive to use the more complex and more expensive ABR service Performance and fairness of ABR quite sensitive to some ABR parameter settings Overall, ABR does not provide significant performance over simpler and less expensive UBR- EPD or UBR-EPD-FBA Chapter 12 TCP Traffic Control 24