Hui Zhang, Fall 2012 1 15-441 Computer Networking TCP Enhancements.

Slides:



Advertisements
Similar presentations
TCP--Revisited. Background How to effectively share the network? – Goal: Fairness and vague notion of equality Ideal: If N connections, each should get.
Advertisements

TCP Variants.
LOGO Transmission Control Protocol 12 (TCP) Data Flow.
Improving TCP over Wireless by Selectively Protecting Packet Transmissions Carla F. Chiasserini Michele Garetto Michela Meo Dipartimento di Elettronica.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina 6.033, Spring 2014.
Introduction 1 Lecture 14 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
CMPE 257: Wireless and Mobile Networking
15-441: Computer Networking Lecture 24: Mobile and Wireless Networking.
Internet Networking Spring 2003 Tutorial 12 Limited Transmit RFC 3042 Long Thin Networks RFC 2757.
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.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168) Limited Transmit (RFC 3042)
CS 268: Wireless Transport Protocols Kevin Lai Feb 13, 2002.
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.
15-441: Computer Networking Lecture 19: Wireless, Ad-Hoc Networks As usual: thanks to Dave and Srini.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
15-441: Computer Networking Lecture 21: Wireless Networking.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
TCP performance in Wireless Networks Ehsan Hamadani July 2004.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
1 A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Course : CS898T Instructor : Dr.Chang - Swapna Sunkara.
Wireless TCP February 22, 2002 © 2002 Yongguang Zhang CS 395T - Mobile Computing and Wireless Networks Department of Computer SciencesTHE UNIVERSITY OF.
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.
CS640: Introduction to Computer Networks Aditya Akella Lecture 22 - Wireless Networking.
Spring 2000Nitin BahadurAdvanced Computer Networks A Comparison of Mechanisms for Improving TCP Performance over Wireless Links By: Hari B., Venkata P.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
CS640: Introduction to Computer Networks Aditya Akella Lecture 22 - Wireless Networking.
Improving TCP Performance over Mobile Networks Zahra Imanimehr Rahele Salari.
Lecture 11 Mobile Networks: TCP in Wireless Networks Wireless and Mobile Systems Design.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
Wireless TCP Prasun Dewan Department of Computer Science University of North Carolina
1 Impact of transmission errors on TCP performance (Nitin Vaidya)
Transport over Wireless Networks Myungchul Kim
15-441: Computer Networking Lecture 23: Wireless Networking Copyright ©, Carnegie Mellon University.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
Lecture 9 – More TCP & Congestion Control
TCP-Cognizant Adaptive Forward Error Correction in Wireless Networks
15-441: Computer Networking Lecture 23: Mobile and Wireless Networking.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
Challenges to Reliable Data Transport Over Heterogeneous Wireless Networks.
15-744: Computer Networking L-18 Mobile Transport and Applications.
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:
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
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.
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
MOBILE TCP.
Ασύρματες και Κινητές Επικοινωνίες Ενότητα # 11: Mobile Transport Layer Διδάσκων: Βασίλειος Σύρης Τμήμα: Πληροφορικής.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
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.
Computer Networking Lecture 16 – Reliable Transport.
@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.
Internet Networking recitation #9
Chapter 3 outline 3.1 transport-layer services
COMP 431 Internet Services & Protocols
Wireless Transport.
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Internet Networking recitation #10
TCP Congestion Control
Transport Layer: Congestion Control
TCP flow and congestion control
Impact of transmission errors on TCP performance
Presentation transcript:

Hui Zhang, Fall Computer Networking TCP Enhancements

Hui Zhang, Fall Overview  TCP is a general purpose transport protocol  Design decisions are made based on a set of assumptions  TCP performance suffers when one or more assumptions do not hold in some application scenario’s  We want to understand -Common scenario’s when standard TCP does not perform well -What assumptions are broken in each scenario? -What different design decisions can be made to improve TCP performance in each scenario? -

Hui Zhang, Fall Scenario 1: Network With Large Delay Bandwidth Product  Example: a supercomputer in UIUC communicating with another supercomputer in CERN of Switzerland over a 10Gbps network  Assume round trip time (RTT) is 200 ms  What is the maximum throughput with standard TCP?

Hui Zhang, Fall The Key Formula and The Answer  MaxThroughput <= MaxWindowSize/RTT  Reasons: -MaxWindowSize is the maximum of outstanding bytes a sender can send before receiving the first acknowledgement packet - RTT is the minimum period between the time the first byte sent by the sender and the first ack (with respect to the first bye) is received by the sender  What is the maximum window size in TCP? -64 KB as limited by the 16 bits window size in TCP header  Therefore, the answer is 2.56 Mbps (64 KB/200ms) for one TCP connection

Hui Zhang, Fall TCP Large Window Option  TCP option allows additional 14 bits window size  The total window size up to 30 bits (1GB)  Question: what is the minimum additional number of bits for the window that the supercomputers need to use to fully utilize the 10Gbps link?  Answer -Window size in number of bytes: 250 GB (10Gbps * 200ms/8) -# of bits needed to encode the window: 28 bits -# of additional bits: 12

Hui Zhang, Fall Large Delay Bandwidth Network  In the previous example, when the link is fully utilized, how many packets (TCP segments) are in transit before the 1 st ack is received by the sender?  For simplicity assume each segment has 1KB payload  The answer is 250,000 (250MB/1KB)

Hui Zhang, Fall Flow Control vs. Congestion Control in Large Delay Bandwidth Networks  TCP’s sender window is limited by both awnd (for flow control purpose) and cwnd (for congestion purpose)  The previous example considers only the limitation imposed by flow control  Now let’s consider the effect of congestion control -Assuming NO packet loss, how much time does it take for the sender cwnd to grow to 1GB? You should try to work this work yourself -What happens if there are multiple packet losses in one window?

Hui Zhang, Fall Implication of Decision of Using Cumulative Ack in TCP  Standard TCP uses cumulative ack -Plus: robust with respect to lost acks -Minus: not robust with respect to lost packets  The drawback of cumulative ack is more serious in networks with networks with large delay bandwidth product -Large number of packets per RTT -The sender learns only one packet loss per RTT -A small number of packet losses can result in Retransmission Timeout (RTO) -With a RTO, the sender will retransmit all packets starting from the packet that causes the timeout -many of these packets may have been received by the receiver, however, the sender won’t be able to know --- the cumulative ack does not provide this information!

Hui Zhang, Fall TCP Selective Ack Option  Receivers informs the sender about each of packets that has been received successfully  Sender transmits only the packet that have not been acked

Hui Zhang, Fall Scenario 2: Performance Degradation in Wireless Networks Time (s) Sequence number (bytes) TCP Reno (280 Kbps) Expected TCP performance (1.30 Mbps) 2 MB wide-area TCP transfer over 2 Mbps Lucent WaveLAN

Hui Zhang, Fall Wireless Bit-Errors Router Computer 2Computer Loss  Congestion Burst losses lead to coarse-grained timeouts Result: Low throughput Loss  Congestion Wireless

Hui Zhang, Fall TCP Problems Over Noisy Links  Wireless links are inherently error-prone -Fades, interference, attenuation -Errors often happen in bursts  TCP cannot distinguish between corruption and congestion -TCP unnecessarily reduces window, resulting in low throughput and high latency  Burst losses often result in timeouts  Sender retransmission is the only option -Inefficient use of bandwidth

Hui Zhang, Fall Proposed Solutions  Incremental deployment -Solution should not require modifications to fixed hosts -If possible, avoid modifying mobile hosts  End-to-end protocols -Selective ACKs, Explicit loss notification  Split-connection protocols -Separate connections for wired path and wireless hop  Reliable link-layer protocols -Error-correcting codes -Local retransmission

Hui Zhang, Fall Approach Styles (End-to-End)  Improve TCP implementations -Not incrementally deployable -Improve loss recovery (SACK, NewReno) -Help it identify congestion (ELN, ECN) ACKs include flag indicating wireless loss -Trick TCP into doing right thing  E.g. send extra dupacks Wired linkWireless link

Hui Zhang, Fall Approach Styles (Link Layer)  More aggressive local rexmit than TCP -Bandwidth not wasted on wired links  Possible adverse interactions with transport layer -Interactions with TCP retransmission -Large end-to-end round-trip time variation  FEC does not work well with burst losses Wired linkWireless link ARQ/FEC

Hui Zhang, Fall Scenario 3: Asymmetric TCP  Example of Asymmetric networks -Cable modems: 10 Mbps down, 512 kbps up -ADSL: 8 Mbps down, 1 Mbps up -May also due to congested condition on reverse path  Forward path throughout may be smaller than forward path link capacity, why?  Slower bandwidth on reverse path stretches out ACKs (ACK dilation)

Hui Zhang, Fall Scenario 4: Small File and Transaction Applications  Most files are smaller than 1 KB -One TCP segment  No chance for fast recovery/fast retransmission (why?)  Packet loss results in RTO

Hui Zhang, Fall Summary: TCP Key Design Decisions & Assumptions  Application: large number of bytes & average throughput -What about small file and transaction applications?  Packet drop is congestion signal -Wireless network?  Cumulative ack -Single packet loss with large RTT*BW environment  16 bits win size -Large RTT*BW environment  Ack clocking -Asymmetric path

Hui Zhang, Fall Tradeoffs Between General-Purpose Protocol vs. Special Purpose Protocol  TCP is general purpose protocol -One size hard to fit for all  Why not developing special purpose protocol? -Metcalf’s law of network utility -There is huge value just to be able to communicate with anyone  TCP option strikes the balance -Backward compatible with hosts not implementing the options (still be able to communicate, may not be high performance) -Two hosts both implementing the same option can take advantage of the benefit of the option  TCP option does incur additional complexity and overhead