Differentiated Surveillance for Sensor Networks Ting Yan, Tian He, John A. Stankovic CS294-1 Jonathan Hui November 20, 2003 Idea Exploit node density/redundancy to maximize effective network lifetime. Degree of coverage matters! Sensing constraints Fault tolerance 2 Assumptions Static placement Localization Time Synchronization Uniform expected node lifetime For simplicity of describing protocol? Nodes on 2D plane Circular sensing radius r Communication range > 2r 3 Basic Protocol Initialization Phase Localization, Time Sync, Determine Working Schedule (T, Ref, Tfront, Tend) Sensing Phase Nodes power on and off based on working schedule Round 0 (T) Ref Tfront Init Phase Tend Round 1 (T) Ref Tfront Tend Sensing Phase Round i (T) Ref Tfront Tend t 4 Basic Protocol Determining Working Schedule Goal: Each node determines its own working schedule such that all points within sensor coverage are covered for all time. Approach: Represent sensor coverage with grid of points 5 Basic Protocol Determining Working Schedule Reference Point Scheduling Algorithm Randomly choose Ref from [0, T) and broadcast to all nodes within 2r. For each discrete point Order neighboring Ref times and calculate Tfront = [Ref(i)-Ref(i-1)]/2 Tend = [Ref(i+1)-Ref(i)]/2 Final schedule = union of schedules for all points RefC RefA RefB Point 1 RefC RefA Node A: RefD Point 2 RefA RefE RefD RefB RefE 6 Enhanced Protocol with Differentiation Working schedule for a desired coverage of degree a. (T, Ref, Tfront, Tend, a) Working period defined as: Power On: Power Off: Example (a = 2) RefA T i Ref T front a T i Ref Tend a RefB RefC Example (a = 1) RefA RefB RefC RefB RefC A B C Example (a = 3) RefA A A B B C C Uh-Oh! 7 Design Issues Possible blind spots with discrete points Offset in time synchronization Power on (off) slightly earlier (later) Irregular sensing regions Choose points within sensing range conservatively Okay, as long as sensing regions of neighboring nodes are known But also requires knowledge of orientation Fault Tolerance Awake nodes use heartbeat messages to detect failed nodes If a node fails, wakeup all nodes within 2r and reschedule. What if communication range < 2r? 8 Extensions and Optimizations Second Pass Optimization After determining working schedule, broadcast schedule to all nodes within 2r. The node which has the longest schedule: Minimize Tfront and Tend while maintaining sensing guarantee Rebroadcasts new schedule Done when every node has recalculated schedule or when no more can be done. 9 Extensions and Optimizations Multi-Round Extension for Energy Balance Calculate M schedules each with different Ref values during Init Phase. Rotate schedules during Sensing Phase. RefC RefA RefB RefB RefC RefA RefA RefB RefCRefA RefC RefB A B C Schedule 1 Schedule 2 Schedule 3 Schedule 4 10 Evaluation Simulation parameters Nodes distributed randomly with uniform distribution in 160mX160m field. Results taken from center 140mX140m to avoid edge effects Sensing range = 10m Communication range = 25m Ideal conditions Fault tolerance included? Compare against sponsored approach 11 Evaluation Total energy consumption nearly constant with changes in density. Variation in total energy consumed decreases with greater densities. What’s happening with the sponsored approach? 12 Evaluation Half-life increases linearly as density increases. Coverage provided for longer period of time. 13 Evaluation Energy consumption increases linearly with different degrees. Energy consumption constant with different densities. Degree of coverage provided >= a. a only guarantees a lower bound. 14 Comments Localized algorithm? Inflexible mobility not supported, schedules are fixed No notion of the “goodness” of a node But still requires time synchronization and doesn’t support mobility Nodes that have more energy should take up a larger portion of the working schedule Difficult to reliably broadcast Ref values to all 2r neighbors in a dense network Only have one chance to get it right! Worse in cases where communication range < 2r (i.e. acoustic sensors) 15 Comments Working schedules determined without taking other schedules and protocols into account Comparison to Sponsored Coverage unfair Sponsored Coverage supports fault tolerance, limited mobility, and is more adaptable Ability to specify degree of coverage How does it affect other protocols (i.e. TDMA)? But current algorithm doesn’t correctly guarantee with a > 2! Fault tolerance relies on communication range > 2r for heartbeat messages 16 Conclusion Pros Improved performance in lifetime and workload balance Specify a degree of coverage Cons No upper bound on degree estimation Inflexible Static working schedule, static nodes, time synchronization, reliable communication 17