Enhancing Bluetooth TCP Throughput via Link Layer Packet Adaptation

Similar documents
Improving Bluetooth EDR Data Throughput Using FEC and Interleaving

Improving Wireless Link Throughput via Interleaved FEC

Delay Performance of the New Explicit Loss Notification TCP Technique for Wireless Networks

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

TCP PERFORMANCE FOR FUTURE IP-BASED WIRELESS NETWORKS

TCP over Wireless Networks Using Multiple. Saad Biaz Miten Mehta Steve West Nitin H. Vaidya. Texas A&M University. College Station, TX , USA

The TCP SACK-Aware Snoop Protocol for TCP over Wireless Networks

Improving Simultaneous Voice and Data Performance in Bluetooth Systems

ATCP: Improving TCP performance over mobile wireless environments

Improving TCP End to End Performance in Wireless LANs with Snoop Protocol

TCP-ELN: On the Protocol Aspects and Performance of Explicit Loss Notification for TCP over Wireless Networks

Inside Bluetooth. Host. Bluetooth. Module. Application RFCOMM SDP. Transport Interface. Transport Bus. Host Controller Interface

SIMULATION BASED ANALYSIS OF BLUETOOTH NETWORKS. M. Subramani and M. Ilyas

PERFORMANCE ANALYSIS OF SNOOP TCP WITH FREEZING AGENT OVER CDMA2000 NETWORKS

A New Modified Split-Connection Approach for Improving TCP Performance Over Wireless Networks

Wireless Challenges : Computer Networking. Overview. Routing to Mobile Nodes. Lecture 25: Wireless Networking

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks

CS263: Wireless Communications and Sensor Networks

CMPE 257: Wireless and Mobile Networking

Optimizing Packet Size via Maximizing Throughput Efficiency of ARQ on Bluetooth ACL Data Communication Link

TCP Congestion Control in Wired and Wireless networks

SWAP and TCP performance

INTERACTIONS BETWEEN TRANSMISSION POWER AND TCP THROUGHPUT FAIRNESS IN WIRELESS CDMA NETWORKS 1

CIS 632 / EEC 687 Mobile Computing

Differentiating Congestion vs. Random Loss: A Method for Improving TCP Performance over Wireless Links

Performance Analysis of TCP LBA and TCP TAHOE Approaches in g Standard Savreet KaurBrar 1, Sandeep Singh Kang 2

ADAPTIVE PACKET SELECTION ALGORITHM FOR BLUETOOTH DATA PACKETS

Evaluation of a Queue Management Method for TCP Communications over Multi-hop Wireless Links

Wireless Sensor Networks

Wireless TCP. TCP mechanism. Wireless Internet: TCP in Wireless. Wireless TCP: transport layer

Guide to Wireless Communications, 3 rd Edition. Objectives

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

Explicit Congestion Notification for Error Discrimination

TCP OVER AD HOC NETWORK

Strengthening Unlicensed Band Wireless Backhaul

Wireless Challenges : Computer Networking. Overview. Routing to Mobile Nodes. Lecture 24: Mobile and Wireless

ECS-087: Mobile Computing

TCP over wireless links

Bluetooth ACL Packet Selection Via Maximizing the Expected Throughput Efficiency of ARQ Protocol

Energy Evaluation for Bluetooth Link Layer Packet Selection Scheme

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

Analysis of TCP under Wireless Circumstances A Performance Evaluation

CROSS-LAYER APPROACHES TO WIRELESS COMMUNICATIONS AND NETWORKING

CS 268: Wireless Transport Protocols. Kevin Lai Feb 13, 2002

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

A Comparison of Mechanisms for Improving TCP Performance over Wireless Links

Performance Evaluation of Bluetooth Links in the Presence of Specific Types of Interference

ALL SAINTS COLLEGE OF TECHNOLOGY, BHOPAL

CC-SCTP: Chunk Checksum of SCTP for Enhancement of Throughput in Wireless Network Environments

A Routing Protocol and Energy Efficient Techniques in Bluetooth Scatternets

November 1998 doc.: IEEE /378 IEEE P Wireless LANs Extension of Bluetooth and Direct Sequence Interference Model.

Dynamic Deferred Acknowledgment Mechanism for Improving the Performance of TCP in Multi-Hop Wireless Networks

RD-TCP: Reorder Detecting TCP

Approaches of Wireless TCP Enhancement and A New Proposal Based on Congestion Coherence

TDM Backhaul Over Unlicensed Bands

Transmission Control Protocol (TCP)

Interference avoidance in wireless multi-hop networks 1

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

Wireless TCP Performance Issues

Impact of transmission errors on TCP performance. Outline. Random Errors

Transport layer issues

Advanced Computer Networks. Wireless TCP

Chapter 13 TRANSPORT. Mobile Computing Winter 2005 / Overview. TCP Overview. TCP slow-start. Motivation Simple analysis Various TCP mechanisms

Bluetooth: Short-range Wireless Communication

TCP Probe: A TCP with built-in Path Capacity Estimation 1

AN EXPLICIT LOSS AND HANDOFF NOTIFICATION SCHEME IN TCP FOR CELLULAR MOBILE SYSTEM

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Bluetooth Wireless Technology meets CAN

TCP PERFORMANCE USING SPLITTING OVER THE SATELLITE LINK

Local Area Networks NETW 901

Improving TCP Performance over Wireless Networks using Loss Predictors

ENHANCING ENERGY EFFICIENT TCP BY PARTIAL RELIABILITY

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

Performance Enhancement Of TCP For Wireless Network

TCP Flavors Simulation Evaluations over Noisy Environment

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

An analytical model for evaluating utilization of tcp reno

Evaluating the Eifel Algorithm for TCP in a GPRS Network

Hierarchical Cache Design for Enhancing TCP Over Heterogeneous Networks With Wired and Wireless Links

Master. Slave. Master. Slaves. TCP/IP Traffic with Efficient Bluetooth Technology. Shafqat Hameed 1, Umar F.Khan 2, *Muhammad Saleem 3

Supporting mobility only on lower layers up to the network layer is not

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

Does current Internet Transport work over Wireless? Reviewing the status of IETF work in this area

An Enhanced IEEE Retransmission Scheme

UCLA Computer Science Department Technical Report CSD-TR No

A Cross-layer Scheme for TCP Performance Improvement in Wireless LANs

CSCI Topics: Internet Programming Fall 2008

DEPLOYMENT OF FAIR SHARE AND SMART START TECHNIQUE FOR OPTIMAL USE OF AVAILABLE CAPACITY IN TCP CONGESTION CONTROL

PERFORMANCE EVALUATION OF TCP CONGESTION CONTROL ALGORITHMS OVER UMTS

Amarjeet Singh. February 7, 2012

Enhancing the DCF mechanism in noisy environment

Chapter 12 Network Protocols

TRANSMISSION CONTROL PROTOCOL

e-pg Pathshala Quadrant 1 e-text

RED behavior with different packet sizes

TCP Optimal Performance in Wireless Networks Applications

TCP Congestion Control in Wired and Wireless Networks

Rate Based Pacing with Various TCP Variants

cs/ee 143 Communication Networks

Review: Performance Evaluation of TCP Congestion Control Mechanisms Using Random-Way-Point Mobility Model

Transcription:

Enhancing Bluetooth TCP Throughput via Link Layer Packet Adaptation Ling-Jyh Chen, Rohit Kapoor, M. Y. Sanadidi, Mario Gerla UCLA Computer Science Department, Los Angeles, CA 995, USA {cclljj, rohitk, medy, gerla}@cs.ucla.edu Abstract TCP throughput limitations over wireless links have received considerable attention in the last few years. One of the problems is that TCP congestion control interprets packet losses as an indication of congestion, whereas in wireless links, losses could be due to transient link quality degradations. In this paper, we propose and study a link layer solution and evaluate its effects on TCP in the context of Bluetooth. We enhance the Bluetooth link layer to make use of channel state information and accordingly adapt the Bluetooth packet type to enhance TCP throughput. We propose a simple analytical method to determine the optimal packet type for a given channel state by adding FEC support or changing packet size. Since wireless interfaces, such as 82.11 or Bluetooth, can provide information regarding the channel state using relevant APIs, this simple enhancement can easily be added to the link layer. We implemented this functionality in the Bluetooth link layer. Our simulation experiments show that the proposed adaptive packet type solution significantly improves TCP throughput. The throughput enhancement increases with the error rate. For high error rates close to.1%, the link layer enhanced with the adaptive scheme is able to maintain good TCP throughput, whereas throughput is almost zero when the adaptive scheme is not used. Keywords TCP; Bluetooth; Adaptive Link Layer; FEC; Link Quality 1

1. INTRODUCTION TCP [1] is the most widely used transport protocol on the Internet. Its congestion control scheme was designed for the Internet when most links were fiber optics with minimal or no error losses. With the huge growth in the popularity of wireless technologies such as 82.11b, Bluetooth and Cellular, the shortcomings in the operation of TCP over wireless links has become an important issue. Wireless links are characterized by higher bit error rates and this causes inefficiencies in the operation of TCP [2]. Essentially, any perceived packet loss (occurring because of error or buffer overflow) is construed by a TCP sender as occurring due to buffer overflow. The response of TCP to all such events is to invoke its congestion control procedures, resulting in unnecessary window reduction, which causes a drop in the TCP throughput. Note, though, that some of the packet losses occur due to corrupted packets being dropped by the link layer and invoking the congestion avoidance procedures when these events occur is not desirable. Various enhancements to TCP have been proposed to make TCP behave more intelligently in the presence of such wireless link errors. These are discussed later in the section on related work. Most wireless interfaces available today monitor the characteristics of the medium and can provide such information when appropriate APIs are invoked. As explained in [3], using this information, the optimal link layer packet type for the prevailing channel conditions can be adaptively selected. By optimal, we mean the link layer packet type (or link layer packet size) that maximizes the throughput at the link layer. In this paper, we show the effects of adaptively selecting the optimal link layer packet type on the performance of TCP over a wireless link. Using Bluetooth [4] as the wireless technology, we present a simple analytical method to select the optimal link layer packet type, given the channel conditions. We perform simulations under different conditions to show that TCP throughput can be improved significantly by the use of the optimal packet type. One thing to be noted is that though we have demonstrated our results using Bluetooth, this technique could be applied to any other wireless technology, as long as it is possible to adapt the packet length or the use of Forward Error Correction according to the prevailing channel conditions. 2

In Section 2, we summarize relevant Bluetooth features, and in Section 3 review related work on TCP. In Section 4, we present the analytical method to select the appropriate packet type and discuss its implementation in Bluetooth. In Section 5 we present simulation results, and provide concluding remarks in Section 6. 2. BLUETOOTH OVERVIEW Bluetooth is a short-range radio technology operating in the unlicensed 2.4GHz ISM (Industrial- Scientific-Medical) frequency band. Its original goal was to replace the numerous proprietary cables to provide a universal interface for devices to communicate with each other. But it soon became a good solution to interconnect devices to form a personal area network, primarily due to the low cost, low power and small size of Bluetooth chips. Bluetooth employs FHSS (Frequency Hopping Spread Spectrum) to avoid interference. There are 79 hopping frequencies (23 in some countries), each having a bandwidth of 1MHz. Frequency hopping is combined with fast ARQ (Automatic Repeat Request), CRC (Cyclic Redundancy Check), and FEC (Forward Error Correction) to achieve high reliability on the wireless links. Bluetooth units can be connected to each other to form a piconet, which consists of up to eight active units. One of the units acts as a master and the others act as slaves. All the data/control packet transmissions are coordinated by the master. Slave units can only send in the slave-to-master slot after being addressed in the preceding master-to-slave slot. Each slot lasts for 625 microseconds. For real-time data such as voice, Synchronous Connection Oriented (SCO) links are used, while for data transmission, Asynchronous Connectionless Link (ACL) links are used. There are several ACL packet types, differing in packet length (and consequently, data transmission rate) and whether they are FEC coded or not. The FEC coding scheme used in ACL DM mode is a (15, 1) shortened Hamming code, in which each block of 1 information bits is encoded into a 15 bit codeword, and it is capable of correcting single bit error in each block. Table 1 shows the different ACL packet types and their properties. 3

Mode FEC Packet Size DM1 2/3 17 bytes DM3 2/3 121 bytes DM5 2/3 227 bytes Symmetric Asymmetric 18.8 kbps 18.8 kbps 18.8 kbps 258.1 kbps 387.2 kbps 54.4 kbps 286.7 kbps 477.8 kbps 36.3 kbps DH1 no 27 bytes 172.8 kbps 172.8 kbps 172.8 kbps DH3 no 183 bytes DH5 no 339 bytes 39.4 kbps 585.6 kbps 86.4 kbps 433.9 kbps 723.2 kbps 57.6 kbps Table 1: Packet types for Bluetooth ACL connections Note that, in the symmetric connection mode, both master and slave nodes will occupy the same amount of Bluetooth time slots (625 microseconds in each time slot); whereas in the asymmetric connection mode, the Bluetooth link will occupy 1/3/5 time slots (for DM1/DM3/DM5 or DH1/DH3/DH5 mode) in one direction of this link and only one time slot in the opposite direction. 3. RELATED WORK The impact of wireless link quality on TCP has been studied extensively in the literature. One of the initial papers to focus on this issue was [2], in which the authors also presented the Snoop solution for TCP. The main reason for the degraded performance of TCP over high bit error rate links is that it treats all lost packets as having been dropped due to congestion in the network and consequently slows down its rate of sending data. This assumption is valid for wired networks where BERs on such links are extremely low (of the order of 1-9 ) and most packet drops are due to congestion. On wireless links, on the other hand, the quality of the channel can have large variations due to interference and mobility, and BERs can be much higher (as high as 1-3 ). Thus, the above TCP philosophy of treating all lost packets as congestion losses can be rendered invalid. This wrong interpretation of the cause of packet loss can lead to reduced performance. Such problems become even more serious when contiguous packet losses happen, in which case the TCP sender reduces its congestion window size and backs off its retransmission timeout (RTO) to a very large time interval. This can cause the TCP sender to be idle for a long period of time. In fact, a number of studies have shown severely degraded performance for TCP under extremely bad link conditions [2] [5]. 4

Several studies have pointed out possible solutions to TCP problems in error-prone environments. Apart from the Snoop solution, which makes uses of a Snoop Agent to cache TCP segments and retransmits segments only on the wireless link, one of the first works to identify a solution for TCP s degraded performance over wireless links was the Indirect TCP (I-TCP) protocol [6]. I-TCP splits a connection between a fixed station and a mobile host into two connections: one between the fixed host and the base station, and the other between the base station and the mobile host. Split connections are able to separate flow and congestion control on the wired and wireless links and enhance performance, but the violation of the end-to-end semantics is its primary drawback. Some other prominent works have been the Explicit Loss Notification (ELN) scheme [7], and TCP Westwood (TCPW) [8]. ELN is capable of distinguishing packet loss due to congestion from the one by transmission errors, but like Snoop, there is state maintenance overhead at the base station. On the other hand, TCPW employs an end-to-end approach to adjust the congestion window by the estimated Eligible Rate of the connection, but it still suffers from low throughput if the bit error rate is really high. To overcome the effect of low and varying link quality on throughput, the selection of the optimal link layer packet size, given estimated channel conditions, has been proposed in [3], in which the authors analytically evaluate the optimal link layer packet size based on the current bit error rate of the channel. In this paper, we extend this solution and apply it to the Bluetooth link layer. Moreover, we will study the benefit of enabling the link layer to select the optimal packet size, as well as enabling/disabling FEC encoding, on the performance of TCP. 4. LINK LAYER WITH OPTIMAL PACKET TYPE Wireless link layers of popular technologies such as Bluetooth and 82.11 can provide information regarding the quality of the channel by the use of APIs called from upper layers. For example, in the Bluetooth specification, the Get_Link_Quality function call can be used to obtain link quality information. Get_Link_Quality returns the value of the Link Quality between and 255, with the higher value 5

representing a better channel. The BT standard allows vendors to determine how to measure Link Quality and map it to a number between and 255. As an example, for Bluetooth cards containing CSR (Cambridge Silicon Radio [9]) chipsets, the Link Quality is calculated from the Bit Error Rate in the following manner: If BER (Bit Error Rate) =, LQ (Link Quality) = 255; perfect channel. If BER <= 4/4, LQ = 255 BER * 4. If 4/4 < BER <= 4/4, LQ = 215 ((BER / 32) * 4). If 4/4 < BER <= 4/4, LQ = 15 ((BER / 256) * 4). The Link Quality is the average bit error rate on the link with a time-weighted average in units of 1/4. Fig 1 shows the value of the Link Quality versus the BER for the CSR chipset, which we used in some of our experiments. Link Quality 3 25 2 15 1 5.1.2.2.3.4.5.6.6.7.8.9.1 Bit Error Rate Fig 1: Link Quality vs BER for the CSR chipset Packet Type Packet Size (bits) Packet Length (Bluetooth Slots) DH5 2712 5 DM5 1816 5 DH3 1464 3 DM3 968 3 DH1 216 1 DM1 136 1 Table 2: Packet Sizes and Lengths of ACL packet types 4.1 Analytical Evaluation of Optimal Packet Type We now describe a simple analysis to determine the relative performance of different packet types under different channel BERs (bit error rates). The analysis can then be used to determine the threshold values of the BER, i.e., values at which the packet type that gives the best performance changes. 6

Suppose the BER is b, the packet size (which is given in Table 1 for different packet types) is s bits and the number of Bluetooth slots occupied by a packet type (also given in Table 2) is n. The packet error rate, p, for DH packets is: p = 1 s 1 ( b) (1) Recalling that DM packets are encoded with a 2/3 block FEC, i.e., in every block, 15 bits are used to encode 1 bits of data, and this block coding can correct 1 bit in every block of 15 bits. The packet error rate, p, for DM packets can be approximated as: p 15 14 s ((1 b ) + 15 b (1 b ) ) / 15 = 1 (2) Assuming that the ARQ scheme retransmits a packet until the acknowledgement of a successful reception, the average number of attempts, N, needed to successfully transmit one packet is given by: N = 1 (1 p ) + 2 p (1 p ) + 3 p p (1 p ) +... N = 1 1 p (3) The effective link layer throughput T is then given by: T = N s s (1 p ) = ( n + 1) 625 µ s.625 ( n + 1) (4) where s (packet size in bits) and n (length of packet in Bluetooth slots) for different packets as given in Table 2, and 625µs is the length of a Bluetooth slot. Using Eq. 4, we plot the effective throughput of Bluetooth packets versus the bit error rate in Fig 2. Assuming UDP traffic sources, figure 3 shows the relation between bit error rate and packet error rate for different ACL packet types. The robustness of the coded DM packet types is visible in the figure. As the bit 7

error rate increases, the packet error rate of DM packet types increases at a much smaller rate than that of the DH packet types. The thresholds for best packet type can be determined by comparing the values of throughput T for different BERs and selecting the packet type that gives the largest T as the best packet type for that BER. These thresholds are given in Table 3. 7 6 5 4 3 2 1 DH5 DH3 DH1 DM5 DM3 DM1 Packet Error Rate 1.8.6.4.2 DH5 DH3 DH1 DM5 DM3 DM1.2.4.6.8.1 Bit Error Rate Figure 2: Bluetooth throughput of different ACL packet types.2.4.6.8.1 Bit Error Rate Figure 3: Packet Error Rate vs Bit Error Rate of different pkt types Mode BER range DH5 <.1529 DM5 >.1529, and <.6795 DM3 >.6695, and <.157813 DM1 >.157813 Table 3: Analytically calculated thresholds at which different packet types show best performance Using the above analysis, we added a feature to the Bluetooth link layer to enable it to select the optimal packet type, using the thresholds in Table 3, dynamically based on link conditions. We implemented this functionality in our simulator. In later sections, we refer to this as the enhanced adaptive packet type (or APT) link layer. 8

5. SIMULATION RESULTS In this section, we present simulation results showing the improvement in performance when using the enhanced Bluetooth link layer. The Bluetooth simulation model was developed as an extension to NS-2 (Network Simulator) [1]. The simulation model implements most of the features of the Bluetooth baseband layer, such as frequency hopping, time division duplexing, multi-slot packets, fragmentation and reassembly of packets. In addition, the simulator enables scatternets and inter-piconet communication by defining gateway nodes to forward packets between piconets. The channel model assumes independent bit errors. The Bluetooth topologies we used in the simulations is shown in Fig 4. Black circles represent master nodes, and white circles represent slave (or gateway slave) nodes. Each simulation was run for 6 seconds. We varied the bit error rate to obtain performance results under different conditions. We also ran connections over a different number of hops and tried different versions of TCP (Tahoe [11], Reno [11], and NewReno [12]). The TCP packet size was 5 bytes, and the buffer size of each Bluetooth node was set to 9 bytes. Note that in the 2-hop case, the capacity of the master (black node) will be shared between the two slaves. Thus, the maximum throughput in this case is half of the maximum throughput in the 1-hop case. For the 4-hop case, the maximum throughput is the same as that of the 2-hop case. Figure 4: (a) 1 hop (b) 2 hop (c) 4 hop situation 5.1. Fixed bit error rate In the first set of simulations, we ran a TCP NewReno connection over 1, 2 and 4 Bluetooth hops. We also considered various values of the bit error rate on the link. 9

6 5 4 3 2 1 TCP Newreno - 1 hop 25 2 15 1 5 TCP Newreno - 2 hop.1.2.3.4.5.6.7.8.9.1.2.3.4.5.6.7.8.9 12 1 8 6 4 2 TCP Newreno - 4 hop.1.2.3.4.5.6.7.8.9 Figure 5: TCP Newreno throughput with/without the APT link layer for (a) 1-hop (b) 2-hops (c) 4-hops Figures 5 (a), (b) and (c) show the throughput obtained by TCP NewReno when running over the enhanced link layer and compare these results with those of a regular link layer. The enhanced link layer clearly outperforms the regular link layer. In fact, for high bit error rates, the throughput of NewReno over a regular link layer goes to zero, while that over the enhanced link layer falls only slightly. Fig 6 (a) and (b) show the throughput obtained by TCP Tahoe over the enhanced and regular link layers, while Fig 7 (a), (b) and (c) show the same for TCP Reno. These TCP versions also gain significantly from using the enhanced link layer. TCP Tahoe - 1 hop 5 No APT 45 APT 4 35 3 25 2 15 1 5.1.2.3.4.5.6.7.8.9 25 2 15 1 5 TCP Tahoe - 2 hop.1.2.3.4.5.6.7.8.9 Figure 6: TCP Tahoe throughput with/without the APT link layer for (a) 1-hop (b) 2-hops No APT APT 1

6 5 TCP Reno - 1 hop No APT APT 25 2 TCP Reno - 2 hop No APT APT 4 3 2 15 1 1 5.1.2.3.4.5.6.7.8.9.1.2.3.4.5.6.7.8.9 Figure 7: TCP Reno throughput with/without the APT link layer for (a) 1-hop (b) 2-hops 5.2. Varying bit error rate We then considered a changing bit error rate environment, in which the bit error rate switches from.1 to.5 and back every 1 second. The aim was to evaluate the adaptation of the APT link layer under changing channel conditions. The TCP version used was NewReno. Fig 8 (a), (b) and (c) show the throughput results over regular and enhanced link layers. In these results, the TCP throughput is sampled every 1 seconds. The improvement in throughput is again very significant, in some cases almost an order of magnitude. 6 5 TCP Newreno - 1 hop 3 25 TCP Newreno - 2 hop 4 3 2 1 2 15 1 5 3 32 34 36 38 4 Time (sec) 3 32 34 36 38 4 Time (sec) 1 8 6 4 2 TCP Newreno - 4 hop 3 32 34 36 38 4 Time (sec) Figure 8: Newreno throughput with/ (bit error rate is changing every 1 second) for (a) 1-hop (b) 2-hops (c) 4-hops 11

5.3. APT with real bit error rate measurement In order to simulate the APT enabled link layer with more realistic error behavior, we took traces of the channel behavior of a real Bluetooth environment over a 5-minute period and plugged these into our simulator. The measurements environment consisted of two Xircom Bluetooth cards (containing the CSR chipset) at a 5-meter distance, with 82.11b devices, placed near one of the Bluetooth devices, generating interference. We used the Get_Link_Quality function (defined earlier) to obtain the Link Quality at every 1 msec from the Bluetooth device close to the 82.11 devices and converted this into the bit error rate, using the technique explained in Section 4. Fig 9 shows the measured bit error rate over the 1-minute period..4.35.3 Link Quality Measurement BER.25.2.15.1.5 1 2 3 4 5 6 Time (1ms) Figure 9: Measured Bit Error Rate in 5 minutes We plugged this time varying BER trace into our simulator and ran TCP NewReno over 1, 2 and 4-hops. The results are shown in Fig 1. Clearly, the enhanced link layer outperforms the regular link layer. 12

6 5 TCP Newreno - 1 hop 25 2 TCP Newreno - 2 hop 4 3 2 15 1 1 5 4 42 44 46 48 5 Time (sec) 4 42 44 46 48 5 Time (sec) 1 TCP Newreno - 4 hop 8 6 4 2 4 42 44 46 48 5 Time (sec) Figure 1: NewReno throughput with/ (bit error rate is changing every 1 second) for (a) 1-hop (b) 2-hops (c) 4-hops (with measured bit error rate) 6. CONCLUSION In this paper, we evaluated the effect of selecting the optimal packet type (size) at the link layer on the performance of TCP. We described a simple analytical model to select the optimal packet type when using Bluetooth. We presented an enhanced link layer, which selects the optimal packet type based on channel conditions. Using simulation experiments, we showed that the throughput of TCP is improved significantly when the enhanced link layer is used, particularly when the bit error rate on the wireless link is high. In a sense, these results show that a well-designed and optimized link layer can make a big difference in performance in a wireless environment. REFERENCES [1] J. Postel, Transmission Control Protocol, RFC 793, Sept. 1981 [2] H. Balakrishnan, S. Seshan, E. Amir, R. Katz, Improving TCP/IP Performance over Wireless Networks, Proc. of 1st ACM Conf. on Mobile Computing and Networking, Berkeley, CA, November 1995. 13

[3] E. Modiano, "A Simple Algorithm for Optimizing the Packet Size Used in ARQ Protocols Based on Retransmission History", Proc. of the Thirty-First Conference on Information Science and Systems, Baltimore, MD, March 1997. [4] Specification of the Bluetooth System Core vol.1 v1.1, www.bluetooth.com [5] H. Balakrishnan, V. Padmanabhan, S. Seshan, R. Katz., A Comparison of Mechanisms for Improving TCP Performance over Wireless Links, IEEE/ACM Transactions on Networking, December 1997. [6] A. Bakre, B.R. Badrinath, I-TCP: Indirect TCP for Mobile Hosts, 15th International Conference on Distributed Computing Systems, 1994. [7] H. Balakrishnan, R. Katz., Explicit loss notification and wireless web performance, In Proceedings of the IEEE Globecom Internet Mini-Conference, November 1998. [8] C. Casetti, M. Gerla, S. Mascolo, M. Y. Sanadidi, and R. Wang, "TCP Westwood: Bandwidth Estimation for Enhanced Transport over Wireless Links", In Proceedings of ACM Mobicom 21, pp 287-297, Rome, Italy, July 16-21 21. [9] Cambridge Silicon Radio, www.csr.com [1] Network Simulator (NS-2), www.mash.cs.berkeley.edu/ns/ [11] W. Stevens, "TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms", RFC 21, January 1997. [12] S. Floyd, T. Henderson, The NewReno Modification to TCPs Fast Recovery Algorithm, RFC 2582. 14