Linux 2.4 Implementation of Westwood+ TCP with Rate Halving : A Performance Evaluation over the Internet

Similar documents
Analisys and Performance Evaluation of Westwood+, New Reno and Vegas TCP Congestion Control

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

TCP Westwood and Easy Red to Improve Fairness in High-speed Networks. PfHsn 2002 Berlin, 22 April 2002

Live Internet Measurements Using Westwood+ TCP Congestion Control *

Simulation-based Comparisons of Reno, Vegas and Westwood+ TCP

Performance Evaluation of Westwood+ TCP Congestion Control,

Performance evaluation of Westwood+ TCP congestion control

The effect of reverse traffic on the performance of new TCP congestion control algorithms

Performance Analyses of TCP Westwood

TCP Westwood: Efficient Transport for High-speed wired/wireless Networks

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Chaoyang University of Technology, Taiwan, ROC Nan-Kai Institute of Technology, Taiwan, ROC

Design of Network Dependent Congestion Avoidance TCP (NDCA-TCP) for Performance Improvement in Broadband Networks

INTERNATIONAL JOURNAL OF ADVANCED RESEARCH IN ENGINEERING AND TECHNOLOGY (IJARET)

Lecture 4: Congestion Control

TCP congestion control:

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

Improving TCP Performance over Wireless Networks using Loss Predictors

Performance Evaluation of TCP Westwood. Summary

Impact of transmission errors on TCP performance. Outline. Random Errors

Enhanced TCP with End-to-End Bandwidth and Loss Differentiation Estimate over Heterogeneous Networks

Design and Performance Evaluation of High Efficient TCP for HBDP Networks

Congestion Control and Sizing Router Buffers in the Internet

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

CS Transport. Outline. Window Flow Control. Window Flow Control

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks

PERFORMANCE EVALUATION OF TCP CONGESTION CONTROL ALGORITHMS OVER UMTS

Computer Networking Introduction

Computer Networks Spring 2017 Homework 2 Due by 3/2/2017, 10:30am

ENHANCED BANDWIDTH ESTIMATION ALGORITHMS IN THE TCP CONGESTION CONTROL SCHEME

TCP Congestion Control

TCP Congestion Control

Bandwidth Allocation & TCP

cs/ee 143 Communication Networks

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

TCP Congestion Control 65KB W

An analytical model for evaluating utilization of tcp reno

Stable Accurate Rapid Bandwidth Estimate for Improving TCP over Wireless Networks

TCP WITH FASTER RECOVERY. Claudio Casetti Mario Gerla Scott Seongwook Lee Saverio Mascolo Medy Sanadidi

Investigating the Use of Synchronized Clocks in TCP Congestion Control

TCP over Wireless Networks:

Communication Networks

Problems and Solutions for the TCP Slow-Start Process

TCP Flavors Simulation Evaluations over Noisy Environment

TCP over Wireless. Protocols and Networks Hadassah College Spring 2018 Wireless Dr. Martin Land 1

Flow and Congestion Control Marcos Vieira

A Review on Tcp Westwood Protocol For Simulated And Internet Environment

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Analysis Of TCP WestwoodNR Protocol in Congested and Lossy Network

Internet Networking recitation #10 TCP New Reno Vs. Reno

ENSC 835 project (2002) TCP performance over satellite links. Kenny, Qing Shao Grace, Hui Zhang

Transport Layer Congestion Control

Congestion Control in TCP

Outline. User Datagram Protocol (UDP) Transmission Control Protocol (TCP) Transport layer (cont.) Transport layer. Background UDP.

ISSN: Index Terms Wireless networks, non - congestion events, packet reordering, spurious timeouts, reduce retransmissions.

Reliable Transport II: TCP and Congestion Control

A Survey on Quality of Service and Congestion Control

OPNET M-TCP model. Modupe Omueti

TCP Westwood: Congestion Window Control Using Bandwidth Estimation

ATL : An Adaptive Transport Layer Protocol Suite for Next Generation Wireless Internet

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Transport Protocols and TCP

Receiver-initiated Sending-rate Control based on Data Receive Rate for Ad Hoc Networks connected to Internet

CSCI Topics: Internet Programming Fall 2008

Congestion Control in TCP

Congestion Control in TCP

TCP Congestion Control

Advanced Computer Networks

IMPROVING TCP PERFORMANCE OVER WIRELESS NETWORKS USING LOSS DIFFERENTIATION ALGORITHMS

Advanced Computer Networks

CS321: Computer Networks Congestion Control in TCP

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018

Mid Term Exam Results

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

Chapter III: Transport Layer

Lecture 15: Transport Layer Congestion Control

Analysis of Reno: A TCP Variant

Advanced Slow Start TCP Algorithm

COMP/ELEC 429/556 Introduction to Computer Networks

Congestion Control 3/16/09

Chapter 3 Transport Layer

TCP Westwood: congestion control with faster recovery

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli)

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Comparing TCP Congestion Control Algorithms Based on Passively Collected Packet Traces

Reliable Transport II: TCP and Congestion Control

Transmission Control Protocol (TCP)

TCP Congestion Control in Wired and Wireless Networks

Exercises TCP/IP Networking With Solutions

TCP Veno: Solution to TCP over Wireless

TCP based Receiver Assistant Congestion Control

Fall 2012: FCM 708 Bridge Foundation I

CSCI Topics: Internet Programming Fall 2008

ENSC 835 project (2002) TCP performance over satellite links. Kenny, Qing Shao Grace, Hui Zhang

Networked Systems and Services, Fall 2018 Chapter 3

Improving the Robustness of TCP to Non-Congestion Events

Transport Layer TCP / UDP

CS 356: Introduction to Computer Networks. Lecture 16: Transmission Control Protocol (TCP) Chap. 5.2, 6.3. Xiaowei Yang

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Fuzzy based Tuning Congestion Window for Improving End-to-End Congestion Control Protocols

Transcription:

Linux 2.4 Implementation of Westwood+ TCP with Rate Halving : A Performance Evaluation over the Internet Angelo Dell'Aera Luigi Alfredo Grieco Saverio Mascolo Dipartimento di Elettrotecnica ed Elettronica Politecnico di Bari Via Orabona 4 70125 Bari, Italy ICC2004 Paris Jun 22, 2004 1

Outline Background of TCP Westwood and TCP Westwood+ End to End Bandwidth Estimation by filtering the ACK stream Linux implementation of TCP Westwood+ Internet measurements 2

TCP Westwood Congestion Control Key idea: use end to end bandwidth estimation to adaptively set cwnd and ssthresh after congestion instead of standard blind multiplicative window decrease 3

Standard TCP (Van Jacobson) cwnd ssthresh Linear increasing Fast recovery Timeout Exponential increasing time Slow Start (SS) Congestion Avoidance (CA) Typical cwnd dynamics following the AIMD paradigm 4

TCP Westwood cwnd ssthresh Congestion Avoidance Adaptive Decrease cwnd = ssthresh = BWE * RTTmin Timeout BWE*RTTmin Slow start time TCP Westwood Adaptive Decrease vs TCP (New) Reno blind by ½ window shrinking 5

Known drawbacks of TCP Reno Low throughput over wireless links because losses due to unreliable links are misinterpreted as congestion Reno throughput is proportional to 1/RTT,, i.e. it is not fair 6

End to End Bandwidth Estimation TCP Westwood+ algorithm is based on end to end estimation of the bandwidth available along the TCP connection path The estimate is obtained by filtering the stream of returning ACK packets and it is used to adaptively set the control windows when network congestion is experienced 7

End to End Bandwidth Estimation packets packets SENDER RECEIVER Bandwidth estimate Filter ACKs Network ACKs 8

TCP Westwood+ Pseudo Code When 3 DUPACKs are received by the sender ssthresh=max(2, (BWE * RTTmin) / MSS); cwnd = ssthresh; When coarse timeout expires ssthresh=max(2, (BWE * RTTmin) / MSS); cwnd = 1; When ACKs are successfully received cwnd increases as stated in RFC2581 the end to end bandwidth estimate BWE is computed 9

TCP Westwood+ TCP Westwood+ follows an Additive Increase Adaptive Decrease paradigm TCP Westwood+ improves the stability of the standard TCP multiplicative decrease algorithm The congestion window is decreased enough in presence of heavy congestion and not too much in presence of light congestion or losses not due to congestion 10

TCP Westwood+ The adaptive setting of the control windows increases the fair allocation of the available bandwidth to different TCP flows Setting cwnd to BWE * RTTmin sustains a transmission rate ((BWE * RTTmin) / RTT) smaller than the bandwidth estimated at the time of congestion thus leaving room in the buffers for coexisting flows This improves statistical multiplexing and fairness 11

Warning ACKs reach the TCP sender compressed Bandwidth samples b j = d j t j t j 1 contain high frequency components that cannot be filtered out by a discrete time filter due to aliasing t j t j 1 = ACK interarrival time 12

ACK compression effects ACK pairs give information about the bandwidth of the last link traversed on the backward path To smooth ACK compression we accumulate ACKs over an RTT and then compute a bandwidth sample 13

An anti aliasing filter in packet networks b j = d j j A n tialiased sam ples j = Last RTT d j = all data acknowledged in the last RTT 14

End to End Bandwidth Estimate TCP Westwood+ Internet BWE Segments sent Low pass filter Anti ACK compression Returning ACKs 15

End to End Bandwidth Estimate The following time invariant low pass filter is used b k = d k RTT k bˆ k = α bˆ + (1 ) k 1 α b k 16

ACK compression effects We have found that ACK compression has very important effects on TCP ACK compression must be considered when doing simulation 17

Topology with ACK compression effects (10 Mbps) 20 TCP Forward traffic: 20 TCP Westwood connections Sink R R 10 TCP Sinks Reverse traffic: 10 TCP long lived NewReno connections 10 TCP Connections 18

The 20 Westwood+ connections estimate a best effort available bandwidth that reasonably approaches the fair share of 0.5 Mbps 1.0E+09 Bandwidth estimate (bps) 1.0E+08 1.0E+07 1.0E+06 1.0E+05 1.0E+04 1.0E+03 1.0E+02 1.0E+01 Fair share 0 20 40 60 80 100 s 19

Westwood overestimates up to 100 times the fair share due to ACK compression 1.0E+09 Bandwidth estimate (bps) 1.0E+08 1.0E+07 1.0E+06 1.0E+05 1.0E+04 1.0E+03 1.0E+02 1.0E+01 0 20 40 60 80 100 s Fair share 20

Summary on bandwidth estimate TCP Westwood : one bandwidth sample computed for each ACK (leads to bandwidth overestimate in presence of ACK compression) TCP Westwood+ : one bandwidth sample computed for each RTT 21

Linux Implementation of TCP Westwood+ Linux 2.4 TCP implementation supports the Rate Halving congestion control algorithm The Rate Halving congestion control algorithm adjusts the window by sending one segment per two acknowledgments for exactly one round trip 22

Linux Implementation of TCP Westwood+ Rate Halving sets the window to exactly one half of the data which was actually held in the network during the congested round trip Rate Halving has been slightly modified by setting the lower bound for cwnd decrease to BWE * RTTmin 23

Linux Implementation of TCP Westwood+ The patch has been developed to be as less intrusive as possible. In fact, it's possible to enable/disable TCP Westwood+ through the sysctl net.ipv4.tcp_westwood The sysctl allows to switch between TCP New Reno and TCP Westwood+ 24

Linux Implementation of TCP Westwood+ TCP Westwood+ support was integrated in the Linux kernel release 2.4.26 pre1 (kernel 2.4) and kernel release 2.6.3 rc1 (kernel 2.6) http://www.kernel.org http://buffer.antifork.org/westwood/westwood.html 25

Internet measurements More than 4000 FTP from Bari, South Italy to: panther.cs.ucla.edu (UCLA) signserv.signal.uu.se (Uppsala) main.penguin.it (Parma) 26

Uploads to panther.cs.ucla.edu (1) File size=3.2mb, From: rigel.poliba.it, To: panther.cs.ucla.edu, Total number of uploads = 197, Average New Reno Goodput = 16.86Kbyte/s, Average Westwood+ Goodput = 25.21Kbyte/s Goodput (KB/s) 60 50 40 30 20 10 Westwood+ New Reno 0 Wed Feb 26 13:35:16 Wed Feb 26 19:38:03 Wed Feb 26 22:53:27 Thu Feb 27Thu Feb 27Thu Feb 27Thu Feb 27 01:41:26 04:10:01 06:11:28 08:23:06 Date 27

Uploads to panther.cs.ucla.edu (2) File size=32mb 80 70 Westwood+ New Reno 60 Goodput (KB/s) 50 40 30 20 10 0 Fri Feb 21 18:15:56 Sat Feb 22 06:04:31 Sat Feb 22 20:26:44 Sun Feb 23 07:24:58 Date Sun Feb 23 19:06:51 Mon Feb 24 03:52:51 28

Uploads to panther.cs.ucla.edu (3) 60 50 File size=32mb Westwood+ New Reno Goodput (KB/s) 40 30 20 10 0 Fri Mar 14 18:59:15 Sat Mar 15 06:09:27 Sat Mar 15 13:29:48 Sat Mar 15 22:20:43 Date Sun Mar 16 09:57:01 Mon Mar 17 02:47:05 29

Uploads to panther.cs.ucla.edu (4) 70 60 Westwood+ New Reno File size=32mb Goodput (KB/s 50 40 30 20 10 0 Wed Mar 19 14:15:25 Wed Mar 19 22:55:38 Thu Mar 20 02:47:10 Thu Mar 20 06:08:36 Thu Mar 20 10:45:34 Date Thu Mar 20 19:52:36 Fri Mar 21 01:07:10 Fri Mar 21 05:29:19 30

Main References L. A. Grieco, S. Mascolo Performance Comparison of Reno, Vegas, and Westwood+TCP Congestion Control ACM CCR Vol. 34 No. 2, April 2004 S. Mascolo, C. Casetti, M. Gerla, S. Lee, M. Sanadidi TCP Westwood: bandwidth estimation for enhanced transport over wireless links ACM Mobicom 2001 and Winet Journal 2002 L. A. Grieco and S. Mascolo, End to End Bandwidth Estimation for Congestion Control in Packet Networks Second International Workshop QoS IP 31

Thanks for the attention Questions? 32