http://www.tu-ilmenau.de

Logo TU Ilmenau


Ansprechpartner

Prof. Dr.-Ing. Günter Schäfer

Telefon +49 3677 69 4576

E-Mail senden

INHALTE

Softwareprojekt

Zielgruppe

Für den Studiengang Informatik und Ingenieurinformatik im 4. Semester des Bachelorstudiums.
Zur Übersichtseite für das Softwarepraktikum.

Thema 1 - Monitoring volatiler Netzwerkeigenschaften

Betreuer: Dr.-Ing.Michael Roßberg

[Vollständige Ausschreibung als PDF]

Szenario

Globale IT-Netze funktionieren durch langjährige Entwicklungen heute in der Regel völlig reibungslos, wodurch sich unsere Gesellschaft immer mehr auf den einfach zu realisierenden Datenaustausch verlässt. Durch den beständigen Netzausbau sind Fehler zumindest in ihrer Anzahl jedoch nicht zurückgegangen. Fail-Stop-Ausfälle von Links und Routern sind hierbei jedoch als relativ gutartig zu betrachten. Komplizierter in der Detektion sind Fehler, die nur zu einer Verminderung der Dienstqualität führen. Beispielsweise durch hohes Delay oder hohen Jitter. Andere Fehler schließen das persistente Verwerfen von Paketen mit bestimmten Paketgrößen ein (durch MTU-Probleme beispielsweise).

Aufgabe

Im Rahmen des Softwareprojektes soll ein System konzipiert und entwickelt werden, welches verteilt Netzparameter ermittelt und zentral sammelt. Die Messungen könnten beispielsweise durch Raspberry Pies an unterschiedlichen Stellen im Netz vorgenommen werden.

Die zwei zentralen nicht-funktionalen Anforderungen für solch ein Werkzeug sind: 

  • Robustheit: Falls das zentrale Sammeln aufgrund von Netzstörungen nicht möglich sein sollte, muss die Datenübertragung beispielsweise zu einem späteren Zeitpunkt oder über ein eigenes Overlay-Routing erfolgen.
  • Datensparsamkeit & Skalierbarkeit: Um Fehlerzustände trotz ihres seltenen Auftretens verlässlich zu detektieren, müssen typischerweise umfangreichen Messungen erfolgen. Dennoch ist ihr Umfang selbstverständlich möglichst gering zu halten; insbesondere wenn viele Messpunkte involviert sind.

Eine Visualisierung der ermittelten Daten kann beispielsweise durch InfluxDB und Grafana erfolgen. Hauptaugenmerk soll jedoch auf den Messverfahren liegen. 

Lernziele


Neben den Kernzielen des Software-Projektes, wie dem Erlernen von effektiver Gruppenarbeit, der strukturierten Analyse von Problemen und natürlich der Schulung praktischer Fähigkeiten, wird in diesem Projekt Wissen zur robusten Erfassung komplexer Netzprobleme und zur Programmierung verteilter Anwendungen vermittelt.

 

Thema 2 - moniTor: Online-Erfassung und Darstellung von Tor-Netzwerkstatistiken

Betreuer: M.Sc. David Schatz 

 [Vollständige Ausschreibung als PDF]

Szenario

Nicht zuletzt seit den Enthüllungen von Edward Snowden wird immer deutlicher, dass die Metadaten von Kommunikationsverbindungen ebenso schutzbedürftig sind wie die kommunizierten Daten selbst. Zu diesen Metadaten zählen unter anderem Aufenthaltsorte/IP-Adressen der beteiligten Kommunikationspartner sowie deren Verbindungen untereinander ("Wer kommuniziert mit wem?"). Beispielsweise kann der Umstand, dass zwei Unternehmen plötzlich häufig in Kontakt stehen, eine wichtige Information für ein konkurrierendes Unternehmen sein.

Während die Vertraulichkeit der Nutzdaten relativ gut durch entsprechende kryptographische Algorithmen (vor allem Verschlüsselung) und Protokolle geschützt werden kann, ist die Vertraulichkeit der Metadaten viel schwieriger zu realisieren. Für den Schutz der Metadaten im Internet (zum Beispiel beim Websurfen) hat sich in den letzten Jahren Tor als der beliebteste Ansatz herausgestellt. In Tor werden Verbindungen über mehrere Relays umgeleitet, um die eigentlichen Endpunkte der Verbindung zu verbergen.

Aufgabe

Das Ziel dieses Projektes ist, Statistiken aus dem Tor-Netzwerk online zu erfassen, aufzubereiten und auf einer Webseite graphisch darzustellen. Dabei soll das Hauptaugenmerk auf zwei Statistiken gerichtet werden: Zum einen ist dies die Bandbreitenverteilung der aktiven Relays und zum anderen die Latenzen zwischen Paaren von Relays. Ersteres kann mit Hilfe des Tor Control Protocols aus einem lokalen Tor-Client ausgelesen werden. Des Weiteren erlaubt dieses Protokoll gezielt Pfade im Tor-Netzwerk aufzubauen und die Latenz zwischen zwei beliebigen Relays zu messen.

Wesentliche Herausforderungen ergeben sich aus der Größe des Tor-Netzwerkes, in welchem aktuell ungefähr 4500 Relays aktiv sind. Deshalb müssen Daten sinnvoll aggregiert werden, um eine übersichtliche Darstellung zu erreichen. Zudem soll im Rahmen des Projektes ein zentrales Netzwerkkoordinatensystem (NCS) umgesetzt werden, um eine effiziente Abschätzung der Latenzen zwischen allen möglichen Relays zu gewährleisten. Ein NCS bettet die Relays auf Grundlage einer linearen Anzahl von Latenzmessungen beispielsweise so in einen euklidischen Raum ein, dass die Distanz zwischen den Relays im Koordinatensystem eine Schätzung für die Latenz angibt.
Je nach Gruppengröße können weitere, abgeleitete Statistiken aufbereitet und dargestellt werden. Dies beinhaltet etwa Aussagen über die Pfadauswahl, welche vor allem auf Basis der Bandbreite der Relays getroffen wird. Hier wäre etwa auf Grundlage des NCS eine Vorhersage für die erwartete Latenz von Pfaden möglich.

Lernziele

Neben den Kernzielen des Software-Projektes, wie dem Erlernen von effektiver Gruppenarbeit, der strukturierten Analyse von Problemen und natürlich der Schulung praktischer Fähigkeiten, wird in diesem Projekt Wissen zu moderner und effizienter Webprogrammierung vermittelt.