Networks Lab, RPI An End-to-End Transport Protocol for Extreme Wireless Network Environments Vijay Subramanian, Shiv Kalyanaraman (Rensselaer Polytechnic.

Slides:



Advertisements
Similar presentations
1 Improving TCP Performance over Mobile Networks HALA ELAARAG Stetson University Speaker : Aron ACM Computing Surveys 2002.
Advertisements

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.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
Introduction 1 Lecture 14 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
The War Between Mice and Elephants LIANG GUO, IBRAHIM MATTA Computer Science Department Boston University ICNP (International Conference on Network Protocols)
Explicit Congestion Notification (ECN) RFC 3168 Justin Yackoski DEGAS Networking Group CISC856 – TCP/IP Thanks to Namratha Hundigopal.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #05: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
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”
Ramya Mudduluri In Defense of Wireless Carrier Sense.
Chapter 3 Transport Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 12.
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)
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.
Improving TCP Performance over Ad-hoc Network 11/28/2000 Xuanming Dong, Duke Lee, and Jin Wang Course Project for EE228A --- Fall 2000 (Professor Jean.
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 ATP: A Reliable Transport Protocol for Ad-hoc Networks Sundaresan, Anantharam, Hseih, Sivakumar.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #8 Explicit Congestion Notification (RFC 3168) Limited Transmit.
17/10/2003TCP performance over ad-hoc mobile networks. 1 LCCN – summer 2003 Uri Silbershtein Roi Dayagi Nir Hasson.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1-1 TCP Shivkumar Kalyanaraman Rensselaer Polytechnic Institute
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
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.
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 Layer 4 2: Transport Layer 4.
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.
Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo,
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
Improving TCP Performance over Mobile Networks Zahra Imanimehr Rahele Salari.
1 Disruption-Tolerant Link-level Mechanisms for Extreme Wireless Network Environments Vijay Subramanian 1, K. K. Ramakrishnan 2 and Shiv Kalyanaraman 1.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
Transport over Wireless Networks Myungchul Kim
Rate Adaptation Protocol for Real-time Streams Goal: develop an end-to-end TCP-friendly RAP for semi-reliable rate-based applications (e.g. playback of.
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
Copyright © Lopamudra Roychoudhuri
Analysis of TCP Latency over Wireless Links Supporting FEC/ARQ-SR for Error Recovery Raja Abdelmoumen, Mohammad Malli, Chadi Barakat PLANETE group, INRIA.
TCP-Cognizant Adaptive Forward Error Correction in Wireless Networks
Forward Error Correction vs. Active Retransmit Requests in Wireless Networks Robbert Haarman.
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.
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.
& 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.
MOBILE TCP.
Ασύρματες και Κινητές Επικοινωνίες Ενότητα # 11: Mobile Transport Layer Διδάσκων: Βασίλειος Σύρης Τμήμα: Πληροφορικής.
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/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
@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.
Adding Explicit Congestion Notification (ECN) Capability to TCP's SYN/ACK Packets A. Kuzmanovic, A. Mondal, S. Floyd, and K.K. Ramakrishnan draft-ietf-tcpm-ecnsyn-02.txt.
Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo,
COMP 431 Internet Services & Protocols
Introduction to Congestion Control
Ad-hoc Networks.
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Transport Layer: Congestion Control
Chapter 3 outline 3.1 Transport-layer services
Presentation transcript:

Networks Lab, RPI An End-to-End Transport Protocol for Extreme Wireless Network Environments Vijay Subramanian, Shiv Kalyanaraman (Rensselaer Polytechnic Institute) K. K. Ramakrishnan (AT&T) Status Reports Packets, FEC Repairs TCP Sender TCP Receiver

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

Networks Lab, RPI Performance of TCP-SACK TCP-SACK Performance degrades beyond an error rate of 5% PER. Performance is also sensitive to RTT.

Networks Lab, RPI Goals We pose the following questions.. Dynamic Range: Can we extend the dynamic range of TCP into high loss regimes? Can TCP perform close to the theoretical capacity achievable under high loss rates? Congestion Response: How should TCP respond to notifications due to congestion.. … but not respond to packet erasures that do not signal congestion? Mix of Reliability Mechanisms: What mechanisms should be used to extend the operating point of TCP into loss rates from 0% - 50 % packet loss rate? How can Forward Error Correction (FEC) help? 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)? Timeout Avoidance: Timeouts: Useful as a fall-back mechanism but wasteful otherwise especially under high loss rates. How can we add mechanisms to minimize timeouts?

Networks Lab, RPI 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, RPI Approach Tools available to us: Method of getting congestion indication that is separate from packet loss due to errors: Explicit Congestion Notification (ECN) Use error recovery methods beyond retransmission and timeouts to overcome packet loss, so that TCP’s performance is retained. Use FEC on an end-end basis: Dynamic knowledge of the loss information can be exploited by the end-system. Track short term loss rates. Protect data by using FEC proactively and reactively. 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, RPI Building Blocks … ECN-Only: We infer congestion solely from ECN markings. Window is cut in response to ECN signals: which means that hosts/routers have to be ECN-capable. Timeouts: The response to a timeout is the same as before. Window Granulation and Adaptive MSS: We ensure that the window always has at least G segments at all times. Window size in bytes initially is the same as normal SACK TCP. Initial segment size is small to accommodate G segments. Packet size is continually changed so that we have at least G segments. Once we have G segments, packet size increases with window size. 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, RPI Building Blocks … 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. Proactive FEC based upon estimate of per-window loss rate (Adaptive) Reactive FEC: Reactive FEC to complement retransmissions. Upon receipt of 1 or 2 dupacks, Reactive FEC packets are sent based on the following criteria. Number of Proactive FEC packets already sent. Number of holes still left in the decoding block. Loss rate currently estimated.

Networks Lab, RPI Proactive and Reactive FEC in Action.. Data + PFEC are sent in the initial transmission. Feed back from the receiver is used to determine strength of RFEC protection. SACK retransmissions along with RFEC packets are used to recover the original data.

Networks Lab, RPI 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, RPI LT-TCP Big Picture

Networks Lab, RPI Simulation Setup

Networks Lab, RPI LT-TCP Performance Performance of LT-TCP is much better compared to that of TCP-SACK LT-TCP degrades gracefully (linear fall) Relative insensitivity to RTT variation.

Networks Lab, RPI LT-TCP and TCP-SACK Performance LT-TCP performance is good both with Uniform with Gilbert Loss Process. Gilbert Loss Process Error Rate toggles between 0.5p and 1.5p for an average PER of p. Sojourn time is randomized around a mean period.

Networks Lab, RPI LT-TCP Component Contributions (Goodput) Individual component contributions are shown. Proactive FEC has the most significant impact.

Networks Lab, RPI LT-TCP Component Contributions (Timeout) Contributions of components in reducing the incidences of timeouts is shown. RFEC and PFEC are needed to reduce timeouts. With just TCP-SACK and ECN schemes, timeouts are repeated and large though few in number.

Networks Lab, RPI LT-TCP Component Contributions (Cumulative Goodput) Cumulative goodput for a representative pair of flows (1 TCP-SACK and 1 LT-TCP) are shown out of 10 flows total.

Networks Lab, RPI Fairness Comparisons Instantaneous goodput for a representative pair of flows (1 TCP-SACK and 1 LT-TCP) are shown out of 10 flows total. The goodput was measured in intervals of 100ms.

Networks Lab, RPI Comparison of Congestion Windows Error free simulation with 5 TCP-SACK and 5 LT-TCP flows except for a 100ms period at t=50s with PER set to 50%. Congestion Window for TCP- SACK is as shown Following a timeout, TCP- SACK recovers quickly and regains its fair share of the bandwidth. It does not get beaten down by LT-TCP’s behavior.

Networks Lab, RPI LT-TCP Congestion Window Congestion Window for LT-TCP is as shown LT-TCP suffers a loss event during the loss period but does not suffer a timeout.

Networks Lab, RPI Summary LT-TCP provides robustness even under conditions of large and bursty loss rates. Avoids timeouts High Goodput Increased Dynamic Range Current and future work includes link-level enhancements that provide bounded delay, low residual loss rate and high goodput even under disruption scenarios.

Networks Lab, RPI Thanks! Researchers: Vijay Subramanian: (Rensselaer Polytechnic Shivkumar Kalyanaraman: (Rensselaer Polytechnic K.K. Ramakrishnan, (AT&T Labs