Further, Nakano and Olariu [34] have presented an initialization protocol for k channel, n station RNs with CD terminating, with probability exceeding 1 – 1/n, in 10n/3k + On ln n /k ti
Trang 1CHAPTER 9
Randomized Initialization Protocols
for Radio Networks
A radio network (RN, for short) is a distributed system with no central arbiter,
consist-ing of n radio transceivers, henceforth referred to as stations We assume that the stations
are bulk-produced hand-held devices running on batteries and that it is impossible or practical to distinguish them by serial or manufacturing numbers Unlike the well-studiedcellular systems that assume the existence of a robust infrastructure, the RNs are self-or-ganizing, rapidly deployable, possibly multihop, and do not rely on an existing infrastruc-ture These networks find applications in disaster relief, interactive mission planning,search-and-rescue, law enforcement, multimedia classroom, and collaborative computing,among other special-purpose applications [16, 18, 20, 23, 26, 28] At the system level,scalability and topology management concerns suggest a hierarchical organization of RNsystems [20, 23, 26, 36, 41, 43], with the lowest level in the hierarchy being a cluster, typ-ically a single-hop subsystem As argued in [20, 23, 26, 36, 40, 41, 43], in addition tohelping with scalability and robustness, aggregating stations into clusters and, further, intosuperclusters has the added benefit of concealing the details of global network topologyfrom individual stations
im-An important task to perform is that of assigning the n stations of the radio network distinct ID numbers (vaguely similar to IP addresses) in the range 1 to n This task is
known as initialization and, we argue, is fundamental, as many of the existing protocols
195
Handbook of Wireless Networks and Mobile Computing, Edited by Ivan Stojmenovic´
Copyright © 2002 John Wiley & Sons, Inc ISBNs: 0-471-41902-8 (Paper); 0-471-22456-1 (Electronic)
Trang 2for radio networks tacitly assume that the stations already have IDs The initializationproblem is nontrivial since the stations are assumed to be indistinguishable Further, sincethe stations are power-limited, it is of importance to design energy-efficient initializationprotocols for single-hop RNs both in the case where the system has a collision detectioncapability and in the case where this capability is not present.
As customary, time is assumed to be slotted and all the stations have a local clock thatkeeps synchronous time by interfacing with a global positioning system (GPS, for short)[15, 24] We note here that under current technology, the commercially available GPS sys-tem (GPS systems using military codes achieve an accuracy that is orders of magnitudebetter than commercial codes) provides location information accurate within 22 meters aswell as time information accurate to within 100 nanoseconds [15] This is more than suffi-cient for the stations to synchronize The stations are assumed to have the computing pow-
er of a laptop computer; in particular, they all run the same protocol and can generate dom bits that provide local data on which the stations may perform computations
ran-The stations communicate using k, (kⱖ 1), radio frequencies channels We assume that
in a time slot, a station can tune to one radio channel and/or transmit on at most one sibly the same) channel A transmission involves a data packet whose length is such thatthe transmission can be completed within one time slot We employ the commonly accept-
(pos-ed assumption that when two or more stations are transmitting on a channel in the sametime slot, the corresponding packets collide and are garbled beyond recognition We dis-tinguish between RN systems based on their capability to detect collisions Specifically, inthe RN with collision detection (CD, for short), at the end of a time slot the status of a ra-dio channel is:
앫 NULL—no transmission on the channel
앫 SINGLE—exactly one transmission on the channel
앫 COLLISION—two or more transmissions on the channel
In the RN with no collision detection (no-CD, for short), at the end of a time slot the status
of a radio channel is:
앫 NOISE—ambient noise: either no transmission or collision of several transmissions
on the channel
앫 SINGLE—exactly one transmission on the channel
In other words, the RN with no-CD cannot distinguish between ambient noise and two ormore transmissions colliding on the channel A number of radio and cellular networks in-cluding AMPS, GSM, ALOHA-net, as well as the well-known Ethernet are known to rely
on sophisticated collision detection capabilities [1, 2, 10, 11, 12, 29] However, severalworkers have pointed out that from a practical standpoint the no-CD assumption makes alot of sense, especially in the presence of noisy channels, which, we argue, tends to be thenorm rather than the exception Given the additional limitations, it is far more challenging
to design efficient protocols for RNs with no-CD than for those with collision detectioncapabilities [8, 9]
It is very important to realize that since the stations of the RN are running on batteries,
Trang 3saving battery power is exceedingly important, as recharging batteries may not be an tion while on mission It is well known that a station expends power while its transceiver isactive, that is, while transmitting or receiving a packet It is perhaps surprising at first that
op-a stop-ation expends power even if it receives op-a pop-acket thop-at is not destined for it [7, 19, 21, 39,
42, 44, 45] Consequently, we are interested in developing protocols that allow stations topower their transceiver off (i.e., “go to sleep”) to the largest extent possible Accordingly,
we judge the goodness of a protocol by the following two yardsticks:
1 The overall number of time slots required by the protocol to terminate
2 For each individual station, the total number of time slots in which it has to beawake in order to transmit/receive packets
The individual goals of optimizing these parameters are, of course, conflicting It is tively straightforward to minimize overall completion time at the expense of energy con-sumption Similarly, one can minimize energy consumption at the expense of completiontime [44, 45, 46] The challenge is to strike a sensible balance between the two by design-ing protocols that take a small number of time slots to terminate while being, at the sametime, as energy-efficient as possible
rela-The main goal of this chapter is to survey some of the recent initialization protocols forsingle-hop RN The remainder of this chapter is organized as follows Section 9.2 surveysthe state of the art Section 9.3 reviews basic probability theory necessary to analyze theinitialization protocols Section 9.4 discusses a number of energy-efficient prefix sumprotocols that will turn out to be key ingredients in the remainder of this chapter In Sec-tion 9.5 we present known initialization protocols for single-channel radio networks Sec-tion 9.6 provides an extension of the single-channel initialization protocols to the case
where k channels are available Section 9.7 presents a number of energy-efficient ization protocols for k channel RNs Finally, Section 9.8 offers concluding remarks and
initial-open problems
9.2 STATE OF THE ART
As stated previously, the initialization problem involves assigning each of the n stations of
an RN an integer ID number in the range 1 to n such that no two stations share the same
ID
The initialization problem is fundamental in both network design and in multiprocessorsystems [32, 37] Recent advances in wireless communications and mobile computinghave exacerbated the need for efficient protocols for RNs As a result, a large number ofsuch protocols have been reported in the literature [3, 17, 32, 33] However, virtually all
these protocols function under the assumption that the n stations in the RN have been
ini-tialized in advance The highly nontrivial task of assigning the stations distinct ID bers, i.e., initializing the stations, is often ignored in the literature It is, therefore, of im-portance to design energy-efficient initialization protocols for RNs both in the case wherethe system has a collision detection capability and for the case where this capability is notpresent
num-9.2 STATE OF THE ART 197
Trang 4In the broad area of distributed computing, the initialization problem is also known asthe processor identity or the processor naming problem The processor identity problemand its variants, including renaming processors, has been addressed in the literature Werefer the interested reader to [4, 5, 14, 25, 27, 38] and to the various other references there-in.
In the context of radio networks, Hayashi et al [22] presented a protocol that initializes
a single-channel, n-station RN with CD in O(n) time slots with probability at least 1 –
1/2O(n) The protocol repeatedly partitions the stations of the RN into nonempty subsetsuntil, eventually, every subset consists of a single station Further, Nakano and Olariu [34]
have presented an initialization protocol for k channel, n station RNs with CD terminating, with probability exceeding 1 – 1/n, in 10n/3k + O((n ln n )/k) time slots They also
showed that if the collision detection capability is not present, the RN can be initialized,
with high probability, in 5.67n/k + O((n ln n )/k)time slots More recently, Mici ´c andStojmenovi ´c [30] improved the constant factor of the time slots necessary to initialize a
single-channel, n station RN with CD.
Bordim et al [13] showed that, if the number n of stations is known beforehand, a single-channel n station RN with CD can be initialized, with probability exceeding 1 – 1/n, in O(n) time slots with no station being awake for more than O(log n) time slots This protocol uses the initialization protocol of [22] as follows: having partitioned the n stations into n/log n subsets of roughly log n stations, each subset is initialized individ-
ually The key observation is that a station needs to be awake only for the time necessary
to initialize the subset to which it belongs By using the protocol of [22], each subset can
be initialized, with probability exceeding 1 – 1/2O(log n) , in O(log n) time slots and, thus,
no station has to be awake for more than O(log n) time slots Once each subset has been
initialized, a simple prefix sum computation allows the stations to update their local ID
to the desired ID Bordim et al [13] went on to show how to use the single-channel
ini-tialization protocol to initialize, with probability exceeding 1 – 1/n, a k channel, (kⱕ
n/log n), RN with CD in O(n/k) time slots with no station being awake for more than O(log n) time slots More recently, Nakano and Olariu [35] presented an initialization
protocol for k channel, n station RNs with no-CD terminating, with probability ing 1 – 1/n, in O(n/k + log n) time slots, with no station being awake for more than
exceed-O(log log n) time slots
9.3 A REFRESHER OF BASIC PROBABILITY THEORY
The main goal of this section is to review elementary probability theory results that areuseful for analyzing the performance of our protocols For a more detailed discussion ofbackground material we refer the reader to [31]
Throughout, Pr[A] will denote the probability of event A Let E1, E2, , E mbe trary events over a sample space The well-known De Morgan law states that
Trang 5where Ei is the event that occurs if and only if E idoes not In addition, it is known that
Pr m
i=1 E iⱕi=1 m Pr[E i] (9.2)
with equality holding if the events E is are disjoint
For example, assume that the stations of an RN have been partitioned into k groups G1,
G2, , G k and that for a given i, (1 ⱕ i ⱕk), the probability of the event Ei that group G i
fails to satisfy a predicate P is p i Now, (9.1) and (9.2) combined guarantee that the bility of the event that all the groups satisfy predicate P is:
proba-Pr[E1 E2 · · · E k ] = 1 – Pr[E1E2···E k]
= 1 – Pr[E1 E2 · · · E k] ⱖ 1 – i=1 m p i (9.3)
Notice that (3) holds regardless of whether or not the events Ei are independent
For a random variable X, E[X] denotes the expected value of X Let X be a random able denoting the number of successes in n independent Bernoulli trials with parameters p and 1 – p It is well known that X has a binomial distribution and that for every r, (0 ⱕ r ⱕ
n r
9.3 A REFRESHER OF BASIC PROBABILITY THEORY 199
Trang 6Our goal is to determine the values of E[X] and ␣(n) in such a way that, for any fixed fⱖ
␣(n) = pE[X] < pn + 2p ln f + o[p(n + ln f )] (9.13)
We note here that (9.13) will be used repeatedly in the remainder of this chapter to boundthe tail of various binomial distributions
Finally, we take note of following classic double inequality that will be used frequently
in the remainder of this work
Lemma 3.1 For every natural number n, (n ⱖ 2), (1 – 1/n) n < 1/e < 1 – (1/n) n–1
9.4 ENERGY-EFFICIENT PREFIX SUMS PROTOCOLS
The purpose of this section is to discuss energy-efficient prefix sums protocols for hop radio stations
single-Consider first the case of a single-hop, single-channel RN with n (n ⱕ m) stations each
of which have a unique ID in the range [1, m] Let S i(1 ⱕ i ⱕm) denote the station with
ID i Note that for some i, S imay not exist
We assume that every station S i stores a number x i The well-known prefix sums
prob-lem seeks to determine for every S i the sum of x j s with indices no larger than i, that is,
{x j| 1 ⱕ j ⱕi and S jexists}
(1 – ⑀)E[X] = n
(⑀2/2)E[X] = ln f
1ᎏ
f
*In this work we let ln n and log n denote the natural logarithm and the logarithm to base 2, respectively.
Trang 7A naive protocol to solve the prefix sums problem in m – 1 time slots proceeds as follows:
in time slot j, (1 ⱕ j ⱕm – 1), station S j transmits x j on the channel, and every station S i ( j < i) monitors the channel By summing the numbers transmitted, each station can deter-
mine the corresponding prefix sum Observe that this simple protocol is not energy
effi-cient, because the last station S m has to be awake for m – 1 time slots.
We now introduce an energy-efficient protocol to solve the prefix sums problem Whenour protocol terminates, the following three conditions are satisfied:
1 Every active station S i, (1 ⱕ i ⱕn), stores its prefix sum
2 The last station S k , such that no station S i with i > k exists, has been identified
3 The protocol takes 2m – 2 time slots and no station is awake for more than 2 log m
time slots
If m = 1, then S 1 knows x1and the above conditions are verified Now, assume that mⱖ
2 and partition the n stations into two groups P1= {S i| 1 ⱕ i ⱕm/2} and P2= {S i | m/2 + 1
ⱕ i ⱕm} Recursively solve the prefix sums problem in P1and P2 By the induction pothesis, conditions (1)–(3) above are satisfied and, therefore, each of the two subprob-
hy-lems can be solved in m – 2 time slots, with no station being awake for more than 2 log m
– 2 time slots
Let S j and S kbe the last active stations in P1 and in P2, respectively In the next time
slot, station S jtransmits the sum ⌺{xi| 1 ⱕ i ⱕj and S i P1exists} on the channel Everystation in P2monitors the channel and updates accordingly the value of its prefix sum In
one additional time slot, station S kreveals its identity
The reader should have no difficulty confirming that when the protocol terminates,conditions (1)–(3) above are satisfied To summarize, we have proved the following result
Lemma 4.1 Assuming that the n (n ⱕm) stations of a single-hop, single-channel, radio
network have unique IDs in the range [1, m], the prefix sums problem can be solved in 2m – 2 time slots, with no station being awake for more than 2log m time slots
We next extend the energy-efficient prefix sums protocol for single-channel RNs to the
case where k (k ⱖ 1) channels are available We begin by partitioning the stations into k equal-sized groups G1, G2, , G k such that G i = {S j | (i – 1) · m/k + 1 ⱕ j ⱕi · m/k and S j
exists} By assigning one channel to each such group, the instance of the prefix sums
problem local to each group G ican be solved using the protocol for the single-channel
case discussed above By Lemma 4.1, this task can be completed in 2m/k – 2 time slots, with no station being awake for more than 2 log m/k time slots.
At this point, we have the local sum sum(G i ) of each G iand we need to compute the
prefix sums of sum(G1), sum(G2), , sum(G k) This can be done by modifying slightlythe protocol described for the single-channel RN Recall that in the single-channel proto-col, the prefix sums of P1are computed recursively, and those for P2are computed recur-
sively Since k channels are available, the prefix sums of P1and P2are computed
simulta-neously by allocating k/2 channels to each of them After that, the overall solution can be
obtained in two more time slots Using this idea, the prefix sums problem can be solved in
9.4 ENERGY-EFFICIENT PREFIX SUMS PROTOCOLS 201
Trang 82m/k + 2 log k – 2 time slots, with no station being awake for more than 2 log m/k + 2 log
k = 2 log m time slots To summarize, we have proved the following result.
Lemma 4.2 Assuming that the n (n ⱕ m) stations of a single-hop, k channel radio work have unique IDs in the range [1, m], the prefix sums problem can be solved in 2m/k + 2 log k – 2 time slots, with no station being awake for more than 2 log m time slots The next result specializes Lemma 4.2 to the case of a single-hop, k channel radio net- work with at most k stations with distinct IDs in the range [1, k].
net-Corollary 4.3 Assuming that the k stations of a single-hop, k channel radio network have unique IDs in the range [1, k], the prefix sums problem can be solved in 2 log k time
slots
9.5 INITIALIZING A SINGLE-CHANNEL RN
This section presents initialization protocols for single-hop, single-channel, n station radio
networks In Subsection 9.5.1, we focus on the task of initializing a radio network with no
collision detection capabilities, where the number n of stations is known in advance This first protocol terminates, with probability exceeding 1 – 1/f , in en + 2e ln f + o(n + ln f )
time slots In Subsections 9.5.2 and 9.5.3, we turn to the more realistic case where the
number n of stations is not known in advance Specifically, in Subsection 9.5.2 we show that if the collision detection capability is present, an n station radio network can be ini- tialized by a protocol terminating, with probability exceeding 1 – 1/f , in 4n + 8 ln f + o(n + ln f ) time slots Finally, in Subsection 9.5.3 we show that if the stations lack collision de- tection, initialization can be performed, with probability exceeding 1 – 1/f , in 12n +
O[(log f )2] + o(n) time slots.
9.5.1 Protocol for Known n and No CD
Consider a single-hop, single-channel n station RN where the number n of stations is
known in advance The idea of the initialization protocol is quite simple and intuitive To
begin, each station transmits on the channel with probability 1/n until the status of the
channel is single At this point, the station that has transmitted receives the ID of 1 andleaves the protocol Next, the remaining stations transmit on the channel with probability
1/n – 1 until the status of the channel is single Again, the unique station that has
transmit-ted in the last time slot receives the ID of 2 and leaves the protocol This is then continueduntil all the stations have received their IDs The details are spelled out as follows
Protocol Initialization-for-known-n
for m n downto 1 do
repeat
each station transmits on the channel with probability 1/m (夹)
until the status of the channel is SINGLE;
Trang 9the unique station that has transmitted in the previous time slot
receives ID number n – m + 1 and leaves the protocol
endfor
The correctness of protocol Initialization-for-known-n being easily seen,
we now turn to the task of evaluating the number of time slots it takes the protocol to minate We say that the current time slot in step (夹) is successful if the status of the chan-
ter-nel is single Let X be the random variable denoting the number of stations transmitting in
a given time slot Then, by virtue of (9.4) and of Lemma 3.1, at the end of this time slot thestatus of the channel is single with probability
Pr[X = 1] = 1
1 – m–1
= 1 – m–1
> (by Lemma 3.1)
Clearly, protocol Initialization-for-known-n requires n successful time slots
to terminate Let Y be the random variable denoting the number of successful time slots
among the first ␣(n) time slots in step (夹) of the protocol It is clear that E[Y] > ␣(n)/e.
We wish to determine ␣(n) such that for every fⱖ 1
Pr[Y < n] = Pr{Y < (1 – ⑀)E[Y]} <
Now, using (9.13) we obtain E[Y] = n + 2 ln f + o(n + ln f ) and, therefore, ␣(n) = en + 2e ln
f + o(n + ln f ).
We just proved that with probability exceeding 1 – 1/f , among the first en + 2e ln f +
o(n + ln f ) time slots there are at least n successful ones.
Importantly, our protocol does not rely on the existence of the collision detection bility Therefore, we have the following result
capa-Theorem 5.1 The task of initializing a single-hop, single-channel n station radio work with known n terminates, with probability exceeding 1 – 1/f ( f ⱖ 1), in en + 2e ln f + o(n + ln f ) time slots, regardless of whether or not the system has collision detection ca-
net-pabilities
9.5.2 Protocol for Unknown n: The CD Case
The idea behind the initialization protocol for the single-channel RN with CD is to struct a full binary tree (each of whose internal nodes has exactly two children) that wecall a partition tree As it turns out, the leaves of the partition tree are, with high probabil-ity, individual stations of the RN Some leaves may be empty but, as we shall see, thisevent has a small probability The internal nodes of the partition tree are associated withgroups of two or more stations By flipping coins, these stations will be assigned to the
con-1ᎏ
f
1ᎏ
e
1ᎏ
m
1ᎏ
m
1ᎏ
m
m
1
9.5 INITIALIZING A SINGLE-CHANNEL RN 203
Trang 10left or right subtree rooted at that node For an illustration of a partition tree corresponding
to a five-station RN we refer the reader to Figure 9.1
Each station maintains local variables l, L, and N Let Pidenote the group of stations
whose local variable l has value i Notice that the collision detection capability allows us
to determine whether a given node is a leaf or an internal node This is done simply bymandating the stations associated with that node to transmit and by recording the corre-sponding status of the channel The details of the initialization protocol follow
Protocol Initialization-with-CD;
each station sets l L N 1;
// initialize P1 all stations;
while Lⱖ 1 do
all stations in P Ltransmit on the channel;
if Channel_status = COLLISION then
each station in P Lflips a fair coin;
all stations set L L + 1;
all stations that flipped “heads” set l L
else
if Channel_status = SINGLE then
the unique station in P Lsets ID N and leaves the protocol;
all stations set N N + 1
Trang 11To address the correctness of protocol Initialization-with-CD we note that
no station is associated with more than one node at each level in the partition tree over, if a station is associated with an internal node of the partition tree, then it is associat-
More-ed with all the nodes along the unique path to the root Consequently, each station will end
up in exactly one leaf of the tree Since the partition tree is traversed in a depth-first
fash-ion, each station is guaranteed to eventually receive an ID The fact that N is only
incre-mented when the status of the channel is single guarantees that no two stations will receive
the same ID and that the IDs are consecutive numbers from 1 to n.
Next, we now turn to the task of evaluating the number of time slots it takes the col to terminate It should be clear that the total number of nodes in the partition tree isequal to the number of time slots Thus, we are going to evaluate the number of nodes.Call an internal node of the partition tree successful if both its left and right subtrees are
proto-nonempty It is clear that every partition tree of an n station RN must have exactly n – 1
successful internal nodes
Consider an internal node u of the partition tree that has m (mⱖ 2) stations associated
with it The probability that an internal node with m stations is partitioned into two subsets
is at least
Let Z be the random variable denoting the number of successes in g(n) of independent
Bernoulli trials, each succeeding with probability 1 We wish to determine g(n) such that
Pr[Z < n] = Pr{Y < (1 – ⑀)E[Z]} <
Now, using (9.13) we obtain E[Z] = n + 2 ln f + o(n + ln f ) and, therefore, g(n) = 2n + 4 ln
f + o(n + ln f ) It follows that, for every f ⱖ 1, with probability at least 1 – 1/f , the partition tree has at most 2n + 4 ln f + o(n + ln f ) internal nodes Further, it is well known that a full binary tree with N internal nodes has exactly N + 1 leaf nodes Therefore, with probability exceeding 1 – 1/f , the partition tree has 4n + 8 ln f + o(n + ln f ) nodes Consequently, we
have proved the following result
Theorem 5.2 Even if n is not known beforehand, a single-hop, single-channel, n station radio network with CD can be initialized, with probability exceeding 1 – 1/f , for every fⱖ
1, in 4n + 8 ln f + o(n + ln f ) time slots
9.5.3 Protocol for Unknown n: The No-CD Case
Suppose that the stations in a subset P transmit on the channel If the stations can detect
collisions, then every station can determine whether |P | = 0, |P | = 1, or |P | ⱖ 2 On theother hand, if the stations lack the collision detection capability, then they can only deter-mine whether |P | = 1 or |P | ⫽ 1
Next, we show that once a leader is elected, the RN with no-CD can simulate one time
1ᎏ
f
1ᎏ2
1ᎏ
2m–1
9.5 INITIALIZING A SINGLE-CHANNEL RN 205
Trang 12slot of the RN with CD in three time slots In other words, the RN with no-CD can mine whether |P | = 0, |P | = 1, or |P | ⱖ 2 Let p be a leader.
deter-First, the leader p informs all the remaining stations whether p P or not After that,
the following protocol is executed:
Case 1: p P Since |P | ⱖ 1, it is sufficient to check whether |P | = 1 or |P | ⱖ 2 The
sta-tions in P transmit on the channel If the status of the channel is single, then |P | = 1,
otherwise, it must be that |P| ⱖ 2
Case 2: p P By mandating the stations in P to transmit on the channel we can
deter-mine if |P | = 1 or |P | ⫽ 1 Similarly, by mandating the stations in P {p} to transmit,
we can determine if |P | = 0 or |P | ⫽ 0 These two results combined allow the stations todetermine whether |P | = 0, |P | = 1, or |P | ⱖ 2
Thus, three time slots are sufficient to simulate the RN with CD if a leader is electedbeforehand For the sake of completeness we now present a leader election protocol forsingle-hop, single-channel radio networks with no-CD
Protocol Election-with-no-CD
for i 0 to ⬁ do
for j 0 to i do
each station transmits on the channel with probability 1/2j;
if Channel_status = SINGLE then
the unique station that has transmitted is declared the leader
endif
end for
end for
It is clear that protocol Election-with-no-CD terminates with the correct
elec-tion of a leader Let s be the unique integer satisfying 2 s ⱕ n < 2 s+1 We say that a time slot
is good if j = s, that is, if 2 j ⱕ n < 2 j+1 A good time slot succeeds in finding a leader withprobability
On the other hand, the first s + t iterations of the outer for-loop, corresponding to values
of i between 0 and s + t – 1, are guaranteed to contain t good time slots It follows that the first 1 + 2 + · · · + (s + t) = O(s + t)2time slots must contain t good ones Since s = log n
we have proved the following result
1ᎏ
e2
1ᎏ
e2
1ᎏ
2s
1ᎏ
2s
1ᎏ
2s
n
1