UnivIS
Informationssystem der Friedrich-Alexander-Universität Erlangen-Nürnberg © Config eG 
FAU Logo
  Sammlung/Stundenplan    Modulbelegung Home  |  Rechtliches  |  Kontakt  |  Hilfe    
Suche:      Semester:   
 
 Darstellung
 
Druckansicht

 
 
Modulbeschreibung (PDF)

 
 
 Außerdem im UnivIS
 
Vorlesungs- und Modulverzeichnis nach Studiengängen

Vorlesungsverzeichnis

 
 
Veranstaltungskalender

Stellenangebote

Möbel-/Rechnerbörse

 
 

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 2017Dauer: 1 SemesterTurnus: jährlich (SS)
Präsenzzeit: 60 Std.Eigenstudium: 90 Std.Sprache: Deutsch

Lehrveranstaltungen:


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

  • Middleware und Replikationskonzepte

Multicast-Kommunikation

Zeit in Verteilten Systemen

  • Logische Uhren

  • Uhrensynchronisation

Verteilte Algorithmen

  • Synchronisation und gegenseitiger Ausschluss

  • Wahlverfahren

Inhalt der Übungen:
Fernaufrufsystem

  • Implementierung eines Java-RMI-ähnlichen Systems

(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

  • Basisabstraktionen für verteilte Algorithmen

  • Implementierung einfacher verteilter 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:

  1. 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)
  2. 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)
  3. 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)
  4. 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)
  5. Informatik (Master of Science)
    (Po-Vers. 2010 | TechFak | Informatik (Master of Science) | Wahlpflichtbereich | Säule der systemorientierten Vertiefungsrichtungen | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
  6. 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)
  7. 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)
  8. 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)
  9. 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)
  10. 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)
  11. 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)
  12. 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)
  13. International Information Systems (IIS) (Master of Science)
    (Po-Vers. 2014w | ReWiFak | Internationale Wirtschaftsinformatik / International Information Systems (Master of Science) | Informatics | Informatics Electives | Extension Courses)
  14. Mathematik (Bachelor of Science)
    (Po-Vers. | NatFak | Mathematik (Bachelor of Science) | Module des Nebenfachs | Nebenfach Informations- und Kommunikationtechnik | Wahlpflichtmodule aus Katalog für IuK)
  15. Mathematik (Bachelor of Science)
    (Po-Vers. 2015w | NatFak | Mathematik (Bachelor of Science) | Module des Nebenfachs | Nebenfach Informatik | Vertiefungsmodule | Vertiefungsmodul Verteilte Systeme und Betriebssysteme)
  16. 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)
  17. 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)
  18. Mechatronik (Bachelor of Science): 5-6. Semester
    (Po-Vers. 2009 | TechFak | Mechatronik (Bachelor of Science) | Wahlpflichtmodule | 6 Eingebettete Systeme)
  19. Mechatronik (Master of Science): 1-3. Semester
    (Po-Vers. 2010 | TechFak | Mechatronik (Master of Science) | Wahlpflichtmodule | Katalog | Verteilte Systeme)
  20. Mechatronik (Master of Science): 1-3. Semester
    (Po-Vers. 2010 | TechFak | Mechatronik (Master of Science) | Vertiefungsrichtungen | Verteilte eingebettete Systeme | Verteilte Systeme)
  21. Mechatronik (Master of Science): 1-3. Semester
    (Po-Vers. 2012 | TechFak | Mechatronik (Master of Science) | M1-M2 Vertiefungsrichtungen | 6 Eingebettete Systeme)

Studien-/Prüfungsleistungen:

Verteilte Systeme (Prüfungsnummer: 52801)

(englischer Titel: Distributed Systems)

(diese Prüfung gilt nur im Kontext der Studienfächer/Vertiefungsrichtungen [6], [14], [16], [17], [19], [20])

Prüfungsleistung, mündliche Prüfung, Dauer (in Minuten): 30, benotet, 5 ECTS
Anteil an der Berechnung der Modulnote: 100.0 %

Erstablegung: SS 2017, 1. Wdh.: WS 2017/2018
1. Prüfer: Tobias Distler
Ort: 0.039-113
Ort: 0.039-113
Ort: Erlangen, Martensstraße 1, 0.039-113

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], [15], [18], [21])

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 2017, 1. Wdh.: WS 2017/2018
1. Prüfer: Tobias Distler

Verteilte Systeme - V+Ü (Prüfungsnummer: 890298)

(englischer Titel: Distributed Systems - L+E)

Prüfungsleistung, mündliche Prüfung, Dauer (in Minuten): 30, benotet, 5 ECTS
Anteil an der Berechnung der Modulnote: 0.0 %

Erstablegung: SS 2017, 1. Wdh.: WS 2017/2018
1. Prüfer: Tobias Distler

UnivIS ist ein Produkt der Config eG, Buckenhof