ABSTRACT
1
ABSTRACT
The work carried out in this thesis focused on the optimization and experimental evaluation of an adaptive Medium Access Control (MAC) protocol for wireless sensors networks (WSN). The nodes of a WSN are commonly powered by batteries with limited capacity and often of difficult substitution for logistic reasons. For this reason, the power consumption is a main concern in the research and development of protocols and applications for WSNs. The characteristic of the implemented protocol, called Adaptive B‐MAC+, is represented by the uses of a run‐time mechanism that optimizes the energetic efficiency and guarantees a good latency.
The Adaptive B‐MAC+ is an asynchronous protocol that provides the standard MAC functionalities, such as an effective management of collisions, fairness and good scalability. The protocol avoids idle listening (that occurs when the radio is kept in receive mode while waiting for possible transmissions) through duty‐cycling: nodes keep their radio turned off for most of the time and periodically switch it on for short periods to check for incoming transmissions.
Such a solution requires the transmission of long wakeup preambles to bridge the gap between two consecutive checks performed by receivers (contention‐
based protocols). The adaptive mechanism allows the protocol to dynamically choose the right check interval that minimizes the power consumption.
A previous version of Adaptive B‐MAC+ has been studied and modified in some of its functionalities, in order to improve its power efficiency and to obtain a correct operation of the protocol in every possible situation. In order to characterize the different traffic conditions, we considered several transmission rate intervals and analytically evaluated the set of optimal check intervals to be used for these intervals. At runtime, each node keeps a statistic of the incoming traffic and switches to the check interval corresponding to the right traffic rate interval. Each node maintains a table where, for each neighbor, is kept the
ABSTRACT
2
current length of the check interval. To make a transmission, each node have to select the appropriate length of preamble to send before of the data packet.
Such a selection is now based on the maximum check interval value present in the table of neighbors, instead on the check interval of the destination node (as in the previous version). The sender node also send its own check interval’s length within the preamble chunks (a sequence of short packets that altogether build the preamble) sent before the data packet. This way, all the nodes that receive the chunk, can use this information to fill in their neighbours tables.
Moreover, we added a functionality that allows a node to remove from its neighbours table a neighbour node that has not transmitted for a time equal to the value (in seconds) contained in the lifetime variable. We also added some state variables to improve the protocol robustness and modify its behavior.
Finally, the protocol was modified making the root node automatically sends a packet to itself whenever its check interval value is reduced, in order to advise neighbours. This avoids having neighbors missing such an information when the root node never send a data packet.
We implemented the protocol in real motes and evaluated it using different testbeds configurations. We found that the adaptive BMAC+ saves up to 41.6%
of energy with respect to a non adaptive protocol, while it is able to decrease the latency up to 80% when the traffic rate increases. We can conclude that our protocol well reacts to network changes, and that the adaptation of the check interval based on the network traffic can lead to a more efficient use of energy, thus improving network lifetime while offering a better communication latency.