Verteilte Syteme 2002

Aufgabe 1 (2+2+2 Punkte)

a)

  • 1 Lesen von Blöcken einer Datei
  • 1 Schreiben von Blöcken einer Datei
  • 1 Anhängen an eine Datei
  • 1 Starten von Prozess

Für welche der Operationen sollte die at-most-once bzw. at-least-once-Semantik gelten? Welche Operationen sind idempotent?

b) Wieso wurde zunächst bei NFS-RPC UDP/IP verwendet und später dann TCP/IP ?

c) Irgendwas mit Grade-Server und Orts- und Zugriffstransparenz

Aufgabe 2 (1+4+1 Punkte)

a) Zukunfts- und Vergangenheitskegel von Ereignis E in gegebene Grafik einzeichnen.

b)

  • 1 Lamport Zeit. Wie stehen die Ereignisse A und B in Beziehung zueinander?
  • 1 Vektorzeit. Wie stehen die Ereignisse A und B in Beziehung zueinander?
  • 1 Reale Zeit. Wie stehen die Ereignisse A und B in Beziehung zueinander?
  • 1 Sind A und B kausal abhängig?

c) Vor- und Nachteile von Vektorzeit angeben.

Aufgabe 3 (3 Punkte)

Verteilte Deadlockerkennung hat normalerweise einen erheblichen Nachrichtenverkehr zur Folge, selbst wenn es keinen Deadlock gibt. Anstatt einer Deadlockerkennung können aber Deadlocks in Verteilten Systemen auch mit Hilfe von „Timeouts“ behandelt werden. Ein Prozeß wartet eine bestimmte Zeit auf eine Ressource und nimmt dann an, daß er sich in einem Deadlock befindet (und terminiert, um den Deadlock zu beheben).

Welche Risiken beinhaltet diese Methode?

Aufgabe 4 (6 Punkte)

Die in der Vorlesung vorgestellten Verfahren zur Synchronisierung

a) Zentraler Ansatz b) Token auf Anforderung c) Majority Consensus

erfordern zuverlässige FIFO-Kommunikations-Kanäle. Welche Fehlerquellen ergeben sich bei den Protokollen a) – c), falls die Kommunikationskanäle nicht zuverlässig sind?

Aufgabe 5 (3 Punkte)

Fünf Rechner sind mit Geschwindigkeitsfaktor und Runqueue in einer Tabelle gegeben. Die Runqueue sei gleichzusetzen mit der Last der Rechner. Für einen dringenden Job sei nun der beste Rechner anzugeben.

Aufgabe 6 (4+2 Punkte)

a) Netzwerk-Graph ist gegeben und aufspannender Baum solle mit Hilfe von Dijkstra ermittelt werden. Dazu soll eine vorgegebene Tabelle schrittweise ausgefüllt werden mit den Knotenbeschriftungen.

b) Wenn 3 Knoten des Graphen Multicast-Router sind, soll angegeben werden, wie Nachrichten von den Multicast-Routern zu den Empfängern kommen.