Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Data Persistence in Large-scale Sensor Networks with Decentralized Fountain Codes Yunfeng Lin, Ben Liang, Baochun Li INFOCOM 2007.

Similar presentations


Presentation on theme: "1 Data Persistence in Large-scale Sensor Networks with Decentralized Fountain Codes Yunfeng Lin, Ben Liang, Baochun Li INFOCOM 2007."— Presentation transcript:

1 1 Data Persistence in Large-scale Sensor Networks with Decentralized Fountain Codes Yunfeng Lin, Ben Liang, Baochun Li INFOCOM 2007

2 2 Outline Introduction Preliminaries Persistent Data Access  Two-way random walks  EDFC and ADFC Discussion of Multiple Encoded Blocks Performance Evaluation Conclusion

3 3 Introduction (1/5) It has been a conventional assumption that measured data in individual sensors are gathered and processed at powered sinks.  Internet Connections  via Data Aggregation This assumption may not realistically hold.  large-scale sensor networks  inaccessible geographical regions

4 4 Introduction (2/5) Our proposed vision is:  Ask the sensors to collaboratively store measured data over a historical period of time.  After a later time of convenience, a collector collects such measured data directly from the sensors. PUSH Model PULL Model Sensors send data periodically. Sensors are passively polled by the collector.

5 5 Introduction (3/5) We propose a novel decentralized implementation of fountain codes in sensor networks.  Data can be encoded in a distributed fashion. A sensor disseminates its data to a random subset of sensors in the network. Each sensor only encodes data it has received. The collector is able to decode original data by collecting a sufficient number of encoded data blocks.

6 6 Introduction (4/5) Our decentralized implementation of fountain codes does not require the support of a generic layer of routing protocols.  Do not need Routing Table or Geographical Routing Protocols.  Use random walks to disseminate data.

7 7 Introduction (5/5) : sensing nodes : caching nodes Sensed Data Caching Source Blocks Encoded Blocks failure! Caching Collector Decoding!

8 8 Preliminaries Why Fountain Codes? Replication  backup sensors  But a large number of replicas are required. Error-correcting Codes  Implemented in a centralized fashion Random Linear Codes  decentralized  But the decoding process is computationally expensive. Fountain Codes  Low decoding complexity:  superior decoding performance “Digital Fountain Codes V.S. Reed-Solomon Code For Streaming Applications” “Digital Fountain Codes V.S. Reed-Solomon Code For Streaming Applications” S. K. Chang

9 9 Preliminaries LT Codes In LT codes, K source blocks can be decoded from any subset of encoded blocks.  with probability degree  the number of source blocks used to generate an encoded block The degree distribution of encoded blocks in LT codes follows the Robust Soliton distribution.

10 10 Preliminaries LT Codes Ideal Soliton distribution Let Robust Soliton distribution

11 11 Preliminaries LT Codes Example of Robust Soliton distribution K=10000, c=0.2, and =0.05 The encoded blocks with a degree higher than K/R are not essential in decoding! K/R = 41 spike!

12 12 Preliminaries Random Walks on Graphs We describe random walks in the context of disseminating a source block.  sensor: node in the graph  The next hop is randomly chosen from the neighbors of the source node. A random walk corresponds to a time-reversible Markov chain. In this paper, we choose a variant of the Metropolis algorithm.  a generalization of the natural random walks for the Markov chain  non-uniform steady-state distribution

13 13 Preliminaries Metropolis Algorithm The Metropolis algorithm computes the transition matrix.  Steady-state distribution  : neighbors of node i  : maximal node degree in the graph

14 14 Persistent Data Access Decentralized Fountain Codes : sensing nodes K : caching nodes N Sensed Data Caching Source Blocks Encoded Blocks Caching degree d Sensed Data request source blocks based on two-way random walks request source blocks

15 15 Persistent Data Access Decentralized Fountain Codes We seek to construct decentralized fountain codes with only one traversal of random walks.  from sensing nodes to the caching nodes  Cache Nodes: Encode and store the source blocks.  Collector: Decode the source blocks. We propose two heuristic algorithms.  EDFC and ADFC  guarantee the Robust Soliton distribution of LT codes

16 16 Persistent Data Access Exact Decentralized Fountain Codes The randomization introduced by random walks.  Distinct source blocks received by a node is uncertain.  We must disseminate more than source blocks on each node. Redundancy Coefficient:  Assume each node receives blocks. , Pr (receive less than d nodes)

17 17 Persistent Data Access Exact Decentralized Fountain Codes The number of random walks: Probabilistic forwarding tables:

18 18 Persistent Data Access Exact Decentralized Fountain Codes : sensing nodes K : caching nodes N Sensed Data Caching Source Blocks Encoded Blocks Caching degree d Sensed Data source blocks, forwarding Table, and # of random walks. source blocks degree d Collector Decoding!

19 19 Persistent Data Access Exact Decentralized Fountain Codes The steps of EDFC are: Step 1. Degree generation. Step 2. Compute steady-state distribution. Step 3. Compute probabilistic forwarding table. Step 4. Compute the number of random walks. Step 5. Block dissemination. Step 6. Encoding. from the Robust Soliton distribution by the Metropolis algorithm b: number of random walks by bitwise XOR of a subset of d source blocks based on the probabilistic forwarding table The source node IDs are attached in the encoded block!

20 20 Persistent Data Access Exact Decentralized Fountain Codes Overhead ratio Violation Probability  Optimization Problem:  trade-off between coding performance and communication overhead

21 21 Persistent Data Access Exact Decentralized Fountain Codes Solve the optimization problem by MATLAB Parameter Setting  (constraints of violation probabilities) = 0.05  N (the number of total nodes) = 2000  K (the number of sensing nodes) = 1000  c = 0.01, = 0.05  Further numerical computation  overhead ratio = 1.4508

22 22 Persistent Data Access Approximate Decentralized Fountain Codes Design a new distribution to be a hypothetical chosen degree distribution.  attempt to avoid its redundant random walks  Number of random walks  Steady-state distribution of the random walks

23 23 Persistent Data Access Approximate Decentralized Fountain Codes   Optimization Problem: minimize the mean-square error between and actual degree distribution of a node p

24 24 Persistent Data Access Approximate Decentralized Fountain Codes The steps of ADFC are: Step 1. Degree generation. Step 2. Compute steady-state distribution. Step 3. Compute probabilistic forwarding table. Step 4. Compute the number of random walks. Step 5. Block dissemination. Step 6. Encoding. from the chosen degree distribution by the Metropolis algorithm b: number of random walks based on the probabilistic forwarding table by bitwise XOR of all received source blocks The source node IDs are attached in the encoded block!

25 25 Persistent Data Access Approximate Decentralized Fountain Codes Overhead ratio of ADFC  b: the number of random walks in ADFC  b 0 : the number of random walks in the ideal algorithm By further numerical computation  The overhead ratio is only 0.2326.  Less transmission cost is required.  But…

26 26 Persistent Data Access Approximate Decentralized Fountain Codes Parameter Setting  N (number of total nodes) = 2000  K (number of sensing nodes) = 1000  c = 0.01, = 0.05 Robust Soliton distribution chosen degree distributionactual degree distribution inaccuracy!

27 27 Discussion of Multiple Encoded Blocks Does it improve the coding performance if different encoded blocks are maintained? Source Blocks …… Encoded Blocks Cache Node may lose some information… Sensing Nodes

28 28 Discussion of Multiple Encoded Blocks Theorem 2  When the code-degree distribution conforms to the Robust Soliton distribution, even if the source blocks on each node are not encoded, the collector must visit nodes in order to collect all source blocks with probability.  is a small positive number.  is a random variable that assumes the value 1 if the source block j is collected when visiting ith node. average degree of an encoded block [3]

29 29 Discussion of Multiple Encoded Blocks  has value 1 if source block j is collected after visiting M nodes.  E denote the event that all blocks are collected after visiting M nodes.  All blocks are collected with probability

30 30 Discussion of Multiple Encoded Blocks  Apply logarithm to both sides  By using similar approximation, we obtain The collector needs to visit nodes to collect all K source blocks.

31 31 Performance Evaluation We implement both the original centralized and the decentralized implementation of fountain codes.  To evaluate the effectiveness and performance Centralized implementation of fountain codes  about 1000 lines of C++ code  Optimized implementation of encoding and decoding algorithms. Decentralized implementation of fountain codes  also simulated in C++

32 32 Performance Evaluation Use two-dimensional Geometric Random Graph as the topological model.  N sensors are uniformly distributed on a unit disk  K sensing nodes are uniformly distributed among the N sensors.  Radio range: r We set K=10000, N=20000, and r=0.033 in most experiments. The average number of neighbors for each node is 21.

33 33 Performance Evaluation Communication Cost and Decoding Ratio Two main performance metrics  Communication Cost and Decoding Ratio Communication Cost  the length of random walks  the number of random walks Decoding Ratio  number of nodes need to be visited by a collector for decoding  Normalized by the number of sensing nodes. fault tolerance!

34 34 Performance Evaluation Communication Cost and Decoding Ratio The impact of the length of random walks on decoding ratio. Each Data Point: the average and the 95% confidence interval from 10 experiments 1.05 500 50

35 35 Performance Evaluation Communication Cost and Decoding Ratio The ratio of dissemination costs of EDFC and ADFC to that of the two-way algorithm. 0.2 0.8

36 36 Performance Evaluation Multiple Encoded Blocks Cannot Do Better Theorem 2:  Keeping multiple encoded blocks on each node does not offer any asymptotic performance advantage over keeping a single encoded block. The collector needs to visit close to K nodes even if the source blocks are not encoded. The number of nodes to be visited before collecting all source blocks.

37 37 Performance Evaluation Overestimation of K and N The failure of sensors are common events.  in large-scale sensor networks It is not feasible to update K and N to all nodes in the network whenever they change.  Update K and N periodically.  Each node may overestimate K and N.

38 38 Performance Evaluation Overestimation of K and N The consequence of overestimating N:  N: the number of total nodes Actual N = 20000. 1.05

39 39 Performance Evaluation Overestimation of K and N The impact of overestimating K:  K: the number of sensing nodes Estimated K = 10000. EDFC is more robust!

40 40 Conclusion In this paper, we seek to improve the fault tolerance and data persistence in sensor networks.  decentralized implementation of fountain codes  disseminate original data throughout the network with random walks Superior decoding performance and low decoding complexity of fountain codes.  as the number of nodes scales up The proposed algorithms are able to provide near- optimal fault tolerance.  with minimal demand on local storage


Download ppt "1 Data Persistence in Large-scale Sensor Networks with Decentralized Fountain Codes Yunfeng Lin, Ben Liang, Baochun Li INFOCOM 2007."

Similar presentations


Ads by Google