A Fast and Accurate Performance Analysis of Beaconless IEEE 802.15.4 Multi-Hop Networks

We develop an approximate analytical technique for evaluating the performance of multi-hop networks based on beaconless IEEE 802.15.4, a popular standard for wireless sensor networks. The network comprises sensor nodes, which generate measurement packets, relay nodes which only forward packets, and a data sink (base station). We consider a detailed stochastic process at each node, and analyse this process taking into account the interaction with neighboring nodes via certain time averaged unknown variables (e.g., channel sensing rates, collision probabilities, etc.). By coupling the analyses at various nodes, we obtain fixed point equations that can be solved numerically to obtain the unknown variables, thereby yielding approximations of time average performance measures, such as packet discard probabilities and average queueing delays. The model incorporates packet generation at the sensor nodes and queues at the sensor nodes and relay nodes. We demonstrate the accuracy of our model by an extensive comparison with simulations. As an additional assessment of the accuracy of the model, we utilize it in an algorithm for sensor network design with quality-of-service (QoS) objectives, and show that designs obtained using our model actually satisfy the QoS constraints (as validated by simulating the networks), and the predictions are accurate to well within 10% as compared to the simulation results.


I. INTRODUCTION
Wireless sensor networks (WSNs), a concept that originated in the mid-1990s, have now reached a stage in their evolution that we are beginning to see their actual deployment. It is not unreasonable to expect that in 10-15 years the world will be covered with wireless sensor networks with access to them via the Internet [1]. IEEE 802.15.4 [2] is a popular standard for the physical layer and medium access control for low-power wireless sensor networks. With the growing importance of wireless sensor networks in industrial applications [3], we need analysis and design techniques for multi-hop IEEE 802.15.4 networks. The standard uses CSMA/CA for medium access control, and defines two types of CSMA/CA algorithms -beaconed (or slotted) and beaconless (or unslotted), respectively (see [2] for details). In this paper we develop a new approximate analytical technique for multi-hop beaconless IEEE 802.15.4 networks, and demonstrate the usefulness of such an analytical tool in designing multi-hop networks with Quality of Service (QoS) objectives. Figure 1 depicts the queueing schematic of a network of the type that we are concerned with in this paper. There are sensor nodes, namely, 1, 2, 3, 4, 5 and 7, that generate measurement packets according to independent point processes at rate λ i that need to be transported to the base station (BS). The sensor nodes can also serve as relays for the traffic of other sensor nodes, e.g., Node 7 is a relay for nodes 2 and 3. Two additional nodes, 6 and 8, serve only as relay nodes, due to the limited range of the radios associated with the sensor nodes. The nodes use unslotted CSMA/CA to contend for the wireless medium and transmit their packets. Even the stability analysis of such networks is a difficult problem (even for networks with single hop traffic; see [4] for a detailed discussion). In principle, the entire network can be modeled via a large coupled Markov chain, with the state at each node being the number of packets in its queue, and the state of the contention process for the head-of-the-line (HOL) packet. Such an approach is well known to be intractable even for a network with a single contention domain (no hidden network) and saturated queues (see [5], [6]). Thus all researchers have taken recourse to developing approximate analyses. Table I summarizes some of the recent work on modeling approaches for beaconless IEEE 802. 15.4 networks where we have listed the major limitations of the proposed models as well. Owing to the need for low power operation and large coverage, in general, a sensor network is multi-hop with the presence of hidden nodes. Further, for networks that carry measurement traffic, the queue occupancies vary with time. Unlike other models, we consider all of these attributes in our modeling approach.

Our Contributions and Comparison with Related Work
We consider a multi-hop WSN consisting of static sources and relays arranged in a tree topology operating in the beaconless mode with acknowledgements (ACKs). Each node has an infinite buffer space and may operate in the saturated or unsaturated regime with fixed packet length. Different analysis techniques are developed for networks with hidden nodes and arXiv:1408.1225v2 [cs.NI] 18 Aug 2014  [7] beaconless 802. 15.4; rare packet arrivals, star network; no hidden nodes; no queueing at nodes; with ACKs 2-dim discrete time Markov chain for each node with states: (backoff stage, backoff counter) while in backoff, and separate states when transmitting and idling; with unknown transition probabilities; coupling the per node models to get the unknowns via fixed point approach Qiu et al. (2007) [8] 802.11 DCF; (un)saturated, star network; with hidden nodes and ACKs; infinite buffer space discrete time Markov chain with states as the set of transmitting nodes having unknown transition probabilities, together with RSS measurements between each pair of node to obtain CCA and packet failure probabilities; iterative procedure for solving unknowns Kim et al. (2008) [9] beaconless 802. 15 [10] beaconed 802.15.4; (un)saturated, star network; no hidden nodes; with ACKs; infinite buffer; equal traffic arrival rate at all nodes Markov renewal process at each node with cycle length dependent on the number of nodes available to attempt in the first backoff period of the cycle; transition probabilities and conditional expectations using node decoupling; coupling via stationary probabilites of remaining nodes; saturation analysis results used for the unsaturated case Buratti-Verdone (2009) [11] beaconless 802. 15.4; star topology; no hidden nodes; no ACKs and retransmissions; no queuing bidimensional process with backoff counter and backoff stage at time t; evaluation of sensing, transmission and success probability; computes mean energy spent by each node for a transmission He et al. (2009) [12] beaconed 802. 15.4; saturated, star network; no hidden nodes; with ACKs; two Markov chains for each node: one embedded at the end of transmissions in the common channel, and the other during backoffs embedded at each slot; both having states as (backoff stage, backoff counter); chains coupled to get a fixed point approach Martalo et al. (2009) [13] beaconed 802.15.4; unsaturated, star network; no hidden nodes; no ACKs; finite buffer space two semi-Markov processes: one for tagged node having unknown transition probabilities, and the other for the shared radio channel that couples all the per node models to obtain the unknown quantities; MGFs used for finding queueing delays Goyal et al. (2009) [14] beaconless 802.15.4; unsaturated star network; no hidden nodes; no queueing at nodes; with ACKs tracked the number of nodes with non-empty queues assuming that the probability of m nodes having non-empty queues at any given time is same as the probability of m − 1 empty nodes getting a new packet to send while a non-empty node is sending its current packet (for coupling individual node models); assumed that the CCA attempt processes of other nodes with non-empty queues are Poisson processes (decoupling) Lauwens et al. (2009) [15] beaconless 802. 15.4; saturated, star network; no hidden nodes; no ACKs semi-Markov model for each node with unknown and non-homogeneous transition probabilities based on the backoff stage of the node; also found the distribution of backoff intervals and iterated over these together with the stationary probabilities of the semi-Markov processes Jindal-Psounis (2009) [16] 802.11 DCF; unsaturated, multi-hop network; with hidden nodes and ACKs; infinite buffer space; modeling involves details that are specific to 802.11 such as the RTS/CTS mechanism; For each of four possible classes of two-edge topologies, derived collision and idle probabilities for each edge in terms of expected service times of the edges; for a general topology, decomposed the local network topology around each edge into a number of two-edge topologies, and derived the collision and idle probabilities for the edge in terms of those of the two-edge topologies in the decomposition; using these probabilities, set up and solved a Markov chain model for each edge (with states as the current backoff window, backoff counter, and time since the last successful/unsuccessful RTS/CTS exchange) to express the expected service times of the edges via a set of fixed point equations, which were solved iteratively to find the achievable rate region under 802.11 in the given topology DiMarco et al. (2010) [17] beaconless 802.15.4; unsaturated, multi-hop network; no queueing at nodes; with hidden nodes and ACKs 3-dim discrete time Markov chain for each node having state: (backoff stage, backoff counter, retransmission counter) with CCA and collision probabilities (unknown) as state transition probabilities (decoupling); assumed independence of node processes to find expressions for the CCA and collision probabilities using stationary probabilities of different Markov chains (coupling) Sen-De (2010) [18] beaconless 802.15.4; unsaturated, multi-hop network; with hidden nodes; no queuing; analysis does not match simulation well 1-dim Markov model for transmitting node with states being in CCA, backoffs states and data transmission; steady state transmission probability and probability of success (throughput) are obtained through fixed point iterations Shyam-Kumar (2010) [19] beaconless 802.15.4; (un)saturated, multi-hop network; with hidden nodes and ACKs; infinite buffer; analysis does not match simulation well saturated analysis using continuous time Markov chain with states as the set of transmitting nodes having unknown transition probabilities; found CCA and failure probabilities using steady state probability of the Markov chain; unsaturated network modeled as a Markov renewal process constituted by the nodes having non-empty queues, saturation analysis results used in each cycle with the set of non-empty nodes Marbach et al. (2011) [20] non-adaptive CSMA characterized by a fixed attempt probability on each link, and a non-zero sensing period on each link; asynchronous, unsaturated, multihop network; oversimplified model -does not conform to any existing standard intuitively formulated fixed point equations involving node idling probabilities, and transmission attempt rates; showed uniqueness of the fixed point, and asymptotic accuracy for large networks with small sensing period and appropriately decreasing link attempt probabilities; for a given sensing period, characterized the achievable rate region of the simplified CSMA policy by defining a set of arrival rate vectors, and showing that for every member in that set, there exists a policy (a vector of attempt probabilities) such that the link service rates obtained from the fixed point equations exceed the link arrival rates networks without hidden nodes due to the difference in activity lengths perceived by a node in the presence and absence of hidden nodes. Under certain approximations, we model the stochastic process evolving at a node by incorporating the influence of the other nodes in the network by their (unknown) time averaged statistics, and then couple these individual node processes via a system of fixed point equations, which is solved using an iterative scheme to obtain the unknown variables. Although this decoupling (or meanfield) approximation is popular in such situations, our more detailed model incorporating several issues not considered together hitherto requires a careful handling of the analysis. We identify and calculate two QoS measures for each source node, viz., the packet delivery probability and end-to-end packet delay, in terms of these variables. We observe that in a multi-hop IEEE 802.15.4 network, the packet delivery probability falls sharply before the end-to-end packet delay becomes substantial.
The rest of the paper is organized as follows: In Section II, we give an overview of the unslotted CSMA/CA mechanism. Section III explains the node behaviour and elaborates upon the different analysis techniques used for networks without hidden nodes and networks with hidden nodes. Section VII compares our analysis with simulations. Section VIII demonstrates how the analysis can be used for designing multi-hop networks with QoS objectives. Finally, we conclude the paper in Section IX.
II. UNSLOTTED CSMA/CA FOR BEACON-LESS IEEE 802.15.4 NETWORKS A typical node behaviour under unslotted CSMA/CA is shown in Figure 2. A node with an empty queue remains idle until it generates a packet or receives one from its predecessor nodes. When a node has data to send (i.e., has a non-empty queue), it initiates a random back-off with the first back-off period being sampled uniformly from 0 to 2 macminBE − 1, where macminBE is a parameter fixed by the standard. For each node, the back-off period is specified in terms of slots where a slot equals 20 symbol times (T s ), and a symbol time equals 16 µs. 1 The node then performs a CCA (Clear Channel Assessment) to determine whether the channel is idle. If the CCA succeeds, the node does a Rx-to-Tx turnaround, which is 12 symbol times, and starts transmitting on the channel. The failure of the CCA starts a new back-off process with the back-off exponent raised by one, i.e., to macminBE+1, provided that this is less than its maximum value, macmaxBE. The maximum number of successive CCA failures for the same packet is governed by macMaxCSMABackoffs, exceeding which the packet is discarded at the MAC layer. The standard allows the inclusion of acknowledgements (ACKs) which are sent by the intended receivers on a successful packet reception. Once the packet is received, the receiver performs a Rx-to-Tx turnaround, which is again 12 symbol times, and sends a 22 symbol fixed size ACK packet. A successful transmission is followed by an InterFrame Spacing(IFS) before sending another packet.
When a transmitted packet collides or is corrupted by the PHY layer noise, the ACK packet is not generated, which is interpreted by the transmitter as failure in delivery. The node 1 Note, however, that there is no central coordinator that maintains synchrony of the slots across the nodes, and hence the CSMA/CA protocol is unslotted. retransmits the same packet for a maximum of aMaxFrameRetries times before discarding it at the MAC layer. After transmitting a packet, the node turns to the Rx-mode and waits for the ACK. The macAckWaitDuration determines the maximum amount of time a node must wait for in order to receive the ACK before concluding that the packet (or the ACK) has collided. The default values of macminBE, macmaxBE, macMaxCSMABackoffs, and aMaxFrameRetries are 3, 5, 4, and 3 respectively.
III. DESCRIPTION OF THE MODELING APPROACH As shown in Figure 1, the network consists of sensors, relays and a base-station (BS). We consider time invariant links and static (immobile) nodes. The links are characterized by a predefined target packet error rate (PER) (e.g., a PER of 1% on each link). We assume that the sensors generate traffic according to independent point processes. These constitute the aggregate external arrival process for the sensor network. Each node transmits its data to the next-hop node according to the topology; throughout this paper, we shall work with a tree topology so that each transmitter has exactly one receiver node. The intermediate nodes along a route may be relays in which case they simply forward the incoming traffic, or they may be sensors which transmit their own packets as well as the received packets. Based on the network congestion, the nodes may discard packets due to consecutive failed CCAs or frame retries. Figure 2 shows a typical sample path of the process evolution at a node.

A. Modeling Simplifications
The process evolutions at various nodes in the system are coupled, and each node (source or relay) can be present in any state; further, different nodes can interact with different subsets of nodes based on their Carrier Sense (CS) range and positions. 2 Hence, the random process representing the system is multi-dimensional and non-homogeneous. The exact analysis of such a process is intractable. We, therefore, make several simplifications: (S1) All packets are of the same fixed length. Hence, the DATA transmission duration is fixed. (S2) The internode propagation delays are of the order of nanoseconds, and hence can be taken to be zero.
(S3) Collision model (zero packet capture): If a receiver is in the communication range of two or more nodes that are transmitting simultaneously, it does not receive any of those transmitted packets, i.e, all the packets involved in a collision get corrupted unlike an SINR model, where some of the interfering packets may still be received successfully, depending on the SINR threshold. (S4) The Inter Frame Spacing (IFS) is neglected. It means that the receiver does not discard the packet received during the IFS. (S5) By (S3), a packet is necessarily bad if any other packet is being heard by the same receiver. Even if this is not the case, a packet can be in error due to noise. The packet error probability on each link is fixed and known. As already mentioned, the links are not time varying and we can empirically obtain the error characteristics of a link. (S6) ACK packets are short and, therefore, not corrupted by PHY layer noise. (S7) A node's CCA succeeds when there is no transmission by any node in its Carrier Sense (CS) range at the time of initiation of its CCA. Recall that in the standard, the channel state is averaged over the 8 symbol duration. (S8) The time taken by a transmitting node for the activities of successful transmission and collision are the same. We denote this time by T tx . If the transmitted data collides at the receiver, the macAckWaitDuration for the transmitting node is equal to the sum of the turnaround time of 12 T s and the ACK duration of 22 T s , a total of 34 T s (see Figure 3). (S9) We assume symmetry in carrier sensing, and signal reception, i.e., if a node i can detect (respectively decode) the packet transmissions of another node j, then node j can also detect (resp. decode) the packet transmissions of node i.  Decoupling approximation: We employ an approximation whereby we model each node separately, incorporating the influence of the other nodes in the network by their average statistics, and as if these nodes were independent of the tagged node. This commonly used approximation is also called a "mean field approximation", and has been widely used in the wireless networking literature [5], [6], [16].

B. Modeling Node Activity
The channel activity perceived by any node i is only due to the nodes in its CS set (i.e., the set of nodes within its CS range) denoted by Ω i . Note that Ω i does not include node i. Let us consider the durations during which the queue at node i is non-empty. During these times, node i alternates between performing CCAs and transmitting the packets from its queue. We model the CCA attempt process at node i as a Poisson process of rate β i conditioned on being in backoff periods [14]. For each node j ∈ Ω i , consider only those times at which the node is not transmitting (i.e., its queue is empty, or the node is in backoff). We model the CCA attempt process of each node j ∈ Ω i conditioned on these times by an independent Poisson process with rate τ (i) j , j ∈ Ω i . By modeling simplification (S1), we assume that all packets entering node i have the same fixed length, and hence take the same amount of time when being transmitted over the medium (denoted by T tx ).
Let us now remove the time intervals at node i during which the queue at this node is empty, thereby concatenating all the busy periods at the node. In this conditional time, as a result of the Poisson point process assumption for the attempt process at node i, and also for the attempt processes of the nodes in Ω i , we observe that instants at which packet attempts complete (equivalently, new backoff intervals for the attempts start) are renewal instants. These are denoted by X (k) i in Figure 4. The corresponding renewal lifetimes are denoted by W (k) i . Figure 5 shows details of a renewal cycle of node i. The dashed transmission durations belong to nodes other than i. The cycle always ends with a transmission from node i. This last transmission in a cycle always corresponds to a non-collided packet, which, however, could be received in error. Before discussing the difference in activity lengths

Transmission duration T tx
Total backoff duration with CCAs  in the two network types (as shown in Figure 5), we list the various packet collision scenarios. Packet collisions in a wireless network with a CSMA MAC can occur due to the presence of hidden nodes. In addition, there are scenarios where transmissions from two transmitters placed within the CS range of each other can overlap, known as Simultaneous Channel Sensing and Vulnerable Window (also known as First and Second Collision window respectively, in [14]). These two collision scenarios are explained in Figures 6 and  7, respectively. Note that we are making use of (S2) to avoid including insignificant timing details here.
Since the vulnerable window size is small compared to the data transmission duration of a node (see Figure 7), we shall assume that the probability of a node's CCA initiating Node j ∈ Ω i finishes its backoff, performs a CCA, finds the channel idle and starts transmitting the DATA packet. Node i finishes its backoff anywhere in the shown 12 Ts duration and there is no other ongoing transmission in Ω i , its CCA succeeds and it enters the transmission duration. As a result, the DATA packets may collide at r(i) ∈ Ω j and/or r(j) ∈ Ω i .

DATA ACK
Backoff CCA 4 Ts

Ts
Process evolving at node j ∈ Ωi in the vulnerable window of another node is negligible, and therefore, neglect the resulting packet collisions. Further, since the ACK packet size is just a small fraction of DATA packet size (e.g. compare an ACK packet (22 symbols) with a DATA packet of length 260 symbols at PHY layer), we shall assume that the probability of packet collision involving ACK packets is negligible.
We now return to elucidate the difference in length of activity periods in a renewal cycle.
(a) Absence of Hidden Nodes: When a node transmits, all the other nodes in the network can hear it, resulting in CCA failures for other nodes that try to assess the channel in the transmission period. Also if two nodes are involved in simultaneous channel sensing, the activity period may extend from T tx to a maximum of (T tx +12 T s ). Since 12 T s << T tx , we can assume that the activity period is only a single transmission period of duration T tx . (b) Presence of Hidden Nodes: Since a node's hearing capacity is limited, it may not perceive the activities of all the nodes in the network which may cause dilation of activity period. As shown in the Figure 8, node j and k are hidden from each other with respect to the receiver node i. Suppose node j starts transmitting while nodes i and k are silent. Since node k cannot hear node j, it can start its own transmission while the transmission from node j is still going on. For node i, this looks like a dilated transmission period, whose length is denoted by T

IV. DERIVATION OF NODE INTERACTION EQUATIONS
In the following subsections, we consider the node processes described in Section III, and identify certain useful steady state quantities at each node, e.g., CCA attempt rate. Then we employ the decoupling approximation (described in Section III), and detailed stochastic analysis, to write down certain fixed point equations relating these quantities. In doing this, we assume the network to be stable so that these steady state quantities exist. Then in Section V, we use an iterative scheme to solve for the unknown variables, and finally use the quantities thus obtained to evaluate the network performance, namely, end-to-end delay and packet delivery probability from each source node. The analysis will be presented for the more general case where hidden nodes may be present in the system; wherever necessary, we shall mention the changes required in the expressions for the special case where no hidden nodes are present in the system.

A. Derivation of Fixed Point Equations
We begin by analyzing the process at node i shown in Figures 4 and 5. Consider an epoch at which node i starts its backoffs in order to send the first packet in its queue. At this instant, each node j ∈ Ω i is either empty or performing backoffs for its HOL packet or transmitting its HOL packet. Recall that the rate at which node i completes backoffs during its backoff periods is denoted by β i . The activity of node i is affected by the residual rate of CCA attempts by j ∈ Ω i after removing those CCA attempts that fail due to nodes that are hidden from node i; this rate is denoted by τ (i) j . Modeling these conditional attempt processes as independent Poisson processes, we define: Thus, η i is the probability that node i makes a CCA attempt before any node in Ω i , g i is the mean time until the first CCA attempt, and c i is the probability that after an attempt by a node in Ω i , node i attempts within the 12 symbol vulnerable period, thus causing a "simultaneous" channel sensing collision (see Figure 6). 1) Perceived CCA attempt rate, τ (i) j : In a network with hidden nodes, in general, Ω j \ Ω i is nonempty. Hence, CCA attempts of node j could be blocked by the activities of nodes in Ω j \Ω i , thus leading to the node i perceiving a CCA attempt rate from node j that is less than the CCA attempt rate when Ω j \ Ω i = φ (absence of hidden nodes). We have denoted this effective CCA attempt rate of node j as perceived by node i by τ  (t): Queue non-empty period of node j in the interval (0, t] Note that with these definitions, we have We can further define, where b j can be interpreted as the long-term fraction of time node j is in backoff provided it is non-empty, and q j is the long-term fraction of time that node j is non-empty, which is also the queue non-empty probability of node j, assuming the system is ergodic.
Then, we can write Using the earlier definitions, we have is the probability of CCA failure of node j only due to the nodes in Ω j \ Ω i , and is derived below.
2) Computation of α (−i) j : Using the notation introduced earlier, we can write Applying the Renewal-Reward Theorem (RRT) [21], we have where W j is the mean time between the ends of transmission during a busy period of node j (i.e., the mean renewal cycle length). Now, by taking the reward to be the mean number of total CCAs by node j in the renewal cycle, we can write Note that node j performs CCAs at the rate of β j for the entire dilated transmission period T (eff) j i.e., a total of β j T (eff) j CCAs all of which fail, and the cycle continues after this period. Upon rearranging terms, we have Again, let the reward be the mean number of failed CCA attempts by node j in a renewal cycle due to transmissions by nodes in , which we can write, using (S7) as Clearly, in case of a simultaneous channel sensing event involving node j, the cycle ends with zero reward. Therefore, the terms in Equation (5) only consider the case where node j is not involved in simultaneous channel sensing. The first term in (5) corresponds to transmission attempts by nodes in Ω j ∩ Ω i ; this results in zero reward, and the cycle continues thereafter. The second term accounts for transmission attempts by nodes in Ω j \ Ω i ; this results in a total reward of β j T tx and the cycle continues thereafter. Upon rearranging terms, we have Hence from 3, the CCA failure probability of node j only due to the nodes in Ω j \ Ω i is given by Remark: For networks with no hidden nodes, α 3) The dilated activity period, T (eff) i : As mentioned earlier, the length of the dilated activity period as perceived by a node depends upon the set of nodes in its CS range. We propose two different models for calculating T . . . The nodes in Ω i are assumed to be hidden from each other and their transmission initiations are approximated by a Poisson process with a rate of ζ i given by Equation (7). The service time for each of these transmissions is Ttx. service time is equal to a single transmission period T tx , and the arrival process is approximated as a Poisson process having rate equal to the aggregate transmission initiation rate of all the nodes in the CS range of node i. Figure 9 represents the M/D/∞ model pictorially. Note that the above assumption is equivalent to saying that all nodes in Ω i are hidden from each other, and hence this approximation results in a larger mean for the dilated activity period. Note that the transmission initiation rate of any node j ∈ Ω i , as perceived by node i, is τ (i) j . For any node i, let the aggregate transmission initiation rate for nodes in Ω i be Assuming node j ∈ Ω i has started transmission and another node k ∈ Ω i starts at time u < T tx , the expression for T (eff) i can be written recursively as 2. Boorstyn et al. [22] Model: For node i in Figure 8, Figure 10 shows its evolution process in conditional time. We see that when nodes in Ω i attempt packet transmission, then we have a dilated transmission period, T (eff) i as perceived by Node i. Here we will use a CTMC model as suggested by Boorstyn et al. [22] for determining T (eff) i during times when node i is non empty. Let φ i be the state when all the nodes in Ω i as well as node i are in backoff. Then the state transition diagram for computing T (eff) i for the nodes in Figure 8 is shown in Figure 11. Note that return to φ i are renewal instants since the transition out of φ i are all exponentially distributed. By the insensitivity property explained in [22], the steady state probability of being in state φ i , say π φi , does not depend on the distribution of packet transmission time except by its mean. So we can take the packet service times to be exponentially distributed. Hence π φi can be obtained as in [22], i.e., where D i is a set of nodes in Ω i that are actively transmitting, and D i is the collection of all such sets. Again, from the RRT we obtain π φi as the ratio of the time the system is in state φ i and the mean time between the ends of transmission during a busy period of Node i, i.e., Hence, from Equation (9) and (10), we can obtain T (eff) i for each node i. Observe that the dilated activity period computed using the Boorstyn et al. model would be less conservative than the M/D/∞ model. Also note that identification of D i is an NP-complete combinatorial problem [22]; however, efficient algorithms exist that handle networks of arbitrary topology and moderate size (50-100 nodes). 4) Probability of CCA failure, α i : The probability of CCA failure is the probability of the occurrence of at least one transmitting node in the CS range of node i, given that node i performs a CCA. Defining N Applying Renewal-Reward Theorem (RRT) [21], we get  0  0  1  1  1  1  1  1  1  1  1  1  1  1  1  1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  1  1  1  1  1  1  1  1  1  1  1  1  1   00000000  00000000 00000000 00000000  11111111  11111111 11111111 11111111  0000000  0000000 0000000 0000000  1111111  1111111 1111111 1111111  000000  000000 000000 000000  111111  111111 111111 111111 is as in Equation (4). Now the mean number of failed CCA attempts by node i in a renewal cycle, i.e., N (f) i , can be written using (S7) as Rearranging and using Equation (11), the CCA failure probability is given by Remark: Note that for no hidden node network, T (eff) i = T tx . 5) Packet failure probability, γ i : A transmitted packet can fail to be decoded by its intended receiver due to a collision, or due to noise. We do not take packet capture into account here (see (S3)). Define M i (t) as the total number of transmissions in interval (0, t], M (c) i (t) as total number of collisions in interval (0, t] and l i as the probability of data packet error (known by (S5)) on the link between node i and its receiver r(i) due to noise. Recall that ACKs are not corrupted by PHY noise (see (S6)). The probability of packet failure, γ i , is defined as: Dividing each term in limit by T (ne) i (t) and applying RRT, we get is the mean number of collided packets, and M i is the mean number of transmitted packets in a renewal cycle. If we ignore packet discards, there is a single transmission by node i in each renewal cycle so that M i becomes unity. We can rewrite where p i is the probability of packet collision and equals M i . Since l i is given for each node i, we need to compute probability of packet collision, p i , to compute packet failure probability, γ i .
We denote the set of nodes that can cause interference in successful reception at r(i) by I r(i) , which is composed of two sets: ∈ Ω i and j ∈ I r(i) } such that Note that the receiver r(i) is in C r(i) (see Figure 12). Let the reward be the mean number of collisions of node i s packets in a renewal cycle, say, M (c) i , which can be written as is mean number of collisions of node i s packets in a renewal cycle when node i attempts a packet transmission or does a simultaneous channel sensing. On rearranging, the packet collision probability at node i is given by To compute M (c) i , we first need to find the probability that nodes in a given set are not transmitting using a product approximation due to the unavailability of joint distribution of processes. Let h i be the fraction of time node i is not transmitting (unconditional) and is equal to can be found as the sum of several components as follows: 1. The first term accounts for the fact that Node i started transmitting in the presence of at least one transmission by the hidden nodes set, i.e., C (2) r(i) .
The second term accounts for the scenario when Node i started its transmission as a simultaneous channel sensing with a node in Ω i in the presence of at least one transmission by the hidden nodes set, i.e., C The third term considers the case where Node i starts transmitting in the absence of any ongoing transmission by a hidden node but it encounters a simultaneous transmission by a node in C (1) r(i) anywhere in the corresponding 12 T s period and/or a transmission by a node in C (2) r(i) , i.e., a hidden node anywhere in its activity period T tx .
where τ j is the rate of successful CCA attempts of node j over non-transmitting period, I j (t) and is equal to The fourth term says that Node i started its transmission as a simultaneous channel sensing with a node in C r(i) in the absence of any hidden node. This event surely ends up in a collision at the receiver r(i).
The final term says that Node i started its transmission as a simultaneous channel sensing with a node in Ω i \ C The overall packet collision probability is given by The packet failure probability, γ i , can now be calculated using Equations (15) and (13).
Remark: Note that for no hidden node network C r(i) = φ and j∈C (2) r(i) h j = 1 6) Average Service Rate (σ i ): Each packet that reaches the HOL position in the queue at a node can have multiple backoffs and transmissions before it is successfully transmitted or discarded. We define Z i as the average time spent in backoff, and Y i as the average transmission time until the packet is successfully transmitted or discarded at the MAC layer. Then the average service rate, σ i , at node i can be calculated as: Using the default values from the standard, the mean backoff durations can be calculated (shown in Table II). Define the following quantities: where B i refers to the mean backoff duration until the packet is transmitted or discarded due to successive CCA failures, T 7) Aggregate Arrival Rate (ν i ), Goodput (θ i ) and Discard Probability (δ i ) for a Node: The arrival process at each node consists of packets which are generated at the same node (if it is a sensor) and the packets to be forwarded. The aggregate arrival rate at a node i can be written as: where λ i is the packet generation rate at sensor node i, P i is the set of all its in-neighbours, and θ i is the rate of packet transmission by the node which are successfully received at r(i) (known as goodput). An enqueued packet at a node is successfully received by the intended receiver in a manner shown in Figure 13.  Fig. 13. The goodput of a node is defined as the rate of successfully received packets by its receiver.
Assuming that the queueing system is stable and has a steady-state solution, the goodput θ i is given by where δ i is the probability of discarding a packet due to consecutive CCA failures, or successive failed retransmission attempts, and is given by Note that if the queue at node i is saturated, then the goodput θ i is equal to σ i . Note that while calculating σ i , we have taken the packet discards into account.
8) The node non-empty probability, q i : To find the expression for q i , assuming that all the arriving packets reach the HOL position (i.e., no tail drops) and applying Little's Theorem, we get Further, for a saturated node, the quantity q i is equal to 1. 9) Obtaining b i and β i : In order to find b i , the fraction of time a node is in backoff provided it is non-empty, we embed a renewal process in conditional time where the renewal epochs are those instants at which the node enters the random backoff period after a packet transmission or packet discard. We use the RRT to find the expression for b i as The quantity β i , the rate of CCA attempts in backoff times, is based on the backoff completion times irrespective of the CCA succeeds and node does a Rx−to−Tx turnaround Consecutive CCA failures and node discards the packet transmission attempt of the packet since a packet retransmission is considered the same as a new packet transmission. Thus, for the calculation of β i , it suffices to observe the process at node i only in the backoff times. Figure 14 shows the residual backoff process where after completion of the backoff duration, the node performs a CCA. Using the result of Kumar et al. [6] with their collision probability replaced by our CCA failure probability, α i , the expression for β i can be written as

A. Global Iteration Scheme
The global iteration scheme to solve the fixed point equations derived above is shown in Figure 15. We start with a vector {0, 10, λ i , l i } corresponding to {α i , τ (i) j , ν i , l i } for each node i and node j ∈ Ω i , and repeat the procedure until the quantities converge.

B. Existence of a fixed point
A careful look at the derivation of the fixed point equations in Section IV-A reveals that the fixed point variables are where α i is the CCA failure probability at node i, and q i is the queue non-empty probability at node i. These variables are related via the set of equations (1), (6), (9), (10), (12), (13), (15), and (16)- (22). We observe that all the functions involved in the fixed point equations are continuous (since compositions, sums, and products of continuous functions are continuous, and also minimum of continuous functions is continuous). Hence, the fixed point equations can be represented as a continous map from [0, 1] 2N to [0, 1] 2N . Hence, the existence of a solution to the fixed point equations follows from Brouwer's fixed point theorem.
Proving the uniqueness of the fixed point, and convergence of the iterative procedure to the fixed point is out of the scope of this work. For a detailed discussion of the complexity associated with these proofs for general multi-hop topologies, see Section IV.D in [16]. To the best of our knowledge, the only work to have attempted a formal proof of the uniqueness of the fixed point in the context of multi-hop networks is [20], but that too for a rather simplified version of CSMA policies. However, in our numerical experiments, the fixed point iterations always converged to a solution.

C. End-to-End Delay Calculation
We use the two parameter Whitt's QNA [23] to calculate the mean sojourn time at each node based on an approximate Moment Generating Function (MGF) of service time. We can write an expression for service time in a recursive manner by allowing infinite CCAs and retransmissions. To account for the discarded packets, we allow only a fraction of transmitted packets to join the next-hop neighbour's queue based on the discard probability at that node. We denote the service time at node i by S i , and let B i denote the length of random backoff duration, which is assumed to have an exponential distribution with rate β i for node i. Then, S i can be written as whereS i is a random variable with the same distribution as S i . The MGF of B i , denoted by M Bi (z), is equal to βi z+βi . Therefore, we can express the MGF M Si (z) of service time S i as .
The first two moments of the service time, E(S i ) and E(S 2 i ) can be calculated by differentiating the MGF M Si (z): The QNA procedure commences from the leaf nodes and converges to the base-station in a sequential manner. We first calculate the squared coefficient of variance of service time, denoted by c 2 Si , at each node, i.e., Ignoring the packet discards at the MAC layer, the net arrival rate Λ i at a node i is given by: for relay nodes For any node i, let ρ i be defined as We now calculate the squared coefficient of variance for the departure process (c 2 Di ) for a node which uses the squared coefficient of variance for the interarrival times at that node (c 2 Ai ). Here we include the probability of a packet discard which is equal to δ i .
Further, c 2 Ai is calculated as Finally, the mean sojourn time at a node i is given by The end-to-end mean packet delay for a source node j, provided that the set of nodes along the path from this node to the BS is L j , is given by D. Packet Delivery Probability for each Source Node p (del) i for each source node i is defined as the fraction of generated packets at source node i that reach the base station without any time bound. Let the set of nodes constituting the path from a source node i to the BS be L i . Assuming that the drop events are independent from node to node, the expression for p where δ j is the packet discard probability of node j.

VI. DISCUSSION ON VALIDITY OF THE FIXED POINT APPROACH
We recall that we developed the analysis under the premise that the system of queues is stable, and, hence, all the steady state quantities involved in the fixed point equations exist. The next question we ask is whether, having performed the above analysis, we can use the results to conclude that the system of queues is indeed stable, which would provide a consistency in the overall approach.
We proceed by modeling the CSMA/CA multihop network analyzed in Section III as a Discrete Time Markov Chain (DTMC), and therefrom, deriving a sufficient condition for the stability of the network.

A. A DTMC Model
The system evolves synchronously over slotted time (this is an idealization only for the analysis in this section), with the duration of each slot being 1 symbol time 3 . We assume that the start instants of all backoffs are aligned with the slot boundaries. Further, the external arrival process to each source node is assumed to be Poisson; hence the number of arrivals in successive slots are independent (independent increment property). The evolution of the queueing system can then be modeled as a DTMC embedded at these slot boundaries, with the state of each queue comprising of the following components: 1) Queue length at each node 2) Residual backoff at each node 3) Residual CCA time at each node 4) Backoff stage (i.e., the number of CCA attempts for the current packet) at each node 5) Transmission state (whether the node is transmitting a packet or not) at each node 6) Retransmission stage (the number of retransmissions so far for the current packet) at each node 7) Residual packet length when a node is transmitting (in symbol times) Note that except the queue lengths, all the other components of the state space are finite, while the state space of the queue lengths is countable. Hence, the state space is countable. We denote the state at time step n by (X(n), Y(n)), where X(n) = (X 1 (n), . . . , X N (n)) denotes the queue length process, and Y(n) denotes the rest of the components of the state taken together. Thus, X(n) ∈ Z n + , and Y(n) ∈ K y , where K y is a finite set of finite valued vectors.
We adopt the following convention from [24] (see Figure 4 in Section 3.1 in [24]) for counting the queue lengths at each time step: all arrivals that occur during a slot are counted immediately before the end boundary of the slot, all packets that leave the queues during a slot are counted at the end boundary of the slot, and the queue lengths are computed immediately after the end boundary of the slot, so as to account for all the arrivals and departures during the slot.
With this setup, the queueing system evolves as a DTMC over the state space Z n + × K y . The transition probabilities of the DTMC are governed by the distribution of the arrival process, and the backoff distribution. Note that a similar DTMC model was proposed in [6] for IEEE 802.11 CSMA/CA under saturation assumption. Now note that the operation of the system starts with all the queues empty, i.e., in the state (X(0) = 0, Y(0) = 0). We are, therefore, only interested in the communicating class of the DTMC containing the all-zero state, (X(0) = 0, Y(0) = 0). Let us denote this class by C 0 . Proposition 1. The class C 0 is closed, and aperiodic.
Proof: See the Appendix. It follows from Proposition 1 that the DTMC evolving from the all-zero state is confined to the class C 0 . With abuse of notation, from now on, we denote by (X(n), Y(n)), the DTMC evolving from the all-zero state.

B. A Sufficient Condition for Network Stability
Since we have a DTMC, by "stability", we mean that the DTMC (X(n), Y(n)) is positive recurrent. Then, since (X(n), Y(n)) is also aperiodic, it can be verified that the steady state rates introduced in Section III exist. Therefore, we shall derive conditions for positive recurrence of the DTMC.
Note that the queue non-empty probability of queue i, 1 ≤ i ≤ N , in the steady state is 4 We have the following sufficient condition on q i , 1 ≤ i ≤ N , for positive recurrence of the DTMC (X(n), Y(n)). Discussion: We began this section by asking the question whether the results from our analytical model can be used to verify the initial assumption of stability. Since the analysis involves many approximations, evidently no definite answer can be given to this question. However, we have found from extensive simulations (see Section VII for details of the simulation procedure) that the solution to the fixed point analysis models N i=1 q i accurately (within an error of up to 10%) for external arrival rates of up to about 6 packets/sec (see Figure 16 for example). This observation along with  Theorem 1 can support the claim that if N i=1 q i < 0.9 in the solution to the fixed point analysis, then we can safely assume the network to be stable.

VII. NUMERICAL AND SIMULATION RESULTS
For the verification of our analytical model, we use QualNet (v4.5) simulator [25] with the default parameter values and a fixed payload size of 70 bytes. However, the QualNet implementation is devoid of ACKs. Therefore, we compare results only for the ACK-less scenarios (although the analysis permits the modeling of ACKs). We use the following simulation models in Qualnet to declare that a packet is in error: 1) Collision and Link Error Model: If a receiver is receiving a packet from a node, and there is another transmission in the carrier sense range of the receiver, then the receiver concludes collision of all the packets that are intended for it. In addition, if a receiver r(i) of node i receives a packet successfully from node i since there is no other packet transmission in the receiver's carrier sense range, then the received packet is concluded to be in error with probability l i , the probability of data packet error on the link between node i and the receiver r(i) due to noise. 2) Capture Model: If a receiver is receiving a packet from a node, and there is another transmission in the carrier sense range of the receiver, then the receiver computes the PER (from the SINR) of the packet that is meant for it, and rejects the packet if the computed PER is greater than a random number generated between 0 and 1. To increase the accuracy of simulation for each arrival rate, we generate the packets for 1500 seconds, and average the results over 25 repetitions with different random number seeds. 1500 seconds was chosen so that even at lower arrival rates (≤ 2pkt/sec), sufficient number of packets would be generated from each source, thereby allowing the simulation to reach steady state.

A. Simulation of an Example Network Topology
The network shown in Figure 17 has hidden nodes (the dependency graph is also shown). Note that all the nodes are sources (some of which also serve as relays) with identical packet generation rates that are simultaneously increased. Figures 18, 19, 20, and 21 are plots of measures α i , γ i , ∆ i and p  Observations: 1) We observe from the plots that the errors in the measures increase at higher arrival rates, i.e., the accuracy of the analysis decreases at higher arrival rates. For example, whereas for Nodes 1 to 4, and Nodes 6 to 10, the errors in the packet failure probability, γ i , were between 1.5% and 20%, for Node 5, the error was up to 22.2% with arrival rate of 20 packets per second. We will see, however, that the practical operating range of these networks is closer to 1 measurement per second from each node, for which value the approximation is excellent. 2) The differences in the simulation measures under the Capture Model and the Collision + Link Error Model were well within 10% for all nodes at lower arrival rates, and within 20% even at an arrival rate of 20 packets per second. Hence, we conclude that the Collision + PER Model does not yield performance significantly different from the Capture Model. For other examples illustrating this fact, see [26].

B. Extensive Simulation Results
We now present a summary of an extensive simulation study, where we only use Collision + Link Error as the model. We have performed simulations with a variety of scenarios where one or more of the following features were varied: the (ii) treeR-nN -CSm-PERl: These are the cases in which the network is a tree with N nodes (excluding the base station) such that 10 nodes among them are source nodes, and the rest of the nodes are relay nodes (the "R" in "treeR" signifies that there are relays as well as sources).
On an average, m nodes are in the carrier sense range of a node, and the PER takes the same value, l, on all the links. (iii) star-nN -CSm-PERl: These are the cases in which the network is a star with N nodes (excluding the base station), all of which are sources, positioned symmetrically on a circle centred at the base station. The m nodes nearest to a node are in the carrier sense range of it, and the PER on all the links has the same value l. (iv) line-nN -CSm-PERl: These are the cases in which the network is a line with N nodes (excluding the base station) all of which are sources. m nodes on either side of a node are in the carrier sense range of it. The PER on all the links is the same, and is equal to l. For example, the case in Figure 17 is tree-n10-CS3-PER0.01.
We compute the fractional errors in performance measures as Simulation−Analysis  Table III tabulates the accuracy of the analysis compared to simulation, and also the computation times of both simulation and analysis. We use the following notation to indicate the range of errors: (i) indicates that the error is within ± 10%; (ii) + indicates overestimate by analysis with error from 10% to 25%; (iii) ++ indicates overestimate by analysis with error more than 25%; (iv) − indicates underestimate by analysis with error from 10% to 25%; and (v) −− indicates underestimate by analysis with error more than 25%. The entry in every row is a, b, where a, b ∈ { , +, ++, −, −−} with a denoting the error summary for a range of λ where, the discard probability, δ i ≤ 0.01, and b denoting the error summary for λ > 2 pkts/sec.

Observations and Discussion:
1) As can be observed from Table III, for small arrival rates at which the discard probability, δ i ≤ 0.01, the errors in both P (del) , and ∆ are less than 10% in all the scenarios tested, whereas at higher arrival rates, the error in P (del) sometimes exceeds 25% (scenarios 7,8, and 16), which is in agreement with our earlier observation from Figure 21 as well. However, the error in ∆ even at higher arrival rates was within 10% for all but one scenario (scenario 22), where the analysis overestimated the delay within an error of 25%. One possible explanation for the degradation in the accuracy of the analysis at higher arrival rates can come from the discussion in Section VI. Note that at higher arrival rates, the queue non-empty probability of the nodes are typically higher, and hence the condition N i=1 q i < 1 (see Theorem 1) is more likely to be violated, in which case, the system may not be stable, and the validity of the fixed point analysis is questionable. For example, note from Figure 16 that for the example topology in Figure 17, N i=1 q i approaches 1 at around λ = 10 pkts/sec, and it can be seen from Figures 18,20,19, and 21 that the errors in the measures are more pronounced for λ ≥ 10 pkts/sec. 2) We also observe from Table III  is computed using M/D/∞, then the analysis takes around 9 secs per arrival rate. Hence we can tradeoff between the accuracy of analysis and computation time since analysis with M/D/∞ model usually incurs more error (> 25%) at higher arrival rates, but less than 10% for λ < 0.5 pkts/sec. 3) Finally, it was observed that the packet discard probability at a node increases to an impractical value much before the average delay at the node becomes substantial, e.g., tree-n10-CS3-PER0.01-Node-1 discards 2-5 packets for every 1000 packets when the average node delay is 5-6 msec. Hence, the overall packet delivery probabilities for the sources act as performance bottlenecks for these networks.

VIII. NETWORK DESIGN
In this section, we shall consider a problem of QoS constrained network design for a given positive traffic arrival rate to demonstrate the usefulness of the analytical model in an iterative network design process.
Consider the following setting: a set of sensor nodes and a base station (BS) are deployed over an area; each sensor node is a data source, and can also act as a relay. The transmit power level of each node can be adjusted over a range. Consider the complete graph over these nodes. Each directed link in this graph will have a certain packet error rate (PER) that depends on the transmit power level of the sender node on that link.
We consider the following network design problem: for a given traffic arrival rate λ > 0 at the sensor nodes, minimize the maximum transmit power level used by the sensor nodes, such that the resulting network has the following properties.
1) Each sensor node has a path to the BS, with the PER on each link in each path being upper bounded by a predefined target threshold p. 2) For the given λ, the end-to-end packet delivery probability (i.e., the probability that a packet is not discarded) on any path is at least p del . 3) For the given λ, the mean delay (computed over the successfully delivered packets) on any path is upper bounded by a predefined target d max . Note that for a design (network) to satisfy the QoS objectives for a given arrival rate, it is necessary that the network satisfies the QoS objectives under zero/light traffic load, i.e., in the limit as λ → 0, in which limit a packet that enters the network departs from the network before another packet arrives, i.e., each packet traverses the network alone, prompting us to call this limit the lone packet traffic model (for a more formal proof 5 of this fact, see [28]). We, therefore, adopt the following two step approach: 1) We first focus on the QoS constrained network design problem under the lone-packet traffic model in Section VIII-A; we formulate the problem as a network design problem on graphs, and propose an algorithm to solve the problem optimally. 2) Then, in Section VIII-B, we combine the lone-packet based design algorithm with the analytical tool developed in Section III to address the more general (and more complex) problem of QoS constrained network design for a given positive traffic arrival rate. Note that we can ensure a given target PER on a link by ensuring that the average received power across the link (averaged over shadowing and fading) meets a received power target. Such a target average received power would be obtained by deriving a margin above the minimum value of received power, from statistics of shadowing and fading. If we take this worst case approach over the joint pdf of shadowing and fading, then for a given target PER, the required transmit power on a link is a non-decreasing function of the link length. Hence, the problem of minimizing the maximum transmit power is equivalent to minimizing the maximum link length in the resulting network.

A. Network Design under the Lone-Packet Model
Given the target PER p on any link, the mean delay on a link under the "lone packet" model can be computed using an elementary analysis (see [29]), taking into account the backoff behavior of 802.15.4 CSMA/CA, and using the backoff parameters given in the standard [2]. Then, to meet the mean delay requirement of d max on a path with h hops, we require that where, d single−hop is the mean link delay computed as explained earlier.
Again, given the target link PER of p, and the number of retries r (obtained from the standard) before a packet is discarded on a link, the packet discard probability on a link can be obtained as q = p r+1 . Hence, to ensure a packet delivery probability of at least p del on a path with h hops, we require that Hence, to ensure the QoS constraints under the "lone packet" model, we require that the hop count on each path is upper bounded by h max = min{h delay max , h delivery max }. Thus, the problem of QoS constrained network design under the "lone packet" model can be reformulated as the following graph design problem: Given a set of source nodes Q, and a base station (BS), indexed as node 0, consider the graph G = (V, E), where V = Q∪{0}, and the edge set E consists of all feasible edges, i.e., edges with PER ≤ p at maximum possible transmit power. Given a hop count constraint h max , the problem is to extract from G, a spanning tree on Q rooted at the BS, such that the hop count on any path is upper bounded by h max , and the maximum edge length in the spanning tree is minimized.
We call this, the MinMax Spanning Tree with Hop Constraint (MMST-HC) problem.
The following is an algorithm to obtain an optimal solution to the MMST-HC problem. At each iteration, we prune all edges with edge length more than or same as the maximum edge length in the current feasible solution, form a shortest path tree (SPT) with hop count as cost using only the remaining edges, and keep doing this until the resulting SPT violates the hop constraint, at which point we stop and declare the last feasible solution as the final solution.
1) SPTiEP: Shortest Path Tree based iterative Edge Pruning Algorithm: (i) Initialize: Set k ← 0, G (0) ← G (ii) Checking feasibility: In iteration k, find a shortest path tree (SPT) T (k) on the graph G (k) . Check if all the paths from the sources to the BS in T (k) satisfy the hop constraint.
-If the hop constraint is not met for some of the sources in T (k) , STOP. * If k = 0, declare the problem infeasible. * If k > 0, output T (k−1) as the final solution.
-If the hop constraint is met for all the sources in T (k) , proceed to the next step. (iii) Edge pruning: Let w (k) be the maximum edge length in T (k) . Remove from G (k) , all edges of length ≥ w (k) to obtain the graph G (k+1) . (iv) Iterate: Set k ← k + 1. Go to Step 2.
Since the time complexity of finding an SPT in a graph with N nodes is O (N log N ), it can be easily verified that the time complexity of the SPTiEP algorithm is O(N 3 log N ) for a graph with N nodes. Thus, the SPTiEP algorithm is polynomial time.
2) Proof of correctness of SPTiEP: We define F (k) = {T ⊂ G (k) : T satisfies the hop constraint}: set of all feasible solutions contained in the graph G (k) w opt : The minmax edge length, i.e., the maximum edge length in an optimal solution Also recall the definitions of T (k) and w (k) from the description of the algorithm.
Clearly, F (k) is non-empty if and only if T (k) ∈ F (k) .
To prove the correctness of SPTiEP algorithm, it is enough to show the following: Proof: See the Appendix.

B. Network Design for a Given Positive Arrival Rate
Now we come back to the more general problem of QoS constrained network design for a given positive arrival rate. This problem is rendered much more difficult compared to its lone-packet version due to the complex stochastic interaction between contending nodes, which, unlike the lone-packet model, makes it hard to map the QoS constraints to simple explicit constraints on certain graph properties. Therefore, unlike the lone-packet version where we posed the problem as a pure graph design problem, in the positive traffic case, we shall use the analytical model explicitly in an iterative design process to evaluate for QoS, the designs obtained systematically in every iteration. While traditional network simulation tools can also be used, in principle, to evaluate a given network for QoS, the time required for such network simulation is significantly more than that required by the analysis (as we saw in Table III, and shall see again in our numerical experiments in Section VIII-C), and that makes network simulation, an impractical option in an iterative design process.
Also, a naive approach to the design problem would be to consider all possible trees from the given graph G, and evaluate each of them for QoS (using either the analysis, or network simulation), and choose one whose maximum edge length is minimum among all those that meet the QoS objectives. While this exhaustive search appears to be the only way that is guaranteed to obtain a feasible solution whenever there exists one, this approach has exponential time complexity (since the number of possible trees is exponential in the number of nodes), and is therefore, not practical.
We shall present below, a polynomial time algorithm for the proposed positive traffic design problem, using the SPTiEP algorithm along with the analytical model; note that because of the stochastic nature of the interaction between contending nodes in different possible networks, in absence of an exhaustive evaluation of all possibilities, the algorithm is not theoretically guaranteed to return a feasible solution whenever there exists one; however, in our numerical experiments, the algorithm was always found to return a feasible solution, and moreover, simulations confirmed that designs proposed with the analytical tool did meet the QoS requirements (see Section VIII-C).
1) Extended SPTiEP: An algorithm for QoS constrained network design at given positive arrival rate λ > 0: As we had mentioned before, to meet the QoS objectives at a positive arrival rate, it is necessary (but not sufficient) to meet the objectives under the lone-packet model. Hence, our design still needs to satisfy the hop count constraint h max derived from the QoS constraints under the lone-packet model. With this in mind, we proceed as follows: if the outcome of the SPTiEP algorithm meets the QoS constraints at the given λ, then that is an optimal solution (since it is an optimal solution for the lone-packet design problem, and it is also QoS feasible for the given λ > 0). If, however, the SPTiEP outcome does not meet the QoS constraint, we need to change the design by adding some of the edges of greater length that were pruned in course of the SPTiEP algorithm; note that adding edges is the only option as pruning any more edge from the SPTiEP solution will cause us to violate the hop constraint, and hence the lone-packet QoS. The detailed steps are presented below.
1) Lone-packet design: Run the SPTiEP algorithm on the graph G to obtain a tree T 0 .
• If T 0 does not satisfy the hop constraint, declare the problem infeasible, as we cannot satisfy the QoS objectives even for λ = 0. • Else, go to the next step. 2) Set k ← 0. Mark all edge lengths in G as not examined.
3) Checking feasibility for λ > 0: Evaluate T k for QoS requirements (i.e., p del and d max ) at the given arrival rate λ, using the analytical model. 6 • Stopping criteria 1: If QoS is met, output T k as the final solution. • Stopping criteria 2: If QoS is not met, and all edge lengths in G have been examined, declare the problem possibly infeasible. • Else, go to next step. 4) Let w k be the maximum edge length in T k . Identify the least edge length > w k in the graph G that is not yet examined; let us denote this as w least,k . 5) Edge augmentation: Augment T k with all edges (in G) of length ≤ w least,k , to obtain the graph G k+1 . Mark all the edge lengths in G k+1 as examined.
Comment: Since our objective is to minimize the maximum edge length, in Steps 4 and 5, we add back the edges pruned during SPTiEP in increasing order of their lengths. 6) Redesign: Find an SPT T k+1 in G k+1 . Observe that if T k satisfies the hop constraint, T k+1 also satisfies the hop constraint. 7) Iterate: Set k ← k + 1. Go to Step 3.
Comment: In Steps 6 and 7, we check if the resulting shortest path tree in the augmented graph satisfies the QoS constraints for the given positive arrival rate. Note that in Step 6, there could be several possible SPTs on the graph G k+1 ; while the total network wide traffic load, as well as the total number of nodes is the same in all of these SPTs, the individual loads on the various nodes may vary from one SPT to another, resulting in potentially different delay and delivery performance. Since it is not possible to evaluate all the possible SPTs in polynomial time, we find and evaluate only one of them, and move on to a higher power/edge length design in case of QoS not being satisfied; this may lead to suboptimal design. Moreover, for the same reason, the algorithm may not always return a feasible solution even when there exists one.

Remarks:
1) It is interesting to note that the above heuristic is basically the reverse procedure of the SPTiEP algorithm, with the additional step of evaluating each design using the analytical model. At the end of each iteration, the maximum edge length in the solution changes at most to the immediate higher value not used in previous iterations. We stop as soon as a QoS feasible solution is obtained in some iteration. 2) An alternate approach could be to start with a shortest path tree on the entire graph, and then prune edges, checking for feasibility with positive load in each iteration. But since meeting the lone-packet QoS is necessary to meet the positive-load QoS, we have adopted the above approach of first designing a network satisfying the lonepacket QoS, and then backtracking.

C. Numerical Experiments
To demonstrate the strengths and limitations of the analysis in an iterative design process, we performed several test runs of the proposed algorithm on randomly generated network scenarios.
30 random networks were generated in a 50 × 50 m 2 area as follows: The entire area was partitioned into square cells of side 10 meters. Consider the lattice created by the corner points of the cells. 10 source nodes were placed at random over these lattice points. The minimum power level of the nodes is assumed to be sufficient so that all nodes are within CS range of one another, i.e., we have a "no hidden node" scenario. We chose the target link PER to be 0.01, p del = 95%, and d max = 25msec. These result in a hop constraint of h max = 5 for the "lone packet" model. Also, the traffic arrival rate at each source was chosen to be λ = 1 packet/s, which is actually quite adequate for many wireless sensing applications.
The design algorithm using the analytical model was run on the 30 random scenarios. In each case, the algorithm was found to return a feasible solution. Also, to validate the solution provided by the algorithm, we performed Qualnet simulation on both the outcome of the SPTiEP algorithm as well as the final solution for each of the 30 cases. The observations are as follows: Observations: 1) In all 30 cases, simulations of the final solution showed QoS performance better than the target. That is, the solution provided by the algorithm using the analytical model did actually satisfy the QoS constraints as verified by the simulation in all cases. 2) In 12 out of the 30 cases, simulations suggested that the SPTiEP solution ("lone packet" design) met the QoS constraints even for the given λ = 1 packet/s (and hence was optimal), but the analytical model suggested otherwise. Thus, the analytical model was somewhat conservative in its prediction of QoS, which eventually led to a design that used more power than the optimal. 3) However, while the analytical model was conservative in its prediction of QoS, the final design met the QoS objectives and predicted the performance to within 10%., i.e., the model was quite accurate in its prediction. 4) Finally, we compared the time taken to run the design algorithm using the analytical model against the time taken to run the Qualnet simulations on the designed networks in the 30 cases. To save time, in each case, we performed Qualnet simulations only for the lone packet design, and the final design obtained using E-SPTiEP algorithm. While the algorithm was run in MATLAB 7.11 on a Windows Vista based Dell Inspiron 1525 laptop with 3 GB RAM, and 2 GHz Intel Core 2 Duo CPU, the simulations were run in Qualnet 4.5 on a Linux based Dell server with 32 GB main memory, and 3 Ghz clock speed. The results are summarized in Table IV. From Table IV, we see that while the execution time of the analysis based algorithm is of the order of milliseconds, simulation of each of the designed networks takes several minutes, which indicates that if the QoS evaluation step in the iterative design is performed using simulation instead of the analysis, the execution time of the algorithm can go well beyond an hour. From the above discussion, we can summarize the following strengths and limitation of the analytical model for use in a network design process. 1) Strengths: • Design based on analysis is much faster compared to that based on network simulation, and the predictions are accurate to well within 10% compared to the simulation results. Such speed and accuracy also make the analytical tool a good choice for online/field-interactive design process, or even for as-you-go deployment of an impromptu wireless network. • Designs provided by the analysis based algorithm do actually work, i.e., satisfy the QoS constraints in practice, as validated by simulations of the designed networks. 2) Limitation: The analysis, while quite accurate compared to the simulation, is somewhat conservative in its prediction of QoS performance. This may sometimes lead to suboptimal design, or even declaration of infeasibility, when actually there may exist a feasible solution.

IX. CONCLUSION
We have developed an approximate stochastic model for the performance analysis of beacon-less IEEE 802.15.4 multihop wireless networks, with arrivals. The model permits the estimation of several time-average performance measures. Our model is accurate at small arrival rates (at which packet discard probability is small) in terms of the packet discard probability, failure probability and throughput, and delay. We calculated the mean end-to-end delays and packet delivery probabilities for each source in the network for specific packet generation rates at the source nodes. The results suggest that, for the relatively small size tree networks that we have studied, to operate in the low-discard low-delay region, the packet arrival rates at nodes should not be greater than a packet every few seconds (e.g. a packet inter-generation time of 5 to 10 seconds at the sources). Finally, we have formulated and solved a problem of QoS constrained network design for given positive traffic arrival rate to demonstrate the usefulness of the analytical model in an iterative network design process.

A. Proof of Proposition 1
Proof: First observe that transition from any state to the all-zero state is possible if we consider a series of "only down" transitions, i.e., no further external arrival occurs into any of the queues, and the packets leave the queues either due to successful transmission, or drop due to excessive retries or CCA failures. No external arrival would mean that the number of packets in the system can only decrease in each transition, and eventually we will reach the all-zero state. Note that this is possible since the maximum number of retransmission attempts, and maximum allowed CCA failures are finite. Now, suppose the class is open. Then, there exists a state i ∈ C 0 , and a state j / ∈ C 0 such that i → j, but j i. But from our earlier argument, we know, state j can reach the allzero state. Since both state i and the all-zero state belong to the class C 0 , the all-zero state can reach state i. It follows that j → i, which is a contradiction. Hence, the class C 0 is closed.
Clearly, C 0 is aperiodic since starting in the all-zero state, the system can remain in the all-zero state if no external arrivals occur in a slot (since the arrival process is Poisson, this event has a positive probability).