 Research
 Open Access
Energyaware topology control for reliable data delivery in solarpowered WSNs
 Dong Kun Noh^{1} and
 Junbeom Hur^{2}Email author
https://doi.org/10.1186/168714992013258
© Noh and Hur; licensee Springer. 2013
 Received: 16 November 2012
 Accepted: 11 October 2013
 Published: 9 November 2013
Abstract
Solar power is a valuable source of power for wireless sensor networks, but it periodically requires an appropriate energy management strategy. We introduce a scheme that constructs and maintains a faulttolerant wireless sensor network topology that can make the best use of solar energy. This topology control scheme is based on a simple model of the availability of solar energy and matches the connectivity of each node with the energy left in its battery. Operating locally, our scheme constructs and maintains a kconnected backbone of energyrich nodes that handles most of the network’s traffic reliably, without depleting the reserves of energypoor nodes. Simulation results demonstrate the effectiveness of our scheme.
Keywords
 Solar energy
 Fault tolerance
 Topology control
 Sensor network
1 Introduction
In a mainspowered wireless sensor network(WSN), energy is not a constraint on achieving a specific level of performance, so as to meet goals such as throughput and reliability. In a batterybased network, however, attempting to meet all goals in full can shorten the network lifetime; it may be better to sacrifice throughput and reliability, rather than to deplete the batteries of the sensor nodes. For this reason, designers of batterybased WSNs have focused on reducing energy consumption, so as to prolong the network lifetime.
Recently, however, environmental energy has emerged as a feasible supplement to battery power for wireless sensors, when manual recharging or replacement of batteries is not practical. In many situations, a ready source of environmental energy is the sun. Solar energy has a power density of about 15 mW/cm^{3}[1], which compares very favorably with other renewable energy sources. Of course, this highpower density is only available for part of the day; nevertheless, its contribution allows the designer of a WSN more scope to consider positive measures to improve performance, rather than having to concentrate on energy consumption. In this paper, we look specifically at the contribution that a faulttolerant topology can make to network performance.
Topology control involves coordinating nodes’ decisions regarding their transmission ranges, in order to create a network with a desirable connectivity, while restraining energy consumption or increasing network capacity, or both [2]. The need for a networkwide perspective distinguishes topology control from other nodelevel techniques for saving energy or increasing network capacity. Although topology control is achieved through individual nodes choices of transmission power level, which determine their neighbors, but the result is a global property of the entire network.
Most research on topology control [3–5] has been predicated on the assumption that some level of network connectivity is the primary property to be achieved. Topology control protocols have then been formulated to achieve this connectivity with the lowest transmission power at each node. The resulting networks meet requirements in terms of capacity, energy consumption, and interference. However, they are more susceptible to node failure, because reducing nodes’ transmission powers also reduces the number of possible routes between any pair of nodes.
Sensor nodes are notoriously unreliable, and therefore, fault tolerance is important in most WSNs. It is especially desirable that network connectivity should be preserved for as long as possible when some of sensor nodes fail or run out of power. Recent research on topology control [6–9] has therefore considered both energy efficiency and fault tolerance.
Increasing fault tolerance requires more transmission power. Thus, the sun would be an attractive power source for a faulttolerant WSN if we could match energy requirement with its availability, but the workload of a WSN and the weather are both difficult to predict. Instead, we propose a simple solar energy model, which requires no explicit forecasting of either energy supply or demand, but nevertheless is able to help individual nodes to make the best use of solar energy in contributing to the performance of the network as a whole.
Based on this energy model, we introduce a distributed and localized algorithm, called SolarTC, that determines the transmission power at each node that will make the best contribution to the fault tolerance of the whole network, while taking account of the residual energy available in that node. SolarTC has the following properties:

Energyadaptive operation: A node running SolarTC usually operates in faulttolerant mode, in which it tries to obtain more connectivity by increasing its transmission power. If a node has insufficient energy to operate in faulttolerant mode, it switches to energysaving mode, in which it tries to maintain the minimum transmission power required to maintain marginal network connectivity, while to minimize possible blackout time.

Supporting faulttolerant and energyaware routing: The robust faulttolerant nodes operate as a backbone network, which provides as many paths as possible to the sink node. This network can support either faulttolerant routing or energyaware routing.

Minimizing the disadvantage of a faulttolerant topology: Existing faulttolerant topology control techniques which increase the transmission ranges of all nodes reduces the capacity of a network and increases MAC layer contention, whereas SolarTC only increases the transmission range of faulttolerant nodes.

Fully localized algorithm: A node running SolarTC only uses information about its neighbors which are one or two hops distant. Information about twohop neighbors is obtained from onehop neighbors.
The rest of this paper is organized as follows. In the next section, we review some existing schemes for topology control in WSNs and introduce solarpowered WSNs. In Section 3, we describe our energy model of a solarpowered sensor node, and in Section 4, we explain our energyconserving topology control scheme for enhancing fault tolerance. Section 5 discusses the proposed topology control that affects the network layer. We then evaluate the performance of our algorithm in Section 6, and conclude the proposed work in Section 7.
2 Background
2.1 Effects of topology control in WSNs
A topology control protocol is responsible for selecting the transmission range of each node, which determines the contention in the MAC layer. Like the routing protocol, the MAC protocol can trigger the execution of the topology control if it discovers new neighbor nodes by overhearing their traffic. This intimate relationship between topology control and the performance of the routing and the MAC layers makes topology control one of the most important issues in designing efficient WSNs.
2.2 Topology control for faulttolerant WSNs
By reducing the transmission power of nodes to conserve the energy in nodes’ batteries, most topology control protocols tend to reduce the numbers of routes between pairs of nodes. The reduced topology that results is naturally more susceptible to node failure.
A considerable amount of work [6–8] has been done on topology control protocols that try to create faulttolerant networks, with the objective of minimizing power consumption while providing a specific level of connectivity. CBCT (faulttolerant conebased topology control) is a distributed and localized algorithm, proposed by Bahramgiri et al. [6], which achieves kconnectivity in a planar network by having each node increase its transmission power until either the maximum angle between any two neighbors is 2π/3k, or it is transmitting at full power. Other authors [10, 11] have tried to minimize the maximum transmission power used by any node. Ramanathan et al. [11] proposed a centralized greedy algorithm for achieving twoconnectivity that iteratively merges pairs of mutually connected network components to construct the whole network. Li and Hou [10] introduced two variants of the local minimum spanning tree (LMST) algorithm [5] to address the kconnectivity problem: one of these (GLSS) is centralized and the other (FLSS) is distributed and localized. Both algorithms examine links in increasing order of length and only include the links needed to satisfy the kconnectivity condition. These procedures have been shown to be better than all other current schemes for reducing the peak power consumption of a node.
Most of the work that has been done on faulttolerant topologies, including that described above, seeks to achieve uniform kvertex connectivity between any two nodes in the network. This requirement is highly appropriate for ad hoc wireless networks, in which any two nodes can be the source and destination, because data is transmitted from the sensors to one or more sinks. Thus, it is not necessary to maintain a specific degree of fault tolerance between all pairs of sensors, but it is important to have faulttolerant data paths between the sensors and the sink. Cardei et al. [12] addressed this problem with the kATC algorithm, which is tailored to heterogeneous batterypowered WSNs, in which data is forwarded from the sensors to socalled supernodes through a kconnected network of fixed topology. Our algorithm also tries to achieve kconnectivity, but in the form of a kconnected backbone network with a structure that changes so that it always consists of energyrich nodes.
2.3 Solarpowered WSNs
Corke et al. [13] articulated the principles involved in designing hardware for durable solarpowered wireless sensor networks. Minami et al. [14] designed a batteryless wireless sensor system for environmental monitoring, called SolarBiscuit. Simjee and Chou [15] presented a solarpowered wireless sensor node, based on a supercapacitor, called Everlast. Jay et al. [16] described a systematic approach to build microsolar power subsystems for wireless sensor nodes. However, most research on solarpowered WSNs, including the work mentioned above, has focused on nodelevel design topics such as hardware architecture and system analysis.
A few researchers [17–19] have been concerned with networkwide issues, such as latency and capacity, in solarpowered WSNs, but, to the best of our knowledge, we are the first to look specifically at topology control for enhancing fault tolerance in solarpowered WSNs.
3 Energy model for a solarpowered sensor node
An energy model for a solarpowered system requires both an expression of the expected harvest of solar energy, and an expression of the rate at which the system uses energy. The former is dependent on the season, the weather, and the location at which the system is deployed, and the latter depends on the rate at which data is sensed and transmitted, and the dutycycle, which is the proportion of time for which a node is active. Unfortunately, these factors cannot be predicted precisely. We therefore propose a simple energy model [19] that is independent of these factors, and we will show how this model can be used to predict the amount of energy that a node can allocate to improving faulttolerance.
where C is the battery capacity.
Note that the battery will only charge when P_{solar} > P_{sys}. Otherwise, a node is not viable in the long term. We will explain how to control P_{sys} at the end of this section.
If E_{residual} falls below E_{threshold}, then the node may have to shut down, and therefore, it needs to concentrate on saving energy. In SolarTC, a node in this situation operates as an energysaving node, or ESnode. But when E_{residual} exceeds E_{threshold}, it starts to operate as a faulttolerant node, or FTnode, which allocates some of its available energy to enhancing fault tolerance.
where θ (0 < θ < 1) controls the way in which the historical samples are considered: increasing θ reduces the contribution of older values.
The dutycycle concept [20], which is often employed to allow a node to save energy, could easily be included in the calculation of P_{sys}. Since P_{sys} is proportional to the duty cycle, changing the duty cycle has a predicable effect on P_{sys}. This means that the designer of a WSN can control P_{sys} in an approximate way by adjusting the duty cycle. Therefore, E_{threshold}, which is dependant on P_{sys}, can also be controlled by varying the duty cycle, and this is important since the value of E_{threshold} determines the number of FT nodes in the network.
4 Topology control
Definition 1 ( k FTN connectivity ). A graph G has kFTN connectivity if, for any two FTnodes n_{1}and n_{2}, there are k pairwise vertexdisjoint paths from n_{1}to n_{2}on the backbone graph consisting of FTnodes. Or equivalently, a graph is kFTN connected if the backbone graph consisting of FTnodes is still connected after the failure of up to k 1 FTnodes.
Notation for SolarTC _{ k } ( i ) and FTTC _{ k } ( i )
Symbol  Meaning 

E_{ residual }(i)  Amount of residual energy at node n_{ i } 
E_{threshold}(i)  Energy threshold for changing mode, (P_{sys}(i)/P_{solar}(i))C 
m _{ i }  1 if sensor node n_{ i } is in faulttolerant mode, otherwise 0 
s _{ i }  1 if sensor node n_{ i } has decided its operating power, otherwise 0 
r_{ i },p_{ i }  Current transmission range and power of sensor node n_{ i }(${p}_{i}={r}_{i}^{\phantom{\rule{0.3em}{0ex}}\alpha}$), respectively 
${r}_{i}^{\text{max}}$,${p}_{i}^{\text{max}}$  Maximal transmission range and power of node n_{ i }, respectively 
N_{all}(i)  {${n}_{j}\mid \text{dist}({n}_{i},{n}_{j})\le {r}_{i}^{\text{max}}$} 
FTN_{all}(i)  {n_{ j } ∈ N_{all}(i) ∣ n_{ j } is in faulttolerant mode} 
FTN_{covered}(i)  {n_{ j } ∈ FTN_{all}(i) ∣ dist(n_{i},n_{j}) ≤ r_{i}} ∪ {n_{ j } ∈ FTN_{all}(i)∣(${r}_{i}\le \text{dist}({n}_{i},{n}_{j})\le {r}_{i}^{\text{max}})\wedge $ (n_{ i } is kconnected to n_{ j } in the localized view of the topology at n_{ i })} 
${p}_{i}^{\text{LMST}}$  Transmission power of node n_{ i } needed to maintain the LMST topology (1connectivity) 
${p}_{i}^{\text{min}}$  Transmission power of node n_{ i } needed to reach the closest k faulttolerant neighbors (FTneighbors), or at least to maintain the LMST topology (1connectivity) 
${p}_{i}^{\text{FTN}}\left(n\right)$  Transmission power of node n_{ i } needed to reach the closest n FTneighbors (including the sink),${p}_{i}^{\text{FTN}}\left(0\right)={p}_{i}^{\text{LMST}}$ 
Δp_{ i }  Incremental power needed to reach the nearest node in FTN_{all}(i)FTN_{covered}(i) 
4.1 SolarTC_{ k }algorithm
After LMST has been run, node n_{ i } invokes SolarTC_{ k }(i) periodically as shown in Figure 3. SolarTC_{ k }(i) begins by determining the mode m_{ i } in which it will run from the amount of residual energy E_{residual}(i) in the node’s battery (lines 1 to 5). If E_{residual}(i) > E_{threshold}(i), then m_{ i } is set to 1 so that node n_{ i } becomes an FTnode. It broadcasts this fact to its neighbors with its maximum transmission power (lines 6 to 9). There is then a backoff time, during which node n_{ i } recalculates its list of FTneighbors FTN_{all}(i) from the messages received in response to its transmission (lines 11 to 15). FTN_{all}(i) should be updated at every node, regardless of its mode m_{ i }. If the node is an FTnode (m_{ i } = 1), then FTN_{all}(i) will be used in the construction of the backbone network which consists of the FTnodes. If the node is an ESnode,FTN_{all}(i) can still be used by the routing scheme to find energyrich neighbors (Algorithm 1).
After updating FTN_{all}(i), node n_{ i } determines its transmission power p_{ i } from the value of m_{ i }. If m_{ i } is 0, then p_{ i } is naturally the same as${p}_{i}^{\text{LMST}}$ (lines 16 to 17). Otherwise, the node must determine the value of p_{ i } which corresponds to the closest approximation to preserve local kFTN connectivity.
In order for a node to be kconnected, it must have at least k neighbors [21]. Similarly, for an FTnode to be kFTN connected, it must have at least k FTnodes within its transmission range. When FTN_{all}(i) ≥ k, the routine FTTC_{ k }(i) is called to find the minimum transmission power p_{ i } for node n_{ i } which will create k disjointpaths between n_{ i } and each of its FTneighbors n_{ j } (line 22). Otherwise, p_{ i } is set to${p}_{i}^{\text{FTN}}\left(\right{\mathit{\text{FTN}}}_{\text{all}}\left(i\right)\left\right)$, so that n_{ i } retains as many FTnodes as possible in its neighbor list (line 20).
4.2 FTTC_{ k }algorithm
When the function FTTC_{ k }(i) is run by node n_{ i }, it computes${p}_{i}^{\text{FTN}}\left(k\right)$ and compares it with${p}_{i}^{\text{LMST}}$. The larger of the two values then becomes that node’s minimum transmission power${p}_{i}^{\text{min}}$, since${p}_{i}^{\text{FTN}}\left(k\right)$ is not necessarily sufficient to connect to all the neighbors of n_{ i } in N_{all}(i). Node n_{ i } then uses an iterative process to establish its actual transmission power p_{ i }, starting from${p}_{i}^{\text{min}}$. This iteration ends when each node n_{ j } in FTN_{all}(i) is either within the transmission range r_{ i } of node n_{ i } or disjoint kvertex paths are established between n_{ i } and every n_{ j }. The value of s_{ i } is then set to 1 (Algorithm 2).
The algorithm terminates after at most FTN_{all}(i)k rounds. In each round (line 10), both of FTN_{covered}(i) and Δp_{ i } are recalculated (lines 13 to 16) if a broadcast message has been received from an FTneighbor in FTN_{all}(i). This is straightforward since the message contains information about that neighbor and its onehop FTneighbors. The algorithm terminates when FTN_{all}(i) = FTN_{covered}(i), and then node n_{ i } broadcasts its p_{ i } to all its neighbors (lines 17 to 20). If there is any FTneighbor that is still out of range, the power level p_{ i } is raised by the minimum increment Δp_{ i }, which is sufficient to allow at least one more FTneighbor in FTN_{all}(i)  FTN_{covered}(i) to receive transmissions from node n_{ i } (line 24). Then, the node recalculates FTN_{covered}(i), since p_{ i } has changed, and begins a new round, in which it seeks to discover whether the new value of p_{ i } can reach all nodes in FTN_{all}(i) (line 26). If it can, then the node broadcasts its new power level p_{ i } (line 29) to all of its neighbors, and the algorithm terminates. Otherwise, the node broadcasts its current status (line 29) and starts another round.
4.3 Connectivity properties
Theorem 1. ( k FTConnectivity, N, of FTTC_{ k }) If the maximal power graph of all FTnodes is k connected, then the backbone network obtained by FTTC_{ k } is also k connected.
Proof. Let the set of all edges connecting FTnodes constructed by FTTC_{ k } be E(FTTC_{ k }), and let the set of all edges connecting FTnodes in the maximal power graph be E(MaxGraph). It is immediately apparent that E(FTTC_{ k }) is a subset of E(MaxGraph). Suppose there is an edge (n_{ i },n_{ j }) which is in E(MaxGraph(i)) but not in E(FTTC_{ k }(i)). The FTTC_{ k }(i) algorithm running in node n_{ i } will only remove edge (n_{ i },n_{ j }) from E(FTTC_{k}(i)) if it is kconnected to node n_{ j } through the nodes in its transmission range r_{ i }. This means that k independent paths between node n_{ i } and node n_{ j } already exist. Thus the network is still kconnected after removing this edge (n_{ i },n_{ j }) from E(MaxGraph(i)). Therefore, the edges removed by the FTTC_{ k }(i) algorithm do not reduce the connectivity of the original graph which corresponds to the maximum transmission power. □
This theorem only allows FTTC_{ k } to guarantee kFTN connectivity if the maximumpower graph of the FTnodes is kconnected, and this becomes more likely as the number of FTnodes increases.
As explained at the end of Section 3, E_{threshold} can be roughly determined from the duty cycle. If a node reduces E_{threshold} by decreasing its duty cycle, then that node is more likely to become an FTnode, since E_{threshold} is more likely to drop below E_{residual}. This relation allows an administrator indirect control over the number of FTnodes in the network. However, reducing the duty cycle can also prevent a node from sensing data over an adequate period. Therefore, E_{threshold} needs to be chosen to meet the requirements of a particular application; if fault tolerance is more important than the amount of data acquired, then a lower value of E_{threshold} is more suitable and vice versa.
Theorem 2. ( Bidirectional Connectivity of SolarTC_{ k }) The topology constructed by SolarTC_{ k }has only bidirectional links.
Proof. The topology constructed by LMST has already been proven to be a bidirectional graph [5]. It remains to prove that the new links added by the SolarTC_{ k } algorithm are bidirectional. SolarTC_{ k } and FTTC_{ k }, only try to add more links when they are running on an FTnode. And the only candidate links are those which connect that node to other FTnodes. Therefore, no new link from an FTnode to an ESnode can be added, and all the existing links between FTnodes and ESnodes will have been created by LMST and therefore have bidirectional connectivity.
It now only remains to prove that the links between FTnodes are bidirectional. Suppose that node n_{ i } and node n_{ j } are both FTnodes and that there is a link between them. The existence of the link (n_{ i },n_{ j }) means that these two nodes are not kconnected, since the FTTC_{ k }(i) routine would eliminate the link (n_{ i },n_{ j }) if node n_{ i } were already kconnected to node n_{ j }. Similarly FTTC_{ k }(j) will retain the link (n_{ j },n_{ i }). Consequently, the link between node n_{ i } and node n_{ j } is bidirectional. □
Bidirectional connectivity is a very important property for a wireless network, since it is essential for linklevel acknowledgment, which is necessary for the reliable transmission of packets over unreliable media. Bidirectionality is also fundamental to floor acquisition mechanisms in the MAC layer, such as the RTS/CTS mechanism in IEEE 802.11. The disadvantages of unidirectional connectivity are well described by Marina and Das [22].
4.4 Design considerations
4.4.1 Frequency of invocation of LMST
Any method of topology control used in WSNs should be able to accommodate the addition, removal, and movement of nodes. The addition or removal of a node is sure to change the connectivity of a network, and moving a node is also likely to do so. To cope with these changes, our scheme periodically invokes LMST, as shown in Figure 3. The period between invocations (L in Figure 3) should be carefully determined based on the frequency of changes to the configuration of nodes, the pattern of node failure, and the speed at which node are likely to move. These factors depend on the application, the type of nodes in use, and the environmental conditions; thus, it is better to rely on historical data.
4.4.2 Frequency of invocation of SolarTC_{ k }
The interval between runs of SolarTC_{ k }(i), labeled l in Figure 3, also needs to be chosen carefully: once SolarTC_{ k }(i) has determined the mode of a node, that node keeps operating in the same mode until the next run of SolarTC_{ k }(i). Suppose that node n_{ i } is an FTnode (m_{ i } = 0) at the start of a period of l and that E_{residual}(i) drops below E_{threshold}(i) before the end of that period, so that m_{ i } becomes 0 and the node becomes an ESnode. Even so, node n_{ i } should keep operating as an FTnode until the end of the period, so as to avoid damaging the existing topology before the next run of SolarTC_{ k }(i) constructs a new topology. Therefore, the value of l directly affects system performance.
Reducing the value of l helps SolarTC_{ k }(i) to reflect recent changes in the status of the nodes in a new topology, but it also incurs a very significant overhead. A larger value of l reduces this overhead but may prevent nodes from operating stably. For instance, an FTnode which needs the criteria to become an ESnode shortly after the start of a period may experience a blackout if it is forced to operate as an FTnode for too long. The optimal value of l depends on the characteristics of the nodes, the applications, and environmental conditions. The only feasible way of choosing l is by experiment.
4.4.3 Preventing repeated changes of mode
5 Effects of SolarTC_{ k }on the routing protocol
We will now provide some examples showing how SolarTC_{ k } can support fault tolerant and energyaware routing. We use the energyaware geographic routing (EGR) scheme [23], in which a node routes data to the most energyrich of its neighbor nodes, in the direction of the sink node if possible. In order to use this scheme with SolarTC_{ k }, we require each node to check its FTneighbors before invoking EGR. The node then proceeds as follows:

If there are FTneighbors, the node applies EGR to those nodes alone.

Otherwise, the node applies EGR to all its neighbors.
This modified routing scheme can be applied to each example in Figure 4. In Figure 4a, each node applies EGR to all its neighbors, since there are no FTnodes. Data from node v_{6}, for example, might be routed to the sink along the path (v_{6},v_{5},v_{4},v_{3},v_{2},v_{1}, sink), while data from v_{9} might take the route (v_{9},v_{3},v_{2},v_{1}, sink). These paths impose a heavy load on nodes v_{1} and v_{2}, and are likely to bring about an energy imbalance. Moreover, if nodes v_{1} or v_{2} fail, the whole WSN becomes useless.
The network shown in Figure 4b has more energy, and SolarTC_{2} makes nodes v_{2},v_{4},v_{7}, and v_{10} FTnodes, and uses them to construct a backbone with 2connectivity. In the modified scheme, node v_{9} runs EGR and finds that nodes v_{7} and v_{10} are its FTneighbors. EGR will choose the most suitable of these FTneighbors to receive data and probably selects node v_{10}, since it is closer to the sink node. In that case, data that has arrived at v_{10}, which is an FTnode, will be routed over the backbone to the sink, along the path (v_{9},v_{10},v_{2}, sink). Similarly, node v_{6} can be expected to send its data long the path (v_{6},v_{7},v_{4}, sink).
In Figure 4c, nodes v_{2},v_{4},v_{8}, and v_{10} are FTnodes. But SolarTC_{2} cannot create a 2connected network from these FTnodes since they are not 2connected, even using maximum power, because node v_{4} cannot contact node v_{8}. So SolarTC_{2} creates as many paths as possible among the FTnodes. In this example, EGR running on node v_{9} would send data to node v_{10} instead of node v_{3}, since node v_{10} is a FTneighbor. Even though node v_{10} is not 2connected to the sink, it has more energy than v_{3}, and its connectivity gives it more faulttolerance. Node v_{10} routes the data to the sink over the backbone along the path (v_{9},v_{10},v_{2}, sink).
Lastly, there may be an isolated FTnode, like v_{7} in Figure 4d. In this case, SolarTC_{2} keeps the transmission power at v_{7} as small as possible. This minimum power is${p}_{i}^{\text{FTN}}\left(0\right)$, which is the same as${p}_{i}^{\text{LMST}}$. This does not affect the performance since v_{7} cannot reach any other FTnodes, even if it were to use its maximum transmission power${p}_{i}^{\text{max}}$. EGR will then make node v_{6} route data to node v_{7} instead of node v_{5}, since node v_{7} is an FTneighbor. But node v_{7} has no FTneighbors, and so it applies EGR to all its neighbors, and the resulting path is (v_{7},v_{9},v_{3},v_{2}, sink). Although node v_{7} is not connected to the backbone network and therefore cannot provide any faulttolerance, it is beneficial for its neighbors to route data through node v_{7} since it has enough energy to accommodate a high workload.
6 Performance evaluation
We have set up outdoor testbed for solarpowered sensor networks, as described in our previous publications [19],[24]. Unfortunately, however, the Ethernet cards used in the testbed cannot support any change of transmission power which is an essential function for our scheme. Moreover, there are too few nodes in the testbed to evaluate the performance of fault tolerance. Inevitably, therefore, we designed an NS2 simulation for the performance verification.
6.1 Simulation
6.1.1 Energy model
Energy model parameters
Parameter  Value 

Battery capacity  98 Ah 
Battery output voltage  12 V 
Energy harvested in 1 day  22.1 to 38.8 Ah (avg. 28.2 Ah) 
α and β in Equation (6)  2 and 100 
6.1.2 Traffic model
The simulation of SolarTC was tested on an application that runs on our outdoor testbed, so collect birdsong for studies of bird populations. We captured a pattern of traffic from the outdoor testbed to use in the simulation. We chose to explore a scenario in which nodes have different sensing rates, with ratios of 1:2:4 between them. This reflects real applications in which more interesting events usually occur at some locations than others. For example, in our application, sensors located near nests obtain more data than others. Each node in the simulation was randomly assigned one of the three sensing rates and creates traffic at that rate, unless that node is in sleep mode.
6.1.3 Simulated WSN
Experimental parameters used in the simulation
Parameter  Value 

${r}_{i}^{\text{max}}$  200 m 
θ_{sys} and θ_{solar} in Equation (4)  Both 0.5 
Period (l) of SolarTC_{ k } in Figure 3  30 min 
Period (L) of LMST in Figure 3  1 day 
Energy window ψ in Section 4.4.3  5 Ah 
Level of faulttolerance (k)  1, 2, and 4 
Routing protocol  Modified EGR scheme 
MAC protocol  802.11 
Terrain  800 m × 800 m 
Number of nodes  50 to 500 by 50 
Number of sink  1 
Node placement policy  Random 
Performance parameters of the simulation
Performance  Performance parameter 

Degree of faulttolerance  Average number of FTnodes for different value of k 
Probability of kFTN connectivity for different value of k  
Energy efficiency  Average transmission range of the nodes 
Average proportion of blackout time  
Average throughput of the network 
6.2 Simulation results
FLSS [10] is an efficient algorithm for establishing an ad hoc network with kconnectivity. Since SolarTC only provides kFTN connectivity, FLSS constructs a more robust network than SolarTC, for the same value of k. Therefore, it may not be fair simply to compare FLSS and SolarTC. But there is no topology control scheme more like SolarTC, as far as we know, so we compare the performance of FLSS with that of SolarTC, as a marginal reference.
We can make one more interesting observation from Figure 8b. Generally, the transmission range of each node decreases when there are more nodes, since the density of nodes is higher. In Figure 8b, however, the FTnodes show an opposite trend, until the number of nodes reaches 250. We suggest that this is related to the probability of 4FTN connectivity, shown in Figure 7. Since the network is unlikely to achieve 4FTN connectivity with few nodes, SolarTC_{4} increases the range of each node to get as close to 4FTN connectivity as possible.
7 Conclusions
It is not easy to make good use of solar energy in a WSN, because its availability depends on the time, season, and weather. We propose a simple solar energy model that requires no forecasting but nevertheless helps individual nodes to make the best use of energy and hence network performance improves, in particular faulttolerance.
Based on this energy model, we designed a localized scheme for adaptive topology control which maintains kconnectivity from all the energyrich nodes in the network to a sink whenever possible; otherwise, it tries to keep as many paths as possible between these energyrich nodes, so as to support energyefficient routing. This scheme also increase network stability by reducing the unscheduled blackout time of solarpowered sensor nodes.
Declarations
Acknowledgements
This research was supported partly by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (20110012996), partly by Industrial Strategic Technology Development Program funded by the Ministry of Knowledge Economy (MKE, Korea)(10039239).
Authors’ Affiliations
References
 Stojmenovic I: Handbook of Sensor Networks. Hoboken, NJ: WileyInterscience; 2005.View ArticleGoogle Scholar
 Santi P: Topology control in wireless ad hoc and sensor networks. ACM Comput. Surv 2005, 37(2):164194. 10.1145/1089733.1089736View ArticleGoogle Scholar
 Santi P: The critical transmitting range for connectivity in mobile ad hoc networks. IEEE Trans. Mobile Comput 2005, 4(3):310317.View ArticleGoogle Scholar
 Xue F, Kumar P: The number of neighbors needed for connectivity of wireless networks. Wireless Netw 2004, 10(2):169181.View ArticleGoogle Scholar
 Li N, Hou J, Sha L: Design and analysis of an MSTbased topology control algorithm. In Infocom. San Francisco, CA: IEEE; 30 March–03 April 2003.Google Scholar
 Bahramgiri M, Hajiaghayi M, Mirrokni V: Faulttolerant and 3dimensional distributed topology control algorithms in wireless multihop networks. In ICCCN. Miami FL: IEEE; 14–16 October 2002.Google Scholar
 Hajiaghayi M, Immorlica N, Mirrokni VS: Power optimization in faulttolerant topology control algorithms for wireless multihop networks. In MobiCom. San Diego, CA: ACM; 14–19 September 2003.Google Scholar
 Jia X, Kim D, Wan D, Yi C: Power assignment for kconnectivity in wireless ad hoc networks. In Infocom. Miami, FL: IEEE; 13–17 March 2005.Google Scholar
 Calinescu G, Wan PJ: Range assignment for high connectivity in wireless ad hoc networks. In AdHocNOW. Montreal: Springer; 08–10 October 2003.Google Scholar
 Li N, Hou JC: FLSS: a faulttolerant topology control algorithm for wireless networks. In MobiCom. Philadelphia, PA: ACM; 26 September–01 October 2004.Google Scholar
 Ramanathan R, RosalesHain R: Topology control of multihop wireless networks using transmit power adjustment. In Infocom. Tel Aviv: IEEE; 26–30 March 2000.Google Scholar
 Cardei M, Yang S, Wu J: Faulttolerant topology control for heterogeneous wireless sensor networks. In MASS. Pisa: IEEE; 8–11 October 2007.Google Scholar
 Corke P, Valencia P, Sikka P, Wark T, Overs L: Longduration solarpowered wireless sensor networks. In EmNets. Cork: ACM; 25–26 June 2007.Google Scholar
 Minami M, Morito T, Morikawa H, Aoyama T: Solar Biscuit: A batteryless wireless sensor network system for environmental monitoring applications. In INSS. San Diego, CA: IEEE; 27–28 June 2005.Google Scholar
 Simjee F, Chou PH: Everlast: long life, supercapacitor operated wireless sensor node. In ISLPED. Tegernsee: ACM; 04–06 October 2006.Google Scholar
 Taneja J, Jeong J, Culler D: Design, modeling and capacity planning for microsolar power sensor networks. In IPSN. St Louis: ACM; 22–24 April 2008.Google Scholar
 Noh D, Lee D, Shin H: QoSaware geographic routing for solarpowered wireless sensor networks. IEICE Trans Commun. 2007, E90B(12):33733382. 10.1093/ietcom/e90b.12.3373View ArticleGoogle Scholar
 Noh D, Yoon I, Shin H: Lowlatency geographic routing for asynchronous energyharvesting wsns. Int. J. Netw 2008, 3(1):7885.Google Scholar
 Yang Y, Wang L, Noh DK, Le HK, Abdelzaher T: Solar Store: enhancing data reliability in solarpowered storagecentric sensor networks. In MobiSys. Kraków: ACM; 22–25 June 2009.Google Scholar
 Kansal A, Hsu J, Zahedi S, Srivastava MB: Power management in energy harvesting sensor networks. ACM Trans. Embedded Comput Syst 2007, 6(4):138.View ArticleGoogle Scholar
 Penrose M: On kconnectivity for a geometric random graph. Random Struct. Algorithms 1999, 15(2):145164. 10.1002/(SICI)10982418(199909)15:2<145::AIDRSA2>3.0.CO;2GMATHMathSciNetView ArticleGoogle Scholar
 Marina M, Das S: Routing performance in the presence of unidirectional links in multiphop wireless networks. In Mobihoc. Lausanne: ACM; 09–11 June 2002.Google Scholar
 Lim T, Mohan G: Energy aware geographical routing and topology control to improve network lifetime in wireless sensor networks. In Broadnets. Boston, MA: IEEE; 03–07 October 2005.Google Scholar
 Wang L, Yang Y, Noh DK, Le HK, Abdelzaher T: AdaptSens: an adaptive data collection and storage service for solarpowered sensor networks. In RTSS. Washington, DC: IEEE; 01–04 December 2009.Google Scholar
 Melodia T, Pompili D, Akyildiz I: Optimal local topology knowledge for energy efficient geographical routing in sensor networks. In Infocom. Hong Kong: IEEE; 07–11 March 2004.Google Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.