Theoretical Analysis of High-speed Multiple TCP Connections through Multiple Routers

Similar documents
Analytical Model for Congestion Control and Throughput with TCP CUBIC connections

arxiv: v1 [cs.ni] 22 Feb 2016

Analysis of High Speed TCP Variants and TCP over Cognitive Radio

A Bottleneck and Target Bandwidth Estimates-Based Congestion Control Algorithm for High BDP Networks

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

Performance Analysis of Loss-Based High-Speed TCP Congestion Control Algorithms

COMPARISON OF HIGH SPEED CONGESTION CONTROL PROTOCOLS

Buffer Requirements for Zero Loss Flow Control with Explicit Congestion Notification. Chunlei Liu Raj Jain

Comparing TCP Congestion Control Algorithms Based on Passively Collected Packet Traces

Effects of Applying High-Speed Congestion Control Algorithms in Satellite Network

TM ALGORITHM TO IMPROVE PERFORMANCE OF OPTICAL BURST SWITCHING (OBS) NETWORKS

TCP/IP THROUGHPUT ENHANCEMENT FOR GLOBAL IP NETWORKS WITH TRANS-OCEANIC SUBMARINE LINK

Inferring TCP Congestion Control Algorithms by Correlating Congestion Window Sizes and their Differences

Transmission Control Protocol (TCP)

AN IMPROVED STEP IN MULTICAST CONGESTION CONTROL OF COMPUTER NETWORKS

EXPERIMENTAL EVALUATION OF TCP CONGESTION CONTORL MECHANISMS IN SHORT AND LONG DISTANCE NETWORKS

Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail Drop/RED Routers

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

Fair TCP: A Novel TCP Congestion Control Algorithm to Tackle TCP s Challenges

Design and Performance Evaluation of High Efficient TCP for HBDP Networks

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

Stability Analysis of a Window-based Flow Control Mechanism for TCP Connections with Different Propagation Delays

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

ECE 610: Homework 4 Problems are taken from Kurose and Ross.

RED behavior with different packet sizes

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

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

Performance of high-speed TCP Protocols over NS-2 TCP Linux

Performance of Competing High-Speed TCP Flows

Improved Model for a Non-Standard TCP Behavior

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

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

Title Problems of TCP in High Bandwidth-Delay Networks Syed Nusrat JJT University, Rajasthan, India Abstract:

Analysis of Reno: A TCP Variant

THE NETWORK PERFORMANCE OVER TCP PROTOCOL USING NS2

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

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Performance of Competing High-Speed TCP Flows

STUDIES ON THE PERFORMANCE IMPROVEMENT OF WINDOW ADJUSTMENT PROCEDURE IN HIGH BANDWIDTH DELAY PRODUCT NETWORK

Experimental Analysis of TCP Behaviors against Bursty Packet Losses Caused by Transmission Interruption

COMP/ELEC 429/556 Introduction to Computer Networks

ADVANCED TOPICS FOR CONGESTION CONTROL

IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 03, 2014 ISSN (online):

Improving TCP Performance over Wireless Networks using Loss Predictors

A Framework For Managing Emergent Transmissions In IP Networks

A Generalization of a TCP Model: Multiple Source-Destination Case. with Arbitrary LAN as the Access Network

Computer Networking

Steady State Analysis of the RED Gateway: Stability, Transient Behavior, and Parameter Setting

On the Transition to a Low Latency TCP/IP Internet

A Comparison of TCP Behaviour at High Speeds Using ns-2 and Linux

Telecommunication & Network Research Lab

Congestion Avoidance

RD-TCP: Reorder Detecting TCP

Enhancing TCP Throughput over Lossy Links Using ECN-capable RED Gateways

Chapter III. congestion situation in Highspeed Networks

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013

100 Mbps. 100 Mbps S1 G1 G2. 5 ms 40 ms. 5 ms

Synopsis on. Thesis submitted to Dravidian University for the award of the degree of

Performance Analysis of TCP Variants

MaVIS: Media-aware Video Streaming Mechanism

CS 356: Computer Network Architectures Lecture 19: Congestion Avoidance Chap. 6.4 and related papers. Xiaowei Yang

Congestion control in TCP

Delayed ACK Approach for TCP Performance Improvement for Ad Hoc Networks Using Chain Topology

Congestion Control for High Bandwidth-delay Product Networks

Performance Modeling of SCTP Multihoming

CS4700/CS5700 Fundamentals of Computer Networks

Performance Enhancement Of TCP For Wireless Network

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

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

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

Linux beats Windows! or the Worrying Evolution of TCP in Common Operating Systems 1

Compound TCP+: A Solution for Compound TCP Unfairness in Wireless LAN

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

! Network bandwidth shared by all users! Given routing, how to allocate bandwidth. " efficiency " fairness " stability. !

ISSN: International Journal of Advanced Research in Computer Engineering & Technology (IJARCET) Volume 2, Issue 4, April 2013

On TCP-friendly Video Transfer

Performance of Multihop Communications Using Logical Topologies on Optical Torus Networks

15-744: Computer Networking TCP

TCP Throughput Analysis with Variable Packet Loss Probability for Improving Fairness among Long/Short-lived TCP Connections

A Relative Bandwidth Allocation Method Enabling Fast Convergence in XCP

CS 556 Advanced Computer Networks Spring Solutions to Midterm Test March 10, YOUR NAME: Abraham MATTA

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

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

Congestion control mechanism of TCP for achieving predictable throughput

Markov Model Based Congestion Control for TCP

Congestion Control based analysis of High Delay Tolerant network Transport Protocol

An Enhanced Slow-Start Mechanism for TCP Vegas

Traffic Management using Multilevel Explicit Congestion Notification

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

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

Rethinking the Timescales at Which Congestion-control Operates

Experimental Analysis and Demonstration of the NS2 Implementation of Dynamic Buffer Sizing Strategies for Based Wireless Networks

PERFORMANCE ANALYSIS OF HIGH-SPEED TRANSPORT CONTROL PROTOCOLS

A CONTROL THEORETICAL APPROACH TO A WINDOW-BASED FLOW CONTROL MECHANISM WITH EXPLICIT CONGESTION NOTIFICATION

Investigation of Multi-path Transmission Protocols for Congestion Control

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

Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 802.3x Flow Control

CUBIC: A New TCP-Friendly High-Speed TCP Variant

Transcription:

Theoretical Analysis of High-speed Multiple TCP Connections through Multiple Routers Sudheer Poojary and Vinod Sharma Department of ECE, Indian Institute of Science, Bangalore, India Email: {sudheer,vinod}@ece.iisc.ernet.in Abstract We study a system of multiple routers traversed by multiple TCP connections using TCP New Reno, CUBIC and Compound. More than one router may be congested. To analyze this system we will use earlier theoretical models of TCP New Reno and CUBIC but develop a new model of TCP Compound experiencing random packet losses and queuing delays. We model the router queues as M/GI/1 queues with arrival rates controlled by TCP window flow control. We also look at an alternate approach assuming proportional fairness of TCP to find the throughputs of the multiple TCP connections. These approximations are validated through comparison with ns-2 simulations. Index Terms TCP Compound, TCP CUBIC, Window flow control, High speed Internet. I. INTRODUCTION TCP is a dominant transport layer protocol in the Internet. The goals of reliable data transfer and preventing congestion collapse on the Internet have been met successfully by TCP for more than two decades. However traditional TCP viz., TCP Reno and TCP New Reno have been found to be inadequate in wireless medium and high-speed, large delay networks. The wireless medium is prone to random packet drops and as TCP treats losses as an indication of congestion, it reduces the sending rate leading to inefficient use of network capacity. Furthermore, TCP Reno and TCP New Reno use AIMD algorithm [1], [2] for congestion control. In high-speed, large delay networks, AIMD is inefficient as it under-utilizes the links for prolonged periods of time [3], [4]. In the past few years a number of alternatives to AIMD have been proposed which address the above issues. H-TCP [5], Fast TCP [6], BIC [7], CUBIC [8], Compound [9] are a few examples of recent high-speed TCP algorithms. AIMD TCP has been extensively studied and analyzed ( [10] [14]). See [15] for an extensive survey. High-speed TCP algorithms mentioned above use a sliding window congestion control mechanism. These algorithms increase the window size gradually till congestion is detected. Then the window size is reduced. Packet losses and increase in queuing delay are used as indicators of congestion. The algorithms can be classified as either delay-based or loss-based depending on the technique used for congestion detection. H-TCP, BIC and CUBIC are examples of loss-based algorithms. BIC [7] uses a binary search mechanism to search for the optimum sending rate. In H-TCP [5] and CUBIC [8] as time elapsed since last congestion increases, the sending rate increases. In [16], the authors investigate the inter-protocol fairness and performance of different high speed TCP algorithms. Delay-based congestion control algorithms infer flow congestion from increase in queuing delay experienced by the flow. These algorithms have better RTT fairness, lower buffer occupancy and higher efficiency when compared to loss-based algorithms [6], [17]. However in a mixed environment where the different variants of TCP coexist, one sees an inequitable allocation of resources with flows using loss-based algorithms receiving higher throughput than the flows using delay-based flows. This is because of the less aggressive behaviour of delay-based algorithms. TCP Compound ([9]) combines the loss-based approach with the delay-based approach due to which its flows are able to get their fair share of throughput in a mixed environment. In [18] and [19], the authors study performance of a single TCP Compound with random losses. Queuing delays have not been modelled. In this paper we will consider a multi-hop network with connections using different variants of TCP, the common scenario in the current Internet. In particular we will focus on TCP New Reno, CUBIC and Compound. This is because TCP Compound is an option in Windows systems, TCP CUBIC is the default protocol in Linux based systems and TCP New Reno is the most common legacy protocol. In [20], it is shown that among the top 5000 web servers, a majority use TCP CUBIC and that TCP Compound and TCP New Reno are also commonly used. To study the above scenario analytically, we need theoretical models of TCP New Reno, CUBIC and Compound which work with multiple TCP connections, (random) packet losses and variable round trip time (RTT) to accommodate random queuing delays at various routers on the way. TCP New Reno has been well studied. TCP CUBIC with random losses has been studied in [21]. We studied TCP CUBIC with random packet losses and queuing delays in [22]. In this paper we first form a model of TCP Compound (with multiple connections, random packet losses and queuing delays) and then use it with the previous models of TCP New Reno and TCP CUBIC to study the overall system. To the best of our knowledge, such an investigation in mixed TCP environment has not been carried out before. Also such an analysis is important and relevant as the congestion control over the Internet is heterogeneous [20]. The paper is organized as follows. In Section II, we present the system model. In section III, we briefly describe TCP

S 1 Flow 1 2 1 Link 1 Link 2 C 1 S 2 D 2 Flow 2 3 C 2 C L S 3 S R D R Fig. 1: The general network, (R,L) R Compound protocol. In Section IV, we consider a model for TCP Compound when there is non-negligible queuing delay. In Section V, we consider an approximation of the TCP flow throughput by assuming proportionally fair allocation. In Section VI, we use the above approximations along with results for TCP CUBIC and New Reno to obtain throughput and mean window sizes when multiple TCP Compound, CUBIC and New Reno connections share a link. This models a realistic network scenario. In Section VII, we consider the case when there are multiple bottleneck queues. Section VIII concludes the paper. II. SYSTEM MODEL The system model studied in this paper is shown in Figure 1. We consider a network with multiple TCP connections (denoted by R) going through a set of links (denoted by L). The link speed of link l L is C l bps. TCP connection r connects TCP source S r to TCP sink D r. We consider longlived connections, i.e., the connections always have data to send. Packets of connection r have independent identically distributed (i.i.d.) length with a generic length denoted by s r. These packets are lost independently with probability p r > 0. Such random losses are likely if the connections use wireless links. This is one likely scenario and a commonly made assumption ([18], [23]). We denote by r the constant component of the RTT of connection r, which includes the processing delays, transmission delays and link propagation delays. If flow r R goes through link l L, we denote this by l r. Thus each TCP flow can be associated with a set of links through which it passes. The network in this case is denoted by (R,L). Different TCP flows may use TCP New Reno, CUBIC or Compound. We theoretically analyze this system. For TCP New Reno and CUBIC we use previous models. But we develop a model for a single TCP Compound connection in sections III and IV taking into account random losses and queuing delays. III. TCP COMPOUND The TCP Compound window has two components, an aggressive delay-based component which makes it efficient in high speed networks and a loss-based component which guarantees the flow a fair share of link capacities in a mixed environment. We denote the TCP Compound window size at the end of the n th round trip time (RTT) by W n. We D 1 denote the loss-based component of W n by L n and the delaybased component by D n. The window size W n is equal to D n +L n. Since the slow start phase contributes insignificantly to the system performance under steady state for reasonable packet loss probabilities, we ignore this phase. This is common practice in TCP performance analysis ([10], [18]). The window size evolution, in congestion avoidance phase, of a TCP Compound flow is given as [9], D n +(α(w n ) k 1) +, if no loss and Q n+1 < γ; D n+1 = (D n ζq n+1 ) +, (1) if no loss and Q n+1 γ; D n 2, if loss is detected; { L n +1, if no loss; L n+1 = L n (2) 2, if a loss is detected. The terms k and ζ are constants and γ denotes the queuing threshold. The behaviour of L n is same as of an AIMD TCP. Hence a TCP Compound flow has rates at least as much as that of an AIMD TCP. The variable Q n is the estimate of queue size at the end of n th RTT and is given by ( Wn 1 Q n = W ) n 1 RTT min, (3) RTT min RTT n where RTT n is the measured RTT at the end of n th round and RTT min is the lowest RTT observed till n th round. In [24] the authors modify the TCP Compound algorithm incorporating a variable queuing threshold in place of a fixed γ. We do not consider this modification. IV. TCP COMPOUND WINDOW DYNAMICS AND THROUGHPUT WITH VARIABLE RTT When queuing is negligible, the TCP window dynamics is approximately given by equations (1) and (2) withq n+1 = 0. In this case, we see that (D n,l n ) form a finite state Markov chain which is aperiodic and irreducible and hence has a unique stationary distribution. We then obtain the average window size and throughput using the stationary distribution of (D n,l n ). In this section, we develop a model for a single TCP Compound flow when the queuing delays are non-negligible and obtain its steady state throughput and average window size. We denote the time period to send a window of packets and to receive all the corresponding ACKs from the receiver as a round. The time period of a round is approximately the RTT when the queuing delays are negligible but is greater than the RTT when the queuing delays are non-negligible. The reason to look at the window growth as a function of rounds rather than RTT is due to the fact that the window evolution is based on receipt of ACKs i.e., the window grows from W n in the n th round to W n+1 in the n+1 st round only after ACKs for all the W n packets sent in round n are received by the sender. We denote the duration of the n th round by R n and the n th

round trip time by RTT n. The quantities R n and RTT n can be approximated by R n = + W n 1 C + Q n 1 C, (4) RTT n = + Q n 1 C + 1 C, (5) where C is the bottleneck link capacity (in packets/sec) and denotes the propagation delay. We see from equations (1) and (2) thatw n+1 is a function ofl n,d n andq n. The queue size, Q n, at the end of the n th round can not be computed exactly. Hence we approximate Q n by max(0,w n 1 C ). The window size componentd n takes values in {0,1,,W max } and L n in {1,2,,W max } and L n + D n W max. Since W n is finite and C is a constant, Q n can only take a finite number of values in [0,W max C ]. Since we also have an i.i.d. Bernoulli random loss model with packet drop probability p > 0, we obtain a Markov chain, (L n,d n,q n ), with a finite number of states. As p > 0, state (1,0,0) can be reached from any state and hence the Markov chain {(L n,d n,q n )} is irreducible. We denote the unique steady state distribution of the Markov chain by π(l,d,q). The steady state mean window size E[Ŵ] at the end of a round is E[Ŵ] = (l +d)π(l,d,q). (6) l,d,q:1 l+d W max Let the steady state mean RTT at the end of a round be E[ RTT]. ˆ Let E[W] and E[RT T ] be the time average mean window size and mean RTT respectively. Using Palm calculus [25], E[Ŵ ˆR] E[W] =, E[RT T ] = E[Ŵ RTT] ˆ E[ˆR] E[Ŵ]. (7) The steady state throughput for the connection is then given by λ = (1 p)e[w]/e[rt T ] packets/sec. The average window size, E[W] is dependent on the average queue size, E[Q] and p. This is unlike TCP Reno where E[W] is only dependent on p and TCP CUBIC where E[W] is a function of E[RT T ] and p even when there is no queuing delay [22]. We denote the relation between E[W] and E[Q] and p for TCP Compound obtained above by E[W] = f p (E[Q]). (8) This expression is not available in closed form. As against this, there is a closed form expression for E[W] in [9], but that is valid for only constant RTT. For variable RTT, considered in this and later sections, equation (8) provides a better approximation. We compare the above results for average window size and mean throughput with those obtained by ns-2 simulations in Figure 2. Link speed of 1 Mbps is taken to have significant queuing delay. The propagation delay is set to 100 msec. The packet size is 1050 bytes. Theoretical results match well with simulations. EW Throughput 80 60 40 20 EW (model) EW (ns simulations) 0 0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01 120 100 80 Throughput (model) Throughput (ns simulations) 60 0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01 PER Fig. 2: Average window size (EW) and throughput (packets/sec) for single TCP Compound connection vs packet error rate, C = 1 Mbps and = 100ms. We use these results, in particular function f p in (8) in Sections VI and VII to obtain results for multiple TCP connections. V. OPTIMIZATION APPROACH TO TCP PERFORMANCE ANALYSIS In this section we present an optimization approach to model multiple TCP connections through multiple routers, initially developed in [26]. In [26], it was proposed for constant window size protocols. We extend it to our setup where different TCP protocols with variable window size may be employed. In Sections VI and VII we will use it to analyze our overall system. We will also consider an M/GI/1 queue based approximation which was developed in [22] and [27]. Consider the network (R,L) as described in Section II. For flow r R, let λ r be the average output rate, E[W r ] be the average window size, r be the constant delay (propagation, processing and transmission delays), p r be the probability of loss, E[A r ] be the sending rate and E[RTT r ] be the average RTT. For TCP flow r we have, E[A r ] = E[W r] E[RTT r ]. (9) The average output rate of flow r is given by λ r E[A r ](1 p r ). Let E[Q l ] denote the average queue size at link l. The waiting time for flow r through link l is given by. The average RTT for flow r is E[Q l ] r R:l r λ r ( E[RTT r ] = r + l r Therefore, ( (1 p r )E[W r ] = λ r ( r + E[Q l ] r R:l r λ r E[Q l ] l r λ r r R:l r ). (10) )). (11) Next we assume that r R:l r λ r < C l implies that E[Q l ] = 0. This assumption although inaccurate is motivated

by the fluid flow model in [26]. Then we have ( E[Q l ] ) (1 p r )E[W r ] = λ r r + λ r. (12) C l s.t. l r Now consider the following optimization problem, ) (B r log(λ r ) λ r T r max r R λ r 0, r R and r:l rλ r C l, l L, (13) where B r are weights associated with flow r. The above optimization problem has concave objective function and affine constraints. Therefore we have a unique solution. Let λ be the optimal solution and let {µ l } l L be the Lagrangian multipliers for the inequality constraints. Then by the KKT conditions for optimality, we have and either µ l = 0 or B r = λ r r +( l r r R:l r λ r = C l. µ l )λ r (14) We see that if we replace B r and µ l in equation (14) by (1 p r )E[W r ] and E[Q l] C l in equation (12), respectively then the equations are identical. This suggests that we can obtain (12) as a solution to the optimization problem (13) after making the above mentioned variable changes. It can be shown that the optimal allocation provides proportional fairness [26], with weights proportional to E[W r ]. We use this approach to estimate the throughput and average window size of multiple TCP connections for the system in Figure 1. VI. MULTIPLE TCP CONNECTIONS In this section we consider the case where multiple TCP connections share a single bottleneck link. The connections may be using TCP Compound, TCP CUBIC or New Reno. We have developed an analytical model for TCP CUBIC behaviour in [22] which is used here for evaluating the TCP CUBIC throughput and window size. As in [22], we use the single connection model as a building block. In [22], we have modeled the router queue as an M/GI/1 queue with arrival rates obtained from the window dynamics. We have found it to be a good approximation. This motivates us to use the same approximations for TCP Compound connections. Alternately, we will also use the optimization framework of Section V. First we consider the case where the link is shared by multiple TCP Compound flows. There are N TCP flows sharing a bottleneck link of capacity C bps. Suppose E[s i ] and E[s 2 i ] are the mean and second moments of packet lengths of connection i. If λ i is the throughput of TCP connection i, then E[s] = i λ i λ E[s i], E[s 2 ] = i λ i λ E[s2 i ], (15) where E[s] and E[s 2 ] are the overall mean packet length and its second moment and λ packets/sec is the overall throughput. TABLE I: Average window sizes and throughputs for three C-TCP connections with bottleneck link capacity = 10 Mbps Flow i p i i E[W i] E[W i] E[W i] λ i λ i λ i (ns-2) (M/GI/1) (PF) (ns-2) (M/GI/1) (PF) 1 0.005 0.1 19.0 19.5 19.5 186.8 191.6 192.2 2 0.005 0.1 19.0 19.5 19.5 186.4 191.6 192.2 3 0.005 0.1 19.2 19.5 19.5 189.0 191.6 192.2 1 0.005 0.1 19.2 19.5 19.5 186.9 191.1 192.2 2 0.005 0.5 19.2 19.5 19.5 38.0 38.7 38.8 3 0.005 0.04 19.1 19.5 19.5 451.5 467.5 474.5 1 0.005 0.1 19.1 19.5 19.5 187.5 191.4 192.2 2 0.010 0.1 13.0 12.9 13.0 126.8 126.1 126.5 3 0.003 0.1 25.8 27.6 27.6 253.6 271.2 272.5 1 0.005 0.1 19.0 19.5 19.5 183.0 190.1 192.2 2 0.010 0.5 13.4 12.9 13.0 26.1 25.4 25.5 3 0.003 0.04 25.9 27.6 27.6 593.6 653.9 672.6 Assuming the bottleneck queue to be an M/GI/1, the mean queue size is given by E[Q] = λ2 E[s 2 ] 2C 2 (1 ρ). (16) Then, the mean RTT of connection i is given by E[RT T i ] = λe[s2 ] 2C 2 (1 ρ) + E[s] C + i, (17) where ρ = λe[s]/c. From (8), the average window size for flow i is For connection i, using Little s law, E[W i ] = f pi (E[Q]). (18) λ i = E[W i] E[RT T i ]. (19) We can now solve equations (17), (18) and (19) to compute E[RT T i ], E[W i ] and λ i for i = 1,2, n. For the optimization based approach discussed in Section V, we solve the optimization problem (13) replacing B r by (1 p r )E[W r ] along with (18) and (19). In the variable RTT model developed for Compound TCP in Section IV, we approximate the queue size Q n by max(0,w n 1 C ). This approximation overestimates the queue size when the TCP throughput is far lesser than the link capacity C. In such a case it seems better to ignore queuing and use the TCP Compound model with constant RTT (discussed in the beginning of Section IV). Table I compares E[W i ] and λ i obtained for three TCP Compound connections (denoted as C-TCP) via the M/GI/1 approximation (denoted by M/GI/1) and via the weighted proportional fair allocation approximation discussed in Section V (denoted by PF) with the results via ns-2 simulations. The link capacity is 10 Mbps. We observe that most of the errors are within 10%. For both cases if E[Q] 5 we use the constant RTT model of Compound. We will be using the same approximation henceforth. We now consider the case where the bottleneck link is shared by TCP Compound, CUBIC and New Reno connections. This is the likely scenario in the practical network. For a connection using TCP CUBIC (say connection j), the average window size is a function of p j and E[RT T j ], (as against TCP Compound (18)). We denote this relation by

TABLE II: Average Window Size for Compound, CUBIC and New Reno connections with packet error rate, p i = 0.005 E[W 1],E[W 2],E[W 3] E[W 1],E[W 2],E[W 3] E[W 1],E[W 2],E[W 3] 0.05 19.3 18.0 18.7 19.5 17.0 18.5 19.5 16.9 18.5 0.1 19.1 19.3 18.2 19.5 17.7 18.5 19.5 17.6 18.5 0.2 19.1 24.5 18.5 19.5 24.0 18.5 19.5 24.0 18.5 0.4 18.9 40.7 18.4 19.5 39.3 18.5 19.5 39.3 18.5 0.5 18.8 47.7 18.4 19.5 46.3 18.5 19.5 46.3 18.5 1 19.1 78.0 17.7 19.5 74.6 18.5 19.5 74.6 18.5 C = 10Mbps E[W 1],E[W 2],E[W 3] E[W 1],E[W 2],E[W 3] E[W 1],E[W 2],E[W 3] 0.05 19.1 18.0 18.3 19.5 16.9 18.5 19.5 16.9 18.5 0.1 19.2 19.0 18.5 19.5 17.6 18.5 19.5 17.6 18.5 0.2 19.0 24.5 18.4 19.5 23.9 18.5 19.5 23.9 18.5 0.4 18.7 40.2 18.5 19.5 39.3 18.5 19.5 39.3 18.5 0.5 18.8 46.5 18.5 19.5 46.2 18.5 19.5 46.2 18.5 1 18.6 76.7 18.3 19.5 74.5 18.5 19.5 74.5 18.5 C = 1Gbps TABLE III: Throughput for Compound, CUBIC and New Reno connections with packet error rate, p i = 0.005 λ 1,λ 2,λ 3 λ 1,λ 2,λ 3 λ 1,λ 2,λ 3 0.05 353.4 332.4 343.2 362.4 315.6 344.7 381.2 331.1 362.5 0.1 187.4 189.3 178.8 191.6 173.8 182.2 192.2 174.1 182.8 0.2 94.3 120.9 91.3 96.5 118.9 91.7 96.5 118.9 91.8 0.4 46.8 100.7 45.5 48.4 97.6 46.0 48.4 97.6 46.0 0.5 37.3 94.5 36.5 38.7 91.9 36.8 38.7 91.9 36.8 1 19.0 77.5 17.5 19.4 74.1 18.4 19.4 74.1 18.4 C = 10Mbps λ 1,λ 2,λ 3 λ 1,λ 2,λ 3 λ 1,λ 2,λ 3 0.05 379.2 356.8 363.7 387.9 336.8 368.9 387.5 336.4 368.5 0.1 190.7 188.3 183.4 193.9 175.1 184.4 193.8 175.0 184.3 0.2 94.6 121.6 91.6 96.9 119.1 92.2 96.9 119.1 92.2 0.4 46.3 99.9 45.9 48.5 97.7 46.1 48.5 97.7 46.1 0.5 37.4 92.5 36.8 38.8 92.0 36.9 38.8 91.9 36.9 1 18.6 76.4 18.2 19.4 74.2 18.4 19.4 74.2 18.4 C = 1Gbps E[W j ] = g pj (E[RT T j ]), (20) which is provided in [22]. Thus E[RT T j ], λ j and E[W j ] can be computed using equations (17), (19) and (20). For a connection using TCP New Reno (say connection k), the average window size is a function of p k and is independent of RTT. We use [10] for computing the average window size of TCP New Reno connections, E[W k ] = 1.31/E[RTT k ]. (21) Tables II and III show E[W i ] and λ i for three TCP connections using Compound (denoted as C-TCP), CUBIC and New Reno respectively. We compare these results with ns-2 simulations. For all the simulations p i and i are kept same for all i. Theory and simulations are within 10%. We observe from Tables II and III that when 0.2 sec, TCP CUBIC provides higher throughput than TCP Compound and TCP New Reno. We have observed that the average window size of TCP Compound is a function of p and the average queue size but is not dependent on whereas the TCP CUBIC average window size grows with RTT. This explains the difference in throughput. VII. THROUGHPUT AND AVERAGE WINDOW SIZES FOR MULTIPLE QUEUES In this section we consider the case when TCP flows go through multiple bottleneck links. They may be using TCP Compound, CUBIC or New Reno. We will use the M/GI/1 based approximation as well as the optimization based approach. As in section V, we denote the set of flows by R and set of links by L. The average RTT for flow r R is given by equation (10). We use (16) to compute the average queue size, E[Q l ], at link l. We replace ρ by ρ l = ( r:l r λ r)e[s l ]/C l, where E[s l ] = E[s r :l r r ]λ r r :l r λ and C l is the capacity of r link l (in bps). For a TCP Compound connectioni, we now solve equations (18), (19) and (10) to compute E[W i ], λ i and E[RT T i ]. For a TCP CUBIC connection (say j) we use equations (19), (20) and (10) to compute λ j, E[W j ] and E[RT T j ]. For a TCP New Reno connection (say k) we use equations (19), (21) and (10) to compute λ k, E[W k ] and E[RT T k ]. For the optimization based approach discussed in Section V, instead of (10) we use (13) along with (18), (19), (20) and (21) to get throughput and average window sizes of the different TCP connections. To verify the above approximate model, we set up ns- 2 simulations for a network with twelve TCP flows (four Compound, four New Reno, four CUBIC) and three queues as shown in Figure 3. Each group F i consists of one Compound, one CUBIC and one New Reno connection and have the same propagation delay i and experience the same PER p i. In Figure 3, the queues Q 1, Q 2 and Q 3 have capacity C 1 = 10Mbps, C 2 = 1Gbps and C 3 = 10Mbps respectively. The link speeds 10 Mbs are kept to ensure queuing delays. Without queuing delays the analytical models can be simpler and can match simulations better. However one does come across lower bandwidths at least at access links. The flows labelled F 1 go through all three queues, flows labelled F 2 go through only Q 1, flows labelled F 3 go through only Q 2 and flows labelled F 4 go through only Q 3. The packet error rate for all connections is 0.005. The propagation delays are given by 1 = 500msec, 2 = 3 = 4 = 100msec for the four classes of flows. Results for this setup are provided in Table IV. In Table V, we provide results for the topology of Figure 3 with the following modifications: C 3 = 5Mbps, flows F 2 go through Q 1 and Q 2 and flows F 3 go through Q 2 and Q 3. The packet error rates for flows F 2 and F 4 are 0.003. The propagation delays for F 2 and F 3 are 300msec. We call this case 2. We compare results obtained using the M/GI/1 approximation (denoted by M/GI/1) and by the weighted proportional fair allocation approximation (denoted by PF) with the ns- 2 simulations in Tables IV and V. We see that TCP CU- BIC gets substantially higher throughput than others when 300msec. Furthermore, in Table V, we see that inf 4 with = 100msec, TCP CUBIC gets the highest throughput. This

F 1 F 2 C 1 C 2 F 2 F 3 F 3 F 4 Fig. 3: TCP flows going through multiple queues TABLE IV: Average window size and throughput for Figure 3 Flow group TCP E[W] E[W] E[W] λ λ λ F i type (ns-2) (M/GI/1) (PF) (ns-2) (M/GI/1) (PF) CUBIC 48.4 46.4 46.3 95.4 91.7 91.8 F 1 New Reno 18.2 18.5 18.5 35.9 36.6 36.7 Compound 19.0 19.5 19.5 37.6 38.5 38.6 CUBIC 19.3 17.7 17.7 187.9 173.4 174.1 F 2 New Reno 18.4 18.5 18.5 180.2 181.6 182.8 Compound 19.1 19.5 19.5 187.0 191.0 192.2 CUBIC 19.1 17.6 17.6 189.5 175.0 175.0 F 3 New Reno 18.3 18.5 18.5 182.2 184.3 184.3 Compound 19.0 19.5 19.5 188.6 193.8 193.8 CUBIC 19.1 17.7 17.7 186.8 173.4 174.1 F 4 New Reno 18.2 18.5 18.5 178.4 181.6 182.8 Compound 18.9 19.5 19.5 185.1 191.0 192.2 is due to the increase in RTT caused by substantial queuing at Q 3 in case 2. These conform to the idea that TCP CUBIC being only loss based is more aggressive than TCP Compound. We see that the theory and simulations match reasonably well. VIII. SUMMARY We have studied a system where multiple TCP connections pass through multiple (bottleneck) routers. The TCP connections may use TCP New Reno, CUBIC or Compound. To study this system we have first developed an analytical model for a single TCP Compound connection with nonnegligible queuing and random packet loss. We obtained average window size and throughput. These results are used in a multiple TCP connection scenario which includes TCP CUBIC and TCP New Reno connections (for which we have used existing models). We have then analyzed the case of multiple bottleneck links. We use two approximate models for analysis: M/GI/1 based and optimization based. We have compared the results of our analysis with ns-2 simulations and seen that there is a close match between our analysis and simulations for both models. The comparison of the three protocols indicates that when propagation delays are large, TCP CUBIC gets higher throughput than TCP Compound and TCP New Reno. TABLE V: Average window size and throughput for case 2 Flow group TCP E[W] E[W] E[W] λ λ λ F i type (ns-2) (M/GI/1) (PF) (ns-2) (M/GI/1) (PF) CUBIC 60.3 60.4 60.5 80.8 80.3 80.3 F 1 New Reno 18.3 18.5 18.5 25.0 24.6 24.6 Compound 18.9 21.7 22.2 25.8 28.8 29.5 CUBIC 47.9 46.5 46.4 158.0 153.8 153.8 F 2 New Reno 23.7 23.9 23.9 78.4 79.2 79.3 Compound 25.6 27.6 27.6 84.6 91.3 91.3 CUBIC 49.9 49.0 49.1 91.8 89.2 89.0 F 3 New Reno 18.7 18.5 18.5 35.5 33.7 33.6 Compound 18.9 21.7 22.4 36.0 39.4 40.6 CUBIC 50.7 51.6 51.8 147.5 148.3 148.1 F 4 New Reno 24.3 23.9 23.9 75.5 68.8 68.3 Compound 24.7 27.8 28.4 77.2 80.0 81.3 C 3 F 1 F 4 In this paper, we assume a wireless scenario where packets are dropped randomly. One future direction of work is to compare performance in the droptail scenario. REFERENCES [1] V. Jacobson, Congestion avoidance and control, in Symposium proceedings on Communications architectures and protocols, ser. SIG- COMM 88. New York, NY, USA: ACM, 1988, pp. 314 329. [2] R. Jain, K. K. Ramakrishnan, and D.-M. Chiu, Innovations in internetworking. Norwood, MA, USA: Artech House, Inc., 1988, ch. Congestion avoidance in computer networks with a connectionless network layer, pp. 140 156. [3] G. Huston, Gigabit TCP, Internet Protocol Journal, 2006. [4] S. Floyd, HighSpeed TCP for Large Congestion Windows, RFC 3649 (Experimental), Internet Engineering Task Force, December 2003. [5] R. N. Shorten and D. J. Leith, H-TCP: TCP for high-speed and longdistance networks, in Proc. PFLDnet, Argonne., 2004. [6] D. X. Wei, C. Jin, S. H. Low, and S. Hegde, FAST TCP: motivation, architecture, algorithms, performance, IEEE/ACM Trans. Netw., vol. 14, no. 6, pp. 1246 1259, Dec. 2006. [7] L. Xu, K. Harfoush, and I. Rhee, Binary Increase Congestion Control (BIC) for Fast Long-Distance Networks, in Infocom 04, 2004. [8] S. Ha, I. Rhee, and L. Xu, CUBIC: a new TCP-friendly high-speed TCP variant, SIGOPS Oper. Syst. Rev., vol. 42, pp. 64 74, July 2008. [9] K. Tan, J. Song, Q. Zhang, and M. Sridharan, A Compound TCP Approach for High-Speed and Long Distance Networks, in IEEE Infocom, 2006. [10] M. Mathis, J. Semke, J. Mahdavi, and T. Ott, The macroscopic behavior of the TCP congestion avoidance algorithm, SIGCOMM Comput. Commun. Rev., vol. 27, pp. 67 82, July 1997. [11] C. Casetti and M. Meo, A New Approach to Model the Stationary Behavior of TCP Connections, in IEEE Infocom, 2000. [12] E. Altman, K. Avrachenkov, and C. Barakat, TCP Network Calculus: The case of large delay-bandwidth product, in IEEE Infocom, 2002. [13] V. Sharma and A. Gupta, Performance analysis of routers with TCP and UDP connections with priority and RED control, in ICCC, Washington, DC, USA, 2002. [14] V. Sharma and P. Purkayastha, Stability and Analysis of TCP Connections with RED Control and Exogenous Traffic, QUESTA, vol. 48, 2004. [15] A. Afanasyev, N. Tilley, P. Reiher, and L. Kleinrock, Host-to-host congestion control for TCP, Communications Surveys Tutorials, IEEE, vol. 12, no. 3, 2010. [16] M. C. Weigle, P. Sharma, and J. Freeman IV, Performance of competing high-speed TCP flows, in Proceedings of NETWORKING, May 2006. [17] T. Bonald, Comparison of TCP Reno and TCP Vegas: efficiency and fairness, Performance Evaluation, pp. 307 332, 1999. [18] A. Blanc, K. Avrachenkov, D. Collange, and G. Neglia, Compound TCP with Random Losses, in NETWORKING 2009, ser. LNCS, vol. 5550. Berlin, Heidelberg: Springer-Verlag, 2009. [19] A. Blanc, D. Collange, and K. Avrachenkov, Modelling an Isolated Compound TCP Connection, in Telecommunications, 2009. AICT 09. Fifth Advanced International Conference on, pp. 435 440. [20] P. Yang, W. Luo, L. Xu, J. Deogun, and Y. Lu, TCP Congestion Avoidance Algorithm Identification, in ICDCS. Washington, DC, USA: IEEE Computer Society, 2011. [21] W. Bao, V. W. S. Wong, and V. C. M. Leung, A Model for Steady State Throughput of TCP CUBIC, in GLOBECOM, 2010. [22] S. Poojary and V. Sharma, Analytical Model for Congestion Control and Throughput with TCP CUBIC Connections. in GLOBECOM, 2011. [23] J. Padhye, V. Firoiu, D. F. Towsley, and J. F. Kurose, Modeling TCP Reno Performance: A Simple Model and Its Empirical Validation, IEEE/ACM Transactions on Networking, vol. 8, pp. 133 145, 2000. [24] K. Tan, J. Song, M. Sridharan, and C.-Y. Ho, CTCP-TUBE: Improving TCP-friendliness over low-buffered network links, in 6th International workshop on Protocols for Fast Long-Distance Networks, 2008. [25] S. Asmussen, Applied probability and queues, 2nd ed. New York: Springer-Verlag, 2003. [26] L. Massoulie and J. Roberts, Bandwidth sharing: objectives and algorithms, Networking, IEEE/ACM Transactions on, vol. 10, no. 3, pp. 320 328, June 2002. [27] K. Anand and V. Sharma, Computing TCP Throughput in a UMTS Network, in IEEE WCNC, 2008, pp. 2507 2512.