410 likes | 590 Vues
Querying in Wireless Sensor Networks. By, Anil Moola Vaishnav Kidambi Pratapa Sanaga Reddy. Querying Sensor Networks. Why querying? To retrieve the information To save energy in WSN Design goals for querying methods Scalability Efficiency Reliability Fault tolerance.
E N D
Querying in Wireless Sensor Networks By, Anil Moola Vaishnav Kidambi Pratapa Sanaga Reddy
Querying Sensor Networks • Why querying? • To retrieve the information • To save energy in WSN • Design goals for querying methods • Scalability • Efficiency • Reliability • Fault tolerance
CSN (chord for Sensor Networks) • Based on DHT • Why not DHT • Bounded Look up time • Hierarchical Clustering approach • CSN over comes implosion and overlap
CSN (chord for Sensor Networks) • Hierarchical clustering approach • Initial set up: Ring Problem • 2 NP Complete problems!! • Chain Method • Set Average Method
CSN (chord for Sensor Networks) • Chain Method Chain Method for level 0(Base Station β , Set of all Sensors π0, Maximum no.of Sensors per Cluster λ0) 1. cluster head ω = min(β ) 2. if (π0 == δ0) exit, where initially δ0 = /0 3. sensor αi = ω 4. put αi in sets τ and δ0, where initially |τ | = 0 5. while(|τ| ≤λ0) 6. αi.successor = min(αi) 7. αi = αi.successor 8. put αi in sets τ and δ0 9. αi.successor = ω 10. ω = min(αi) 11. goto 2
CSN (chord for Sensor Networks) • Set Average Method Set-Average Method for level 0 (Base Station β , Set of all Sensors π0, Maximum no.of Sensors per Cluster λ0) 1. cluster head ω = min(β ) 2. if (π0 == δ0) exit, where initially δ0 = /0 3. list ν1 = min(ω,λ0), and let m =λ0 4. for k = 2,3, . . . ,m: 5. νk = min(kth element of ν1,λ0) 6. let ν be a set of lists 7. ν = {ν1,ν2, . . . ,νm} 8. now, 1 ≤ occurrence of a sensor αi in ν ≤λ0) 9. let set ε = / 0, and variable x =λ0 10. while(x ≥ 1 AND |ε| ≤λ0), 11. for all sensors in ν :
CSN (chord for Sensor Networks) 12. if (occurrence of sensor αi in ν = x) 13. insert sensor αi in set ε 14. decrement x 15. redefine min(X) to only return a sensor belongs toε 16. do step 3 to step 10 of the chain method 17. goto 2
CSN (chord for Sensor Networks) • Incremental set up/ parallel set up • Energy efficient mode vs Robust Mode • Naming sensor Nodes and data Incremental / parallel Naming • Hashing Nodes and keys: • Look up Operation
Multi-Dimensional Range Queries • List all events that have temperature between 10C and 20C with humidity between 70% and 80% • It help user efficiently drill down their search for event of interest • It enables application software to correlate events
Traditional Indexing • Data is stored at a central point and uses indices which are computed when during insertion. • Not feasible for sensor networks due to energy and bandwidth constraint.
DIM (Distributed Index for Multi dimensional data) • Foundations of DIM • A locality preserving geographic hash - Consistently maps events to the some location with in the sensor network. Events whose attributes are closer are placed beside each other. • User underlying geographic routing scheme such as GPSR to route events and queries to the corresponding node.
In short.. • Each node in the network self organizes to own some attribute space for itself called zone, so events falling in that space are routed and stored in that node.
Building zones Sensor Node WSN boundary Assumption 1 : all nodes know the approximate geographic boundaries of the network.
Building zones cont… Level 4 Code : 011 Code : 1111 Level 3 Code : 110 Code : 010 Zone of node Code : 1110 Code : 101 Level 2 Code : 00 Code : 100 Assumption 2: Each node knows its geographic location If i is odd then parallel to Y-Axis else parallel to X-Axis
When a new event is generated.. • Hashing an event to a zone : Use an algorithm which maps the event to a code. • Routing an event to its owner : Uses GPSR to send the event to its prospective owner.
Routing Queries Node
Drawback of DIM • Scalability • Each node has to aware of it boundary • Each node has to aware of its geographic location
Bloom filters in Hierarchical Clustering approach • Hierarchical clustering for data aggregation and reporting. • ClusterHead – Summarize and forwards up data to application and guides queries down the hierarchy for appropriate data • Bloom filter are integrated with hierarchical clusters.
Bloom filters • Traditionally used it database and internet application. • Conventional hash coding VS Bloom filters • Space efficient
Construction of bloom filter • Suppose we have n elements in set S and m bits of memory • For each of n elements generate k different indices using k hash functions 2 3 M-2 M-1 0 1 …………………
Cluster formation cont.. • Top level sensor send beacon so some cluster heads will rebind to the cluster head on the shortest path to top. • Remaining free sensors will go into hibernation
Data Discovery • Data retrieval by explicitly naming the node. • Clusterhead maintains a set of bloom filters • One represents all sensors • Another represents the data that maybe found. • To find the region of filters which has Temperature from 40 to 50 Moisture level from 20 to 30 etc…
Mobility!!! • What if the inquirer or the target are mobile? • Two algorithms – • Two Tier Data Dissemination. • Energy Efficient Data Dissemination.
Two Tier Data Dissemination(TTDD) • Source based grid structure. • Grid creation.(grid points, dissemination nodes…) • Two Tier – • Source -> Dissemination Node • Dissemination Node -> Dissemination Node • Grid Maintenance – Grid lifetime.
TTDD Contd… • Aggregation and Routing. • Query forwarding • Data forwarding
TTDD Contd… • Mobile Sink??? – Trajectory Data Forwarding. • Primary Agent, Immediate Agent
Energy Efficient Data Dissemination(EEDD) • 2 Disadvantages of TTDD • Source based grid needs to be changed everytime the target moves. • No emphasis on Energy Conservation!
EEDD Contd… • Each sensor is aware of it’s location after deployment(virtual origin). • Nodes are stationary while targets and inquirers can move.
EEDD Contd… • Working Node Selection • Working mode, detecting mode. • Egridhead, Nnode,Tsleep. • Grid Head Election • Grid ID(a,b), Rtrans. • A sensor node can calculate its grid ID (a, b) from its location (x, y) as: a =[ x−x0/grid size ] and b = [ y−y0/grid size ], • where (x0, y0) is the location of the virtual origin. • And grid size is set to less than 1/2√2∗Rtrans. • Energy(S).
EEDD Contd… • Grid Maintenance • Broadcast a request to reelect. • Node with Max(energy(S))>Egridhead wins. • If there is no node with energy(S)???
EEDD Contd… • Data Dissemination • Target Location Aware • diagonally route to the target grid head and broadcast in the grid for the source node. • Source node sends the data packet to grid head and it’ll choose another path to the sink’s grid head, thus reducing collisions in two directions. • Data – Acknowledgement method. Resend after a delay. • Forwarding enty = true, forward the packet, else broadcast in the grid to reach the sink node. • 2)Target Area Aware • route to the starting of the area and broadcast in the area to all nodes. • 3)Broadcast over the entire network.
EEDD Contd… Inquirer Mobility issue • The inquirer will register with the new grid head the details of the query made and the original grid ID. • Forwarding loop problem.
EEDD Contd… Target Mobility issue • Normal/SMART. • MaxSmartness for each node controlled by the inquirer. • A Normal sensor node will generate data packets if detected has been inquired. • A Smart sensor node will search for the relevant query with the effort corresponding to it’s intelligence level if it is not inquired for the event.
Questions please… Thank you