360 likes | 510 Views
COMMUNICATING VIA FIREFLIES: GEOGRAPHIC ROUTING ON DUTY-CYCLED SENSORS S. NATH, P. B. GIBBONS IPSN 2007. Model. A sensor network. Time is divided into discrete epochs. At each epoch, each node decides to sleep or wake up according to some decentralized sleep scheduling protocol.
E N D
COMMUNICATING VIA FIREFLIES: GEOGRAPHIC ROUTING ON DUTY-CYCLED SENSORS S. NATH, P. B. GIBBONS IPSN 2007
Model A sensor network. Time is divided into discrete epochs. At each epoch, each node decides to sleep or wake up according to some decentralized sleep scheduling protocol. Only awake nodes can sense, process and communicate. A node can communicate only with its awake neighbors.
Assumptions Each node knows its geographic location. Nodes are loosely time synchronized. The deployment of sensor nodes is dense.
Problem Designing a sleep scheduling algorithm for sensor nodes which ensures good routing performance. Analyzing the expected increase in routing latency as the number of awake nodes decreases.
Motivation • Why Sleep Scheduling ? • To reduce energy consumption. • And thus increase network lifetime. • An inefficient sleep scheduling algorithm can result in disconnected networks and increase routing load 10 times.
Related Work • Routing • Greedy • For obstacles: • Face • Hull • Opportunistic Routing • For link failures. • For duty-cycled networks.
Sleep Scheduling Point/Spatial Coverage Node/Network Coverage
Sleep Scheduling Point/Spatial Coverage Node/Network Coverage
Geographic Routing All nodes awake.
Geographic Routing All nodes awake.
Geographic Routing All nodes awake.
Geographic Routing All nodes awake.
Geographic Routing When some nodes are sleeping
Geographic Routing When some nodes are sleeping
Geographic Routing When some nodes are sleeping
Geographic Routing Forward message to best awake neighbor even if the message is going in wrong direction. When some nodes are sleeping
Geographic Routing Forward message to best awake neighbor even if the message is going in wrong direction. When some nodes are sleeping
Connected K-Neighborhood (CKN) • The aim of the sleep scheduling algorithm is to ensure that: • Each node (sleeping or awake) has at least k (given)awake neighbors at all epochs. • All the awake neighbors form a connected network. • The number of awake nodes in each epoch is minimized. • In each epoch, a different set of nodes are awake.
Connected K-Neighborhood (CKN) Formulated the problem as an optimization problem Proved that it is NP-complete. Gave an approximate algorithm that is within logarithmic factor of optimal. The algorithm is distributed with low communication, computation and memory costs.
Algorithm These ranks are assigned so that neighbors can coordinate among themselves to decide which nodes will go to sleep.
Algorithm If the degree of node is <k , the node has to remain awake all the time.
Algorithm A node decides to sleep if its neighbors with lesser rank satisfy the two conditions.
Example for k=2 6 nodes , k=2
Example for k=2 2 3 1 4 6 5 Ranks are generated by a random generator.
Example for k=2 2 3 1 4 6 C = {1,5} 5
Example for k=2 C = {1,2} C = {1} 2 3 1 C = {} 4 C = {1,3} 6 C = {1,5} 5 C = {1,4}
Example for k=2 C = {1,2} C = {1} 2 3 1 C = {} 4 C = {1,3} 6 C = {1,5} 5 C = {1,4}
Example for k=2 C = {1,2} C = {1} 2 3 1 C = {} 4 C = {1,3} 6 C = {1,5} 5 C = {1,4}
Example for k=2 C = {1,2} C = {1} 2 3 1 C = {} 4 C = {1,3} 6 C = {1,5} 5 C = {1,4} Nodes 3,4 and 5 cannot sleep because Condition 2 on C is not satisfied.
Another Example for k=2 2 4 6 3 1 5 Same graph, but with different ranks.
Another Example for k=2 C = {2,3} C = {} 2 4 6 C = {1,2,3,4,5} 3 C = {} 1 C = {} 5 C = {1,3}
Another Example for k=2 C = {2,3} C = {} 2 4 6 C = {1,2,3,4,5} 3 C = {} 1 C = {} 5 C = {1,3}
Another Example for k=2 C = {2,3} C = {} 2 4 6 C = {1,2,3,4,5} 3 C = {} 1 C = {} 5 C = {1,3}
Another Example for k=2 Nodes 4 and 5 cannot sleep because Condition 1 on C is not satisfied. C = {2,3} C = {} 2 4 6 C = {1,2,3,4,5} 3 C = {} 1 C = {} 5 C = {1,3}
Theoretical Analysis • Only the greedy forwarding part is analyzed. • A lower bound on OPT and upper bound on CKN is used to prove that : • |CKN| <= O(ln n) |OPT| • They show that the probability of greedy forwarding making negative progress decreases exponentially with the increase in number of neighbors.