Visualisierung verteilter Systeme Heiko Krumm: Verteilte Algorithmen von Christian Grümme

Preview:

Citation preview

Visualisierung verteilter Systeme

Heiko Krumm: Verteilte Algorithmen

von Christian Grümme

Heiko Krumm: Verteilte Algorithmen

2

Heiko Krumms Homepage:http://ls4-www.cs.uni-dortmund.de/RVS/MA/hk/OrdnerVertAlgo/VertAlgoStart.html

Visualisierung von Verteilten Algorithmendurch animiertes HTML- und JAVA-Applets

Dortmund, 1997

Heiko Krumm: Verteilte Algorithmen

4

Startseite

Heiko Krumm: Verteilte Algorithmen

5

I. Der Echo-Algorithmus

Der Echo-Algorithmus in Kürze:- Ein Knoten (Station) schickt eine

empfangene Nachricht (gleichzeitig) an alle anderen Nachbar weiter und wartet auf eine Antwort oder dieselbe Nachricht von jeden von ihnen und schickt dann eine Antwort an den Ursprung zurück.

- Vorraussetzung: Zuverlässiger und verlustfreier Datenaustausch

Heiko Krumm: Verteilte Algorithmen

6

Das Visualisierungsapplet:

I. Der Echo-Algorithmus

Heiko Krumm: Verteilte Algorithmen

7

Start

I. Der Echo-Algorithmus

Heiko Krumm: Verteilte Algorithmen

8

Erste Nachbarn erreicht

I. Der Echo-Algorithmus

Heiko Krumm: Verteilte Algorithmen

9

I. Der Echo-Algorithmus

Sternknoten aktiv:

Heiko Krumm: Verteilte Algorithmen

10

I. Der Echo-Algorithmus

Quittierung durch Anfragenachricht

Heiko Krumm: Verteilte Algorithmen

11

I. Der Echo-Algorithmus

Erste Terminierungen

Heiko Krumm: Verteilte Algorithmen

12

I. Der Echo-Algorithmus

Sternknoten terminiert

Heiko Krumm: Verteilte Algorithmen

13

I. Der Echo-Algorithmus

Fertig: spannender Baum

Heiko Krumm: Verteilte Algorithmen

14

I. Der Echo-Algorithmus

Website: Echo-Applet 1

Heiko Krumm: Verteilte Algorithmen

15

I. Der Echo-Algorithmus

Website: Echo-Applet 2

Heiko Krumm: Verteilte Algorithmen

16

I. Der Echo-Algorithmus

Website: Echo-Algorithmus

Heiko Krumm: Verteilte Algorithmen

17

I. Der Echo-Algorithmus

Echo-Algorithmus in Weg/Zeit-Diagramm-Ansicht

Heiko Krumm: Verteilte Algorithmen

18

I. Der Echo-Algorithmus

Start

Heiko Krumm: Verteilte Algorithmen

19

I. Der Echo-Algorithmus

Weitere Quittierungsanfragen

Heiko Krumm: Verteilte Algorithmen

20

I. Der Echo-Algorithmus

Erste Terminierungen

Heiko Krumm: Verteilte Algorithmen

21

I. Der Echo-Algorithmus

Fast fertig

Heiko Krumm: Verteilte Algorithmen

22

I. Der Echo-Algorithmus

Zustandsübergangsdiagramm

Heiko Krumm: Verteilte Algorithmen

23

I. Der Echo-Algorithmus

Markierung des Sternknotens

Heiko Krumm: Verteilte Algorithmen

24

I. Der Echo-Algorithmus

Endzustand

Heiko Krumm: Verteilte Algorithmen

25

II. Serieller Netzdurchlauf

Der Algorithmus in Kürze:- Identisch mit dem Echo-Algorithmus, aber

nur eine Nachricht wird auf einmal gesendet.

- Wird in der Praxis nicht eingesetzt, sondern dient nur der Veranschaulichung des Echo-Algorithmus.

Heiko Krumm: Verteilte Algorithmen

26

II. Serieller Netzdurchlauf

Das Applet

Heiko Krumm: Verteilte Algorithmen

27

II. Serieller Netzdurchlauf

Start

Heiko Krumm: Verteilte Algorithmen

28

II. Serieller Netzdurchlauf

Zweiter Aktiver Knoten

Heiko Krumm: Verteilte Algorithmen

29

II. Serieller Netzdurchlauf

Dritter Aktiver Knoten

Heiko Krumm: Verteilte Algorithmen

30

II. Serieller Netzdurchlauf

Die Erste Antwort

Heiko Krumm: Verteilte Algorithmen

31

II. Serieller Netzdurchlauf

Sende zum nächsten Nachbar

Heiko Krumm: Verteilte Algorithmen

32

II. Serieller Netzdurchlauf

Der Sternknoten sendet an schon Aktiven Knoten

Heiko Krumm: Verteilte Algorithmen

33

II. Serieller Netzdurchlauf

Der Sternknoten sendet zum nächsten Nachbar

Heiko Krumm: Verteilte Algorithmen

34

II. Serieller Netzdurchlauf

Letzte Nachricht

Heiko Krumm: Verteilte Algorithmen

35

II. Serieller Netzdurchlauf

Erster Knoten terminiert

Heiko Krumm: Verteilte Algorithmen

36

II. Serieller Netzdurchlauf

Sternknoten sendet an nächsten Nachbar

Heiko Krumm: Verteilte Algorithmen

37

II. Serieller Netzdurchlauf

Letzter Nachbar vom Knoten sendet Quittung

Heiko Krumm: Verteilte Algorithmen

38

II. Serieller Netzdurchlauf

Fast Durchlaufen

Heiko Krumm: Verteilte Algorithmen

39

II. Serieller Netzdurchlauf

Fertig!

Heiko Krumm: Verteilte Algorithmen

40

II. Serieller Netzdurchlauf

Weg/Zeit-Diagramm

Heiko Krumm: Verteilte Algorithmen

41

II. Serieller Netzdurchlauf

Weg/Zeit-Diagramm

Heiko Krumm: Verteilte Algorithmen

42

II. Serieller Netzdurchlauf

Weg/Zeit-Diagramm

Heiko Krumm: Verteilte Algorithmen

43

II. Serieller Netzdurchlauf

Weg/Zeit-Diagramm

Heiko Krumm: Verteilte Algorithmen

44

II. Serieller Netzdurchlauf

Fertig

Heiko Krumm: Verteilte Algorithmen

45

II. Serieller Netzdurchlauf

Zustandsübergangsdiagramm

Heiko Krumm: Verteilte Algorithmen

46

III. Nachrichtenauslöschungsprinzip

Das Prinzip:- Unbestätigte Benachrichtigung des

gesamten Netzes.- Die vorhergehenden Algorithmen bauen

auf diesem Prinzip auf. - Auch hier Vorraussetzung: Zuverlässiger

und verlustfreier Datenaustausch.

Heiko Krumm: Verteilte Algorithmen

47

III. Nachrichtenauslöschungsprinzip

Start

Heiko Krumm: Verteilte Algorithmen

48

III. Nachrichtenauslöschungsprinzip

Weiterverteilung an alle Nachbarn

Heiko Krumm: Verteilte Algorithmen

49

III. Nachrichtenauslöschungsprinzip

Sternknoten ist erreicht

Heiko Krumm: Verteilte Algorithmen

50

III. Nachrichtenauslöschungsprinzip

Sternknoten fertig

Heiko Krumm: Verteilte Algorithmen

51

III. Nachrichtenauslöschungsprinzip

Fertig

Heiko Krumm: Verteilte Algorithmen

52

III. Nachrichtenauslöschungsprinzip

Weg/Zeit-Diagramm

Heiko Krumm: Verteilte Algorithmen

53

III. Nachrichtenauslöschungsprinzip

Fertig

Heiko Krumm: Verteilte Algorithmen

54

IV. Schnappschuss

Der Schnappschuss:- Dient zur Sicherung des Verteilten

Systems.- Konsistente Wiederherstellung nach

einem Ausfall.Es werden vorgestellt:- Inkonsistenter Schnappschuss- Schnappschuss durch Einfrieren- Schnappschuss unter Weitergabe

Heiko Krumm: Verteilte Algorithmen

55

IV. Schnappschuss

Inkonsistenter Schnappschuss:

Heiko Krumm: Verteilte Algorithmen

56

Die rechten drei tauschen „12“.

IV. Schnappschuss

Heiko Krumm: Verteilte Algorithmen

57

IV. Schnappschuss

Linker Knoten sendet Anfrage

Heiko Krumm: Verteilte Algorithmen

58

IV. Schnappschuss

Er erhält von den mittleren schon antwort.

Heiko Krumm: Verteilte Algorithmen

59

IV. Schnappschuss

Anfrage zum rechten Knoten dauert länger

Heiko Krumm: Verteilte Algorithmen

60

IV. Schnappschuss

Bekommt vom rechten Knoten eine Antwort

Heiko Krumm: Verteilte Algorithmen

61

IV. Schnappschuss

Summe des Ergebnisses ist > 12.

Heiko Krumm: Verteilte Algorithmen

62

IV. Schnappschuss

Inkonsistenter Schnappschuss:

Heiko Krumm: Verteilte Algorithmen

63

IV. Schnappschuss

Schnappschuss durch Einfrieren:

Heiko Krumm: Verteilte Algorithmen

64

IV. Schnappschuss

Linker Knoten fordert Schnappsschuss

Heiko Krumm: Verteilte Algorithmen

65

IV. Schnappschuss

Die mittleren Knoten sind eingefroren

Heiko Krumm: Verteilte Algorithmen

66

IV. Schnappschuss

Die Nachrichten warten

Heiko Krumm: Verteilte Algorithmen

67

IV. Schnappschuss

Der rechte Knoten ist jetzt auch eingefroren

Heiko Krumm: Verteilte Algorithmen

68

IV. Schnappschuss

Linker Knoten sendet „auftauen“

Heiko Krumm: Verteilte Algorithmen

69

IV. Schnappschuss

Schnappschussprozedur ist zu ende.

Heiko Krumm: Verteilte Algorithmen

70

IV. Schnappschuss

Schnappschuss unter Weitergabe

Heiko Krumm: Verteilte Algorithmen

71

IV. Schnappschuss

Linker Knoten erhält bereits zwei Antworten

Heiko Krumm: Verteilte Algorithmen

72

IV. Schnappschuss

Mittlere Knoten senden Problemnachricht

Heiko Krumm: Verteilte Algorithmen

73

IV. Schnappschuss

Rechter Knoten sendet bereits Antwort

Heiko Krumm: Verteilte Algorithmen

74

IV. Schnappschuss

Danach normaler Verlauf

Heiko Krumm: Verteilte Algorithmen

75

V. Alternating Bit Protokoll

Das Protokoll in Kürze:- Stellt zuverlässige Kommunikation sicher.- Es wird abwechselnd eine 0 oder eine 1

vor die eigentliche Nachricht mitversendet.- Mit dem gleichen Kontrollbit wird dann von

gegenüber die nächste Nachricht gesendet.

- Wenn nach einem TimeOut keine Antwort empfangen wurde, wird erneut gesendet.

Heiko Krumm: Verteilte Algorithmen

76

Das Applet:

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

77

Gesendet mit Bit 0

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

78

Der rechte Knoten hat nun auf 1 umgeschaltet

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

79

Der Linke hat nun auch auf 1 umgeschaltet

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

80

Nachricht geht wieder verloren

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

81

Linker Knoten sendet erneut

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

82

Zustandsdiagramm

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

83

Zustandsdiagramm

V. Alternating Bit Protokoll

Heiko Krumm: Verteilte Algorithmen

84

Diskussion

Recommended