Small logo of ETH main building ETH Zurich : Computer Science : Pervasive Computing : Distributed Systems : Education : DS HS2017

Verteilte Systeme

Prof. Dr. Friedemann Mattern
Prof. Dr. Roger Wattenhofer

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 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.

Aufgabe Termin Abgabe Material Inhalt Assistent
Android Intro 25.09.2017 HS2017-Android.Introduction.pdf
HS2017-Android.LiveHacking.pdf
sounds.zip
AndroidTutorial_solution.zip
Einführung, Einrichten der Entwicklungsumgebung L. Sadamori
1 02.10.2017 12.10.2017 HS2017_Assignment1.slides.pdf
VS_HS2017_Assignment1.pdf
Code_skeleton.zip
GUI- und Hardwareprogrammierung, Bluetooth Low Energy V. Becker
2 13.10.2017 24.10.2017 Slides.Assignment2.pdf
VS_HS2017_Assignment2.pdf
HS2017_A2_Code_Skeleton.zip
ksoap2-android-assembly-3.0.0.jar
HTTP, REST, Web Services L. Sadamori
3 23.10.2017 02.11.2017 HS2017_A3_Slides.pdf
HS2017_A3_Sheet.pdf
HS2017_A3_Code_Skeleton.zip
chat_server.jar
json-20150729.jar
DVC_Landes.pdf
Verteilter Chat, Logische Zeit (Lamport & Vektorzeit) M. Bâce
Projekt 30.10.2017 17.12.2017 Freies Projekt L. Barrios

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.

Literatur:

Contact:

If you have questions regarding the lecture, please contact Leyna Sadamori.
ETH ZurichDistributed Systems Group
Last updated October 23 2017 11:58:10 AM MET ko