+ All Categories
Home > Documents > Analysis of the Bluetooth device discovery protocol

Analysis of the Bluetooth device discovery protocol

Date post: 08-Feb-2017
Category:
Upload: trinhdang
View: 229 times
Download: 0 times
Share this document with a friend
16
Analysis of the Bluetooth device discovery protocol Goutam Chakraborty Kshirasagar Naik Debasish Chakraborty Norio Shiratori David Wei Ó Springer Science+Business Media, LLC 2008 Abstract Device discovery and connection establishment are fundamental to communication between two Bluetooth (BT) devices. In this paper, we give an analytical model of the time it takes for the master in a piconet to discover one slave. We show that, even in the absence of packet inter- ference, the discovery time can be long in some instances. We have simulated the discovery protocol by actually implementing it to validate the analytical model. By means of simulations, we show how discovery time is affected by (i) the presence of multiple potential slaves, and (ii) changes in the maximum backoff limit. Using simulation studies we observed the effectiveness of two proposed improvements to device discovery, namely, (i) avoiding repetitions of the A and B trains before a train switch, and (ii) eliminating the idea of random backoff, or reducing the backoff limit. We show that discovery time can be reduced by avoiding repetitions of the A and B trains before a train switch. However, complete elimination of the random backoff is not a good idea, as discovery time will be too long when the number of BT devices is large. Instead, choosing a small backoff limit of 250–300 slots is highly effective in reducing discovery time even in the presence of a large number (say, 50) of potential slaves. Keywords Bluetooth Device discovery Inquiry Inquiry scan 1 Introduction The initial goal of Bluetooth technology [12] was to replace cables between pairs of devices, such as a computer and a printer, a cell phone and a head-set, a laptop and a desktop, and so on. However, the Bluetooth specification has gone far beyond simple cable replacement, by detailing the concepts of piconets and scatternets. Consequently, there have been numerous innovative efforts toward applying the technology to form personal area networks and multi-hop ad hoc networks [3, 7, 8]. In Bluetooth, a piconet is a basic networking unit con- sisting of one master and 1–7 active slave devices. The smallest piconet consists of two devices—one master and one slave. The device which initiates the process of forming a piconet is designated as the master. The process A preliminary version of this paper was presented at the IEEE Vehicular Technology Conference, Fall 2004 [2]. G. Chakraborty Department of Software and Information Science, Iwate Prefectural University, Iwate, Takizawamura 020-0193, Japan e-mail: [email protected] K. Naik Department of Electrical and Computer Engineering, University of Waterloo, Waterloo, Canada N2L 3G1 e-mail: [email protected] D. Chakraborty (&) Research Institute of Electrical Communication, Tohoku University, Sendai 980-8577, Japan e-mail: [email protected] N. Shiratori Research Institute of Electrical Communication, Graduate School of Information Science, Tohoku University, Sendai 980-8577, Japan e-mail: [email protected] D. Wei Department of Computer and Information Science, Fordham University, Bronx, NY 10458, USA e-mail: [email protected] 123 Wireless Netw DOI 10.1007/s11276-008-0142-1
Transcript
Page 1: Analysis of the Bluetooth device discovery protocol

Analysis of the Bluetooth device discovery protocol

Goutam Chakraborty Æ Kshirasagar Naik ÆDebasish Chakraborty Æ Norio Shiratori ÆDavid Wei

� Springer Science+Business Media, LLC 2008

Abstract Device discovery and connection establishment

are fundamental to communication between two Bluetooth

(BT) devices. In this paper, we give an analytical model of

the time it takes for the master in a piconet to discover one

slave. We show that, even in the absence of packet inter-

ference, the discovery time can be long in some instances.

We have simulated the discovery protocol by actually

implementing it to validate the analytical model. By means

of simulations, we show how discovery time is affected by

(i) the presence of multiple potential slaves, and (ii)

changes in the maximum backoff limit. Using simulation

studies we observed the effectiveness of two proposed

improvements to device discovery, namely, (i) avoiding

repetitions of the A and B trains before a train switch, and

(ii) eliminating the idea of random backoff, or reducing the

backoff limit. We show that discovery time can be reduced

by avoiding repetitions of the A and B trains before a train

switch. However, complete elimination of the random

backoff is not a good idea, as discovery time will be too

long when the number of BT devices is large. Instead,

choosing a small backoff limit of 250–300 slots is highly

effective in reducing discovery time even in the presence of

a large number (say, 50) of potential slaves.

Keywords Bluetooth � Device discovery � Inquiry �Inquiry scan

1 Introduction

The initial goal of Bluetooth technology [12] was to

replace cables between pairs of devices, such as a computer

and a printer, a cell phone and a head-set, a laptop and a

desktop, and so on. However, the Bluetooth specification

has gone far beyond simple cable replacement, by detailing

the concepts of piconets and scatternets. Consequently,

there have been numerous innovative efforts toward

applying the technology to form personal area networks

and multi-hop ad hoc networks [3, 7, 8].

In Bluetooth, a piconet is a basic networking unit con-

sisting of one master and 1–7 active slave devices. The

smallest piconet consists of two devices—one master and

one slave. The device which initiates the process of

forming a piconet is designated as the master. The process

A preliminary version of this paper was presented at the IEEE

Vehicular Technology Conference, Fall 2004 [2].

G. Chakraborty

Department of Software and Information Science, Iwate

Prefectural University, Iwate, Takizawamura 020-0193,

Japan

e-mail: [email protected]

K. Naik

Department of Electrical and Computer Engineering,

University of Waterloo, Waterloo, Canada N2L 3G1

e-mail: [email protected]

D. Chakraborty (&)

Research Institute of Electrical Communication, Tohoku

University, Sendai 980-8577, Japan

e-mail: [email protected]

N. Shiratori

Research Institute of Electrical Communication,

Graduate School of Information Science,

Tohoku University, Sendai 980-8577, Japan

e-mail: [email protected]

D. Wei

Department of Computer and Information Science,

Fordham University, Bronx, NY 10458, USA

e-mail: [email protected]

123

Wireless Netw

DOI 10.1007/s11276-008-0142-1

Page 2: Analysis of the Bluetooth device discovery protocol

followed by a master to form a two-device piconet consists

of two sequential steps as explained below.

(i) Inquiry: In the inquiry phase, the master invites other

devices to join itself to form a piconet. Essentially, the

master solicits responses from other devices. Devices

willing to join a piconet respond to the master’s

solicitation. In the inquiry phase, the master solicits

responses by transmitting a standard packet, called ID

(identifier) packets, on different hop channels (i.e., on

different frequencies), and listens for response pack-

ets, called FHS (frequency hopping sequence) packets,

from potential slave devices. The sender of an FHS

packet puts its own address and clock values in the

packet. When the master receives an FHS packet, it

knows what device is willing to join the master to

form a piconet. However, mere response of a device

with an FHS packet does not form a piconet. After

receiving an FHS packet, the master executes the

paging step as explained below.

(ii) Paging: Having received the address and clock values

of a (potential) slave device, the master communicates

with the device via the paging process. During the

paging process the master establishes a connection

with a slave. The paging process falls outside the

scope of this work.

The master can repeat the inquiry process to discover

more devices, and invoke the paging process to establish a

connection with a newly discovered slave device. Once a

connection is established between the master and a slave in

a piconet, upper (application) level data are exchanged

between the two devices. Thus, the inquiry and paging

processes are fundamental to form a piconet.

In this paper, we give an analytical model of the average

time it takes for a master to discover a potential slave. To

obtain a better insight into the discovery protocol, we have

simulated the protocol by actually implementing the rele-

vant frequency hopping sequences. We performed

extensive simulations to study the pattern of discovery

time. Specifically, we have made the following observa-

tions: (i) even when there are only two devices, namely one

master and one slave, the discovery time can vary from a

couple of time-slots to more than 9000 time-slots, and (ii)

if device discovery is not successful within a few hundreds

of time-slots, it will, more often than not, be delayed by

more than 4000 time-slots.

By means of simulations, we have shown how the dis-

covery time is affected by more number of slaves and by

varying the maximum backoff limit from a small value,

say, 32 slots, up to the recommended value of 1023 slots.

We have investigated the effectiveness of two proposal to

improve the discovery time: (i) avoiding train repetitions

for 256 times [15], and (ii) eliminate random backoff or

reduce the backoff limit [13].

The rest of the paper is organized as follows. The device

discovery protocol has been explained in detail in Sect. 2.

In Sect. 3, we review the related works. An analytical

model of discovery time is given in Sect. 4. In Sect. 5, we

present simulation results. Two suggested improvements to

the discovery protocol have been studied in Sect. 6.

Finally, some concluding remarks are given in Sect. 7.

2 Device discovery protocol

The state diagram of the Bluetooth link controller [12] has

been shown in Fig. 1. We have clearly identified the device

discovery (inquiry) phase and the connection establishment

(paging) phase by enclosing the relevant states in separate

dotted boxes. In this paper, we will focus on the device

discovery portion. The STANDBY state means that the

device is not a part of any piconet. The CONNECTION

(Inquiry)

STANDBY

CONNECTION

Page Page Scan

MasterResponse

SlaveResponse

Inquiry Scan Inquiry

ResponseInquiry

Connection Establishment(Paging)

Device Discovery

Fig. 1 State diagram of

Bluetooth link controller [12]

Wireless Netw

123

Page 3: Analysis of the Bluetooth device discovery protocol

state means that the device is a part of a piconet. A device

can move from its present STANDBY or CONNECTION

state to the Inquiry state, if it wants to discover a new

device. The device which wants to discover another device

to form a piconet is designated as the master in the piconet.

Similarly, a device can move from its present STANDBY

or CONNECTION state to the Inquiry Scan state, if it

wants to be discoverd by another device. While a device is

in the process of discovering a new device it can tempo-

rarily move to the Inquiry Response state. The device

which is willing to be discovered by another device

(master) is designated as a slave in a piconet.

The device discovery protocol consists of two parts,

namely Inquiry and Inquiry Scan. A discovering device (or,

master) runs the Inquiry protocol, and a device willing to

be discovered (or, slave) runs the Inquiry Scan protocol.

The protocol has been explained in textual form in the

specification [12]. However, for the purpose of clear

understanding and easy analysis, we have represented the

protocols in the form of an extended finite-state machine

(EFSM). A state transition in an EFSM can be represented

as a six-tuple of the following form:

{source state, enabling condition, input, output, action,

destination state}.

The enabling condition and the input determine whether

or not a state transition takes place from the source state to

the destination state. In a time slot, if the enabling condi-

tion evaluates to true and the baseband layer receives the

specified input, then it transmits a packet specified in the

output part; after transmitting the packet, the baseband

layer takes some local action before transiting to the des-

tination state.

2.1 The Inquiry protocol

The EFSM model of the Inquiry protocol is shown in

Fig. 2. The protocol consists of two states: STANDBY/

CONNECTION and Inquiry. Initially, a device can be in

the STANDBY or the CONNECTION state. It is the Link

Manager Protocol (LMP) layer that decides when the

baseband layer may initiate the Inquiry protocol. At this

point, the LMP layer asks the baseband layer to enter the

Inquiry state, which has been represented by transition

number #1. In the action part of transition #1, the baseband

layer starts a time-out (TO) timer called inquiryTO. The

baseband layer moves from the Inquiry state to the original

STANDBY/CONNECTION state in two ways. The first

way, represented by transition #4, occurs when it is asked

to do so by the LMP. The second way, represented by

transition #5, occurs when the inquiryTO timer expires.

When the device is in the Inquiry state, two kinds of state

transitions occur depending on whether it is in a Tx

(transmission) slot or a Rx (reception) slot, as shown in

transition #2 and transition #3, respectively. In transition

#2, the discovering device transmits ID packets. Transition

#3 fires when the device receives an FHS packet, signaling

the discovery of a device. In the action part of transition #3,

the baseband layer informs the LMP of the discovery of a

device, and the device continues to be in the Inquiry state.

It may be noted that the discovering device does not

acknowledge the reception of an FHS packet.

In transitions #2 and #3, the transmit and receive fre-

quencies of a discovering device are determined by the

inquiry hopping sequence. The inquiry hopping sequence is

generated by the discovering device’s native clock (CLKN)

and the General Inquiry Access Code (GIAC). The GIAC

has the standard value x9E8B33, in the hexa-decimal

notation. In the 79-hop system, the inquiry hopping

sequence contains 32 distinct hop frequencies. The inquiry

hopping sequence is constructed as follows. The set of 32

frequencies is partitioned into two subsets of 16 frequen-

cies each, and two trains, namely train A and train B, are

constructed from those two subsets. The two trains are

permutations of the two distinct sets of 16 frequencies.

Assuming that an ID packet is transmitted twice in each Tx

slot, once at the beginning and a second time at the middle

of a transmission time-slot, it takes eight Tx slots to

transmit a whole train of 16 frequencies. Because the Tx

and Rx slots are interleaved, the total length of time to

cover each train is 16 slots, or 10 ms (=16 9 625 ls),

625 ls being the duration of a time-slot. A single train is

repeated for at least Ninquiry = 256 times before the other

train is used. In order to collect all responses in an error-

free manner, at least four trains must be used; in other

words, three train switches must take place. Therefore, the

Inquiry state lasts for 10.24 s (= 256 9 4 9 10 ms).

The Inquiry protocol can run concurrently with data

traffic. This can be achieved by having the master transmit

ID packets for a duration of Tw inquiry time units in a period

of Tinquiry, as illustrated in Fig. 3(a). Thus, the master can

support data traffic for a duration of Tinquiry � Tw inquiry in

each period of Tinquiry time units. The length of Tw inquiry is

Inquiry

Input: (Nil)

Output: Transmit ID packet Action: {}

Output: (Nil)

Condition: in Rx slot Input: FHS packet Action: {device discovered}

STANDBY/CONNECTION

1

Output: (Nil)

Input: (Command from LMP)Condition: TrueCondition: True

Input: (Command from LMP) Action: Start inquiryTO timer Output: (Nil)

2 3

Action: Stop inquiryTO timer

Output: (Nil)

Condition: True Input: inquiryTO timeout Action: (Nil)

4

5

Condition: in Tx slot

Fig. 2 The Inquiry protocol

Wireless Netw

123

Page 4: Analysis of the Bluetooth device discovery protocol

at least equal to the length of three train switches, as

explained above, with a duration of 10.24 s.

2.2 The Inquiry Scan protocol

The EFSM model of the Inquiry Scan protocol is shown in

Fig. 4. If a device wants to be discovered by others, then

the LMP layer of the device issues a command to the

baseband layer to move from its present STANDBY/

CONNECTION state to the Inquiry Scan state, which has

been modeled by transition #1. In the action part, the

device starts the inqrespTO timer and initializes a Back-

offDone flag to false. It may be noted that the Bluetooth

specification does not concern itself with the detailed

specification of the backoff mechanism or the relevant

parameter of back-off time. However, in this paper, we

explicitly specify the backoff mechanism for a clear

understanding of the protocol. If the device receives an ID

packet and the backoff has not been performed, then it

starts an inquiry response timer irRAND, as we name it,

with a duration randomly set between 0 and 1023 slots, and

moves to its original state; the above behavior is specified

in transition #2. The device is allowed to spend irRAND

time slots in its STANDBY/CONNECTION state; upon

expiry of the irRAND timer the device moves to the

Inquiry Scan state, which is shown as transition #3. After

the backoff period, but before the expiry of the inqrespTO

timer, if the device receives a second ID packet in the

Inquiry Scan state, it starts another one-slot timer we call

oneslotTO. After the expiry of the oneslotTO it moves to

the Inquiry Response state; this behavior has been modeled

in transition #4. After waiting for exactly one slot in the

Inquiry Response state, the device transmits an FHS

packet, reinitializes the BackoffDone flag to false, and

moves to the Inquiry Scan state; this behavior has been

modeled in transition #5. By repeatedly executing the

transitions #2, #3, #4 and #5, the device continues to dis-

cover and possibly rediscover other devices in the

neighborhood. After the inqrespTO timer expires, the

device moves from the Inquiry Scan state to its original

STANDBY/CONNECTION state, which has been shown

by the transition #6.

The idea behind having the responding devices wait for

a random period is to avoid collision of their FHS packets.

In the Inquiry Scan protocol shown in Fig. 4, a device

Time

inquiry Tinquiry

w_inquiryT w_inquiryT

inquiryscanT

w_inquiryscanT

inquiryscanT

w_inquiryscanT

(a)

(b)

Time

T

Fig. 3 (a) Inquiry peroid and Inquiry window. (b) Inquiry Scan

period and Inquiry Scan window

CONNECTIONor

STANDBY

Inquiry Scan

Inquiry Response

Input: ID packet (Inquiry)inqrespTO timer running

Condition: BackoffDone == True &&

2

4

Condition: TrueInput: (Command from LMP)

3Condition: True

Condition: True Input: oneslotTO timeout

Input: ID packet (Inquiry)Condition: BackoffDone == False

Action: BackoffDone = True

Action: Start inqrespTO timerBackoffDone = False

Action: Start a timer irRAND with a random length between 0 and 1023 slots.

Action: Start a one-slot timer oneslotTO

Output: {}

Output: {}

Output: {}

Output: {}

Output: FHS packet Action: BackoffDone = False Increment phase offset in the inquiry hop sequence

1

5

6

Output: {} Action: {}

Condition: True

Input: irRAND timeout

Input: inqrespTO timeout

Fig. 4 The Inquiry Scan

protocol

Wireless Netw

123

Page 5: Analysis of the Bluetooth device discovery protocol

receives ID packets in transitions #4 and #5 using the

inquiry scan hopping sequence, and transmits FHS packets

in transition #6 using the inquiry response hopping

sequence.

It is important to note that in the Inquiry Scan protocol a

device uses the same 32 frequencies to scan the medium as

used in the Inquiry protocol by a master. The difference is

that the Inquiry Scan protocol scans the medium on the

same frequency for 2048 slots. After 2048 slots, a different

scan frequency is chosen for another 2048 slots, and so on.

The Inquiry Scan protocol can run concurrently with

data traffic. This can be achieved by having a slave scan for

ID packets for a duration of Tw inquiryscan time units in a

period of Tinquiryscan time units as illustrated in Fig. 3(b).

Thus, the slave can support data traffic for a duration of

Tinquiryscan � Tw inquiryscan time units in each period of

Tinquiryscan time units. The length of Tw inquiryscan is at least

16 slots.

In this paper, we will analyze the discovery time by

considering that the master and the slave are fully dedi-

cated to device discovery. Therefore, we assume that

Tw inquiry ¼ Tinquiry and Tw inquiryscan ¼ Tinquiryscan. Trivi-

ally, the discovery time will be more in the absence of the

above assumption.

2.3 Combined behavior of Inquiry and Inquiry Scan

protocols

The combined behavior of the Inquiry and Inquiry Scan

protocols is shown in Fig. 5 in the form of a message

sequence chart. The master’s behavior running the Inquiry

protocol has been shown on the left hand side, whereas a

potential slave runs the Inquiry Scan protocol on the right

hand side. For simplicity, we assume that, initially, both the

master and the potential slave are in their STANDBY states.

Next, the master moves into the Inquiry state, and the slave

moves into the Inquiry Scan state—these two moves are

independently performed.

It is also assumed that a slave enters its Inquiry Scan

state no later than the master entering the Inquiry state. In

the absence of this assumption, the difference in time

between the instant when a slave enters the Inquiry Scan

state and the instant when the master enters the Inquiry

state becomes a part of the discovery time. However,

incorporating this time gap into discovery time is not a fair

way to evaluate the protocol. The above assumption

ensures that we start measuring discovery time once the

master is in its Inquiry state and a slave is in its Inquiry

Scan state.

As soon as the master enters the Inquiry state, it starts

transmitting ID packets twice per slot. The master is said to

have discovered a device when it receives an FHS packet

from another device. Thus, as shown in Fig. 5, we define

discovery time as follows.

Definition 2.1 Discovery time is defined as the time

interval between the instant when the master enters the

Inquiry state and the instant when it receives an FHS

packet from another device.

First, we explain how the master transmits ID packets on

different hop frequencies, and how a slave hops on dif-

ferent frequencies to scan for ID packets. It is essential to

understand the two hopping schemes in order to give a

model to calculate discovery time.

For simplicity, we discuss the case in which there is one

master and one potential slave, as shown in Fig. 6(a). A

device willing to be discovered, called a scanning device,

scans the medium for ID packets with frequencies hopping

very slowly—a scanning frequency that changes once

every 2048 slots (1.28 s). In Fig. 6(b), we show how the

hopping frequencies of the master and a slave change. Let

us denote the set of 16 A-train frequencies as

A ¼ fa1; a2; a16g}, and the set of 16 B-train frequencies as

B ¼ fb1; b2; b16g. The slow-hopping Inquiry Scanner fre-

quencies are a permutation of the 32 frequencies of A [ B:

In Fig. 6(b), frequencies f0, f1,…, f31 denote an arbitrary

permutation sequence of the elements of A [ B.

An Inquirer repeatedly transmits ID packets on the

A-train and B-train frequencies as follows: the A-train

is repeated for 256 times, followed by a repetition of

the B-train for 256 times, followed by a repetition of the

A-train for 256 times, and so on. Let A? represent the

repetition of the A-train for 256 times. Similarly, B? rep-

resents the repetition of the B-train for 256 times. Thus, the

Tim

e

Device discovered

(Start of discovery process)

STANDBY state

Ran

dom

bac

koff

in

the

rang

e [0

, 102

3] s

lots

Inquiry Scan state

Slow Hopping Inquiry Scan

Slo

w H

oppi

ng I

nqui

ry S

can

Inqu

iry

by s

endi

ng I

D p

acke

ts a

t fas

t hop

state

Inquiry response state

stateStandbyMASTER SIDE SLAVE SIDE

Standby state

InquiryScan stateInquiry

Fig. 5 Combined behavior of Inquiry and Inquiry Scan protocols

Wireless Netw

123

Page 6: Analysis of the Bluetooth device discovery protocol

individual length of A? and B? is 2.56 s (= 625 ls 9 16 9

256). In terms of behavior, there is no difference between

A? and B?, except in their frequency components. On the

other hand, an Inquiry Scanner scans the medium for an ID

packet on a single frequency fi (fi [ A [ B) for 2048 slots

(= 1.28 s). The scanning frequency changes every 2048

slots.

At this moment, it is important to introduce the concept

of phase difference between an Inquirer and an Inquiry

Scanner, and its impact on device discovery time. If an A?

or a B? train of the Inquirer and a new frequency scanning

interval of an Inquiry Scanner begin at the same time

instant, we say that the processes of inquiry and inquiry

scan are synchronized.

Otherwise, there is a phase difference. We denote the

phase difference by Dt, as shown in Fig. 6(b). Here, the

scanning frequency f0 started Dt time before A? train. For

convenience, we let Dt = k*s, where k is an integer and

s is the length of one slot (= 625 ls). The range of possible

values for k will be discussed in Sect. 4. We identify the

notion of phase difference because the discovery time is a

function of phase difference. It will be clear from the fol-

lowing discussion that restricting k to only integer values

does not affect the computation of discovery time.

3 Related research

Delay analysis of the device discovery protocol and pro-

posals to modify the protocol to reduce the delay have

generated much interest [1, 5, 6, 9, 10, 11, 13–15].

Zaruba and Gupta [15] simplify the analysis of the

discovery protocol by assuming that none of the trains—A

or B—is repeated before a train switch. In other words, an

A-train is immediately followed by a B-train, followed by

an A-train and so on. They do not repeat a train for 256

times before switching, as it has been specified.

Jiang, Lin and Tseng [5] model the elapsed time from

the instant a slave starts inquiry scan to the instant it suc-

cessfully receives an ID packet from the master. It is

assumed that there is a master device performing the

inquiry procedure. Thus, the focus of their work is on the

average time to receive an ID packet by a slave. They

propose three techniques to improve this delay, namely, (i)

halve the Tinquiry and Tw inquiry intervals, (ii) use a dual

Inquiry Scan scheme, and (iii) use a combination of both.

In the dual Inquiry Scan scheme, for every Tinquiryscan

period, the slave performs inquiry scan on two frequencies

each for a duration of Tw inquiryscan . However, to be pre-

cise, device discovery time needs to be measured from the

viewpoint of a master. That is, it is more useful to find out

how much time it takes a master to discover a slave,

assuming that the slave is performing the inquiry scan

procedure no later than when the master initiates its inquiry

protocol.

Connection establishment between two mutually

unknown devices takes 5.76 s in a typical case and as long

as 23 s in the worst case [1, 4]. Thus, for Bluetooth tech-

nology to be useful in a mobile environment, where two

devices may not stay within each other’s radio range for

long, there is a need to speed up the discovery time. Welsh,

Murphy and Frantz [13] proposed three possible changes to

the Bluetooth specification in order to reduce the discovery

time. Their proposals are: (i) eliminate or decrease the

random backoff delay in the Inquiry Scan protocol, (ii) use

a single frequency train instead of two—A and B—in the

Inquiry protocol, and (iii) combine the first two approa-

ches. The reader may note that the second proposal above

is the same as the proposal made by Zaruba and Gupta [15]

in their analysis of the discovery protocol.

Inquiryscanner

Tx Rx

Rx

Rx Rx Rx Rx

Tx Tx

(a)

Inquirer

time slotone

packetFHS

randombackoff

transmittimeslot

receivetimeslot

Inquirer

Inquiryscanner

∆ Α+ Β+ Α+

4096 slots 4096 slots 4096 slots

0 f f f f1 2 3 4

t . . . . . . . .

f . . . . 2048 slots 2048 slots

(b)

Fig. 6 State transition for

device discovery: timing

diagram

Wireless Netw

123

Page 7: Analysis of the Bluetooth device discovery protocol

Woodings, et al. [14] proposed to bypass the uncertainty

in device discovery by using a direct IrDA channel

between devices that could potentially establish a con-

nection between them. A master device obtains the details,

such as device address and native clock values, of a slave

via a connection over an IrDA channel. Once the master

obtains the details of the slave, it initiates the paging

protocol.

Salonidis, Bhagwat and Tassiulas [10] have shown that

device discovery time can be reduced by having devices

alternate between two roles, namely, a discoverer and one

willing to be discovered. In other words, a device alter-

natingly runs the Inquiry protocol and the Inquiry Scan

protocol. For better effectiveness of this scheme, a device

executes those protocols for random durations, rather than

follow a periodic scheme.

4 Analysis of discovery time

In this section, we will present an analytical model of

discovery time as depicted in Fig. 5. The different com-

ponents of this time can be found on the slave side in

Fig. 5. Discovery time has four components as explained

below.

TID1: This is the average time taken by a slave to receive

the first ID. This time is measured from the instant the

master starts transmitting ID packets to the instant when

a slave receives an ID.

Tb: This is the average of the random backoff time after

the slave receives the first ID packet.

TID2: This is the average time taken by the slave to

receive a second ID. This time is measured from the

instant the slave comes out of its random backoff to the

instant when it receives an ID.

1-slot: This is the 1-slot wait by the slave between

receiving a second ID and transmitting an FHS packet.

We will ignore this 1-slot component from further

consideration.

Therefore, discovery time, denoted by T , is expressed

as follows:

T ¼ TID1 þ Tb þ TID2: ð1Þ

The Bluetooth specification states that a random backoff

interval be uniformly chosen from the range [0, 1023] slots.

Thus, the average value of Tb is 512 slots. There is a

similarity between TID1 and TID2. Both these intervals are

associated with the same condition. For TID1 we have

assumed that a slave enters its Inquiry Scan state no later

than the master entering the Inquiry state. Essentially, this

assumption implies that by the time the master starts

transmitting ID packets, a slave has already begun, or just

begins, scanning the medium to receive an ID packet. The

reader may observe that the same condition holds when a

slave returns from its STANDBY state to the Inquiry Scan

state at the end of its random backoff as depicted in Fig. 4

and 5. This is because the master continues transmitting ID

packets in its transmit slots, without knowing a state

change in a slave. The slave starts scanning the medium for

an ID packet as soon as it returns to Inquiry Scan. We

measure TID2 from the instant a slave enters Inquiry Scan

for a second time to when it receives a second ID. Thus,

TID1 and TID2 can be computed in the same way.

Consequently, we can rewrite Eq. 1 as,

T ¼ 2 � TID þ Tb; ð2Þ

where TID = TID1 = TID2 represents the average time

taken by a slave to receive an ID packet from the instant

the master is transmitting ID packets and the slave is

scanning the medium. Thus, to give an expression for T ,

we need to compute TID.

Next, we discuss how the value of k (phase difference,

as defined in Sect. 2) affects the discovery time, and how k

plays an important role in determining the delay. Let F ¼A [ B be the set of 32 frequencies used in the discovery

protocol. The members of F are denoted by fi, where 1 B i

B 31. A slave scans the medium on the same frequency,

say fi, for 2048 slots. Since a slave scans the medium on the

same frequency for 2048 slots and the length of each of A?

and B? is 4096 slots, the possible range of phase difference

is [0, 2046] slots, i.e., 0 B k B 2046. Moreover, we con-

sider only the even values of k in the range [0, 2046]. This

is because the master transmits ID packets in its Tx slots,

which are followed by the Rx slots to receive an FHS

packet.

To show the impact of the value of k on discovery time,

we first consider values of k between 0 and 16. If k = 0, as

shown in Fig. 7(a), a slave scans the medium on two dif-

ferent frequencies during the period when the master

transmits ID packets using A? frequencies.

Then the slave would not be able to receive ID packets if

f0, f1 62 A: On the other hand, if k [ 0, a slave scans the

medium on three different frequencies during the period

when the master transmits ID packets using A? frequen-

cies. This is evident from Figs. 8 and 9. Consequently, the

probability of a slave being able to receive an ID packet is

higher. We identify another important value of k, namely,

k = 16, as follows. Suppose that there is no match during f0and f1, because both f0 and f1 62 A . When the scan fre-

quency changes to f2, as shown in Fig. 9, and if f2 [ A,

there will be an immediate match within the 16 consecutive

time slots.

On the other hand, if f2 62 A , subsequently there will be

a definite match of f2 with a B train frequency as f2 [ A [B. When 0 B k B 14, the probability of such a match

Wireless Netw

123

Page 8: Analysis of the Bluetooth device discovery protocol

during the f2 scanning frequency becomes less and less as k

takes smaller values in the range [2, 14]. A similar argu-

ment can be used to show that the two ranges of k, namely

[2, 14] and [2034, 2046], lead to similar discovery times.

Therefore, to compute TID, we need to consider four dis-

tinct ranges of k as follows:

(i) k = 0

(ii) 2 B k B 14

(iii) 16 B k B 2032

(iv) 2034 B k B 2046

As noted above, cases (ii) and (iv) lead to similar delay

behavior. In the following, we give a model of TID for each

of the three cases. It may be noted that this delay behavior

is for one master and one slave. When the number of

potential slave devices is increased, the delay would be

longer due to collision of FHS packets. Due to the condi-

tional dependence of the delay on k, and because the values

of k for individual slaves are independent variables,

deriving an analytical model for multiple slaves becomes

difficult. However, we have obatined simulation results for

more than one slaves in Sect. 5.

4.1 Discovery time for k = 0

Computation of TID for k = 0 has been explained using a

tree structure in Fig. 7. The scan frequencies f0, f1,…, f31 at

the Inquiry Scanner is a permutation of all the 32

(a)

(b)

Fig. 7 Detailed computation of

discovery time for k = 0

Wireless Netw

123

Page 9: Analysis of the Bluetooth device discovery protocol

frequencies in the set F. We give an estimation of TID using

the tree structure showing possible delays and their corre-

sponding probabilities, as shown in Fig. 7(b). If f0 [ A, for

which the probability is 16/32, the delay lies between 0.5

and 15 slots with equal probabilities. Thus, the average

delay is about 7.5 slots. The probability of the event f0 [ A

and the corresponding delay have been shown on the left

branch from the root. If f0 62 A; no ID will be received for

at least 2048 time slots before the frequency changes to f1.

Estimation of the delay will depend on the next frequency

f1. Thus, on the right branch of the root we record the

probability of f0 [ B (same as f0 62 A) as 16/32, and the

delay is denoted as d0. If f1 [ A, for which the probability is

16/31, an ID will be received due to a matching scanning

frequency, and the corresponding delay will be 1 9 2048

? 7.5. This probability and the delay have been shown in

the second row, left box. A similar case may happen with

f2, f3,… If a match occurs on fi, the corresponding delay

will be i 9 2048 ? 7.5, and these have been shown in the

left branch boxes.

On the other hand, if f1 [ B, the Inquiry Scanner will not

receive an ID packet until f1 changes to f2. The probability

of f1 [ B is 15/31, and the estimation of the delay will

depend upon the next frequency f2. Thus, in the second row

right-hand box we record the probability of f1 [ B as 15/31,

and the delay as d1. All the possible situations of receiving

or not receiving an ID packet have been shown with their

probabilities and delays in the boxes in Fig. 7(b). On the

right-hand side box at level 31, the probability of f31 [ A is

1.0 and the delay is denoted by g.

(a)

(b)

Fig. 8 Delay analysis when k

takes a value in the closed range

[2, 14]

Wireless Netw

123

Page 10: Analysis of the Bluetooth device discovery protocol

An expression for TID for k = 0, denoted by TID, k=0, can

be obtained by combining the probabilities and delays

recorded in the boxes in Fig. 7. Thus, we have the fol-

lowing expressions.

TID;ðk¼0Þ ¼16

32� 7:5þ 16

32� d0

d0 ¼16

31� ð2048þ 7:5Þ þ 15

31� d1

d1 ¼14

30� ð2� 2048þ 7:5Þ þ 16

30� d2

d2 ¼ . . . . . .

where the general expression for di is,

di ¼16� bðiþ 3Þ=4c � 2

ð32� iÞ � ððiþ 1Þ � 2048þ 7:5Þ

þ ð32� iÞ � ð16� bðiþ 3Þ=4c � 2Þð32� iÞ � diþ1;

where 0� i� 30 and d31 ¼ g:

One may note that the estimated value of g is TID,k=0, but

the probability of occurrence of the event is negligibly

small. TID,k=0 is computed by successive approximation.

Initially, we set g = 0 and successively modify g with the

value of TID,k=0 obtained from the previous iteration.

TID,k=0 stabilized after two iterations.

4.2 Average delay when 2 B k B 14

The frequency matching scenario between a master

running the Inquiry protocol and a potential slave run-

ning the Inquiry Scan protocol when k takes a value in

the closed range [2, 14] has been described in Fig. 8.

The scanning frequencies have been denoted by fi, 0 B i

B 31. The tree structure shown in Fig. 8(b) is obtained

using an argument similar to the one used to construct

the tree shown in Fig. 7(b). However, there is a differ-

ence in Fig. 7(b) and Fig. 8(b). For example, in the tree

shown in Fig. 7(b), each node has at most two child

(a)

(b)

Fig. 9 The delay for the case

when 16 B k B 2032

Wireless Netw

123

Page 11: Analysis of the Bluetooth device discovery protocol

nodes, whereas it is at most three in Fig. 8(b). This is

due to the fact that when i is even in fi, the span of ficovers both A-train and B-train of frequencies—A-train

partially and B-train completely.

Following the argument in Sect. 4.1, it is easy to see

how the boxes (i.e. nodes), shown in level 0 and level 1,

can be obtained.

Here, level i means boxes terminated on a branch of fi[ A or fi [ B. For example, the probability of f0 [ A is 16/

32 and the delay is approximately 7.5 slots. We represent

this information in the left node of level 0. On the other

hand, the probability of f0 [ B is 16/32, and the delay,

denoted by d0 in Fig. 8, depends on the subsequent

scanning frequencies. The value of d0 is computed using

the part of the tree rooted at the right node of level 0.

With a similar argument the probabilities of events at

level 1 are obtained.

However, the situation is different at level 2, where

there are three distinct possibilities. This time, the scan-

ner’s tuning frequency f2 overlaps with the A? train for k

slots and with the B? train for 2048 - k slots. Thus, the

probability of f2 [ B is 14/30, and the corresponding delay

is 2 9 2048 - k ? k ? 7.5 =2 9 2048 ? 7.5 slots. The

probability of f2 [ A is 16/30. The probability of a fre-

quency match between the Inquirer and an Inquiry

Scanner with f2 [ A is (16/30) 9 (k/16) and the corre-

sponding delay is 2 9 2048 - k ? k/2. On the other

hand, the probability of no frequency match between the

Inquirer and an Inquiry Scanner with f2 [ A is (16/

30) 9 ((16-k)/16) and the corresponding delay d2

depends on the subtree rooted at this node. These three

different situations have been represented by three nodes

at level 2 of Fig. 8(b).

Using a similar argument, we can complete the tree

shown in Fig. 8(b), and an expression for TID for 2 B k B

14 is given below.

TID;ð2�k�14Þ ¼16

32�7:5þ16

32�d0

d0¼16

31�ð2048�kþ7:5Þþ15

31�d1

d1¼14

30�ð2�2048þ7:5Þ

þ 16

30

� �� k

16

� �� 2�2048�k

2

� �

þ16

30�ð16�kÞ

16�d2

d2¼14

29

� ��ð3�2048�kþ7:5Þþ 15

29

� ��d3

d3¼ . . . . . .

where the general expression for di is,

di ¼16� i

31� i

� �� ðiþ 1Þ � 2048� k þ 7:5ð Þ

þ 1� 16� i

31� i

� �� diþ1;where i ¼ 0 or i is even:

di ¼15� i

31� i

� �� ðiþ 1Þ � 2048þ 7:5ð Þ

þ 1� 15� i

31� i

� �� k

16

� �� ðiþ 1Þ � 2048� k

2

� �

þ 1� 15� i

31� i

� �� 16� k

16

� �� diþ1; where i is odd:

The average delay depends on the value of k, and it

decreases as k increases.

4.3 Average delay when 16 B k B 2032

The frequency matching scenario in the case of 16 B k B

2032 has been shown in Fig. 9. The tree showing the

probabilities of frequency matching and delay computation

is obtained using an argument similar to the one in

Sect. 4.1.

In this case, there will be a definite match by the time

a potential slave scans on f2. This is because by the time

the slave completes scanning the medium on frequency f2for at most (k ? 16) slots, it will have covered all the A-

train and B-train of frequencies transmitted by the

Inquirer. Thus, the delay TID is given by the following

expression.

TID;ð16� k� 2032Þ ¼16

32� 7:5þ 16

32

� 16

31� ð2048� k þ 7:5Þ þ 15

31

� 14

30� ð2� 2048þ 7:5Þ þ 16

30

� ð2� 2048� k þ 7:5Þ��

The average value thus depends on k, and when

averaged over all k between 2032 to 16, it is 1142 time-

slots.

4.4 Average delay when 2034 B k B 2046

The frequency matching scenario when 2034 B k B 2046

is similar to the scenario for 2 B k B 14 as shown in

Fig. 10. Here, k0 = 2048 - k takes values from 14 to 2. A0 isthe set of first k0 frequencies of the A-train. The branches

show the conditions, and the boxes give the probabilities

and corresponding delays. The expression for TID for 2034

B k B 2046 is given below.

Wireless Netw

123

Page 12: Analysis of the Bluetooth device discovery protocol

TID;ð2034� k� 2046Þ ¼k0

32� k0

2þ 32� k0

32

� �� d0

d0 ¼16

31� ðk0 þ 7:5Þ þ 15

31� d1

d1 ¼16

30� ð2048þ k0 þ 7:5Þ

þ 14

30

� �� k0

16

� �� 2� 2048þ k0

2

� �

þ 14

30

� �� 16� k0

16

� �� d2

d2 ¼13

29� ð2� 2048þ k0 þ 7:5Þ þ 16

29� d3

d3 ¼ . . .. . .;

where the general expression for di is,

di¼16� i�1:5

31� i�ði�2048þk0 þ7:5Þ

þ 1�16� i�1:5

31� i

� ��diþ1; where i¼0 or i is even:

di¼17� i

31� i

� ��ði�2048þ k0 þ7:5Þ

þ 1�17� i

31� i

� �� k0

17� i

� �� ðiþ1Þ�2048þ k0

2

� �

þ 1�17� i

31� i

� �� 1� k0

17� i

� ��diþ1; where i is odd:

4.5 An expression for TID

Now we obtain an expression for TID by combining the

expressions for TID, (k=0), TID, (2 B k B 14), TID, (16 B k B 2032)

and TID, (2034 B k B 2046). The expression for TID is,

(a)

(b)

Fig. 10 Delay analysis when k

takes a value in the closed range

[2034, 2046]

Wireless Netw

123

Page 13: Analysis of the Bluetooth device discovery protocol

TID ¼1

1024

TID;ðk¼0Þ þ

X14

k¼2

TID;ð2� k� 14Þ

þX2032

k¼16

TID;ð16� k� 2032Þ

þX2046

k¼2034

TID;ð2034� k� 2046Þ:

!ð3Þ

To get an expression for the discovery time, as given in

Eq. 1, we need to substitute TID obtained from Eq. 3. As

the constituent terms of the above Eq. 3 are in recursive

form, we calculated the value of TID using numerical

method.

5 Simulation result

We have developed a Bluetooth simulator to study the

performance of the device discovery protocol. We imple-

mented the frequency hopping kernel box specified in

Chapter 11 of the Bluetooth specification [12]. In Sect. 4,

we obtained an analytical model of discovery time by

considering the phase difference in four distinct blocks,

namely, k = 0, 2 B k B 14, 16 B k B 2032, and 2034 B k

B 2046.

To verify that discovery time can be studied in terms of

those four blocks of k values, we performed 31000 distinct

experiments. The idea behind performing 31000 experi-

ments is this: There are 1024 distinct values of k, and we

wanted each value of k to appear for an average of 30

times. In the discovery protocol, the phase value depends

upon the native clocks of the two devices taking part in the

discovery process. We observed that each k value appears

between 10 and 70 instances in the total number of

experiments. In the 31000 experiments, we had two devi-

ces—one master and one slave.

For each of the four blocks of k values, we compute their

average discovery time and the result has been shown in

Fig. 11. As analyzed in Sect. 4, the average delays in the

four blocks of k values, namely, k = 0, 2 B k B 14, 16 B

k B 2032 and 2034 B k B 2046, are very distinct. The

distribution of delay is uniform within each of the four

blocks, but it varies from block to block as predicted in

Sect. 4.

We wanted to compare the analytical model of discov-

ery time with data obtained from simulation studies. Using

the expression for TID given in Eq. 3, we computed TID to

be 1169 slots. When the random backoff range is [0, 1023],

the average value of random backoff is 512 slots. Thus, the

average discovery time, when there is just one inquiry

scanner, is computed to be T ¼ 2� 1169þ 512 ¼ 2850

slots. The average device discovery time obtained from

simulations is compared with the theoretical value in

Fig. 12. Their small difference is due to non-uniform dis-

tribution of experiments with different k-values. We also

show the distribution of discovery time in Fig. 12 by

sorting the experiments on the basis of their delays. Fig-

ure 12 shows that there is a probability of almost 0.5 that

device discovery can be much higher than the average

value.

We observed in Sect. 4 that discovery delay is a func-

tion of k. Moreover, the delay distribution is in the form of

a recursive function, and not in close form. Using the same

line of approach, and aiming similar accuracy, it is not

possible to deal the case for multiple slaves.

Two different sets of experiments were performed with

one master and multiple slaves as explained below.

1. There is one master, the maximum backoff limit is

fixed, and the number of potential slaves is varied. In

this experiment we measure the average total time

taken to discover all the known potential slaves. This

allows us to observe the effect of collision of FHS

packets on discovery time. We show the result of the

experiments in Fig. 13. Each data point in Fig. 13 has

been obtained from 1000 independent experiments. By

independent experiments we mean an experiment

−500 0 500 1000 1500 2000 25000

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Regions of phase values

Ave

rage

dis

cove

ry d

elay

in e

ach

regi

on (

in s

lots

)

Fig. 11 The impact of phase difference on discovery time

0 0.5 1 1.5 2 2.5 3 3.5

x 104

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

Individual experiments (sorted according to delay)

Dis

cove

ry d

elay

in in

divi

dual

ex

perim

ents

(in

slo

ts)

Theoretical average delay

Simulated average delay

Fig. 12 Distribution of discovery time

Wireless Netw

123

Page 14: Analysis of the Bluetooth device discovery protocol

begins with a new set of values of the device addresses

and their native clocks. In real applications, a user may

have to discover all the devices before selecting one to

activate the desired service. Thus, knowing the distri-

bution of the average total time to discover multiple

devices is useful.

2. There is one master, the number of potential slaves is

fixed, and the maximum backoff limit is varied. This

experiment allows us to observe the effect of backoff

time on device discovery. The idea of backoff has been

introduced to reduce the probability of collision of

FHS packets from two or more devices. However,

backoff time adds to the discovery delay. Some

researchers [13] have proposed to keep it smaller, or

even eliminate the idea of backoff. Thus, it is

interesting to know to what extent backoff time can

be reduced. In Fig. 14 we show how discovery time

varies when the backoff limit is increased. If the

number of potential slave devices is very small, say 3–

4, it is possible to make the backoff limit very small,

say 100 slots. However, for a large number of potential

slaves, a small backoff limit cannot prevent collision

of FHS packets. There is a threshold backoff time

below which the average delay is very long. Thus, the

backoff limit needs to be more than the threshold as

shown in Fig. 14. Even for a large number of devices,

say 50, a backoff limit of 300 slots is a good choice.

6 Improvement of discovery time

In order to reduce discovery time, there has been a proposal

to avoid the 256-time repetitions of the individual trains

[13, 15]. The proposal suggests to use the sequence

ABAB…, instead of the sequence A?B?A?B?…. How-

ever, the impact of the proposal on discovery time has not

been studied in detail. To observe how the proposal affects

discovery time, we further investigated the delay behavior

through simulations, and the results are shown in Figs. 15

and 16. In Fig. 15, we show how discovery time varies

with increasing number of potential slaves for the two

cases of inquiry sequence, namely, A?B?A?B?… and

ABAB…, for different fixed values of the backoff limit. In

Fig. 16 we show how discovery time varies with increasing

backoff limit for the two cases of inquiry sequences,

namely, A?B?A?B?… and ABAB…, for different num-

ber of potential slaves. Figures 15 and 16 clearly

demonstrate that it is more effective to apply the sequence

ABAB… instead of A?B?A?B?….

2 4 6 8 10 12 14 162000

2500

3000

3500

4000

4500

5000

5500

Number of Bluetooth enabled devices in a cluster

Ave

rage

tota

l del

ay in

dev

ice

disc

over

y (in

slo

ts)

−o−: Backoff limit = 1023 slots

−x−: Backoff limit = 767 slots

−+−: Backoff limit = 511 slots

__: Backoff limit = 255 slots

Fig. 13 Average total delay in device discovery as a function of total

number of devices (one device is a master and the rest are potential

slaves)

0 200 400 600 800 1000 12000.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8x 104

Backoff limit in slots

Ave

rage

tota

l del

ay in

dev

ice

disc

over

y (in

slo

ts)

−o−: Number of devices = 5

−+−: Number of devices = 15

−x−: Number of devices = 25

−*−: Numer of devices = 50

Fig. 14 Average total delay in device discovery as a function of

backoff limit

2 4 6 8 10 12 14 160

1000

2000

3000

4000

5000

6000

Upper set of 4 curves: A and B trains are repeated for 256 times each.

−o−: Backoff limit = 1023 slots−x−: Backoff limit = 767 slots−+−: Backoff limit = 511 slots−*−: Backoff limit = 255 slots

Lower set of 4 curves: A and B trains are repeated for 1 time each.

Number of Bluetooth enabled devices in a cluster

Ave

rage

tota

l del

ay in

dev

ice

disc

over

y (in

slo

ts)

Fig. 15 Average total delay in device discovery as a function of total

number of devices (one device is a master and the rest are potential

slaves)

Wireless Netw

123

Page 15: Analysis of the Bluetooth device discovery protocol

There is another proposal to improve discovery time by

eliminating or reducing the random backoff time. How-

ever, it is clear from Fig. 14 and Fig. 16 that it is not a good

idea to completely eliminate random backoff. Instead, a

small backoff limit of 250–300 slots can be used even for

an environment with a large number (say, 50) of potential

slaves.

7 Discussion and conclusion

In this paper, we analyzed Bluetooth device discovery time

and compared it with simulation results. We performed a

large number of experiments to obtain insights into the

distribution of discovery time. We observed that discovery

time suffers from high variance. It can be as low as few

slots to as high as thousands of slots. By performing

additional simulations we observed how the total discovery

time varies with the number of potential slaves when the

backoff limit is constant. We also observed how the total

discovery time varies with the backoff limit when the

number of potential slaves is constant. With a very small

value of backoff limit, discovery time can be too long, if

there are more than 10 potential slaves in the same area. By

performing additional simulations we observed the effec-

tiveness of two proposed improvements to device

discovery. Specifically, it is useful to avoid repetitions of A

and B trains before a train switch. On the other hand,

complete elimination of the concept of random backoff is

not a good idea because discovery time will be too long. As

a recommendation, choosing a small backoff limit of 250–

300 slots is highly effective in reducing discovery time

even if there is a large number (say, 50) of potential slaves

in the same region.

Acknowledgements This work was partially supported by the

Ministry of Education, Culture, Sports, Science and Technology,

Grants-in-Aid for Scientific Research, 20500071 and 19200005 and

Ministry of Internal Affairs and Communications in Japan, SCOPE

project(071502003).

References

1. Busboom, A., Herwono, I., Schuba, M., & Zavagli, G. (2002).

Unambiguous device identification and fast connection setup in

Bluetooth. In Proceedings of European Wireless 2002, Florence,

Italy.

2. Chakraborty, G., Naik, K., Chakraborty, D., Shiratori, N., & Wei,

D. (2004). Delay analysis and improvement of the device dis-

covery protocol in Bluetooth. In IEEE Vehicular TechnologyConference, Fall 2004, Los Angeles, USA.

3. Conti, A., Dardari, D., Pasolini, G., & Andrisano, O. (2003).

Bluetooth and ieee 802.11b coexistence: Analytical performance

evaluation in fading channels. IEEE Journal on Selected Areas inCommunications, 21(2), 259–269.

4. Haartsen, J. (1998). The universal radio interface for ad hoc,

wireless connectivity. Ericsson Review, 3, 110–117.

5. Jiang, J.-R., Lin, B.-R., & Tseng, Y.-C. (2004). Analysis of

Bluetooth device discovery and some speedup mechanisms.

Journal of the Institute of Electrical Engineering, 11(4), 301–310.

6. Kim, C., Ma, J., & Lee, J. (2001). A random inquiry procedure

using Bluetooth. In Proceedings of International Conference onCommunications and Computing, Las Vegas.

7. Liu, Y., Lee, M. J., & Saadawi, T. N. (2003). A Bluetooth

scatternet-route structure for multihop ad hoc networks. IEEEJournal on Selected Areas in Communications, 21(2), 229–239.

8. Misic, J., & Misic, V. B. (2003). Bridges of Bluetooth county:

Topologies, scheduling and performance. IEEE Journal onSelected Areas in Communications, 21(2), 240–258.

9. Murphy, P., Welsh, E., & Frantz, J. P. (2002). Using Bluetooth

for short-term ad hoc connections between moving vehicles: A

feasibility study. In Proceedings of IEEE Vehicular TechnologyConference, Spring 2002, pp. 414–418.

10. Salonidis, T., Bhagwat, P., & Tassiulas, L. (2000). Proximity

awareness and fast connection establishment in Bluetooth. In

Proc. of Mobile and Ad Hoc Networking and Computing (Mo-biHoc), Boston, pp. 141–146.

11. Siegemund, F., & Rohs, M. (2002). Rendezvous layer protocols

for Bluetooth-enabled smart devices. In Proceedings of Interna-tional Conference on Architectures of Computing Systems,Karlsruhe, Germany, pp. 256–273.

12. The Bluetooth Special Interest Group. Baseband specification

version 1.1.http://www.bluetooth.com, 2001.

13. Welsh, E., Murphy, P., & Frantz, J. P. (2002). Improving con-

nection times for Bluetooth devices in mobile environment. In

Proceedings of International Conference on Fundamentals ofElectronics, Communications, and Computer Science.

14. Woodings, R., & Joos, D., Clifton, T., & Knutson, C. D. (2002).

Rendezvous layer protocols for Bluetooth-enabled smart devices.

In Proceedings of 3rd Annual Wireless Communication andNetworking Conference (WCNC), pp. 342–349.

15. Zaruba, G.V., & Gupta, V. (2004). Simplified Bluetooth device

discovery—analysis and simulation. In Proceedings of the 37thHawaii International Conference on System Sciences, 2004.

0 200 400 600 800 1000 12000

0.5

1

1.5

2

2.5

3x 104

Backoff limit in slots

Ave

rage

tota

l del

ay in

dev

ice

disc

over

y (in

slo

ts)

−o−: Number of devices = 5−+−: Number of devices = 15−x−: Number of devices = 25−*−: Numer of devices = 50

Upper set of 4 curves:

A and B trains are repeated for 256 times each.

Lower set of 4 curves:

A and B trains are repeated for 1 time each.

Fig. 16 Average total delay in device discovery as a function of

backoff limit

Wireless Netw

123

Page 16: Analysis of the Bluetooth device discovery protocol

Author Biographies

Goutam Chakraborty received

his Ph.D. in 1993 from Tohoku

University, Japan. Presently he is

Professor and head of the Intel-

ligent Informatics Laboratory,

Department of Software and

Information Science, Iwate Pre-

fectural University, Japan. His

main research interests are Soft

computing algorithms to solve

pattern recognition, prediction,

scheduling and optimization

problems, and problems in wired

and wireless networks.

Sagar Naik received the B.S.

and M.Tech. degrees from

Sambalpur University, Sambal-

pur, India and the Indian

Institute of Technology, Khar-

agpur, respectively, the M.Math.

degree in Computer Science

from the University of Waterloo,

Waterloo, Canada and the Ph.D.

degree in Electrical and Com-

puter Engineering from

Concordia University, Montreal,

QC, Canada. He was a faculty

member with the University of

Aizu, Aizu, Japan, and Carleton

University, Ottawa, ON, Canada. At present he is an Associate Pro-

fessor in the Department of Electrical and Computer Engineering,

University of Waterloo. His research interest are in the areas of testing

communication protocols, smart antenna-based MAC protocols for

wireless LAN and optical networks, mobile computing, data access in

wireless networks, power-conscious software systems for portable

devices and coexistence of 802.11 and Bluetooth technologies.

Debasish Chakraborty re-

ceived his doctoral degree from

the Graduate School of Infor-

mation Science, Tohoku

University, Japan in 1999. Pre-

viously he was a Telecommu-

nication Advancement (TAO)

research fellow and a National

Institute of Information and

Communication Technology

(NiCT) foreign researcher at

Tohoku Research Center. Now

he is working as a visiting

Associate Professor in Research

Institute of Electrical Commu-

nication, Tohoku University. His main research interests are multicast

routing algorithm, QoS, Internet traffic analysis, and wireless and ad

hoc networking.

Norio Shiratori received his

doctoral degree from Tohoku

University, Japan in 1977. Pres-

ently he is a professor and vice

director of Research Institute

of Electrical Communication,

Tohoku University. He has been

engaged in research related to

symbiotic computing paradigms

between human and Information

Technology. He was the reci-

pient of IPSJ Memorial Prize

Wining paper award in 1985,

Telecommunication Advance-

ment Foundation Incorporation award in 1991, best paper award of

ICOIN-9 in 1994, IPSJ best paper award in 1997, and many others. He

is a fellow of IEEE, IPSJ and IEICE.

David Wei received his Ph.D.

degree in Computer and Infor-

mation Science from the

University of Pennsylvania in

1991. He is currently Professor

of Computer and Information

Science at Fordham University,

Bronx, NY. From May 1993 to

August 1997, he was on the

Faculty of the School of Com-

puter Science and Engineering,

University of Aizu, Japan, as an

Associate Professor and the a

Professor. He has authored and

co-authored more than 60 technical papers in the areas of distributed

and parallel processing, wireless networks and mobile computing, and

optical networks in various archival journals and conference pro-

ceedings. He is a lead guest editor of IEEE Journal on Selected Areas

in Communications for the special issue on Mobile Computing and

Networking. Currently, Dr. Wei focuses his research effort on mobile

computing and wireless networks.

Wireless Netw

123


Recommended