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

Similar documents
Reasons not to Parallelize TCP Connections for Long Fat Networks

Implementation Experiments on HighSpeed and Parallel TCP

TCP on High-Speed Networks

CUBIC. Qian HE (Steve) CS 577 Prof. Bob Kinicki

TCP on High-Speed Networks

CS3600 SYSTEMS AND NETWORKS

Transport Layer (Congestion Control)

CS4700/CS5700 Fundamentals of Computer Networks

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Internet Networking recitation #10 TCP New Reno Vs. Reno

TCP Congestion Control

TCP Congestion Control

ADVANCED TOPICS FOR CONGESTION CONTROL

CS321: Computer Networks Congestion Control in TCP

CS644 Advanced Networks

Hybrid Control and Switched Systems. Lecture #17 Hybrid Systems Modeling of Communication Networks

Congestion Collapse in the 1980s

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness

Why Your Application only Uses 10Mbps Even the Link is 1Gbps?

Lecture 14: Congestion Control"

Congestion control in TCP

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

CS268: Beyond TCP Congestion Control

Congestion Control for High-Bandwidth-Delay-Product Networks: XCP vs. HighSpeed TCP and QuickStart

Bandwidth Allocation & TCP

SharkFest 17 Europe. My TCP ain t your TCP. Simon Lindermann. Stack behavior back then and today. Miele & Cie KG.

Operating Systems and Networks. Network Lecture 10: Congestion Control. Adrian Perrig Network Security Group ETH Zürich

Where we are in the Course. Topic. Nature of Congestion. Nature of Congestion (3) Nature of Congestion (2) Operating Systems and Networks

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

Computer Networking Introduction

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

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

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

TCP congestion control:

CS Networks and Distributed Systems. Lecture 10: Congestion Control

Part1: Lecture 2! TCP congestion control!

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015.

Experimental Study of TCP Congestion Control Algorithms

Reliable Transport II: TCP and Congestion Control

Transmission Control Protocol (TCP)

8. TCP Congestion Control

Reliable Transport II: TCP and Congestion Control

CSE 123A Computer Networks

Implementing TCP SACK Conservative Loss Recovery Algorithm within a NDN Consumer

Improving the Robustness of TCP to Non-Congestion Events

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

Communication Networks

cs/ee 143 Communication Networks

image 3.8 KB Figure 1.6: Example Web Page

Enabling Large Data Transfers on Dynamic, Very High-Speed Network Infrastructures

Computer Network Fundamentals Spring Week 10 Congestion Control Andreas Terzis

Chapter II. Protocols for High Speed Networks. 2.1 Need for alternative Protocols

Performance evaluation of TCP over optical channels and heterogeneous networks

Chapter III: Transport Layer

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

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

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Computer Networking

Flow and Congestion Control Marcos Vieira

Equation-Based Congestion Control for Unicast Applications. Outline. Introduction. But don t we need TCP? TFRC Goals

WB-RTO: A Window-Based Retransmission Timeout. Ioannis Psaras, Vassilis Tsaoussidis Demokritos University of Thrace, Xanthi, Greece

Chapter III. congestion situation in Highspeed Networks

Problems and Solutions for the TCP Slow-Start Process

A Hybrid Systems Modeling Framework for Fast and Accurate Simulation of Data Communication Networks. Motivation

Chapter 3 Transport Layer

Advanced Congestion Control (Hosts)

Lecture 14: Congestion Control"

Lecture 4: Congestion Control

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

One More Bit Is Enough

TCP over Wireless PROF. MICHAEL TSAI 2016/6/3

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

TCP Congestion Control in Wired and Wireless networks

CSE 461. TCP and network congestion

Performance Analysis of TCP Variants

Chapter 3 Transport Layer

A report on a few steps in the evolution of congestion control. Sally Floyd June 10, 2002 IPAM Program in Large Scale Communication Networks

Appendix B. Standards-Track TCP Evaluation

Studying Fairness of TCP Variants and UDP Traffic

Homework 3 50 points. 1. Computing TCP's RTT and timeout values (10 points)

The Present and Future of Congestion Control. Mark Handley

Understanding TCP Parallelization. Qiang Fu. TCP Performance Issues TCP Enhancements TCP Parallelization (research areas of interest)

CS 268: Lecture 7 (Beyond TCP Congestion Control)

Exercises TCP/IP Networking With Solutions

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

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

Impact of Short-lived TCP Flows on TCP Link Utilization over 10Gbps High-speed Networks

Master s Thesis. TCP Congestion Control Mechanisms for Achieving Predictable Throughput

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service

Review Questions for Midterm Exam-2 Fall 2016

Advanced Computer Networks

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018

Evaluation of Advanced TCP Stacks on Fast Long-Distance Production Networks p. 1

Homework 3 1 DNS. A root. A com. A google.com

On Network Dimensioning Approach for the Internet

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

Principles of congestion control

Congestion control mechanism of TCP for achieving predictable throughput

Transcription:

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks Zongsheng Zhang Go Hasegawa Masayuki Murata Osaka University

Contents Introduction Analysis of parallel TCP mechanism Numerical results Conclusion 2

Introduction Status of today s network Networks have been a part in daily life TCP/IP is the keystone of networks TCP Reno is the most widely used transport-layer protocol However, Continuous and explosive growth of the Internet Especially fast long-distance networks (LFNs). Appearance of data intensive applications, e.g., Data Grid, Storage Area Network. Hosts have gigabit-level network interface. Perform backups, synchronize databases. Inability of TCP Reno Network 3

Congestion control in today s Internet Transmission Control Protocol (TCP) Instrumental in preventing congestion collapse Limit transmission rate at the source Window-based rate control -- Congestion window (CWND) Four algorithms: CWND Slow-start (packets) Congestion-avoidance Fast-retransmit Fast-recovery Additive Increase Multiplicative Decrease (AIMD) algorithm W ssthresh W/2 2 4 8 Slow Start 16 171819 20 10 Congestion Avoidance 11 12131415 20 16 171819 W/2 RTTs Time (RTT) 4

An example [ ] For fully utilizing a link of 10 Gbps with Round Trip Time (RTT): 100 ms Packet size: 1,500 bytes Requirement: CWND = 83,333 packets If the AIMD algorithm is used, 4,000 seconds are needed to recover throughput, once packet loss occurs. CWND (packets) W=83,333 W/2 W/2 RTTs = 4,000 sec [ ] S. Floyd, HighSpeed TCP for large congestion windows, RFC 3649, December 2003. Time (RTT) 5

What s wrong with TCP? TCP was designed when T1 (1.544 Mbps) was a fast network. Additive Increase Multiplicative Decrease (AIMD) algorithm of TCP Reno in congestion avoidance phase: No packet loss (AI): increase congestion window by one packet/rtt too slowly Packet loss (MD): decrease congestion window by half too dramatically It doesn t perform well in LFNs because of congestion window (CWND) algorithms. 6

Solutions Patches, e.g., SACK option, NewReno, ECN. The problem of AIMD is not solved. Traditional method: parallel TCP mechanism Parallel TCP is adopted in present applications, e.g. GridFTP. An important reason is that parallel TCP is easy to be implemented in application layer. High-speed protocols: New algorithms for updating CWND, e.g., HighSpeed TCP (HSTCP), Scalable TCP, FAST TCP, and XCP. An important yet neglected topic: Parallel TCP v.s. High-speed protocols, which should be employed in your future application. 7

Is parallel TCP really effective? Characteristics of parallel TCP Parallel TCP uses many concurrent TCP connections for one task Mechanism of parallel TCP can be viewed from different points, e.g., It uses a larger AI parameter than normal TCP, or Each TCP connection uses a stripped network link However, Is it easy to determine the number of TCP connections? Is parallel TCP really effective? 8

Performance analysis Model: Dumbbell topology DropTail mechanism Performance metrics: packet drop rate (p) goodput S1 Sn R1 C bps, t ms R2 D1 Dn Two extreme cases are considered for analysis. Synchronization case: TCP connections are synchronized lower limit of throughput Non-synchronization case: TCP connections are not synchronized at all. upper limit of throughput. 9

Synchronization case Congestion window cwnd (packets) B+D 1-cycle B: buffer size, D: bandwidth-delay product D (B+D)/2 Packet drop rate t 1 t 2 Time (RTT) Throughput 10

Non-synchronization case Each TCP connection (square root p formula): RTT -- average round trip time, T 0 -- the timeout time, b -- number of packets that are acknowledged by a received ACK, p -- packet loss rate. Total behavior (aggregate CWND is a normal distribution): W -- aggregate of congestion window size. μ -- mean of the aggregate congestion window size, σ -- standard deviation. 11

Example Parameters: Bandwidth = 1 Gbps, RTT = 100 ms, Buffer size = (0.1--0.5)BDP, Packet size = 1500 Bytes, T0 = 5*RTT, Wmax = 64 KBytes. S1 1 Gbps, 50 ms D1 Sn R1 R2 Dn 12

Results goodput & packet drop rate synchronization non-synchronization synchronization non-synchronization Packet drop rate 0.025 0.02 0.015 0.01 0.005 1000 800 600 Number of parallel TCP connections 400 200 0 4000 3000 2000 1000 Buffer size (Packets) Goodput (Mbps) 1000 800 600 400 200 1000 Bandwidth = 1Gbps 800 600 Number of parallel TCP connections 400 200 0 1000 4000 3000 2000 Buffer size (Packets) When the number of TCP connections is larger than a certain value, as the number of parallel TCP connection is increased: Parameters: Packet drop rate becomes large. Goodput Bandwidth is decreased. = 1 Gbps, Packet size = 1500 Bytes, Goodput RTT in non-synchronization = 100 ms, case is better than T0 = that 5*RTT, in synchronization case. However, Buffer synchronization size = (0.1--0.5)BDP, is common when DropTail Wmax is deployed. = 64 KBytes. In synchronization case, if buffer size of router is small, the performance deteriorates significantly as the number of TCP connections is increased. But, it is difficult to build a router with a large buffer size. 13

Results contour of goodput Relative size of buffer 100 80 60 40 20 0 100M 1G 10G 1 10 100 1000 10000 Relative size of buffer 100 80 60 40 20 0 100ms 200ms 500ms 100 1000 Number of parallel TCP connections Number of parallel TCP connections Parallel TCP possesses the property that can lead to synchronization. Pass through the same path, have the same RTT Goodput 95% bottleneck link bandwidth Parameters of the left figure: BW = 100 M/1 G/10 Gbps, RTT = 100 ms. Parameters of the right figure: BW = 1 Gbps, RTT = 100/200/500 ms. Difficulty: Select the number of TCP connections for the expected throughput. Especially in the case of small buffer size of router. The buffer size cannot be large enough as the link bandwidth becomes more large. 14

Supplemental discussion Dynamic network resources allocation of parallel TCP (GridFTP v2) [ ] Determination of the granularity of changing the number of TCP connections is required. It is difficult to manage opening/closing of TCP connections and control data channels dynamically. This mechanism determines the number of TCP connections based on measurement of network conditions. Because the number of TCP connections is changed dynamically, setting up the chunk size is not easy. For dynamic networks, high-speed protocols can offer more flexibility because of its inherent characteristics. [ ] I. Mandrichenko, W. Allcock, and T. Perelmutov, GridFTP v2 protocol description, Available as: http://www.ggf.org/documents/gfd.47.pdf, May 2005. 15

Conclusion Parallel TCP mechanism, one approach for LFNs, is investigated by mathematical analysis. The throughput of two extreme cases, synchronization case and non-synchronization case, are considered as lower and upper limits. The analysis results reveal the difficult using parallel TCP in practice for the sake of approving throughput, especially in case of small router buffer size and coming high-speed networks. In contrast, high-speed protocols are better choices for your future applications. 16

Thanks 17