TCP Performances over Wireless Link deploying Delayed ACK W.Lilakiatsakun*,** A.Seneviratne** *Dept. of Computer Engineering Mahanakorn University of Technology, Bangkok, Thailand Email:
[email protected] ** School of Electrical Engineering and Telecommunications University of New South Wales, Sydney, Australia Email:
[email protected]
Abstract- Understanding the impact of TCP techniques toward wireless environment is important because the need of mobile devices have been significantly increased. Often, many studies showed that wireless environments have crucial impacts to TCP performance. Yet, the effects of delayed acknowledgement over wireless link have not thoroughly been studied. This paper, therefore, investigated the impact of delayed acknowledgement of TCP connection over wireless link focusing not only throughput but also the bandwidth and energy consumption. Those metrics are crucial to wireless networks. The variations used in this study, widely implemented and experimented, are Reno, Newreno, Sack (Selective acknowledgement), Vegas. The results showed interestingly that with delayed acknowledgement employment, Vegas can improve throughput 3-15% whereas, as expected, Reno/Newreno and Sack throughputs suffer 5-40 % comparing to standard acknowledgement. All variations with delayed ACKs consume less bandwidth usage, however, the benefit is not significant. For the energy performance, Reno with delayed acknowledgement can perform better in case of excluding idle energy, even though the amount is trivial. On the other hand, when idle energy is concerned, Vegas shows 1-15% less energy consumption compare to standard acknowledgement.
I. INTRODUCTION The delayed acknowledgement mechanism defined in RFC 1122, allows TCP receiver to refrain from transmitting an ACK for every incoming segment. However, the receiver has to send an ACK either every second full-sized segment or reaching 500 ms while waiting for a second full-sized segment to arrive. In the other word, TCP receiver hoping to have data going in the same direction as the ACK so the ACK can be sent along with the data. As a result, traffic load in the networks due to sending ACKs can be reduced at most as twice as the standard ACK does. Since the ACK mechanism is cumulative so reliability is not be affected because of the number of ACK reduced. Additionally, [3,6] showed that by using delayed ACK in certain environment can improve the performance. As mentioned, currently, delayed ACK has been implemented by several distributions [8]. Intuitively, it can be clearly seen that the number of ACKs reduced leads to lessen protocol operations and communications. Therefore, It would be helpful in wireless
environment that resources in wireless network, bandwidth and power, are expensive. However, very few studies about delayed ACK have been carried out over wireless link. Lang et al. [7] presented the impact from delayed ACK over satellite links. The authors showed that over a lossy link, using delayed acknowledgements perform considerably worse than using standard one. Since all parameters were set up based on satellite links, long round trip time and random loss, the result sometimes might not be clearly fit with wireless LAN environment. Furthermore, the authors did not show energy efficiency metric which has, currently, been a crucial factor to mobile hosts. Xu et al.[5] studied the effect of TCP performance in wireless multi-hop networks. The author recommended that TCP goodput can be improved 15-32 % by using delayed ACKs in multi-hop networks. Nevertheless, the effect of burst error and energy performance was not investigated. Therefore, in our study we investigated the impacts of delayed ACK toward TCP performances not only throughput but also bandwidth and energy consumption under burst error condition. The rest of paper is organized as follows. Section II explains the simulation model and power measurement setup. The performance metrics are described in section III. The results and discussions are presented in section. IV. Finally, section V concludes our work. II. THE EXPERIMENTAL SETUP We simulated the TCP connection over a wireless link by using NS2. Throughput and data overhead can be obtained by manipulating information from the simulator itself whereas to evaluate energy expenditure, we required the real world power consumption. Therefore, we set up the power measurement of IEEE 802.11 network interface card as described below. A. Simulation Setup We assumed the bandwidth of wireless link to 2Mbps and 1 ms. delay to simulate LAN environment. We simulated by using FTP to transfer 20Mbytes data, assuring that the connection will be long enough, and packet size is 1000
bytes. Initial value for congestion window is 2 so that delayed ack will not unnecessary timeout after recovering state from RTO expired. For the lossy link, we model the deep fading condition which is characterized as Two State Markov. The probability of error in good state is 0 whereas in bad state is 0.8[4] .
Pi is the average power consumption of NWIC during idle state.
Ts is the TCP connection time. IV. RESULTS
B. Power Measurement Setup We experimented on two laptops computer running on Linux OS kernel 2.4. Toshiba Portage 300 MHz. and Dell Lattitude 1 GHz was equipped with Orinoco “silver” 11Mbps wireless network interface card. WNIC can be configured by wireless tools[2]. PCMCIA extender was used to facilitate Vcc isolation of WNIC. The measurement was done by connecting a resistor between power supply and interface card. The current will be calculated by dividing the voltage drop across the resistor with the value of the resistor (0.33 Ohm). The Voltages were sampled by a digital oscilloscope Tektronix TDS 220. All data will be transferred to the control PC attached with TDS220. The ttcp [1] was used to be a traffic generator.
To ease in comparison of TCP variations between with and without delayed ACK, therefore, all results are shown as ratio of performance metrics. Ratio = Metrics of Delayed ACK / Metrics of Standard ACK (3) For throughput, if the ratio value is more than 1 it shows that the delayed ACK yields the positive impacts. That is throughput of delayed ACK can perform better than standard ACK. However, the above 1 result for bandwidth and energy consumption ratio is the negative outcome. Because if bandwidth ratio is more than 1, it means that delayed ACK need to be acted somehow more than the standard ACK. Similarly, the energy ratio is more than 1, that shows more energy spent by delayed ACK deployment.
III. THE PERFORMANCE METRICS A. Throughput Three metrics, namely throughput, data overhead, energy overhead was used for the evaluation of the TCP performances.
1.4
The first, throughput, is the classical performance metric and provided an indication of how much data the TCP layer can transmit/receive per second. B. Bandwidth The bandwidth utilization indicates the link have to be allocated for transmitting/receiving packets during a connection.
Throughput Ratio
1.2
A. Throughput
1 0.8 0.6 0.4 0.2 0 1
5
10
20
30
40
50
Error Rate (%)
C. Energy Consumption We evaluate the energy consumption of the protocols by considering the energy spent on NWIC in 2 aspects. First aspect is the energy consumed by communication activities, both transmitting and receiving packets, so called “Ecom”. In the second aspect, we include the energy spent during idle state, so called “Eall “.
Ecom = N t * Et + N r * Er
(1)
Eall = N t * Et + N r * Er + Ts * Pi
(2)
Nt is the number of transmitted packets Nr is the number of received packets Et is the average energy consumed for transmitting one packet Er is the average energy consumed for receiving one packet.
Reno
Newreno
SACK
Vegas
Fig. 1. Throughput Ratio Vegas performs better with delayed ACK whereas Reno/ Newreno and Sack worsen down throughput throughout error range. Vegas error recovery techniques, basically, do not heavily depend on acknowledgement packets as the others. Therefore, reducing ACKed packets might not hurt TCP throughput. On the other hand, it can decrease the number of coarse-grained timeout as seen in Fig. 2. Contrastingly, Reno/Newreno/Sack perform remarkably worse than standard ACK in particular at low error rate due to the retransmission techniques of these protocols rely heavily on acknowledgements. It is known that the number of acknowledgements is approximately reduced by half when using delayed ACKs. As a result, the coarse-grained timeout will occur more often as depicted in Fig. 2.
4
Unnecessary Retransmission Ratio
3
RTO expiration Ratio
3.5 3 2.5 2 1.5 1 0.5 0 1
5
10
20
30
40
2.5 2 1.5 1 0.5 0
50
1
5
10
Error Rate (%) Reno
Newr eno
20
30
40
50
Error Rate (%)
SACK
Vegas
Reno
Newreno
SACK
Vegas
Fig. 4. Unnecessary Retransmission Ratio
Fig. 2. RTO expiration Ratio
C. Energy Consumption B. Bandwidth
To consider the energy overhead, we use hybrid method by using real measurement to estimate transmitting/receiving energy per packet, shown in Table I, and then calculate the energy consumption of TCP session by information obtaining from NS2 in (1)(2).
1
Bandwidth Ratio
0.995 0.99
TABLE I ORINOCO “SILVER” WNIC ENERGY CONSUMPTION MEASUREMENT AT 2MBPS
0.985 0.98
Packet Size (Bytes)
Receiving Energy (Joules / Packet) 0.2511 m 0.5036 m 780 mW
0.975
100 1000 Idle
0.97 1
5
10
20
30
40
50
Transmitting Energy (Joules / Packet) 0.5516 m 2.5895 m
Error Rate (%) Newreno
SACK
Vegas
Fig. 3. Bandwidth Ratio It is obviously seen that with delayed ACK option, all TCP can reduce bandwidth usage of link. Main factor is the reduction of ACK packets. In addition to the amount of ACK packets reduced, certain TCPs can work with delayed ACK appropriately. For example, Reno with delayed ACK can produce less unnecessary retransmission1/reception than the normal ACK, as shown in Fig. 4. On the other hand, Vegas with delayed ACK produce more unnecessary retransmission. Since the Vegas mechanism adjusts its window size by estimating the current throughput. By reducing ACKs, it underestimates the different value between the actual and expected throughput. Such a situation, Vegas mechanism adjusts window size more aggressively.
Notice that to evaluate the energy consumption of ACK, 100 byte-packet operations will be used even if the real ACK may be varied between 40 – 80 bytes. From our measurement, we could not notice much differences in energy consumed due to the energy cost for small packet is dominated by header of MAC and physical layer. 1.005
1
Energy Ratio
Reno
0.995
0.99
0.985
0.98 1
Unnecessary retransmission packets are the extra packets retransmitted due to packet losses.
10
20
30
40
50
Error Rate (%) Reno
1
5
Newreno
SACK
Vegas
Fig. 5. Energy Ratio (transmission and reception) at sender
1.8 1.6 1.4
1.01
Energy Ratio
Energy Overhead Ratio
1.02 1.015
1.005 1 0.995 0.99
1.2 1 0.8 0.6 0.4
0.985
0.2
0.98
0 1
5
10
20
30
40
1
50
5
10
Error Rate (%) Newreno
30
40
50
Error Rate (%)
SACK
Vegas
Reno
Fig. 6. Energy Ratio (transmission and reception) at receiver In Fig. 5 and Fig. 6 show the energy consumption by transmitting and receiving packets at sender and receiver respectively. It is not obviously seen that all TCPs deploying delayed ACK yield better energy efficiency than normal ACK while consideration is addressed only communication relevant. Only Reno showed the energy overhead is at most 1 % less than the standard ACK. Nevertheless, these results imply that the number of packets reduced by delayed ACK cannot be significant affect to overall energy. In Fig.7 and Fig.8 show the all energy when idle energy is included, the Vegas presented the considerable improvement in saving energy by delayed ACK up to 15%. On the other hand, Reno, Newreno and SACK performed badly when using delayed ACK. The key factor is the energy consumption in idle time. Notice that if TCPs produce very long session time, energy spent in idle state will be significant to overall energy consumption as illustrated in Fig.9. Even though the number of ACK generated can be reduced but the effect to overall energy is trivial.
Newreno
SACK
Vegas
Fig. 8. Energy Ratio (including idle energy) at receiver
1.8 1.6
Session Time Ratio
Reno
20
1.4 1.2 1 0.8 0.6 0.4 0.2 0 1
5
10
20
30
40
50
Error Rate (%) Reno
Newr eno
SACK
Vegas
Fig. 9. Session Time Ratio V. CONCLUSIONS
1.8 1.6
Energy Ratio
1.4 1.2 1 0.8 0.6 0.4 0.2 0 1
5
10
20
30
40
50
Error Rate (%) Reno
Newreno
SACK
Vegas
Fig. 7. Energy Ratio (including idle energy) at sender
Our effort is to answer the question that delayed ACK is useful to wireless links. For the results, although the throughput of traditional TCPs suffer from using delayed ACK. But Vegas can show that TCP throughput is better when using delayed ACK. In term of bandwidth consumption, delayed ACK prove itself that it is useful for all TCP implementations even though not remarkable. We consider the energy issue as two aspects as described in section III. Energy expenditure of communication, both sender and receiver by using delayed ACK, is not considerably reduced by the number of ACK packets decreased. Nevertheless, when idle energy is taken into account, Vegas is the only one that gains the benefit from delayed ACKs. The main reason is that the session time is considerably shorter.
For the result, we do believe that delayed ACK is useful for implementing over wireless link. Vegas technique and Reno mechanism would be incorporated to create a new technique for improving both energy efficiency and performance. ACKNOWLEDGMENT We would like to thank Phil Allen to help me sort out the PCMCIA card extender issue. Also, Trevor Whitbread and Tom Millett for supporting all equipment to measure power consumption. REFERENCES [1] http://roland.grc.nasa.gov/~jishac/tools.htm, 2000. [2] http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux /Tools.html, 2001. [3] Hari Balakrishnan, Vakata Padmanabhan, and R.H.Katz, "The effect of Asymmetry on TCP Performance", MOBICOM, 1997. [4] P.Bhagwat, P.Bhattacharya, A.Krishna, and S.Tripathi, "Enhancing Throughput Over Wirless LANs using Channel State Dependent Packet Scheduling", INFOCOM, 1997. [5] Shugong Xu and Tarek Saadawi, "Evaluation for TCP with Delayed ACK Option in Wireless multi-hop Networks", Vehicular Technology Conference, 2001. [6] Stacy Johnson, "Increasing TCP Throughput by using an Extended Acknowledgement Interval", Ohio University, 1995. [7] Tanja Lang and D.Floreani, "Impact of delayed acknowledgements on TCP performance over sattellite links", Workshop on Wireless mobile internet, 2001. [8] V.Paxson, "Automated Packet Traced Analysis of TCP Implementation", SIGCOMM, 1997.