Salah A. Aly,Moustafa Youssef, Hager S. Darwish,Mahmoud Zidan Distributed Flooding-based Storage Algorithms for Large-Scale Wireless Sensor Networks Communications, ICC '09. IEEE International Conference on
Outline Introduction Network model and assumptions Distributed storage algorithm Encoding operations Decoding operations DSA-I analysis DSA-II algorithm without knowing global information Practical aspects Performance and simulation results
Introduction Wireless sensor networks consist of small devices (nodes) with limited CPU, bandwidth, and power. One needs to design storage strategies to collect sensed data from those sensors before they disappear suddenly from the network. Sensors are distributed randomly and cannot maintain routing tables or network topology. Some nodes might disappear from the network. In this paper we assume a new model where all n nodes in N can sense and store data. Each sensor has a buffer of total size M.
Introduction Previous works [1], [5] have used fountain codes with random walks to distribute data from a set of sources k to a set of storage nodes n >> k. In this paper We generalize this scenario where a set of n sources disseminate their data to a set of n storage nodes. All nodes serve as sensors/sources as well as storage/receiver nodes Take less computational time One does not need to query all nodes in the network in order to retrieve information about all n nodes. One can query only one arbitrary node u in a certain region [1] S. A. Aly, Z. Kong, and E. Soljanin. Fountain codes based distributed storage algorithms for wireless sensor networks [5] A. G. Dimakis, V. Prabhakaran, and K. Ramchandran. Distributed fountain codes for networked storage
Network model r N(u) : the set of neighbors of a node u. d(u) : the number of neighbors with a direct connection The mean degree of a graph G :
Assumptions Let be a set of sensing nodes that are distributed randomly and uniformly in a field. Each sensor acts as both a sensing and storage node. Every node does not maintain routing or geographic tables, and the network topology is not known. Every node can send a flooding message to the neighboring nodes. Every node si can detect the total number of neighbors by broadcasting a simple query message The degree d(u) of this node is the total number of neighbors with a direct connection.
Assumptions Every node has a buffer of size M and this buffer can be divided into smaller slots, each of size c, such that The first slot of a node u is reserved for its own sensing data. Every node s i prepares a packet packetsi with its Every node draws a degree d u from a degree distribution Ω is. If a node decided to accept a packet, it will also decide on which buffer slot it will be stored.
Distributed storage algorithm (DSA-I) Encoding Operations Initialization Encoding/flooding Storage phases Decoding Operations
Encoding operations Initialization Phase: The node s i in the initialization phase prepares a The node s i broadcasts this packet to all neighboring nodes N(s i ). : hop count flag : whether the data is new or an update of a previous value
Encoding operations Encoding and Flooding Phase: After the flooding phase, every node u receiving the packetsi will check ID si, accept the data x si with probability one The node u will decrease the counter by one as The node u will select a set of neighbors that did not receiver the message x si and it will unicast this message to them.
For an arbitrary node v that receives the message from u, it will check if the x has been received before If not, then it will decide whether to accept or reject it based on a random value drawn from The node v will check if the counter is zero, otherwise it will decrease it and send this message to the neighboring Encoding operations
Storage Phase: Every node will maintain its own buffer by storing a copy of its data and other node’s data. Also, a node will store a list of nodes ID’s of the packets that reached it. All nodes would receive, send, and store their own and neighboring data. Therefore, each node will have some information about itself and other nodes in the network. Encoding operations
Decoding operations The stored data can be recovered by querying a number of nodes from the network. Let n be the total number of alive nodes; assume that every node has m buffer slots such that, c is a small buffer size, M is the total buffer size in a node. To retrieve the information about the n variables, the data collector needs to query at least (1+ )n/m nodes
Algorithm
DSA-I analysis Lemma 1: On average, with a high probability, the total number of steps for one packet originated by a node u in one branch in DSA-I is O(n/ μ ) Proof: Let u be a node originating a packet with degree d(u). We know that every packet originated from a node u has a counter given by Let μ be the mean degree of the graph representing the network N.
DSA-I analysis
DSA-II algorithm without knowing global information DSA-II is totally distributed without knowing global information. Inference Phase : Let v be a node connected to a source node u. Let b v be the degree of a node v without adding nodes in N(u) We can approximate the counter c(u) as The encoding operations of DSA-II algorithm are similar to encoding operations of DSA-I algorithm. Cu : a parameter that will depend on the network condition and node’s degree.
DSA-II algorithm without knowing global information Lemma 3: The total number of transmissions required to disseminate the information from any arbitrary node throughout the network for the DSA-II is given by : λ :the average node density
Practical aspects The main advantages of the proposed algorithms : 1. One does not need to query all nodes in the network in order to retrieve information about all n nodes. Only need %20 − %30 2. One can query only one arbitrary node u in a certain region in the network to obtain an information about this region. 3. The DSA-I and DSA-II algorithms proposed in this paper are superior in comparison to the CDSA- and CDSA-II storage algorithms proposed in [1], [2]. [1] S. A. Aly, Z. Kong, and E. Soljanin. Fountain codes based distributed storage algorithms for wireless sensor networks [2] S. A. Aly, Z. Kong, and E. Soljanin. Raptor codes based distributed storage algorithms for wireless sensor networks.
Data update : A packet from the node u : Assume x be the new sensed data from the node u : Also, the node v will check if ID u is in its own list : Practical aspects 0 1
Performance and simulation results h : the total number of queries needed to recover those n variables. h/n : the decoding ratio as the total queried nodes divided by n
Performance and simulation results