T. Schweikert, „Implementing a Byzantine-fault-tolerant replication middleware between an audit log service and Immudb,“ Projektarbeit VS-2021-25P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2022 – Abgeschlossen.
T. Nguyen, „Implementation of a variety of features for the in.Crease regulation module,“ Projektarbeit VS-2022-07P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2022 – Abgeschlossen.
T. Nguyen, „in.Crease regulation editor,“ Projektarbeit VS-2021-39P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2022 – Abgeschlossen.
„Analyse von Netzwerkdaten zur Identifizierung von Distributed Denial-of-Service-Attacken mithilfe von Hadoop,“ Projektarbeit in Business Analytics VS-2021-14P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
U. Eser, „Benchmarking of BFT-SMaRt with YCSB,“ Projektarbeit VS-2021-22P, G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2021 –
Abgeschlossen.
The YCSB is an open source benchmarking specification and framework for evaluating the performance of database-like software. Since its release in 2010, it has evolved into a de facto stan-dard for benchmarking commercial products like Redis, HBase, Cassandra and many others. Not only in the industry, but also in the scientific community, many researchers are using the YCSB to evaluate and compare their scientific findings and software artifacts against other published solutions. This project should create a YCSB Client implementation and workloads for benchmarking our platform for replicated state-machines built within our institute in the recent years. State-machine replication is a technique for providing high levels of fault-tolerance. In research projects we extended the existing BFT-SMaRt framework for our use. In the future we would like to use the results of this project to evaluate performance changes when extending the framework further. Students with previous knowledge in these areas are preferred, but the necessary skills can also be acquired during the project. At the end of the project, a thorough comparison of the newly YCSB-enabled software artifacts should be conducted.
M. Kempfle, „Consensus replacement in a modular state-machine replication framework: trial and evaluation,“ Masterarbeit VS-2021-11M, G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
B. Buffinton, „Database scheme evolution in CI/CD environments,“ Bachlor's Thesis VS-2021-09B, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
J. Ulrich, „Deployment setup for in.Crease,“ Projektarbeit VS-2021-08P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
L. Dubies, „EEG Compression/ EEG using Smartphones,“ Projektarbeit VS-2021-01P, M. Mehdi (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
C. Ritzer, „EEG data visualizer for TinnituSense smartphone app,“ Projektarbeit VS-2021-03P, M. Mehdi (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
F. Diemer, „Efficient acquisition data upload from mHealth applications to a back-end server for persistent storage,“ Masterarbeit VS-2021-13M, M. Mehdi (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
S. Knoblauch, „Entwicklung einer web-basierten Anwendung für die Konfiguration von IoT-Komponenten,“ Projektarbeit VS-2021-20P, A. Heß (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2021 –
Abgeschlossen.
Das SORRIR Forschungsprojekt befasst sich mit der Entwicklung eines Frameworks für resiliente IoT-Systeme. Ein Aspekt dieses Frameworks ist ein Degradierungsmechanismus, welcher den Betriebsmodus einer IoT-Komponente automatisch anpasst, falls es zu Ausfällen von angebundenen (Teil-)Komponenten kommt. Damit soll sichergestellt werden, dass einzelne Komponenten weiterhin arbeiten, wenn auch mit reduzierter Funktionalität. In dieser Projektarbeit soll eine web-basierte Anwendung entwickelt werden, welche die Konfiguration dieses Mechanismus mittels Drag & Drop Elementen erleichtert und damit eine leichte Programmierung des Verhaltens einer IoT-Komponente ermöglicht. Gerne können hier eigene Ideen zur Umsetzung eingebracht werden. Aus der graphischen Konfiguration sollen Dateien generiert werden, die das SORRIR-Framework zur Laufzeit verwenden kann.
P. Backes, „Impact of HTTP/3 on Microservice Architectures,“ Masterarbeit, B. Erb and D. Meißner (Betreuung), F. Kargl and F. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2021 – Abgeschlossen.
S. Reichersdörfer, „in.Crease Exam,“ Projektarbeit VS-2021-06P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
C. Hartig, „in.Crease-Reg: Design and implementation of a web application for student regulations,“ Projektarbeit VS-2021-02P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2021 –
Abgeschlossen.
Imagine you could read all regulations of your study program online. You could see diffs to previous version, see only the paragraphs that matter to you, and you can follow links to referred paragraphs and even other regulations. Official comments may explain complex wordings. Sounds interesting? You could work towards that with this project. As part of the in.Crease web application, we want to create a regulation module that does exactly that. Technologies in use are among others Angular, TypeScript, Node.js and PostgreSQL. The project has to design the user story, the user interface, the interface between frontend and backend, the data model, and the caching strategy for improving server performance. A lot of previous thoughts are available as a starting point, as is a framework of components for the UI, e.g., a sophisticated tree component and the main component to select context and the type of module of the service. As the envisioned service is rather complex, this topic could easily be split among multiple students or into multiple parts for a single student. Pairs of students are also welcome.
J. Ulrich, „Kubernetes deployment for in.Crease,“ Projektarbeit VS-2021-21P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
M. Strobel, „Login and user mangement for Angular and Shibboleth,“ Bachelorarbeit VS-2021-17B, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2021 –
Abgeschlossen.
Angular is a web framework for single-page application, i.e., most business logic resides in the browser not on the server. The server is contact by a REST interface, mainly used to get direct access to the application data. Shibboleth is an authentication technology used also by KIZ to authenticate and authorise web access. In this work, a simple demo application has to be developed together with a concept for authenticating users and authorisation of their application-logic and REST-based data accesses. Ideally the concept is some sort of library including guidelines, and is tested against the KIZ identity provider. This work includes some basic user management in the application to recognise already known users and attach preferences etc. to it. Challenges are user-authentication expiry during user sessions and version updates in the backend server during the life time of the single-page application.
J. Dispan, „Praktische Umsetzung eines modifizierten Dining-Cryptographer Protokolls,“ Projektarbeit VS-2021-07P, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 –
Abgeschlossen.
An blockchain-basierte Anwendungen wird oft die Forderung nach Privatsphäre der teilnehmenden Parteien gestellt. Um diese zu erfüllen, werden anonyme Broadcasts innerhalb eines Netzwerkes benötigt. Diese können durch sogenannte „Dining-Cryptographer Netzwerke“ (DCNs) realisiert werden. DCNs sind anfällig für Denial-of-Service Attacken. Bereits ein einzelner Angreifer kann gesendete Broadcasts in einem Netzwerk für alle weiteren Mitspieler unlesbar machen, während er/sie selbst weiterhin alle Nachrichten empfangen kann. Ziel dieser Arbeit ist das Implementieren der Resultate einer früheren Bachelorarbeit, welche eine Lösung für dieses Problem erarbeitet hat.
J. Mayer, „Visualisation of consensus algorithms,“ Projektarbeit VS-2021-10B, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
C. Michl, „Wirksamkeit verschiedner informatikbezogener Erklärvideos,“ Projektarbeit VS-2021-04P, M. Sommer and F. J. Hauck (Betreuung), M. Sommer and F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2021 – Abgeschlossen.
M. Karthan, „Angular modules and data input interfaces for the in.Crease information system,“ Projektarbeit VS-2020-27P, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2020 – Abgeschlossen.
A. Heß, „Bootstrapping of a replica group using Intel SGX,“ Projektarbeit, VAPS, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2020 – Abgeschlossen.
F. Diemer, „EEG application for Android: Backend,“ Projektarbeit, M. Mehdi (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2020 – Abgeschlossen.
„Erweiterung der Lerntheke für das BOGY-Praktikum an der Universität Ulm,“ Projektarbeit FDPI, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2020 – Abgeschlossen.
L. Hennig, „Extending TinnituSense Android app with EEG,“ Projektarbeit, M. Mehdi (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2020 – Abgeschlossen.
„IoT Ausfallsicherheit durch Redundante Netzwerkstrukturen,“ Bachelorarbeit VS-2021-12B, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2020 –
Abgeschlossen.
Das Internet der Dinge (IoT) bietet durch seine unvermeidliche physikalische Verteilung besondere Herausforderungen für die Entwicklung ausfallsicherer IoT Software. Während Software-Komponenten, etwa die Analyse von Sensordaten, auf verschiedene physikalische Komponenten verteilt werden können, unterliegen die Sensoren, Basisstationen und Gateways physikalischen Grenzen. Diese müssen durch Netzwerkkommunikation überbrückt werden und bergen somit weitere Ausfallrisiken. Ziel dieser Arbeit ist es, bestehende Arbeiten zu redundanten Netzwerken in IoT-Umgebungen zu analysieren und zusammenzufassen. Aufbauend auf diesen Erkenntnissen soll dann ein Konzept entwickelt werden, wie eine Beratung zu nötigen Redundanzen in eine Softwareentwicklungsumgebung für IoT Systeme eingebunden werden kann. Geeignet für Studierende mit Interesse an IoT, Ausfallsicherheit und Netzwerkkommunikation. This project can also be completed in English. Please contact me for further details.
A. Heß, „Verwirklichung eines Privatsphäre garantierenden Broadcast Protokolls,“ Masterarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2020 –
Abgeschlossen.
Die Verbreitung von Transaktionen in Blockchain-Netzwerken kann viele Informationen über deren Nutzer preisgeben. Ins- besonder muss die Vertraulichkeit von Zahlungsinformationen geschützt werden. Um diesen Schutz zu erreichen, haben wir ein Protokoll entworfen, welches die Privatsphäre dieser Trans-aktionen gewährleistet und Entwicklern die nötige Flexibilität für verschiedenste Anwendungsszenarien bereitstellt. Doch es bleiben viele offene Fragen für die Umsetzung in der Praxis, beispielsweise die Anpassung an praktische Begebenheiten und die Erstellung der nötigen Gruppen. Ziel dieser Arbeit ist es, einige der offenen Fragen zu klären und das Protokoll im Rahmen einer Proof-of-Concept-Implementierung zu evaluieren. Geeignet für Studierende mit Erfahrung Netzwerkprogrammierung. This project can also be completed in English. Please contact me for further details.
S. Merkel, „Web Content Integrity Protection,“ Masterarbeit VS-2020-13M, D. Meißner (Betreuung), F. Kargl and F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2020 –
Abgeschlossen.
Web clients can not determine whether they have been delivered the same version of a web application as the rest of the world, which allows a web server to deliver manipulated content to specific users, allowing them to bypass implemented functionality or inject other malicious behavior. For example, a malicious web application provider who offers a web application with end-to-end encryption functionality can deliver a manipulated implementation of the encryption mechanism to targeted users and obtain access to otherwise unreadable messages or secret keys. The thesis introduces a concept to authenticate web applications and thus prevent covert attacks by web application providers through different resource versions on individual users. Previous work has created more transparency in resource management, but still allows the use of different resource versions, violates privacy, or is based on a trust model without verification possibilities. The developed concept is based on a verifiable trust model, where all users accept only the same resource version, forcing web application providers to offer the correct web application or increasing the risk for malicious web operators of detecting their manipulated resources. Two different approaches for the verifiable trust model were designed based on available mechanisms and implemented and evaluated in proof-of-concept prototypes. By using the developed concept, web application providers are able to deliver an authenticated web application and thus provide functionality to all users in a trustworthy manner, while at the same time increasing the probability to catch malicious web application providers.
M. Karthan, „Angular frontend for the in.Crease information system,“ Projektarbeit VS-P25-2019, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2019 – Abgeschlossen.
C. Stuhler, „BOGY - Einführung in die Informatik an der Universität Ulm,“ Projektarbeit FDPI, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2019 – Abgeschlossen.
A. Heß, „Development of a Software Component for Unique Signatures Using Intel SGX,“ Projektarbeit VAPS, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2019 –
Abgeschlossen.
Replizierte Systeme basieren oft auf Einigungsalgorithmen. Im Falle von beliebigen (byzantinischen Fehlern) werden N = 3f+1 Replikate benötigt bei f zu tolerierenden Fehlern. Mit Hilfe von vertrauenswürdigen Komponenten kann dies auf N = 2f+1 reduziert werden. Ein so genannter USIG ist so eine Komponente. Sie signiert eine Nachricht und zählt dabei eine von außen unveränderliche Sequenznummer hoch. Aufgabe der Arbeit ist es, ein Konzept und eine Implementierung mit Hilfe von Intel SGX zu entwickeln, die aus einer Java-Anwendung heraus genutzt werden kann. Herausforderungen ist neben der Implementierung die geeignete Initialisierung der Komponente.
M. Kempfle, „Integration of etcd4j and BFT-SMaRt Parallel,“ Projektarbeit, G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2019 –
Abgeschlossen.
In our recent research, teaching, and project work, we re-implemented etcd – a popular and well-known fault-tolerant key-value store – in Java, resulting in a multithreaded version that is easier to integrate into our research prototypes. Additionally, recent projects have looked at the State Machine Replication framework BFT-SMaRt, especially our own parallelized version of it, and worked on a way to enable snapshotting functionality. This project aims at integrating these two prototypes – etcd4J and BFT-SMaRt Parallel – into one working project, to yield a fully working, state machine replicated and fault-tolerant version of etcd4J. Further work includes testing and benchmarking this solution. The project can be modified to fit 8 or 16 ECTS.
M. Benz, „Modular State Machine Replication,“ Masterarbeit, G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2019 – Abgeschlossen.
N. Fröhlich, „Privacy Increasing Group Creation for Networks,“ Masterarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2019 –
Abgeschlossen.
Peer-to-peer networks sometimes use group based comm- unication protocols. These share messages within a group of participants, e.g., to enhance privacy or provide fault tolerance. But group-based network protocols are faced with the hard problem of creating suitable communication groups. This problem is especially hard if you want to optimize for privacy. For privacy-preserving protocols we want communication partners that do not collude. The goal of this thesis is to design a scheme to classify network participants by collusion probability and deduce a suitable group size for minimal collusion. The result of the thesis should be a proof of concept implementtation of the scheme, as well as a theoretical evaluation of the probabilities involved.
T. Nieß, „RESTful Backendserver für in.Crease,“ Projektarbeit VAPS, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2019 – Abgeschlossen.
„Automatisierte Vergabe von temporären administrativen Zugängen für heterogene Systeme,“ Bachelorarbeit, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2018 –
Abgeschlossen.
In der Arbeit soll eine Zugriffskontrolle für administrative Zugänge in einem heterogenen verteilten System entwickelt werden. Diese Systeme werden für die Demonstration von Einsatzszenarien genutzt. Der Zugang muss daher mit Administratorrechten erfolgen, was sich bei vielen der beteiligten Systemen nicht durch unterschiedliche Benutzer abbilden lässt. Um das Problem der Zugangsbeschränkung und des Nachweises von getätigten Aktionen zu behandeln, sollen diese Zugänge von einer zentralen Stelle aus vergeben und wieder zurückgezogen werden. Die Arbeit erstellt eine Anforderungsanalyse, ein Konzept sowie eine Umsetzung für die wichtigsten Einzelsysteme.
U. Eser, „Design einer flexiblen Peer-to-Peer Bibliothek,“ Bachelorarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2018 –
Abgeschlossen.
Peer-to-Peer Systeme werden Heute in einer vielfalt von Situationen eingesetzt. Dies geht von verteilung von Dateien für Programme bis hin zu Transaktionen und Blöcken in modernen Blockchain Systemen. Zur implementierung dieser Systeme kann oft nicht auf eine geeignete Bibliothek zurück gegriffen werden, da diese nicht verfügbar sind. Ziel dieser Arbeit ist die Analyse von Anforderungen an eine geeignete Peer-to-Peer Bibliothek, sowie die Implementierung eines Prototypen der Bibliothek und dessen Evaluation. Der genaue Umfang richtet sich nach dem Vorwissen, dem gewählten Fokus und der Art der Arbeit.
F. Hohberger, „Design einer generischen API für Gruppenkommunikationsprotokolle,“ Masterarbeit VS-M09-2018, C. Spann (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2018 –
Abgeschlossen.
Die Implementierung von Einigungsalgorithmen wie zum Beispiel Paxos oder dessen Erweiterung Vertical Paxos stellen den Programmierer wiederholt vor ähnliche Designentscheidungen. Eine generische API könnte eine Basis für die Wiederverwendung vieler Teilkomponenten schaffen und so den Aufwand für die Implementierung neuer Algorithmen reduzieren. Ziel der Arbeit ist der Entwurf einer solchen API.
M. Benz, „Enabling Snapshotting in Multithreaded BFT-SMaRt,“ Projektarbeit, G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2018 –
Abgeschlossen.
BFT-SMaRt ist eine Java Library für die einfache Entwicklung von Anwendungen, die durch State Machine Replication ausfallsicher und sogar robust gegenüber beliebigen (byzantinischen) Fehlern laufen können. Ziel unserer Forschung ist die Beschleunigung von State Machine Replication, wozu wir in den letzten Monaten BFT-SMaRt um Multithreading-Komponenten erweitert haben. Ein Problem hierbei ist, dass das für die Fehlertoleranz zwingend notwendige Snapshotting erheblich erschwert wird und zur Zeit für unsere Optimierungen ausgeschaltet bleiben muss. Dieses Projekt soll auf der Basis vorangegangener Projekte Wege ergründen, wie Snapshotting in Verbindung mit Multithreading in BFT-SMaRt reaktiviert werden kann, sowie Implementierungen und Messungen der gefundenen Ansätze bereitstellen.
O. Finnendahl, „Enabling Snapshotting in Multithreaded BFT-SMaRt,“ G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2018 –
Abgeschlossen.
Für die Verwaltung großer verteilter Systeme werden in der Regel Koordinierungsdienste wie ZooKeeper oder etcd eingesetzt. Um maximale Ausfallsicherheit und dennoch starke Konsistenzgarantien zu gewährleisten, sind solche Koordinierungsdienste durch State Machine Replication repliziert. Ein Problem dieses Replizierungsansatzes ist die zumeist schlechte Ausnutzung heutiger Multicore-Systeme. In unserer Forschung beschäftigen wir uns mit Methoden, SMR-replizierte Software zu beschleunigen und auch Multithreading zu erlauben. Hierfür sind unter anderem vergleichende Messungen mit etcd vorgesehen. Da etcd selbst komplett in Go geschrieben ist, sich unsere Forschung momentan jedoch auf Java konzentriert, soll in diesem Projekt die nach außen hin sichtbare API und dafür nötige Funktionalität von etcd in Java nachimplementiert werden. Es können dabei nahezu alle Schwierigkeiten die sich durch die Verteilung ergeben (Netzwerkkommunikation und -fehler, Konsensus, etc.) vernachlässigt werden. Es wird primär die Funktionalität, die eine nicht-verteilte Installation von etcd mit einem Host bereitstellen würde, verlangt.
J. Dispan, „Evaluation von Threshold Cryptography für k-anonyme Dining Cryptographer Netzwerke,“ Bachelorarbeit VS-B16-2019, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2018 –
Abgeschlossen.
Dining Cryptographer Netzwerke bieten eine Möglichkeit um in einer Gruppe anonym eine Nachricht an alle zu verbreiten. Diese Konstruktion benötigt jedoch sehr viele Nachtrichten und erzeugt daher viel Overhead. Um die Effizienz dieser Netzwerke zu verbessern, haben von Ahn. et al. das Konzept der k-Anonymität auf sie angewandt: Kleinere Gruppen im Gesamtnetzwerk erlauben eine Einschränkung der Anonymität, erzeugen jedoch deutlich weniger Overhead. Um die k-Anonymitätsgarantie zu stärken, bietet die Kryptografie das Konzept der Threshold-Kryptografie an: Nur wenn ausreichend Nutzer sich beteiligen, kann die Nachricht entschlüsselt werden. Ziel dieser Arbeit ist es, die Umsetzung dieser Technik für k-DC Netze zu untersuchen.
T. Nguyen, „Parallelizing a Java Re-implementation of etcd,“ Bachelorarbeit, G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2018 –
Abgeschlossen.
Ein kürzlich abgeschlossenes Studierendenprojekt reimplemen-tierte den verteilten Key-Value Store etcd in Java. Um diese Implementierung für zukünftige Forschung an fehlertoleranten Systemen weiter zu verwenden, soll dieses Projekt die Java-Implementierung parallelisieren. Durch intelligentes Locking in der zugrunde liegenden Datenstruktur soll ein möglichst hoher Grad an Parallelität erreicht werden, während die Korrektheit des Systems in allen Fällen bestehen bleibt. Anschließend sollen durch Messungen die Performance-veränderungen gegenüber der sequentiellen Variante gezeigt werden.
L. Schmid, „PriPlus: Userfriendly Privacy for a Blockchain Filestorage,“ Projektarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2018 –
Abgeschlossen.
PriCloud ist ein Projekt mit dem Ziel einen Privatsphäre erhaltenden Cloudspeicher zu erhalten. Hierfür wird im Insitut an einem Prototypen in Python gearbeitet. Dieser bietet jedoch nur Konsolenzugriff auf die Subsysteme des Prototypen. Ziel des Projektes ist es ein fundiertes und geeignetes User Interface zu entwerfen und dieses praktisch zu erstellen.
N. Ritter, „Simulation von Broadcastprotokollen in NS3,“ Bachelorarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2018 –
Abgeschlossen.
Um Transaktionen in Blockchain Netzwerken zu verteilen wird üblicherweise ein Broadcast Mechanismus verwendet. Dieser bietet jedoch Angriffsfläche für verschiedene Arten der Deanonymisierung. Da die Privatsphäre im Umgang mit Geld jedoch besonders wichtig ist, arbeiten wir an einem Protokoll um diese zu schützen. Derzeit existieren bereits einige Vorschläge für verwandte Protokolle. Für vergleichbare Untersuchungen sollten alle unter denselben Bedingungen evaluiert werden. Um diese Umstände zu erreichen, möchten wir dieselbe Simulationsumgebung für alle verwenden. Ziel der Arbeit ist die Implementierung verschiedener Protokolle und deren Auswertung. Literaturrecherche fällt je nach gewähltem Umfang und Arbeitsart an.
P. Speidel, „Anonymity in Peer-to-Peer Storage Systems,“ Masterarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2017 – Abgeschlossen.
P. Butz, „Implementation, Deployment and Evaluation of UDS,“ G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2017 –
Abgeschlossen.
The increasing world wide spread of computers and mobile devices combined with better international network set high demands on service providers. A huge number of parallel access to services offered in the Internet requires huge throughput. At the same time, the availability of services is key, especially in areas like financial and cloud services. Data centers provide these requirements by replicating critical services and data among numerous computers. However, this distribution means that hardware failures are not the exception but become the rule. The State Machine Replication (SMR) approach is an attempt to allow the recovery of crashed servers. Additionally, manipulations of servers and software failures are still a problem of such systems. Byzantine fault tolerant systems build up on state machine replication and face this issue by allowing clients to validate the correctness of service responses. However, SMR requires the client requests to arrive in the same order on every server, so that this has to be decided by a consensus. Furthermore, SMR requires deterministic processing, so that the states among all machines are equal, which is usually ensured by sequential request processing. This seems inefficient, especially considering multi core and multi CPU hardware of today's server systems. Enabling parallel request processing while fulfilling the demands of SMR requires a deterministic scheduler. These are complex and more resource-intensive than general schedulers. The aim of this thesis is the implementation of such a scheduler and the evaluation of the performance to gain knowledge about the efficiency of those schedulers to compare the overhead in scheduling with the gained parallelization. As a result, the overhead in deterministic scheduling is a huge factor, which only allows a performance improvement up to a certain point based on the cost of computations within critical sections.
M. Jäckle and C. Vogel, „Provisioning, Monitoring and Snapshotting of BFT-SMaRt,“ G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2017 –
Abgeschlossen.
This project deals with the implementation of a platform to support the further development of the BFT-SMaRt Java library. In addition, a currently disabled feature, called checkpointing, should be examined closely and maybe reimplemented in the parallel version of BFT-SMaRt which uses UDS. The first part resulted in a feature-rich platform that encompasses automatic deployment and provisioning as well as live-monitoring capabilities for application related metrics. Parallel checkpointing is not working yet, but was researched extensively and some base work was done to facilitate future developers entering the project. In detail, an extended documentation for BFT-SMaRt was created and several approaches were discussed.
„Vergleich Statistischer Informationsverteilung in Peer-to-Peer Netzen,“ Bachelorarbeit, H. Kopp and D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2017 –
Abgeschlossen.
Cryptocurrencies including Bitcoin are the focus of ongoing research, with many practical implementation questions (such as the optimal block size) left unanswered. There exist a number of Bitcoin simulators that simulate various aspects of the network in order to help answer these questions and design new cryptocurrencies. We perform a comparative study of three simulators (ns-3, Shadow and simbit) and evaluate their user friendliness and ease of use, performance and scaling characteristics, adaptability to other cryptocurrencies and the range of parameters which they can simulate. We present these findings in the form of a detailed description for each simulator as well as a tabular overview. In addition to this, we perform a comparison of the simulation performance and provide the results in the form of a graph.
A. Martel, „Vergleich Statistischer Informationsverteilung in Peer-to-Peer Netzen,“ Bachelorarbeit, D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2017 –
Abgeschlossen.
With classical broadcast mechanism, a source detection algorithm is fairly successful. There exist proposals to break the symmetry and make source detection hard. In this thesis, two of those proposals, adaptive diffusion and dandelion, should be implemented in a simulator and evaluated for interesting characteristics in realistic networks.
J. Reutlinger, „Continious integration für in.Crease,“ F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2016 – Abgeschlossen.
„EduMi - Erweiterung um eine automatische Benotung,“ D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2016 – Abgeschlossen.
„EduMi - Educational Middleware,“ D. Mödinger (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2016 – Abgeschlossen.
A. Knittel, „Implementation of asynchronous request handling in BFT SMaRt,“ G. Habiger (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2016 –
Abgeschlossen.
Current research efforts of our institute include a project on deterministic scheduling of multithreaded applications for State Machine Replication (SMR) systems with Byzantine Fault Tolerance (BFT). One part of this project aims to integrate our own work on deterministic scheduling with the BFT SMaRt library. Currently, BFT SMaRt only supports synchronous request-response patterns, whereas our planned SMR platform needs these patterns to be asynchronous. The goals of this project are (i) to analyze the existing BFT SMaRt codebase, (ii) to implement the necessary interfaces for asynchronous request handling and (iii) to integrate these changes into the existing BFT SMaRt libraries.
S. Wieluch, „BANDIT - Bat Indiviudal Identity,“ Bachelorarbeit VS-B09-2014, J.-P. Elsholz (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2014 –
Abgeschlossen.
Bat individual identity (BANDIT) is the idea to apply traditional speaker recognition to identify individual bats. This helps biologists in their researches, reducing the analysing time of recorded bat signals drastically. This thesis uses mel frequency celspral coefficients for feature extraction and tests three different learning strategies (gaussian mixture model, k-nearest-neighbour and support vector machines) on their ability to identify individual bats. Additionally, the speaker recognition is optimized for the best results. The thesis shows that identifying bats by their calls is possible and depending on the learning strategy good results can be achieved (Saccopteryx bilineata: 100% with 4 bats, 75.8% with 10 bats; Micronycteris microtis: 82.8% with 4 bats).
S. Schwerin, „Identifikation optimaler Einsatzbereiche der Einigungsalgorithmen Paxos und Vertical Paxos,“ Masterarbeit, C. Spann (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2014 –
Abgeschlossen.
Die beiden Einigungsalgorithmen Paxos und dessen Erweiterung Vertical Paxos sind strukturell grundverschieden. Das daraus resultierende, vermutlich sehr unterschiedliche Verhalten soll in dieser Arbeit in geeigneten Evaluationen untersucht und beschrieben werden. Der Unterschied der Verfahren ergibt sich in der Verteilung des Aufwands zur Fehlererholung. In Paxos kann jeder Knoten selbst direkt mit Fehlern umgehen, in Vertical Paxos gibt es einen externen Knoten, der das System überwacht.
B. Erb, „Concurrent Programming for Scalable Web Architectures,“ Diplomarbeit VS-D01-2012, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2012 –
Abgeschlossen.
Web architectures are an important asset for various large-scale web applications, such as social networks or e-commerce sites. Being able to handle huge numbers of users concurrently is essential, thus scalability is one of the most important features of these architectures. Multi-core processors, highly distributed backend architectures and new web technologies force us to reconsider approaches for concurrent programming in order to implement web applications and fulfil scalability demands. While focusing on different stages of scalable web architectures, we provide a survey of competing concurrency approaches and point to their adequate usages.
C. Staudenmayer, „Replikation des HDFS Namenodes,“ Diplomarbeit VS-D11-2011, C. Spann (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2012 –
Abgeschlossen.
In diesar Arbeit wurde der HDFS Namenode mit Virtual Nodes nebenläufig repliziert. Dabei wurden die Java Synchronisationsmechanismen durch die von 'Virtual Nodes' ersetzt und die Nebenläufigkeit im Gegensatz zu anderen Arbeiten beibehalten. Die Lauffähigkeit wurde demonstriert, weitergehende Benchmarks müssen die Effizienz aber noch belegen.
F. Hofherr, „Synchronisierungstechniken für replizierte verteilte Objekte,“ Diplomarbeit VS-D05-2010, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2010 – Abgeschlossen.
C. Näveke, „Konfliktvorraussage für lock-basierte Synchroninierung,“ Diplomarbeit VS-D06-2009, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2009 – Abgeschlossen.
S. Kächele, „nOSGi - Eine native OSGi Implementierung,“ Diplomarbeit VS-D05-2009, J. Domaschka and H. Schmidt (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2009 – Abgeschlossen.
M. Pfeil, „Optimising and Self-adaptive Strategy Selection in a Replication Framework,“ Masterarbeit VS-D07-2009, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2009 – Abgeschlossen.
V. Lang, „Transaktionaler Speicher für Objektreplikation,“ Diplomarbeit VS-D02-2009, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. f. Vert. Sys., Univ. Ulm, 2009 – Abgeschlossen.
M. Meßner, „Eclipse-Plugin zur Analyse von Thread-Synchronisierung in Java-Programmen,“ Diplomarbeit VS-D04-2007, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2007 – Abgeschlossen.
M. Herchel, „Transparent Integration of Passive Replication in a Fault-Tolerant Framework for Distributed Objects,“ Masterarbeit VS-M02-2007, J. Domaschka (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2007 – Abgeschlossen.