Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik

Verteilte Systeme (VS) - Vorlesung (SS 2019)

UnivIS-Informationen zur Vorlesung

Verteilte Systeme (VS)

Dozentinnen/Dozenten
Dr.-Ing. Tobias Distler, Dr.-Ing. Jürgen Kleinöder

Angaben
Vorlesung
2 SWS, ECTS-Studium, ECTS-Credits: 2,5
nur Fachstudium, Sprache Deutsch
Zeit und Ort: Di 12:15 - 13:45, 0.031-113

Studienfächer / Studienrichtungen
WPF INF-BA-V-VSB 5-6
WPF INF-MA ab 1
WF IuK-BA 6
WF ICT-MA 1-4
WPF IuK-BA 5-6
WPF IuK-MA-KN-INF 1-4
WPF IuK-MA-ES-INF 1-4
WPF ICT-MA-ES 1-4
WPF ICT-MA-NDC 1-4
WPF ME-BA-MG6 5-6
WPF ME-MA-MG6 1-3

Inhalt der Vorlesung

Verteilte Systeme bestehen aus mehreren Rechnern, die über ein Netzwerk miteinander verbunden sind und einen gemeinsamen Dienst erbringen. Obwohl die beteiligten Rechner hierfür in weiten Teilen unabhängig voneinander agieren, erscheinen sie ihren Nutzern gegenüber in der Gesamtheit dabei trotzdem als ein einheitliches System. Die Einsatzmöglichkeiten für verteilte Systeme erstrecken sich über ein weites Spektrum an Szenarien: Von der Zusammenschaltung kleinster Rechenknoten zur Sammlung von Daten im Rahmen von Sensornetzwerken über Steuerungssysteme für Kraftfahrzeuge und Industrieanlagen bis hin zu weltumspannenden, Internet-gestützten Infrastrukturen mit Komponenten in Datenzentren auf verschiedenen Kontinenten.

Ziel der Vorlesung ist es, die sich durch die speziellen Eigenschaften verteilter Systeme ergebenden Problemstellungen zu verdeutlichen und Ansätze zu vermitteln, mit deren Hilfe sie gelöst werden können; Beispiele hierfür sind etwa die Interaktion zwischen heterogenen Systemkomponenten, der Umgang mit erhöhten Netzwerklatenzen sowie die Wahrung konsistenter Zustände über Rechnergrenzen hinweg. Gleichzeitig zeigt die Vorlesung auf, dass die Verteiltheit eines Systems nicht nur Herausforderungen mit sich bringt, sondern auf der anderen Seite auch Chancen eröffnet. Dies gilt insbesondere in Bezug auf die im Vergleich zu nicht verteilten Systemen erzielbare höhere Widerstandsfähigkeit eines Gesamtsystems gegenüber Fehlern wie den Ausfällen ganzer Rechner oder sogar kompletter Datenzentren.

Ausgehend von den einfachsten, aus nur einem Client und einem Server bestehenden verteilten Systemen, beschäftigt sich die Vorlesung danach mit der deutlich komplexeren Replikation der Server-Seite und behandelt anschließend die Verteilung eines Systems über mehrere, mitunter weit voneinander entfernte geografische Standorte. In allen Abschnitten umfasst die Betrachtung des jeweiligen Themas eine Auswahl aus Grundlagen, im Praxiseinsatz befindlicher Ansätze und Techniken sowie für den aktuellen Stand der Forschung repräsentativer Konzepte.

Unter anderem werden in der Vorlesung folgende Themen behandelt:
  • Serialisierung von Nachrichten (XDR, Google Protocol Buffers)
  • Fernmethodenaufrufe (XML-RPC)
  • Spekulative Ausführung in verteilten Dateisystemen (NFS)
  • RDMA-basierte Fernaufrufe (DaRPC)
  • Fehlertolerante Replikation von Diensten (Paxos)
  • Georeplizierte und weitverteilte Systeme (Pileus, Yahoo PNUTS, Akamai)
  • Konfliktfreie replizierte Datentypen (CRDTs)
  • Synchronisation von Uhren (NTP)

Prüfungen

  • Informatik – Bachelor und Master: 5 ECTS- oder 7,5 ECTS-Modul in der Vertiefung "Verteilte Systeme und Betriebssysteme"
  • IuK – Bachelor: 5 ECTS-Modul als "Wahlpflichtmodul aus Katalog für IuK"
  • IuK – Master: 5 ECTS- oder 7,5 ECTS-Modul als "Wahlpflichtmodul aus INF" in den Schwerpunkten
    • Eingebettete Systeme
    • Kommunikationsnetze
    • Realisierung von Informations- und Kommunikationssystemen
    • Übertragung und Mobilkommunikation
  • Mechatronik – Bachelor und Master: 5-ECTS-Modul in der Modulgruppe 14 "Verteilte eingebettete Systeme"
  • Wahlmodul in verschiedenen anderen Studienfächern

Folien zur Vorlesung

Datum Thema Folien (1x1) Folien (2x2)
23.04.2019 Organisatorisches und Einführung
30.04.2019 Middleware
07.05.2019 Fernaufrufe
14.05.2019 Effizienz
21.05.2019
28.05.2019 Fehlertoleranz
04.06.2019 Replikation
18.06.2019 Multicast
25.06.2019 Georeplikation (Teil 1)
02.07.2019 Papierdiskussion:
Diego Ongaro and John Ousterhout
In Search of an Understandable Consensus Algorithm
Proceedings of the 2014 USENIX Annual Technical Conference (ATC '14),
pages 305–320, 2014.
Vorbereitung:
Verfassen eines Gutachtens

Abgabe bis 26.06.2019
09.07.2019 Georeplikation (Teil 2)
16.07.2019 Verteilte Synchronisation
23.07.2019 Weitverteilte Systeme
Semesterabschluss


Nähere Details zu den behandelten Themen finden sich in der zugehörigen Fachliteratur.

Evaluation

Die Evaluation im Sommersemester 2019 wurde in der Zeit vom 11. Juli bis 31. Juli durchgeführt.
  • In der Vorlesung wurden 27 Transaktionsnummern für den Zugriff auf die Evaluationsformulare verteilt.
  • Es wurden 17 Fragebögen zur Vorlesung ausgefüllt.
  • Ergebnis der Vorlesungsevaluation [PDF]
Vielen Dank an alle, die sich an der Evaluation beteiligt haben!