Implementation Experiments on HighSpeed and TCP Zongsheng Zhang Go Hasegawa Masayuki Murata Osaka University
Outline Introduction Background of and g Why to evaluate in a test-bed network A refined algorithm of g Results Conclusion & future work 2
Introduction What s s wrong with TCP? TCP was designed when T1 was a fast network. It doesn t perform well under high bandwidth and high delay networks (LFNs) because of congestion window (CWND) algorithms. Solutions: One traditional method: parallel TCP mechanism New method: New algorithms for updating CWND, such as HighSpeed TCP, Scalable TCP, FAST TCP. 3
HighSpeed TCP [3] () : a simple and representative example. It uses the Additive Increase and Multiplicative Decrease (AIMD) principle of TCP. It is easily deployed in the current Internet. Currently, Window Size is the only protocol recommended by BDP IETF for LFNs. However, unfairness is a drawback. [3] S. Floyd, HighSpeed TCP for large congestion windows, RFC 3649, December 2003. TCP 4 Time
gentle HighSpeed TCP [1] (g) g is based on. Based on observation of the packet transmission time and its RTT, 2 modes in congestion Window Size avoidance phase: the positive correlation mode otherwise Mode BDP mode mode [1] Z. Zhang, G. Hasegawa, and M. Murata, Performance analysis and improvement of HighSpeed TCP with TailDrop/RED routers, Proc. of MASCOTS, October 2004. 5 g Time
Simulation vs. Emulation (real network) The simulation condition is relatively ideal compared to the real network. g is evaluated only by simulation [1] Is it suitable for the real network? The heterogeneity of the real network, such as individual links, network equipments, protocols and applications. The emulation network is more similar to a real network. For applying in the real network, it is necessary to evaluate g in test-bed network. 6 [1].
Setting of the test-bed network Dummynet is used as the infrastructure. It can emulate: bottleneck link bandwidth bottleneck link delay S1 buffer size of router TCP stack of S1 is different in each experiment. S2 uses TCP. (TCP, g,, TCP) S2 (TCP ) 1 Gbps PCI 100 Mbps Flow-1 Flow-2 1 Gbps 3COM 100 Mbps D1 D2 7
Check the algorithm of g CWND (packet) 1000 800 600 400 200 BDP CWND Mode 0 0 10 20 30 40 50 60 70 80 90 time [sec] (BW=200M, Delay=22ms, Queue=200K) Mode 40 0 10 20 30 40 50 60 70 80 90 Only Flow-1 1 exists, S1 uses g. Problems: RTT s oscillations lead to unnecessary mode switching behavior. Lower ability for catching bottleneck link bandwidth and unfairness against competing TCP traffic. Average RTT per CWND (ms) 100 90 80 70 60 50 51 50 49 48 47 46 24 25 26 27 28 29 RTT time [sec] (BW=200M, Delay=22ms, Queue=200K) 8
A refined algorithm of g Idea: the RTT is larger than the propagation delay when the link bandwidth is fully utilized. Notation: RTT_min is minimum of average RTT in 1-cycle. RTT_std is standard deviation of RTT. If RTT < RTT_min + 2*RTT_std mode is used. If RTT >= RTT_min + 2*RTT_std and RTT < RTT_min + 4*RTT_std (using the original algorithm of g) the mode is decided by the RTT trend. If RTT >= RTT_min + 4*RTT_std mode is used. 9
Results of the refined algorithm If CWND < BDP g can catch the link bandwidth as quickly as the original. If CWND > BDP 1000 g can provide better fairness with respect to competing TCP flows. CWND (packet) 800 600 400 200 BDP CWND Mode 0 0 10 20 30 40 50 60 70 80 90 time [sec] (BW=200M, Delay=22ms, Queue=200K) Mode 10
Test g in test-bed netowork The metrics of evaluation: Throughput Utilization Fairness (Jain s s fairness index) Two scenarios Scenario-1: BW=100 Mbps, Delay=23 ms, buffer of router = 200 Kbytes. Scenario-2: BW=200 Mbps, Delay=23 ms, buffer of router = 500 Kbytes. Flow-1 1 uses TCP /g g//parallel TCP There are 2 TCP connections in Flow-2. The socket buffer size is set to 64 KB or 512 KB in different experiments, respectively. 11
100 Flow-1 Flow-2 Results (Scenario-1) Throughput (Mbps) 80 60 40 20 Bottleneck link bandwidth = 100 Mbps, Buffer of router = 200 Kbytes. Exp-1: S1 uses TCP Exp-2: S1 uses g Exp-3: S1 uses Exp-4: S1 uses parallel TCP (8 connections) When the buffer size of S2 is set to 64 512 Kbytes: The All of main utilization limit is on larger S2 is than its socket 90%. buffer size. Fairness The fairness is better is determined all cases. by the algorithms of TCP and the competing flows. TCP achieves the best utilization, but the worst The fairness. is very poor when parallel TCP is used. The throughput of g is slightly less than that g of parallel outperforms TCP, it is better than in terms others. of utilization and fairness. Utilization (%) Fairness Index 0 100 90 80 70 60 50 1 0.9 0.8 0.7 0.6 0.5 g (Buffer size of Flow-2=64K) g (Buffer size of Flow-2=64K) g (Buffer size of Flow-2=64K) g (Buffer size of Flow-2=512K) g (Buffer size of Flow-2=512K) g (Buffer size of Flow-2=512K) 12
200 Flow-1 Flow-2 Results (Scenario-2) Throughput (Mbps) 150 100 50 Bottleneck link bandwidth = 200 Mbps, Buffer of router = 500 Kbytes. Exp-5: S1 uses TCP Exp-6: S1 uses g Exp-7: S1 uses Exp-8: S1 uses parallel TCP (16 connections) On The the difference whole, the from utilization Scenario-1: and The fairness bottleneck trends 60 are link the is larger same than as those the access demonstrated link bandwidth in Scenario-1. of 50 Flow-2. TCP achieves the best utilization, but the worst Even fairness. when the buffer size of S2 is set to 512 1 Kbytes, there still exists redundant link bandwidth 0.9 g offers higher utilization and better on the bottleneck link. 0.8 fairness than the other protocols. 0.7 g can utilize this redundant link That is, g is the best tradeoff in terms of 0.6 bandwidth very well. Whereas, or parallel link utilization and fairness. 0.5 TCP pillages vast resources from Flow-2. Utilization (%) Fairness Index 0 100 90 80 70 g (Buffer size of Flow-2=64K) g (Buffer size of Flow-2=64K) g (Buffer size of Flow-2=64K) g (Buffer size of Flow-2=512K) g (Buffer size of Flow-2=512K) g (Buffer size of Flow-2=512K) 13
Conclusions & Future works A refined g algorithm is proposed. The performances of TCP, and g are evaluated experimentally. The parallel TCP mechanism is evaluated as a candidate for LFNs. g offers the best tradeoff in terms of utilization and fairness. Future works Test using Active Queue Management (AQM). Test in a higher speed network and the Internet. Evaluate parallel TCP by analysis. 14