Routing in Duty-Cycled Surveillance Sensor Networks

In many surveillance sensor networks, sensors are scheduled to work in a duty-cycled mode (i.e., periodically switching between active states and sleeping states) in order to prolong the network lifetime. The duty-cycled mode saves sensors' energy but brings other issues. In surveillance applications (e.g., forest fire alarm or intruder detection), it is desired to report detected events to the sink node as soon as possible. However, the duty-cycled mode may increase the data delivery latency. In this paper, we study minimum-delay routing in duty-cycled surveillance sensor networks. As the minimum-delay routes are time dependent (i.e., they change with time) in duty-cycled sensor networks, routing becomes a challenging task. We propose a distributed routing algorithm to find the minimum-delay routes at any time from all nodes to the sink node. Further, all minimum-delay routes can be found in one execution of our routing algorithm. We further provide a distributed route maintenance algorithm for finding the minimum-delay routes when the network dynamically changes. We theoretically prove the correctness of the proposed algorithm, and extensive simulation results show that the performance of our algorithm outperforms other existing algorithms.


Introduction
Wireless sensor networks (WSNs) have been used in many surveillance applications such as traffic monitoring, forest fire detection, and target tracking.Typically, in surveillance system, sensors (or nodes) detect events and then report the events to the base station (or the sink node).To build longterm operating surveillance systems, sensors are expected to work for months or even years, but they only have limited battery energy.For example, the battery of a sensor can only last for a few days if running continuously.One viable technique is to schedule sensors switching between active mode and sleeping mode, while active sensors perform surveillance tasks.Energy-efficient scheduling algorithms [1][2][3][4][5][6][7] are proposed in the literature to prolong network lifetime, as well as to guarantee event detection.In these algorithms, sensors are scheduled to be active for a period of time and then to sleep for another period of time, which forms a duty-cycled WSN.
As pointed out by [8], the effectiveness of a surveillance system lies in two aspects: accurately detecting events and timely reporting the events.The second aspect is highly related to routing problem.Routing in WSNs has been extensively studied and many routing algorithms or protocols are proposed.The research on routing evolves from early flooding-based protocols to location-based routing protocols (with the help of localization methods [9,10]) and to stateof-the-art gradient-based routing protocols [11].Collection tree protocol (CTP) [12] and routing protocol for low-power and lossy networks (RPL) [13] are two well-known gradientbased routing protocols.CTP uses expected transmissions (ETX) as the gradient that indicates the expected number of transmissions needed for the packet to reach the sink node.Therefore, the major objective of CTP is to reduce energy consumption.RPL provides a framework in which multiple gradient metrics (e.g., energy and latency) can be combined to meet different application requirements.However, RPL does not provide solution for minimizing the packet delivery latency for the duty-cycled sensor networks.
In this paper, we focus on minimum-delay routing in duty-cycled surveillance sensor networks.In many surveillance applications (e.g., forest fire alarm or intruder detection), it is desired to report detected events to the sink node as soon as possible.Recently, several routing algorithms [14][15][16][17] have been proposed in the literature to minimize the packet delivery latency.The work in [15] studies minimum-delay routing problem for the network where each node works in low-duty-cycled and asynchronous modes; that is, each node works only one slot in a cycle, and it can independently select its working slots and cycle length.This network model, however, is not suited for surveillance systems as sensors have to cooperate to fulfil the surveillance tasks, and thus, they should work according to some scheduling algorithms.The most related work to ours is [16], which aims to find minimum-delay routes for a pair of nodes in a sensor-target surveillance system.The proposed algorithm, called optimal-PML, starts route discovery procedure by flooding route requests in the whole network.Although this method is valid in highly dynamic networks, it suffers from huge message cost as well as time cost (see Section 7).
The duty-cycled mode saves sensors' energy and prolongs network lifetime but also brings other issues.First, the dutycycled mode may increase the data delivery latency because a node may have to wait for its next-hop node to wake up and receive its packets.Second, both the packet delivery latency and the next-hop node vary with time; that is, they are time dependent.We give a simple example to illustrate these facts.
Figure 1(a) shows the topology of a simple WSN, and Figure 1(b) gives the active or working period of each sensor determined by a given scheduling algorithm.The network lifetime is divided into cycles, and each cycle consists of 10 slots.Suppose that node  detects an event and wants to send a packet to sink node at the starting time of slot 8.It can send the packet to node  at slot 8 since node  is working at that time, and then, node  can forward the packet to node  at slot 9. Finally, the packet is sent to the sink node by node  at slot 10.The packet delivery latency is 3 slots as each transmission costs one slot.Now, consider that node  fails to transmit the packet at slot 8 and retransmits it at slot 9.At that time, node  goes to sleep and it will wake up at slot 5 in the next cycle, which means that node  has to wait 6 slots.Assume that node  wakes up and sends the packet to node  at slot 5 in the next cycle.When node  receives the packet, it also has to wait one slot (i.e., at slot 6), and then, sends the packet to node  at slot 7. The sink node will receive the packet from node  at slot 8, and the packet delivery latency is 10 slots.Figure 2 shows the minimum delay vectors from each node to the sink.It can be seen that the minimum packet delivery latency varies with time, and finding the minimum-delay routes for all nodes at any time becomes a challenging task in duty-cycled WSNs.
In this paper, we propose a distributed routing algorithm to find the minimum-delay routes at any time from all nodes to the sink node.Similar to the well-known Bellman-Ford algorithm, each node updates its routing table according to the routing information of its neighbors, and the routing table eventually converges to the optimal values including the minimum delay and corresponding next hop at any time.In addition, route discovery procedure is implemented in asynchronous mode, and all minimum-delay routes can be found in one execution of our routing algorithm.We further provide a distributed route maintenance algorithm for finding the minimum-delay routes when the network dynamically changes.We theoretically prove the correctness of the proposed algorithm and show that the execution of our algorithm will terminate in finite time, and at the end of execution, all routing tables converge to the optimal values.Extensive simulation results show that the performance of our algorithm outperforms other existing algorithms.
It is worth noting that in other research fields such as robotics fields, routing problem is also studied in [18], and in automatic control field, some problems other than routing are studied in [19,20] when the network changes dynamically.
The rest of the paper is organized as follows.In the next section, we discuss related work.Section 3 gives the network model and problem formulation.Sections 4 and 5 present our routing algorithm and route maintenance algorithm, respectively.Some problems are discussed in Section 6. Performance evaluation is provided in Section 7, followed by conclusions in Section 8.
In this section, we focus on routing problem and some related research efforts.The work in [14] studies delivering data with a guaranteed communication delay bound, which is important for many surveillance applications.To achieve this goal, methods are devised from the temporal (time) and spatial (space) perspectives.Specifically, the temporal scheme decreases the communication delay by adding more working slots to sensors, and the spatial scheme addresses this issue by adding a minimum number of sinks.Hybrid spatiotemporal scheme is also presented to achieve balance between cost and energy efficiency.In this paper, we are also concerned about delivering data to the sink as soon as possible, but we consider a different problem: given a duty-cycled network which is determined by a surveillance scheduling algorithm, how to find the minimum-delay routes from each node to the sink at any time?
The minimum latency routing problem is studied in [15].It is assumed that sensors work in low power listening (LPL) mode: each sensor periodically wakes up to listen to the wireless channel, checking whether a sensor wants to send packets to it.Further, the checking intervals of nodes can be different.A distributed routing algorithm is proposed to find the minimum latency routes from all nodes to the sink node.Note that LPL mode may not be suitable for surveillance sensor networks because it does not take surveillance task into account.Moreover, in [15], minimum latency routes from a node to the sink are found only for the time points when it wakes up.In other words, the minimum-delay route is undetermined if a node wants to send a packet at a time between two consecutive wake-up time points (e.g., retransmitting a packet or having more packets to be sent in the buffer).Since the checking interval may be long (e.g., 500 ms or 1000 ms), the packet delivery latency may increase a lot because the minimum latency route is time dependent.

International Journal of Distributed Sensor Networks
The work in [16] investigates routing in intermittently connected sensor networks.It is assumed that each sensor has a working period and a sleeping period in a cycle according to application-driven scheduling schemes (e.g., target coverage scheduling).We adopt the same network model used in [16].To find a minimum latency route from the source to the destination for a given time, a route request (RREQ) is sent by the source, and the nodes who receive the RREQ forward the RREQ to its neighbors.The first RREQ arriving at the destination will be acknowledged by the destination, and the path the RREQ goes through will be taken as the minimum latency route.Based on this route discovery process, two proactive algorithms are proposed, where one attempts to minimize the call number of route discovery process, and the other tries to reduce the time cost for finding minimum latency route.It can be seen that the route discovery process is like a flooding in the network.Moreover, the minimum latency routes found by it is only optimal for a specific time point.Since the minimum latency route from the source to the destination is time dependent, the route discovery process has to be invoked multiple times.Unlike [16], we target at developing a distributed routing algorithm to find the minimum-delay routes at any time from all nodes to the sink node.Further, all minimum-delay routes can be found in one execution of our routing algorithm.

Network Model and Problem Formulation
Consider a WSN whose topology is denoted by  = (, ), with  being the set of nodes and  = {(, ) | (, ) ≤ } being the set of wireless links, where (, ) is the Euclidean distance between node  and node , and  is the transmission radius of a node.
Assume that the network lifetime is divided into cycles and each cycle is further divided into several time slots.A given surveillance scheduling algorithm switches sensors between active and sleeping states.At any time slot, when a sensor node is in active mode, it can perform the surveillance tasks and communicate with other nodes.When a sensor node is in sleeping mode, it turns off its sensing device and radio transceiver.Here, we do not consider the case that the power of sensing device and radio transceiver can be separately controlled because sensors are usually tiny, cheap, and integrated devices.This assumption is also adopted in [1,3,5,16,17].
To simplify discussion, we assume that each cycle consists of  slots and each node  has one working period in each cycle, denoted by [  ,   ].Note that this assumption is not mandatory because our routing algorithm is applicable for the case that each node has multiple working periods in a cycle.
A node can receive packets at its working slots, while it can either send packets at its working slots, or wake up at its sleeping slots to send packets.The latter assumption ensures that a node can transmit its packets to its neighbors since they may work at its sleeping periods.The sink is assumed to be in receiving state all the time.These assumptions are the same as those in [16,22].
Assume that a packet is sent only at the starting time of a slot, and receiving and acknowledging of the packet can be complemented in the slot.The link delays in duty-cycled WSN are time dependent.Suppose that node  wants to send a packet which is available at slot  to node .There are two cases: (1) node  works at slot ; (2) node  does not work at slot .For the first case, node  can transmit the packet without waiting, and the link delay is the transmission delay that is one slot.For the second case, node  has to wait for node  to wake up, say at slot   , and the difference between these two slots (i.e.,   − ) is referred to as waiting delay, denoted by   ().Besides waiting delay, there is one slot transmission delay, and thus, the link delay is (  −  + 1) slots.In summary, the link delay is the sum of waiting delay and transmission delay.
Having link delays, we can calculate the node-to-sink delays as follows.Suppose that node  sends a packet at slot  along the route (or path)  →  →  → ⋅ ⋅ ⋅ → , where  denotes the sink node.The link delay from node  to node  is   () + 1.In other words, node  can forward the packet at slot   =  +   () + 1.Similarly, the link delay from node  to node  is   (  )+1, and node  can forward the packet at slot   =   +   (  ) + 1, and so on.Then, the delay from node  to sink  at slot  is defined to be the sum of all link delays along the route.It can be seen that the node-to-sink delays are time dependent because the link delays are time dependent.
Since there may be several routes with the same delay, to simplify discussion, the minimum delay route for node  at slot  is defined to be: (1) the route which has the minimal delay among all routes from node  to sink ; or (2) the route which has the minimal number of hops among the routes satisfying condition (1); or (3) the route whose sequence is the smallest in lexicographical order among the routes satisfying the above two conditions.

Routing in Duty-Cycled Networks
In this section, we present our distributed routing algorithm and prove its correctness.

Algorithm Description.
To simplify discussion, we assume that each node  maintains a routing table that consists of two parts: where   [] denotes the minimum delay to the sink if node  sends a packet at slot  in a cycles, and ℎ  [] denotes the next hop when sending a packet at slot .
Suppose that node  is a neighbor of node , denoted by  ∈   , where   denotes the set of neighbors of node .If node  tries to send a packet at slot  to the sink through node , it has to wait   () slots.If node  works at slot ,   () = 0; otherwise,   () > 0.Besides waiting delay, it takes one slot for node  to transmit the packet to node .Therefore, the earliest time for node  to forward the packet is at slot ( +   () + 1), and the minimum delay from node  to the sink is   [( +   () + 1) mod ], where mod denotes modulo operation (e.g.,  mod  equals the remainder of division of  by ).Here, the modulo operation is used to compute the minimum delay because each node repeats its working periods from one cycle to another cycle, and thus, the minimum delay to the sink must be periodic (i.e., for

Source Destination Seq
Entry num Payload each  and any where  is a positive integer).Then, we have where Based on (1), we design a minimum-delay routing algorithm (MDR) for duty-cycled WSNs.Similar to well-known Bellman-Ford algorithm, each node updates its routing table according to the routing information of neighbors, and it eventually converges to the optimal values including the minimum delay and corresponding next hop for each slot  in a cycle.In MDR, nodes exchange routing information by sending route message (RMSG).This procedure is implemented in asynchronous mode: once a node changes its routing table, it will inform all its neighbors of the new delays to the sink, and its neighbors update their routing tables accordingly.The routing algorithm will end up execution when there are no updates.The sketch of MDR is as follows.
Step 2. Sink  sends a RMSG to each neighbor.
Step 3.For each node  except sink  (a) upon receiving a RMSG from its neighbor node , it updates its routing table ; (b) if there is routing update, sends a RMSG to each neighbor; otherwise, it ignores the received RMSG from node .
Step 4. MDR finishes when there are no RMSGs.
The route message (RMSG) is illustrated in Figure 3(a) and contains the following fields.
(i) Source: the ID of the sender.
(ii) Destination: the ID of the receiver.
(iii) Seq: the sequence number of this RMSG.
(iv) Entry Num: the number of route entries in the payload of the RMSG.
(v) Payload: contains variable number of time interval route entires (the format of which is shown in Figure 3(b) and will be explained later).
The RMSG sent by node  contains source and destination IDs and a sequence number which is incremented by one with each transmitted RMSG.The minimum delay known so far is contained in the payload of RMSG.Instead of sending the whole delay vector   [1 ⋅ ⋅ ⋅ ], we only need to send delays associated with the working periods of node  because node  can receive packets from its neighbors only at its working slots.This reduces the length of RMSG especially when  is large and the duty cycle is low.
We further divide the working period of each node into two kinds of time intervals based on the following analysis.For node , comparing   [] and   [ + 1] will result in three cases: (1) The first case says that a packet sent by node  at slot  + 1 has the same delay as that sent at slot .In other words, the packet sent by node  at slot +1 will arrive at the sink one slot later than the packet sent at slot .For instance, in Figure 2(a), the minimum delays from node  to the sink at slot 6 and slot 7 are both 4 slots following the route  →  →  →  → .It can be seen that there is no waiting delay at each hop.
The second case says that the minimum delay of a packet will decrease by one slot from slot  to  + 1, which means that the earliest arrival time for the packet sent at slot  or slot  + 1 is the same.The second case happens when there are waiting delays at one or more hops of a route.For example, in Figure 2(b), the minimum delay from node  to the sink decreases by one from slot 1 to slot 6 following the route  →  →  → , and the earliest arrival time for a packet sent during the time interval [1,6] is slot 8.In particular, in Figure 1, the packet sent by node  during [1,4] has a waiting delay at  →  while the packet sent during [5,6] has no waiting delay at  →  but has waiting delay at  → .It can be seen that all the packets sent during [1,6] want to arrive at node  at slot 7, and therefore, their arriving time at the sink is the same.
The transition from the first case to the second case may incur a sudden delay change, which is indicated by the third case.We still take node  in Figure 2(b) as an example.The minimum delay from node  to the sink at slot 8 is 3, while it suddenly changes to 10 at slot 9.
Based on the above analysis, we define two types of time intervals, that is, Type 0 and Type 1.A time interval [ 1 ,  2 ] of Type 0 for node  means that the minimum delays of the packet sent at a slot from  1 to  2 are the same (i.e., corresponding to the first case), while the time interval in Figure 3(b).A route entry of interval [ 1 ,  2 ] records the start slot ( 1 ), end slot ( 2 ), and the type (Type 0 or Type 1).In addition, the route entry contains two delay values Delay 1 and Delay 2, where Delay 1 denotes the delay if the packet is sent at the start slot  1 , and Delay 2 denotes the delay if the packet is sent at the slot  2 + 1. Delay 2 is necessary for a neighbor of node , say node , to compute the delay if the packet is sent to node  at the last slot (i.e.,  2 ) of the route entry (which equals   [( 2 + 1) mod ] + 1).The details of adding time interval route entries to a RMSG are shown in Procedure 1.

Proposition 1. In a duty-cycled WSN with the cycle length of
Suppose that the topology of a wireless sensor network  = (, ) is connected and the RMSGs sent by a node can be correctly received by its neighbors in finite time.Then, we have the following Theorem.Theorem 2. Suppose that time is divided into cycles with the length of  slots and each node has fixed working periods in all cycles.Further, assume that the transmitted packet can be correctly received by the receiver in finite time, and there is no topological change during the execution of MDR algorithm.Then, the execution of MDR algorithm will terminate in finite time.At the end of execution, each node obtains the minimum delay to the sink and corresponding next hop for a packet which is ready to be sent at each slot of a cycle.
Proof.Consider any node  at slot ,  ∈ [1 ⋅ ⋅ ⋅ ].Let  =  →  →  → ⋅ ⋅ ⋅  → V →  be the minimum-delay route from node  to the sink  at slot , and the time sequence when the packet is available to be sent is (  ,   ,   , . . .,   ,  V ), and   = .Then, path  must be a simple path which means that it does not contain any cycle; otherwise, we can find a route which has less delay than the route  by removing the cycle as all link delays are positive (at least one slot for transmission).Further, the route  has optimal substructure; that is, the subpath from any intermediate node, say node , to sink  is the minimum-delay route for node  at time   , which can be easily proved by contradiction.Suppose, the subpath from node  to sink  (i.e.,  → ⋅ ⋅ ⋅  → V → ) at time   is not a minimum-delay route.Then, we can replace the subpath in route  with the minimum-delay route from node  to sink  at time   , and obtain a route which has less delay than , which contradicts with the assumption that  is the minimum-delay route.
Next we show nodes in route  sequentially achieve their minimum latency in backward direction.Denote  *  [] the minimum packet delivery latency for node  at time , and denote   [] the delay computed by MDR.Recall that we start routing algorithm from sink .Since node V is one hop from sink , its minimum delay for any time  in a cycle is one.Therefore, when node V receives RMSG from sink , it updates its routing table, and it follows that  V [ V ] =  V [ V mod ] = 1 according to Proposition 1 (a).Moreover, since the packet is ready to be sent right after it has been received, therefore slot ( V − 1) must be a working slot of node V.After updating routing table, node V sends to each neighbor a RMSG which contains the information of  V [ V mod ].When node  receives this RMSG, it will calculate the packet delivery latency at   .Note that the link delay from node  to node V at time   is fixed, which consists of waiting delay  V (  ) =  V −   − 1 and one transmission delay.So, we have According to optimal substructure property, it follows that International Journal of Distributed Sensor Networks updates its routing table and sends to its neighbors a RMSG which carries the information of  *  [  mod ].Recall that route  is a simple path which means it has at most || − 1 hops in  = (, ).Then, after no more than || updates backward along the route ,   [] will eventually converge to  *  [𝑡].Further, it will not decrease any more in the later updating processes as there is no negative cycle in the network.In summary, each node will obtain  *  [] for any  ∈ [1 ⋅ ⋅ ⋅ ] in finite time.

Route Maintenance in Duty-Cycled Networks
The routes determined by MDR may not be optimal if the network dynamically changes (e.g., a node is added to the network, a node changes its working periods, or a node fails).
Recomputing the minimum-delay routes is not a trivial task because (1) when a topological change happens, say a node failure, it is hard to know which nodes will be affected by this event as each node only has its next-hop information in its routing table ; (2) even if node  tells node  that it has been affected by the event and node  is a next hop node of node  for some time slots, node  cannot make sure that it is also affected since the routes are time dependent; and (3) moreover, even if all minimum-delay routes of node  must go through node  who has been affected by the event, it is still possible that not all routes at all time slots will be affected.For example, in Figure 1, suppose that node  fails, which affects node  since node  is its next hop (e.g., the minimum delay at slot 1 from node  to the sink will be 8 slots instead of 4 slots).Now, suppose that node  informs node  that it has been affected by the failure of node .Node  finds that node  is the next hop for all time slots, thereby jumping to a conclusion that all routes are invalid.In fact, node  is not affected by the failure of node  at all.This is because all minimum-delay routes from node  to sink go through node  and then node  to the sink.
All the above issues are features of route maintenance in duty-cycled WSNs, which are different from traditional route maintenance.Moreover, like routing information protocol (RIP), MDR is a distributed distance-vector algorithm, and it also suffers from the well-known problems of counting-toinfinity and routing-table loops in route maintenance.The work in [25] studies this problem and provides four sufficient conditions for designing loop-free routing algorithms.Although the methods proposed in [25] cannot be directly applied to solve our problem, we are inspired by one of the four sufficient conditions, that is, distance increase condition (DIC), whereby designing MDR maintenance algorithm.DIC says if a node detects an increase in the distance of a neighbor, then it must maintain its current next hop.Otherwise, it can update its distance value and the next hop.
Note that different types of topological changes have different impacts on the delays.For example, when a node joins the network, then the minimum delays from nodes to sink can further decrease as the added node provides more options for routing.However, when a node fails, the minimum delays from nodes to sink may increase or remain unchanged.A more complex case is when a node changes its working periods.For this case, the minimum delays from nodes to sink may increase, decrease, or remain unchanged.So, the route maintenance algorithm should be able to handle all these cases.
We design a unified framework for route maintenance to handle all above cases.MDR maintenance algorithm consists of three phases and uses four maintenance messages, that is, INFORM, QUERY, REPLY, and UPDATE.These four maintenance messages have the same format with RMSG, as shown in Figure 3.The goal of the first phase is to identify all route entries that are affected by the topological change.After the first phase, the nodes who are affected by the topological change send queries to thier neighbors to obtain their routing tables.When a node receives all neighbors' routing tables, it updates its routing table and goes into the third phase.The last phase is similar to MDR procedure: if there are routing updates, send an update message to each neighbor; otherwise, ignore the received update message.Note that for the case of a node insertion, MDR maintenance algorithm goes directly to the last phase (according to DIC) since delays cannot increase, while the maintenance for other cases (e.g., a link failure, change of working period of a node, and a node failure) includes three phases.
Procedure 3 gives the main operations of MDR maintenance algorithm.We take a node failure as an example to describe the process.Suppose that node  fails, which is detected by its neighbor, node .Node  checks if there are route entries which use node  as next hop.If there are some, node  sets the delays of these entries to infinity and sends an INFORM that carries the information of its current routing A node, say node , who is affected by the failure of node  goes into the second phase when finishing the first phase.Node  sends a QUERY to each neighbor, and its neighbor responds with a REPLY.After receiving all REPLYs from its neighbors, node  updates its routing table based on the received routing information.If there exist route updates (i.e., delay decrease for some time slots), node  goes into the third phase and sends an UPDATE to each neighbor.
It can be seen that, in the first phase, the delay of a node at any slot is not allowed to decrease, and all affected routes will be identified, and their corresponding delay values are set to infinity.The rationale of MDR maintenance algorithm is to first increase the delays of the routes at any time slot, which satisfies DIC condition, and then, nodes start the converge process (i.e., decreasing delays), similar to that of MDR.

Discussion
(1) In our network model, we assume that sensors' states (active or sleeping) are predefined by a given surveillance scheduling algorithm.In fact, jointly designing scheduling and routing algorithms is a better way to guarantee the effectiveness of a surveillance sensor network.
(2) In a surveillance sensor network, sensors collaborate with each other to fulfill the surveillance tasks, which requires time synchronization among nodes.Furthermore, time synchronization is also needed to implement slotted transmissions.Fortunately, time synchronization protocols such as FTSP [26] can provide sufficient accuracy without much communication overhead.
(3) Our routing algorithm is capable of finding minimum latency routes for all nodes at any time, but it cannot guarantee that the packet can be successfully transmitted along the minimum latency route because the wireless communication link is unreliable.Nevertheless, the minimum-delay routing tables will help a node make a decision about the time of retransmission.For example, if the minimum delays to the sink do not change or change smoothly in some period of time, the node can select a neighbor and/or a time slot when the estimated link quality is acceptable.In contrast, if the minimum delay will increase suddenly, the node may take a risk and transmit the packet even if the estimated link quality is low.
(4) There is a tradeoff between routing optimality and maintenance cost in route maintenance.Obviously, it is not energy efficient for a node to start a route maintenance when it finds that the delays of its routes increase by a few slots due to a topological change (e.g., a link failure).For this case, the node can simply forward the packets along suboptimal routes.In real applications, to save energy, nodes perform route maintenance only when there is a big change of the routing tables.

Performance Evaluation
Extensive simulations are carried out over a customized C++ simulator to evaluate the performance of proposed algorithms.We design three sets of simulations.In the first set of simulation, we want to show that optimal-PML algorithm in [16] cannot be directly applied to solve many-to-one routing problem as running it for each node will incur large time cost as well as message cost.Small-scaled WSNs are randomly deployed in a 500 m × 500 m area.The cycle length  = 50, and the duty cycle D is 0.4.Each node randomly selects its working period with the length being  ⋅ D slots.Each statistic is collected in 100 simulation runs.Table 1 gives the time cost and message cost of optimal-PML and MDR for small-scaled networks.It can be seen that the time cost and message cost of MDR are dramatically less than those of optimal-PML.Specifically, the message cost of MDR is less than one percent of that of optimal-PML.The high cost of optimal-PML is mainly because it is a flood-based algorithm.
In the second set of simulation, we select two routing algorithms for comparison: one is shortest path (SP) routing algorithm which represents traditional routing algorithm and the other is fast time-dependent shortest path (FTSP) algorithm proposed in [15] (introduced in Section 2).
We first compare MDR with SP in terms of expected packet delivery latency.We consider a scenario where 500 sensors are randomly deployed in a 1000 m × 1000 m area.To simulate the effect of duty cycle on expected packet International Journal of Distributed Sensor Networks  delivery latency, we set duty cycle D to be 0.4, 0.2, and 0.1, respectively.The cycle length  = 50, and each node randomly selects its working period with the length being  ⋅ D slots.For each generated duty-cycled WSN, we run MDR and SP, respectively.Then, nodes with different hops away from the sink are randomly selected.Assume that a node sends a packet at each slot with identical probability, and the expected minimum latency of a node is calculated by averaging minimum delays for all slots in a cycle.Each statistic is collected in 50 simulation runs.
Figure 4 compares the expected packet delivery latency of MDR and SP.It can be seen that MDR has an obvious advantage over SP as SP does not take the duty cycle into account.When duty cycle D = 0.4, the expected packet delivery latency of MDR is less than one-half of that of SP.Moreover, the latency differences between SP and MDR increase with the number of hops.For instance, when node is more than 14 hops away from the sink node, the expected packet delivery latency of MDR is about one third of that of SP.As the duty cycle decreases (i.e., nodes decrease their working slots), the expected packet delivery latency of MDR and SP increases.Interestingly, it is observed that the latency of MDR for D = 0.2 is almost the same as that of SP for D = 0.4, and the latency of MDR for D = 0.1 is much less than that of SP for D = 0.2.This means, compared with traditional routing algorithms such as SP, MDR achieves a better performance while saving nodes' energy.
We also compare MDR with FTSP algorithm.We modify FTSP algorithm so that it can be applied in our context.FTSP exchanges delay vectors between neighbor nodes, and it runs in rounds which is implemented by a -synchronizer [27].We set D = 0.4, and the node density is the same as that in previous experiment.that of FTSP because MDR adopts an asynchronous mode which accelerates the process of converging to minimum delays, while FTSP updates nodes' minimum delays round by round, and a new round can start only when all nodes have finished the required procedure.Figure 6 shows the number of bytes sent per node, which also reflects the energy consumption in MDR and FTSP.It can be seen that a node in MDR sends much fewer bytes than that of FTSP.This is because MDR attempts to decrease the size of each route message by conveying the information of minimum delays through time interval entries, which makes MDR feasible in real applications as the packet size in WSNs is very small (e.g., the maximum payload length is 29 bytes in TinyOS 2.x).In the last set of simulation, we perform MDR maintenance algorithm for four types of topological changes, that is, a node insertion, change of working period of a node, a link failure, and a node failure.The number of nodes is 500 and D = 0.1.For each type of topological change, say a node failure, we randomly generate 1000 scenarios, and for each scenario, we randomly fail a node and run MDR maintenance algorithm.Figures 7 and 8 show the CDF of the time cost and the message cost of MDR maintenance algorithm, respectively.It can be seen from Figure 7 that quite a few link failures and node failures (over 70% and 30%, resp.) have no impact on the networks, while a node insertion and change of working period of a node often incur route maintenance.Among the four types of topological changes, the expected time cost of route maintenance, from low to high, is for a link failure, a node insertion, a node failure, and change of working period of a node.Generally, the message cost is proportional to the time cost, which is validated by Figure 8.All these simulation results will provide helpful guides for designing duty-cycled surveillance systems.

Conclusions
In this paper, we address the problem of routing in dutycycled surveillance sensor networks.We propose a distributed routing algorithm which can find the minimumdelay routes from all nodes to sink in one execution.Extensive simulation results show that the performance of our algorithm outperforms other existing algorithms.We further provide a distributed route maintenance algorithm for finding the minimum-delay routes when the network dynamically changes.Our future work includes jointly designing scheduling and routing algorithms so as to improve the effectiveness of surveillance sensor networks.

2 InternationalFigure 1 :
Figure 1: An example of a duty-cycled WSN: (a) network topology; (b) working slots of nodes in a cycle.

Figure 2 :
Figure 2: The minimum delays and next hops for the nodes in the duty-cycled network shown in Figure 1.

Figure 3 :
Figure 3: (a) The RMSG format; (b) a time interval route entry format.

Figure 4 :
Figure 4: Comparison between MDR and SP on expected packet delivery latency.
Figure 5 compares the time cost of MDR and FTSP.The time cost of MDR is much less than

Figure 5 :
Figure 5: Comparison between MDR and FTSP on time cost.

Figure 6 :
Figure 6: Comparison between MDR and FTSP on bytes sent per node.

Figure 7 :
Figure 7: CDF of the time cost of MDR maintenance algorithm.

Figure 8 :
Figure 8: CDF of the message cost of MDR maintenance algorithm.
slots, if each node, say , has fixed one or more working periods in all cycles, then it follows that (a) the minimum delay for the packet sent by node  at slot  is a periodic function with ; that is,   [] =   [ + ]; table to each neighbor.Suppose that node  receives the INFORM sent by node , and it also checks whether node  is the next hop in its routing table.If node  is not the next hop for all time slots, node  simply drops the INFORM.Otherwise, node  backs up its routing table and temporarily sets the delays of the entries related to node  to infinity.Node  then calls Procedure 2 to update its routing table.After that, node  compares this routing table with the backup one.If there are some entries whose delays are not infinity in backup routing table but become infinity in newly computed routing table, then node  can be sure that these routing entries are affected by the node failure.

Table 1 :
Comparison between MDR and optimal-PML on time cost and message cost.