Kurs Verteilte Sensornetzwerke

Angaben

Wann: Wintersemester
VAK FB 3 Informatik 03-IMVP-VSD
Zeit (Online, Sync.) Montag: 08:30 - 10:00
Format Online synchron mit Live Stream und asynchron mit Videos und interaktiven Übungen @home
Umfang: 3 SWS
ECTS: 6 CP

Dozent

PD Dr. Stefan Bosse, Univ. Bremen, FB Mathematik und Informatik

Studiengänge

Informatik

Inhalte

  1. Einführung des Sensormodells als Datenquelle
  2. Erweiterung des Sensormodells auf Sensornetzwerke, IoT, Edge- und Cloud Computing
  3. Virtualiserung und Netzwerke aus Virtuellen Maschinen (VM)
  4. Kommunikation und Datenaggregation in Sensornetzwerken
  5. Architekturen und Topologien von Sensornetzwerken, Simulation von Netzwerken mit zellulären Automaten
  6. Algorithmen und Architekturen der Datenaggregation und Datenfusion
  7. Parallel zu 1-7: Programmierung eines verteilten Sensornetzwerks mit Smartphones, Notebooks, und dem Rapsberry Pi, und der Lua Programmiersprache
  8. Formale Grundlagen von verteilten Systemen; Metriken; Effizienz; Skalierung

Medien

Medium Folien Datum Description
Wiki - - Interaktiver DokuWiki - Diskussionsplattform
Video - 21.04.20 Einführung in den Wiki
- dsn2k0.html 18.10.21 Modul 0: Überblick
Video - 22.10.21 Einführung in die digitalen Übungs- und Laborformate
Video - 22.10.21 Einführung in die Lua Programmiersprache
Video A Play A Video B Play B - 10.11.21 Einführung in NoteBook-2 Aufgaben
Video dsn2kA.html 25.10.21 Modul A: Grundlagen und Anwendungen von verteilten Sensornetzwerken
Video dsn2kB.html 01.11.21 Modul B: Modellierung von Sensornetzwerken (Teil 1)
Video dsn2kC.html 08.11.21 Modul C: Modellierung von Sensornetzwerken (Teil 2)
Video dsn2kD.html 22.11.21 Modul D: Protokolle und Kommuniaktiontechnologien in Sensornetzwerken
Video dsn2kF.html 07.12.21 Modul F: Verteilte Algorithmen (Teil 1)

Materialien

File Version Description
dsn2k.epub Online 19.11.2021 Vorlesungsskript (E-Book, fortlaufend)
lua_tutorial.pdf 2015 Lua Tutorial

Aufgaben und Tutorials

Die Einführungsvideos beachten (siehe oben)! Wenn eine Übungsdatei mit json endet dann muss diese in das entsprechende leere Notebook-2 (notebook.XX.html) geladen werden!


File Version Abgabe Description
luaTutotial.html 15.4.2021 - Lua Tutorial
lessonComNet1.html 05.11.2021 12.11.2021 Übung 1 - Kennzahlen von Kommunikationsnetzwerken
workbook.peergroupServer.json online current PeerJS Group Server
workbook.luapeerchan.json current PeerJS Lua Client
lessonNetSimu1.json 16.11.2021 26.11.2021 Übung 2 - Mobile Kommunikation und Interferenz mit dem Lua 2D Event Simulator (benötigt notebook.lua.simu2.html)
lessonWEBMon1.html 30.11.2021 09.12.2021 Übung 3 - Sensor Aggregation in Netzwerken

Software

Hinweis: Unter Linux müssen heruntergeladene Programme ausführbar gemacht werden: chmod a+x lvm

Es wird empfohlen nodejs Version 8 oder höher zu verwenden


File Version Description
notebook.lua.html 1.3.2 12.11.2021 Lua NoteBook-2 (leer)
notebook.lua.peer.html 1.3.3 15.11.2021 Lua+PeerJS NoteBook-2 (leer)
notebook.lua.simu2.html 1.3.3 16.11.2021 Lua+PeerJS NoteBook-2 (leer)
node8.exe 8.12.0 nodejs (MS Windows x86/32bit)
wex 1.2.5 WEX local File Server (requires nodejs) !Security Update!
node wex
luaweb.html 1.3.2 30.11.2021 LuaOS WEB IDE(+) mit paralleler VMJS`
lvm LVM 1.1.10 LuaJIT+ 2.0.5X2.3 Lua 5.1X2.1 LUV 2.7.3 -- Build Nov 25 2021 Parallel LuaJit VM, Linux x86 32bit
lvm LVM 1.1.10 LuaJIT+ 2.0.5X2.3 Lua 5.1X2.1 LUV 2.7.3 -- Build Nov 25 2021 Parallel LuaJit VM, Linux x64 64bit
lvm LVM 1.1.10 LuaJIT+ 2.0.5X2.3 Lua 5.1X2.1 LUV 2.7.3 -- Build Nov 25 2021 Parallel LuaJit VM, Solaris x86 32bit
lvm.exe LVM 1.1.10 LuaJIT+ 2.0.5X2.3 Lua 5.1X2.1 LUV 2.7.3 -- Build Nov 25 2021 Parallel LuaJit VM, Windows 32bit
lvm LVM 1.1.10 LuaJIT+ 2.0.5X2.3 Lua 5.1X2.1 LUV 2.7.3 -- Build Nov 25 2021 Parallel LuaJit VM, Mac OSX (≥10.7) 64bit
weblvm.lua 1.1.8 WEB Server for lvm
lvm weblvm.lua
shelllvm.html 1.1.7 WEB Shell for lvm (requires weblvm.lua)
shelllua.html 1.1.7 WEB Shell for Lua 5.3 (requires lua.plugin)
luaos.lua 1.2.5 LuaOS
lvm luaos
lua.plugin 1.1.1 WEB Lua 5.3 VM+ plugin
simu2.plugin 16.11.2021 Simulator-2 Plugin

Ziele/Kompetenzen

Die Studenten erwerben/gewinnen/lernen

  1. Verständnis der Grundprinzipien und Architekturen verteilter Sensornetzwerken und Fähigkeit zum Transfer auf technische Systeme, vor allem mit Fokus auf VMs
  2. Verständnis und Fähigkeit der Programmierung mit Synchronisation und Kommunikation einfachser Sensorapplikationen
  3. Verständnis der Probleme und dem Betrieb von verteilten Systemen im Vergleich klassischen Serversysteme (Effizienz, Blockierung, Skalierung, Ressourcenbedarf)
  4. Praktische Kenntnisse der Programmierung und Programmierübungen mit Lua und der PLVM
  5. Erkenntnisse von Grenzen und Möglichkeiten der Verteilung und die Fähigkeit effiziente Systeme zu entwickeln
  6. Studenten sind am Ende des Kurses in der Lage mit Lua einfache verteilte Senorapplikation z.B. mit Smartphones zu programmieren und zu analysieren.

Übungen

  1. Digitale und interaktive Übungen mit Online-Hilfe (oder in Präsenzunterricht integriert in Vorlesungsteile)
  2. Verteilte Experimente @home mit Vernetzung und Clusterbildung der studentischen Rechnern, Smartphones, und eingebetteten Rechnern (Raspberry PI + Sensoren als @home Kit)