Institute of distributed systems logo Ulm university logo

Forschungstrends in Verteilten Systemen

Summer Semester 2015

   
Title:
Forschungstrends in Verteilten Systemen
Type:
Hauptseminar, Modul
Token / Number / Module number:
RTDS / - / 71926
Semester hours / Credits:
2S SCH / 4LP CP
Lecturer:
Prof. Dr. Frank Kargl, Prof. Dr.-Ing. Franz J. Hauck
Tutor:
Benjamin Erb, Steffen Kächele, Stephan Kleber, Henning Kopp, Thomas Lukaseder, Christian Spann, Rens van der Heijden
General schedule:
Donnerstag, 16.04.2015, 10.15 Uhr - 11.45 Uhr, O27/2202: Einführungsveranstaltung (verpflichtend)
Donnerstag, 23.04.2015, 10.15 Uhr - 11.45 Uhr, O28/H21: Wissenschaftliches Arbeiten (verpflichtend)
Donnerstag, 23.04.2015, 16.15 Uhr - 17.45 Uhr, O27/341: LaTeX-Einführung (freiwillig)
Donnerstag, 25.06.2015, 10.15 Uhr - 11.45 Uhr, N25-2103: Präsentationstechniken (verpflichtend)
Freitag, 10.07.2015, 08.00 Uhr - 20.00 Uhr, 45.2.102 und 45.2.103: Vorträge (verpflichtend)
Learning platform:
Kursmaterialien finden Sie im Moodle-Kurs. Sie werden dem Kurs automatisch hinzugefügt, sobald Sie eines unserer Seminare besuchen.
Grade bonus:
Exam dates:
Topic assignment:
Die Themenvergabe erfolgte bereits über die zentrale Seminarthemen-Vergabe-Plattform.
Briefing:
Donnerstag, 16.04.2015, 10.15 Uhr, O27/2201
Language:
Alle Themen können in deutscher oder englischer Sprache bearbeitet werden.

Topics

assigned

  • Time Models in Distributed Systems & Applications (assigned)

    In distributed systems and applications, the conception of time is an essential building block. Time models influence the notion of temporal order, causality, consistency as well as the overall execution progress. The basic objective of this seminar paper is to give an overview on different time models existing in literature and to assess their fundamental applicability in distributed contexts. This topic is mainly intended for Master students.

    Supervision: Benjamin Erb

  • Big Data on Graphs (assigned)

    The Big Data trend has re-established interest in the algorithmic processing of graph-based data, but now on a very large scale. For instance, search engine providers such as Google take advantage of graph mining in order to improve the ranking of web pages and social networks such as Facebook or Twitter use graph algorithms for user clustering and generating contact suggestions. The general goal of this seminar paper is an overview of graph problems, graph algorithms, graph computing platforms, and exemplary use cases of graph computing – each of them based on Big Data scenarios. This topic is intended for both Bachelor and Master students.

    Supervision: Benjamin Erb

  • Lambda Architectures for Neartime & Batch Processing (assigned)

    So far, distributed computing platforms for large-scale data processing have either focussed on a batch-oriented style of processing (e.g. MapReduce), or they have provided near-realtime computations (e.g. event processing) instead. For several use cases, both styles of computations are required at the same time. Lambda architectures try to combine both approaches and provide a unified approach. As part of this seminar paper, differences between both computing styles should be outlined. Next, the idea of a unified lambda architecure as well as appropriate examples should be introduced and characterized. This topic is mainly intended for Master students.

    Supervision: Benjamin Erb

  • ScriptGen und PRISMA: Algorithmen für das Protocol Reverse Engineering (assigned)

    Die Analyse von unbekannten Netzwerkprotokollen erfordert spezialisierte Algorithmen zur automatischen Erkennung von syntaktischen und semantischen Strukturen in Datenströmen. Verschiedene Algorithmen wurden dazu entwickelt und angepasst. Zwei Algorithmen, ScriptGen und PRISMA, sollen im Rahmen dieser Arbeit aufbereitet, erklärt und verglichen werden.

    Supervision: Stephan Kleber

  • Auf der Suche nach "der" Physically Unclonable Function (assigned)

    Physically Unclonable Functions (PUFs) nutzen physikalische Eigenschaften von Hardwareinstanzen aus, um spezifisches, einzigartiges und nicht nachahmbares Verhalten von Algorithmen auf diesem einen Gerät zu erlangen. Insbesondere im Bereich der IT-Sicherheit ist ein solches Verhalten für Attestierung und spezielle Nutzung von Verschlüsselung sehr wertvoll. Die exakte Definition von PUFs ist aber keineswegs einfach, weshalb es keine allgemein anerkannte Definition gibt. Diese Arbeit soll die aktuelle Diskussion um diese Definition im Überblick beschreiben und eine eigene Einschätzung dazu entwickeln.

    Supervision: Stephan Kleber

  • Das Oracle Problem beim Fuzzing (assigned)

    Fuzzing ist eine Form des Testens von Implementierungen oder Spezifikationen auf ihre Korrektheit, dies typischerweise bei Themen der IT-Sicherheit im Hinblick auf das Finden von Schwachstellen. Dazu wird ein mehr oder weniger zufällig gewählter Wert einem Programm als Eingabe übergeben. Die Analyse der Ausgabe verrät nun dem Tester im Idealfall, ob ein Fehler bei der Verarbeitung aufgetreten ist, oder nicht. Um eine zuverlässige automatisierte Auswertung liefern zu können, muss der Fuzzer eine Fehler-Ausgabe von einer positiven Rückmeldung der Anwendung unterscheiden können. Das "Oracle Problem" bezeichnet die Schwierigkeit in einer solchen Situation eine sinnvolle Unterscheidung von Programmausgaben treffen zu können. Diese Arbeit soll verschiedene bekannte Lösungsstrategien kurz zusammenfassen und deren Kernidee jeweils darstellen.

    Supervision: Stephan Kleber

  • Padding Oracle Attacks (assigned)

    Verschlüsselungen operieren oft auf Datenblöcken fester Größe. Um beliebig lange Daten verschlüsseln zu können, müssen diese auf Blockgröße aufgefüllt werden. Diese Auffüllung nennt sich Padding. Wenn Daten nun entschlüsselt werden, muss geprüft werden, ob das Padding korrekt ist, da sonst ein Übertragungsfehler vorlag. Bekommt ein Angreifer die Information, ob das Padding einer Nachricht korrekt ist, zum Beispiel durch Fehlermeldungen, so kann er mittels speziell manipulierter Nachrichten beliebig verschlüsselte Nachrichten entschlüsseln.

    Supervision: Henning Kopp

  • Bitcoins (assigned)

    Bitcoin ist die beliebteste dezentrale virtuelle Währung. Die einzelnen Bitcoins werden durch ein Peer-to-peer Netzwerk erzeugt. In dieser Arbeit soll ein Überblick über die Funktionsweise von Bitcoins gegeben werden.

    Supervision: Henning Kopp

  • Cube attacks (assigned)

    Cube attacks sind eine der wenigen rein algebraischen Methoden zur Kryptoanalyse. Unter anderem die Blockverschlüsselung Trivium wurde damit ausführlich getestet. Cube attacks extrahieren lineare Gleichungen aus Schlüssel und Klartextbits, die in einem folgenden Schritt mit bekannten Methoden aus der linearen Algebra einfach gelöst werden können. In diesem Seminar soll die Funktionsweise von Cube attacks zusammen mit modernen Entwicklungen erklärt werden.

    Supervision: Henning Kopp

  • High-Speed Network Intrusion Detection Systems (assigned)

    Ein Netzwerk Intrusion Detection System ist ein System, das Angriffe innerhalb eines Netzwerkes erkennen soll. Die vergleichsweise schnell steigende Bandbreite bei deutlich langsamer wachsender Rechenleistung erfordert immer effizientere Maßnahmen zur Angriffserkennung. Ziel dieser Seminararbeit ist es, einen Überblick über die vorhandenen Ansätze zur Beschleunigung von NIDS zu geben.

    Supervision: Thomas Lukaseder

  • Golden Shield – The Great Firewall of China (assigned)

    Der Öffnung Chinas gegenüber der Weltwirtschaft folgte auch eine Öffnung gegenüber dem Internet. Doch nicht das ganze Internet ist aus dem Reich der Mitte erreichbar. Mit dem Projekt "Goldenes Schild" wurde eine Infrastruktur geschaffen, die Teile des Internets in der Volksrepublik unzugänglich machen. Ziel dieser Seminararbeit ist es, einen Überblick über Ausmaß und Geschichte des "goldenen Schildes" zu bieten und einen Vergleich mit Maßnahmen in anderen Ländern zu ziehen.

    Supervision: Thomas Lukaseder

  • Software-Defined Networking – Chances and Risks for Network Security (assigned)

    Software-Defined Networking bietet die Möglichkeit, die Control Plan und die Data Plane in Netzwerken voneinander zu trennen und ermöglicht so eine vereinfachte Administration durch eine programmierbare, zentrale Steuerung des Netzwerkverkehres, ohne manuell auf die Geräte zugreifen zu müssen. Ziel dieser Seminararbeit ist es, einen Überblick über die sich hieraus ergebenden Möglichkeiten und Risiken im Bezug auf Netzwerksicherheit herauszuarbeiten.

    Supervision: Thomas Lukaseder

  • Sybil Attacks in Vehicular Ad-hoc Networks (assigned)

    In dieser Seminararbeit geht es darum, verschiedene Ansätze zum Erkennen so genannter Sybil Attacks in Fahrzeug-Fahrzeug-Kommunikation zu beprechen. Sybil Attacks sind, in der einfachsten Form, ein Angriff, bei dem ein Angreifer mehrere Identitäten verwendet, um irgendein Ziel zu erreichen bzw. um einen Angriff zu verbessern. Es ist nicht Ziel der Arbeit, einzelne Erkennungsmechanismen zu beschreiben, sondern verschiedene Klassen zu unterscheiden und deren Vor- und Nachteile zu besprechen.

    Supervision: Rens van der Heijden

  • Misbehavior detection in industrial control systems (assigned)

    Industrial control systems are typically distributed systems that are used to monitor and control one or more physical processes, such as those at a chemical factory, nuclear power plant, manufacturing or dams. Failure of these processes can cause catastrophic events or lead to significant financial loss, and thus the safety of these processes is of paramount importance. However, in recent decades, the trend towards increased networking in these systems has led to a number of security issues. This work discusses the detection of attacks in these systems by applying knowledge of the physical processes to verify the correctness or consistency of packets.

    Supervision: Rens van der Heijden

  • Jamming in wireless ad-hoc networking (assigned)

    In dieser Seminararbeit geht es darum, das Problem von Jamming in verschiedenen drahtlosen Szenarien zu beschreiben und Erkennungs- und Präventionsansätze zu besprechen. Ein möglicher Anwendungsfall ist Fahrzeug-Fahrzeug-Kommunikation, wo die zeitnahe Zustellung von Paketen sehr wichtig ist für die Funkionsweise des Netzes. In der Literatur gibt es verschiedene Ansätze und Angreifermodelle, die dieses Problem umgehen können.

    Supervision: Rens van der Heijden

  • Eventual Consistency und CRDTs (assigned)

    In modernen großen verteilten Anwendungen wird häufig die Konsistenz redundanter Daten abgeschwächt, um sowohl Verfügbarkeit zu erzielen wie auch Netzwerkpartitionen zu tolerieren. Gängig ist hier die Eventual Consistency, die zusichert, dass redundante Daten nach einer gewissen Zeit alle Änderungen im System repräsentieren, d.h. wenn man lange genug wartet, nehmen alle Speicher denselben Endwert an, währenddessen gelten jedoch eventuell veraltetete Versionen der Werte. Commutative Replicated Data Types (CRDTs) sind Datenstrukturen, die eine systematische und strukturierte Entwicklung von Anwendungen auf dem Prinzip der Eventual Consistency ermöglichen. Das Seminarthema soll in die Thematik einführen und das Prinzip der CRDTs, ihre Varianten sowie Beispiele dazu präsentieren.

    Supervision: Franz J. Hauck

  • Kubernetes (assigned)

    Docker erlaubt es, durch Betriebssystemvirtualisierung Anwendungen mitsamt ihrer Abhängigkeiten auf fremden Rechnenumgebungen auszuführen. In dieser Arbeit soll die Orchestration Kubernetes für Docker Container vorgestellt werden.

    Supervision: Steffen Kächele

  • Java Multi-tenancy Architekturen (assigned)

    Heutige Cloud Computing Umgebungen nutzen häufig Virtuelle Maschinen, um Anwendungen mehrerer Nutzer voneinander abzugrenzen. In dieser Seminararbeit sollen Ansätze vorgestellt werden, welche eine Isolation auf Ebene der Java Virtual Maschine vornehmen. Eine kritische Auseinandersetzung des Ansatzes rundet die Arbeit ab.

    Supervision: Steffen Kächele

  • The Chubby Lock Service (assigned)

    Google nutzt für die Synchronisation seiner Dienste einen Dienst namens Chubby. Dieser nutzt einen Einigungsalgorithmus welcher Paxos, dem Prototyp aller Einigungsalgorithmen, sehr ähnlich ist. In dieser Seminararbeit soll der Dienst und seine Implementierung vorgestellt werden.

    Supervision: Christian Spann

  • Google Data Storage (assigned)

    Der Google Data Storage ist ein hochverfügbarer Datenspeicherdienst. Er synchronisiert seine Zugriffe mittes Paxos. In dieser Seminararbeit soll die Architektur und die von dem Speicherdienst gewährleistete Konsistenz beleuchtet und vorgestellt werden.

    Supervision: Christian Spann

Description and general information

Integration of module into courses of studies:
Informatik, M.Sc.: Seminar
Medieninformatik, M.Sc.: Seminar
Software-Engineering, M.Sc.: Seminar

Informatik, Dipl.: Hauptseminar
Medieninformatik, Dipl.: Hauptseminar
Modes of learning and teaching:
Forschungstrends in Verteilten Systemen, 2S, 4LP
Module authority:
Prof. Dr. Frank Kargl
Lecturer:
Prof. Dr. Frank Kargl, Prof. Dr.-Ing. Franz J. Hauck
Language:
Deutsch, Präsentationen in Deutsch oder Englisch (bevorzugt)
Turn / Duration:
jedes Semester / ein volles Semester
Requirements (contentual):
Grundlagen in Rechnernetzen, Proseminar, Grundlagen Verteilter Systeme (empfohlen)
Requirements (formal):
-
Basis for:
-
Learning objectives:
Das Forschungsseminar verfolgt zwei Ziele. Einerseits sollen Studierende umfassend in wissenschaftlichen Arbeitstechniken geschult werden, in dem ein (vereinfachter und verkürzter) Forschungszyklus bestehend aus Problemanalyse, Literaturrecherche, eigenem Beitrag, Publikation und Präsentation vor Fachpublikum durchlaufen wird. Andererseits dient die Auseinandersetzung mit einem aktuellen Forschungsthema aus dem Bereich der Verteilten Systeme und dient so der Vertiefung und eventuellen Vorbereitung auf ein Thema einer Masterarbeit.
Content:
Zu Beginn des Seminars werden Themen des wissenschaftlichen Arbeitens (z.B. Literaturrecherche, Schreiben einer Publikation, Präsentationstechniken) eingeführt, um den Studenten eine methodische Hilfestellung zu geben. Die Erstellung der eigentlichen Ausarbeitung und Präsentation erfolgt in individueller Betreuung. Die Ergebnisse werden in einer Abschlusspräsentation vorgestellt.
Literature:
Wird je nach Thema zu Beginn der Veranstaltung bekannt gegeben.
Grading procedure:
Leistungsnachweis über erfolgreiche Teilnahme. Diese umfasst Anwesenheit und enthält Ausarbeitung, Vortrag und Mitarbeit
Estimation of effort:
Präsenzzeit: 30 h
Vor- und Nachbereitung: 90 h
Summe: 120 h
Logo: Certificate since 2008 - audit family-friendly university Logo: StudyCheck - top university Logo: StudyCheck - digital readiness Logo: Universities for openness, tolerance and against xenophobia