Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 MobiQuery: A Spatiotemporal Query Service for Mobile Users in Sensor Networks Chenyang Lu, Guoliang Xing, Octav Chipara Chien-Liang Fok, and Sangeeta.

Similar presentations


Presentation on theme: "1 MobiQuery: A Spatiotemporal Query Service for Mobile Users in Sensor Networks Chenyang Lu, Guoliang Xing, Octav Chipara Chien-Liang Fok, and Sangeeta."— Presentation transcript:

1 1 MobiQuery: A Spatiotemporal Query Service for Mobile Users in Sensor Networks Chenyang Lu, Guoliang Xing, Octav Chipara Chien-Liang Fok, and Sangeeta Bhattacharya

2 2 Outline Motivation Design Analysis Simulations Demo

3 3 Motivation Supporting query from users is one of the most important function of sensor networks Existing solutions Fixed query areas, fixed user: directed diffusion, TinyDB Fixed areas, mobile user: TTDD, SEAD Query from mobile users in mission-critical applications has not been addressed Mobile users and moving query areas Stringent real-time requirement

4 4 Mission-Critical Applications Query fresh data from surrounding sensors periodically Coordinate fireman efforts to put out wildfires Search and rescue missions Robotic motion planning in hazardous environments

5 5 Problem Formulation Example: “Update a temperature map within 100m every 2s. Data can be at most 1s old.” Spatial constraint Query area: range of 100m all and only the sensors within the query area should respond to the query Query area moves with the user Temporal constraints Query period: 2s results must be delivered before end of current period Data freshness: 1s

6 6 Challenges Low duty cycle Mica2: lifetime of 450 days  1% duty cycle High wakeup delay Scarce resources Require low storage cost, comm. overhead and network contention Trivial solution does not work! User issues a query at the beginning of each query period 1% duty cycle: active for 150ms in every 15s Wakeup delay: 0~ 14.85s Many nodes cannot be woken up and respond

7 7 MobiQuery Approach Motion prediction Calculate future pickup points where the user expects a query result, based on a user motion profile Prefetching Send prefetch msgs to future pickup points at the right time Query dissemination Forwarn sleeping nodes and create a routing tree Data collection Sleeping nodes wake up at scheduled time and send data to user via the tree Collector node Active nodes Forewarned nodes Results Routing tree Uninvolved nodes

8 8 Assumptions Network runs a power management protocol Maintain a backbone of active nodes Bound the comm. delay between any two nodes within the order of a duty cycle Examples: CCP, SPAN, GAF MobiQuery can work without backbones with slight modification Every node knows its location Nodes have synchronized clocks

9 9 Generation of Motion Profiles Motion prediction Predict future path based on movement history Motion profile available after actual movement Motion planning Robots plan their paths in advance based on map Motion profile available before actual movement Advance time of a motion profile How early a motion profile available before the actual movement: positive for motion planning, negative for motion prediction Affect the performance of prefetching

10 10 Prefetching Greedy prefetching Send a prefetch msg to future pickup points ASAP Many routing trees set up simultaneously Just-in-time prefetching Send a prefetch msg to a future pickup point at the right time Only a few trees being set up simultaneously Advantages of JIT prefectching Reduce the network contention Reduce storage cost Reduce the cost caused by user motion changes

11 11 Query Dissemination The node receiving a prefetch msg distributes the query to all nodes in query area A tree is set up during query dissemination Sleeping nodes are restricted to be leaves Wake up when user arrives Resume sleeping after collecting & sending data

12 12 Data Collection Must finish within T fresh due to data freshness constraint Parent nodes wait for results from children to enable data aggregation May miss query deadline due to child failures Solution based on timeouts Each node sends results received so far when timeout Leaf nodes send results at T fresh before query deadline Nodes closer to the root have later timeouts Query results always meet deadline due to the timeouts, possibly with incomplete results

13 13 Prefetch Forwarding Time When (K-1) th collector node to forward a prefetch msg to K th pickup point Must ensure the query deadline K*T p to be met Delay the forwarding to reduce storage time of query states in the K th query area Time costs between the prefetch msg is sent and K th query deadline Msg travels between two pickup points T travel Sets up the tree in a query area T tree Collects data T collect

14 14 Prefetch Forwarding Time Illustration T travel +T tree +T collect

15 15 Prefetch Forwarding Time K th query deadline will be met if forward before K*T p – (T travel + T tree + T collect ) Timing analysis T travel < T p since the msg must travel faster than the user T collect < T fresh due to data freshness requirement T tree = wakeup delay + broadcast delay from root to furthest node in a query area Assume broadcast delay = data collection delay  Justified by the similarity between tree setup and data collection T tree < sleep period T sleep + T fresh Hence K th query deadline will be met if forward before (K-1)*T p – T sleep – 2T fresh

16 16 Warmup Interval When the user changes its path it may be too late to wake up all the nodes in first several query areas on the new path Prefetch forwarding time has passed Temporally suffer from poor performance Prefetch msg is forwarded asap to catch up Resume just-in-time prefetching at some collector node when Current time < prefetching forwarding time

17 17 Warmup Interval Suppose a new motion profile received T a seconds before the motion change Suppose warmup interval lasts K query periods Time to take prefetch msg to reach k th pickup point is T prf = v usr *(K*T p +T a )/v prf -- (a) Query deadlines are not met during warmup Time to take user to reach K th pickup point < T prf + tree setup time + data collection time  K*T p +Ta<T prf +T tree +T fresh – (b) Solving K from (a) and (b): K ≈T sleep + 2T fresh + T a How early a new motion profile is available before actual motion change is important to the performance

18 18 Storage Cost Storage cost during T seconds proportional to States of a query * max num of routing trees being set up concurrently within T Analyze num of routing trees only Greedy prefetching Intuitively depends on the speeds of msg and user Proportional to T * (1-v usr /v prf ) Proportional to duration of query Just-in-time prefetching Only depend on query parameters Roughly proportional to (T sleep +2*T fresh )/T p Independent from duration of query

19 19 Network Contention Greedy prefetching causes high network contention Set up as many routing trees as possible at the same time Worse when adjacent query areas overlap Just-in-time prefetching causes much lower network contention Just-in-time prefetching delays the setup processes of adjacent trees

20 20 Simulation Results Metrics Data fidelity: ratio of the num of nodes that contribute to a query result to the total num of nodes in a query area Success ratio: ratio of the num of queries that meet deadlines and have data fidelity above a threshold, to the total num of queries The threshold of data fidelity set to 95%

21 21 Performance under Accurate Motion Profile No-prefetching (NP): user issues a query at the beginning of each query period

22 22 Dynamic Behavior Greedy prefetching has high jitter due to network congestion Impropriate for mission-critical applications Warmup interval

23 23 Performance under Imperfect Motion Prediction Effect of advance time of a motion profile Warmup proportional to T sleep + T a, consistent to the analysis

24 24 Effect of Motion Changes and Location Errors

25 25 Effect of Motion Changes and Location Errors Motion changes have little effect when advance time is positive Performance drops with num of motion changes when advance time is negative Error in user position Lead to inaccurate motion prediction Over 85% of queries succeed even when the user changes his motion pattern every 70s and location error is 10m

26 26 Conclusions A sptiotemporal query service Meet stringent spatiotemporal constraints through just-in-time prefetching Can handle extreme low duty cycles Can handle imperfect motion prediction schemes Analysis to practical issues Network storage, network contention, warmup

27 27 Critiques Simple topology creation scheme Create a routing tree in each query area High comm. cost and network contention Solution: Incremental tree maintenance Dependence on motion profile Movement pattern may be highly unpredictable (e.g., invader & pursuer game) Solution: Omni-directional prefetching Only simulation results Solution: MQ demo and prototype is working now!

28 28 Results on 18 Mica2 motes MQ-DTC MQ-DTM


Download ppt "1 MobiQuery: A Spatiotemporal Query Service for Mobile Users in Sensor Networks Chenyang Lu, Guoliang Xing, Octav Chipara Chien-Liang Fok, and Sangeeta."

Similar presentations


Ads by Google