Verteilte Systeme. Fehlertoleranz. Prof. Dr. Oliver Haase
|
|
- Berndt Weiß
- vor 6 Jahren
- Abrufe
Transkript
1 Verteilte Systeme Fehlertoleranz Prof. Dr. Oliver Haase 1
2 Überblick Einführung Belastbarkeit von Prozessen Zuverlässige Client-Server-Kommunikation Zuverlässige Gruppenkommunikation 2
3 Anforderungen an verteilte Systeme Verfügbarkeit (Availability) unmittelbare Benutzbarkeit eines Systems bezieht sich auf einen bestimmten Zeitpunkt Zuverlässigkeit (Reliability) das System läuft fortlaufend ausfallfrei bezieht sich auf ein Zeitintervall 3
4 Einschub: Verfügbarkeit vs Zuverlässigkeit Beispiel 1: System, das jede Stunde für 1ms ausfällt Verfügbarkeit: - 99,99997% (sehr hoch) Zuverlässigkeit: - eher gering Beispiel 2: System, das nie ausfällt, aber im Jahr zwei Wochen für Wartungsarbeiten heruntergefahren wird Verfügbarkeit: - 96,2% (eher niedrig) Zuverlässigkeit: - sehr hoch 4
5 Anforderungen an verteilte Systeme Funktionssicherheit (Safety) es passiert nichts Schlimmes, wenn ein System vorübergehend nicht korrekt arbeitet Wartbarkeit (Maintainability) wie leicht kann ein ausgefallenes System repariert werden? Ein System, das die obigen Anforderungen erfüllt, wird als verlässlich (dependable) bezeichnet. 5
6 Störungen Man sagt, Systeme fallen aus, wenn sie ihre Zusagen nicht mehr einhalten können. Die Ursache dafür wird als Störung (fault) bezeichnet. Beim Aufbau verlässlicher Systeme geht es um die Kontrolle der Störungen, insbesondere um die Möglichkeit, solche Fehler zu tolerieren. Arten von Störungen: Vorübergehend (transient): einmaliger Vorfall Wiederkehrend: unberechenbares Wiederauftreten Permanent: Fehler bleibt bestehen, bis die fehlerhafte Komponente ersetzt wird 6
7 Fehlermodelle Zweck: Klassifikation von Fehlern, um besser darauf reagieren zu können Angabe der Fehlertoleranz von Programmen mit Bezug auf die Fehlerklassen aus: [Tanenbaum, van Steen. Verteilte Systeme: Grundlagen und Paradigmen] 7
8 Maskierung von Fehlern Beste Vorgehensweise: Verbergen der Fehler vor anderen Komponenten (Maskierung) Wird erreicht durch Redundanz Informationsredundanz: - Verwendung zusätzlicher Bits, um den möglichen Ausfall anderer Bits abzufangen - Beispiel: Hamming Code für Forward Error Correction Zeitliche Redundanz: - Wiederholung von Aktionen - Beispiel: Transaktionen zurückgesetzte Aktionen werden wiederholt 8
9 Maskierung von Fehlern Technische Redundanz - Zusätzliche Hardware oder Software (Prozesse) - Beispiele: Biologie: zwei Augen, zwei Ohren, zwei Lungenflügel Luftfahrt: vier Triebwerke, doppelte Steuerkreise Sport: mehrere Schiedsrichter technische Schaltungen: 9
10 Belastbarkeit von Prozessen Generelles Vorgehen Replikation von Prozessen, die dieselbe Aufgabe erfüllen Zusammenfassung in Prozessgruppen Ergebnis: fehlertolerante Gruppe von Prozessen Wird eine Nachricht an die Gruppe geschickt, bekommt jeder Prozess die Nachricht Wir betrachten Organisation der Gruppen Fehlermaskierung und Replikation Erzielung von Übereinstimmung in fehlerhaften Systemen 10
11 Gruppenorganisation Prozessgruppen sind dynamisch können erzeugt und gelöscht werden Prozesse können ein- und austreten Prozesse können Mitglied mehrerer Gruppen sein Zweck des Einsatzes von Gruppen: Abstraktion von den Einzelprozessen, Darstellung gegenüber der Außenwelt als eine Einheit Gruppenstruktur strukturlos (flach), oder hierarchisch (ein Koordinator) 11
12 Gruppenorganisation aus: [Tanenbaum, van Steen. Verteilte Systeme: Grundlagen und Paradigmen] kein Single Point of Failure Jede Entscheidung erfordert Abstimmung schneller im Normalbetrieb Problem bei Ausfall des Koordinators 12
13 Maskierung von Fehlern Anwendung der bereits bekannten Replikationsstrategien Urbildbasiert (Primary-based) - Koordinator, der alle Write-Operationen koordiniert - passt gut zu hierarchischen Prozessgruppen - Wenn der Koordinator abstürzt, wählen die übrigen Prozesse einen neuen Aktive Replikation /Quorumbasierte Protokolle: - passt gut zu flachen Gruppen 13
14 Maskierung von Fehlern Wichtige Frage: wieviel Replikation ist nötig? Vereinfachung der Betrachtung: flache Prozessgruppen k-fehlertoleranz: Gleichzeitiger Ausfall von k Prozessen kann maskiert werden Anzahl benötigter Prozesse hängt stark vom Fehlerverhalten ab: Dienstausfälle: - (k+1) Prozesse Byzantinische Fehler (fehlerhafter Dienst): - (2k +1) Prozesse Kann man aber so genau sagen, dass maximal k Fehler auftreten? statistische Analysen 14
15 Übereinstimmung in fehlerhaften Systemen Problem: wie kommt man zu einer Übereinstimmung über eine durchzuführende Aktion? Ziel verteilter Einigungsalgorithmen alle nicht fehlerhaften Prozesse werden sich in begrenzter Zeit über einen bestimmten Aspekt einig Unterschiedliche Eigenschaften von Systemen erfordern unterschiedliche Lösungen 15
16 Unterschiedliche Fälle Synchrone und asynchrone Systeme Synchrone Systeme gehen zusammen jeweils immer einen Schritt weiter Kommunikationsverzögerung ist begrenzt oder nicht Nachrichtenauslieferung in korrekter Reihenfolge oder nicht Nachrichtenübertragung per Unicast oder Multicast 16
17 Behandlung der Fälle Nur in folgenden Fällen kann überhaupt Übereinstimmung erzielt werden: aus: [Tanenbaum, van Steen. Verteilte Systeme: Grundlagen und Paradigmen] Meisten vert. Systeme sind asynchron, verwenden Unicast Reihenfolgetreue zwingend, z.b. TCP/IP 17
18 Byzantinische Generäle Dient der Veranschaulichung des Problems, zu einer Übereinstimmung in einem fehlerhaften verteilten System zu kommen In den diversen Kriegen der byzantinischen Zeit (5. bis 15. Jahrhundert) ging es oft darum, Übereinstimmung über die Truppenstärken verschiedener Armeen zu erreichen. Dies unter dem Einfluss verräterischer Generäle etc. Leslie Lamport schlug 1982 eine Lösung für das Problem vor. 18
19 Problemstellung & Lösungsansatz Synchrone Generäle (Prozesse), Unicast, Reihenfolge- Erhaltung, begrenzte Kommunikationsverzögerung N Generäle, davon höchstens k fehlerhaft Generäle (Prozesse) sollen Einigung erzielen. Jeder General i sendet seine Truppenstärke vi an alle anderen Generäle. Ziel: jeder General konstruiert einen Vektor V der Länge N, so dass V[i]= vi, falls i nicht fehlerhaft ist. 19
20 Byzantinische Generäle: Beispiel Szenario: n=4, G3 lügt 1) alle Generäle melden ihre Truppenstärke allen anderen (Bild a) 2) jeder General bildet Vektor aller gemeldeten Werte (Bild b) 3) alle Generäle tauschen Vektoren miteinander aus, G3 lügt erneut (Ergebnis in Bild c) 4) 1, 2 und 4 erzielen Einigung in Form von (1, 2, undefined, 4) 20
21 Zuverlässiger RPC/RMI RPC/RMI abstrahiert von einer Kommunikationsbeziehung, aber dahinter steht immer Kommunikation über ein Netz Wenn sowohl Kanal als auch Sende-/Empfangprozesse perfekt funktionieren, ist RPC/RMI zuverlässig. Mögliche Probleme (Fehlerklassen): 1) Client findet Server nicht 2) Anfrage geht verloren 3) Server stürzt nach Erhalt der Anfrage ab 4) Antwort geht verloren 5) Client stürzt nach Senden der Anfrage ab 21
22 1) Client findet Server nicht Ursachen: Server down unterschiedliche Versionen von Stub und Skeleton Lösung: Exceptions auf Client-Seite Verlust von Transparenz nicht jede Sprache unterstützt Exceptions 22
23 2) Anfrage geht verloren einfachstes Problem Timer starten beim Abschicken der Nachricht Nachricht wird erneut geschickt, wenn der Timer vor Eintreffen einer Antwort abläuft ist die Nachricht tatsächlich verloren gegangen, merkt der Server keinen Unterschied Erhält der Server die Nachricht doppelt, dann muss er dies erkennen siehe 4) Antwort geht verloren u. U. bereits in Transportprotokoll enthalten (z.b. in TCP, nicht aber in UDP) 23
24 3) Server stürzt ab Der Server kann abstürzen, nachdem (b) oder bevor (c) er die Operation ausgeführt hat. Beide Fälle müssen unterschiedlich behandelt werden: (b) Client muss informiert werden (z.b. Exception bekommen) (c) Nachricht kann erneut (an einen anderen Server) geschickt werden Problem: Client kann (b) und (c) nicht unterscheiden 24
25 3) Server stürzt ab Lösung: drei verschiedene Philosophien 1) Mindestens-Einmal-Semantik: (at least once) - führe die Operation so oft aus, bis sie erfolgreich war, d.h. bis Antwort eingetroffen ist warten auf Server-Reboot oder anderen Server verwenden - Operation wird mindestens einmal ausgeführt 2) Höchstens-Einmal-Semantik (at most once): - Sofortige Aufgabe, Fehlermeldung - RPC wurde höchstens einmal ausgeführt, evtl. gar nicht 25
26 3) Server stürzt ab 3) keine Garantie - Anfrage kann gar nicht, einmal oder viele Male ausgeführt worden sein - Client wird alleine gelassen - leicht zu implementieren Wünschenswerte Genau-Einmal-Semantik nicht realisierbar! 26
27 4) Antwort geht verloren Problem: für den Client nicht zu unterscheiden von 3) Server-Crash Kann eine Operation einfach wiederholt werden, wenn sie schon ausgeführt wurde? Idempotente Operation: ein Aufruf ändert nichts am Zustand, kann beliebig oft aufgerufen werden Versuche, möglichst nur idempotente Prozeduren zu verwenden (geht nicht immer) Mögliche Lösungen: zustandsbehaftete Server, die sich Sequenznummern von Client-Requests merken Identifikation von Wiederholungsanfragen (z.b. Bit in Header) 27
28 5) Client-Crash Client stürzt ab, bevor Server Antwort sendet die entstehenden elternlosen Antworten können zu Problemen führen Ressourcenverschwendung Konfusion bei Neustart des Clients und anschließendem Empfang der Antwort Mögliche Lösungen Extermination: merke Dir alle angestossenen Operationen in permanentem Speicher, lösche dann nach Neustart noch eintreffende Antworten 28
29 5) Client-Crash Reinkarnation: Verwendung von Epochen Lebenszeit des Client. - Wenn Client neu startet, beginnt neue Epoche, - Client sendet Broadcast mit neuer Epoche an alle Computer - diese löschen anhängige alte Requests - Client lösche Antworten von überlebenden alten Requests 29
30 Zuverlässige Gruppenkommunikation Multicast ist eine effiziente Umsetzung für Gruppenkommunikation, insbesondere bei vielen Prozessen. Jedoch selten implementiert Zuverlässig bedeutet, dass alle Prozesse einer Gruppe jede gesendete Nachricht bekommen. Komplizierter wird es bei Prozessausfall oder dynamischem Join während der Kommunikation. 30
31 Schwacher zuverlässiger Multicast Übereinkunft über Gruppenmitgliedschaft besteht, kein Fehlschlagen, kein dynamisches Beitreten, aber unzuverlässiger Kanal Lösung: Problem: Skalierbarkeit, ACK Implosion 31
32 Lösungen NACKs ( Verpasst 24 ) statt ACKs Meistens besser als ACKs keine Garantie gegen Implosion Nachrichten müssen theoretisch endlos im Sendepuffer gehalten werden Diverse Vorschläge für skalierbares zuverlässiges Multicast Nicht-hierarchische Rückkopplung - z.b. Scalable Reliable Multicast (SRM): reduziere die Zahl der Antworten durch Rücksenden von NACKs über Multicast, andere unterdrücken dann ihr NACK Hierarchische Rückkopplung: Aggregation der NACKs entlang von Multicastbäumen, besonders geeignet für große Multicast-Gruppen 32
33 Atomarer Multicast Schwierigerer Fall: zuverlässiger MC bei Prozessausfällen entweder alle bekommen die Nachricht oder keiner in derselben Reihenfolge dies wird als atomarer Multicast bezeichnet Wichtig z.b. bei aktiver Replikation über Multicast, in der jedes Replikat von einem Prozess verwaltet wird Wenn ein Prozess abstürzt, könnten bei Nicht-Atomizität Inkonsistenzen entstehen. 33
34 Atomarer Multicast: Idee Eine Multicast-Nachricht m wird einer Liste von Prozessen zugeordnet, an die sie ausgeliefert werden soll. Sender hat damit eine Gruppensicht Sicht auf die Menge die Prozesse, die in der Empfängergruppe sind an dem Zeitpunkt, an dem m gesendet wird. Jeder Prozess aus der Menge hat dieselbe Sicht auf alle Nachrichten, d.h. eine Nachricht wird an alle oder an keinen ausgeliefert. 34
35 View Change Was passiert, wenn ein Prozess während der Multicasts der Gruppe G beitritt oder sie verlässt? Dies wird durch eine weitere Multicast-Nachricht vc bekanntgegeben. Es muss dann garantiert werden, dass entweder alle Prozesse in G zuerst m bekommen, bevor vc an einen der Prozesse ausgeliefert wird, oder m gar nicht ausgeliefert wird 35
36 Virtuell Gleichzeitiger MC Strengere Form des zuverlässigen Multicast: Nachricht wird an alle nicht-fehlerhaften Prozesse in G ausgeliefert Wenn der Sender von m während des MC abstürzt, kann die Nachricht an alle Empfänger ausgeliefert werden oder von allen ignoriert werden (wenn einige Empfänger die Nachricht vor dem Absturz nicht bekommen haben) Virtuelle Gleichzeitigkeit: Alle Multicasts finden zwischen Änderungen der Sicht statt. Anders gesagt: kein Multicast kann die Grenze einer Sichtänderung überschreiten. Implementierung ist schwierig Beispielsystem: Isis 36
37 Virtuell Gleichzeitiger MC: Prinzip 37
38 Zusammenfassung Fehlertoleranz ist ein wichtiges Konzept in verteilten Systemen Es gibt viel mehr Fehlerquellen als in zentralisierten Systemen Das System funktioniert möglicherweise trotz teilweiser Fehler. Wir haben Lösungen betrachtet für die Koordination von redundanten Prozessen und für Fehlerfälle beim Remote Procedure Call. 38
Verteilte Systeme. 7. Fehlertoleranz
Verteilte Systeme 7. Fehlertoleranz Sommersemester 2011 Institut für Betriebssysteme und Rechnerverbund TU Braunschweig Dr. Christian Werner Bundesamt für Strahlenschutz 7-2 Überblick Motivation für Fehlertoleranz
MehrMotivation für Fehlertoleranz in VS Fehlermodelle Erreichen von Fehlertoleranz. Verteilte Systeme. 7. Fehlertoleranz
7-2 Überblick Verteilte Systeme 7. Fehlertoleranz Sommersemester 2011 Motivation für Fehlertoleranz in VS Fehlermodelle Erreichen von Fehlertoleranz Ausfallsicherheit von Prozessen Zuverlässiger Remote
Mehr11-2. Verteilungs- und Konsistenzprotokolle. Kapitel 11: Replikation u. Fehlertoleranz. Verteilte Systeme. IBR, TU Braunschweig
TU Braunschweig Institut für Betriebssysteme und Rechnerverbund Kapitel 11: Konsistenz, Replikation und Fehlertoleranz Sinn der Replikation Replikation bedeutet das Halten einer oder mehrerer Kopien eines
Mehr7 Fehlertoleranz. vs7 1
7 Fehlertoleranz vs7 1 Zuverlässigkeit (reliability) Sicherheit vor Fehlern (safety) Sicherheit vor Angriffen (security) -> Systemsicherheit -> Netzsicherheit vs7 2 7.1 Terminologie (ist nicht einheitlich)
MehrByzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit Frank Mattauch
1 Hauptseminar: Moderne Konzepte für weitverteilte Systeme: Peer-to-Peer-Netzwerke und fehlertolerante Algorithmen (DOOS) Byzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit
MehrProf. Dr.-Ing. Dagmar Meyer Architekturen verteilter SW-Systeme 5 SYNCHRONISATION
Prof. Dr.-Ing. Dagmar Meyer 5 SYNCHRONISATION Warum braucht man Synchronisation? Ausgangssituation Prozesse müssen sich koordinieren / synchronisieren, z. B. beim Zugriff auf gemeinsame Ressourcen. Alle
MehrVerteilte Systeme Prof. Dr. Stefan Fischer. Überblick. Sinn der Replikation. TU Braunschweig Institut für Betriebssysteme und Rechnerverbund
TU Braunschweig Institut für Betriebssysteme und Rechnerverbund Kapitel 11: Konsistenz, Replikation und Fehlertoleranz Überblick Motivation: warum Replikation? warum ein Konsistenzproblem? Konsistenzmodelle
MehrSicherheit (Safety): Fehlerfall hat keinen katastrophalen Effekt - Menschenleben nicht gefährdet, - Datenbestand nicht zerstört.
8. Fehlertoleranz 8.1 Terminologie Umfassenderer Begriff: Verlässlichkeit. Verfügbarkeit (Availability): Wahrscheinlichkeit für das korrekte Arbeiten des Systems zu gegebenem Zeitpunkt. Zuverlässigkeit
MehrÜbungsaufgabe 5. Verteilte Systeme - 6. Übung. Fehler & RPC (lokaler Fall) Transparenz beim Fernaufruf. RPC-Aufrufsemantiken Fehlermodell
Übungsaufgabe 5 Verteilte Systeme - 6. Übung Tobias Distler, Michael Gernoth, Reinhard Tartler Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme)
MehrFehlertoleranz in eingebetteten Systemen
Fehlertoleranz in eingebetteten Systemen Ausgewählte Kapitel eingebetteter Systeme (AKES) 19.07.2006 1 / 36 Was ist ein Fehler? Fehlerklassen Überblick Einführung Was ist ein Fehler? Fehlerklassen 2 /
MehrÜbung 4 Gruppe Hosebei
Übung 4 Gruppe Hosebei 03.0.2002 Michele Luongo migi@luongo.org s99-73-90 Franziska Zumsteg F.Zumsteg@access.unizh.ch s99-77-084 Philip Iezzi pipo@iezzi.ch s99-74-354 Raphael Bianchi saint.ch@dtc.ch s95-2-003
MehrÜberblick. RPC-Semantiken Fehler bei Fernaufrufen Fehlertolerante Fernaufrufe Übungsaufgabe 3. VS-Übung (SS12) RPC-Semantiken 5 1
Überblick RPC-Semantiken Fehler bei Fernaufrufen Fehlertolerante Fernaufrufe Übungsaufgabe 3 VS-Übung (SS12) RPC-Semantiken 5 1 Fehlerquellen Anwendung Fehler sind nicht im Fernaufruf begründet Fehlersituation
MehrVerteilte Systeme. Übereinstimmung und Koordination
Verteilte Systeme Übereinstimmung und Koordination 1 Wahlen 2 Wahl-Algorithmen In vielen verteilten Algorithmen benötigt man einen Prozeß, der eine irgendwie geartete besondere Rolle spielt, z.b. als Koordinator,
MehrVerteilte Systeme - Übung
Verteilte Systeme - Übung Schriftliche Übungen Dienen der Klausurvorbereitung Zwei Teile: Serie A: Okt - Nov Serie B: Nov - Jan 3% der Endnote je Serie Ansprechpartner: Harald Vogt Heute:
MehrFehlerquellen. Überblick. Einordnung. Fehlerquellen
Überblick RPC-Semantiken Fehler bei Fernaufrufen Fehlertolerante Fernaufrufe Fehlerquellen Anwendung Fehler sind nicht im Fernaufruf begründet Fehlersituation tritt bei lokalem Methodenaufruf ebenfalls
MehrVerteilte Systeme. Replikation & Konsistenz II. Prof. Dr. Oliver Haase
Verteilte Systeme Replikation & Konsistenz II Prof. Dr. Oliver Haase 1 Überblick Replikation & Konsistenz I Ziele von Replikation Replikationsmodelle datenzentriert Client-zentriert Replikation & Konsistenz
Mehr5.1 Verteilung von Aktualisierungshinweisen
5.1 Verteilung von Aktualisierungshinweisen Verteilung von Nachrichten über eine Aktualisierung lokaler Datenspeicher erfährt, dass Aktualisierung stattfand z.b. Invalidierungsnachricht vgl. erste DSM-Implementierung
MehrGrundlagen verteilter Systeme
Universität Augsburg Institut für Informatik Prof. Dr. Bernhard Bauer Stephan Roser Viviane Schöbel Aufgabe 1: Wintersemester 07/08 Übungsblatt 6 15.01.08 Grundlagen verteilter Systeme Lösungsvorschlag
MehrGrundlagen verteilter Systeme
Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 7 17.12.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)
MehrFehlertoleranz. Betriebssysteme. Hermann Härtig TU Dresden
Fehlertoleranz Betriebssysteme Hermann Härtig TU Dresden Wegweiser Prinzipien der Fehlertoleranz RAID als ein Beispiel Betriebssysteme WS 2018, Fehlertoleranz!2 Begriffe Grundprinzip Konstruktion zuverlässigerer
MehrWechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen. Özden Urganci Ulf Sigmund Ömer Ekinci
Wechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen Özden Urganci Ulf Sigmund Ömer Ekinci Inhaltsangabe 1 Einleitung 2 Prinzipien des verteilten wechselseitigen Ausschlusses 2.1 Anforderungen
MehrÜberblick. Multicast Motivation Grundlagen Zustellungsgarantien Ordnungsgarantien Paxos. c td VS (SS17) Multicast 7 1
Überblick Multicast Motivation Grundlagen Zustellungsgarantien Ordnungsgarantien Paxos c td VS (SS17) Multicast 7 1 Motivation Fehlertoleranz durch Replikation Redundante Applikationsinstanzen auf unterschiedlichen
MehrGrundlagen: Überblick
Grundlagen: Überblick Verteilte Systeme Definition Grundbegriffe Kommunikation Klassifikation von Fehlern Begriffe Fehlerarten Analyse von Algorithmen Korrektheit Komplexität Verteilte Algorithmen (VA),
MehrGeschichte der Netze und verteilten Systeme. Gründe für die Nutzung verteilter Systeme. Wünschenswerte Eigenschaften verteilter Systeme
Überblick Geschichte der Netze und verteilten Systeme Was ist ein Verteiltes System? Beispiele für verteilte Systeme Gründe für die Nutzung verteilter Systeme Wünschenswerte Eigenschaften verteilter Systeme
MehrFehlertoleranz & Robustheit
January 17, 2017 Warum Recap fault error failure transient - permanent - intermittent Kritische Anwendungen - Extreme Umgebung - Komplexität Trends: Miniaturisierung kleiner Streuung in Fertigung einfach
MehrPraktikable Einigungsalgorithmen
Praktikable Einigungsalgorithmen Algorithmen für synchrone Systeme Atomarer Broadcast: siehe Aufgabe 4.4 Burns/Neiger Lamport/Shostak/Pease: Oral Messages; Signed Messages Algorithmen für asynchrone Systeme
MehrVerteilte Betriebssysteme
Andrew S. Tanenbaum Verteilte Betriebssysteme Prentice Hall München London Mexiko City New York Singapur Sydney Toronto Vorwort 1 Verteilte Systeme - Einführung 1.1 Was ist ein verteiltes System? 1.2 Ziele
Mehr12 Fehlertoleranz. Begriffe. Failure das System verhält sich nicht wie spezifiziert.
12 Fehlertoleranz ein verteiltes System beinhaltet viele Abstraktionsebenen, die stark voneinander abhängen. z.b. hängt der Klient von seinem Server ab, der wiederum von seinen Diensten, etc. die Kette
MehrAlgorithmus von Berkeley (1989)
Annahme: kein UTC Empfänger verfügbar Algorithmus (zentral, intern): Algorithmus von Berkeley (1989) ein Rechneragiert als aktiver Time Server. Der Server fragt periodisch die Zeiten/Unterschiede aller
MehrÜberblick. Replikation Motivation Grundlagen Aktive Replikation Passive Replikation. c td VS (SS16) Replikation 6 1
Überblick Replikation Motivation Grundlagen Aktive Replikation Passive Replikation c td VS (SS16) Replikation 6 1 Motivation Zielsetzungen Tolerierung permanenter Server-Ausfälle Hohe Verfügbarkeit von
MehrKonzepte von Betriebssystem- Komponenten Middleware. Jini. Vortrag von Philipp Sommer
Konzepte von Betriebssystem- Komponenten Middleware Vortrag von Philipp Sommer 1 Inhalt 1. Einführung Hintergrund Was ist? Ziele von 2. Technology Komponenten Client, Server und Dienste Discovery und Join
MehrVerteilte Systeme - 5. Übung
Verteilte Systeme - 5. Übung Dr. Jens Brandt Sommersemester 2011 Transaktionen a) Erläutere was Transaktionen sind und wofür diese benötigt werden. Folge von Operationen mit bestimmten Eigenschaften: Atomicity
MehrVerteilte Algorithmen
Verteilte Softwaresysteme Verteilte Algorithmen Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 18.06.2018 21:08 Inhaltsverzeichnis Verteilt versus zentralisiert 1 Unterschiede....................................
MehrMotivation. Gruppenkommunikation. Verteilte Anwendung. Gruppenkommunikation. HW-Multicast div. GC-Impl totale Ord. Kommunikationsnetz
s s Gruppenkommunikation Motivation Kommunikation bei der Programmentwicklung bewährter, verstandener Mechanismus Bei Gruppenkommunikation verschieden teuere semantische Varianten möglich (dadurch ggf.
MehrFehlertoleranz in verteilten Systemen
Fehlertoleranz in verteilten Systemen Vortrag im Rahmen des Masterseminars Fehlertolerante Systeme Betreuer: Dr. Volkmar Sieh Autor: Gona Fatah Erlangen, 16.12.2014 Agenda Verteilte Systeme Definition
MehrVerteilte Systeme. Übereinstimmung und Koordination
Verteilte Systeme Übereinstimmung und Koordination 1 Wahlen 2 Wahl-Algorithmen In vielen verteilten Algorithmen benötigt man einen Prozeß, der eine irgendwie geartete besondere Rolle spielt, z.b. als Koordinator,
MehrVerteilte Systeme. Synchronisation II. Prof. Dr. Oliver Haase
Verteilte Systeme Synchronisation II Prof. Dr. Oliver Haase 1 Überblick Synchronisation 1 Zeit in verteilten Systemen Verfahren zum gegenseitigen Ausschluss Synchronisation 2 Globale Zustände Wahlalgorithmen
MehrVersion: Das Versionsfeld gibt an ob es sich um IPv4 oder um IPv6 handelt.
Folie 1 Folie 2 Folie 3 Version: Das Versionsfeld gibt an ob es sich um IPv4 oder um IPv6 handelt. IHL (IP Header Length) Im IHL-Feld wird ein vielfaches von 32 Bit angegeben. Die Summe gibt die Größe
MehrEMES: Eigenschaften mobiler und eingebetteter Systeme. Gruppenkommunikation. Dr. Siegmar Sommer, Dr. Peter Tröger Wintersemester 2009/2010
EMES: Eigenschaften mobiler und eingebetteter Systeme 00101111010010011101001010101 Gruppenkommunikation Dr. Siegmar Sommer, Dr. Peter Tröger Wintersemester 2009/2010 00101111010010011101001010101 Motivation
MehrGruppenkommunikation. Dipl.-Inf. J. Richling Wintersemester 2003/2004
Gruppenkommunikation Dipl.-Inf. J. Richling Wintersemester 2003/2004 Motivation Häufig ist eine Aufgabe von einer Gruppe zu erledigen Gruppenmitglieder: Rechner, Prozesse Anwendung: Fehlertoleranz Client-Server-Anwendungen.
MehrFEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG
Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG BEGRIFFE Sicherheit/Security/Safety
MehrProseminar Technische Informatik WS08/09 bei Georg Wittenburg, M.Sc. Zuverlässigkeit und Fehlertoleranz in der Technik
Proseminar Technische Informatik WS08/09 bei Georg Wittenburg, M.Sc. Zuverlässigkeit und Fehlertoleranz in der Technik Ein Vortrag von Sebastian Oliver Kalwa Berlin, 30.01.2009 1 Was ist Fehlertoleranz?
MehrÜberblick. Verteilte Systeme - Übung. VS-Übung. RPC-Semantiken Fehler bei Fernaufrufen Fehlertolerante Fernaufrufe. Tobias Distler, Michael Gernoth
Überblick Verteilte Systeme - Übung Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.informatik.uni-erlangen.de Sommersemester 2009
MehrVS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel
VS2 Slide 1 Verteilte Systeme Vorlesung 2 vom 15.04.2004 Dr. Sebastian Iwanowski FH Wedel VS2 Slide 2 Inhaltlicher Umfang dieser Vorlesung Inhaltliche Voraussetzungen: Programmieren, Grundkenntnisse Java
MehrLiteratur. VA SS Teil 5/Messages
Literatur [5-1] https://en.wikipedia.org/wiki/message-oriented_middleware [5-2] https://en.wikipedia.org/wiki/advanced_message_queuing_protocol http://www.amqp.org/specification/0-10/amqp-org-download
MehrVerteilte Systeme. Replikation & Konsistenz I. Prof. Dr. Oliver Haase
Verteilte Systeme Replikation & Konsistenz I Prof. Dr. Oliver Haase 1 Überblick Replikation & Konsistenz I Ziele von Replikation Replikationsmodelle datenzentriert Client-zentriert Replikation & Konsistenz
MehrFehlertolerante Systeme
Wissenschaftliche Vertiefung Studiengang Technische Informatik Fehlertolerante Systeme Philipp Dürnay 22.01.2016 Agenda Fehlertoleranz Fehlerdiagnose Fehlerbehandlung Beispielsystem Ausblick Philipp Dürnay
MehrIUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only
IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES 2016 Software AG. All rights reserved. For internal use only DIGITAL BUSINESS APPLICATIONS DRIVE THE DIGITAL BUSINESS Partner Lieferanten Kunden SaaS
MehrVorlesung "Systemsoftware II" Wintersemester 2002/03
(c) Peter Sturm, Universität Trier 1 Verteilte Systeme 16. Transaktionen Motivation Sicherung konsistenter Systemzustände Beispiele Amnesieproblematik bei zustandsbehafteten Servern Sicherung des Primaries
MehrVorlesung "Verteilte Systeme" Wintersemester 2000/2001. Verteilte Systeme. 14. Transaktionen
Verteilte Systeme 14. Transaktionen Motivation Sicherung konsistenter Systemzustände Beispiele Amnesieproblematik bei zustandsbehafteten Servern Sicherung des Primaries (Primary-Backup- Approach) Aktive
MehrÜberblick. Verteilte Systeme
Überblick Wintersemester 2014/2015 Prof. Dr. Peter Mandl Verteilte Systeme Einführung und Überblick Zeitsynchronisation Wahl und Übereinstimmung RPC, verteilte Objekte und Dienste Verteilte Transaktionen
MehrAufgabe 2.1: Lamports Uhren
Aufgabe 2.1: Lamports Uhren Die Relation a ereignet sich kausal vor b wird kurz als a b notiert. Von zwei Ereignissen a und b sind logische Zeitstempel nach Lamport, C(a) und C(b), bekannt, und es gilt
MehrVerteilte Betriebssysteme
Verteiltes System Eine Sammlung unabhängiger Rechner, die dem Benutzer den Eindruck vermitteln, es handle sich um ein einziges System. Verteiltes Betriebssystem Betriebssystem für verteilte Systeme Verwaltet
MehrVerteilte Systeme. Verteilte Systeme. 7 Koordination SS 2017
Verteilte Systeme SS 2017 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 26. Juni 2017 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/12) i
MehrSpezifikation von Kommunikationssystemen
1 / 29 Spezifikation von Kommunikationssystemen 10. Einführung in die Zuverlässigkeitstheorie Prof. Jochen Seitz Fachgebiet Kommunikationsnetze Sommersemester 2016 2 / 29 Übersicht 1 Grundlagen der Zuverlässigkeitstheorie
MehrGrundlagen: Überblick
Grundlagen: Überblick Verteilte Systeme Definition und Grundbegriffe Modellierung von Systemeigenschaften Punkt-zu-Punkt-Verbindungen Multicast-Kommunikation Synchrone und asynchrone Systeme Fehler und
MehrVerteilte Systeme Kapitel 8: Replikation und Konsistenz
Verteilte Systeme Kapitel 8: Replikation und Konsistenz Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Inhaltsüberblick der Vorlesung
MehrVerteilte Systeme. Verteilte Systeme. 8 Replikation und Konsistenz SS 2017
Verteilte Systeme SS 2017 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 10. Juli 2017 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/12) i
MehrVerteilte Systeme - Java Networking (Sockets) -
Verteilte Systeme - Java Networking (Sockets) - Prof. Dr. Michael Cebulla 30. Oktober 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 36 M. Cebulla Verteilte Systeme Gliederung Grundlagen TCP/IP
MehrKlausur Verteilte Systeme SS 2004 Iwanowski
Klausur Verteilte Systeme SS 2004 Iwanowski 13.08.2004 Hinweise: Bearbeitungszeit: 90 Minuten Erlaubte Hilfsmittel: keine Bitte notieren Sie Ihre Antworten ausschließlich auf dem Aufgabenblatt! Bei Bedarf
MehrRechnernetze Übung 11. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2012
Rechnernetze Übung 11 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2012 IP: 192.168.43.9 MAC: 02-55-4A-89-4F-47 IP: 216.187.69.51 MAC: 08-48-5B-77-56-21 1 2 IP: 192.168.43.15 MAC:
MehrVerteilte Systeme - Java Networking (Sockets) 2 -
Verteilte Systeme - Java Networking (Sockets) 2 - Prof. Dr. Michael Cebulla 06. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 30 Michael Cebulla Verteilte Systeme Gliederung Wiederholung:
MehrUberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS13) Verteilte Synchronisation 11 1
Überblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS-Übung (SS13) Verteilte Synchronisation 11 1 Zeit in verteilten Systemen Ist Ereignis A auf Knoten
MehrVerteilte Systeme SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 8.
Verteilte Systeme SS 2013 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 8. Juli 2013 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/13) i
MehrDie Sicht eines Sysadmins auf DB systeme
Die Sicht eines Sysadmins auf DB systeme Robert Meyer 21. Oktober 2016 Robert Meyer Die Sicht eines Sysadmins auf DB systeme 21. Oktober 2016 1 / 20 Inhaltsverzeichnis 1 Einleitung 2 IO unter Linux typische
MehrVerteilte Systeme. 6. Multicast. Multicast. Vorlesung "Verteilte Systeme" Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1
Verteilte Systeme 6. Multicast Multicast Sender Empfänger 1 Empfänger 2 Empfänger n Senden einer Nachricht an mehrere Empfänger Möglichst effiziente Verbreitung an alle Empfänger Nachrichteneffizienz,
Mehr7.2 Journaling-File-Systems (4)
7.2 Journaling-File-Systems (4) Log vollständig (Ende der Transaktion wurde protokolliert und steht auf Platte): Redo der Transaktion: alle Operationen werden wiederholt, falls nötig Log unvollständig
MehrVerteilte Systeme. Diffusionsalgorithmen. Secure Identity Research Group
Verteilte Systeme Diffusionsalgorithmen Diffusionsalgorithmen Definition: Ein verteilter Diffusionsalgorithmus auf einem Beliebigen Graphen startet in einem Zustand, in dem alle Knoten des Graphen idle
MehrSysteme II. Christian Schindelhauer Sommersemester Vorlesung
Systeme II Christian Schindelhauer Sommersemester 2006 19. Vorlesung 12.07.2006 schindel@informatik.uni-freiburg.de 1 Stauvermeidung in TCP Tahoe Jacobson 88: Parameter: cwnd und Slow-Start-Schwellwert
Mehr5 Verteilte Algorithmen. vs5 1
5 Verteilte Algorithmen vs5 1 Charakterisierung eines verteilten Systems? Prozesse als Systemkomponenten: Spezifikation eines Prozesses (Vgl. Spezifikation eines ADT) syntaktisch: z.b. Ports oder Parameter
MehrRechnernetze Übung 11
Rechnernetze Übung 11 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juli 2011 Herr Müller (Test GmbH) Sekretärin (Super AG) T-NR. 111 T-NR. 885 Sekretärin (Test GmbH) Herr Meier (Super
Mehr12 Fehlertoleranz. Begriffe
12 Fehlertoleranz ein verteiltes System beinhaltet viele Abstraktionsebenen, die stark voneinander abhängen. - z.b. hängt der Klient von seinem Server ab, der wiederum von seinen Diensten, etc. - die Kette
MehrUberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS15) Verteilte Synchronisation 10 1
Überblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS-Übung (SS15) Verteilte Synchronisation 10 1 Zeit in verteilten Systemen Ist Ereignis A auf Knoten
MehrFehlertolerante und Selbstheilende Systeme. Redundanztechniken
Fehlertolerante und Selbstheilende Systeme Redundanztechniken Azad Kamo Seminar Fehlertolerante und Selbstheilende Systeme: Redundanztechniken Azad Kamo - 1 Gliederung Motivation Fehler Ziele der Fehlertoleranz
Mehr5.3 Auswahlalgorithmen
5.3 Auswahlalgorithmen (election algorithms) dienen der Wahl eines Koordinators ( Gruppenleiters ) einer Gruppe bei halbverteilten Algorithmen die ausgewählte Station hat koordinierende Aufgaben (Beispiel:
MehrVorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme. 13. Fehlertoleranz. Verteilte Systeme, Sommersemester 1999 Folie 13.
Verteilte Systeme 13. Fehlertoleranz Motivation Kunde () Verteiltes System = Redundanz Rechnern Kommunikationsnetzen Grundidee Einzelne Komponente k fällt mit einer Wahrscheinlichkeit p aus Ausfallwahrscheinlichkeit
MehrÜbung 9. Tutorübung zu Grundlagen: Rechnernetze und Verteilte Systeme (Gruppen Mo-T1 / Di-T11 SS 2016) Dennis Fischer
Übung 9 Tutorübung zu Grundlagen: Rechnernetze und Verteilte ysteme (Gruppen Mo-T1 / Di-T11 2016) Dennis Fischer dennis.fischer@tum.de Technische Universität München Fakultät für Informatik 20.06.2016
MehrLernziele. ohne Browser. Beispiel: Beispiel: ohne Browser. Definition
Lernziele Web-Dienste Was sind Web-Dienste (Web Services)? Was ist eine dienstorientierte Architektur? Was ist, WSDL und UDDI? Nur kurze Einführung, und WSDL werden später ausführlich behandelt. zwei verschiedene
MehrPROJEKTIEREN DER HW UND DER VERBINDUNGEN...
Inhaltsverzeichnis 1 PROJEKTIEREN DER HW UND DER VERBINDUNGEN... 2 1.1 KONFIGURATION DER HW... 2 1.2 KONFIGURATION DER VERBINDUNGEN... 3 1.2.1 Konfiguration UDP- Verbindung...3 1.2.2 Konfiguration TCP
MehrPrinzipen und Komponenten Eingebetteter Systeme (PKES) Sebastian Zug Arbeitsgruppe Eingebettete Systeme und Betriebssysteme
1 Vorlesung Prinzipen und Komponenten Eingebetteter Systeme (PKES) (2) Was ist ein eingebettetes Gerät? Sebastian Zug Arbeitsgruppe Eingebettete Systeme und Betriebssysteme 2 Veranstaltungslandkarte Fehlertoleranz,
Mehr2. Anforderungen an Automatisierungssysteme
Grundlagen der Automatisierungstechnik (Automatisierungstechnik 1) 2. Anforderungen an Automatisierungssysteme Anforderungen an Automatisierungssysteme Verlässlichkeit (Dependability) Zuverlässigkeit (Reliability)
MehrVerteilte Systeme F. Fehlertoleranz
Verteilte Systeme F. Fehlertoleranz Fachbereich Elektrotechnik und Informationstechnik Verteilte Systeme, Seite F.1 Fehlertoleranz Abhängigkeiten in einem verteilten System: Client! Server! Dienste! Software!
MehrRealisierung von atomarem Broadcast. Atomarer bzw. totaler Broadcast
Atomarer bzw. totaler Totale Ordnung: Wenn zwei Prozesse P 1 und P 2 beide die achrichten und empfangen, dann empfängt P 1 vor genau dann, wenn P 2 die achricht vor empfängt Beachte: Das Senden wird nicht
MehrThemenschwerpunkt: Rechnernetze und Netzwerkdesign
Themenschwerpunkt: Rechnernetze und Netzwerkdesign Aufgabe 1: Nennen Sie den wesentlichen Vorteil eines Netzwerkes mit Bus-Topologie? Lösung: Wesentlicher Vorteil der Bus-Topologie ist der geringe Verkabelungsaufwand
MehrAtomare Commit-Protokolle. Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher Atomare Commit-Protokolle Folie 1
Atomare Commit-Protokolle Grundlagen von Datenbanken - SS 2010 - Prof. Dr. Stefan Böttcher Atomare Commit-Protokolle Folie 1 Atomares Commit-Protokoll Bisher: Protokolle zur lokalen Transaktionsverwaltung
MehrZusammenfassung für CS-Prüfung 3 Seite 1. CS-Zusammenfassung für Prüfung 3 vom Im Beispiel gibt es 3 Deadlocks
Zusammenfassung für CS-Prüfung 3 Seite 1 CS-Zusammenfassung für Prüfung 3 vom 24. 6. 2002 Deadlock Im Beispiel gibt es 3 Deadlocks Unterschied zwischen Blockieren, Verklemmen und Verhungenrn= -> Band 1
MehrKlausur zu Verteilte Anwendungen SS 2004 (Prof. Dr. J.Schlichter, Dr. W.Wörndl)
Klausur zu Verteilte Anwendungen SS 2004 (Prof. Dr. J.Schlichter, Dr. W.Wörndl) Name: Matrikelnummer: (bitte deutlich schreiben) Zustimmung zur Veröffentlichung des Ergebnisses im Internet: ja nein Datum:
Mehr3. Übung zur Vorlesung Verteilte Betriebssysteme
UNIVERSITÄT ULM Fakultät für Informatik Verteilte Systeme Prof. Dr. Peter Schulthess Markus Fakler 3. Übung zur Vorlesung Verteilte Betriebssysteme 21.11.2007 Aufgabe 1: Verteilte Algorithmen (3 + 1 +
MehrBully-Algorithmus Krebs Florian, Kus Matthias, Pisselhoy Andreas, Schwab Benjamin, Heinrich Jörg
Bully-Algorithmus Krebs Florian, Kus Matthias, Pisselhoy Andreas, Schwab Benjamin, Heinrich Jörg Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße 14,
MehrZiele der Replikation Unterschiedliche Replikationsanforderungen Replikationsmodelle. Verteilte Systeme. 6. Konsistenz und Replikation
6-2 Überblick Verteilte Systeme 6. Konsistenz und Replikation Sommersemester 2011 Institut für Betriebssysteme und Rechnerverbund TU Braunschweig Dr. Christian Werner Bundesamt für Strahlenschutz Ziele
MehrVorlesung "Verteilte Systeme" Sommersemester 1999
Verteilte Systeme Sommersemester 1999 Universität Trier Peter Sturm Abstract In einem verteilten System kommunizieren mehrere Prozesse durch den Austausch von Nachrichten. Ausführungsplattform sind dabei
MehrCORSO Space Based Computing mit Java
CORSO Space Based Computing mit Java Dipl.-Ing. Alexander Forst-Rakoczy TECCO Software Entwicklung AG A-1040 Wien, Prinz Eugen-Str. 58, E-Mail: info@tecco.at Web: www.tecco.at, Tel: (431) 5039240-0, Fax:
Mehr2 Kommunikationssysteme. vs2 1
2 Kommunikationssysteme vs2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen aus - Kommunikationsnetz
Mehr1 Die Namensauflösung mit
1 Die Namensauflösung mit DNS Prüfungsanforderungen von Microsoft: Lernziele: Implement DNS o Install and Configure DNS-Servers o Create and Configure DNS Zones and Records DNS Zonen Überprüfen der DNS
MehrVerteilte Systeme. Theoretische Übungen. Bemerkungen
Verteilte Systeme Theoretische Übungen Bemerkungen Diese Übungen dienen zur Vorbereitung auf die schriftliche Prüfung. Sie sind freiwillig und werden nicht korrigiert. Wenn Sie Fragen oder Bemerkungen
Mehr