Sede TB-HF

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Adaptive Slot Assignment Over Wireless Sensor Networks

T. Bernard H. Fouchal
CReSTIC lab. Syscom team CReSTIC lab. Syscom team
URCA URCA
Reims 51687 Cedex2 Reims 51687 Cedex2

Abstract sends all the aggregated data to the base station. Af-
In wireless sensor networks, one of the most im- terward, each sensor moves to a sleeping mode for the
portant challenge is power saving, then various contri- rest of the round. Here, we suggest to spread each
butions are suggested since a decade. In this paper, round on some slots. A slot is the amount of time
we propose a distributed and an adaptive gossiping needed for any sensor to receive data from another one.
technique able to guarantee communications over all Then a sensor si will wake up at a specific slot. In the
sensors and to save a high amount of energy. The aim meantime, the sensor si−1 should be awaked, si−1 will
is to allow to the network to achieve a self organiz- send data to si . Then si−1 will move to a sleeping
ing procedure in order to provide an efficient structur- mode in the next slot. At that slot, si+1 will wake up
ing approach for communications over sensors. The to receive data from si . Then after, si will move to
medium access will be TDMA like. Indeed, each sen- a sleeping mode in the next slot. At the end of the
sor will have a particular slot for listening and another round, the relay node sensor will send all aggregated
one for sending. The slot assignment is achieved in a information to the base station. We detail all needed
distributed manner and is continuously reconfigurable procedures to implement this technique and show also
during the running. That means when a sensor leaves how to handle fault-tolerance. Many illustrated exam-
the network, its assigned slot will be recovered. Our ples are shown.
main contribution, is to show how our approach will This paper is organized as follows, section 2
ensure the reconfiguration of the network in order to presents related works about communications over
remove the ”dead” slot. WSN. In section 3, we give the preliminaries required
to explain our technique. Section 4 is dedicated to our
contribution, the proposed algorithms are detailed. In
section 5, we conclude our study and give some hints
1 Introduction
about future works.
Wireless sensor networks (WSNs) are promising
technologies composed of wireless tiny electronic de-
vices, namely sensors, equipped with one or more 2 Related works
transducers. These sensors are designed to monitor
physical environments and to collect data from them. Wireless sensor networks (WSN) are networks
Actually, WSNs can be used in several areas [3]: bio- composed of sensors and transducers and can be used
logical environment, security, military, etc... in many areas as medical context in order to monitor
We focus in this paper on power saving and more patients [3] and many others.
precisely on the energy consumed for communication In [4], authors present an energy-efficient, scal-
between sensors. Our aim is to structure the commu- able and collision-free MAC layer protocol for sensor
nications between sensors at the application level, to networks. The approach promotes time-based arbi-
minimize energy spent for communications. tration of medium access to limit signal interference
Main sensor applications are designed to monitor among the transmission of sensors. Transmission and
environmental parameters over a geographical area. reception time slots are prescheduled to allow sensors
We consider that the WSN executes the same job at to turn their radio circuitry off when not engaged. In
each round (which could be fixed in advance or could addition, energy consumption due to active to sleep
be variable). The procedure runs as follows: at the be- mode transitions is minimized through the assignment
ginning of each round, each sensor wakes up, scans its of contiguous transmission/reception slots to each sen-
associated parameters (temperature, humidity, light, sor.
...) and sends them to the relay sensor node which [6] proposes a TDMA based scheduling scheme
that balances energy-saving and end-to-end delay.
This balance is achieved by an appropriate schedul-
ing of the wakeup intervals, to allow data packets to
be delayed by only one sleep interval for the end-to-
end transmission from the sensors to the gateway. The
proposed scheme achieves the reduction of the end-to-
end delay caused by the sleep mode operation while at
the same time it maximizes the energy savings.
Another issue denoted Dynamic Power Manage-
ment (DPM) technology has been widely used in sen-
sor networks. Though many specific technical chal-
lenges remain and deserve much further study, the pri- Figure 1: Energy consumption of Mica 2 nodes
mary factor currently limiting progress in sensor net- through different states
works is not these challenges but is instead the lack of
an overall sensor network architecture.
In [5], authors suggests a new architecture of sen- 3.2 Network model
sor networks with new threshold which satisfies the
sleep-state transition policy. Under this new architec- The system contains a set of n independent sen-
ture, nodes in deeper sleep states consume lower en- sors, communicating over a wireless network. A wire-
ergy while asleep, but require longer delays and higher less sensor network can be represented by a graph
latency costs to awaken. Implementing DPM with con- G = (V, E), where V is a set of sensors and E a set
sidering the battery status and probability of event of edges which express the available communications:
generation will reduce the energy consumption and (i, j) belongs to E means that i can send messages to
prolong the whole lifetime of the sensor networks. j.
In [2], we proved that the power management In a given graph G = (V, E), we denote by n =
could be achieved at the application level. We have |V | the number of sensors in the network. Each node
used MicaZ sensors to show that we can use distributed executes the same algorithm. The neighbor set Ni of
management techniques over all sensors. On fact we a sensor i is defined as Ni = {j ∈ V |(i, j) ∈ E}. The
manage the sleeping mode from the application level. number of neighbors of a sensor i is calledP the degree,
deg(i)
i∈V
denoted by deg(i). The average degree is n .
3 Preliminaries
We will handle on a wireless sensor network 4 Contributions
W SN composed of n nodes identified as s1 , ..., sn . In
our case, each sensor will repeat the same task period- We propose in this paper an adaptive structuring
ically (with a period Ti ). approach for communications between sensors in order
Each sensor si needs the amount of time tsi to achieve to decrease the battery consumption.
its task (tsi ≤ Ti ). Each sensor has its own clock ci . In Authors of [1] detail the energy consumption of
order to be realistic, we consider that clocks of sensors different parts of a sensor node. They have shown
are not synchronized, that means: ci (0) 6= cj (0), ∀i 6= that the main energy is consumed by communications
j. We assume that each period Ti (∀i 6= n) has the between sensors.
value T . That means that all sensors calibrate their Thus the avoidance of unnecessary communica-
job on the period T . tions will preserve battery and prolong sensor life-
time. This will also avoid collisions that are also
3.1 Assumptions costly;We propose to reduce the time elapsed in the
states Transceiver and run (Figure 1).
We consider the following assumptions:
• Each sensor has an unique identifier, 4.1 Informal description of gossiping tech-
nique
• ∀(i, j) ∈ V 2 , d(i, j) < R all sensors are in the same
radio range,the network is 1-hop. Decreasing battery consumption will be achieved
• Sending a message is instantaneous, by structuring the communication among all sensors.
We will build an abstract ring structure over the sensor
• Each sensor is running a task at the same speed. network. The advantage to use a ring communication
Synchro Communication Stab. Communication

Failure

Figure 3: Steps scheduling

the ring communication structure by assigning for each


Figure 2: Gossiping between sensors on a ring struc- sensor an unique identifier according to a DFS (Depth
ture First Search) traversal strategy.In this step, all sensors
are awake. Many collisions may occur.
The algorithm will then adjust the clock of each
sensor based on the delay of the round trip communi-
architecture is that there is only one sensor that sends
cation period between the leader and the sensor, and
data, and only one other sensor that is receiving them
assigns a specific slot for each sensor.
(i.e. all other sensors are in the sleeping mode). Such
The aim of this step is to synchronize all sen-
a structure permits to avoid collisions when several
sors. That means that all sensors will be calibrated on
sensors are sending data together. The organization
the same clock. First of all, the main idea is to elect
of the discussion between sensors on the ring are de-
a leader which will supervise the setup. The leader
scribed in Figure. 2.
will assign a unique identifier for each sensor. The
This ring structure should be adapted at each
leader will send for each sensor a specific packet de-
time when a sensor is disconnected from the network
noted GIVE-YOUR-TIME (asking for the sensor clock
(not enough battery, transceiver failure, distance from
time) and the acknowledge packet will be MY-TIME
other sensors,. . . ). The adaptation of the ring archi-
(responding with the value of its clock). After visiting
tecture will be done by renumbering sensors and up-
all nodes, the leader knows the delay of each sensor.
dating slot assignment of all sensors.
It will ask each sensor to delay its clock. During this
This implies to propose a 3-steps solution:
step, all sensors are awake and are either in a ”sending
• Synchronization step: in this step, nodes will mode” or a ”listening mode”. In the following, we will
agree to establish a discussion in an ordered way. detail our algorithms for each task.
This implies to elect a leader, to number sensors,
to synchronize sensors and to assign for each sen- 4.2.1 Leader election
sor a specific slot during which it can send a mes-
sage. It this step, all sensors are awake. The algorithm exe-
cuted by each sensor is described as follows :
• Communication step: once the synchronization
step is achieved, the communication step takes Algorithm 1 Election procedure for node i
place, and the nodes keep awake during their slot, 1: LeaderId ←− i
receive data, aggregate sensing data and send up- 2: while NotElapsed(Period) do
dated data. 3: Broadcast(LeaderId)
4: if Collision detected then
• Stabilization step: when a sensor crashes, the ring 5: wait(random)
structure will be adapted in a distributed manner. 6: goto 3
In this step, we have to care about several cases : 7: end if
multiple crashes, leader crash, . . . 8: receive(L)
9: if (L > LeaderId) then
The three steps will be organized as described in 10: LeaderId ←− L
Figure 3. The first one deals with the network setup. 11: end if
The communication step takes care of communications 12: end while
over the WSN. Each time a sensor crashes, a stabiliza-
tion step is required to update the ring communication Each sensor will run this program. At the end
structure. of the procedure, each sensor should have the same
leader Id which should be maximum identifier value
4.2 Synchronization step of all sensors. The idea is quite simple : when a node
receives an identifier, it will compare it to its identifier.
To achieve the ring setup, our algorithm will elect if it is greater, it consider this received identifier as
a leader among all the sensors. This leader will build the possible leader node otherwise it will consider that
it will consider that it may be the leader who my be Algorithm 2 Numbering with a DFS Traversal on
elected. After some broadcasts, the whole network will sensors
agree on Leader identifier. 1: At begining : F ather = ndef, ∀i ∈ V, used[i] = f alse
The period elapsed should be long enough to per- 2: /* Leader only*/
mit to each node to broadcast its identifier. This pe- 3: F ather ←− i
riod of time depends on the number of sensors. A ran- 4: Choosej0 ∈ N eigh
dom waiting period is used to avoid multiple collisions 5: used[j0 ] ←− T rue
situations. 6: Send Token (0) to j0
7: /* All sensors*/
8: Reception of token (k) de j0
4.2.2 Sensor numbering 9: if F ather = ndef then
Sensor numbering aims to provide an order for data 10: id ←− k
11: F ather ←− j0
collecting over the network. Slot assignment (Section
12: end if
4.2.4) will use the numbering done in this section.
13: if ∀j ∈ N eigh, used[j] = true then
The main idea of this algorithm is to use a DFS 14: id ←− k
traversal over the entire network, and at each new vis- 15: End of Numbering procedure
ited node, the algorithm (see Algorithm 2 assigns an 16: else
identifier (line 10 and 14). The traversal is achieved 17: if ∃j ∈ N eigh, j 6= F ather ∧ ¬used[j] then
thanks to a gate marking strategy (At each movement 18: if F ather 6= j0 ∧ ¬used[j0 ] then
of the token in the network the used gate is marked, 19: j ←− j0
that avoids to use it again). 20: else
When the algorithm ends, we will be able to ob- 21: Choose j ∈ N eigh\{F ather} ∧ ¬used[j]
serve that each sensor has its own identifier (an unique 22: k ←− k + 1
23: end if
number). This identifier will be very useful for the
24: used[j] ←− T rue
whole technique. Each sensor keep sits identifier un-
25: send Token (k) to j
less a trouble appears on the WSN. 26: else
27: used[f ather] ←− T rue
4.2.3 Clock calibration 28: Send Token (k) to j
29: end if
It this step, all sensors are awake. The leader will be 30: end if
the initiator of the polling procedure and other nodes
will only answer for leader requests (cf. Algorithm 3
and 4). Algorithm 3 Procedure for the Leader
1: for i = 1 to (LeaderId − 1) do
2: Let C be local Clock
4.2.4 Slot assignment 3: Send to i ”GIVE-YOUR-TIME”
This last step before effective communications will as- 4: Receive from i ”MY-TIME ” at clock X
sign to each sensor a slot for listening and a next one 5: Send to i ”RESET-CLOCK”(X+(X-C)/2)
6: end for
for sending. The setup of this slot is done by the leader
(cf Alg. 5 and 6).
Algorithm 4 Procedure for each node except the
4.3 Communication step and data aggre- Leader
gation 1: Receive from Leader ”GIVE-YOUR-TIME”
2: Send to Leader ”My-TIME”
3: Receive from Leader ”RESET-CLOCK”(X)
The aim of this step is to gather data among all
4: Reset Clock(X)
sensors of the network. To achieve this task, at the
beginning of a round the leader will start a traversal
of the ring with a token, and each sensor will aggre- Algorithm 5 Procedure for the Leader
gate its scanned data into the token message. As an 1: M yReceivingSlot ←− id ∗ T askT ime
example, in Figure 5, we show that the token message 2: M ySendingSlot ←− 0
is sent from the leader with only one data inside. Af-
ter a round over the WSN, the leader receives a token Algorithm 6 Procedure for each node id except the
having data aggregated from all other sensors. Leader
The algorithmic procedure is as follows, for each 1: M yReceivingSlot ←− id ∗ T askT ime
node except the relay node: 2: M ySendingSlot ←− (id + 1) ∗ T askT ime
and for the leader, the procedure is:
Base Base Base Base
station station station station
Base Base
station station

sensor 4
(leader)

sensor 4 sensor 3
(leader) R S R S R S
sensor 2
sensor 3
R S R S
sensor 1
sensor 2
R S R S

sensor 1
T T T-1s
R S R S
Sensor 2 Failure

Round Period Round Period ...


Figure 6: Slot adjustment on a failure
Figure 4: Slot assignment over sensors
Topology Management Scanned Data

1
5 0 1 2 3 4 T° H T° P P T°

T H L P T L T Circulating Word

T° pos 1
6 7

Figure 7: Circulating word in the token message


Base Station

Humidity
Light pos 2 2

With such a strategy, each sensor is awake during


T H
two successive slots.
T H L P T

4.4 Stabilization step


Light pos 1
5
T° pos 2 3 Our solution has to take care about disconnec-
T H L tion of any sensor in the network. In order to guar-
T H L P antee the communications between sensors, when a
4 Pressure
sensor crashes, the ring structure has to be updated
through the sensor’s slot assignment. The disconnec-
tion will be detected with a basic acknowledgement
Figure 5: Data aggregation over the ring
protocol: a sensor receiving the token message, will
acknowledge its reception to the sender node. When
an acknowledgement is missing, the sending node will
Algorithm 7 Procedure for a non-leader node
keep awake until it finds another node able to receive
1: Wake up
its token(obviously, the next node of the crashed one).
2: Receives Token Message T
Then the slots assigned to other nodes have to be shift.
3: envir parameter ←− scann envirronment()
4: T [id] ←− envir parameter The parameters of the shift procedure depends on the
5: Broadcast Token Message T number of nodes crashed and their location in the ring
6: Sleep We propose to manage the slot assignment by us-
ing the concept of circulating word. A circulating word
is encapsulated in a token message with scanned data
Algorithm 8 Procedure for the leader node (Figure 7), it collects and broadcasts pieces of infor-
1: Wake up mation along its moves through the network. The cir-
2: Receives Token Message T culating word will contain the location of each sensor
3: Relay Token Message T to the base station
in the ring.
4: envir parameter ←− scann envirronment()
5: T [id] ←− envir parameter
If no acknowledgement from a sensor sj is re-
6: Broadcast Token Message T ceived, a sensor si will increase the length of its slot
7: Sleep in order to communicate with the successor of sj . si
updates also the circulating word by deleting sj from
the circulating word. If the successor of js has also 5 Conclusion and future work
crashed, si will increase again its slot until it is able to
communicate with another sensor. In this case, it re- In this study we have shown that efficient dis-
move all nodes (who has crashes) from the circulating tributed techniques widely used in distributed comput-
word. ing can provide very promising results for MAC access
The reassignment of the communication slots are over WSN. We have presented a distributed slot as-
done with the circulating word. We also have to deal signment for each sensor of the network. During the
with a specific kind of crash: the leader sensor. If the communication period, we assume that only two sen-
leader crashes, no information will be transmitted to sors could communicate which avoids collisions. This
the base station. To solve this problem, the leader will approach is fault-tolerant since if any change appears
be re-computed during the execution. This gives the in the network, in particular when a sensor leaves the
following algorithm: network, we apply a specific procedure to recover the
correct functioning. The approach is energy-balanced,
that means that each sensor will spend the same time
Algorithm 9 than others since they execute the same job during the
1: Wake Up same period.
2: Reception of the token message T :< This technique can only be used for particular
CW [], SD[] > situations: all sensors are in the same radio range and
3: id ←− index of (id) each sensor has to execute the same job periodically.
4: Send Acknowledgment < Ack, id > This restrictions allow to solve many usual problems
5: if id = maxi∈{1,...,size(CW )}CW [i] then as patient monitoring, robot monitoring, ... In order
6: Send Token Message to Base Station to tackle other issues, routing algorithms should be
7: end if integrated in our approach. This extension, will allow
8: T.SD[id] ←− scann environment() to cover networks of many sensors over wide areas.
9: Broadcast Token Message T We have undertaken recently a scalability study
10: Reception Acknowledgment< Ack, i > of this approach using simulation in order to check
11: if i 6= T.CW [id + 1] then the feasibility on large WSN. For the next future, we
12: Delete T.CW [id + 1], . . . T.CW [i − 1] intend to implement this approach in a software-free
13: Delete T.SD[id + 1], . . . T.SD[i − 1] sensors io
14: end if
15: Sleep for size(CW ) slots
References
A token T message is composed of the following [1] A. da Cunha and D. da Silva Jr. An approach for the
data: reduction of power consumption in sensor nodes of
wireless sensor networks: Case analysis of mica2. In
Proceedings of 6th Workshop on Embedded Computer
• CW []: is the circulating word that manages the Systems: Architectures, MOdeling, and Simulation,
topology of the network. It is a vector with sensor LNCS 4017, pages 132–141, 2006.
ids. The size of the circulating word determines [2] H. Fouchal, Y. Francillette, P. Hunel, and N. Vidot. A
the length of the round for collecting all the data distributed power management optimization in wire-
scanned on the network. less sensor networks. In Proceedings of 34th annual
IEEE LCN, pages 763–769, Zurich, Switzerland, 2009.
[3] Y. I. F. Akyildiz, W. Su and E. Cayirci. Wire-
• SD[]: is the data scanned by each sensor. less sensor networks: a survey. Computer Networks,
38(4):393–422, March 2002.
[4] G. Jolly and Y. Mohamed. An energy-efficient, scal-
Identifiers of sensors are permanently updated able and collision-free mac layer protocole for wireless
(see line 3), and the leader is also recomputed at each sensor networks. Wireless Communications and Mo-
token hop (Alg.9 line 5). At line 9, the sensor id broad- bile Computing, 5:285–304, 2005.
casts the token message and waits for an acknowledge- [5] C. Lin, N. Xiong, J. H. Park, and T. hoon Kim. Dy-
namic power management in new architecture of wire-
ment (it broadcasts the message until the acknowledg-
less sensor networks. Internationl Journal of Commu-
ment is received). Its successor in the ring should be
nication Systems, 22.
the one which should acknowledge. In the other case, [6] N. A. Pantazis, D. J. Vergados, D. D. Vergados, and
the algorithm updates the token (update of the circu- C. Douligeris. Energy efficiency in wireless sensor net-
lating word and the deletion of the associated scanned works using sleep mode tdma scheduling. Ad Hoc Net-
data). works, 7.

You might also like