ETH Zurich :
Computer Science :
Pervasive Computing :
Distributed Systems :
Education :
DS HS2017
Verteilte Systeme
Prof. Dr. Friedemann Mattern
Prof. Dr. Roger Wattenhofer
Die Prüfungseinsicht findet an folgenden Terminen statt:
- Freitag, 9. März 2018 um 9–11 Uhr in
- Dienstag, 13. März 2018 um 9–11 Uhr in
Zeit und Ort:
|
Montag
Freitag
|
9:15–12:00
9:15–12:00
|
|
(Vorlesung, fallweise auch Übung, s. Übungstermine) |
Inhalt:
Einführung (Charakteristika und Konzepte), verteilte Kontrollalgorithmen
(Flooding- / Echo-Verfahren, wechselseitiger Ausschluss, logische Uhren),
Basis-Kommunikationsmodelle (Remote Procedure Call, Client-Server-Modelle,
synchrone und asynchrone Kommunikation), Web-Services und REST,
abstraktere Kommunikationsprinzipien (Broadcast, Ereignisse, Tupelräume),
Middleware und Techniken offener Systeme,
Infrastruktur für spontan vernetzte Systeme (Jini),
Sicherheits- und Schutzmechanismen, Fehlertoleranz (Modelle, Consensus,
Agreement), Replikation (Primary Copy, 2PC, 3PC, Paxos, Quorum-Systeme),
Multi-Prozessor-Programmierung.
Selbständige Arbeit:
Parallel zur Vorlesung finden praktische Übungen in Form von mehrwöchigen
Aufgaben statt.
Ziel ist es, praxisbezogene Aspekte verteilter Systeme zu vermitteln. Hierzu
dient Android auf dem Google Nexus 5 als mobile, verteilte Programmierplattform.
Vorlesungstermine und -unterlagen:
Hier finden Sie Folienkopien (Stand 30.10.17) der Vorlesung.
Weitere Materialien werden im Laufe der Vorlesung hier eingestellt.
Vorlesung |
Termin |
PDF |
Dozent |
1 |
22.09.2017 |
HS2017-Exercises.Introduction.pdf |
F. Mattern |
Android |
25.09.2017 |
|
L. Sadamori |
2 |
29.09.2017 |
F. Mattern |
3 |
02.10.2017 |
F. Mattern |
4 |
06.10.2017 |
F. Mattern |
5 |
09.10.2017 |
|
F. Mattern |
6 |
13.10.2017 |
|
F. Mattern |
7 |
16.10.2017 |
|
F. Mattern |
8 |
20.10.2017 |
F. Mattern |
9 |
23.10.2017 |
F. Mattern |
10 |
27.10.2017 |
F. Mattern |
11 |
30.10.2017 |
F. Mattern |
12 |
03.11.2017 |
F. Mattern |
Teil 2 |
03.11.2017 – 15.12.2017 |
R. Wattenhofer |
Android |
18.12.2017 |
|
L. Sadamori |
Übungen:
Im Rahmen der Vorlesung wird es praktische Übungen in Form von
Programmieraufgaben und theoretische Übungen in Form von
schriftlichen Aufgaben geben.
Verantwortlicher Assistent ist Leyna Sadamori.
Praktische Übungen:
Die hier erbrachte Leistung kann mit bis zu 45 Punkten in die Prüfungsnote eingehen.
Die Abgaben werden über das Abgabesystem eingereicht.
Die praktischen Übungen werden in Gruppen zu je 3 Studenten bearbeitet. Die Anmeldung der Gruppen erfolgt über unser Abgabesystem.
Theoretische Übungen:
Zum ersten Teil (Mattern) gibt es ein Übungsblatt zur Vorbereitung auf die schriftliche Prüfung.
Die Aufgaben sind freiwillig und werden nicht korrigiert.
Version |
Aufgabenblatt |
Kommentar |
20.11.2017 |
theorie.pdf
|
Übungsblatt mit Lösungsvorschlägen |
Literatur:
- G. Coulouris, J. Dollimore, T. Kindberg: Distributed Systems: Concepts and Design, Addison-Wesley
- A. Tanenbaum, M. van Steen: Distributed Systems: Principles and Paradigms, Prentice-Hall
- Mullender (Ed.): Distributed Systems, 2nd Edition, Addison-Wesley
- M. Weber: Verteilte Systeme, Spektrum-Verlag
- B. Schneier: Applied Cryptography, Wiley
- M. Herlihy, N. Shavit: The Art of Multiprocessor Programming, Morgan Kaufmann, 2008
Contact:
If you have questions regarding the lecture, please contact Leyna Sadamori.
|