Fast handover for Bluetooth network access systems

1 downloads 455 Views 174KB Size Report
Telecommunication R&D Center, Samsung Electronics, Korea, osok.song@samsung.com. O + School ..... Laptop computers were used as mobile devices. Each.
Fast handover for Bluetooth network access systems *

Osok Song , Dong-Young KimO, Chong-Ho Choi+ and Hyun-Sang Jang† * O+

Telecommunication R&D Center, Samsung Electronics, Korea, [email protected]

School of Electrical Engineering and Computer Science, Seoul National University, {young, chchoi}@csl.snu.ac.kr †

Initium Co. Ltd., Korea, [email protected]

Abastract When Bluetooth is used as an interface between mobile devices and network systems, the devices must maintain their connections by handovers between access points. However, handover is not defined by the standard Bluetooth specification. Several handover methods have been proposed, but they take a few seconds for reconnection because of relatively complex inquiry and paging procedures. A handover method is proposed that reduces the handover time by eliminating the inquiry procedure and using location information of access points and sharing Bluetooth device addresses of mobile devices. The experiments show that the average handover time is several hundred milliseconds, about ten times faster than with methods involving inquiry procedures.

1. Introduction Bluetooth is a short-range wireless c o m m u n i c a t i o n technology ideal for small, personal devices. It was originally designed to replace the short cables that connect PCs, printers, and networks. However, it has expanded its usage as an interface for mobile devices to access network systems. In the Bluetooth specification, the LAN access profile and the personal area network (PAN) profile are defined to support network access [1]. One of the major limitations of the Bluetooth network access system is the lack of handover to manage micromobility. When a user roams more than 10 m from an access point, the connection is broken. Baatz et al. proposed a handover method for the BLUEPAC system [2][3]. During a handover procedure, a mobile device must find a new access point through the inquiry procedure and connect to the access point that responds first. This method is almost the same as the initial connection setup procedure and suffers a long disconnection time because of the long inquiry procedure. Kraemer reported the experience of running a Bluetooth-based wireless network access system during CeBIT 2001 [5]. His handover algorithm required access points to perform the inquiry procedure to determine the locations of mobile devices. Each mobile device was then connected to its nearest access point. This work successfully implemented a network access system based on Bluetooth, but long handover times, which were reported to be up to 5 s, were a big problem. In this paper, a new handover method is proposed for Bluetooth network access systems. The proposed method focuses on reducing the handover time and provides a feasible solution with currently available off-the-shelf Bluetooth modules. The new method does not require the

inquiry procedure and outperforms previously proposed method in terms of the handover time. This paper is organized as follows. The following section summarizes Bluetooth connection mechanisms relevant to the handover method. Section 3 proposes our new handover method. Experimental results are presented in Section 4. Finally, Section 5 gives concluding remarks.

2. Connection establishment in Bluetooth [1] In this section, the Bluetooth connection establishment procedure, which is relevant to the Bluetooth handover method, is summarized. Bluetooth uses a frequency-hopping mechanism and a slotted Time-Division Duplex (TDD) scheme. The length of one slot is 625 ms. When two or more Bluetooth devices are connected, they form a piconet. One unit is designated master and controls traffic on the piconet while the others act as slaves. The hopping frequencies are determined by the master’s Bluetooth device address (BD_ADDR) and clock value (CLKN). To establish new connections, Bluetooth devices must synchronize their timing and hopping frequencies. This synchronization, called a baseband connection setup, consists of two procedures, inquiry and paging. With the inquiry procedure, a device discovers nearby devices. With the paging procedure, an actual connection is established. The device that wants to discover new devices performs the inquiry procedure. The inquiring device collects information from nearby Bluetooth devices such as their B D_ADDRs, clock offsets, and page-scan modes. The inquiry procedure continues until the unit receives a sufficient number of responses, or until an inquiry timeout has been reached. During inquiry, the device repeatedly

transmits inquiry messages on 32 frequencies, according to the inquiry hopping sequence. To respond to the inquiry message, devices perform an inquiry scan periodically. Upon receiving the first inquiry message, to prevent possible contention problem s the device waits (backs off) for a random amount of time. When the responding device wakes up and receives the second inquiry message, it sends an inquiry response message containing its BD_ADDR and clock value. To establish a connection, a device that is to become a master carries out the paging procedure. The paging procedure is quite similar to the inquiry procedure, but it uses a page hopping sequence dedicated to a future slave device. The page hopping sequence is derived from the slave’s BD_ADDR and clock value obtained from the previous inquiry procedure. The page hopping sequence is divided into two paging trains, A and B. Train A includes 16 hop frequencies around the slave’s predicted hop frequency. It takes 10 ms (16 slots) to transmit one paging train. A device that wants to accept a connection request scans paging message s periodically. If the slave receives a paging message from the master, the two devices exchange the slave response and the master response messages in consecutive slots, and connection is established. The device performing inquiry and/or paging has no idea when other devices scan the inquiry message and/or the paging message. As a result, the inquiry and the paging procedures typically take several seconds to set up a connection.

3. Proposed Bluetooth handover 3.1 Structure of the Bluetooth network access system The Bluetooth network access system enables mobile devices equipped with a Bluetooth module to connect to IP-based networks. It is composed of three functional elements: a handover agent, access points, and mobile devices, as depicted in Figure 1. The Internet

Handover agent

Access point Access point Access point

Access point

Mobile device 2 Service area Mobile device 1

Figure 1. Bluetooth network access system The handover agent behaves as a gateway between the local network and the Internet. It manages information about access points and currently connected mobile

devices, and routes packets to mobile devices. When a mobile device uses the LAN access profile, it uses PPP tunneling, which is employed in BlueSky [4]. PPP servers run on the handover agent rather than the access points. The access point simply forwards PPP packets between the mobile devices and the handover agent. With PPP tunneling, the PPP connection between a mobile device and a new access point can be maintained by changing one end-point of the PPP tunnel on handover. When a mobile device uses the PAN profile, the handover agent maintains a routing table containing pairs of IP addresses of mobile devices and their currently connected access points. The routing table is updated after a successful handover. An access point is a device that has one or more Bluetooth radio modules and acts as a bridge, interfacing mobile devices and the wired network. Access points and the handover agent are connected through a wired network such as Ethernet. Access points are installed at predetermined positions to provide continuous coverage throughout a service area. Mobile devices are Bluetooth-enabled portable devices with TCP/IP protocol stacks. They access the network by connecting to an access point. Some examples are Bluetooth-enabled cell phones, PDAs, and laptop computers. In the indoor environment where the Bluetooth network access system is likely to be applied, users of mobile devices are assumed to be pedestrians. Information about the relative locations of the access points in the networking system is necessary for the proposed handover method. The location information for access points is stored in a database in the handover agent and sent to the access points when the access points are connected to the handover agent for the first time.

3.2 Handover procedure In this section, the detailed procedure of the proposed Bluetooth handover is explained. When a mobile device enters the service area of a Bluetooth network system and wants to access the network, it connects to a nearby access point following either the LAN access profile or the PAN profile. When the mobile device moves away from the access point currently connected AP0 , a connection to another access point becomes necessary. The access points around AP0 comprise a candidate set of access points to which the mobile device may connect after handover. The candidate access points are denoted as AP1 , AP2 ,...., APn . When the handover measurements fall below the threshold, AP0 starts the handover procedure as follows. 1) AP0 notifies the start of handover to the handover agent. The handover agent begins to buffer incoming packets heading to the mobile device. 2) AP0 closes the current connection with the mobile device. One byte of the ‘reason’ command parameter should be set in the HCI_DISCONNECT command, indicating the reason for ending the connection. To distinguish disconnection for handover from those

because of other reasons, we set the reason parameter to 0xFF, one of the values reserved for future use in the current version of the Bluetooth specification. 3) The mobile device enters a continuous page-scan mode for Thandover_t imeout seconds. Thandover_t imeout must be long enough for all access points in the candidate set to page the mobile device. 4) AP0 selects access points from the candidate set so that the distances between selected access points is great enough for them not to interfere with each other during the paging procedure. AP0 sends handover command messages containing information about the mobile device to the selected access points. 5) The selected access points try to page the mobile device using the mobile device’s BD_ADDR. The selected access points transmit paging messages for Tpage_timeo ut . To overcome possible wireless channel errors, each access point repeats the paging trains N rep times before it gives up attempting to connect to the mobile device. Let us denote Tpage_len as the time for sending paging messages once over each frequency in the paging trains. The page timeout Tpage_timeo ut of an

paged device is the difference between CLKN of the two devices, and is obtained through the inquiry procedure. The clock offset is an optional parameter in the paging procedure, but it can accelerate the connection setup because the page-scan frequency of the slave device can be estimated. When clock offset is not used in the paging procedure, access points must send paging messages over 32 frequencies of paging sequences A and B. If the estimated page-scan frequency of the mobile device is available, the paging access point can use only the first paging sequence A containing 16 frequencies around the estimated scanning frequency of the mobile device. The time for sending paging messages thus reduces by half. Another optimization in handover can be obtained by considering the movement of mobile devices. AP0 maintains priorities of the candidate access points to determine which access point should try first to connect to a mobile device in handover. When handover to an access point is successful, the priority of this access point is increased. By repeating this process, the priorities reflect the movement patterns of mobile devices, and the access point to which mobile devices move most frequently is selected first in handover.

access point is then N rep × Tpage_len .

4. Implementation and experiment

6-1) If all selected access points fail to connect to the mobile device, AP0 chooses another set of access points from the candidate set and steps 4 and 5 are repeated. 6-2) If an access point succeeds in setting up a connection with the mobile device, it sends a handover success message to AP0 . No master/slave switching occurs during the handover procedure, because the access point initiates the connection establishment. Upon receiving the message, AP0 notifies the handover agent of the completion of handover. The handover agent reroutes the packets toward the mobile device by making a new PPP tunnel or updating the routing table. 7) If all access points in the candidate set AP1 , AP2 ,...., APn fail to connect to the mobile device,

4.1 Experimental setup

AP0 tries to page the mobile host one last time in case the mobile device has returned to the coverage area of AP0 . 8) If no access points can connect to the mobile device, the handover fails and all the resources allocated to the mobile device are released. The main idea of the proposed handover method is to make the access points do paging by turns while the mobile device remains in a continuous page-scan mode. To guarantee successful handover, the candidate set must be selected to cover the whole area the user may walk around during the handover procedure. In addition to the handover method described above, we utilize clock information to reduce the handover time further. The clock offset between the paging device and the

To demonstrate the effectiveness of the proposed handover method, the Bluetooth network access system was implemented, following the LAN access profile. The access point consisted of a Linux-based Strong ARM system for a host and the Bluetooth module for a host controller. The handover agent was implemented with a personal computer running Linux. The handover agent and the access points communicated via Ethernet. Laptop computers were used as mobile devices. Each laptop was equipped with a USB Bluetooth module and ran a process for network access following the LAN access profile. It also ran a monitoring process that checked HCI_Disconnect_Complete events and set the host controller to a continuous page-scan mode. For experiments, four access points AP0 , AP1 , AP2 , and AP3 were installed near the corners of a hall that was 25 m long and 24 m wide. At first, the mobile device was connected with AP0 . As the mobile device moved away and the handover measurements went below the thresholds, AP0 disconnected the mobile device and the access points tried to connect to the mobile device in the order AP1 , AP2 , and AP3 .

4.2 Results The experimental results for the baseband connection setup time Z i are shown in Figure 2. As it was impossible to measure the exact time for synchronizing hopping frequencies of the mobile device and the access points, we checked the time between the HCI_disconnection _complete event and HCI_connection_complete event at

the mobile device. The variables in the experiments are: 1) the number of paging repetitions N rep ; 2) the order of paging trials s ( APi ) for successful handover; and 3) the usage of clock offset. Ten measurements were performed for each case. The maximum baseband connection setup time was about 330 ms. The experimental results also show that using clock offset reduces the baseband connection setup time. The standard deviations for the corrected data are between 4.67 and 12.1. The expectation of overall handover time E (Z ) is calculated as the average of Z i for i = 1,2,3 . (a) Zi vs. S(AP i) : experimental results

commands to be implemented with off-the-shelf Bluetooth modules, and can be applied to systems that follow the standard profiles such as the LAN access profile and the PAN profile. In particular, the proposed method makes handover fast by removing inquiry from the reconnection process. Handover takes several hundred milliseconds, which is about ten times faster than other Bluetooth handover proposals. We implemented a Bluetooth network access system based on the LAP profile and applied the proposed handover method to the system. The experimental results showed the effectiveness of the method.

(b) E(Z) vs. Nrep : experimental results

500

15

x 10

4

300 N

rep

not using clock offset using clock offset

=5 not using clock offset

Nrep =4 not using clock offset

450

N

rep

=3 not using clock offset 250

Nrep =5 using clock offset

400

N

rep

=4 using clock offset

Nrep =3 using clock offset 10

350 sequence number

200

(ms) 150 E(Z)

250

Z

i

(ms)

300

200

handover starts 5

100 150

100 50

handover completes without handover with handover

50 0

0

0

0 1

1.5

2 S(APi)

2.5

3

3

3.5

4 Nrep

4.5

0.5

5

Figure 2. Experimental results for the baseband connection setup time Total handover time can be measured as the link disconnection time because of handover. This includes the baseband connection setup and the higher-layer connection setup. To measure the overall handover time, we checked the sequence number of TCP connections of a FTP session. Figure 3 shows the sequence numbers of two FTP sessions, one without handover and the other experiencing handover. The duration of link disconnection is about 500 ms and did not invoke the TCP congestion control algorithm because of the relatively short link disconnection time. The baseband connection setup time was 100 ms, so the higherlayer connection setup consumed 400 ms. Although not observed in the experiments, link disconnection during handover can trigger the congestion control algorithm of TCP and degrade network performance. Much work has been done to improve the performance of TCP in wireless environments [6]. Some of this work can be combined with the proposed handover method and applied to the Bluetooth network access system.

5. Conclusions In this paper, a novel handover method for the Bluetooth network access system is proposed. The Bluetooth specification does not cover handover and this is a big obstacle when mobile devices use Bluetooth to access a network. Because the area covered by one access point is small in the Bluetooth network access system, handover is crucial to manage micro-mobility of mobile devices. The proposed method is based on the standard HCI

1

1.5

2 2.5 time(sec)

3

3.5

4

4.5

Figure 3. FTP sessions with handover and without handover

6. Reference [1] Specification of Bluetooth System, www.bluetooth.com. [2] M. Albrecht, M. Frank, P. Martini, M. Schetelig, A. Vilavaara and A. Wenzel, “IP Services over Bluetooth: Leading the Way to a New Mobility,” in: The 24th Conference on Local Computer Networks, LCN 1999 (October 1999), pp. 2–11. [3] S. Baatz, M. Frank, Rolf Gopffarth, D. Kassatkine, P. Martini, M. Schetelig and A. Vilavaara, “Handoff Support for Mobility with IP over Bluetooth,” in: The 25th Annual Conference on Local Computer Networks, LCN 2000 (November 2000), pp. 143-154. [4] P. Bhagwat, I. Korpeoglu, C. Bisdikian, M. Naghshineh and S.K. Tripathi, “BlueSky: A Cordless Networking Solution for Palmtop Computer,” in: ACM/IEEE International Conference on Mobile Computing and Networking 1999, Mobicomm’99 (August 1999). [5] R. Kraemer, “Bluetooth based wireless Internet applications for indoor hot spots: experience of a successful experiment during CeBIT 2001,” in: Workshop on Wireless Local Networks in LCN 2001 (November 2001), pp. 518-524. [6] D. Melpignano and D. Siorpaes, “Bluetooth TCP Booster,” in: IEEE Vehicular Technology Conference, VTC’2001, (May 2001), pp. 2137-2141.

Suggest Documents