Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo,

Slides:



Advertisements
Similar presentations
TCP Variants.
Advertisements

1 Improving TCP Performance over Mobile Networks HALA ELAARAG Stetson University Speaker : Aron ACM Computing Surveys 2002.
Improving TCP over Wireless by Selectively Protecting Packet Transmissions Carla F. Chiasserini Michele Garetto Michela Meo Dipartimento di Elettronica.
Hui Zhang, Fall Computer Networking TCP Enhancements.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
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.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4690: Experimental Networking Informal Quiz: TCP Shiv Kalyanaraman:
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #07 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
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.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168) Limited Transmit (RFC 3042)
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #7 TCP New Reno Vs. Reno.
1 Internet Networking Spring 2002 Tutorial 10 TCP NewReno.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
CS 268: Wireless Transport Protocols Kevin Lai Feb 13, 2002.
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 689 Lecture 2 Review of Last Lecture Networking basics TCP/UDP review.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168)
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.
Data Communication and Networks
1 Internet Networking Spring 2004 Tutorial 10 TCP NewReno.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #8 Explicit Congestion Notification (RFC 3168) Limited Transmit.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
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 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
1 A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Course : CS898T Instructor : Dr.Chang - Swapna Sunkara.
1 Improving Wireless LAN Performance via Adaptive Local Error Control Presented by Yuanfang Cai.
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.
Networks Lab, RPI An End-to-End Transport Protocol for Extreme Wireless Network Environments Vijay Subramanian, Shiv Kalyanaraman (Rensselaer Polytechnic.
Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo,
Improving TCP Performance over Mobile Networks Zahra Imanimehr Rahele Salari.
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.
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.
Lecture 9 – More TCP & Congestion Control
TCP-Cognizant Adaptive Forward Error Correction in Wireless Networks
Forward Error Correction vs. Active Retransmit Requests in Wireless Networks Robbert Haarman.
What is TCP? Connection-oriented reliable transfer Stream paradigm
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Computer Networking Lecture 18 – More TCP & Congestion Control.
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.
Low Latency Adaptive Streaming over TCP Authors Ashvin Goel Charles Krasic Jonathan Walpole Presented By Sudeep Rege Sachin Edlabadkar.
& Balancing Loss-Tolerance between Link and Transport Layers in Multi-Hop Wireless Networks Vijay Subramanian 1, Shiv Kalyanaraman 1 and K. K. Ramakrishnan.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
Advance Computer Networks Lecture#09 & 10 Instructor: Engr. Muhammad Mateen Yaqoob.
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
Ασύρματες και Κινητές Επικοινωνίες Ενότητα # 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.
Network Coding and Reliable Communications Group Modeling Network Coded TCP Throughput: A Simple Model and its Validation MinJi Kim*, Muriel Médard*, João.
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.
@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.
1 ICCCN 2003 Modelling TCP Reno with Spurious Timeouts in Wireless Mobile Environments Shaojian Fu School of Computer Science University of Oklahoma.
COMP 431 Internet Services & Protocols
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.
Lecture 19 – TCP Performance
CS640: Introduction to Computer Networks
EE 122: Lecture 10 (Congestion Control)
Transport Layer: Congestion Control
Presentation transcript:

Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo, Vijay Subramanian, Shiv Kalyanaraman (Rensselaer Polytechnic Institute) K. K. Ramakrishnan (AT&T)

Networks Lab, Rensselaer Polytechnic Institute 2 Overall Motivation q TCP response to errors and congestion is the same: q drop the window, and thus reduce load on the network q In the worst case, timeout when particular sequence of packets get lost (retransmits, entire window) q TCP was designed for congestion, loss rate in the 1-2% max. range. q TCP suffers significant timeout penalties with erasure rates > 5%. q Wireless channels becoming more pervasive q With mesh networks (infrastructure or community) it is likely that more than the last hop will be wireless. q Wireless links: q individual links can experience loss that can be high (even 10-15%) in transient situations, until power and link rate adjustments kick in q interference can also result in high loss rates. q E.g., ad-hoc networks, Mesh networks.

Networks Lab, Rensselaer Polytechnic Institute 3 Approach q Tools available to us: q Method of getting congestion indication that is separate from packet loss due to errors: Explicit Congestion Notification (ECN) q Use error recovery methods beyond retransmission and timeouts to overcome packet loss, so that TCP’s performance is retained. q Use FEC on an end-end basis: q Dynamic knowledge of the loss information can be exploited by the end-system. q Track short term loss rates. q Protect data by using FEC proactively and reactively. q FEC can work in a coordinated fashion with TCP’s window mechanisms to optimize the usage of FEC within a window (which is not available at the link level).

Networks Lab, Rensselaer Polytechnic Institute 4 Goals We pose the following questions.. q Dynamic Range: q Can we extend the dynamic range of TCP into high loss regimes? q Can TCP perform close to the theoretical capacity achievable under high loss rates? q Congestion Response: q How should TCP respond to notifications due to congestion.. q … but not respond to packet erasures that do not signal congestion? q Mix of Reliability Mechanisms: q What mechanisms should be used to extend the operating point of TCP into loss rates from 0% - 50 % packet loss rate? q How can Forward Error Correction (FEC) help? q How should the FEC be split between sending it proactively (insuring the data in anticipation of loss) and reactively (sending FEC in response to a loss)? q Timeout Avoidance: q Timeouts: Useful as a fall-back mechanism but wasteful otherwise especially under high loss rates. q How can we add mechanisms to minimize timeouts?

Networks Lab, Rensselaer Polytechnic Institute 5 SENDERSENDER RECEIVERRECEIVER Available Capacity Loss Feedback Through Acknowledgements Capacity Used TCP uses Loss Feedback to Estimate Available Capacity Capacity Used Erasure Recovery/ Loss Estimation Adaptive MSS/ Proactive and Reactive FEC LT-TCP: Adaptive Mechanisms to Reinstate Performance XX X – Packet Erasure

Networks Lab, Rensselaer Polytechnic Institute 6 Building Blocks… q ECN-Only: We infer congestion solely from ECN markings. Window is cut in response to q ECN signals: which means that hosts/routers have to be ECN-capable. q Timeouts: The response to a timeout is the same as before. q Window Granulation and Adaptive MSS: We ensure that the window always has at least G segments at all times. q Window size in bytes initially is the same as normal SACK TCP. q Initial segment size is small to accommodate G segments. q Packet size is continually so that we have at least G segments. Once we have G segments, packet size increases with window size. q Loss Estimation: The receiver continually tracks the loss rate and provides a running estimate of perceived loss back to the TCP sender through ACKs. An adaptive EWMA approach to estimating loss is used.

Networks Lab, Rensselaer Polytechnic Institute 7 Building Blocks … q Proactive FEC: TCP sender sends data in blocks where the block contains K data segments and R FEC packets. The amount of FEC protection (K) is determined by the current loss estimate. q Proactive FEC based upon estimate of per-window loss rate (Adaptive) q Reactive FEC: Upon receipt of 1 or 2 dupacks, Reactive FEC packets are sent based on the following criteria. q Number of Proactive FEC packets already sent. q Number of holes still left in the decoding block. q Loss rate currently estimated. q Reactive FEC to complement retransmissions

Networks Lab, Rensselaer Polytechnic Institute 8 Proactive and Reactive FEC in Action..

Networks Lab, Rensselaer Polytechnic Institute 9 Packet Erasure Rate EWMA Estimator: E =  *E latest + (1-  )*E Estimate is fairly accurate within small erasure rate variations Overestimate after spikes :  = E latest / (E latest + E) Trade off :Over- estimation leads to overhead. Overestimate Inefficiency Period Block Behavior: Per-Block Loss Estimator for P-FEC Estimation is done at receiver and fed-back to the sender

Networks Lab, Rensselaer Polytechnic Institute 10 Loss Tracking at Sender Sender can quickly and accurately track the loss rate based on feedback from the receiver % 0% 20% 20% 30% 0% 20% 10% ( Time ) Packet Error Rate

Networks Lab, Rensselaer Polytechnic Institute 11 Reed-Solomon FEC: RS(N,K) Data = K FEC (N-K) Block Size (N) RS(N,K) >= K of N received Lossy Network Recover K data packets! Recovery possible if we receive at least K packets out of N

Networks Lab, Rensselaer Polytechnic Institute Complete Window Lost! Window XXXX Transmission Loss Timout Cause #1: Burst Errors + Large MSS

Networks Lab, Rensselaer Polytechnic Institute 13 1 Window XXXX Transmission Loss ACK Stream 654 Rexmins 3 Window Granulation Reduces the Risk of Losing the Complete Window

Networks Lab, Rensselaer Polytechnic Institute 14 1 XX Transmission Loss Window ACK Stream 3 DUPACK-1 Timeout because of insufficient dupacks 3 Timout Cause #2: Insufficient Dupacks => SACK not triggered X

Networks Lab, Rensselaer Polytechnic Institute 15 1 XX Transmission Loss P-FEC 4321 Window P-FEC Receiver FEC Decoder P-FEC Proactive FEC Recover data packets…

Networks Lab, Rensselaer Polytechnic Institute 16 3 Window Transmission Loss XX ACK Stream 2 DUPACK 3 22 DUPACK 1 DUPACK 2 2 Retransmission X Transmission Loss ReXMITS ESPECIALLY vulnerable! Timeout Cause #3: Loss of Retransmissions

Networks Lab, Rensselaer Polytechnic Institute 17 1 XX Transmission Loss Window ACK Stream 6 DUPACK 3 54 DUPACK 1 DUPACK 2 R-FEC Receiver FEC Decoder R-FEC Reactive FEC: Complements Rexmits Selective Acknowledgements

Networks Lab, Rensselaer Polytechnic Institute 18 Loss Estimate FEC Computation (n,k) Loss Estimation MSS Adaptation Granulated Window Size Window Size Application Data P-FEC Data Window Putting it Together….

Networks Lab, Rensselaer Polytechnic Institute 19 Simulation Configuration

Networks Lab, Rensselaer Polytechnic Institute 20 Performance Results SACK (Multiple Sources) LT-TCP (Multiple Sources)

Networks Lab, Rensselaer Polytechnic Institute 21 Contribution of Components (20% PER case (Single Source)  LT-TCP is able to  reduce timeouts drastically  keep the queue non-empty maximizing throughput and capacity utilization.  minimize use of FEC to level needed

Networks Lab, Rensselaer Polytechnic Institute 22 Comparison w/ Link Layer FEC, HARQ LL FEC: FEC based upon average PER HARQ: 10% FEC; ARQ persistence = 3 LT-TCP: end-to-end

Networks Lab, Rensselaer Polytechnic Institute 23 Summary q TCP performance over wireless with residual erasure rates 0- 50% (short- or long-term). q E2E FEC: q Granulation ensures better flow of ACKs especially in small window regime. q Adaptive FEC (proactive and reactive) can protect critical packets appropriately q Adaptive => No overhead when there is no loss. q ECN used to distinguish congestion from loss. q Near-optimal performance for wide range: from low to high loss rates. q Future Work: q Optimal division of reliability functions between PHY,MAC, E2E q Study of interaction between LT-TCP and link-layer schemes.

Networks Lab, Rensselaer Polytechnic Institute 24 Thanks! Researchers: Omesh Tickoo: Vijay Subramanian: Shiv Kalyanaraman: K.K. Ramakrishnan,

Networks Lab, Rensselaer Polytechnic Institute 25 Building Block Behavior: Adaptive MSS (Window Granulation) q Adaptive MSS behavior. q Congestion window (in segments) kept above G = 10 q MSS increases when CWND grows, q MSS shrinks when CWND shrinks to maintain G

Networks Lab, Rensselaer Polytechnic Institute 26 Shortened Reed Solomon FEC (per-Window) Proactive FEC (F) Data = D Window (W) Reactive FEC (R) Zeros (Z) Block Size (N) K = d + z d z RS(N,K)

Networks Lab, Rensselaer Polytechnic Institute 27 Performance Results.. LT-TCP (Single Source)  At 50 % error rate, timeouts increase drastically because..  Few Proactive FEC packets received.  Proactive FEC cannot counter variation in error patterns.  Reactive FEC is insufficient in this case to avoid timeouts.  This effect can be mitigated by increasing FEC protection. Drop in Performance from 40 to 50 %

Networks Lab, Rensselaer Polytechnic Institute 28 Changes w.r.t. submitted paper q FEC is now done on a block-by-block basis. q Proactive protection is determined solely by the loss estimate. (no arbitrary constants) q Reactive FEC packets may be wasted if they belong to the wrong block. q Conditions under which Reactive FEC packets are sent are restricted (discussed earlier). q Window granulation is done using the following rule q “Send as big a packet as possible while maintaining granularity” q Throughput and goodput are measured at the receiver for better accuracy. q On partial dupacks, we make sure that retransmission are not duplicated. We send new TCP data instead. q Loss tracking is now done whenever we receive an ACK. q Loss estimation at receiver has changed to accommodate block-by-block decoding.