cache placement in sensor networks under update cost constraint
DESCRIPTION
Cache Placement in Sensor Networks Under Update Cost Constraint. Bin Tang, Samir Das, and Himanshu Gupta Department of Computer Science Stony Brook University Stony Brook, NY 11790. Outline. Problem Statement Motivation Algorithm Design Performance Evaluation - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/1.jpg)
Cache Placement in Sensor Networks Under Update Cost Constraint
Bin Tang, Samir Das, and Himanshu Gupta
Department of Computer ScienceStony Brook UniversityStony Brook, NY 11790
![Page 2: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/2.jpg)
Outline
Problem Statement Motivation Algorithm Design Performance Evaluation Conclusion and Future Work
![Page 3: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/3.jpg)
Problem Statement Sensor Network Model
A data item stored at a server node. Updated at a certain frequency. Other nodes access the data item at a certain
frequency.
Problem Statement
Select nodes to cache the data item to: Goal: Minimize “total access cost” Constraint: Total update cost.
![Page 4: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/4.jpg)
Motivation
Why cache? To save access/communication cost, and thus,
energy.
Why update cost constraint?Nodes close to the server bear most of the update cost.
![Page 5: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/5.jpg)
Problem Formulation Given:
Network graph G(V,E) A data item stored at a server node Update frequency Access frequency for each other node Update cost constraint Δ
Goal: Select cache nodes to minimize the “total access
cost” Total update cost is less than Δ
![Page 6: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/6.jpg)
Total Access/Update Cost Total Access Cost =
∑ i є V (access freq of i x distance to nearest cache)
Total Update cost = Cost of Steiner tree over server and all caches
![Page 7: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/7.jpg)
Algorithm Design Outline Tree Networks
Optimal dynamic programming algorithm.
General Networks Multiple-unicast update model -- Approximation
algorithm.
Steiner-tree update model -- Heuristic, Distributed.
![Page 8: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/8.jpg)
Tree Networks
![Page 9: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/9.jpg)
Subtree notation
Server: “r”
Consider a subtree Tv
Let path (v,x) on its leftmost branch be all caches
Let C_v be the optimal access cost in Tv using additional update cost δ
Next: Recursive equation for C_v
r
Trv
Tvx
![Page 10: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/10.jpg)
Dynamic Programming Algorithm for Tvunder update cost constraint δ
Let u = leftmost deepest node in the optimal set of caches in Tv
Path(v,u) can be all caches (update cost doesn’t increase)
For a fixed u, C_v =
Constant + optimal access cost in Rv,u for constraint (δ – δ_u)
Here, δ_u is the cost to update u (using path(v,x)).
![Page 11: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/11.jpg)
DP recursive equation for Tv
C_v = minu є Tv (access cost in Lv,u using path(v,x)
+ access cost in Tu using u
+ optimal cost in Rv,u with constraint δ –
δ_u) Here, δ_u is the cost in updating u (using path(v,x)).Note that Rv,u has a path (v, parent(u)) of caches on its
leftmost branch.
![Page 12: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/12.jpg)
Time complexity Time complexity: O(n4+n3 Δ)
Analysis O(n4): Precomputation of subtree access costs
Lv,u with cache path (v,x): O(n4), for all v,u,x Tu: O(n2), for all u
Recursive equation takes O(n3 Δ) n2Δ entries: all values of (v,x,δ) Each entry takes O(n)
![Page 13: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/13.jpg)
General Graph Network Two Update Cost Models
Multiple-Unicast
Optimal Steiner Tree
![Page 14: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/14.jpg)
Multiple-Unicast Update Model Update cost: Sum of shortest path lengths
from server to each cache nodes
Benefit of node A: Decrease in total access cost due to selection of A as a cache
Benefit per unit update cost.
![Page 15: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/15.jpg)
Greedy Algorithm
Iteratively: Select the node with the highest benefit per unit update cost, until the update cost is exhausted
Theorem: Greedy solution’s benefit is at least 63% of the optimal benefit.
![Page 16: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/16.jpg)
Steiner-Tree Update Cost Model
Steiner-tree update cost: Cost of 2-approximation Steiner tree over cache nodes
Incremental Steiner update cost of node A: Increase in Steiner-tree update cost due to A becoming a cache
Greedy-Steiner Algorithm:Iteratively, select the node with the highest benefit per unit above-defined update cost.
![Page 17: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/17.jpg)
Distributed Greedy-Steiner Algorithm
Each non-cache node estimates its benefit per unit update cost
If the estimate is maximum among all its non-cache neighbors, then it decides to cache
Algorithm: In each rounds, each node decides to cache based
on above. The server gathers new cache node information,
and computes the total update cost The remaining update cost is broadcast to the
network, and the new round begins.
![Page 18: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/18.jpg)
Performance Evaluation (i) network-related -- number of nodes and
transmission radius, (ii) application-related -- number of clients.
Random network of 2,000 to 5,000 nodes in a 30 x 30 region.
![Page 19: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/19.jpg)
Compared Caching Schemes Centralized Greedy
Centralized Greedy-Steiner
Distributed Greedy-Steiner
Dynamic Programming on Shortest Path Tree of Clients
Dynamic Programming on Steiner Tree over Clients and Server
![Page 20: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/20.jpg)
Varying Network Size – Transmission radius =2, percentage of clients = 50%, update cost = 25% of the Steiner tree cost
![Page 21: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/21.jpg)
Varying Transmission Radius - Network size = 4000, percentage of clients = 50%, update cost = 25% of the Steiner tree cost
![Page 22: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/22.jpg)
Varying number of clients – Transmission Radiu =2, update cost = 50% of the Steiner tree cost, network size = 3000
![Page 23: Cache Placement in Sensor Networks Under Update Cost Constraint](https://reader036.vdocuments.site/reader036/viewer/2022062323/5681571e550346895dc4bba0/html5/thumbnails/23.jpg)
Conclusion and Future Work Data caching problem under update cost
constraint.
Optimal algorithm for tree; an approximation algorithm for general graph.
Efficient distributed implementations.
More general cache placement problem: (a) under memory constraint; (b) multiple data items.