170 likes | 295 Vues
This paper by Yvonne Anne Oswald and colleagues explores trade-offs in distributed computing, specifically addressing the challenges of time complexity versus message complexity in sensor networks. The goal is to deliver timely and energy-efficient event forwarding to a root node within a rooted spanning tree communication model. The authors introduce oblivious algorithms that do not depend on the history of previous messages, aiming to optimize transmission costs and minimize delays. They provide bounds related to various algorithmic approaches, emphasizing the importance of efficient data aggregation with minimal energy expenditure.
E N D
Tight Bounds for Delay-Sensitive Aggregation Yvonne Anne Oswald Stefan Schmid Roger Wattenhofer LEA DistributedComputingGroup
Introduction Distributed Computing Trade-off: time complexity vs message complexity Dijkstra Prize 2008 examples: • gossiping • data gathering • organization theory Yvonne Anne Oswald @ PODC 2008
Introduction Distributed Computing Trade-off: time complexity vs message complexity Particularly in sensor networks • limited energy (battery): transmission/reception expensive • goal: be up-to-date without much delay Yvonne Anne Oswald @ PODC 2008
root Model • communication network: rooted spanning tree Yvonne Anne Oswald @ PODC 2008
Root Model • communication network: rooted spanning tree • transmission cost c • nodes synchronized, time slotted • events occur at nodes (online, worst case) Goal: forward events to root , be fast and energy-efficient! Yvonne Anne Oswald @ PODC 2008
Model • communication network: rooted spanning tree • transmission cost c • nodes synchronized, time slotted • events occur at nodes (online, worst case) Goal: forward events to root, be fast and energy-efficient! minimize (c¢ # transmissions + delay cost) e.g.,1 per event per time slot until arrival at root • messages can be merged Root => reduce # transmissions Yvonne Anne Oswald @ PODC 2008
Oblivious Algorithm • DEFINITION: OBLIVIOUS ALGORITHM • decision (transmit/wait) of node v depends on • # events currently at node v • when events arrived at node v I’ve got a memory like a sieve and I don’t know where I am.. • decision of node v does NOT depend on • history (messages forwarded earlier) • v’s location in the aggregation network perfect for sensor nodes! Yvonne Anne Oswald @ PODC 2008
Related Work and our Contributions • Link: • Dooly et al.[JACM01]: TCP, • offline OPT • online O(1) • Karlin et al.[STOC01] • online randomized e/(e-1) • Tree: • Khanna et al.[ICALP02] • model: edge e -> cost c(e) • distributed bounds • O(h log(e c(e)) • (h1/2) • Trees • O(min(c,h)) • oblivious (min(c,h)) • Chains • O(min(c,h1/2)) • oblivious (min(c, h1/2)) • WSN model • log(e c(e)) improvement • higher lower bound Yvonne Anne Oswald @ PODC 2008
Algorithm AGG ([DGS01],[KNR01]) Balance delay cost and total communication cost AGG: node v forwards msg m as soon as delay(m,t) ¸ c ski rental on trees • Details • m : message at v, containing |m| events • delay(m,t) : delay associated with m at time t • no transmission: • delay(m,t+1) = delay (m,t) + |m| • transmission: • delay(m,t+1) = delay (m,t) + |m| - c Yvonne Anne Oswald @ PODC 2008
V3 v2 V1 Example (4 nodes, 4 events, c=3) events v1 v2 t = 1 1 0 t = 2 1 2 delay at v1 v2 v3 t = 1 1 0 0 t = 2 3 2 0 t = 3 0 4 2 t = 4 0 0 7 t = 5 0 0 0 root |m|=4 delay=7 |m| =2 delay = 2 |m| =2 delay = 0 |m|=2 delay=1 |m|=2 delay=2 |m|=2 delay=4 |m|=1 delay = 1 |m| =2 delay = 3 cost = 17+9 Yvonne Anne Oswald @ PODC 2008
Related Work and our Contributions • Link: • Dooly et al.[JACM01]: TCP, • offline OPT • online O(1) • Karlin et al.[STOC01] • online randomized e/(e-1) • Tree: • Khanna et al.[ICALP02] • model: edge e -> cost c(e) • distributed bounds • O(h log(e c(e)) • (h1/2) • WSN model • log(e c(e)) improvement • higher lower bound • Trees • O(min(c,h)) • oblivious (min(c,h)) • Chains • O(min(c,h1/2)) • oblivious (min(c, h1/2)) Yvonne Anne Oswald @ PODC 2008
Lower Bound on Trees Thm: any oblivious deterministic online algorithm ALG has a competitive ratio of at least (min(c,h))on the tree. … root ALG: t=1 events at nodes v1..vn/2-1 t=w messages leave vi t=w+1 messages at nodes vn/2..vn-1 … cost 2(c+w)h2 Yvonne Anne Oswald @ PODC 2008
Lower Bound on Trees Thm: any oblivious deterministic online algorithm ALG has a competitive ratio of at least (min(c,h))on the tree. … root ALG: cost 2(c+w)h2 OPT: cost 2O(ch+h2) => ratio (min(c,h)) Yvonne Anne Oswald @ PODC 2008
assume : #msgOPT = x h1/2 #msgAGG, x 2(1) => costAGG2O(x h1/2 hc) find sequence keeping costopt minimal => msg size increases with t yet no merges for AGG => costOPT 2 (xhc) Upper Bound on Chains Thm: AGG has a competitive ratio of at most O(min(c,h1/2))on chains. … root time difference ensures no merges before i => bound for reduction cost • proof sketch • assume no messages merged: ratio O(h1/2) • include u merges at depth i: • cost reduction AGG (uci) • cost reduction OPT O(uci) • generalize for many merges at any depth: ratio O(h1/2) • combine with result from trees: ratio O(min(c,h1/2) Yvonne Anne Oswald @ PODC 2008
Teaser on Value-Sensitive Aggregation What if urgency of delivery depends on value? root knows vr(t), value at leaf vl(t) cost := transmissions + t |vr(t) –vl(t)| • Results (2 nodes): • offline: dynamic programming O(#changes3) • online: competitive ratio 2 O(c/), • where smallest difference between values Online AGG: forward at (t+1) if lastsent |vr(t) –vl(t)| ¸ c consider intervals between consecutive transmissions Yvonne Anne Oswald @ PODC 2008
Summary • event aggregation • Tree: O(min(c,h)) • oblivious (min(c,h)) • Chain: O(min(c,h1/2)) • oblivious (min(c, h1/2)) • value-sensitive event aggregation • model • optimal algorithm for link O(# changes3) • online algorithm for link O(c/min.change) ski rental on trees Yvonne Anne Oswald @ PODC 2008
The End! Thank you! Questions? Comments? Yvonne Anne Oswald @ PODC 2008