TCP/IP Over Lossy Links - TCP SACK without Congestion Control

Similar documents
La couche transport dans l'internet (la suite TCP/IP)

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

La couche transport dans l'internet (la suite TCP/IP)

International Journal of Scientific & Engineering Research, Volume 6, Issue 7, July ISSN

TCP over Wireless Networks

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

17: Queue Management. Queuing. Mark Handley

SJBIT, Bangalore, KARNATAKA

AN IMPROVED SNOOP FOR TCP RENO AND TCP SACK IN WIRED-CUM- WIRELESS NETWORKS

Performance evaluation of TCP connections in ideal and non-ideal network environments

STUDY OF TCP VARIANTS OVER WIRELESS NETWORK

TCP in Wireless Mobile Networks

A Survey: High Speed TCP Variants in Wireless Networks

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

TCP for Wireless Networks

An Improved TCP Congestion Control Algorithm for Wireless Networks

Outline. TCP connection setup/data transfer Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

Transport layer issues in ad hoc wireless networks Dmitrij Lagutin,

Mobile Communications Chapter 9: Mobile Transport Layer

Active Queue Management (AQM) based Internet Congestion Control

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

Data Networks Summer 2007 Homework #3

Research of TCP ssthresh Dynamical Adjustment Algorithm Based on Available Bandwidth in Mixed Networks

Simulation-Based Comparisons of Solutions for TCP Packet Reordering in Wireless Network

TCP Over Wireless Network. Jinhua Zhu Jie Xu

Master Course Computer Networks IN2097

Performance improvement of active queue management with per-flow scheduling

Protagonist International Journal of Management And Technology (PIJMT) Online ISSN Vol 2 No 3 (May-2015) Active Queue Management

Optimization of Communication Systems Lecture 6: Internet TCP Congestion Control

Transport Layer Protocols

A Study on TCP Performance over Mobile Ad Hoc Networks

High-Speed TCP Performance Characterization under Various Operating Systems

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

Congestions and Control Mechanisms n Wired and Wireless Networks

The Effect of Packet Reordering in a Backbone Link on Application Throughput Michael Laor and Lior Gendel, Cisco Systems, Inc.

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

ALTHOUGH it is one of the first protocols

First Midterm for ECE374 03/09/12 Solution!!

FEW would argue that one of TCP s strengths lies in its

Student, Haryana Engineering College, Haryana, India 2 H.O.D (CSE), Haryana Engineering College, Haryana, India

Quality of Service using Traffic Engineering over MPLS: An Analysis. Praveen Bhaniramka, Wei Sun, Raj Jain

TCP Fast Recovery Strategies: Analysis and Improvements

Congestion Control Review Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

CS268 Exam Solutions. 1) End-to-End (20 pts)

TCP Westwood for Wireless

Seamless Congestion Control over Wired and Wireless IEEE Networks

ECSE-6600: Internet Protocols Exam 2

ICTCP: Incast Congestion Control for TCP in Data Center Networks

Low-rate TCP-targeted Denial of Service Attack Defense

Linux 2.4 Implementation of Westwood+ TCP with rate-halving: A Performance Evaluation over the Internet

Delay-Based Early Congestion Detection and Adaptation in TCP: Impact on web performance

CS551 End-to-End Internet Packet Dynamics [Paxson99b]

A packet-reordering solution to wireless losses in transmission control protocol

A Study of Internet Packet Reordering

First Midterm for ECE374 03/24/11 Solution!!

High Speed Internet Access Using Satellite-Based DVB Networks

Mobile Computing/ Mobile Networks

Final for ECE374 05/06/13 Solution!!

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

A Passive Method for Estimating End-to-End TCP Packet Loss

TCP Trunking for Bandwidth Management of Aggregate Traffic

Per-Flow Queuing Allot's Approach to Bandwidth Management

Effect of Packet-Size over Network Performance

EFFECT OF TRANSFER FILE SIZE ON TCP-ADaLR PERFORMANCE: A SIMULATION STUDY

TCP in Wireless Networks

Robust Router Congestion Control Using Acceptance and Departure Rate Measures

Packet Queueing Delay

TCP in Wireless Environments: Problems and Solutions

Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow

Computer Networks. Chapter 5 Transport Protocols

TCP Congestion Control Scheme for Wireless Networks based on TCP Reserved Field and SNR Ratio

TCP tuning guide for distributed application on wide area networks 1.0 Introduction

Applications. Network Application Performance Analysis. Laboratory. Objective. Overview

SELECTIVE-TCP FOR WIRED/WIRELESS NETWORKS

TCP based Denial-of-Service Attacks to Edge Network: Analysis and Detection

XCP-i : explicit Control Protocol for heterogeneous inter-networking of high-speed networks

GREEN: Proactive Queue Management over a Best-Effort Network

TCP PACKET CONTROL FOR WIRELESS NETWORKS

Parallel TCP Data Transfers: A Practical Model and its Application

TCP, Active Queue Management and QoS

Chapter 6 Congestion Control and Resource Allocation

TRANSPORT LAYER AND SECURITY PROTOCOLS FOR AD HOC WIRELESS NETWORKS

15-441: Computer Networks Homework 2 Solution

Transport layer protocols for ad hoc networks

Transcription:

Wireless Random Packet Networking, Part II: TCP/IP Over Lossy Links - TCP SACK without Congestion Control Roland Kempter The University of Alberta, June 17 th, 2004 Department of Electrical And Computer Engineering University of Utah Salt Lake City, UT, USA Email: rolke@gmx.net

Organization 1. The History of TCP 2. Current TCP Congestion Control 3. Design Ideas: no congestion control at all 4. Measurement Results 5. Future TCP Congestion Control? 6. Conclusion

1. The History of TCP (incomplete) Old Tahoe Tahoe Reno slow start and congestion avoidance. After packet loss, timeout followed by slowstart added fast recovery. Duplicate ACKs initiate fast retransmit, then slowstart [Jaco88] fast retransmit extended by fast recovery [Jaco90] New Reno TCP SACK small optimization of TCP Reno, immediately retransmit the packet following a partial ACK without leaving fast recovery [Hoe96] specify the range of packets that were received out of order. More than one packet per RTT during fast recovery is send [MatmahFlRo96] 88 90 94 94 95 96 Old Tahoe Tahoe Reno Vegas New Reno TCP SACK TCP FACK

2. Congestion Control: slow start Slow Start: with every received ACK, double the number of packets that are sent. Slow start adds a window to the sender's TCP: the congestion window, called cwnd as well as a variable called ssthres exponential growth of the Congestion Window up to ssthres, then linear growth Figure taken from [Jaco88] The congestion window is flow control imposed by the sender. It is based on the sender's educated guess of perceived network congestion. Congestion Control assumes that packets are only lost due to overfull queues.

2. TCP Congestion Control TCP send rate is determined by three windows: win=min(snd_cwnd,snd_wnd,snd_bwnd) Congestion window assumed bottlenecks: queue sizes in the network Advertised window assumed bottleneck: receiver s buffer Bandwidth window, ACK clock assumed bottleneck: link capacity

2. Congestion Control: congestion avoidance Again: Congestion Control assumes that packets are only lost due to overfull queues When do we need the snd_cwnd? only if we assume that the queues in the network are the bottlenecks. Also: In real world, is there more to infer from a lost packet than it has to be retransmitted? SACK optimizes the Retransmission Business

3. Design Idea TCP offers: - Flow Control - Bandwidth Control - Congestion Control - In-order-delivery - Error Control (retransmissions)...and a lot more TCP does not: - offer timely delivery - avoid unnecessary overhead under certain conditions (e.g short connections) - Perform well in lossy (wireless) environments Why? Because of the way TCP handles congestion control

3. Design Idea: no congestion control at all Recall the sending rate is given by: Now: win=min(snd_cwnd,snd_wnd,snd_bwnd) win=min(snd_bwnd,snd_wnd) Without SACK, this flavor of TCP will perform poorly (waste of bandwidth on duplicate ACKs that can lead to timeouts) SACK gives us control over the now static window UDP? In contrast to UDP, the protocol will still guarantee for in-order delivery and will adopt to the link capacity.

4. Measurements: the emulation environment Node 1 Sender with modified TCP 10Mbps Node 2 Receiver with modified TCP 100Mbps Router 1 Router 2 100Mbps Sender with original TCP Receiver with original TCP Node 0, base Node 3, base delays for each link: On 10ms, all 100ms links, and delay=10ms. 400ms Loss rates varied from p=0, p=0.001, p=0.01, p=0.1 to p=0.2 Packt resulting loss RTTs: events 60ms, are 600ms, uniformly 2.4 s distributed. Emulation has been set up in the emulab environment [emu]. [emu] www.emulab.net

4. Measurements: collection of Data 1. Initialize tcpdump on the to-be-observed node: sudo tcpdump -c num -w file -i if & 2. Start ttcp on the receiving node ttcp -r -s src 3. Start ttcp on the sending node ttcp -t -s -n num dst num - number of packets to be captured file - name of the dump file if - interface to be listened to src - IP address of the sending node dst - IP address of the receiving node Traces have been analyzed off-line with ethereal [eth]. [eth] www.etheral.com, packet sniffer and analyzer

4. Measurements: time-sequence of SACKBASE, lossless link tcpdump started on the sender, zoomed into connection set up phase optimum size of the send window in case of a link bottleneck: bandwidth-delay product advertised receiver window seq # ACKs received

4. Measurements: time-sequence of SACKEXP, lossless link tcpdump started on the sender, zoomed into connection set up phase

4. Measurements: summary of results, competing flows [KemXinKas04] R. Kempter, B. Xin, S. Kumar Kasera, Towards a Composable Transport Protocol: TCP without Congestion Control, submitted to SIGCOMM 2004

4. Measurements: summary of results, competing flows [KemXinKas04] R. Kempter, B. Xin, S. Kumar Kasera, Towards a Composable Transport Protocol: TCP without Congestion Control, submitted to SIGCOMM 2004

5. Future TCP Congestion Control? ECN bit Another way to do congestion control: the ECN bit Instead of dropping packets, a router sends a TCP an explicit message stating that the network is becoming congested. The network determines an explicit rate for a sender [RamFloyd99]. Hop-by-Hop vs. End-to-end congestion control ECN bit IP Packet 0 IP Header 1 IP Header ECN Echo TCP ACK 1 [RamFloyd99] Ramakrishnan, K.K., and Floyd, S., A Proposal to add Explicit Congestion Notification (ECN) to IP. RFC 2481, January 1999

5. Future TCP Congestion Control? ICMP Source Quench+ECN Another way to do congestion control: a scheme for unicast as well as multicast flows that involves the ICMP Source Quench message [DraFdi00] A. Dracinschi, S. Fdida, "Congestion Avoidance for Unicast and Multicast Traffic", 2000.1st IEEE European Conference on Universal Multiservice Networks IP Networks Versus Conventional Switched Networks ECUMN'2000 - Colmar, France - October 2000

6. Conclusion Due to ambiguity in packet loss, current TCP congestion control leads to low throughput over lossy links TCP without any congestion control and without SACK is very inefficient At p=0.1%, SACKEXP achieves 91% of the goodput of a lossless link, whereas TCP SACK only achieves 65% (at identical efficiencies of 91%) As the loss rate increases to 20%, SACKEXP achieves goodputs in the order of 700% at similar efficiencies compared to TCP SACK In the future, we plan to investigate the performance of SACKEXP with Congestion Control based on the ECN bit/icmp Source Quench Performance of SACKEXP has to be compared to a TCP that can resort to a Link Layer retransmission scheme.

THE END Questions are welcome! [Jaco88] Van Jacobson, Congestion Avoidance and Control, ACM SIGCOMM '88 [Jaco90] Van Jacobson, Modified TCP Congestion Avoidance Algorithm, email to end2end-interest@isi.edu, April 1990 [BraMalPet94] Lawrence S. Brakmo, Sean W. O'Malley, Larry L. Peterson, TCP Vegas: New Techniques for Congestion Detection and Avoidance, Sigcomm 1994 [MatMahFlRo96] M. Mathis, J. Mahdavi, S. Floyd, A. Romanow, TCP Selective Acknowledgement Options, RFC 2018, April 1996 [Hoe96] Janey C. Hoe, Improving the start-up behavior of a Congestion Control Scheme for TCP, Sigcomm 1996 [MatMah96] M. Mathis and J. Mahdavi, "Forward acknowledgement: Refining TCP congestion control, ACM Computer Communication Review, Oct 1996.