Fluid models for large-scale wireless sensor networks

Fluid models for large-scale wireless sensor networks

Performance Evaluation 64 (2007) 715–736 www.elsevier.com/locate/peva Fluid models for large-scale wireless sensor networks C.-F. Chiasserini a , R. ...

2MB Sizes 1 Downloads 81 Views

Performance Evaluation 64 (2007) 715–736 www.elsevier.com/locate/peva

Fluid models for large-scale wireless sensor networks C.-F. Chiasserini a , R. Gaeta b,∗ , M. Garetto b , M. Gribaudo b , D. Manini b , M. Sereno b a Dipartimento di Elettronica, Politecnico di Torino, Italy b Dipartimento di Informatica, Universit`a di Torino, Italy

Received 3 August 2005; received in revised form 5 May 2006 Available online 30 December 2006

Abstract We develop an analytical framework for the study of large-scale, wireless sensor networks. We use a fluid approach, i.e., we represent the sensor network by a continuous fluid entity distributed on the network area. We assume that sensors employ a CSMA/CA mechanism to access the channel and a minimum energy consumption criterion to select traffic routes, and accurately model these aspects. Furthermore, the framework accounts for energy consumption and is able to model the active/sleep dynamics of the nodes. We validate our approach through simulation and show that the proposed framework is well suited for describing the properties of large sensor networks and understanding their complex behavior. To the best of our knowledge, our framework is one of few analytical models developed for large-scale sensor networks which can accurately capture the main aspects of these systems. c 2006 Elsevier B.V. All rights reserved.

Keywords: Wireless sensor networks; Power-aware/limited systems; Fluid models; Wireless systems performance

1. Introduction A typical configuration of wireless sensor networks includes a large number of stationary sensors, ranging from hundreds to thousands of nodes. Sensors have limited computational and energy resources, and their task is to gather local data and convey them to the so-called sink node using multi-hop communications (i.e., using other nodes as relays). Several studies on sensor networks have appeared in the literature but few analytical models have been proposed [1–5] (please see Section 2 on related work for further details). Instead, it is of primary importance to develop analytical models for sensor networks that are able to capture the fundamental behavior of large-scale systems, since severe scalability problems arise when experimental or simulation approaches are used. In this work, we present a fluid model for large-scale, wireless sensor networks. The choice of such an approach is motivated by the fact that it does not make sense to describe networks including a very large number of sensors through microscopic quantities, e.g., the position or the traffic rate associated with a single node; rather, macroscopic quantities, such as the spatial node density at a given location or the total traffic flowing through that location, should ∗ Corresponding address: University of Turin, Department of Computer Science, Corso Svizzera 185, 10149 Turin, Italy. Tel.: +39 011 670 67 70; fax: +39 011 75 16 03. E-mail address: [email protected] (R. Gaeta).

c 2006 Elsevier B.V. All rights reserved. 0166-5316/$ - see front matter doi:10.1016/j.peva.2006.11.003

716

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

be considered [3–5]. We focus on a network whose nodes are stationary and need to send the result of their sensing activity to a sink node. We assume that sensors send their packets to the sink in a multi-hop fashion (if needed) and may enter a low-power operational mode, the so-called sleep mode, to save energy. Although we introduce some simplifying assumptions that are necessary for analytical tractability, our model is able to account for: • energy consumption and active/sleep dynamics of sensor nodes, • channel contention and collisions among simultaneous transmissions, • traffic routing. We provide three fundamental contributions: (i) we model large-scale sensor networks with extremely low computational complexity, and accurately represent channel contention, traffic routing and the sensors sleep/active dynamics; (ii) we study the system behavior as a function of various parameters, and evaluate several performance metrics of interest; (iii) our model is a very flexible and powerful tool, which predicts the network behavior as a function of the bi-dimensional spatial distribution of the nodes (possibly under non-homogeneous node deployment) and can account for various routing strategies and sensor behaviors. The remainder of the paper is as follows. After a brief discussion on some related work (Section 2), in Section 3 we introduce the general fluid framework adopted to analyze large-scale sensor networks. Section 4 describes our network scenario listing the main assumptions that we make to develop our model. The specification of the general framework to the network scenario under study is provided in Section 5. Section 6 presents some results. To show the accuracy of our approach, we first consider a relatively small network with homogeneous node deployment and compare the results derived through the fluid model with those obtained by detailed simulations of the sensor network. In the second part of Section 6, we exploit our analytical framework to evaluate the performance of systems much larger than those that can be studied by simulation, and we evaluate the impact of various parameters such as active/sleep dynamics and the maximum radio range of the nodes. We also investigate the impact of non-homogeneous node deployment across the network area. Section 7 concludes the paper. 2. Related work Several works have appeared in the literature proposing algorithms and protocols for wireless sensor networks. Examples of energy-saving mechanisms at the MAC layer can be found in [6–9]. In [6], Singh et al. describe the so-called PAMAS scheme, which allows a node to turn off its RF apparatus when it overhears a packet that is not destined to it. The papers in [7–9] instead propose wake-up scheduling schemes that activate sleeping nodes when they need to transmit/receive, thus avoiding a degradation in network connectivity or quality of service provisioning. Solutions dealing with routing in sensor networks are presented in [10–18], to name a few. The scheme proposed in [10] aims at minimizing the energy consumption of the nodes while maintaining good end-to-end delay and throughput performance. Networks where sensors may enter a sleep mode are considered in [11,12]. The GAF protocol [11] is based on topological knowledge of the network: it associates each node with a virtual grid and provides network connectivity by ensuring that there is at least one active node per grid cell. The Span protocol [12] lets each node locally determine whether it should sleep or be active, based on its energy resources and on an estimate of how many of its neighbors will benefit from it being awake. In [13–15], forwarding techniques based on the geographical location of the sensors are considered, and an analytical evaluation of the proposed schemes is presented. An innovative approach is proposed in [16], where the next-hop forwarding of a packet is decoupled from the routing core so that different routing services can be obtained depending on the packet to be transmitted (namely, routing control packet, data packet, etc.). In [17] Lin et al. present a static multi-path routing scheme that, exploiting knowledge of traffic patterns and battery replenishment, provides optimal performance in the large network limit. Finally, in [18], sink nodes collecting data from the sensors are assumed to be mobile so that the sensors that are located near the sink change over time. This solution leads to a more even energy consumption over the network since typically the sensors in the proximity of the sink experience higher energy consumption than others, due to the large amount of relay traffic they have to handle. Theoretical studies of wireless sensor networks are presented in [1–5,19–28]. An analysis of strategies for data dissemination and data collection is presented in [19,20]. The problem of data gathering is also addressed in [21,22]. In particular, in [21] a game-theoretic model of data routing is used to optimally trade off between reliability and communication cost, while in [22] a subset of sensors is selected to form a data gathering tree so as to prolong the network lifetime and establish the desired trade-off between data latency and network coverage.

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

717

In [3–5] massively dense networks are considered, where the number of sensors is so large that a system description through macroscopic parameters is required. In [3] Jacquet establishes an analogy between ad hoc networks and optics, and shows that in massively dense networks a variable traffic density affects the minimum-hop path connecting two points in the same way as a variable optical density bends the path traveled by a ray of light. In [4], the deployment of dense sensor networks is studied by exploiting electrostatics theory. In particular, under some general assumptions about the physical and MAC layers, it is found that the optimal distribution of nodes induces a traffic flow identical to the electrostatic field that would exist if the network sources and sinks of traffic were substituted with an appropriate distribution of electric charge. Such an analogy is exploited to derive the optimal distribution of traffic sources and sinks that minimizes the number of sensors required in the network. Along the line of [4], the work in [5] uses calculus of variations to derive the optimal node spatial density that minimizes the total number of sensors while still supporting the network traffic. Note that in [3–5] the placement of the nodes within the network area is represented through the spatial node density, expressed in nodes/m2 — a macroscopic quantity also used in our work. Coverage and connectivity issues are addressed in [23–28]. The work in [23] considers sensor grids, where sensors are unreliable and fail with a certain probability leading to random grid networks. In [24] coverage and object detectability for large-scale sensor networks are investigated, while in [25] an optimal sleep scheduling which ensures coverage of all targets while maximizing the network lifetime is proposed. The work in [26] uses percolation theory to study the impact of interference on the connectivity of large-scale ad hoc networks. In [27], Lu et al. assume that each node has a duty cycling requirement to be awake only for a certain fraction of time, and formulate the sleep scheduling problem through a graph-theoretical abstraction of the network so as to minimize the end-to-end data latency. The work in [28] instead studies the fundamental limit of network lifetime that all possible sleep scheduling algorithms can achieve, under the assumption that the nodes are deployed as a Poisson point process and can fail only because of battery depletion. The work most related to ours is in [1,2]. The study in [1] explores the performance of a sensor network whose nodes may enter a sleep mode. The network is modeled by using standard Markovian techniques; although the model accounts for traffic routing and channel contention, its complexity does not allow very large networks to be represented. The work in [2] deals with a similar network scenario, but it assumes that only a few sensors are active at a time so that the network can be disconnected. The authors derive bounds on data latency by using percolation theory and making some simplifying assumptions (namely, the nodes broadcast any data they sense or receive to all their neighbors and interference is neglected). Finally, we would like to mention that, among the analytical works in the literature, few of them use a fluid approach to study wireless communication networks. The work in [29] studies fair traffic scheduling in packet-cellular networks, where transmissions are affected by location-dependent channel errors. Each traffic flow is treated as a fluid flow, and the fluid fair queuing (FFQ) model is applied to the wireless environment. In [30] Kim et al. analyze the delay performance of an on–off traffic stream over a wireless link, whose capacity varies according to a fluid version of a Gilbert–Elliot model. More recently an analytical fluid model of a CDMA-based cellular network has been proposed in [31] to provide explicit formulae of capacity. To the best of our knowledge, our framework is one of the few analytical models developed for large-scale sensor networks that, by applying a fluid approach, can accurately capture the main aspects of these systems while requiring low computational complexity. 3. The fluid framework We propose a fluid approach motivated by the observation that large-scale sensor networks can be represented by a continuous fluid entity distributed on the network area. In this section we describe the general framework adopted to analyze large-scale sensor networks. The notation we define to specify our model is summarized in Table 1. (a) Sensor density and traffic generation: Sensors are randomly placed over an area in the plane according to a Poisson point process with local intensity ρ(r), hereinafter also called the sensor density, which can vary from point to point. Let us identify each point in the plane by means of its coordinates r = (x, y). The Poisson assumption implies that the number of sensors contained in an area A is distributed according to a Poisson distribution with parameter Γ (A), defined as: ZZ Γ (A) = ρ(r)dr. A

718

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

Table 1 Model notation Notation

Description

ρ(r) λ(r) Λ(r) Λ? (r) u(r0 |r) s(r) q(r) D(r) PR (r) Pa

Sensor density at r Local traffic generation rate density at r Total traffic rate density at r Actual total traffic rate density at r Probability density of routing a packet from r to r0 Mean packet service time at r Mean queuing delay at r Mean delivery delay at r Mean packet retransmission probability at r Probability that a sensor is active

RR We call N the mean number of sensors present in the network. We have that ρ(r)dr = N . As an example, to define a system where there are (an average of) N sensors uniformly distributed over a disk of unit radius and the sink is located at the center of the disk (i.e., Sink = (0, 0)), we have that: ) ( 0 if dist(r, Sink) > 1 . (1) ρ(r) = N if dist(r, Sink) ≤ 1 π Finally, we assume that a sensor s in position r generates traffic at a rate λs (r). By aggregating all traffic generated by sensors over an infinitesimal area centered at point r, we define a generation rate density λ(r) which depends on the position r. This quantity, measured in packets per second per area unit, is proportional to both the local generation rate of a sensor and the local sensor density, and corresponds to the mean number of packets per second generated by an infinitesimal area. It is defined as: λ(r) = λs (r)ρ(r).

(2)

(b) Data routing: We determine the next hop used by a sensor to send a packet to the sink in a probabilistic way. Indeed, we do not know the exact location of the sensors, thus we define u(r0 |r) as the probability density that a packet transmitted by a sensor in position r uses a sensor in position r0 as its next hop. Since u(r0 |r) must be a valid probability density, we have: ZZ u(r0 |r)dr0 = 1, ∀r. (3) Probability density u(r0 |r) depends on the particular routing policy. (c) Local and relay traffic rates: Each sensor can be both a traffic source and a relay for other sensors. We introduce the traffic rate density Λ(r) as the sum of the traffic locally generated by the sensor at point r, and the traffic relayed for other nodes. By assuming that the system is stable, the total traffic rate density Λ(r) can be computed by solving the following integral equation: ZZ Λ(r) = λ(r) + Λ(r0 )u(r0 |r)dr0 (4) where λ(r) accounts for the traffic locally generated, and the integral computes the rate density of the relayed traffic using u(r0 |r) introduced above. Note that the expression in (4) represents the traffic rate density of successfully transmitted packets. The actual traffic rate density must also account for retransmissions, as explained below. (d) Channel contention and data transmission: The channel contention model computes the actual traffic rate density Λ? (r) at a node in r, as well as the mean packet service time at the same point, denoted by s(r). Packets that are not received correctly need to be retransmitted by the sender. The average packet retransmission probability at r is denoted by PR (r): it depends on the particular protocol adopted to access the channel and is, in general, location-dependent, i.e., it can be different from point to point within the network area. By assuming that the packet transmission process

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

719

Table 2 System parameters Parameter

Description

N dc , ds Pi E (t x) , E (r x) δs , δa , σ CW K Max

Mean number of sensors Maximum communication/carrier sensing ranges Power consumed by idle sensors Energy spent to transmit/receive one packet Time constants for the CSMA/CA scheme Contention window for the CSMA/CA scheme Maximum number of next hops for minimum energy routing

is memoryless, the actual traffic rate density at point r, that also accounts for retransmitted packets, is given by, Λ? (r) =

Λ(r) . 1 − PR (r)

(5)

(e) Mean packet delivery delay: To derive the mean time needed to deliver a packet to the sink, we first define the mean delivery delay at point r, D(r) as the time required by a packet originated in r to reach the sink. By denoting with q(r) the mean queuing delay experienced by a packet at point r, D(r) can be expressed as ZZ D(r) = q(r) + s(r) + D(r0 )u(r0 |r)dr0 (6) where s(r) is the mean service time previously introduced. Eq. (6) states that the mean delivery delay at point r can be expressed as the sum of the delay experienced by a packet at point r plus the mean delivery delay associated with the next hop. The delivery delay in all different points of the network can be computed recursively using numerical techniques starting from D(0, 0) = 0, i.e., no delay is experienced by a packet at the sink. (f) Sensor active/sleep behavior: In our fluid model we account for the active/sleep dynamics of the nodes by introducing the probability Pa that a sensor is active. Since only active sensors generate traffic, (2) becomes λ(r) = λs (r)Pa ρ(r), where the sensor density ρ(r) has been multiplied by the probability that a sensor is active. 4. Sensor network scenario In this section we define the sensor characteristics and the network scenario under study. The system parameters are summarized in Table 2. Our assumptions on the system behavior are as follows: (i) All nodes have a common, maximum communication range equal to dc . Thus, any pair of nodes, say (i, j), can communicate if they are within distance dc from each other, i.e., dist(i, j) ≤ dc , where the notation dist(i, j) denotes the Euclidean distance between nodes i and j. We assume that, when a sensor discovers a neighboring node and a wireless link is established between the two nodes (i.e., a connection at the link layer is created), the sensors can set their level of transmission power to be used over that link. Note that we do not assume that sensors can adjust their transmission energy toward a neighbor over time, rather the transmission level used by a node over a link is set once upon establishment of the link and remains unchanged with time.1 (ii) The communication channel is assumed to be error-free, although a channel error process could be easily included in the model. (iii) The network topologies that we consider are always connected, i.e., there exists at least one path connecting each sensor to the sink (we assume that nodes that cannot reach the sink do not participate in the network operation, thus they can be simply neglected). (iv) Each sensor generates data packets of constant size at a given rate, which can be buffered while waiting for transmission. We assume that the system is stable and that the buffer of each sensor is modeled as a FIFO queue. Also, by considering that the buffer is properly dimensioned so that the loss probability due to overflow is negligible, we can assume infinite buffer capacity.2 1 This is a fair assumption since typically sensor nodes are simple, low-cost devices. 2 The case of finite buffer size could be easily incorporated in the model.

720

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

(v) A sensor consumes a power equal to Pi while being idle; the energy expenditure due to a one-hop communication is modeled as follows. Given the transmitter–receiver pair (i, j), the energy consumed by i to transmit a packet to j is equal to E (t x) (i, j) and the energy consumed by j to receive a packet is equal to E (r x) ; the energy consumed while being in overhearing mode3 is assumed to be equal to E (r x) . Note that a sensor cannot simultaneously transmit and receive, and the energy expenditures while transmitting/receiving/overhearing are additional with respect to the energy spent by a sensor while being idle. (vi) Sensors access the channel by using a carrier sense multiple access scheme with collision avoidance (CSMA/CA). The carrier sensing range of each node is denoted by ds , where ds ≥ dc , i.e., the carrier sensing range is larger than or equal to the communication range. When a node has to transmit a packet, it senses the medium for a time interval δs . If idle, the sensor accesses the channel. If busy, the sensor waits for the channel to become idle; then, within an interval δs , the node selects a backoff counter uniformly within its current Contention Window (C W ). The backoff counter is decremented by 1 after sensing the channel to be idle for the duration of a slot σ , whereas it is frozen while the channel is busy. When the backoff counter reaches zero, the sensor attempts to transmit. If a collision occurs, the sensor doubles C W and repeats the procedure. If the data transmission is successful, the sensor receives an acknowledgment message (ACK) from the receiver after a time interval equal to δa (with δa shorter than δs ), resets C W to the minimum contention window, and extracts a new backoff value (the so-called post backoff). Note that no handshaking messages are employed (i.e., RTS/CTS are not used). A node attempts to transmit a packet until the packet transmission is successful; considering that buffers are of infinite capacity, this assumption implies that all packets eventually reach the sink. We do not consider power capture effects: whenever a node receives two or more packets sent by nodes within its carrier sensing range, all of them are lost. On the other hand, if a node senses a single packet, it can always receive it successfully, since we assume an error-free channel (assumption (ii)). Indeed, in CSMA networks the MAC protocol ensures that, once a node gains access to the channel, there is no interference in the absence of collisions. Finally, for analytical tractability we neglect multiple collisions, i.e., if a packet transmission fails because of a collision, the next attempt at transmitting that packet will be successful (in our network scenario this is a reasonable assumption, as shown in Section 5.2). (vii) Sensors may enter a low power operational state (sleep mode); while in the sleep state we assume that their sensor board and RF circuitry are turned off, i.e., they do not generate, receive or transmit any traffic. We consider that sleep/activity cycles of the sensors are asynchronous, and that, when nodes enter or exit the sleep state, they announce the change of operational mode to their neighbors. Note that although we consider asynchronous sleep/activity cycles for the sensors, we suppose that at each time instant there exists at least one active node among the sensors covering a certain area. This is a fair assumption due to the large number of nodes composing the network. Asynchronous schemes therefore give good performance, without adding complexity to the control plane as maintaining synchronization among sensors would require. (viii) To deliver their data, sensors may use multi-hop paths. In this paper, we consider minimum-energy routing; however, different routing strategies could be incorporated in the model as well. When sensors are deployed in the field, they undergo an initial configuration phase in which they compute once and for all the best available next hops to reach the sink, using a variation of the standard Bellman–Ford algorithm [32]. In particular, each sensor maintains an ordered routing table of up to K Max entries, each associated with a different next hop, which records the total cost required to reach the sink by following the corresponding next hop. The tables can be constructed in a distributed fashion using a controlled flooding algorithm: starting from the sink, sensors broadcast their routing tables to the neighbors, which in turn update their tables and, if there is a change in at least one entry, rebroadcast them. After a few iterations the mechanism converges (i.e., the routing table at each sensor does not change anymore). In the case of minimum energy routing, an energy cost is assigned to each link connecting two nodes that are within distance dc from each other. The cost (i, j) represents the total energy required to transfer a packet from node i to node j (one-hop energy cost), and is expressed by the sum of the cost at the transmitter and the cost at the receiver: (i, j) = E (t x) (i, j) + E (r x) . Due to assumption (vii), the next hop node that minimizes 3 A node is in overhearing mode when it listens to a packet transmitted over the channel for which it is not the intended destination.

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

721

the total energy cost to reach the sink can be in a low operational state, and thus not be available. In this case, we assume that the transmitting node will use the second best minimum-energy next hop. If this is not active either, the routing algorithm will select the third one, and so on, up to a maximum number of alternative next hops K Max . We assume that K Max is sufficiently large so that the probability that all K Max next hop sensors are in the low-power operational state is negligible. 5. The sensor network model The framework outlined in Section 3 requires several functions to be defined to account for the particular characteristics of the network scenario considered in the previous section. In particular: • in Section 5.1 we specify u(r0 |r) for the case of minimum-energy shortest path routing; • to account for channel contention using the CSMA/CA protocol, in Section 5.2 a detailed expression for the mean packet service time s(r) and packet retransmission probability PR (r) at a node in r are derived; • in Section 5.3 we introduce a queuing model to estimate the mean queueing delay experienced by a packet at r (i.e., q(r)), which accounts for the sensors’ active/sleep dynamics. Recall that q(r) is required to compute the mean time needed to deliver a packet to the sink starting at point r (i.e., D(r)). 5.1. A minimum-energy routing strategy: Computing u(r0 |r) To model the minimum-energy routing scheme defined in Section 4, we must specify the routing function u(r0 |r), taking into account the fact that, if the minimum energy next hop is in the low power operational state, then the second best next hop is selected, and so on. The definition of u(r0 |r) is carried out through successive steps where auxiliary functions are defined. In particular, we compute: (1) the multi-hop energy cost, denoted by m (r, r0 ), which is the energy required to send a packet from point r to the sink using position r0 as the next hop. Note that this cost is defined regardless of the presence of sensors in positions r and r0 ; (2) the cumulative probability Fmk E (e|r) that the energy required to send a packet from a sensor in r to the sink using the k-th lowest energy route is less than or equal to e; (3) the cumulative probability Fm E (e|r) that the minimum energy required to send a packet from a sensor in r to the sink, using only active next hops, is less than or equal to e; (4) the probability density ps;r (r0 |e) of finding a sensor in position r0 that can be used as the next hop by a sensor in r to send a packet to the sink with energy expenditure e, conditioned to the fact that e is the minimum required energy (using only active nodes); (5) the probability density u(r0 |r) that a packet generated by a sensor in position r uses a sensor in position r0 as its next hop. 5.1.1. Computing m (r, r0 ) We define the one-hop energy cost (r, r0 ) required to deliver a packet from a source in r to a destination in r0 as   (r, r0 ) = E (t x) (r, r0 ) + E (r x) = 2 E (ele) + E (proc) + Cd · dist(r, r0 )η (7) where E (ele) and E (proc) account for the consumption due to the transceiver electronics and to processing functions, respectively. These costs are present at both the transmitter and the receiver; the amplifier cost affects only the transmitter, and includes a constant factor Cd , the sender–receiver distance dist(r, r0 ) and the exponential power decay factor η, that typically takes a value between 2 and 4 [33]. By using a recursive expression, we can define:   min (r, Sink), (r, r0 ) + m (r0 , r00 ) if dist(r, Sink) ≤ dc 0 m (r, r ) = (8) (r, r0 ) + m (r0 , r00 ) otherwise where r00 is the point that minimizes the energy required to send a packet from r0 to the sink. Note that if point r is within distance dc from the sink, either a one-hop or a multi-hop communication may take place, depending on their

722

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

energy cost. When a multi-hop communication is required, we should determine exactly r00 , which turns out to be exceedingly complicated. Thus, we approximate m (r0 , r00 ) with min (r0 ), that is the minimum possible energy needed to send a packet from r0 to the sink. As described in Appendix A, min (r0 ) can be computed as:      dist(r0 , Sink) dist(r0 , Sink)η ∗ min (r0 ) = 2h E (ele) + E (proc) + Cd (9) with h = max h , dc h η−1 i h  0 ,Sink)η . By inserting (9) into (8), m (r, r0 ) can be rewritten where h ∗ = arg mink∈N 2k E (ele) + E (proc) + Cd dist(r (h ∗ )η−1 as,   min (r, Sink), (r, r0 ) + min (r0 ) if dist(r, Sink) ≤ dc m (r, r0 ) = (10) (r, r0 ) + min (r0 ) otherwise. Eq. (10) states that, in case of multi-hop communication, the energy required to deliver a packet from r to the sink using r0 as next hop, is equal to the energy required to transfer a packet from r to r0 , plus the minimum energy required to send a packet from r0 to the sink. Note that (10) is defined regardless of the presence of sensors in positions r and r0 . 5.1.2. Computing Fmk E (e|r) Given a sensor at point r, the cumulative probability Fmk E (e|r) that the energy required to send a packet from the sensor to the sink, using a node that provides the k-th minimum energy route, is less than or equal to e, is given by4 :  Z Z   Fmk E (e|r) = P Poisson ρ(r0 )dr0 ≥ k . (11) r0 :m (r,r0 )≤e

Eq. (11) states that the probability of having the k-th minimum energy path requiring expenditure less than or equal to e corresponds to the probability of finding at least k relay sensors in an area through which a packet can be transferred to the sink with energy cost less than or equal to e. 5.1.3. Computing Fm E (e|r) Given the probability Pa that a node is active, we compute the cumulative probability Fm E (e|r) that the minimum energy required to send a packet from a sensor to the sink, using only active nodes, is less than or equal to e, conditioned to the sensor being at r. Given K Max possible routes, the k-th path (with 2 ≤ k ≤ K Max ) will be used only if the next hop on route k is active and all previous k − 1 routes are unavailable because the corresponding next hops are asleep. We write Fm E (e|r) as: Fm E (e|r) = Pa

K Max X

(1 − Pa )k−1 Fmk E (e|r).

(12)

k=1

Note that lime→∞ Fm E (e|r) ≤ 1, and tends to 1 only if K Max → ∞. Since we assume that K Max is large enough so that the probability that none of the possible next hops are available is negligible, we have lime→∞ Fm E (e|r) ≈ 1. 5.1.4. Computing ps;r (r0 |e) We define ps;r (r0 |e) as the probability density that a sensor in r selects a sensor in position r0 as the next hop to send its packet to the sink with energy expenditure e, conditioned to the fact that e is the minimum required energy. Clearly, ps;r (r0 |e) is equal to 0 if the energy required to send a packet from position r to the sink (using as the next hop a node in position r0 ) is different from e. Otherwise, it can be computed based on the following observations: (i) the next hop is selected with uniform probability from among all possible sensors that are suitable for the task; (ii) the spatial density of active sensors in r0 is ρ(r0 )Pa ; (iii) the spatial density of active sensors that allow a packet to be transferred from r to the sink with energy cost equal to e is computed in this manner: ps;r (r0 |e) = RR

ρ(r0 )δ(m (r, r0 ) − e) ρ(r00 )δ(m (r, r00 ) − e)dr00

4 Poisson(ν) represents a Poisson random variable with mean ν.

(13)

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

723

where the Dirac delta function, δ(·), ensures that ps;r (r0 |e) is a proper probability distribution. 5.1.5. Computing u(r0 |r) Finally, using (12) and (13), the routing function u(r0 |r) is given by: Z dFm E (e|r) 0 u(r |r) = ps;r (r0 |e) de. de e

(14)

Indeed, the probability density that the next hop chosen by a sensor in r is located at r0 can be obtained by deconditioning (13) with respect to the probability density that the minimum energy needed to send a packet from r to the sink (using only active nodes) is equal to e. 5.2. Channel contention and data transmission: Computing s(r) and PR (r) We model the channel access scheme described in Section 4 as follows. Consider a sensor in position r wishing to transmit a packet; our objective is to compute the average service time s(r) and the average packet retransmission probability PR (r). Since the packet service time depends on the traffic load over the wireless channel, one fundamental variable that we need to compute is the probability PB (r) that a sensor in r senses the channel as busy. Using this quantity, we express the average packet service time at a node in r, s(r), as s(r) = [1 − PB (r)]s I (r) + PB (r)s B (r)

(15)

where s B (r) (s I (r)) is the average service time when a sensor in r observes a busy (idle) channel. Similarly, the average packet retransmission probability is given by: PR (r) = [1 − PB (r)] pcI (r) + PB (r) pcB (r)

(16)

where pcB (r) ( pcI (r)) is the collision probability when a sensor in r observes a busy (idle) channel. PB (r) can be derived as follows. The average probability that a sensor in r0 occupies the channel can be written as the ratio of the actual traffic rate in r0 to the available channel rate.5 By denoting the available channel rate (expressed in packets/s) by Bw and considering all sensors within the carrier sensing range of the node at r, we obtain: ZZ Λ? (r0 ) 0 dr . (17) PB (r) = |r0 −r|≤ds Bw We now describe how to compute the quantities s B (r) and s I (r) as functions of the collision probabilities when the channel is busy/idle, and as a function of the parameters of the CSMA/CA protocol. The expression of pcB (r) and pcI (r) will be provided later; assume, for now, that these quantities are known. For the sake of brevity, we denote by L the sum of the duration of a data transmission, of δa and of the duration of an ACK transmission.6 We write the mean service time by considering that the probability of multiple collisions is negligible [34]. To verify such an assumption, we ran simulations with N = 400 nodes, in the case where all sensors are active. We set the integral over the network area of the traffic generation rate λs (r) of the sensors to 0.1, and we evaluated the probability that a packet experiences one or more retransmissions. (Please see Section 6.1 for a description of the simulator.) The results presented in Fig. 1 show that the probability of having multiple collisions can indeed be neglected. We therefore write the mean service time when the channel is sensed idle as     CW I I + f ·L s I (r) = 1 − pc (r) (δs + L) + pc (r) 2δs + 2L + 2    CW = (δs + L) 1 + pcI (r) + + f · L pcI (r) (18) 2 5 We assume that the probability of finding the channel busy at one point in time is close to the time stationary probability. 6 The duration of a data (ACK) transmission depends on the data (ACK) size and the available channel rate.

724

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

Fig. 1. Simulation results for the probability that a packet experiences one or more retransmissions, as a function of the distance of the node from the sink.

where δs is the time interval during which a node senses the channel, C W is the contention window size and f is the mean number of transmissions that make the backoff in r freeze (see Section 4). The first term in the right hand side of (18) accounts for the case where the node accessing the channel does not collide with any other node. The second term represents instead the case where a collision occurs, the tagged node extracts a backoff value (the mean value of the backoff time is equal to C W/2 and the backoff is frozen for a time equal to f · L) and the packet is retransmitted. The quantity f can be evaluated as f = m(r) 2 , where m(r) is the mean number of sensors in the proximity of r contending for the channel; the complete derivation of f is given in Appendix A. Thanks to the Poisson distribution of sensors in the area, m(r) can be computed as: ZZ Λ? (r0 ) ρ(r0 )dr0 . (19) m(r) = |r0 −r|≤ds Bw Similarly, s B (r) is given by,   L CW B + δs + + L(1 + f ) s B (r) = 1 − pc (r) 2 2   L CW B + pc (r) + δs + + L(1 + f ) + δs + C W + +L(1 + f ) 2 2    CW CW L = δs + + L(1 + f ) 1 + pcB (r) + pcB (r) + . 2 2 2

(20)

Eq. (20) can be explained as follows. Since the channel is sensed busy, first the node has to wait for the current transmission to end, i.e., on average a time interval equal to L/2; then, after a time δs , it extracts the backoff time (whose average value is equal to C W/2). Again, during the backoff procedure other nodes may access the channel thus making the backoff freeze (for an average time duration of f · L). If a collision takes place, an additional backoff procedure has to be performed and the packet has to be retransmitted. Note that, at the second backoff extraction, the value of the contention window (C W ) is doubled, thus the average value of backoff to be considered is equal to C W . In order to compute the expressions above, we now write pcI (r) and pcB (r). ZZ ZZ Λ? (r00 ) 00 0 I 0 pc (r) = u(r |r) dr dr . (21) Bw |r00 −r0 |≤ds Eq. (21) is derived considering that, when the channel is idle, a node’s transmission collides if any other node located within the carrier sensing range of the receiver is transmitting. In (21), u(r0 |r) is the probability that the next hop of the transmitter in r is located in r0 , while the inner integrals represent the probability that the next hop (i.e., the receiver) observes a busy channel.

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

725

When the channel is busy, a collision occurs if two or more nodes within the radio range of the receiver extract the same backoff value, thus accessing the channel at the same time. Thanks to the fact that we neglect multiple collisions, we can assume that all nodes set the size of their contention window to the same value C W . Thus, given that 1/C W is the probability that a contending sensor selects the same backoff as the tagged node, we have: "  #  ZZ 0 ∞ X 1 k e−m(r ) (m(r0 ))k 0 B 0 pc (r) = u(r |r) 1− 1− dr . (22) CW k! k=0 Again, u(r0 |r) accounts for the probability that the tagged sensor (located in r) uses the node in r0 as next hop, while m(r0 ) is the average number of sensors in the proximity of r0 contending for the channel. The average probability of retransmitting a packet at r, PR (r), can be computed using (16). Finally, to be consistent with the assumption that packets are retransmitted at most once, we rewrite (5) as, Λ? (r) = Λ(r)[1 + PR (r)]

(23)

which provides the actual traffic rate density at point r. Eqs. (16), (17), (19) and (21)–(23), all depend on each other; we therefore solve these equations by means of a Fixed Point Approximation (FPA) procedure. At the first iteration of the FPA procedure, we consider Λ? (r) to be equal to Λ(r), and solve (17), (21), (19), (22) and (16) in the same order as listed here. Then, we use (23) to obtain a new value of Λ? (r), and we repeat the procedure until convergence on the parameter estimates is reached. We point out that very few iterations are needed to reach convergence (namely, three to four). 5.3. Mean packet delivery delay: Computing q(r) In Section 3 we defined the mean packet delivery delay and wrote (6) to compute this quantity; the equation contains one term representing the average queuing delay experienced by a packet at point r, denoted by q(r). Here, we describe how to compute q(r). For the sake of clarity, we first consider the simple case where sensors are always active, then we address the general case where sensors alternate between active and sleep modes. 5.3.1. Computing q(r) for always active sensors The service time defined in Section 5.2 can be used to derive an approximate expression for the average queuing delay experienced by a packet at each sensor it goes through. To this end, we model the queue at each sensor using a simple M/M/1 queuing system where the arrival rate is defined by (4), while the average service time is defined by (15). It is important to point out that this is an approximation of the actual behavior of the system since the arrival as well as the service processes of data packets at a sensor are not exponentially distributed. The use of this simple model is justified by its simplicity and by its accuracy, as compared to simulation results. Moreover, it allows an easy extension to the case of finite buffer size, considering the M/M/1/B queue model. Exploiting well-known results from the M/M/1 queue theory, the mean queue length experienced by a packet at point r can be computed as: n(r) =

Λ(r)s(r) 1 − Λ(r)s(r)

(24)

and by using Little’s law, the average queuing delay is given by: q(r) =

n(r) s(r) = . Λ(r) 1 − Λ(r)s(r)

(25)

5.3.2. Computing q(r) for active and sleeping sensors We now consider that sensors may be in either an active or a sleep state. While being asleep, a sensor cannot generate, receive or transmit data packets but it preserves its buffer data content. To derive an expression for the average queuing delay experienced by a packet at point r in the case of active/sleep dynamics, we model the behavior of a sensor by means of a birth/death model that suspends the arrivals as well as the services when the sensor is in sleep mode. In terms of queuing theory, these assumptions correspond to considering an M/M/1 queue with server

726

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

Fig. 2. Example of evolution of the number of queued packets at a node in the case of active/sleep dynamics.

vacations and interrupted arrivals (in the following, we use ON and OFF as shorthand to indicate active and sleep states of the server). Fig. 2 shows a possible evolution of the number of queued packets at a node. Notice that during the OFF period the number of packets in the queue is frozen, because both arrivals and services are suspended. This behavior corresponds to a special case of queuing system with vacations [35], that allows for a very simple analysis. Indeed, if we removed the OFF periods, we would obtain the same dynamics considered in the case in which nodes are always active (see Section 5.3.1). Moreover, OFF periods start at random points in time, with no correlation with the state of the queue. As a consequence, at any time the number of packets in the queue has the same distribution as the stationary distribution derived in the case in which nodes are always on. We remark that this property holds in general, i.e., for any distribution of the duration of ON and OFF periods. Since we are interested only in the average time spent in the queue, we can simply apply Little’s law, and obtain q(r) =

n(r) Λ(r) Pa

(26)

where n is the same as in (24), whereas Pa = T¯ON /(T¯ON + T¯OFF ) is the probability that a sensor is active, which depends only on the average durations T¯ON and T¯OFF of the ON and OFF phases, respectively. 6. Results In this section we present a collection of results obtained by exploring the parameter space of the network scenario described in Section 4. In particular, in Section 6.1 we compare the analytical predictions derived from our fluid model with those obtained using a detailed simulator of the sensor network in the case of homogeneous node deployment. In Section 6.2, we exploit our model to study the behavior of large-scale sensor networks as the active/sleep dynamics and the sensing/communication ranges of the nodes vary. Furthermore, the impact of non-homogeneous node deployment is investigated assuming that the sensor density varies according to a (truncated) exponential distribution as a function of the distance from the sink. 6.1. Model validation To validate our analytical results, we developed an ad hoc, discrete-time simulator based on the assumptions about the system behavior specified in Section 4. At the beginning of the simulation we generate a random (connected) topology using a uniform distribution of nodes over a disk area of unit radius. We then compute once and for all the minimum-energy next hops available to each node, according to the energy cost defined in Section 4. The simulator implements all details of the CSMA/CA access mechanism considered in this paper, that resembles the operation of the IEEE 802.11 DCF. The duration of a slot is σ = 320 µs [36], δs is equal to 50 µs and the contention window is C W = 16. The available channel rate is Bw = 250 kb/s and the packet size (including the packet header) is equal to 400 b; L turns out to be 1.92 ms. Data packets are generated by active sensors according to a Poisson process. Since the simulation results are obtained for a particular instance of sensor deployment, the correct validation methodology requires averaging the simulation predictions over a large number of deployment realizations. We chose to run 200 simulation experiments for each set of system parameters, and to compute the average and the 90% confidence intervals for each performance metric. Each simulation experiment discards an initial transient period that we set equal to 5000 time slots. The length of each run is equal to 200,000 time slots. Furthermore, while our

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

727

Fig. 3. Average traffic rate per sensor, Λ, versus the node distance from the sink, for L g = 0.1 (left plot) and L g = 0.15 (right plot). Analytical and simulation results are compared.

model allows for the computation of the spatial distribution of performance metrics, to ease the interpretation of results as well as the comparison against simulation outcomes, we average the performance metrics over the space points at the same distance from the sink. Doing so we obtain 2D graphs of the performance metrics as functions of the distance from the sink. In all the plots shown in this section, confidence intervals are depicted as vertical error bars. We assume the following values for the system parameters. The number of sensors in the network is N = 400. The communication range is equal to the carrier sensing range for all nodes, dc = ds = d = 0.25. The energy consumption parameters are set to: Cd = 0.018 mJ, E (ele) = E (proc) = 0.15 mJ, and Pi = 18 mW [37]. Let us denote by L g the integral over the network area of the traffic generation rates λs (r) of the sensors. To validate our model under different system loads, we consider two values of L g : 0.1 and 0.15.7 First of all, we investigate the traffic rate density, Λ(r), which accounts for both packets generated by the node and the relay traffic. Fig. 3 shows the behavior of Λ(r) versus the node distance from the sink. We observe that the traffic rate (and, hence, power consumption) is not evenly distributed across the network; indeed, nodes closer to the sink have to relay a larger amount of traffic than peripheral sensors. This is related to the well known problem of data implosion at the sink [38] that affects multipoint-to-point communications and results in unfairness among the network nodes. We also observe that traffic rate per sensor diminishes significantly at distances close to multiples of the communication range d. This is due to the routing strategy adopted, which selects the path minimizing the overall energy cost to send a packet to the sink. Notice that, with our choice of values for Cd , E (ele) and E (proc) , it turns out that the fixed cost required to transmit a packet over one hop is much larger than the variable cost due to the amplifier, even if sending at the maximum possible distance d. As a consequence, routes are primarily selected on the basis of the minimum hop count. Among all routes having the minimum number of hops, the one minimizing the variable cost due to the amplifier is preferred. Finally, looking at Fig. 3, we observe that the model is also able to accurately predict the particular shape of the curves obtained for different values of L g . The left plot in Fig. 4 and in Fig. 5 shows the average data delivery delay versus the source distance from the sink (i.e., the time elapsed from the instant at which a packet is generated by a sensor to the instant at which the packet reaches the sink), for L g equal to 0.1 and 0.15, respectively. We observe that the delay increases with the distance from the sink as well as with the value of L g , as expected. The delivery delay is very well approximated by a model that represents the behavior of each node by a simple M/M/1 queue. The matching is pretty good for all considered values of L g . The right plot of Figs. 4 and 5 presents the power consumption per node, as a function of the distance of the node from the sink, for L g equal to 0.1 and 0.15, respectively. Note that, looking at the value of the various contributions to power consumption, it turned out that the one due to overhearing dominates. This suggests that, in order to save energy, it is of fundamental importance to build sensors that promptly detect when data packets are not destined to themselves and disregard them. 7 Note that we consider the system load normalized to the available channel rate. Furthermore, with this set of parameters the system is not stable for values of L g greater than 0.2.

728

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

Fig. 4. Analytical and simulation results for L g = 0.1 of the average delivery delay (left plot) and of the average power consumption (right plot) as functions of the node distance from the sink.

Fig. 5. Analytical and simulation results for L g = 0.15 of the average delivery delay (left plot) and of the average power consumption (right plot) as functions of the distance of the node from the sink.

Next, we provide a model validation when the sensors exhibit active/sleep behavior. Fig. 6 shows the packet delivery delay (left plot) and the power consumption per node (right plot) as functions of the node distance from the sink. Both the figures present results for a scenario where sensors are in the sleep state for 50% of the time and for L g = 0.1. We assume that, when a sensor enters the sleep mode, its sleep time (expressed in slots) is geometrically distributed with parameter equal to 0.01; when the sensor switches to the active mode, the scheduled active period (expressed in slots) is a random variable geometrically distributed with parameter equal to 0.01. It is worth pointing out that, again, the delay in data delivery is well approximated by our M/M/1 model with server vacations and interrupted arrivals, whose parameters are derived from the traffic rate and the service rate defined in Section 5.2. For the sake of comparison, in the two plots of Fig. 6 we also report the results for the case where sensors are always active. In this manner it is possible to appreciate the effect of the active/sleep dynamics on the delivery delay as well as on the power consumption. In particular, we observe that the delay in data delivery approximately doubles with respect to the case in which nodes are always active, as predicted by (26), since here Pa = 0.5. 6.2. Model exploitation Using our model, many issues relevant to sensor networks can be studied and different architectural solutions and parameter settings can be explored (see Section 7 for a discussion on other possible applications of our model). It is important to point out the large number of different system parameters that could be investigated (e.g., number of

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

729

Fig. 6. Analytical and simulation results for the average delivery delay (left plot) and the average power consumption (right plot) as functions of the distance of the node from the sink, for L g = 0.1. The results obtained when sensors are in the sleep state for 50% of the time are compared with the case where sensors are always active.

Fig. 7. Analytical results for the scenario with L g = 0.1, N = 1000 and d = 0.15, 0.1, 0.05. Average delivery delay (left plot) and average power consumption (right plot) as functions of the distance of the node from the sink.

sensors, carrier sensing/communication ranges, fraction of time in active/sleep mode) and the fact that our fluid model is an excellent tool for this study, thanks to its low computational solution cost and its good accuracy. In Fig. 7 we present some results that allow one to appreciate the effect of different values for the common carrier sensing/communication range d (i.e., we assume that dc = ds = d). Sensors are assumed to be always active. The scenario under investigation is characterized by the following parameters: L g = 0.1, N = 1000 and d = 0.15, 0.1, 0.05. The figure shows the average delivery delay (left plot) and power consumption (right plot) as functions of the node distance from the sink. We observe that: on one hand, for smaller values of d, the number of hops from the sensors to the sink grows, thus leading to a significant increase in the delivery delay; on the other hand large values of d imply that far away transmissions also make a node detect the channel as busy, therefore sensors often overhear other nodes’ traffic and their power consumption increases. In Fig. 8 we show some results that allow one to appreciate the effect of different fractions of time spent in active mode (from 100% to 12.5%). The scenario under investigation is characterized by the following parameters: L g = 0.1, N = 5000 and d = 0.05. The figure presents the average delivery delay (left plot) and the average power consumption (right plot) as functions of the node distance from the sink. Observe that the node power consumption significantly decreases as sensors spend more time in the sleep state; however this benefit has a cost in terms of delivery delay. Thus, a clear trade-off emerges between power consumption and the level of service that the network can offer.

730

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

Fig. 8. Analytical results for the scenario with L g = 0.1, N = 5000, d = 0.05, and different fractions of time in the active state (from 100% to 12.5%). Average delivery delay (left plot) and average power consumption (right plot) as functions of the distance of the node from the sink.

Fig. 9. Sensor density for different values of α as a function of the distance from the sink.

Using our model, we also investigated a non-homogeneous scenario where the sensor density varies across the disk of unit radius. In particular, we considered a sensor deployment in which the local density varies as a function of the distance from the sink according to a (truncated) exponential distribution of parameter α. In this case, by properly normalizing the distribution so that the average number of sensors N is kept constant, we have that the sensor density is expressed as follows: ρ(r) =

N α 2 exp(α · dist(r, Sink)) . 2π (α − 1)eα + 1

Fig. 9 shows the sensor density for different values of the control parameter α. When α < 0, the sensor density decreases as the distance from the sink increases, whereas for α > 0 the sensor density increases while moving away from the sink. Notice that α = 0 corresponds to the case of homogeneous sensor density, i.e., ρ(r) = N /π . We considered the case of N = 400, L g = 0.1 and d = 0.25 and the case of N = 1000, L g = 0.1 and d = 0.15 or d = 0.05. Sensors are assumed to be always active. In Fig. 10 we present a comparison of the average traffic rate per sensor for different values of the control parameter α in the case in which N = 400 (the case of N = 1000 leads to similar results). We observe that, for negative values of α, the values of Λ(r ) are smaller than in the homogeneous case (α = 0), since the amount of traffic that has to be relayed over multiple hops (such as that produced by far away sensors) decreases. Moreover, for negative α the distribution of Λ(r ) is more even, leading to an improved fairness among sensors. The opposite is true for α > 0.

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

731

Fig. 10. Average traffic rate per sensor, Λ, in the case of N = 400 and different values of α.

Fig. 11. Average delivery delay for N = 400 (left plot) and for N = 1000 (right plot) as functions of the distance of the node from the sink and for different values of α.

Fig. 11 shows the average delivery delay D(r ) for N = 400 (left plot) and N = 1000 (right plot). For N = 400, negative values of α result in a larger delivery delay with respect to the case of homogeneous density. In particular, when α = −1.5 the delay is significantly higher than the one obtained for the other considered values of α. This can be explained by the fact that, for negative α, even if the traffic load per sensor is lower (see Fig. 10) the total number of sensors within the carrier sensing/communication range of the sink is much larger, resulting in increased channel contention around the sink. In particular, for α = −1.5, the wireless channel turns out to be very congested near the sink (i.e., the local load approaches the maximum channel capacity), and queuing delays get very large. At the other extreme, α = 1.5 results in smaller delivery delays for sensors close to the sink, because in this case the channel contention around the sink is very low. However, the average delay of sensors far from the sink gets slightly higher with respect to the case of homogeneous density; again, this is due to the large sensor density and, thus, to the increased channel contention in the regions close to the network border. A similar behavior is observed in the case of N = 1000 and d = 0.15, as shown in Fig. 11 (right plot). However, if we reduce the carrier sensing/communication range in this scenario to as small as d = 0.05 we observe a quite different behavior. When d = 0.05, a short distance is covered by each transmission, hence several hops are needed to far away sensors to deliver their traffic to the sink. As a consequence, delivery delays are small close to the sink, but get larger and larger while moving toward the network border (almost linearly as the distance from the sink increases), due to the increasing number of hops required to reach the sink. In this scenario, with α = −1.5 the channel spatial reuse is large enough so that the channel contention around a node is always very low, and no congestion arises around

732

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

Fig. 12. The effect of the number of discretization points in the solution algorithm on the accuracy of the model predictions.

the sink; therefore delivery delays are smaller than in the case of homogeneous density. For α = 1.5, instead, few sensors are located around the sink and all of them are heavily used as relays by further away nodes, thus nodes experience a higher delivery delay than for α = 0. 6.3. Model solution complexity and accuracy We implemented a solution algorithm that discretizes the disk of unit radius using N p points, thus obtaining a radial discretization step equal to √1 . The computational cost of the model solution is very limited and does not depend Np

on the number of sensors. The CPU time required to solve the model and obtain the results presented in Section 6.1 was only a few seconds using N p = 2500, while the simulation experiments took much longer to complete. The simulation time increases more than linearly with the number of sensors, thus allowing us to simulate at most a few hundreds of sensors. Furthermore, increasing the number of discretization points results in a slightly increased accuracy of the model predictions at the cost of an increased CPU time required for the model solution. Fig. 12 displays the model predictions for the average traffic rate per sensor under the same scenario as in the left plot in Fig. 3, for N p = 400, 1600, 2500, 10,000. It can be observed that both N p = 2500 and N p = 10,000 yield very accurate results, although the model solution time is significantly larger in the latter case (tens of seconds). Therefore, we used N p = 2500 in all our experiments as it proved to be a reasonable trade-off between efficiency and accuracy of the discretization algorithm. 7. Conclusions In this paper we presented a methodology to analyze the behavior of large-scale sensor networks. Our approach is based on a fluid representation of all quantities that depend on the specific location within the network topology, and on probabilistic functions to characterize the behavior of individual nodes. The model predictions have been validated against results obtained through an ad hoc simulator under different system loads; the model proved to be accurate for the computation of all considered performance metrics. Furthermore, the complexity of the model solution does not depend on the network size but on the particular numerical solution technique that is used. This allows the investigation of large-scale sensor networks at very low computational cost. To show the potentialities and the applicability of our approach, we used the model to study the distribution of power consumption, as well as delay in data delivery, among the sensor nodes assuming both homogeneous and heterogeneous sensor density across the network area. The proposed approach provides a very powerful and flexible framework that can be used to study several important issues in wireless sensor networks. In particular, the model could be extended to consider the presence of multiple sinks and the possibility of performing data aggregation at the sensor nodes; then various routing strategies, besides the one considered in this paper, could be studied as well. Finally, a transient analysis of the system could be performed,

733

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

enabling the battery discharge of the sensors to be tracked as time goes on and to consider the behavior of the nodes dependent on their residual energy. Acknowledgements We are extremely grateful to the anonymous referees for their helpful and constructive comments. This work has been partially supported by the Italian Ministry for University and Research (MIUR) within the frameworks of the MEADOW (FAR) and of the FAMOUS (PRIN) projects. Appendix A A.1. Computation of the minimum-energy path (Eq. (9)) Here we prove that the minimum possible energy required to send a packet to the sink from a point r is given by (9). We carry on the proof into three steps: first we prove that all sensors on the route must be aligned; next we prove that the distance between two consecutive sensors must be the same; finally we show how to determine the minimum number of hops required to reach the sink. As a first step, assume that the minimum number of hops required to reach the sink from point r is known and equal to h. Let ξ(r) = (r0 , r1 , . . . , rk , . . . rh ) (with r0 = r and rh = Sink) be a sequence of points, such that dist(r j , r j+1 ) ≤ dc , 0 ≤ j < h. The energy required to send a packet from r to the sink using as relays the sensors located at the points of ξ(r) is given by E(ξ(r)) =

h−1 h  h−1  i   X X 2 E (ele) + E (proc) + Cd · dist(r j , r j+1 )η = 2h E (ele) + E (proc) + Cd dist(r j , r j+1 )η . j=0

j=0

We can prove that on the minimum energy path all points in ξ(r) stay on the line connecting r to the sink. Suppose for simplicity that all points are aligned except point rk . Let us call r0k the projection of point rk on the line. Notice that r0k is aligned with the other points. Let us call ξ 0 (r) = (r0 , . . . , r0k , . . . , rh ). By construction, we have that: dist(rk−1 , r0k )η ≤ dist(rk−1 , rk )η and dist(r0k , rk+1 )η ≤ dist(rk , rk+1 )η . Then, we can show that E(ξ 0 (r)) ≤ E(ξ(r)), ! h−1   X η 0 η 0 η 0 (ele) (proc) dist(r j , r j+1 ) + dist(rk−1 , rk ) + dist(rk , rk+1 ) + Cd E(ξ (r)) = 2h E +E j=0, j6=k−1,k



≤ 2h E

(ele)

+E

(proc)



+ Cd

h−1 X

η

η

η

!

dist(r j , r j+1 ) + dist(rk−1 , rk ) + dist(rk , rk+1 )

j=0, j6=k−1,k

= E(ξ(r)). Now we can assume that all points of the route are aligned and prove that the distance between two consecutive points is constant and equal to α = dist(rh0 ,rh ) . Consider a generic sequence ξ(r) of h points aligned on the same segment. We indicate the distance between two consecutive points as dist(r j , r j+1 ) = α j , with 0 ≤ j ≤ h − 2, and P the one between the last two points as: dist(rh−1 , rh ) = dist(r0 , rh ) − h−2 j=0 α j . Then, we have " !η # h−2 h−2 X X η ele proc αj E(ξ(r )) = 2h(E + E ) + Cd α j + dist(r0 , rn ) − . j=0

j=0

The partial derivatives of E(ξ(r )) along α j , 0 ≤ j ≤ h − 2, are as follows,  !η−1  h−2 X ∂ E(ξ(r )) η−1 . αj = Cd ηα j − η dist(r0 , rh ) − ∂α j j=0 It can be easily seen that all partial derivatives are equal to 0 if the distance between any two consecutive nodes α j is constant and equal to α = dist(rh0 ,rh ) .

734

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

So far we have proven that along the minimum energy path, all points are aligned and equidistant. If the number of points is equal to h, then we have   dist(r, Sink)η . E min (r, h) = 2h E (ele) + E (proc) + Cd h η−1

(27)

Now we have to determine a valid value for h that minimizes the energy cost of the path. If we consider (27) to be qcontinuous on h, we can compute its derivative and obtain the minimum of the function for h = ∗ d dist(r0 , rh ) η 2 E (ele)C+E (proc) ) . Since h must be an integer, we define h to be the nearest integer to h that minimizes the ( m l dist(r,Sink) energy. However, we must also satisfy the constraint that α = dist(r,Sink) ≤ d , that is h ≥ . c h dc A.2. Computation of the mean number of transmissions freezing the backoff counter The probability that a sensor draws one out of the C W backoff values is 1/C W . Now, consider that a node has drawn the backoff value j, with 0 ≤ j < C W . The probability that the decrease of the node backoff counter is interrupted by i transmissions is the probability that i out of the k contending nodes have selected a smaller backoff value, i.e., j/(C W − 1). The number of contending nodes k is distributed according to a Poisson distribution with mean m(r). It follows that the average number of transmissions that make the backoff counter of the sensor freeze can be computed as,   i   ∞ −m(r) W −1 X k e k j CW − j − 1 k (m(r))k CX 1 X i f = C W k=0 k! i CW − 1 CW − 1 j=0 i=0 CW P−1

=

∞ −m(r) X e (m(r))k k=0

k!

k

j

j=0

C W (C W − 1)

=

∞ 1X e−m(r) (m(r))k m(r) k = . 2 k=0 k! 2

(28)

References [1] C.-F. Chiasserini, M. Garetto, Modeling the performance of wireless sensor networks, in: IEEE INFOCOM, Hong Kong, March 2004. [2] O. Dousse, P. Mannersalo, P. Thiran, Latency of wireless sensor networks with uncoordinated power saving mechanisms, in: ACM MobiHoc, Tokio, Japan, June 2004. [3] P. Jacquet, Geometry of information propagation in massively dense ad hoc networks, in: 5th ACM International Symposium on Mobile Ad Hoc Networking and Computing, MobiHoc’04, Roppongi Hills, Tokyo, Japan, May 2004, pp. 157–162. [4] S. Toumpis, L. Tassiulas, Packetostatics: Deployment of massively dense sensor networks as an electrostatics problem, in: IEEE INFOCOM, Miami, FL, March 2005, pp. 2290–2301. [5] S. Toumpis, G.A. Gupta, Optimal placement of nodes in large sensor networks under a general physical layer model, in: IEEE SECON, Santa Clara, CA, September 2005. [6] S. Singh, C.S. Raghavendra, PAMAS: Power aware multi-access protocol with signaling for ad hoc networks, ACM Computer Communication Review (1998) 5–26. [7] W. Ye, J. Heidemann, D. Estrin, An energy efficient MAC protocol for wireless sensor networks, in: IEEE INFOCOM, New York, NY, June 2002. [8] C. Schurgers, V. Tsiatsis, S. Ganeriwal, M. Srivastava, Topology management for sensor networks: Exploiting latency and density, in: 3rd ACM International Symposium on Mobile Ad Hoc Networking and Computing, MobiHoc, 2002. [9] R. Zheng, J. Hou, L. Sha, Asynchronous wakeup for power management in ad hoc networks, in: MobiHoc 2003, Annapolis, MD, June 2003. [10] M.A. Youssef, M.F. Younis, K.A. Arisha, A constrained shortest-path energy-aware routing algorithm for wireless sensor networks, in: IEEE Wireless Communications and Networking Conference, WCNC 2002, March 2002, pp. 794–799. [11] R. Jain, A. Puri, R. Sengupta, Geographical routing for wireless ad hoc networks using partial information, IEEE Personal Communication (2001). [12] B. Chen, K. Jamieson, H. Balakrishnan, R. Morris, Span: An energy-efficient coordination algorithm for topology maintenance in ad hoc wireless networks, Wireless Network 8 (5) (2002) 481–494. [13] M. Zorzi, R.R. Rao, Geographic random forwarding (GeRaF) for ad hoc and sensor networks: Energy and latency performance, IEEE Transactions on Mobile Computing 2 (2003) 337–347. [14] T. Melodia, D. Pompili, I.F. Akyildiz, Optimal local topology knowledge for energy efficient geographical routing in sensor networks, in: IEEE INFOCOM, Hong Kong, March 2004.

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736

735

[15] D. Ferrara, L. Galluccio, A. Leonardi, G. Morabito, S. Palazzo, MACRO: An integrated MAC/routing protocol for geographic forwarding in wireless sensor networks, in: IEEE INFOCOM 2005, March 2005, Miami, FL, pp. 1770–1781. [16] Y. He, C.S. Raghavendra, XVR: X visiting-pattern routing for sensor networks, in: IEEE INFOCOM 2005, March 2005, Miami, FL, pp. 1758–1769. [17] L. Lin, N.B. Shroff, R. Srikant, Energy-aware routing in sensor networks: A large systems approach, in: Wireless On-demand Network Systems and Services, WONS 2006, Les M´enuires, France, January 2006. [18] J. Luo, J.-P. Hubaux, Joint mobility and routing for lifetime elongation in wireless sensor networks, in: IEEE INFOCOM 2005, Miami, FL, March 2005, pp. 1735–1746. [19] C. Florens, R. McEliece, Packet distribution algorithms for sensor networks, in: IEEE INFOCOM, San Francisco, CA, March 2003. [20] B. Krishnamachari, D. Estrin, S. Wicker, Modelling data-centric routing in wireless sensor networks, in: IEEE INFOCOM, New York, NY, June 2002. [21] R. Kannan, S. Sarangi, S.S. Iyengar, L. Ray, Sensor-centric quality of routing in sensor networks, in: IEEE INFOCOM, San Francisco, CA, April 2003. [22] W. Choi, S.K. Das, A novel framework for energy-conserving data gathering in wireless sensor networks, in: IEEE INFOCOM, Miami, FL, March 2005, pp. 1985–1996. [23] S. Shakkottai, R. Srikant, N.B. Shroff, Unreliable sensor grids: Coverage, connectivity and diameter, in: IEEE INFOCOM, San Francisco, CA, April 2003. [24] B. Liu, D. Towsley, A study on the coverage of large-scale sensor networks, in: 1st IEEE International Conference on Mobile Ad-hoc and Sensor Systems, MASS 2004, Fort Lauderdale, FL, October 2004. [25] H. Liu, P. Wan, C.-W. Yi, X. Jia, S. Makki, N. Pissinou, Maximal lifetime scheduling in sensor surveillance networks, in: IEEE INFOCOM, Miami, FL, March 2005, pp. 2482–2491. [26] O. Dousse, F. Baccelli, P. Thiran, Impact of interference on connectivity in ad hoc networks, in: IEEE INFOCOM, San Francisco, CA, April 2003. [27] G. Lu, N. Sadagopan, B. Krishnamachari, A. Goel, Delay efficient sleep scheduling in wireless sensor networks, in: IEEE INFOCOM 2005, Miami, FL, March 2005, pp. 2470–2481. [28] H. Zhang, J. Hou, On deriving the upper bound of α-lifetime for large sensor networks, in: 5th ACM International Symposium on Mobile Ad Hoc Networking and Computing, MobiHoc’04, Roppongi Hills, Tokio, Japan, May 2004, pp. 121–131. [29] S. Lu, V. Bharghavan, R. Srikant, Fair scheduling in wireless packet networks, IEEE/ACM Transactions on Networking 7 (4) (1999) 473–489. [30] J.G. Kim, M. Krunz, Fluid analysis of delay performance for QoS support in wireless networks, in: Seventh International Conference on Network Protocols, ICNP’99, October–November 1999, pp. 254–261. [31] J. Marc Kelif, E. Altman, Downlink fluid model of CDMA networks, in: IEEE 61st Vehicular Technology Conference, VTC 2005 Spring, Stockholm, Sweden, May–June 2005. [32] D. Bertsekas, R. Gallager, Data Networks, Prentice Hall, 1992. [33] T.S. Rappaport, Wireless Communications: Principles and Practice, Prentice Hall, New Jersey, 1996. [34] M. Heusse, F. Rousseau, G. Berger-Sabbatel, A. Duda, Performance anomaly of 802.11b, in: IEEE INFOCOM’03, San Francisco, CA, March 2003. [35] B.T. Doshi, Queueing systems with vacations — a survey, Queueing Systems, Theory and Applications 1 (1) (1986) 29–66. [36] IEEE Standard 802.15.4, Part 15.4: Wireless MAC and PHY Specifications for Low-Rate Wireless Personal Area Networks, LR-WPANs, 2003. [37] MICA2 Datasheet. http://www.xbow.com/. [38] J. Kulik, W. Heinzelman, H. Balakrishnan, Negotiation-based protocols for disseminating information in wireless sensor networks, Wireless Networks 8 (2–3) (2002) 169–185. Carla-Fabiana Chiasserini graduated with a summa cum laude degree in Electrical Engineering from the University of Florence in 1996. She did her graduate work at the Politecnico di Torino, Italy, receiving the Ph.D. degree in 1999. Since then she has been with the department of Electrical Engineering at Politecnico di Torino, where she is currently an Associate Professor. Since 1999, she has worked as a visiting researcher at the University of California, San Diego, California. Her research interests include architectures, protocols and performance analysis of wireless networks for integrated multi-media services. She is a member of the editorial board of the Ad Hoc Networks Journal (Elsevier), and has served as an associate editor of the IEEE Communications Letters since 2004.

Rossano Gaeta was born in Torino, Italy in 1968. He received his Laurea and Ph.D. degrees in computer science from the University of Torino in 1992 and 1997, respectively. He is currently associate professor at the Computer Science Department of the University of Torino. His current research interests include the use of formal models for dependability analysis of time critical systems and the performance evaluation of peer-to-peer computing systems and large scale sensor networks.

736

C.-F. Chiasserini et al. / Performance Evaluation 64 (2007) 715–736 Michele Garetto (S’01–M’04) received the Dr.Ing. degree in Telecommunication Engineering and the Ph.D. degree in Electronic and Telecommunication Engineering, both from Politecnico di Torino, Italy, in 2000 and 2004, respectively. In 2002, he was a visiting scholar with the Networks Group of the University of Massachusetts, Amherst, and in 2004 he held a postdoctoral position at the ECE department of Rice University, Houston. He is currently assistant professor at the University of Torino, Italy. His research interests are in the field of performance evaluation of wired and wireless communication networks.

Marco Gribaudo was born in Torino, Italy. He received his Laurea and Ph.D. degrees in computer science from the University of Torino in 1997 and 2002, respectively. He is currently full time researcher at the Computer Science Department of the University of Torino. His research interests are Queuing networks with blocking, Fluid Stochastic Petri Nets and Hybrid Systems, Non-Markovian Stochastic process, Object oriented languages for system modeling, numerical solution of partial derivative differential equations, analysis of Peer to Peer systems and sensor networks.

Daniele Manini was born in Omegna, Italy in 1971. He received his Laurea and Ph.D. degrees in computer science from the University of Torino in 2001 and 2006. He is currently short term reseracher at the Computer Science Department of the University of Torino. His research interests include the use of analytical and simulating models for the performance evaluation of complex communication networks.

Matteo Sereno was born in Nocera Inferiore, Italy. He received his Laurea degree in Computer Science from the University of Salerno, Italy, in 1987, and his Ph.D. degree in Computer Science from the University of Torino, Italy, in 1992. He is currently full professor at the Computer Science Department of the University of Torino. His current research interests are in the area of performance evaluation of computer systems, communication networks, peer-to-peer systems, sensor networks, queueing networks and stochastic Petri net models.