Sommersemester 2009 Verteilte Systeme Universität Paderborn Fachgebiet Rechnernetze Übungsblatt 4: Verteilte Algorithmen, Konsistenz, Replikation, Web Services 06.07.2009 Aufgabe 1: Bully Algorithmus Gegeben seien die Prozesse in Abbildung 1. Knoten 7 war bisher der Koordinator. Jetzt fällt Knoten 7 aus und ein neuer Koordinator muss bestimmt werden. 2 3 5 7 1 4 6 0 Abbildung 1: Prozesse: Prozess 7 war Koordinator und ist nun ausgefallen 1. Müssen die Knoten in einem Ring angeordnet sein, damit der Bully Algorithmus verwendet werden kann? 2. Welche Voraussetzung muss (noch) gelten, damit der Bully Algorithmus angewendet werden kann? 3. Knoten 4 und 5 stellen gleichzeitig fest, dass der Koordinator ausgefallen ist und beginnen , Election-Nachrichten zu senden. Was passiert? Spielen Sie den Bully Algorithmus anhand des gegebenen Beispiels durch. Verteilte Systeme Sommersemester 2009 Übungsblatt 4 1 Aufgabe 2: Datenzentrische Konsistenzmodelle Gegeben sei folgender Ablauf von Lese- und Schreiboperationen der Prozesse P1 bis P5. Die Notation folgt der Notation der Vorlesung (siehe Kap. 6, Folie 10). P1 P2 P3 P4 P5 W(y)a R(x)b R(x)a R(x)b W(x)a W(x)b R(y)a R(x)a R(x)b W(x)c W(y)b Geben Sie an, ob dieser Ablauf die folgenden Konsistenzeigenschaften erfüllt: 1. Strikte Konsistenz (strict consistency) 2. Kausale Konsistenz (causal consistency) 3. Sequentielle Konsistenz (sequential consistency) 4. FIFO Konsistenz (FIFO consistency) Aufgabe 3: Konsistenz Der Zugriff auf gemeinsam genutzte Java Objekte kann geregelt werden, indem ihre Methoden als “synchronized” deklariert werden. 1. Wie wird in Java bei der Deklaration einer Methode als “synchronized” der Zugriff auf diese Methode geregelt? 2. Reicht dies aus, wenn das Objekt repliziert werden soll? Aufgabe 4: Quorum-basierte Replikation Betrachten Sie die auf den Folien 53 und 54 (Folien zu Kaptiel 6) dargestellte Quorum-basierte Replikation von Schreiboperationen. In der folgenden Abbildung sind Lese-Quorum mit durchgehenden Linien und Schreib-Quorum mit gestrichelten Linien dargestellt. A B C D A B C D E F G H E F G H I J K L I J K L (b) (a) A B C D A B C D E F G H E F G H I J K L I J K L (c) (d) 1. Bestimmen Sie zu (a), (b) und (c) ob es sich jeweils um ein gültiges oder nicht gültiges Schreibbzw. Lesequorum handelt. 2. Tragen Sie in (d) ein gültiges minimales Schreib-Quorum ein. Verteilte Systeme Sommersemester 2009 Übungsblatt 4 2