|
Verteilte Systeme - V+Ü (VS-VU)5 ECTS (englische Bezeichnung: Distributed Systems - L+E)
Modulverantwortliche/r: Jürgen Kleinöder Lehrende:
Tobias Distler, Jürgen Kleinöder
Startsemester: |
SS 2016 | Dauer: |
1 Semester | Turnus: |
jährlich (SS) |
Präsenzzeit: |
60 Std. | Eigenstudium: |
90 Std. | Sprache: |
Deutsch |
Lehrveranstaltungen:
-
-
Verteilte Systeme
(Vorlesung, 2 SWS, Tobias Distler et al., Do, 10:15 - 11:45, 0.031-113)
-
Übungen zu Verteilte Systeme
(Übung, 2 SWS, Christopher Eibel et al., Mi, 14:15 - 15:45, 02.151a-113; Di, 14:15 - 15:45, 0.031-113; ab 19.4.2016)
Empfohlene Voraussetzungen:
Gute Programmierkenntnisse in Java
Inhalt:
Bestandsaufnahme, Beispiele Verteilter Systeme, Problembereiche Eigenschaften Verteilter Systeme
Physikalische/logische Verteiltheit
Heterogenität, Nebenläufigkeit, Fehlerverarbeitung
Sicherheit, Offenheit, Skalierbarkeit, Transparenz
Architekturen Verteilter Systeme Interprozesskommunikation und Fernaufrufe
Nachrichtenaustausch
IPC-Semantiken und -varianten
Fernaufrufe – Kommunikation und Semantikaspekte
Fernaufrufe – Parameterübergabe, Nachrichtenerstellung, Realisierungsaspekte
Verteilte Anwendungen und Middleware Fehlertoleranz in Verteilten Systemen: Beispiel: FT-CORBA
Multicast-Kommunikation Zeit in Verteilten Systemen
Logische Uhren
Uhrensynchronisation
Verteilte Algorithmen
Inhalt der Übungen:
Fernaufrufsystem
(RMI als Anwender ausprobieren, Serialisierung in Java Threads und Synchronisierung in Java, (Dynamische) Generierung von Proxies, Rückruf/Callback, RPC-Semantiken, Replikation) Lesen und Begutachten von Fachliteratur Verteilte Algorithmen
Lernziele und Kompetenzen:
Studierende, die das Modul erfolgreich abgeschlossen haben:
definieren charakteristische Merkmale und Eigenschaften eines verteilten Systems.
beschreiben grundlegende Probleme im Zusammenhang mit der Realisierung verteilter Systeme.
vergleichen unterschiedliche von verteilten Systemen bereitgestellte Transparenzeigenschaften.
stellen verschiedene Architekturelemente und -muster verteilter Systeme gegenüber.
erklären diverse Eigenschaften von Netzwerken und ihre Konsequenzen für die Entwicklung verteilter Systeme.
skizzieren unterschiedliche Methoden zur Abwicklung von Interprozesskommunikation sowie ihre Verwendung zur Realisierung von Fernaufrufen.
untersuchen die Unterschiede zwischen lokalen Methodenaufrufen und Fernmethodenaufrufen.
fassen die Grundlagen von Systemen mit verteiltem gemeinsamen Speicher zusammen.
vergleichen Ansätze zur Konvertierung von Nachrichten zwischen verschiedenen Datenrepräsenationen (XDR, sendeseitig, empfangsseitig).
beschreiben Methoden zur Behandlung verwaister Fernaufrufe.
konzipieren eine eigene auf Java RMI basierende Anwendung.
entwickeln ein eigenes Fernaufrufsystem nach dem Vorbild von Java RMI.
gestalten ein Modul zur Unterstützung verschiedener Fernaufrufsemantiken (Maybe, Last-of-Many) für das eigene Fernaufrufsystem.
beurteilen auf Basis eigener Experimente mit Fehlerinjektionen die Auswirkungen von Störeinflüssen auf verschiedene Fernaufrufsemantiken.
erläutern Aufbau und Funktionsweise von Middleware-Systemen am Beispiel CORBA.
klassifizieren Mechanismen zur Bereitstellung von Fehlertoleranz, insbesondere verschiedene Arten der Replikation (aktiv vs. passiv).
erklären die Realisierung diverser Fehlertoleranzmechanismen am Beispiel FT-CORBA.
entwickeln ein eigene aktiv replizierte Anwendung zur Erforschung der mit dieser Replikationsart verbundenen Problemstellungen (z.B. Determinismus).
illustrieren das Problem einer fehlenden gemeinsamen Zeitbasis in verteilten Systemen.
erforschen logische Uhren als Mittel zur Reihenfolgebestimmung.
vergleichen Methoden zur Synchronisation physikalischer Uhren (CNV, NTP).
unterscheiden grundlegende Zustellungs- und Ordnungsgarantien beim Multicast von Nachrichten.
gestalten ein Protokoll für den zuverlässigen und totalgeordneten Versand von Nachrichten in einer Gruppe von Knoten.
vergleichen Algorithmen zur Wahl eines Anführers auf verschiedenen Netzwerktopologien (Ring, Baum).
bewerten diverse verteilte Algorithmen zur Realisierung gegenseitigen Ausschlusses (z.B. zentraler Koordinator, Maekawa).
entwickeln einen Dienst zur Verwaltung verteilter Sperrobjekte auf Basis von Lamport-Locks.
bewerten die Qualität einer aktuellen Publikation aus der Fachliteratur.
erschließen sich typische Probleme (Nebenläufigkeit, Konsistenz) und Fehlerquellen bei der Programmierung verteilter Anwendungen.
können in Kleingruppen kooperativ arbeiten.
können ihre Entwurfs- und Implementierungsentscheidungen kompakt präsentieren und argumentativ vertreten.
reflektieren ihre Entscheidungen kritisch und leiten Alternativen ab.
können offen und konstruktiv mit Schwachpunkten und Irrwegen umgehen.
Literatur:
- George Coulouris, Jean Dollimore, Tim Kindberg, and Gordon Blair. Distributed Systems: Concepts and Design. Addison Weslie, fifth edition, 2011.
Andrew S. Tanenbaum and Maarten van Steen. Distributed Systems: Principles and Paradigms (2Nd Edition). Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 2006.
Verwendbarkeit des Moduls / Einpassung in den Musterstudienplan: Das Modul ist im Kontext der folgenden Studienfächer/Vertiefungsrichtungen verwendbar:
- Informatik (Bachelor of Arts (2 Fächer))
(Po-Vers. 2010 | TechFak | Informatik (Bachelor of Arts (2 Fächer)) | Vertiefung Informatik I und II | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
- Informatik (Bachelor of Arts (2 Fächer))
(Po-Vers. 2013 | TechFak | Informatik (Bachelor of Arts (2 Fächer)) | Vertiefung Informatik I und II | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
- Informatik (Bachelor of Science): 5-6. Semester
(Po-Vers. 2009s | TechFak | Informatik (Bachelor of Science) | Wahlpflichtbereich (5. und 6. Semester) | Wahlpflichtmodule | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
- Informatik (Bachelor of Science): 5-6. Semester
(Po-Vers. 2009w | TechFak | Informatik (Bachelor of Science) | Wahlpflichtbereich (5. und 6. Semester) | Wahlpflichtmodule | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
- Informatik (Master of Science)
(Po-Vers. 2010 | TechFak | Informatik (Master of Science) | Wahlpflichtbereich | Säule der systemorientierten Vertiefungsrichtungen | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
- Informations- und Kommunikationstechnik (Bachelor of Science): 5. Semester
(Po-Vers. 2009 | TechFak | Informations- und Kommunikationstechnik (Bachelor of Science) | Wahlpflichtmodule, Wahlmodule, Seminar, Praktika, Bachelorarbeit | Wahlpflichtmodule aus Katalog für IuK)
- Informations- und Kommunikationstechnik (Master of Science)
(Po-Vers. 2010 | TechFak | Informations- und Kommunikationstechnik (Master of Science) | Schwerpunkte im Masterstudium | Schwerpunkt Eingebettete Systeme | Wahlpflichtmodule | Wahlpflichtmodul aus INF im Schwerpunkt Eingebettete Systeme)
- Informations- und Kommunikationstechnik (Master of Science)
(Po-Vers. 2010 | TechFak | Informations- und Kommunikationstechnik (Master of Science) | Schwerpunkte im Masterstudium | Schwerpunkt Kommunikationsnetze | Wahlpflichtmodule | Wahlpflichtmodul aus INF im Schwerpunkt Kommunikationsnetze)
- Informations- und Kommunikationstechnik (Master of Science)
(Po-Vers. 2010 | TechFak | Informations- und Kommunikationstechnik (Master of Science) | Schwerpunkte im Masterstudium | Schwerpunkt Realisierung von Informations- und Kommunikationssystemen | Wahlpflichtmodule | Wahlpflichtmodul aus INF im Schwerpunkt Realisierung von Informations- und Kommunikationssystemen)
- Informations- und Kommunikationstechnik (Master of Science)
(Po-Vers. 2010 | TechFak | Informations- und Kommunikationstechnik (Master of Science) | Schwerpunkte im Masterstudium | Schwerpunkt Übertragung und Mobilkommunikation | Wahlpflichtmodule | Wahlpflichtmodul aus INF im Schwerpunkt Übertragung und Mobilkommunikation)
- Informations- und Kommunikationstechnik (Master of Science)
(Po-Vers. 2016s | TechFak | Informations- und Kommunikationstechnik (Master of Science) | Schwerpunkte im Masterstudium | Schwerpunkt Eingebettete Systeme | Wahlpflichtmodule | Wahlpflichtmodul aus INF im Schwerpunkt Eingebettete Systeme)
- Informations- und Kommunikationstechnik (Master of Science)
(Po-Vers. 2016s | TechFak | Informations- und Kommunikationstechnik (Master of Science) | Schwerpunkte im Masterstudium | Schwerpunkt Kommunikationsnetze und Übertragungstechnik | Wahlpflichtmodule | Wahlpflichtmodul aus INF im Schwerpunkt Kommunikationsnetze)
- International Information Systems (IIS) (Master of Science)
(Po-Vers. 2014w | Informatics | Informatics Electives | Extension Courses)
- Mathematik (Bachelor of Science)
(Po-Vers. 2015w | NatFak | Mathematik (Bachelor of Science) | Module des Nebenfachs | Nebenfach Informatik | Vertiefungsmodule | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
- Mechatronik (Bachelor of Science): 5-6. Semester
(Po-Vers. 2007 | TechFak | Mechatronik (Bachelor of Science) | Wahlpflichtmodule (für alle Studierende des Bachelorstudiums, die vor 01. Oktober 2012 Wahlpflichtmodule begonnen haben) | Wahlpflichtmodule | Katalog | Verteilte Systeme)
- Mechatronik (Bachelor of Science): 5-6. Semester
(Po-Vers. 2009 | TechFak | Mechatronik (Bachelor of Science) | Wahlpflichtmodule (für alle Studierende des Bachelorstudiums, die vor 01. Oktober 2012 Wahlpflichtmodule begonnen haben) | Wahlpflichtmodule | Katalog | Verteilte Systeme)
- Mechatronik (Bachelor of Science): 5-6. Semester
(Po-Vers. 2009 | TechFak | Mechatronik (Bachelor of Science) | Wahlpflichtmodule | 6 Eingebettete Systeme)
- Mechatronik (Master of Science): 1-3. Semester
(Po-Vers. 2010 | TechFak | Mechatronik (Master of Science) | Wahlpflichtmodule | Katalog | Verteilte Systeme)
- Mechatronik (Master of Science): 1-3. Semester
(Po-Vers. 2010 | TechFak | Mechatronik (Master of Science) | Vertiefungsrichtungen | Verteilte eingebettete Systeme | Verteilte Systeme)
- Mechatronik (Master of Science): 1-3. Semester
(Po-Vers. 2012 | TechFak | Mechatronik (Master of Science) | M1-M2 Vertiefungsrichtungen | 6 Eingebettete Systeme)
- Medizintechnik (Master of Science)
(Po-Vers. 2013 | TechFak | Medizintechnik (Master of Science) | Studienrichtung Medizinische Bild- und Datenverarbeitung | M5 Medizintechnische Vertiefungsmodule (BDV))
Studien-/Prüfungsleistungen:
Verteilte Systeme (Prüfungsnummer: 52801)
(englischer Titel: Distributed Systems)
(diese Prüfung gilt nur im Kontext der Studienfächer/Vertiefungsrichtungen [6], [15], [16], [18], [19])
- Prüfungsleistung, mündliche Prüfung, Dauer (in Minuten): 30, benotet, 5 ECTS
- Anteil an der Berechnung der Modulnote: 100.0 %
- Erstablegung: SS 2016, 1. Wdh.: WS 2016/2017
1. Prüfer: | Jürgen Kleinöder |
Verteilte Systeme - V+Ü (Prüfungsnummer: 649073)
(englischer Titel: Distributed Systems - L+E)
(diese Prüfung gilt nur im Kontext der Studienfächer/Vertiefungsrichtungen [1], [2], [3], [4], [5], [7], [8], [9], [10], [11], [12], [13], [14], [17], [20])
- Prüfungsleistung, mehrteilige Prüfung, benotet, 5 ECTS
- Anteil an der Berechnung der Modulnote: 100.0 %
- weitere Erläuterungen:
Erfolgreiche Bearbeitung aller sechs Übungsaufgaben (Bewertung jeweils mit "ausreichend") und 20-minütige mündliche Prüfung.
Die Modulnote ergibt sich zu 100 % aus der Bewertung der mündlichen Prüfung.
- Erstablegung: SS 2016, 1. Wdh.: WS 2016/2017
1. Prüfer: | Jürgen Kleinöder |
Verteilte Systeme - V+Ü (Prüfungsnummer: 890298)
(englischer Titel: Distributed Systems - L+E)
(diese Prüfung gilt nur im Kontext der Studienfächer/Vertiefungsrichtungen [21])
- Prüfungsleistung, mündliche Prüfung, Dauer (in Minuten): 30, benotet, 5 ECTS
- Anteil an der Berechnung der Modulnote: 100.0 %
- Erstablegung: SS 2016, 1. Wdh.: WS 2016/2017
1. Prüfer: | Jürgen Kleinöder |
|
|
|
|
UnivIS ist ein Produkt der Config eG, Buckenhof |
|
|