1 / 19

SWISSQM S tephan Wagner

SWISSQM S tephan Wagner. Seminar Datenmanagement in Sensornetzen SS 2007, Prof. Ulf Leser, Dipl-Inf. Timo Mika Gläßer. Eckpunkte SWISSQM. Entwicklung im Rahmen des XTream Projektes an ETH Zürich SWISSQM = S calable Wi reles s S ensor Network Q uery M achine

yukio
Télécharger la présentation

SWISSQM S tephan Wagner

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SWISSQMStephan Wagner • Seminar Datenmanagement in Sensornetzen • SS 2007, Prof. Ulf Leser, Dipl-Inf. Timo Mika Gläßer

  2. Eckpunkte SWISSQM • Entwicklung im Rahmen des XTream Projektes an ETH Zürich • SWISSQM = Scalable Wireless Sensor Network Query Machine • auf Stack basierende integer VM • ist Turingvollständig • Unterstützung benutzerdefinierter Funktionen

  3. Motivation • Trennung der Sensoren vom externen Interface- Knoten sollen keine anwendungsspezifische Funktionalität beinhalten (z.B. Parsen) • Dynamische multi-user- und multi-programing-Umgebung • Effiziente Benutzung der Sensoren- Empfangen, Berechnen und Senden von Daten • Erweiterbarkeit- benutzerdefinierte Funktionen- Benutzung von „higher data processing layers“

  4. Anwendungsmöglichkeit: Der Vesuv • letzter Ausbruch ereignetesich im Jahre 1944 • gilt als gefährlichster Vulkan Europas • es wird ein baldiger Ausbruch befürchtet (ca. 1-100 Jahre) • am Fuß des Vulkans liegt die Stadt Neapel mit mehr als einer Million Menschen

  5. Beispiel SWISSQM: Sensorknoten • Netzwerk von Sensorknoten amVesuv • Sensoren messen Tektonik und Hitze • Zweck: Vorwarnung

  6. Netzwerktopologie: Koten • Knoten sind in Baumangeordnet und sendenDaten zum Gateway • Unterstützt werden verschiedene Bäume undAdressierungen • auf Sensoren läuft eine QM • multi-hop routing (TinyOS)

  7. Netzwerktopologie: Gateway • Gateway generiert Bytecodeprogramme • Speichert Daten die Effizienz des Netzes beeinträchtigen würden du liefert diese bei Bedarf aus • Interface zur Kontrolle der Knoten (reset, stop, Code senden usw.) • Funktionsweise:- Gateway wandelt Benutzerquerys über virtuelle Querys in Netzwerk-Querys um (liegen in Bytecode vor)

  8. Beispiel SWISSQM: Gateway Gateway übersetzt folgenden Querys in Bytecode Programme und sendet diese an Sensorknoten: • 1 .section delivery, "@5s" • 2 get_parent • 3 istore 0 • 4 get_temp • 5 istore 1 • 6 iload 1 • 7 ipushw 400 • 8 if_icmpge 9 • 9 get_uschall • 10 istore 2 • 11 iload 2 • 12 ipushb 5 • 13 if_icmpge 14 • iconst_2 • Iconst_2 • 16 iconst_2 • 17 iconst_2 • 18 merge • 19 send_sy • 20 • 21 .section reception • 22 iconst_2 • 23 iconst_2 • 24 iconst_2 • 25 iconst_2 • 26 merge Netzwerktopologie: Koten SELECT parent, MAX(temp), MAX(uschall) WHERE temp > 400 AND beben > 5 FROM Sensoren GROUP BY parent SAMPLE PERIOD 5s

  9. SWISSQM: Speicheraufbau • SWISSQM und Benutzerprogramme sind im FLASH-Memory jedes Sensorknotens gespeichert • SRAM speichert nichtbeständigenglobalen Zustand von SWISSQM aus FLASH-Memory während des Bootens • SWISSQM benötigt 3KB + 1KBfür Stack • für Programme werden 384 byte alloziertpro Programm:- 16byte Stack- 16byte Übertragungspuffer- 16byte * #Elemente Synopsis

  10. SWISSQM: Virtuelle Maschine • Virtuelle Maschine besteht aus: • 1. Stack (beinhaltet Operanten und Befehle)2. Übertragungspuffer (speichert Daten für Forwarding)3. Synopsis ermöglicht Ausführung von Aggregationen • 4. Sensoren • 5. QM-Programme

  11. SWISSQM: Querymaschine • Bytcodeinterpreter • Übertragungspuffer • Stack • Synopsis- raw mode: Array wird benutzt wie Übertragungspuffer- managed mode: ermöglicht Kombination von Daten des Übertragungspuffers und Synopsis- hat Tabellenstruktur

  12. Beispiel SWISSQM: QM • 1 .section delivery, "@5s" • 2 get_parent • 3 istore 0 • 4 get_temp • 5 istore 1 • 6 iload 1 • 7 ipushw 400 • 8 if_icmpge 9 • 9 get_uschall • 10 istore 2 • 11 iload 2 • 12 ipushb 5 • 13 if_icmpge 14 • iconst_2 • Iconst_2 • 16 iconst_2 • 17 iconst_2 • 18 merge • 19 send_sy • 20 • 21 .section reception • 22 iconst_2 • 23 iconst_2 • 24 iconst_2 • 25 iconst_2 • 26 merge Synopsis

  13. SWISSQM: Querymaschine • QM Programm besteht aus 3 Sektionen:init section: wird nur beim Programmstartausgeführt und initialisiert Synopsisdelivery section: wird einmal pro Samplingperiode ausgeführt, tastet Sensoren ab, sammelt Daten,„mergen“ mit localer Synopsisreception section: beinhaltet Daten vom Kindknoten, leitet Daten weiter 1 .section init 2 400 3 istore 2 4 5 .section delivery, "@5s" 6 get_parent 7 istore 0 8 get_temp 9 istore 1 10 iload 1 11 iload 2 12 if_icmpge 13 13 iconst_2 14 iconst_1 15 iconst_1 16 merge 17 send_sy 18 19 .section reception 20 iconst_2 21 iconst_1 22 iconst_1 23 merge

  14. SWISSQM: Befehlssatz • Befehlssatz ermöglicht: Manipulation, Logik, Arithmetik, Jumps und Kontrolle • pro Befehl 1 byte -> 256 Befehle möglich • Befehlssatz sind modular und dadurch leicht erweiterbar • 7 verschiedene Sensorbefehle

  15. SWISSQM: Merge-Befehl • ermöglicht komplexe Berechnung • trotz einfacher Bytecodebefehle • merge-Syntax: • merge(n,m,aggop1,aggop2,…,aggopm) • n = Anzahl der Gruppen • m = Anzahl der Aggregationen • aggop = Aggregation

  16. Beispiel SWISSQM: Beispielrechnung für 2. Knoten GATEWAY merge

  17. Beispiel SWISSQM: Synopsis für 0. Knoten GATEWAY

  18. SWISSQM Abschalten GATEWAY Evakuieren

  19. SWISSQM: Vor- und Nachteile

More Related