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

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

Stable Accurate Rapid Bandwidth Estimate for Improving TCP over Wireless Networks

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

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

COMPARISON OF HIGH SPEED CONGESTION CONTROL PROTOCOLS

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

Transmission Control Protocol (TCP)

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

ADVANCED TOPICS FOR CONGESTION CONTROL

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

Design and Performance Evaluation of High Efficient TCP for HBDP Networks

Compound TCP: A Scalable and TCP-Friendly Congestion Control for High-speed Networks

Performance Analysis of TCP Variants

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

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

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

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

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

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

An Enhanced Slow-Start Mechanism for TCP Vegas

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

RED behavior with different packet sizes

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

Analysis of Reno: A TCP Variant

TCP Congestion Control

TCP Congestion Control

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

Flow and Congestion Control Marcos Vieira

CS268: Beyond TCP Congestion Control

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

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

TCP SIAD: Congestion Control supporting Low Latency and High Speed

Improving TCP Performance over Wireless Networks using Loss Predictors

CTCP: Improving TCP-Friendliness Over Low- Buffered Network Links

PERFORMANCE COMPARISON OF THE DIFFERENT STREAMS IN A TCP BOTTLENECK LINK IN THE PRESENCE OF BACKGROUND TRAFFIC IN A DATA CENTER

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

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

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

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

Reliable Transport II: TCP and Congestion Control

CS4700/CS5700 Fundamentals of Computer Networks

15-744: Computer Networking TCP

Communication Networks

CS3600 SYSTEMS AND NETWORKS

TCP Congestion Control in Wired and Wireless networks

cs/ee 143 Communication Networks

TCP based Receiver Assistant Congestion Control

CS Networks and Distributed Systems. Lecture 10: Congestion Control

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

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

Performance of Competing High-Speed TCP Flows

Advanced Congestion Control (Hosts)

CS644 Advanced Networks

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

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

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

TCP Congestion Control

Reliable Transport II: TCP and Congestion Control

Advanced Computer Networks

INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN

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

Lecture 9 Congestion Control: Part II. EECS 122 University of California Berkeley

Lecture 14: Congestion Control"

Problems and Solutions for the TCP Slow-Start Process

Lecture 14: Congestion Control"

Comparing TCP Congestion Control Algorithms Based on Passively Collected Packet Traces

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

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

Advanced Computer Networks

TCP on High-Speed Networks

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

Congestion Control. Brighten Godfrey CS 538 January Based in part on slides by Ion Stoica

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

TCP START-UP BEHAVIOR UNDER THE PROPORTIONAL FAIR SCHEDULING POLICY

CS 268: Lecture 7 (Beyond TCP Congestion Control)

Performance of Competing High-Speed TCP Flows

Congestion Control. Queuing Discipline Reacting to Congestion Avoiding Congestion. Issues

One More Bit Is Enough

Wireless TCP Performance Issues

A Compound TCP Approach for High-speed and Long Distance Networks

Why Rely on Blind AIMDs?

ENRICHMENT OF SACK TCP PERFORMANCE BY DELAYING FAST RECOVERY Mr. R. D. Mehta 1, Dr. C. H. Vithalani 2, Dr. N. N. Jani 3

TCP Veno: Solution to TCP over Wireless

Cross-layer Flow Control to Improve Bandwidth Utilization and Fairness for Short Burst Flows

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

A New Fair Window Algorithm for ECN Capable TCP (New-ECN)

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

CSE 123A Computer Networks

Computer Networking

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

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

Lecture 4: Congestion Control

CS321: Computer Networks Congestion Control in TCP

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

CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca

Congestion. Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets limited resources

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

XCP: explicit Control Protocol

Appendix B. Standards-Track TCP Evaluation

Analysis on MPTCP combining Congestion Window Adaptation and Packet Scheduling for Multi-Homed Device

Transcription:

A Bottleneck and Target Bandwidth Estimates-Based Congestion Control Algorithm for High BDP Networks Tuan-Anh Le 1, Choong Seon Hong 2 Department of Computer Engineering, Kyung Hee University 1 Seocheon, Giheung, Yongin, Gyeonggi, 446-71, Korea 1 letuanh@khu.ac.kr, 2 cshong@khu.ac.kr Abstract Two considerable problems for designing a new protocol in high bandwidth delay product (BDP) networks are bandwidth utilization efficiency and fairness to competing TCP flows. We introduce a novel congestion avoidance control algorithm for high BDP networks. By estimating the bottleneck and target bandwidth as the upper and lower bounds for increasing congestion window and decreasing congestion window. According to the current window size compared with those bounds, the congestion avoidance controller (CAC) adjusts the amount of appropriate congestion window increase in such a way that the sending rate stays around the point of the full link utilization. Decrease of the congestion window to a lower bound aids CAC to recover quickly after packet loss caused by either network congestion or random error. in simulation can achieve the bottleneck bandwidth utilization better than TCP- Illinois and do, and can improve fairness to competing flows mixed short RTT and long RTT. I. INTRODUCTION In the today s Internet, a large number of high bandwidth links have been deploying, which in turn generates some technological challenges. Two of challenges are how to efficiently utilize large network bandwidth and fairly share network resources. The standard TCP (TCP Reno) [1] employs a window growth algorithm to be an additive increase and multiplicative decrease mechanism. The data transmission control mechanism, in high BDP networks, requires TCP connections to maintain very large congestion window. However, it is slow for TCP Reno to obtain full utilization in the network resource if BDP of the TCP connection path is too large [2] because a congestion control algorithm of TCP Reno increases the congestion window (cwnd) by one packet in every round rip time (RTT) in congestion avoidance phase (CA) since no packet loss occurs, and reduces the cwnd by half if a packet loss is detected by means of three duplicate ACKs [1]. Specially, TCP connection paths include a wireless link. If packet losses occur by random errors of the wireless link, the sending rate is reduced blindly [5]. That is TCP performance to be degrading unreasonably. In the recent research reports, these issues have been addressed and many solutions have proposed. These can be classified into four categories: loss-based approaches, delay-based approaches, mixed loss-delay-based approaches, and explicit congestion notification-based approaches. Protocols in lossbased approaches employ packet loss event as an indication of network congestion and try to modify the parameters of TCP Reno congestion control algorithm to be more aggressive in bandwidth utilization in high BDP networks. Such protocols consist of High Speed TCP () [2], Scalable TCP [3], Binary Increase Congestion Control (BIC-TCP) [4], and CUBIC-TCP [5] (an improved BIC-TCP version). Delay-based approaches try to estimate RTT variations or queueing delay to detect an implicit incipient congestion indication, e.g., FAST TCP [6]. In mixed loss-delay-based approaches, proposals combine both delay-based and loss-based congestion indications. Compound TCP [7] maintains two different windows: the cwnd of TCP Reno is updated according to TCP Reno algorithm, the delay window (dwnd) increases rapidly when more bandwidth is available, but decreases when bottleneck queue is built-up. The actual congestion window is the sum of the cwnd and the dwnd; [8] employs packet loss as event in order to reduce cwnd, and senses queueing delay to determine an increase factor and multiplicative decrease factor during the CA. EXplicit Control Protocol (XCP) [9] belongs to explicit congestion notification-based approaches. It needs intermediate router to signal to XCP about the degree congestion at the bottleneck. XCP maintains aggressiveness according to the available bandwidth and the feedback delay. In this paper, we are interested in the mixed loss-delaybased approaches and introduce a congestion control algorithm, which estimates the bottleneck bandwidth and the target bandwidth (based on queueing delay information). It adjusts the amount of appropriate cwnd increase according to the current cwnd state compared with the target window in every RTT. When packet loss occurs, it sets the slow start threshold (ssthresh) and the cwnd equal to the estimated bottleneck window. The rest of this paper is organized as follows: in Section II we address the shortcoming of the existing protocols, and list our objectives for design a good new protocol for high BDP networks. Section III articulates details of the congestion avoidance control algorithm of the proposal based on the

bottleneck and target bandwidth estimates. The simulation results are aimed to evaluate TCP performace presented in Section IV. Finally we conclude in Section V. II. MOTIVATION To reduce the cwnd, loss-based approaches employ packet loss after the full link utilization as congestion indication. After that, they are aggressive in the cwnd increase to achieve efficiency in high BDP network. However, this causes fluctuation in using queue at routers as well as unfairness in competing TCP flows with different RTTs. On the contrary, delay-based approaches try to adjust the cwnd around the full link utilization, which is based on queueing delay. However, they cannot share the same link with standard TCP [1], [11], and require the large buffer size at router for queueing flows [12]. To design a good new protocol for high BDP networks, in our opinion, following requirements should be considered: Efficiency: The new protocol should efficiently utilize the large available bandwidth of high BDP networks with both only wired links and mixed wired-wireless links. Fairness: In network with shared resources, the new protocol should fairly share the network bandwidth with the competing TCP flows in the same protocol. Additionally, under TCP flows with different RTTs, their average throughput can be achieved in inverse proportion to their RTTs. The flows with shorter RTT should not obtain shared bandwidth more compared with longer RTT flows. Our proposal falls in with the same idea of and Compound TCP, which are based on packet loss event and queueing delay. However, in our proposal, queueing delay is employed to estimate the target window, which is a window at the full link utilization. According to the current cwnd state compared with the target window, the proposal appropriately adjusts the amount of increase for the cwnd. Furthermore, when packet loss occurs, the proposal sets the ssthresh and the cwnd equal to the bottleneck link window, which is based the estimated bandwidth. III. THE PROPOSAL The proposed TCP s the congestion control mechanism is divided into two functional components called the estimator and the congestion avoidance controller (CAC). The estimator provides the bottleneck link bandwidth and target bandwidth for the CAC in order to control increase/decrease cwnd. A. Bottleneck and Target Bandwidth Estimates We take advantage of property of estimating the forward path not affected by ACK compression [12], [13]. The estimator computes the bottleneck link bandwidth by amount of data sent divided by inter-receiving time of that data packet via the ACK s timestamp [12], [13]. We define the bottleneck window (W Bottleneck ) based on the estimated bandwidth (ebw) [12], [13], as follows: W Bottleneck = ebw basert T Seg size where basertt is the mininum RTT observed, Seg size is the length of the TCP segment. To determine the target bandwidth in every RTT, the estimator employs the current window size (W), the maximum average RTT (RT T max ) and the basertt. The total numbers of backlogged packets in the network are computed, as follows: eq = W RT T (RT T max basert T ) where RT T max basert T is the maximum average total queueing delay in path of the flow and W/RT T is the estimated average current throughput, eq) represents an estimate of the maximum total number of packets backlogged in the network. The target window (W T arget ) is the expected cwnd as fully utilizing the bottleneck bandwidth. The estimator computes W T arget = W Bottleneck + eq. The W T arget and W Bottleneck determine the upper and lower bounds of bandwidth for a TCP flow. They are reflecting the current network condition by updating in every RTT. B. The Congestion Avoidance Control Algorithm Given W Bottleneck and W T arget from the estimator, CAC increases the cwnd by α(.) packets in every RTT, as follows: cwnd(t + 1) = cwnd(t) + α(cwnd(t)). (1) cwnd(t) Function α(.) is exponential to be growth of the cwnd, according to: α(w) = { α min + l.e λ(w W S), ifw S w W T arget, α max, otherwise where l = α max α min, W S = W Bottleneck +.2 (W T arget W Bottleneck ) is the window size at which the CAC switches none-linear increase mode for the cwnd. Parameters of α min, α max, and λ determine aggressiveness of the protocol as in Fig.1(a). In this paper, we set α min to be 1., α max to be 16.. λ is set to 7.25/(W T arget W Bottleneck )(such λ value means that an cwnd is at 2/3 times the distance from W Bottleneck to W T arget, where it meets a value of the sum of min and 2% of the distance from α min to α max ). In CA phase, the cwnd is increased the amount of increase according to the current cwnd state compared with both the target window and the bottleneck window in every RTT. Fig.1(b) shows curve of the cwnd growth function of the proposal according to the function α(.) as in Fig.1(a). We separate the cwnd growth as in (1) into two increment phases as follows. The first increment phase is determined if the current cwnd is in between W Bottleneck and W S (It means that the current cwnd is far from the target window). The CAC interprets that more bandwidth are available. Then, the cwnd is increased by the largest value (i.e., α max, called the

w Sender Sink max 1 1Gbps 1Gbps 1 R R n 8ms, 2Mbps 4 packets n min W Bottleneck W Target Cwnd W S (a) W Target w Sender Fig. 2. Sink The dumbbell simulation scenario. Cwnd Evolution 3 25 Fig. 1. W Bottleneck (b) RTT (a) Curve of function α(w), and (b) curve of cwnd growth function. linear increment) provided from the function α(.). The second increment phase is determined if the current cwnd is close the target window. The CAC interprets that the network is becoming the full link utilization. Then, the cwnd is increased by a small value provided from the function α(.). The amount of cwnd increase is smaller; it is useful to keep the cwnd to stay around the point of the full link utilization. After replacing the increment function of the cwnd in TCP Reno protocol during the CA phase as in above, we need to modify its congestion avoidance control algorithm in two following packet loss events. Whenever the packet loss is detected through receiving triple duplicate ACKs, the CAC updates the ssthresh and the cwnd, as follows, and starts a new CA phase: ssthresh max(w Bottleneck, 2) cwnd ssthresh. The equation (2) interprets that the CAC reduces the data transmission rate equal to the rate limitation of the bottleneck link as router s queue underflows. This is useful to the CAC to begin at a proper point (i.e. the bottleneck link capacity) for cwnd recovery. If the CAC is triggered by a retransmission timeout event due to the heavy network congestion or very high bit-error rate of wireless link, the CAC sets ssthresh to W Bottleneck and then sets cwnd to one for restarting the slow start phase, and resets RT T max to zero as the following pseudo code: ssthresh max(w Bottleneck, 2) cwnd 1 RT T max. IV. PERFORMANCE EVALUATIONS In this section we evaluate the proposed TCP compared with, and. The evaluations are performed (2) 2 15 1 5 1 2 3 4 5 Time (second) Fig. 3. The congestion window evolution. by the NS-2 simulator [14]. The proposed protocol is implemented in TCP-Linux [15]. A dumbbell scenario is employed in order to obtain and compare the fundamental features of the protocols such as congestion window evolution, utilization, and fairness. Such scenario configuration is shown in Fig. 2 with the one way link delay of 8ms, and the bottleneck link speed of 2Mbps (i.e. one way BDP capacity of 1333 packets/s with packet size 15-byte), the routers buffer size of 4 packets (with the drop tail queue). The TCP packet size is 15-byte. The simulation was run for 5 seconds. A. The Congestion Window Evolution We visualized the congestion window evolution of a single flow as in Fig. 3. It is observed that the proposed TCP and can stay around buffer range allocated at the bottleneck buffer. However, the proposed TCP does not reduce the cwnd lower than the bottleneck link capacity, and its increment is more aggressive in than increment. On the contrary, s cwnd is fluctuated significantly in acquiring and releasing bandwidth. B. Utilization Utilization of a TCP protocol is determined by how to use efficiently the bottleneck link bandwidth in term of TCP googput under both high BDP and random packet error environments. In first environment, we consider the impact of the bottleneck bandwidth of link on utilization along bottleneck bandwidth variants from 1Mbps to 5Mbps.

Utilization Percentage Goodput(Mbps) Fig. 5. 1% 9% 8% Fig. 4. 2 18 16 14 12 1 8 6 4 2 Bandwidth Utilization 4pkts, 1Mbps 4pkts, 2Mbps 8pkts, 8Mbps Buffer sizes and speeds The bandwidth utilization efficiency. Goodputs vs. Packet loss rates -2 1E-5% 1E-4% 1E-3%.1%.1% 1% Packet loss rate The goodput under various random packet loss rates. Fig. 4 shows that utilization efficiency of the protocols are over 8% of the bottleneck bandwidth, but the proposed TCP is higher than TCP Illinois and in all three simulations. However, when the bottleneck bandwidth is given larger, more bandwidth may be under-utilized. This is due to setting the scalable parameters of these propocols. In second environment, we evaluate goodputs of all three protocols under random packet loss rate varying from.1% to 1%. In Fig. 5, for any random packet loss rate, the goodput of the proposed TCP is better than other TCP protocols. Practically, at.1% random packet loss rate, the proposed TCP outperforms TCP Illinois and by 7.3 times and 1.7 times, respectively. This is interpreted that the proposed TCP can quickly recover from the random packet loss, which is not related to the queueing drop. C. Fairness We consider fairness as fairly sharing the network bandwidth with the competing TCP flows in the same protocol. To measure of fairness, we employed Jain s fairness index [16], as follows: F index = ( n i=1 x i) 2 n( n i=1 x2 i ), 1 n F index 1. where x i is the throughput of the i th TCP flow, and n is the number of TCP flows. The numbers of TCP flows in our simulations are varied from 4 flows to 16 flows. Fig. 6 shows that the proposed TCP can achieve quite higher fairness index than and. The main reason why gets lowest fairness index is read off via plotting cwnd evolution of 4 flows of the protocols in Fig. 7. Fairness Index 1..9.8.7.6.5 Fig. 6. Fairness in bottleneck sharing 4 flows 8 flows 16 flows Number of flows The fairness index in bottleneck sharing. TABLE I THE AVERAGE GOODPUT RATIO UNDER DIFFERENT RTTS. Inverse RTT ratio 1.5 2 3 Proposed TCP 1.68 2.8 2.8 1.96 3.6 4.1 7.62 4.64 247.24 Figs. 7(a) and (c) show that the flows cwnds of proposed TCP and can converge to around fairly shared bandwidth at 75 packets. On the contrary, the flows cwnd evolutions of TCP Illinois in Fig. 7(b) are significantly different from each other through simulation time. We next evaluate RTT unfairness to competing TCP flows with different RTTs, where the cwnd of a short RTT TCP flow increases faster than that of long RTT TCP flow so that the average throughput ratio between the short RTT flow and long RTT flow is inversely proportional to their RTT ratio [4]. In this simulation, a short RTT flow is competing with a long RTT one. The short RTT flow has RTT of 8ms. The RTT of the long RTT flow is varied among 12ms, 16ms, and 24ms. Table I shows that suffers from highest unfairness as the inverse RTT ratio increase. The proposed TCP is fairer to competing TCP flow with different RTTs. V. CONCLUSIONS In this paper, we present a novel congestion avoidance control algorithm for high BDP networks. can satisfy two essential requirements for designing a new protocol in high BDP networks. By estimating the bottleneck and target bandwidth based on queueing delay and bottleneck link rate, the proposal increases cwnd in logarithmic form in such a way that the sending rate stays around the point of the full link utilization. Decrease of the cwnd to bottleneck capacity aids CAC to recover quickly after packet loss caused by either network congestion or random error. The simulation results show that the proposal can achieve the bottleneck bandwidth utilization better than and, and can improve fairness to competing flows mixed short RTT and long RTT. However, executing the increase function is slow in implementation because of natural exponential function. We can find another equivalent exponential function or implement a fast look-up method to compute that function as in [17].

16 14 12 1 8 6 4 2 Cwnd evolution of four proposal flows 1 2 3 4 5 16 14 12 1 8 6 4 2 Cwnd evolution of four flows 1 2 3 4 5 (a) (b) (c) Fig. 7. 16 14 12 1 8 6 4 2 Cwnd evolution of four flows 1 2 3 4 5 The cwnd evolution of four flows of (a) our proposal, (b), and (c). ACKNOWLEDGMENT This work was supported by the IT R&D program of MKE/KEIT [29-S-14-1, On the Development of Sensing based Emotive Service Mobile Handheld Devices]. Dr. CS Hong is corresponding author. [17] C. Baumann. (24) A simple and fast look-up table method to compute the exp(x) and ln(x) functions. [Online]. Available: http://www.convict.lu/jeunes/ultimate stuff/exp ln 2.htm REFERENCES [1] V. Jacobson and M. J. Karels, Congestion avoidance and control, in SigCOMM 88, 1988. [2] S. Floyd, Highspeed TCP for large congestion windows, RFC 3649, Dec. 23. [3] T. Kelly, Scalable TCP: Improving performace in highspeed wide area networks, ACM SIGCOMM Computer Communication Review, vol. 33, pp. 83 91, 22. [4] L. Xu, K. Harfoush, and I. Rhee, Binary increase congestion control (BIC) for fast long-distance networks, in Proc. IEEE INFOCOM 4, Mar. 24. [5] S. Ha, I. Rhee, and L. Xu, CUBIC: A new TCP-friendly high-speed TCP variant, in ACM SIGOPS Operating System Review, July 28. [6] D. X. Wei, C. Jin, S. H. Low, and S. Hegde, FAST TCP: motivation, architecture, algorithms, performance, in Proc. IEEE INFOCOM 4, Mar. 24. [7] K. Tan, J. Song, Q. Zhang, and M. Sridharan, A Compound TCP approach for high-speed and long distance networks, Microsoft Research TechReport, Tech. Rep., 25. [Online]. Available: http://research.microsoft.com/apps/pubs/default.aspx?id=7189 [8] S. Liu, T. Basar, and R. Srikant, : A loss and delaybased congestion control algorithm for high-speed networks, in Proc. VALUETOOLS, Oct. 26. [9] D. Katabi, M. H, L. C. Rohrs, and M. lcs Icsi Tellabs, Congestion control for high bandwidth-delay product networks, in Proc. ACM SIGCOMM, 22. [1] J. Mo, R. J. La, V. Anantharam, and J. Walrand, Analysis and comparison of TCP Reno and Vegas, in Proc. IEEE INFOCOM 99, Mar. 1999. [11] A. Tang, J. Wang, S. Low, and M. Chiang, Equilibrium of heterogeneous congestion control protocols, in Proc. IEEE INFOCOM 5, Mar. 25. [12] T. A. Le and C. S. Hong, TCP BaLDE for improving TCP performance over heterogeneous networks, IEICE Transactions on Communications, vol. E89-B, No.4, pp. 1127 1135, Apr. 26. [13], Stable accurate rapid bandwidth estimate for improving TCP over wireless networks, in Lecture Notes in Computer Science 3421 (ICN 25), Apr. 25. [14] (29) Ns-2 network simulator, version 2.34. [Online]. Available: http://www.isi.edu/nsnam/ns/ [15] D. X. Wei and P. Cao. (26) A linux tcp implementation for ns2. [Online]. Available: http://netlab.caltech.edu/projects/ns2tcplinux/ns2linux- 2.29-linux-2.6.16/ [16] R. Jain, D. Chiu, and W. Hawe, A quantitative measure of fairness and discrimination for resource allocation in shared computer systems, DEC Research, Tech. Rep. TR-31, September 1984. [Online]. Available: http://www.cse.wustl.edu/ jain/papers/fairness.htm