• Nenhum resultado encontrado

Maximum lifetime broadcast problem in wireless sensor networks

N/A
N/A
Protected

Academic year: 2021

Share "Maximum lifetime broadcast problem in wireless sensor networks"

Copied!
78
0
0

Texto

(1)

Universidade Federal da Bahia

Escola Polit´

ecnica / Instituto de Matem´

atica

Programa de P´

os-Gradua¸c˜

ao em Mecatrˆ

onica

BRUNO RIOS PATRIARCA NUNES

MAXIMUM LIFETIME BROADCAST

PROBLEM IN WIRELESS SENSOR

NETWORKS

DISSERTAC

¸ ˜

AO DE MESTRADO

Salvador

2013

(2)

BRUNO RIOS PATRIARCA NUNES

MAXIMUM LIFETIME BROADCAST PROBLEM IN WIRELESS

SENSOR NETWORKS

Disserta¸c˜ao apresentada ao Programa de P´os-Gradua¸c˜ao em Mecatrˆonica da Escola Polit´ecnica e do Instituto de Matem´atica, Universidade Federal da Bahia, como requi-sito parcial para obten¸c˜ao do grau de Mestre.

Orientador: Prof. Dr. Fl´avio Morais de Assis Silva

Salvador

2013

(3)

N972 Nunes, Bruno Rios Patriarca.

Maximum lifetime broadcast problem in wireless sensor networks / Bruno Rios Patriarca Nunes. – Salvador, 2013.

76 f. : il.

Orientador: Prof. Flávio Morais de Assis Silva.

Dissertação (Mestrado) – Universidade Federal da Bahia. Escola Politécnica, Instituto de Matemática, 2013.

1. Redes de sensores sem fio. 2. Broadcast. 3. Algoritmos. I. Silva, Flávio Morais de Assis. II. Universidade Federal da Bahia. III. Título.

(4)
(5)
(6)

AGRADECIMENTOS

Agrade¸co em primeiro lugar a Deus, porque Dele, por Ele e para Ele s˜ao todas as coisas. Obrigado Senhor pela oportunidade de concluir com ˆexito este grande desafio. Soli Deo Gloria!

Agrade¸co `a minha fam´ılia n˜ao s´o pelo apoio durante os anos do mestrado, mas pelos valores a mim transmitidos durante toda a vida, que ajudaram a moldar o meu car´ater e me ensinaram o valor da educa¸c˜ao para o ser humano. Em especial, agrade¸co aos meus pais, ˆAngela e Luiz, pelo amor e confian¸ca que sempre depositaram em mim, e `a minha irm˜a Talita pelo apoio de sempre. Essa vit´oria tamb´em ´e de vocˆes.

Agrade¸co ao meu orientador, Prof. Dr. Fl´avio Morais de Assis Silva, pelo apoio, acom-panhamento e discuss˜oes que foram fundamentais para o meu amadurecimento cient´ıfico e para o refinamento da pesquisa. Certamente foi um per´ıodo de muito aprendizado. Estendo os agradecimentos aos colegas do grupo de pesquisa Redesens, Carol, Hugo e Fred, pelas discuss˜oes e conversas. Durante o curso, tive a oportunidade de dividir a autoria de alguns trabalhos com Fred, o que, sem d´uvidas, foi de grande importˆancia para o desenvolvimento e aprofundamento da minha pesquisa.

Agrade¸co aos colegas do Tribunal Regional do Trabalho, pelo apoio, incentivo e com-preens˜ao durante os anos do curso.

Agrade¸co tamb´em a todos os amigos, que certamente, e cada um de uma forma particular, contribu´ıram para o sucesso desta caminhada.

Essa vit´oria n˜ao foi constru´ıda apenas por mim, por isso eu s´o tenho a agradecer. Muito obrigado!

(7)

Tudo tem o seu tempo determinado, e h´a tempo para todo o prop´osito debaixo do c´eu. H´a tempo de nascer, e tempo de morrer; tempo de plantar, e tempo de arrancar o que se plantou.

(8)

RESUMO

Redes de sensores sem fio (RSSF) s˜ao compostas por um conjunto de dispositivos, geral-mente de baixa capacidade de processamento e autonomia de energia limitada, com o objeto de coletar dados sobre a ´area onde foi instalada e envi´a-los at´e as unidades de processamento chamadas de esta¸c˜oes base. Dentre os recursos de um n´o sensor, pode-se considerar como um dos mais cr´ıticos a carga de bateria, j´a que ela define em ´ultimo caso o tempo de vida ´util do n´o. Por conta disso, ´e necess´ario que os protocolos e aplica¸c˜oes otimizem o uso de energia a fim de prolongar o tempo de vida do n´o sensor e, conse-quentemente, de toda a RSSF.

Este trabalho dedica-se a estudar o problema da maximiza¸c˜ao do tempo de vida da rede durante uma s´erie de opera¸c˜oes de broadcast. Para o escopo desta pesquisa, o tempo de vida da rede de sensor ´e definido como o tempo at´e a falha do primeiro n´o por falta de energia. H´a diversos protocolos na literatura que buscam minimizar o consumo de energia durante a dissemina¸c˜ao de mensagens na rede, por´em neles n˜ao s˜ao considerados aspectos como o custo de recep¸c˜ao ou a presen¸ca de links assim´etricos entre os n´os. Neste trabalho, propomos o algoritmo DLMCA para o problema de maximiza¸c˜ao do tempo de vida da rede. O algoritmo DLMCA baseia-se na constru¸c˜ao de arborescˆencias de custo m´ınimo, ´e localizado e considera redes com custos de comunica¸c˜ao assim´etricos, o que ´e especialmente importante em casos em que a RSSF ´e composta por dispositivos diferentes. Os experimentos realizados mostraram que o DLMCA ´e mais eficiente que solu¸c˜oes alter-nativas propostas na literatura. A heur´ısitca oferecida pelo DLMCA para redes est´aticas foi levemente adaptada e o problema tamb´em foi analisado para redes m´oveis. Para estas redes, os experimentos demonstraram que a solu¸c˜ao baseada no DLMCA tamb´em foi superior em rela¸c˜ao a outras propostas tanto em rela¸c˜ao `a energia total gasta em cada opera¸c˜ao de broadcast quanto em rela¸c˜ao ao tempo de vida da rede.

(9)

resumo IX Palavras-chave: Redes de sensores sem fio; maximiza¸c˜ao do tempo de vida; broadcast com eficiˆencia energ´etica; algoritmos localizados.

(10)

ABSTRACT

Wireless sensor networks are composed of a set of resource-constrained devices called sensor nodes, whose goal is to collect data about the environment over which they were deployed and send these data to processing units called base stations. As it ultimately defines the operational time of the network, the battery charge is one of the most critical resources of a sensor node. For this reason, protocols and applications designed for sensor networks must optimize energy consumption in order to extend the lifetime of each sensor node and, consequently, of the whole network.

In this work, we study the so-called Maximum Lifetime Broadcast problem, which consists in extending the lifetime of the sensor network when a series of broadcast oper-ations is executed. Network lifetime is here defined as the time until the first node fails due to battery depletion. Although several heuristics are found in the literature that address the maximum lifetime broadcast problem, their models do not consider aspects such as asymmetric links and reception costs. In this work we present the DLMCA al-gorithm for the maximum lifetime broadcast problem. DLMCA is localized (it uses only 2-hop information) and supports asymmetric edge costs. Addressing asymmetry of edge costs is an important issue, as it arises in different scenarios, such as in heterogeneous networks or when overhearing costs are taken into consideration. According to our exper-iments, DLMCA outperformed alternative solutions to the problem. As far as we know, DLMCA is the first localized algorithm to the MLB problem with asymmetric edge costs. DLMCA was slightly modified and the problem was analyzed in mobile networks. For these settings, the experiments conducted showed that the DLMCA algorithm performed better than alternatives both in terms of the amount of energy spent in each broadcast operation and in terms of network lifetime.

(11)

abstract XI Keywords: Wireless sensor networks, Maximum Lifetime Broadcast; asymmetric edge costs; localized algorithms.

(12)

LIST OF FIGURES

4.1 Example of LMCA execution . . . 28 4.2 DLMCA as executed by process pi - Part I . . . 36

4.3 DLMCA as executed by process pi - Part II . . . 37

5.1 Absolute number of broadcast session achieved by each algorithm . . . . 41 5.2 Mean relative gain of each algorithm in comparison to Blind Flooding . . 42 5.3 Effect of different intervals between broadcast subgraph computations . . 42 5.4 Mean number of packets received by each node during a broadcast operation 43 6.1 Random Waypoint - Absolute number of successfully performed broadcasts

achieved by each algorithm . . . 53 6.2 Random Waypoint - Mean total energy consumed by the network during

a sucessful broadcast operation . . . 53 6.3 Gauss Markov - Absolute number of successfully performed broadcasts

achieved by each algorithm . . . 53 6.4 Gauss Markov - Mean total energy consumed by the network during a

sucessful broadcast operation . . . 53 6.5 Manhattan - Absolute number of successfully performed broadcasts achieved

by each algorithm . . . 54 6.6 Manhattan - Mean total energy consumed by the network during a

sucess-ful broadcast operation . . . 54

(13)

CONTENTS

Chapter 1—Introduction 1

1.1 Contributions . . . 2

1.1.1 The Maximum Lifetime Broadcast in Static Networks . . . 2

1.1.2 Dealing with Mobility . . . 5

1.2 Thesis Structure . . . 6

1.3 Publications . . . 6

Chapter 2—The Maximum Network Lifetime Broadcast Problem 8 2.1 What does ”Network Lifetime” mean? . . . 8

2.2 Our Problem . . . 10

2.3 Energy-efficient broadcasting in sensor networks . . . 10

2.3.1 Summary of energy-efficient broadcasting techniques . . . 15

2.4 Towards network lifetime maximization . . . 16

Chapter 3—System Model 20 3.1 Some words on time considerations . . . 24

Chapter 4—A Maximum Lifetime Broadcast Localized Algorithm for graphs with asymmetric links 26 4.1 The DLMCA Algorithm . . . 26

4.2 Algorithm Overview . . . 27

4.3 Definition of the Edge Cost Function . . . 30

4.4 Detailed Description . . . 31

4.4.1 Ensuring coverage . . . 33

4.5 Correctness . . . 33

Chapter 5—Evaluation and Analysis 38 5.1 Preliminaries . . . 38

5.2 Performance Metrics . . . 39

5.3 Description of the Experiments . . . 40

5.4 Experiment Results and Discussion . . . 41

5.5 Conclusion . . . 44

(14)

contents XIV Chapter 6—Maximum Lifetime Broadcast in Mobile Sensor Networks 46

6.1 Evaluated Algorithms . . . 47

6.1.1 LPrim . . . 47

6.1.2 LMCP . . . 48

6.1.3 LCDS . . . 49

6.2 Evaluation and Analysis . . . 49

6.2.1 Performance Metrics . . . 49

6.2.2 Description of Experiments . . . 50

6.2.3 Experiment Results and Discussion . . . 52

6.2.3.1 Number of Successful Broadcasts . . . 52

6.2.3.2 Mean Total Energy . . . 54

6.3 Conclusion . . . 55

Chapter 7—Conclusions and Future Work 56 7.1 Main Contributions . . . 56

(15)

CHAPTER 1

INTRODUCTION

Wireless Sensor Networks (WSNs) are composed of a set of resource-limited devices called sensor nodes and one or more base stations. Sensor nodes monitor an environment and send the collected data to the base station(s), where data are processed or forwarded to another location. WSNs have been used in a wide range of applications, such as natural phenomena monitoring, military operations control [45] and healthy systems - which collect data from microsensors deployed in different parts of the human body. In some applications, sensor nodes might also act upon the environment, executing operations sent to them by the base station(s). Generally, each sensor node is equipped with a sensing unit, a processing unit, a transceiver for wireless communication and an energy unit, typically composed of batteries. In order to act upon the environment, monitoring capabilities of sensor nodes may be combined with actuators, that together compound a so-called Wireless Sensor and Actor Networks (WSANs) [3]. In a WSAN, sensors gather and process information about the environment, while actors perform actions upon the physical world based on a reasoning process over the data collected by sensor nodes. This special kind of mechatronic system has a variety of applications, such as fire detection, biochemical attacks detection and home automation.

As sensor networks are commonly highly dense and deployed on remote and hostile environments, sensors are designed to be low-cost and disposable [37]. All components of a sensor node (sensing unit, processing unit, power unit, transceiver, localization system, etc.) often must fit into a cubic centimeter module [36]. Because of this lightweight and cost-oriented design, sensor nodes are more prone to failures than ordinary wireless nodes and face severe computation, communication and power constraints.

Among these limitations, one may elect the battery lifetime as the most critical one, as it ultimately determines the total utility time of sensor nodes that are equipped with

(16)

1.1 contributions 2 non-replaceable sensor batteries. The task of efficiently managing the energy resource becomes, then, as important as the applications themselves.

According to most adopted energy dissipation models, a sensor node spends energy during transmission, reception and processing. As the energy cost associated with pro-cessing is typically neglected, we focus on minimizing transmission and reception costs, that are the two main sources of energy expenditure in a sensor node, in order to ex-tend the operating time of the network. As in wireless networks the communication medium is shared, upon a transmission, a message sent is received by all nodes within the sender’s transmission range, even by some of them which are not intended receivers. This broadcast nature of wireless communication with omnidirectional antennas is sometimes referred to as the Wireless Multicast Advantage (WMA) in [42]. It is used by several algo-rithms as a way to reduce the number of transmissions needed to deliver a message to its destinations. However, when the cost of receiving a message is not neglected, algorithms must be aware of the effects of overhearing, which is the listening of unwanted messages. Although overhearing effects have been little addressed in many previous works, it has significant impact on energy consumption of sensor nodes [33, 7, 21].

1.1 CONTRIBUTIONS

The contributions of this thesis are twofold. First, we address the Maximum Lifetime Broadcast (MLB) problem [28] in static networks, i.e. the problem of maximizing the lifetime of a wireless sensor network (WSN) when a series of broadcast operations is executed. Secondly, we investigate the MLB problem in the context of mobile sensor networks. These two contributions are described in the next sections.

1.1.1 The Maximum Lifetime Broadcast in Static Networks

Broadcast is one of the basic communication primitives in distributed systems, and in the context of sensor networks it is commonly used in configuration tasks that require the

(17)

1.1 contributions 3 dissemination of data from a base station to the whole network, such as the distribution of cryptographic keys or synchronization packets.

More specifically, we consider the case of a series of messages sent from a single origin, called the source node, to all the other nodes of the network. The energy spent during transmissions depends on how many nodes propagate the message to its neighbours and on the used transmission powers. The energy spent during message reception depends on the number of times a message is heard by nodes. The number of nodes that transmit and receive a message during broadcast depends on the power that each transmitting node uses to send the message (as it defines the transmission range of each node). MLB consists in dynamically assigning a transmission power to each node such that the graph (topology) resulting from each power assignment contains a directed tree from the source to all other nodes. Additionally, the dynamically chosen broadcast topologies must be such that network lifetime is maximized.

We present an algorithm for the MLB problem that we call DLMCA (Dynamic LMCA). It consists in dynamically applying LMCA (Localized algorithm for energy-efficient broadcast based on Local M inimum C ost Arborescences). LMCA is a heuristic for the related MECBS (Minimum Energy Consumption Broadcast Subgraph) problem [19], that can be defined as follows: Given a graph and a source node, it consists in finding a subgraph that contains a broadcast tree rooted at a source node such that the sum of the costs associated with each of the nodes is minimized. DLMCA takes into considera-tion the remaining energy of nodes at specific instances of the algorithm execuconsidera-tion. As the energy of nodes decreases with time, different broadcast subgraphs might be needed at different instants to extend network lifetime.

Network lifetime has been defined in different ways. We define it in this thesis as the number of broadcast operations that can be successfully executed until the first node runs out of energy. The higher the number of successfully executed broadcasts, the longer the network has been operational until the first node has failed. This notion of network lifetime is adequate for comparing the algorithms in an asynchronous setting, where there

(18)

1.1 contributions 4 is no explicit notion of time. In Chapter 3 the synchronization models used throughout the thesis will be further explained.

Most of the energy-aware broadcast algorithms for sensor networks in the literature focus on minimizing the overall power consumption of a single broadcast (MECBS prob-lem) or are based on more restricted assumptions (all nodes having the same energy cost for transmitting and receiving a message, for example). Applying a solution to MECBS statically does not necessarily maximize network lifetime, as it will be shown. We addi-tionally assume that edge costs might be asymmetric, i.e. the cost of sending a message from node u to node v might be different from the cost of sending a message from v to u. MAC protocols based on preamble sampling, as some of the most recently proposed MAC protocols for sensor networks, such as B-MAC and X-MAC [9], suffer from over-hearing. As far as we know, DLMCA is the first localized algorithm for maximum lifetime broadcast with asymmetric edge costs.

We model the Maximum Lifetime Broadcast (MLB) problem as in [11] (where it is simply called Network Lifetime). Network lifetime is modelled as a series (schedule) of power assignments, each valid for a certain period of time. Network lifetime is the maximum time during which a message broadcast can be received by all nodes. As, in our model, sensor nodes only transmit broadcast-related messages and the time interval between two broadcasts is known and uniform, the network lifetime metric can be con-sistently translated to the number of broadcasts performed before the first node fails due to energy depletion.

The comparison between DLMCA against other broadcasting protocols is made through simulations. Results have shown that DLMCA outperforms other approaches in terms of network lifetime, and places DLMCA as a viable option for the broadcasting primitive in the protocol stack of energy-limited wireless nodes.

(19)

1.1 contributions 5 1.1.2 Dealing with Mobility

In the second part of the thesis, we address the network lifetime problem in wireless sensor networks with mobile nodes.

In a mobile sensor network (MSN) nodes may change their geographical positions over time. Mobility of nodes may be caused by a number of reasons, such as due to the action of external agents, like animals or wind, or by the sensor node itself, when equipped with actuators that allow movement. As mobility results in frequent changes in the network topology or might even result in network partition, the design of communication protocols that are energy-efficient and that achieve high message delivery rates in a mobile setting becomes a challenge.

We proposed two algorithms for energy-efficient broadcasting, called respectively LPrim and LMCP, which were evaluated in the context of MSNs. LPrim is an algo-rithm that we designed as a distributed version of the centralized algoalgo-rithm for maxi-mizing network lifetime described in [28]. LMCP is a distributed algorithm we designed based on minimum cost paths trees. LPrim and LMCP were compared against LCDS during the simulations. We refer to LCDS as the algorithm for broadcasting based on connected dominating sets presented in [43]. The names of the algorithms come from the fact that LPrim and LMCP are based on local (L) computations of, respectively, a variation of Prim’s algorithm and a Minimum Cost Paths tree, and LCDS is a localized (L) algorithm for calculating a Connected Dominating Set. These algorithms address energy efficiency by controlling the transmission power of each sensor node (topology con-trol ). The lower transmission power a sensor node uses to transmit, the lower energy it spends when sending messages. Beyond comparing these algorithms among themselves, we compared them also against flooding, which corresponds to a broadcast strategy with no energy-aware specific control. According to our experiments, LPrim outperformed alternative solutions in terms of the number of successfully executed broadcasts (network lifetime) and in terms of the energy consumed per broadcast.

(20)

1.2 thesis structure 6

1.2 THESIS STRUCTURE

This thesis is organized as follows.

Chapter 2 presents an outline of the different definitions for network lifetime that can be found in the literature. A comprehensive survey on energy-efficient broadcasting techniques is also presented. We present the main solutions for network lifetime and discuss their characteristics and limitations.

Chapter 3 presents the system model and assumptions used throughout this work. We describe in detail the graph model used to represent the sensor network, its connectivity model and the energy dissipation model. We then present the key definitions for the problem. Chapter 3 finishes with a discussion about the synchronization model adopted. In Chapter 4 we describe the DLMCA algorithm, a localized protocol for the Maxi-mum Network Lifetime Problem with asymmetric edge costs. In 5, DLMCA is compared with other broadcasting techniques by simulations, and its performance is evaluated.

In Capter 6, the Maximum Lifetime Broadcast problem is investigated in the context of mobile sensor networks. The proposed algorithms are compared against a set of specific alternatives to the broadcasting problem, under distinct mobility patterns.

Chapter 7 concludes the thesis and discusses future directions for this work.

1.3 PUBLICATIONS

This work has produced the following publications:

1) Nunes, Bruno; Barboza, Frederico; Assis, Fl´avio. A Localized Algorithm for the Maximum Lifetime Broadcast Problem with Asymmetric Cost Edges. In Proceed-ings of the 2012 IEEE 11th International Symposium on Network Computing and Applications - NCA ’12, pp 253-258.

(21)

1.3 publications 7 Mobile Sensor Networks. In Proceedings of the 12th International Conference on Ad-hoc, Mobile and Wireless Networks, ADHOC-NOW, 2013, pp 26-37. Lecture Notes in Computer Science.

(22)

CHAPTER 2

THE MAXIMUM NETWORK LIFETIME BROADCAST

PROBLEM

Extending the network operation time has been a major concern for the design of protocols and applications for resource-limited sensor networks. Apart from energy-harvesting nodes, which are capable of acquiring energy from the environment and converting it into electricity [29], typical sensor nodes having non-rechargeable batteries have lifetime limited by the initial battery charge. For networks composed of this kind of nodes, efficiently managing energy expenditure is of utmost importance in order to provide the network a longer lifetime.

2.1 WHAT DOES ”NETWORK LIFETIME” MEAN?

The concept of network lifetime is closely related to the time interval within which the network is able to perform the tasks it was designed for. As there exists a number of different applications, each one having its specific requirements, there is also a wide range of definitions for network lifetime. In [17], definitions of network lifetime were grouped into categories based on the metric each of the definitions relies on: network lifetime based on the number of alive nodes; based on sensor coverage; based on network conectivity; and based on the combination of sensor coverage and connectivity.

Network lifetime has been typically defined as the time until the first node failure due to battery exhaustion. On one hand, this definition is sufficiently generic that it can be applied in different scenarios, as it makes no assumptions about the underlying system (e.g. there are nodes with greater energy capacity) and expects that nodes are equally important for the application. On the other hand, one may argue that it is too pessimistic, as the network may continue operational despite the failure of one node (or

(23)

2.1 what does ”network lifetime” mean? 9 even a set of nodes). For example, we can conceive a network whose task is to cover a set of targets and each target is redundantly covered by k nodes. So, even when k − 1 nodes fail the network is still capable of covering the set of targets and thus should be considered functional.

The previous example leads us to another metric for defining network lifetime, which is the time until the network is not able to cover the region of interest any longer. Some works use 1-coverage (i.e. each target or area must be covered by at least one sensor node) for defining lifetime. Others relax the coverage requirement and state that only a subset of targets or a fraction of the region must be covered. As the main objective of a sensor network is to collect data from the environment and send it to the sink node, defining network lifetime based on sensor coverage is argued to be the most important measure for the quality of a service provided by a sensor network [17]. However, besides being able to cover the desired region, nodes must be able to communicate to the base station in order to send the collected data. This can be achieved by a metric that takes the network connectivity into account.

The connectivity metric has been commonly used in the context of ad hoc networks, where there is no sensing activity and the most important task is to guarantee the com-munication between nodes. In [8], network lifetime was defined in terms of the number of alive nodes in the largest connected component. This definition, however, cannot be di-rectly applied to sensor networks, because for these networks the connectivity constraint is slightly different. Instead of assuring that there is a path between two nodes, in a sensor network we must guarantee the existence of paths between the sensor nodes and the base station. In [16], for instance, connectivity is defined as the fraction of nodes which have a path to the sink node.

A more comprehensive metric can be obtained by combining both sensor coverage and connectivity to the sink node. In [44], for instance, network lifetime is defined as the time until either coverage or connectivity drops below a predetermined level. In this case, coverage was defined as α-coverage (each region or target must be covered by at least

(24)

2.2 our problem 10 α nodes) and connectivity is measured in terms of the number of packets successfully delivered to the base station.

2.2 OUR PROBLEM

Throughout this text, network lifetime is defined as the time until the first node fails due to battery depletion. In spite of the already pointed out limitations of this definition, we found it suitable for our model for a number of reasons. First, as we deal with the broadcast problem, it is suitable to assume all nodes to be equally important to the system so that the failure of a single node is enough to avoid the broadcast to be correctly performed and thus to cause the network to die. Moreover, the definition based on the time to first node failure is widely adopted in previous work on maximum lifetime broadcast, which in turn allows proper comparison to existing solutions.

2.3 ENERGY-EFFICIENT BROADCASTING IN SENSOR NETWORKS

Broadcasting is one of the basic communication primitives required for various opera-tions performed in a sensor network. Periodic tasks executed by the application, such as global information update, route discovery, exchange of cryptographic keys, etc., require the execution of a broadcast routine. The problems that arise are then twofold. At first place, as in wireless communication the transmission medium is shared, collision and con-tention are issues that must be addressed by the network protocol stack in order to permit efficient communication between nodes. Secondly, when a sensor network is composed of nodes with non-replaceable batteries, proposing efficient energy-aware communication protocols is vital in order to provide the network a longer operation time.

In order to reduce energy consumption, various topology control techniques have been applied to communication protocols in wireless sensor networks. Topology control consists in assigning each node a trasnmission power, so that the resulting induced subgraph satisfies a desired property Π. For the broadcast case, for instance, Π is a spanning tree

(25)

2.3 energy-efficient broadcasting in sensor networks 11 rooted at the source node. For the resulting topology to be energy-efficient, the sum of transmission powers assigned to each node must be as low as possible. The problem of finding a power assignment that yields a broadcast tree of minimum cost is generally called Minimum-Energy Consumption Broadcast Subgraph (MECBS).

In [30], the authors proved that the construction of minimum total energy broadcast tree is NP-Hard for the three-dimensional case. Clementi et al. [15], then, showed that NP-Hardness also holds for the MECBS in the two-dimensional case. Several heuristics were then proposed in the literature aiming at achieving performance ratios close to the optimum. An algorithm that needs complete knowledge of the network topology is said to be centralized, whereas algorithms that only need information about a limited fraction of the network are called localized.

Minimum Spanning Trees (MSTs) have been widely used as approximations for the MECBS problem. The idea is to assign a transmission power to each node in a way that the graph resulted from the power assignment contains a MST. More precisely, each non-leaf node sets its transmission power to reach the furthest node among its children in the MST. Leaf nodes set their power to zero. For Euclidian graphs, whose edge weights respect a geometric relationship with the distance between the source and the destination nodes, the best approximation ratio lower bounds are: 4.2, for two-dimensional spaces [4]; 18.8 for three-dimensional spaces [35]; and 3d− 1 when dimension d ≥ 3 [20]. These

ratios have been improved in [12], where the authors proposed an MST-based algorithm that achieves an approximation ratio of 4.2 for d = 2 and 6.49 when d = 3. To the best of our knowledge, these are the best known approximation ratios for the MECBS problem. A different approach to deal with the MECBS problem is to explore the multicast nature of the wireless transmission, which is not featured in traditional wired commu-nication. In wired networks, the MECBS problem is formulated as simply finding a minimum spanning tree, since there is a cost associated with each link and the objective is to minimize the overall cost. In wireless networks, however, due to the wireless multicast advantage property (i.e a transmitted message not only reaches the intended destination

(26)

2.3 energy-efficient broadcasting in sensor networks 12 nodes, but also each node within the transmission radii), pure MST algorithms may not be the best suited solution for the problem, as MSTs reflect the link-based characteristic of wired networks, instead of the node-based nature of wireless settings [42].

The first broadcast algorithm that takes advantage of the multicast nature of transmis-sions in wireless networks is the Broadcast Incremental Power algorithm (BIP), presented in [42]. BIP’s goal is to output a minimum-energy broadcast tree rooted at the source node. For this, BIP works incrementally. At each step, a new node is added to the broadcast tree. The chosen node is the one which brings the lowest energy increment to the already constructed tree. The cost of edges are dynamically updated to represent the additional energy cost required for adding to the tree the destination node of that edge. BIP computation is performed in a centralized fashion and global knowledge is needed. Time complexity is O(n3), as it is based on Prim’s MST algorithm. It is worth noting that, although it has been proved that finding a minimum energy cost broadcast tree is NP-Complete [40, 32], BIP indeed provides a good approximation solution. The BIP algorithm theoretical properties were studied in [41], where it has been proved that its approximation ratio is between 4.33 and 12, which makes BIP one of the best solutions for the MECBS problem. Despite the theoretical lower bound of BIP being worse than that yielded by MST-based algorithms, BIP still performs better than MST in practice [12].

Another algorithm that considers the wireless multicast advantage is the Embedded Wireless Multicast Advantage (EWMA), presented in [40]. EWMA uses the minimum spanning tree as an initial feasible solution. It then performs improvements on the initial solution, by exchanging branches in the initial tree by new branches, in a way that the overall energy cost is reduced. Both centralized and distributed versions of the algorithm were presented. Only transmission costs are taken into account in EWMA and it assumes a topology graph with undirected edges.

An important feature that is not considered by previous algorithms is network het-erogeneity. Heterogenous networks are composed of distinct models of sensors, which

(27)

2.3 energy-efficient broadcasting in sensor networks 13 may have different processing, communication or energy capabilities. Because of this, heterogenous networks are generally modeled as asymmetric directed weighted graphs, whose edges costs can represent, for example, the communication cost of sending a packet through that edge. In [27], the authors propose a broadcast protocol for asymmetric links suited for heterogenous networks. The LESS algorithm (Largest Expanding Sweep Search), is an improvement of EWMA [40], whose key idea is to systematically reduce transmission power of one or several nodes in exchange of a slight increase in transmission power of another node.

In [11], the authors propose a more generic definition for the MECBS problem that supports asymmetric power requirements. This nonsymmetric version of the problem seems to be harder and the global solution presented yields an approximation ratio of 2(1 + ln(n - 1)), where n is the size of the vertex set (number of nodes). This result improves those presented in [13], where authors proposed an algorithm for the MECBS problem that provided a 10.8ln n approximation ratio.

Although centralized algorithms are useful for determining theoretical performance bounds and limits, in order to be scalable a topology control algorithm should not depend on global information about the network. Unlike algorithms presented above, which need a global view of the network, there are distributed heuristics for the MECBS problem that only require information about nodes a constant number of hops away (typically 2). In [1], a localized algorithm is presented based on Relative Neighborhood Graphs (RNG) instead of MSTs. The relative neighborhood graph of a graph G = (V, E), where V is the set of vertices and E is the set of edges, is given by RN G(G) = (V, ERN G), where

ERN G = {(u, v) ∈ E| 6 ∃w ∈ V, (u, w), (w, v) ∈ E ∧ d(u, w) ≤ d(u, v) ∧ d(w, v) ≤ d(u, v)}.

According to the topology control algorithm presented in the paper, which is referred to as the RNG Topology Control Protocol (RTCP), each node adjusts its transmission power to reach its furthest neighbor in the RNG graph. As RNG neighbors can be deduced locally, nodes only need to exchange beacons including their coordinates to their one-hop neighbors. As, for calculating MST, nodes would also need to send beacons with

(28)

2.3 energy-efficient broadcasting in sensor networks 14 localization information, control overhead of RTCP is the same as if a MST algorithm was used. In the same paper, another broadcast protocol is presented - the RNG Broadcast Oriented Protocol (RBOP) - which enhances RTCP with a neighbor elimination scheme phase.

The LMST Broadcast Oriented Protocol (LBOP) [2] is an extension of RBOP that, instead of using relative neighborhood graphs as the topology control algorithm, uses locally computed minimum spanning trees (LMSTs). Each node runs the MST-based topology control protocol proposed in [31] which is a distributed algorithm that produces a minimal-power structure that preserves network connectivity. Experiments showed that LBOP performs better than RBOP.

In the commonly adopted energy model, the energy consumption of a transmission is a function of the transmission radius plus a constant value related to factors such as signal processing, control messages sent by MAC layer and overhead due to retransmission probability. The energy expenditure for node v is then defined as E(v) = r(v)α+ c, where r(v) is the transmission range of node v. When v does not transmit, E(v) = 0. When the constant c is high, the strategy of reducing the transmission range in every node, that is adopted on previous works, may not achieve the best results for the minimum total energy problem. There could be a power assignment, for example, where some nodes transmit at a higher power and some other nodes just listen. This could lead to a lower total energy cost than could be obtained if more nodes transmit at a lower power. This justification motivates the work in [26], which demonstrates the existence of an optimal radius that minimizes total power consumption. Aditionally, authors present the Target Radius LMST Broadcast Oriented Protocol (TRLBOP) algorithm, derived from the LBOP protocol [2], whose performance was experimentally proved to be better than the previous localized algorithms RBOP and LBOP.

The Localized Broadcast Incremental Power (LBIP), defined in [25] is a localized version of the BIP protocol, where each node basically executes the original BIP algorithm within its k-hop neighborhood. In order to run BIP locally, nodes have to exchange

(29)

2.3 energy-efficient broadcasting in sensor networks 15 neighborhood information among their k-hop vicinity. The definition of the value of k becomes, then, a tradeoff between increasing the knowledge about the network and reducing energy spent by the neighborhood discovery phase. The authors argue that setting k = 2 gives LBIP the best efficiency. Simulations conducted have shown that LBIP outperforms other localized protocols such as TR-LBOP and yields results near to those achieved by global BIP.

2.3.1 Summary of energy-efficient broadcasting techniques

In the previous section we made a brief survey on existing algorithms for the minimum total cost broadcast problem. Common solution approaches range from Minimum Span-ning Trees, Relative Neighborhood Graphs to Broadcast Incremental Power techniques. Theoretical properties are usually proven for global algorithms, which perform a central-ized computation and need knowledge of the whole network topology. This requirement, however, is unacceptable for real scenarios due to its lack of scalability and excessive com-munication overhead. To cope with this limitation, several localized algorithms have been proposed for the MECBS problem. These solutions execute distributively and each node only needs k-hop information, where k is constant. Among existing localized solutions, LBIP and TR-LBOP have shown the best results.

Although some of the previous heuristics indeed yield good results for the MECBS problem, important issues are not taken into consideration by them. For instance, none of the surveyed works addressed the influence of reception costs on the overall energy consumption. It is known that overhearing may lead to a significant energy expenditure in sensor networks [21]. Moreover, most of the presented algorithms assume a homogenous network whose nodes have equal transmission and reception costs. Edges between nodes are undirected and link cost asymmetry is not addressed.

To deal with these two points, overhearing and link cost asymmetry, Barboza and Assis described a new localized algorithm for the MECBS problem [19]. The LMCA uses locally computed minimum cost arborescences in order to construct a broadcast structure

(30)

2.4 towards network lifetime maximization 16 of minimized cost. Experimental analysis have shown that LMCA outperforms similar localized solutions. LMCA protocol was the basis for the DLMCA algorithm for the Network Lifetime Problem we present in this work.

2.4 TOWARDS NETWORK LIFETIME MAXIMIZATION

In a wireless sensor network where nodes are equipped with limited battery charges, the goal is not just to minimize the total energy cost. When batteries are non-rechargeable, the main objective becomes to extend as much as possible the operational time of each node. This is an informal definition of another problem, that is called the Maximum Network Lifetime problem. When the operation performed is data dissemination to all the nodes, it is called the Maximum Lifetime Broadcast problem. This problem is both studied for the unidirectional and the omnidirectional transmission models. In this work, we are interested in the omnidirectional version of the problem.

At first glance, it may seem that solutions for the MECBS can be directly applied in order to extend network lifetime. However, minimum-total energy broadcast and the maximum lifetime broadcast are two distinct problems and solutions for one cannot be directly applied to the other. Indeed, a power assignment that minimizes the overall energy consumption, may, for instance, overload some nodes which will have their bat-teries drained earlier. As another example, the broadcasting algorithm LESS, which yields good experimental results for the MECBS problems, performs poorly for the MLB problem [28]. This happens because the network lifetime metric depends on both commu-nication costs and battery levels, and algorithms for the MECBS problem do not consider limited battery reservoirs.

Elkin et al. [34] define three variants of the MLB problem based on the number of nodes that can initiate a broadcast operation and on the possibility of updating the broadcast tree. The following Maximum Lifetime Broadcast (MLB) problems are de-scribed in [34]: (1) Single Source MLB, when there is only one source node and multiple broadcast trees can be used to extend network lifetime; (2) Single Source/Topology MLB,

(31)

2.4 towards network lifetime maximization 17 that restricts the number of broadcast trees to one; and (3) Single Topology MLB, when there is a set of source nodes, and a single undirected tree is used as a broadcast tree by all of them.

According to the definition presented in [11], the maximum network lifetime problem consists in finding a sequence of power assignments whose size is maximum and where each of the power assignments satisfies a certain connectivity constraint. In the case of Maximum Lifetime Broadcast, each power assignment must contain a directed spanning tree rooted at the source node. The authors showed that this problem is NP-Hard for symmetric power requirements. In the same paper, the authors described a centralized algorithm for the problem that runs in polynomial time and yields a logarithmic approx-imation ratio. These results hold both when links are asymmetric and for nonuniform initial battery charges.

In the Single Source/Topology MLB, also called the static maximum lifetime broad-cast, the goal is to find one broadcast tree that maximizes the time the network is operational until the first node fails. After the tree is calculated, the same broadcast tree is used for all future broadcast operations. In [28] Kang and Poovendran define the static case of the MLB as a min-max problem, whose objective is to find a broadcast tree that minimizes the maximum transmission power. When using a graph model to represent the network, this problem becomes minimizing the edge of highest cost. In their model, the weight of each edge is given by the ratio between the transmission cost and the current energy level of the sender. The authors demonstrated that, for the case when all the nodes have identical battery energy levels, the minimum spanning tree minimizes the weight of the maximum weighted edge. Nevertheless, for the generic case when battery charges are not uniform and links are directed (which is the most realistic assumption for a sensor network), this result does not hold. For this latter case, applying Prim’s algorithm by inspecting outgoing edges at each step suffices to obtain an arborescence with MinMax edge weight.

(32)

broad-2.4 towards network lifetime maximization 18 cast tree may be dynamically updated, thus enabling the power assignment to reflect current energy levels. In [28], the authors propose two protocols that proactively recal-culates the broadcast tree after a predetermined timeout. The strategy adopted is to successively solve the static network lifetime problem. By changing the broadcast tree, the bottleneck edge, which is the edge having the highest cost, can be updated according to the current energy levels. The two proposed algorithms consist in applying MST and BIP with modified edge costs that consider the current energy level of transmitters.

Solutions for both the static and dynamic maximum lifetime broadcast problem pre-sented in [28] require global knowledge of the network topology and consider only trans-mission costs. Reception costs and overhearing effects are ignored in the adopted system model. The solution from [11] also needs a central entity with full knowledge about the network. Centralized algorithms, however, incur a high energy cost as network density increases, and, therefore, are not scalable.

In [10], the authors present the first distributed algorithm for the MLB problem in random geometric graphs having provably good performance. The algorithm constructs an energy-efficient power assignment whose length (the number of broadcast operations performed over a given topology) is not smaller than 1/12 of the optimum with high prob-ability. The energy model adopted considers transmission costs only. Energy consumed due to reception in neglected.

We are not aware of any localized algorithm for the maximum lifetime broadcast that supports link asymmetry and addresses the cost of reception operations. For implement-ing such a protocol in a large-scale distributed system, the locality requirement must be satisfied. Nodes must be able to perform their computation using partial informa-tion about the network, in order for the algorithm to be energy-efficient and scalable. Furthermore, considering link asymmetry enables, for example, modelling heterogenous networks in which nodes may have different transmission power and communication effi-ciency. Lastly, reception costs indeed exist and can have significant impact on the system lifetime [7]. Thus, by taking these considerations into account, we achieve a more realistic

(33)

2.4 towards network lifetime maximization 19 system model and more practical algorithms.

To the best of our knowledge, the DLMCA algorithm, which we propose in this work and that will be later described, is the first localized algorithm to Single Source MLB on directed graphs with asymmetric edge costs that considers message reception costs. Due to its localized characteristic, our algorithm supports system scalability.

(34)

CHAPTER 3

SYSTEM MODEL

A wireless sensor network is composed of a set V of n = |V | nodes deployed on a two-dimensional Euclidean plane. Each node is equipped with a variable range radio transceiver whose transmission power can be adjusted to any value between 0 and a max-imum value, Pmax. Additionally, each node v ∈ V is provided with an initial battery

supply, represented by the function IEnergy : V → R≥0. Each node spends a certain

amount of energy to send a message that depends on the power used by it. For the sake of simplicity, we assume that all nodes spend the same amount of energy to receive a message, although our algorithms do not depend on this assumption. At a given instant, the remaining energy level of a node is given by the function REnergy : V × T → R≥0,

where T is a sequence of time instants. Without loss of generality, we consider it as a nondecreasing sequence of natural numbers.

We assume a simple connectivity model, in which all nodes in the transmission range of a node p receives messages transmitted by p. I.e. if the transmission range of node p at an instant t is r, then all nodes q ∈ V such that dist(p, q, t) ≤ r will receive the message, where dist(p, q, t) represents the Euclidian distance between p and q at instant t. Even though this definition may lead to important simplifications, such as not accounting for elements that could obstruct or attenue signal propagation (buildings, topography, weather conditions, etc.), the Unit Disk Graph (UDG) model has shown itself to be useful on the investigation of theoretical aspects of network problems. In UDG, nodes are located in the Euclidean plane and are assumed to have identical transmission radii. Furthermore, as UDG is broadly used as the connectivity model in most work on energy efficient communication protocols examined throughout this work, adopting it eases the comparison between those solutions and ours. We already point out that studying the behaviour of broadcasting algorithms on more realistic connectivity models is a natural

(35)

system model 21 extension of this work.

The energy model chosen was the same described in [24]. According to it, nodes spend energy while in a transmission or a reception state. As the energy spent during the processing state is typically very low compared to the energy necessary for communica-tion related operacommunica-tions, it is not taken under consideracommunica-tion. The energy dissipated by a transmitter is due to the radio electronics and the power amplifier, whereas the receiver spends energy to run the radio electronics. The cost associated with the electronics, which we consider equal for both transmitting and receiving, basically depends on tasks such as digital coding, modulation and signal filtering. To run the power amplifier, the energy spent is dependent on the distance between the sender and the receiver, and it is calculated according to the path loss model used.

Formally, the energy spent to transmit an l-bit message from node u to node v is given by:

ET x(l, u, v) = l.EelecT x + l..d

α (.)

where: EelecT x is the energy cost associated with the transmitter eletronics; d

corre-sponds to the distance in meters between u and v; α is the path loss exponent (2 ≤ α ≤ 6) [38]; and  is a parameter characteristic of the transceiver and the channel.

Analogously, the energy spent during a reception of an l-bit message is given by:

ERx = l.EelecRx (.)

where: EelecRx is the energy cost associated with the receiver eletronics.

The network topology depends on the power requirement and the power used by each node. The following definitions formalize this.

Definition 1 (Power Requirement) A power requirement is a function c : V × V → R≥0, which defines the minimum power needed by a node u to reach another node v.

(36)

system model 22 Definition 2 (Power Assignment) A power assignment pow : V → R≥0 is a function

that assigns a power to each node v ∈ V .

Definition 3 (Graph Induced by Power Assignment) The graph Gp = (V, E)

in-duced by power assignment pow contains all nodes as vertices. Edge (u, v) ∈ E iff c(u, v) is

less than or equal to the power assigned to u, i.e.:

E = {(u, v) : (u ∈ V ) ∧ (v ∈ V ) ∧ (c(u, v) ≤ pow(u))}.

Definition 4 (Neighbourhood of node u under power pow(u)) : Let pow(u) be a power assigned to node u. The neighbourhood of node u under power pow(u) is the set N eighpow(u)(u) = {v ∈ V : (v 6= u) ∧ (c(u, v) ≤ pow(u))}.

Definition 5 (2-Hop Neighborhood of node u under power assignment pow) The

2-hop neighborhood, denoted

N Gpow(u) = (Vu, Eu), has as its set of nodes (Vu) node u, its neighbours (when

transmit-ting with power pow(u)), and the neighbours of its neighbours (when transmittransmit-ting with the powers assigned to them in pow). The set of edges is the one induced by pow and Vu. Formally:

Vu = {u} ∪ {v : v ∈ V ∧ ((c(u, v) ≤ pow(u)) ∨

(∃ r : r ∈ V ∧ (c(u, r) ≤ pow(u)) ∧ (c(r, v) ≤ pow(r)))} Eu = {(u, v) : v ∈ Vu∧ c(u, v) ≤ pow(u)} ∪

{(r, s) : r ∈ Vu ∧ s ∈ Vu ∧ c(u, r) ≤ pow(u) ∧ c(r, s) ≤ pow(r)}

We associate a process with each node. A process is a finite state automaton that models the algorithm executed on a node. We assume that each process is uniquely identified. Since there is a one-to-one relationship between processes and nodes, we will use the terms process and node interchangeably.

We also assume a reliable MAC layer, so that it does not create, lose or alter mes-sages sent through it. One could argue that, since we are aiming at analyzing battery

(37)

system model 23 consumption issues of algorithms, not considering energy costs due to retransmissions (these costs are considered to be implicit in a ”perfect” MAC layer abstraction) would induce misleading results. However, we argue that, as all protocols used for comparison with ours were implemented over this same perfect MAC, they all suffer from the same overhead costs associated to the MAC layer, and, thus, comparison remains fair.

As we assume that nodes are equipped with omnidirectional antennae, a message sent by a node u with a transmission power pow(u) is received by every node in its 1-hop neighborhood under power pow(u). This behaviour is called the Wireless Multicast Advantage [42].

For formally defining the properties that the communication systems should satisfy, we used the same definitions given in [14]. Let send(u, t) and recv(u, t) be the set of messages sent and received by node u from the beginning of execution until instant t, respectively. Let m be a message and u and v two arbitrary nodes placed within each others’ transmission range, u 6= v.

Then, the wireless communication between two nodes satisfies the following properties: • Integrity: If m ∈ recv(u, t) then m0 ∈ send(v, t0), t0 < t, such that m0 = m. In other

words, integrity property ensures that each message received by a node u must have been previously broadcast by a neighboring node v.

• No-Duplication: For each m0 ∈ send(v, t0) there exists exactly one message m ∈

recv(u, t), t0 < t, such that m0 = m. Informally, no-duplication guarantees that each message from u to v is delivered just once on its destination. Channels do not duplicate messages sent through them.

• Eventual collision freedom: For a MAC layer to be reliable and guarantee message delivery, the following property must hold: There exist instants t and t0, t > t0, such that send(v, t0) ⊆ recv(u, t). This property ensures that, eventually, every message sent from v to u will arrive at its destination.

(38)

3.1 some words on time considerations 24 Freedom property) represents a reasonable abstraction for the IEEE 802.11 MAC layers, as pointed out in [14]. Besides being a realistic model, this eventual ”perfect MAC” abstraction allows us to focus primarily on the problems regarding to the network layer. An implementation of a reliable MAC layer for wireless networks can be found in [39].

Nodes are assumed to be reliable and only fail due to battery exhaustion, after which it ceases to execute. As already stated previously, channels are reliable and a message sent through a wireless channel, when an edge between sender and receiver exists, eventually arrives at its destination.

Synchrony issues are left to be discussed in the next section, as it raises important questions that shall be carefully addressed and analyzed.

3.1 SOME WORDS ON TIME CONSIDERATIONS

Synchronism plays an important role on the design of solutions for distributed systems. Here we will revisit the main concepts and results regarding to synchronism that are relevant to our work.

In purely synchronous distributed systems clocks are synchronized and there are finite and known bounds for both communication delays between processes and the relative speed among processors. With theses constraints, processors are able to locally and successfully differentiate between a faulty and a correct process based solely on time-outs. Due to its simplicity, the design of solutions for distributed problems, such as the consensus (i.e. correct processes must agree on a certain value), is straightforward in synchronous systems.

In real-life applications, however, conditions assumed by the synchronous model might be hardly achieved. Applications are subject to a number of sources of unexpected delays (e.g. operating system scheduler, I/O system calls, unreliable communication channels that may require retransmissions in order to guarantee message delivery, among others.), which may compromise safety if the synchrony assumptions of the system are not met.

(39)

3.1 some words on time considerations 25 This leads to the definition of a different class of systems which makes no assumptions about the time to deliver a message nor about relative speed of processes. Since in this model processes have no access to synchronized clocks and there are no known bounds for computation and communication delays, timeout-based solutions are not applicable for the so-called asynchronous systems. Moreover, this makes impossible for a process to determine whether another one is faulty (stopped executing) or is just very slow. This has important implications for the design of protocols for asynchronous systems. For instance, the consensus problem has been proven to be unsolvable deterministically in asynchronous distributed systems when at least one node fails.

In this work, unless otherwise stated, we assume an asynchronous system. Physical clocks of processes are not synchronized and delays of communication and processing are unknown and unbounded. However, since we aim at analyzing energy-related issues, further considerations must be done.

As already stated, the energy model assumed in this work only accounts for trans-mission and reception costs. In an asynchronous system, where delays may have multiple sources in both processing and communication operations, the following situation might occur: A process, having a set of bits to receive, wakes up, turns its transceiver on and starts listening the medium. Since the system is asynchronous, suppose that the trans-mitter suffers from unexpected interruptions during the transmission which causes a delay of unknown duration. What happens then at the receiver? For how long it would be active listening the medium? In the worst case, a single reception operation might cause a node to drain its whole battery charge.

To avoid this situation, although the overall system is asynchronous, we consider transmission and reception operations to be atomic, so that no interruptions or delays might happen after the transceiver starts sending or receiving a single message.

(40)

CHAPTER 4

A MAXIMUM LIFETIME BROADCAST LOCALIZED

ALGORITHM FOR GRAPHS WITH ASYMMETRIC

LINKS

In this chapter we present a localized algorithm for the Maximum Lifetime Broadcast Problem called DLMCA (Dynamic LMCA). DLMCA supports asymmetric edge costs, i.e. those scenarios where the cost of sending a message from a node u to node v might be different from the cost of sending a message from v to u. Addressing asymmetry of edge costs is an important issue, as it arises in different scenarios, such as in heterogeneous networks or when overhearing costs are taken into consideration. To the best of our knowledge, DLMCA is the first localized algorithm to the MLB problem with asymmetric edge costs. This chapter is divided in two main sections, in which we first describe DLMCA and then we present the proofs for its correctness.

4.1 THE DLMCA ALGORITHM

The goal of DLMCA is to dynamically define power assignments. Each power assign-ment must be such that the graph induced by it contains a directed broadcast tree rooted at the source node. As the energy of nodes decreases with time, new power assignments are needed to extend network lifetime, as different nodes might be more suitable to serve as message routers than others at different instants of time. The determination of power assignments is based on a dynamic update of edge weights according to the remaining energy level of nodes.

In the following section, we provide an overview of DLMCA. The reader should assume that each edge processed by the processes has a given cost. In section 4.3 we describe how the edge costs are defined and updated. In section 4.4, we describe DLMCA in more

(41)

4.2 algorithm overview 27 details.

4.2 ALGORITHM OVERVIEW

DLMCA is based on a combination of LMCA [6] and a localized execution of the algorithm presented in [28] (described briefly in Chapter 2).

DLMCA is executed periodically. It is started by the source node when a new broad-cast subgraph is to be calculated. Using the power assignment defined by the algorithm, a set of messages is broadcast. When the source node wants to change the broadcast subgraph, it runs DLMCA again. The algorithm is independent of a specific criterion for recalculating the broadcast subgraph.

DLMCA works incrementally. Starting at the source node, each process pi executes

as follows. First pi calculates the weights of the edges of the graph that represents its

two-hop neighbourhood (defined as when the process transmits with maximum power). The description of how each process calculates the edge costs is postponed to Section 4.3. Next, pi calculates a minimum cost arborescence rooted at pi on this graph. Process

pi uses this arborescence to define: (a) its transmission power; (b) the set of processes

that become covered by it, i.e. that are reached by pi when it transmits with the defined

transmission power; and (c) the next processes to continue the algorithm, called relays. Each node pi determines the relays and covered processes using the arborescence as

follows. Process pi chooses a process pj among its children in the arborescence for which

the cost of edge (pi, pj) is the highest. Let us call this node highesti. Process pi will

adjust its transmission power to the minimum power necessary to reach highesti. All

processes pk in pi’s one-hop neighbourhood for which the cost of edge (pi, pk) is less than

or equal to the cost of edge (pi, highesti) are the processes covered by pi. The other

processes in the arborescence are the uncovered processes, according to pi’s view. The

relays will be those processes that are tails of bridges, i.e. edges (q, s) in the minimum cost arborescence rooted at pi which have a covered process as tail (q) and an uncovered

(42)

4.2 algorithm overview 28 process as head (s)1. p1 p2 p3 p4 p5 p6 p7 26 50 71 35 47 62 85 25 72 70 51 52 28 37 p1 p2 p3 p4 p5 p6 p7 26 50 35 25 51

28 Covered: p2, p3 and p4Relays: p2 and p3

Figure 4.1: Example of LMCA execution

Figure 4.1 illustrates how a process (p1) determines bridges and relays. The left part

of the figure shows the graph that represents p1’s two-hop neighbourhood. Processes p2,

p3 and p4 are one-hop neighbours of p1. An arrow from node pi to node pj represents the

edge (pi, pj). The numbers next to the arrows represent the costs of the corresponding

edges.

The right part of Figure 4.1 represents the tree built by process p1. Process p4 is p1’s

child in the tree for which the cost of the edge from p1 to it is the highest (i.e. p4 is

highest1). The transmission power associated with p1 is the minimum power needed to

reach p4. The nodes covered by p1 are p2, p3 and p4. Nodes p5, p6 and p7 are uncovered.

The bridges are edges (p2, p5), (p3, p6) and (p3, p7). Therefore, the relays will be processes

p2 and p3.

After having determined the relays, process pi broadcasts a Relay message, using the

minimum power needed to reach highesti. This message contains a list of the processes

that are known to be covered and those processes that were chosen as relays by pi. The

nodes that are known by pi to be covered are those in its two-hop neighbourhood that

are covered by pi or by some other node, as indicated on the list of covered nodes present

either in the first Relay message received by pi or in an AlreadyRelay or AckRelay

message (see below). Note that all processes that will hear a Relay message are covered. A process, say pj, that receives such a message from process pi will be in one of the

following states:

(43)

4.2 algorithm overview 29 • pj has already been a relay or it is the root : if pi chose pj to be a relay, pj replies

with an AlreadyRelay message, informing that it has already been a relay. This message contains the set of covered nodes in pj’s two-hop neighbourhood. If pi did

not choose pj to be a relay, pj just ignores the message.

• pj is not the root, it has not been a relay and it is on the list of relays: pj will

continue the algorithm (repeating the steps described above with its own local information). At the end of its local computation, pj sends an AckRelay message

to pi. This message contains the set of nodes known to have been covered by pj. pi

becomes the parent of pj.

• pj is not the root, it has not been a relay and it is not on the list of relays: pj was

not chosen by pi to be a relay. As pj is covered, the cost associated with it remains

zero. pi becomes the parent of pj.

When process pi receives an AlreadyRelay message, it updates the set of covered

processes and executes the local procedure again to calculate a new arborescence, a new set of covered nodes, relays and a new transmission power. The new transmission power will be the maximum between the current and the new one.

When process pi has received an AckRelay message from all the relays it chose, pi

verifies if there is still some node in its one-hop neighbourhood that has not been covered. If there is any, the procedure findLocalMCA is executed again. This process is locally repeated until there is no more uncovered process in pi’ one-hop neighbourhood.

The whole procedure described above is repeated in the same way by each relay. As information about the already covered nodes is conveyed in the Relay messages, the relays are able to ignore those nodes in their local processing.

DLMCA determines a transmission power to each node. The messages to be broadcast are transmitted by the relays using the defined transmission powers. The first message to be broadcast can be sent piggybacked in the Relay messages.

(44)

4.3 definition of the edge cost function 30 4.3 DEFINITION OF THE EDGE COST FUNCTION

In order to take into consideration the different amount of remaining energy battery on nodes, each process multiplies the cost of each edge (u, v) in its two-hop neighbourhood by REnergy(u)IEnergy(u). This ratio reflects the remaining energy of node u at a given instant. The higher the remaining energy level, the closer to 1 this ratio is. High values for this ratio means that node u has little remaining energy, and thus it should be less preferred as a router node.

DLMCA supports asymmetric edge costs and does not depend on any specific edge cost function. In this paper we adopt an edge cost function that considers the cost implied by transmission and reception of messages. Other functions, however, can be used to accommodate different model assumptions (for example, an expected transmission and reception cost in case of retransmissions).

The cost of edge (u, v), denoted cost(u, v), is given by:

cost(u, v) = (tc(u, v) + rc(u, v)) · IEnergy(u)

REnergy(u) (.)

Function tc(u, v) represents the energy spent by node u to send a message to node v (using the minimum needed power). Function rc(u, v) represents the energy spent by the nodes that hear a message sent from u to v. I.e. every node within u’s transmission range. Recall that IEnergy(u) is the initial energy supply of node u and REnergy(u) is the remaining energy level of node u.

Function tc is defined as follows:

tc(u, v) = cf (u) + γ(u).d(u, v)α (.)

where: cf (u) is the (fixed) energy spent by the transmitter electronics at node u; γ(u) is a parameter characteristic of the transceiver and the channel [38]; d(u, v) is the Euclidean distance between u and v; and α is the path loss exponent (2 ≤ α ≤ 6) [38].

(45)

4.4 detailed description 31 Function rc is defined as:

rc(u, v) = X

w∈V :(w6=u)∧(c(u,w)≤c(u,v))

rcv (.)

The nodes which might receive a message sent from u to v are those nodes w such that sending a message from u to w has a smaller power requirement than sending a message from u to v (i.e. c(u, w) ≤ c(u, v)). rcv is the reception cost (assumed, for the sake of simplicity, to be the same for all nodes).

4.4 DETAILED DESCRIPTION

The algorithm executed by each process is described in Fig. 4.2. The algorithm has as input: N GPmax(pi) = (V

2h

i , Ei2h), the local connectivity graph of node pi under power

assignment Pmax (i.e. the maximum power is assigned to all nodes); IEnergy, which

maps each node in pi’s two-hop neighbourhood to its initial energy supply; REnergy,

which maps each node in pi’s two-hop neighbourhood to its current energy supply; and

P os, which maps each node to its Euclidian position (P os : V → R × R). The algorithm has as output the power assigned to pi. It is assumed that process pi knows functions tc,

rc and c.

The algorithm description contains two procedures, DLMCA and findLocalMCA, and four on-clauses. Each on-clause represents the reaction to a particular event. It is assumed that the body of each procedure and of each on-clause is executed atomically. All variables are global to the procedures and clauses.

At the beginning of the algorithm (lines 24-26), the source node executes the DLMCA procedure. The execution of other processes is triggered by the reception of a Relay message. Procedure DLMCA (lines 1-11) contains the following steps:

• the cost of each edge in pi’s two-hop neighbourhood is calculated (lines 1-2), using

(46)

4.4 detailed description 32 • the graph N G0 = (V2h

i , EN G0) is initialized with an empty set of edges. N G0contains

the nodes in pi’s two-hop neighbourhood as vertices (lines 3-4);

• the edges of Ei are added to E in non-decreasing order of their costs until there is

a path from pi to all the nodes in Vi2h (lines 5-8);

• procedure findLocalMCA is called. This procedure will use graph NG0 to

cal-culate the local minimum cost arborescence and determine the relays to continue the algorithm (line 9);

• if pi is not the source node, an AckRelay message is sent to pi’s parent using the

minimum power needed to reach it. This message contains the set of nodes covered by pi.

Procedure findLocalMCA represents the local processing to define pi’s transmission

power and the next relays: elimination of nodes already covered (lines 12-24); calculation of the local minimum cost arborescence rooted at pi (represented by the Edmonds

pro-cedure on line 15); determination of highesti (line 16); determination of pi’s transmission

power (line 17); determination of the new covered and uncovered nodes (lines 18-19), bridges and relays (lines 20-21); update of the set of covered nodes in pi’s two-hop

neigh-bourhood (line 22); and the broadcast of a relay message (line 23), using the power associated with the current value of poweri.

Lines 27-35 describe the actions executed when process pi receives a Relay message.

If pi has already been a relay or it is the source node, it replies with an AlreadyRelay

message (lines 28-30). This message carries the ids of the nodes in pi’s one-hop

neigh-bourhood that are known to have been covered. If pi has not been a relay yet, pj becomes

the parent of pi (line 31) and, if pi was chosen to become a relay, it updates its set of

covered nodes with the set of covered nodes in the message (pCvrd field) and calls the DLMCA procedure to continue the algorithm (lines 31-35).

When pi receives an AlreadyRelay message from a process pj (lines 1-5, part II),

Referências

Documentos relacionados

Plasmídeo (pUC18) contendo o arranjo 197.25 e sítios de enzimas de restrição. Exemplo de etapas de purificação dos longos fragmentos de DNA ... Esquema ilustrativo das etapas

Section III provides a brief description of the Boundary Element Method, discusses the numerical model used in this work, and presents its validation based on

used in designing Damavand plasma position ontrol system.. This model is used for

The ASLInn project offered the ideal context to in-deep and to update our reflection on this territory, as the conceptual framework of this project, centered on

In this section, we will consider what happens to per capita income in an economy that begins in steady state but then experiences a &#34;shock.'' The shocks we will

Tidal analysis of 29-days time series of elevations and currents for each grid point generated corange and cophase lines as well as the correspondent axes of the current ellipses

O modelo é capaz de promover uma logística de dis- tribuição integrada entre os dois níveis do problema, mos- trando a frota necessária nos dois níveis para o atendimento de todos

Este ensaio consiste na aplicação de carga de compressão, de forma continua, sobre um provete quadrado, rodado 45° em relação à horizontal (paralelamente à diagonal