Peer to Peer Overlay Network for Sensor Networks

Peer to Peer Overlay Network for Sensor Networks

Peer to Peer Overlay Network for Sensor Networks Master Thesis Submitted to Institute of Operating Systems and Computer Networks Technical University Braunschweig by Husam Alzaq 7. February 2007 1. Referent: Prof. Dipl.-Ing. Michael Beigl 2. Referent: Prof. Dipl.-Ing. Lars Wolf Erkl¨arung Ich versichere, die vorliegende Masterarbeit selbstst¨andig und nur unter Benutzung der angegebenen Hilfsmittel angefertigt zu haben. Ort, Datum Unterschrift i ii Acknowledgment This Master of Science Thesis was written during winter 2006 at the Institute of Operating Systems and Computer Networks at the University of Braunschweig. I want to thank Prof. Dr.-Ing. Michael Beigl and Dr. Christian Decker for the support and guidance given during the writing of this thesis. I want to thank also Mr. Frank Strauss, IBR network and systems administration, for his technical support in Linux. I would like to thank Jxta Community for their valuable support. Finally, I would like to express my deepest gratitude to my family for their endless love and support during my study at the Technical University of Braunschweig. iii iv Abstract With the advent of smart sensors, it is now possible to monitor and observe the world at unprecedented levels of granularity. These sensors form a wireless sensor network of tens or hundreds of nodes that are deployed in a remote location. Such sensor networks require a significant approach for the data management. Based on Peer to Peer System, we proposed a new middleware layer for these concealed ubiquitous devices. The flexible architecture of Peer to Peer enables wireless sensor network to be connected to the Internet through a dedicated gateway. Jxta is preferred among other Peer to Peer systems since it allows any connected device on the network to communicate and collaborate. The main function of this middleware is to enable users to discover service advertisements and then to communicate with the sensor gateway. Users can obtain sensor data with simple declarative query that is distribu- tively processed. v vi Zusammenfassung Mit dem Erscheinen der intelligenten Sensoren ist es jetzt m¨oglich, die Welt auf einem noch nie da gewesenem Niveau von Granularit¨atzu ¨uberwachen und zu beobachten. Diese Sensoren bilden ein drahtloses Sensor-Netz von zehn oder hunderten von Knoten, die an entfernten Stellen eingesetzt werden. Solche Sensor-Netze erfordern einen besonderen Ansatz f¨urdie Datenverwaltung. Basierend auf Peer-to-Peer-System schlagen wir eine neue Middleware-Schicht vor f¨ursolche Universal-Anlagen mit ver- borgenen Sensoren. Die flexible Architektur des Peer-to-Peer-Systems erm¨oglicht den Anschluss des drahtlosen Sensornetzes an das Internet ¨uber einen zugewiese- nen Gateway. Jxta wird vor anderen Peer-to-Peer-Systemen bevorzugt, da es alle m¨oglichen verbundenen Ger¨ate im Netz zusammenarbeiten und kommunizieren l¨asst. Die Hauptfunktion dieser Middleware ist es, den Gateway Dienst zu erkennen und mit diesem zu kommunizieren. Sie erlaubt dem Benutzer, Daten von den Sensoren durch eine einfache erkl¨arendeAnfrage zu erhalten, die ¨uber einen Verteilungsprozess verarbeitet wird. vii viii Contents Abbreviations xiii List of Figures xv List of Tables xvii 1. Introduction 1 1.1. Motivation ................................. 1 1.2. Problem Definition ............................ 2 1.3. Objective ................................. 2 1.4. Research Question ............................ 2 1.5. Thesis Organization ........................... 3 2. Background on Peer to Peer Systems 5 2.1. Overview .................................. 6 2.2. Basic Definition .............................. 7 2.3. Peer to Peer Classification ........................ 8 2.4. Peer to Peer Search Methods ....................... 10 2.4.1. Searching in Unstructured Peer-to-Peer Networks ....... 10 2.4.2. Searching in Structured Peer-to-Peer Networks ......... 11 2.5. Peer to Peer Applications ........................ 11 2.6. Peer to Peer Characteristics ....................... 13 2.7. Examples of well known Peer to Peer Systems ............. 15 2.7.1. Napster .............................. 15 2.7.2. Gnutella .............................. 15 2.7.3. FreeNet .............................. 16 2.7.4. Search for Extra-terrestrial Intelligence (SETI@home) ..... 16 2.7.5. Groove ............................... 16 2.7.6. JXTA ............................... 17 2.7.7. Chord ............................... 18 2.7.8. Content Addressable Network (CAN) ............. 19 2.8. Discussion ................................. 19 ix Contents 2.9. Summary ................................. 21 3. State of the Art 23 3.1. Sensor Data Management ........................ 23 3.1.1. Sensor Network Architecture Aspects .............. 24 3.1.2. Routing Approaches in Wireless Sensor Networks ....... 24 3.1.2.1. Data-Centric Routing Approaches .......... 25 3.1.2.2. Rendezvous Routing approaches ............ 25 3.1.3. Sensor Database Approaches ................... 26 3.1.3.1. Cougar ......................... 26 3.1.3.2. TinyDB ......................... 26 3.1.4. Query Processing in Sensor Networks .............. 27 3.2. Service Discovery Protocols ....................... 28 3.2.1. Service Directory Consistency .................. 28 3.2.2. Examples of Service Discovery Protocol ............. 29 3.2.2.1. Salutation ........................ 29 3.2.2.2. Service Location Protocol, SLP ............ 30 3.2.2.3. Intentional Naming System (INS) .......... 30 3.2.2.4. INS/Twine ....................... 31 3.2.3. Comparison between Jxta and Service Discovery Protocols .. 32 3.3. Summary ................................. 34 4. Conceptual Design 35 4.1. System Overview ............................. 35 4.2. Analysis .................................. 36 4.2.1. Defining the Use Case Model .................. 37 4.2.1.1. Use Case 1 ....................... 37 4.2.1.2. Use Case 2 ....................... 37 4.2.1.3. Use Case Model .................... 38 4.2.2. Requirements ........................... 39 4.3. System Design ............................... 40 4.3.1. System Architecture Overview .................. 40 4.3.1.1. Sensor Gateway Layers ................. 41 4.3.1.2. User Agent Layers ................... 41 4.3.1.3. Jxta Layer ....................... 42 4.4. Block Diagram .............................. 42 4.5. Description of Components ........................ 43 4.5.1. User and Gateway Organizer ................... 43 4.5.2. Sensor Manager .......................... 43 4.5.3. Advertisements Publisher .................... 44 4.5.4. Advertisements Discovery .................... 44 4.5.5. Filtering Data ........................... 44 x Contents 4.5.5.1. Filtering Mechanism .................. 45 4.5.5.2. Filter Data Model ................... 45 4.5.5.3. Filtering Algorithm ................... 46 4.5.5.4. Filtering process cycle ................. 47 4.5.6. WSNMessenger .......................... 47 4.5.6.1. Query Analyzer ..................... 48 4.5.6.2. Result Collector .................... 50 4.5.7. Message Handler ......................... 50 4.6. Summary ................................. 50 5. Implementation 51 5.1. Sensor Gateway Application ....................... 51 5.1.1. Technologies Used ........................ 51 5.1.2. Implementation of Sensor Gateway ............... 52 5.1.2.1. Gateway Organizer ................... 53 5.1.2.2. Sensor Manager ..................... 54 5.1.2.3. Advertisements Publisher ............... 54 5.1.2.4. Message Handler .................... 57 5.1.2.5. Data Filter ....................... 58 5.2. User Agent Application .......................... 60 5.2.1. Technologies Used ........................ 60 5.2.2. Implementation of User Agent .................. 60 5.2.2.1. WSNGroupManager class ............... 61 5.2.2.2. QueryAnalyizer class .................. 61 5.2.2.3. WSNMessenger class .................. 62 5.2.3. User Agent Processes ....................... 63 5.2.4. User Agent Interface (GUI) ................... 66 5.3. Summary ................................. 66 6. Results 69 6.1. Functionality and implementation testing ................ 69 6.1.1. Test specification and results ................... 70 6.2. Sensor Gateway: Testing on PCs .................... 71 6.2.1. Test-bed Equipment ....................... 71 6.2.2. WSN Advertisements Discovery Performance .......... 71 6.2.3. Messages and Pipes Overhead .................. 72 6.2.4. The Overall Filtering Overhead ................. 74 6.2.5. Memory Overhead ........................ 75 6.3. Sensor Gateway: Testing on Embedded System ............ 75 6.4. summary .................................. 76 xi Contents 7. Summary and Future Work 77 7.1. Conclusions ................................ 77 7.2. Future Works ............................... 78 Bibliography 79 Appendices 85 A. BNF for JMSN Query 85 B. Installing Jxta on Asus Router 87 xii Abbreviations AVTree Attribute-Value-Tree BNF Backus-Naur Form BOINC Berkeley Open Infrastructure for Network Computing DA Directory Agent DHT Distributed Hash Table DLS Distributed Lookup Service IETF Internet Engineering Task Force INR Intentional Naming Resolver INS Intentional Naming System NAT Network Address Translator PDA Personal Digital Assistant RMI Remote Method Invocation SETI@home Search for Extra-Terrestrial Intelligence SA Service Agent SD Service Discovery SDP Service Discovery Protocol xiii Abbreviations SLP Sservice Location Protocol SRDI Shared Resource Distributed Index SSTP Simple Symmetrical Transmission Protocol TCP/IP Transmission Control Protocol/Internet

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    108 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us