Sicherheit (Safety): Fehlerfall hat keinen katastrophalen Effekt - Menschenleben nicht gefährdet, - Datenbestand nicht zerstört.

Größe: px
Ab Seite anzeigen:

Download "Sicherheit (Safety): Fehlerfall hat keinen katastrophalen Effekt - Menschenleben nicht gefährdet, - Datenbestand nicht zerstört."

Transkript

1 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 (Reliability): Zeitintervall für korrektes Systemverhalten; Meantime between failure (MTBF). Unterschied zwischen Verfügbarkeit und Zuverlässigkeit: - Beispiel: System fällt alle Stunde für eine Millisekunde aus: Verfügbarkeit von 99,9999%, aber MTBF von knapp 1h. - Beispiel: System fällt alle Jahre für einen Monat aus: Verfügbarkeit von 91,67%, aber MTBF von einem Jahr. Sicherheit (Safety): Fehlerfall hat keinen katastrophalen Effekt - Menschenleben nicht gefährdet, - Datenbestand nicht zerstört. Wartbarkeit (Maintainability): Fehlerfall kann leicht repariert werden. Verlässliche Systeme müssen fehlertolerant sein. 180 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

2 8.2 Fehlerbegriff Ausfall (failure): System verhält sich nicht spezifikationskonform. Eingetretener Fehler (error): Teil eines unerlaubten Systemzustands, der zu einem Ausfall führen kann (falls nicht entsprechend behandelt). Fehlerursache (fault): Ursache für einen eingetretenen Fehler. Beispiel: - ein Bit bei Datenübertragung kippt um: z.b. DNS-Anfrage zur Auflösung einer IP-Adresse (Fault), - das führt zu falsch interpretierten Empfangsdaten: z.b. falsche IP-Adresse (Error), - das führt zu Unfähigkeit zur Kommunikation: z.b. Anwendungskomponte kann nicht erreicht werden (Failure). Problem: - Failure nicht immer leicht beobachtbar: z.b. falsche Anwendungskomponente wird erreicht, - Error hingegen beobachtbar: setzt globale Sicht auf Zustand voraus. 181 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

3 Zeitdauer von Faults Transiente Faults: - einmaliges Auftreten, - mehrfache Versuche führen in der Regel zum Ziel, - z.b. Kommunikationsfehler durch Vogel in Richtfunkstrecke. Intermittierende Faults: - sporadisches Auftreten, - z.b. Wackelkontakt. Permanente Faults: - ständiges Auftreten, - z.b. Speicherzelle durchgebrannt. 182 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

4 8.3 Fehlermodelle Rechner- bzw. Programmabsturz (Crash Failure): - z.b. Server stürzt ab und beantwortet keine Anfragen mehr Fail-Stop-Verhalten, - einfaches und gutartiges Fehlermodell, - Problem: Absturz und langsames Antworten schlecht unterscheidbar. Dienstverweigerung (Omission Failure): - z.b. Server antwortet nicht auf Anfragen (z.b. durch Nachrichtenverlust), - gutartiges Fehlermodell. Zeitfehler (Timing Failure): - z.b. Server antwortet nicht rechtzeitig. Fehlerhafte Antworten (Response Failure): - z.b. Server antwortet nicht richtig, - falsche Antwortdaten und/oder falsche Serverzustände, - schwieriges Fehlermodell. Byzantinische Fehler (Byzantine Failure): - System kann sich beliebig falsch verhalten, - z.b. Server schickt gelegentlich falsche Antworten und erreicht gelegentlich falsche Systemzustände, - sehr schwieriges Fehlermodell. 183 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

5 8.4 Fehlermaskierung Ziel: Verbergen der Fehler vor anderen Komponenten. Fehlererkennung (Detection): Identifikation der fehlerhaften Komponenten. Schadensermittlung (Damage Confinement): Identifikation der fehlerhaften Systemzustände. Fehlererholung (Recovery): - Berichtigung fehlerhafter Zustände, - Weiterarbeiten mit redundanten Komponenten oder Daten. Einsatz von Redundanz (Johnson, 1995): - Informationsredundanz: o zusätzliche Daten zur Fehlererkennung und erholung. o z.b. spezielle Codes, Checksummen,... - Zeitredundanz: o Wiederholung fehlerhafter oder unbeantworteter Anfragen/Vorgänge. o z.b. RPC-Implementierung. - physikalische Redundanz o Einsatz von mehreren Rechensystemen und Netzwerken, o Verwenden von redundanten Daten und Diensten (Replikation). 184 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

6 8.5 Physikalische Redundanz Beispiel: Dreifach modulare Redundanz (Triple Modular Redundancy, TMR) mit drei Eingängen und einem Ausgang: - falls zwei oder drei Eingänge gleich dies ist die Ausgabe, - alle drei Eingänge unterschiedlich: Ausgabe ist undefiniert, - in jeder Stufe kann der Fehler eines Elementes maskiert werden, - allgemein gilt: N Modular Redundancy (N>=3) kann bis zu N-1/2 Fehler maskieren (falls Eingänge unabh.). 185 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

7 8.6 Übereinstimmung in fehlerhaften Systemen Problem: wie kommt man zu einer Übereinstimmung über eine durchzuführende Aktion im Fall: - perfekte Prozesse, aber fehlerhafte Kommunikationskanäle (2-Armeen Problem), - fehlerhafte Prozesse, aber perfekte Kommunikation (byzantinische Gernäle). 2-Armeen-Problem: Blau will rot angreifen, kann aber nur gemeinsam gewinnen (Überzahl). Notwendig: Abstimmung über Zeitpunkt des Angriffs. - Bote muss durch das rote Lager, kann gefangen werden unzuverlässige Übertragung, - Wenn Bote bei B ankommt schickt dieser ihn zu A mit Bestätigung zurück, - Wenn Bote wieder bei A schickt dieser ihn zu B zurück um Bestätigung zu bestätigen, usw. Man kann zeigen, dass die beiden Prozesse nicht zu einer Übereinstimmung kommen können. 186 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

8 Die byzantinischen Generäle: Einigungsproblem nach Lamport, Shostak und Pease, Einigung, falls es bei m fehlerhaften Prozessen mind. 2m + 1 korrekte Proz. gibt, - es müssen mind. 2/3 aller Prozesse korrekt arbeiten und #Prozesse > 3. Szenario: - n Generäle (n>3), m davon sind Verräter, - Ein Anführer gibt einen Befehl b {0,1} (z.b. Angriff), - Die anderen Generäle sollen den Befehl ausführen (auch der Anführer kann Verräter sein), - Frage: Einigung auf angreifen (1) oder abwarten (0)? (Anführer ändert Entscheidung nicht). Algorithmus: - Schritt-1: Anführer sendet Befehl an alle Generäle, - Schritt-2: Jeder General teilt allen anderen mit, welchen Befehl er vom Anführer erhalten hat, - Schritt-3: Jeder General trifft aus den erhaltenen Werten eine Mehrheitsentscheidung. - Bem.: Verräter versucht Einigung zu verhindern. (1,1,1,0) A B C D 1 1 (1,1,1,0) Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

9 8.7 Zuverlässige Gruppenkommunikation Motivation: Replikation benötigt zuverlässige Multicast-Dienste. Ziel: Jede Nachricht soll alle Mitglieder einer Gruppe erreichen. Probleme: Nachrichtenverlust, Prozess tritt Gruppe bei / stürzt ab. Zuverlässige Punkt-zu-Punkt Verbindung durch TCP vorhanden. N TCP-Verbindungen sind für kleine Gruppen praktikabel. Andernfalls ist UDP Multicast empfohlen. Einfaches Szenario: Prozess sendet an fest Gruppe: - jede Nachricht hat eine Sequenznummer, - Empfänger schicken ACK bzw. Fehler, falls eine Nachricht mit zu grosser Seq.nr. empfangen wurde Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

10 8.7.1 Scalable Reliable Multicast (SRM) Problem: Skalierbarkeit Sender wird von ACKs überschwemmt. Alternative: Nur negative Bestätigungen (NACKs) schicken. - Aber wie lange muss ein Sender eine Nachricht aufbewahren? - Nur für gewisses Zeitintervall möglich, sonst läuft Sendepuffer über. - Damit ist nicht sichergestellt, dass jede Nachricht beim Empfänger ankommt. Lösung-1: nicht-hierarchische Feedbacksteuerung - NACKs werden an die gesamte Gruppe gesendet, - Prozess erkennt NACK von einem anderen Proz. und unterdrückt eigenes NACK. - Zur Entzerrung der negativen Bestätigungen zufällige Verzögerung einfügen. - Nachteil: Proz., die Nachricht erhalten haben, werden durch NACKs unnötig unterbrochen. - Bem.: Im WAN evt. Retransmission von einem Empfänger günstiger, als vom Sender. 189 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

11 Lösung-2: hierarchische Feedbacksteuerung - Annahme: Nur ein Prozess sendet an die große Gruppe, - Gruppe ist baumartig in Untergruppen aufgeteilt, - Pro Untergruppe ein lokaler Koordinator C: o leitet Nachrichten an seine Unterknoten, o behandelt Retransmissions. - Problem: dynamischer Aufbau des Baums, o z.b. jeder Router als Koordinator. 190 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

12 8.7.2 Atomarer Multicast Nachrichten an alle Gruppenmitglieder i.d.r. in der gleichen Reihenfolge ausliefern oder an kein Mitglied (z.b. für replizierte DB). Problem: Knoten stürzt ab oder kommt neu hinzu. Lösung: Virtuelle Synchronität (Birman, 1991): - group view: Prozessliste des Senders, wenn er die Nachricht schickt, - view changes: Gruppe ändert sich Nachrichten nur an alte oder neue View, - Multicasts nicht über View-Grenzen hinweg (ähnl. Synchronisierungsvariable). 191 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

13 Wichtig: Empfang einer Nachricht und Auslieferung an die Anwendung unterscheiden zunächst Puffern! - Nachricht ist stable, wenn sie von allen Rechnern in der selben View empfangen wurde, - nur stable Nachrichten werden an die Anwendung ausgeliefert, Virtuelle Synchronität sichert Atomarität, aber Reihenfolge offen: - nicht sortiert: beliebige Auslieferung, - FIFO-sortiert: Sendereihenfolge eines Prozesses wird eingehalten, - kausal sortiert: kausale Abhängigkeiten bleiben erhalten (z.b. per Vektorzeit), - vollständig sortiert: alle Msgs. werden in gleicher Reihenfolge empf. (z.b. per Lamportzeit). Atomarer Multicast: virtuell synchroner zuverlässiger Multicast mit i.d.r. vollständig sortierter Auslieferung. Bem.: Prozessausfälle per Heartbeat Nachrichten erkennbar - Knoten prüfen periodisch, ob ein anderer noch antwortet, - Problem: wie gross muss der Timeout gewählt werden? - falls ein Proz. unabsichtlich aus der Gruppe entfernt wird, so muss er der Gruppe erneut beitreten. 192 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

14 Implementierung der virtuellen Synchronität: Problem: Falls Nachricht m in View v gesendet wurde, so muss m von allen nicht-fehlerhaften Prozessen in v empfangen werden, also bevor eine View-Anpassung stattfindet. Problem: Sender kann mitten in einem Multicast abstürzen. Lösung: Prozesse, die die Nachricht m noch nicht erhalten haben, sollten m von einem anderen Prozess bekommen. Ablauf: Änderung der View wird per Multicast bekannt gemacht: - Durch den ankommenden/abgehenden Knoten oder dem, der einen Fehler erkannt hat, - Bei Empfang von view changes sendet jeder Knoten seine unstable Nachrichten per Multicast an die neue Gruppe damit werden diese Nachrichten stable. - Sind alle unstable -Nachrichten versendet, so schickt jeder Prozess abschliessend eine flush -Nachricht. - View-Änderung ist abgeschlossen, wenn jeder Prozess von allen Mitgliedern die flush -Nachricht empfangen hat. Bem.: Falls Sender abstürzt erhalten die Empfänger keine Flush- Nachricht und verwerfen die unstable Nachrichten. 193 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

15 Beispiel: Sichtänderung an Sender (Prozess 4) a) Prozess 1 bemerkt, dass Prozess 5 abgestürzt ist und sendet eine view changes -Nachricht, b) Prozess 4 sendet allen seine unstable -Nachrichten, gefolgt von einer flush -Nachricht, c) Proz. 4 installiert neue View, wenn er von jedem Mitglied flush -Msg. empfangen hat. a ) P2 P3 b ) P2 unstable message P3 P1 view changes P4 P1 P4 flush message P5 P5 c ) P2 P3 P1 P4 P5 194 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

16 8.8 Fehlertoleranter RPC RPC soll auch bei Fehlern lokalem Aufruf weitestgehend entsprechen. Auftragsbasierte Komm.: Sender schickt Auftrag und erwartet Ergebnis. Mögliche Fehler: - Zielknoten oder -rechner wird nicht erreicht: Adressierungsproblem, Netzwerkfehler, - beteiligter Rechner oder Prozess ist abgestürzt: kann zu jedem Zeitpunkt passieren, sogar mitten in der Nachricht ; Folge: o Klient wartet z.b. endlos, falls er einen blockierenden Aufruf verwendet hat und der Server ist abgestürzt. o verwaiste Aufrufbearbeitungen (Orphans), wenn der Server bereits begonnen hat, einen Auftrag zu bearbeiten, der zugehörige Klient jedoch vor Ergebnisabnahme abgestürzt ist. - angesprochener Server ist nicht mehr vorhanden, - die gewünschte Servicefunktion wird nicht mehr angeboten. RPC Fehlersemantiken Maybe: - keine Fehlerbehandlungsmaßnahmen, - Aufruf wird gar nicht oder höchstens einmal durchgeführt, - Im Fehlerfall hat man keine Hinweise, ob Aufruf tatsächlich ausgeführt wurde oder nicht (u.u. ausreichend für Auskunftsdienste). 195 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

17 At-Least-Once: - Aufruf wird mindestens einmal ausgeführt, aber evt. auch mehrmals (unsichtbar für Klienten), - Fehlerbehandlung: nach Timeout wird der Auftrag bis zum Erfolg wiederholt, - Problem: idempotenten Operationen notwendig, d.h. derem mehrfache Ausführung das Ergebnis nicht verändert (z.b. Lesen einer Datei). At-Most-Once: - Aufruf wird höchstens einmal ausgeführt oder evt. gar nicht, - Fehlerbehandlung: Wiederholen des Auftrags (Server filtert Duplikate), - Nach N Versuchen oder einem Timeout wird abgebrochen und kein Ergebnis mehr erwartet. - verwendet für RPC in Corba & DCOM, Java RMI. Exactly-Once: - Aufruf wird genau einmal durchgeführt, - Fehlerbehandlung: bei Absturz Wiederanlauf von Komponenten, - persistente Datenhaltung und verteilte Transaktionen sind notwendig, - Exactly-Once-Semantik ist besonders komfortabel aber sehr aufwendig für Anwendungen mit hohen Sicherheitsanforderungen sinnvoll. 196 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

18 Fehlerszenerien: Klient erhält keine Antwort vom Server Annahme: Nachrichten mit Sequenznummer. Auftragsnachricht ging verloren: - Lösung: Auftrag wiederholen (auch in den folgenden Fällen sinnvoll). - Evt. empfängt Server die Nachricht doppelt. Antwort des Servers ging verloren oder ist noch nicht angekommen: - Neben der Auftragswiederholung kann man auf Serverseite die Antwort-Nachrichten zwischenspeichern und bei erneuter Anforderung nochmals, ohne wiederholte Berechnung schicken. Der Server ist gerade vor dem Versenden der Antwort abgestürzt: - Problem: Klient kann nicht entscheiden, ob Nachrichten bearbeitet wurde oder nicht, - Entweder bis Antwort (nach Reboot) kommt: erneut senden (at-least-once-semantik), - Oder direkt Fehler liefern (at-most-once-semantik). 197 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

19 Fehlerszenerien: Niemand wartet auf das Ergebnis der Berechnung Tritt ein, falls der Klient Aufruf absetzt und dann abstürzt. Derartige Berechnungen nennt man Waisen. Problem: Waisen können Ressourcen und Sperren belegen. Lösungen: 1) vor RPC: Info auf Platte sichern nach Reboot anhand der Info Waisen löschen, 2) nach Reboot: Broadcast an alle Server: Berechnungen neu beginnen Server löscht alle Berechnungen für diesen Klient, 3) wie 2., aber Server versucht Eigentümer zu finden, 4) alternativ: jeder RPC dauert max. Zeit und danach Abbau der Verbindung. 198 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

20 8.9 Fehlererholung (Recovery) Allgemeines Ziel: Einen fehlerhaften Zustand in einen korrekten Zustand überführen. Vermeiden, dass das System auf den initialen Zustand zurückfällt. Rückwärtsbehebung (Backward Recovery): - periodisch Zustände / Sicherungspunkte (Checkpoints) aufzeichnen, - nach Fehler auf alten Zustand zurücksetzen u. von dort aus fortsetzen, - Ressourcen müssen evt. zurückgefordert werden (z.b. Sperren), - partiell ausgeführte Operationen evt. zurückgesetzen (Konsistenz). Vorwärtsbehebung (Forward Recovery): - Versetzt System in konsistenten Zustand, ohne auf Zustandsinformation zurückzugreifen, die in der Vergangenheit zum Zweck der Fehlertoleranz abgespeichert wurde. - Problem: für jede Fehlersituation wird individuelle Aktion benötigt. Beispiel: Nachricht kommt defekt beim Empfänger an - Backward Recovery: Retransmission beim Sender anfordern, o gut, da unabhängig von der speziellen Fehlersituation, o aber Checkpointing und Recovery aufwendig. - Forward Recovery: Redundanz in Nachricht erlaubt Fehlerkorrektur, o Forward Error Correction (FEC), z.b. Parity, Hamming Code, Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

21 8.9.2 Zustandssicherung & Rücksetzbarkeit Zustandssicherung: - es genügt nicht, nur den Speicher der Anwendung zu sichern, - wichtig sind auch Betriebssystemzustände (z.b. Strukturen im Kern), - sowie Gerätezustände (z.b. Dateiinhalt, Kommunikationskanäle?,...), - Bedarf einer Unterstützung durch das Betriebssystem oder Einschränkungen. Stable Storage : - Sicherungspunkte i.d.r. in persistentem Speicher (z.b. Festplatte, RAID-Disk) sichern, - Schreiben auf Disk ist vergleichsweise langsam: o inkrementelle Datensicherung oder Kompression (CPU-Aufwand), o verteilt (viele Disks) oder asynchron Schreiben (zuerst Puffern). - Alternativ: Reliable DSM (RDSM) oder Replikate allgemein o Seiten verzögert schreiben (Copy-On-Write nutzen), o oder Seite nur im RAM sichern (bei Änderung nach Checkpoint). - Bem.: Diskspeicher muss irgendwann reorganisiert werden: o Sicherungspunkte müssen gelöscht werden, o aber auch alte Checkpoints notwendig, da evt. unentdeckte Fehler. 200 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

22 Rücksetzbarkeit: - Speicher einfach Schattenkopien, - Logging: Änderungen werden in Logdatei protokolliert o Name des Datums (Identifikation), o Alter Zustand (Undo), o Neuer Zustand (Redo). - eine Hardware-Ausgabe ist u.u. nicht rücksetzbar,... - bereits gesendete Nachricht kann nicht zurückgefordert werden,... Weitere Entwurfsfragen: - pessimistisch vs. optimistisch: Fehler häufig/selten Optimierung von Recovery / Checkpointing Overhead. - unabhängig vs. koordiniert: Prozesse sichern Checkpoints in koordinierter Weise oder unabhängig voneinander. - synchron vs. asynchron: System wird für den Sicherungspunkt angehalten oder dieser erfolgt nebenläufig. 201 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

23 8.9.3 Konsistente Sicherungspunkte Vermeidung von Orphan Messages: - Checkpoint enthält Prozess, der eine Nachricht empfangen hat, - jedoch nicht den zugehörigen Sender, der die Nachricht sendet (Kausalität!). - im Fehlerfall würde die Nachricht erneut gesendet und somit zwei Mal empfangen. P A m P B Vermeidung von verlorenen Nachrichten: - Checkpoint enthält Prozess, der eine Nachricht gesendet hat, - der Empfänger hat die Nachricht jedoch noch nicht empfangen. - Bem.: bei konsistenten Schnitten erlaubt (verletzt nicht Kausalität). P A P B m 202 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

24 Unabhängiges Checkpointing Jeder Knoten sichert unabhängig von anderen Rechnern Checkpoints. Keine Kosten durch Koordination von Knoten bzw. Prozessen. Aber u.u. bilden die letzten Checkpoints keinen gültigen Zustand: - Im Fehlerfall muss ein gültiger Zustand berechnet werden (Berechnungsaufwand). - Hierzu werden evt. auch ältere Sicherungspunkte benötigt (Speicherbedarf). - Jeder Knoten muss somit viele Checkpoints speichern. Hauptrisiko: Im worst-case fällt das System durch den Domino-Effekt auf den Initalzustand zurück: P A X 1 X 2 X 3 P B Y 1 Y 2 Y Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

25 Koordiniertes Checkpointing System anhalten bis jeder Knoten/Proz. Checkpoint geschrieben hat. Domino-Effekt wird vermieden. Einfach Lösung: - Koordinator sendet an alle checkpoint-request, o Prozesse erstellen Sicherungspunkt, o senden Bestätigung, wenn sie fertig sind. - Koordinator beendet Sicherungspunkt durch checkpoint-done. - Nachrichten, die nach dem Erstellen des Checkpoint eintreffen, nicht Teil des Checkpoints - Ausgehende Nachrichten werden bis zum Eintreffen von checkpoint-done gepuffert. Alternativ: Schnappschuss-Verfahren nach Chandy-Lamport. Positiv: - Relativ einfach zu implementieren. - Es muss immer nur ein Checkpoint gespeichert werden. - Zwischen zwei Checkpoints fällt im normalen Betrieb kein weiterer Aufwand an. Negativ: - Checkpointing-Intervall in der Praxis oft groß, z.b. IBM LoadLeveler min. - erheblicher Zeitaufwand für Koordinierung aller Knoten im Cluster, 204 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

26 Buchführung über Interprozesskommunikation Idee: Nachrichten in stabilem Speicher Aufzeichnen (Logging) entweder beim Sender oder Empfänger. Recovery: - nur betroffener Knoten/Proz. wird auf letzten Checkpoint zurückgesetzt und startet wieder, - mit Hilfe der Logdatei werden Nachrichten gesendet und empfangen, - gesendete Duplikate werden mit Sequenznummer gefiltert, - Nachrichtenempfang wird durch Logdatei bedient. Funktioniert nur bei deterministischen Abläufen. Bei unabhägigem Checkpointing kann #Checkpoints reduziert werden. Beispiel: Protokollierung beim Empfänger - bei Recovery von P2 werden rote Nachrichten per Logdatei generiert, - P3 filtert doppelt empfangene Nachricht. P1 P2 P3 t 205 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

27 8.10 Zusammenfassung Fehlermodelle: Crash-, Timing-, Byzantine-Failures... Übereinstimmung: 2-Armeen-Problem & byz. Generäle. Scalable Reliable Multicast (nicht-)hierarchische Feedbacksteuerung. Atomarer Multicast: an alle oder keinen einer Gruppe Nachricht senden. Fehlertoleranter RPC. Fehlererholung: - Rückwärtsbehebung per periodischer Zustandssicherung o Sicherung in stable Storage (Disk oder im RAM repliziert), o unabhängiges vs. koordiniertes Checkpointing & Logging, o Rücksetzbarkeit für HW schwierig, - Vorwärtsbegebung Redundanz mit idv. Fehlerbehandlung (z.b. FEC). 206 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

Motivation für Fehlertoleranz in VS Fehlermodelle Erreichen von Fehlertoleranz. Verteilte Systeme. 7. Fehlertoleranz

Motivation 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

Mehr

Motivation. Gruppenkommunikation. Verteilte Anwendung. Gruppenkommunikation. HW-Multicast div. GC-Impl totale Ord. Kommunikationsnetz

Motivation. 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.

Mehr

Verteilte Systeme F. Fehlertoleranz

Verteilte 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!

Mehr

12 Fehlertoleranz. Begriffe

12 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

Mehr

Vorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme. 13. Fehlertoleranz. Verteilte Systeme, Sommersemester 1999 Folie 13.

Vorlesung 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

Prof. Dr.-Ing. Dagmar Meyer Architekturen verteilter SW-Systeme 5 SYNCHRONISATION

Prof. 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

Mehr

Wiederherstellung (Recovery)

Wiederherstellung (Recovery) Fragestellungen Aufgaben der Komponenten für das Recovery: Sicherstellung der Dauerhaftigkeit der gespeicherten Daten, d.h. Daten, die in einer Transaktion einmal bestätigt wurden (commit), bleiben auch

Mehr

Zuverlässige Systeme Fehlertoleranz

Zuverlässige Systeme Fehlertoleranz Zuverlässige Systeme Fehlertoleranz frank@upb.de Inhalt Übersicht und Namenskonventionen Was ist Fehlertoleranz Eine Anleitung in 4 Phase Redundanz und Vielfältigkeit Hardwareseitige Fehlertoleranz Softwareseitige

Mehr

Die Sicht eines Sysadmins auf DB systeme

Die 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

Mehr

3 Programmiermodelle für parallele und verteilte Systeme

3 Programmiermodelle für parallele und verteilte Systeme 3 Programmiermodelle für parallele und verteilte Systeme Das vorherrschende Programmiermodell für parallele und verteilte Systeme ist das Client Server Modell. Das Client Server Modell ist unabhängig von

Mehr

Bedeutung der Metadateien. Alle Metadaten werden in Dateien gehalten. NTFS ist ein Journal-File-System

Bedeutung der Metadateien. Alle Metadaten werden in Dateien gehalten. NTFS ist ein Journal-File-System 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6.3 Metadaten 6.3 Metadaten (2) Alle Metadaten werden in Dateien gehalten Indexnummer 0 1 2 3 4 5 6 7 8 16 17 MFT

Mehr

TAV Übung 3. Übung 3: Verteilte Datenhaltung

TAV Übung 3. Übung 3: Verteilte Datenhaltung Übung 3: Verteilte Datenhaltung 1. Serialisierung Konstruieren Sie Historien aus drei Transaktionen T1, T2 und T3, die folgende Merkmale aufweisen: 1. Die serielle Reihenfolge ist T1 vor T2 vor T3. 2.

Mehr

Verteilte Systeme - 5. Übung

Verteilte 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

Mehr

Fehlertoleranzmechanismen in hochverfügbaren Clustersystemen

Fehlertoleranzmechanismen in hochverfügbaren Clustersystemen Holger Sattel Seminar Rechnerarchitektur WS 2003/04 Universität Mannheim Lehrstuhl Rechnerarchitektur Prof. Dr. U. Brüning Inhaltsverzeichnis Grundlagen / Begriffe Fehlertoleranz Fehlertoleranz in (Rechen-)Clustern

Mehr

Musterlösung Klausur SS 2004

Musterlösung Klausur SS 2004 Musterlösung Klausur SS 2004 Fachrichtung: Informatik Lehrveranstaltung: Verteilte Systeme Dozent: Prof. G. Bengel Tag: 15.6.04 Bearbeitungszeit: 90 Minuten Name:... Matr.Nr.:... Punkte:... Note:... Hilfsmittel:

Mehr

Die Byzantinischen Generäle

Die Byzantinischen Generäle Die Byzantinischen Generäle Von Doris Reim und Bartek Ochab aus dem Artikel: The Byzantine Generals Problem by Leslie Lamport, Robert Shostak, Marshall Pease Agenda I. Einleitung II. Lösbarkeit? III. OM-Algorithmus

Mehr

Verteilte Systeme SS 2015. Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404. Stand: 7.

Verteilte Systeme SS 2015. Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404. Stand: 7. Verteilte Systeme SS 2015 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 7. Juli 2015 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/13) i

Mehr

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel VS3 Slide 1 Verteilte Systeme Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel Inhaltsverzeichnis für die Vorlesung Zur Motivation: 4 Beispiele aus der Praxis Allgemeine Anforderungen an Verteilte

Mehr

VS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel

VS2 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

Mehr

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 17. Kapitel 2 Architekturen 51. Kapitel 3 Prozesse 91

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 17. Kapitel 2 Architekturen 51. Kapitel 3 Prozesse 91 Inhaltsverzeichnis Vorwort 13 Kapitel 1 Einleitung 17 1.1 Definition eines verteilten Systems................................ 19 1.2 Ziele........................................................ 20 1.2.1

Mehr

Themen. Dienste der Transportschicht. 3-Wege-Handshake. TCP-Protokoll-Header. Real-Time-Protocol

Themen. Dienste der Transportschicht. 3-Wege-Handshake. TCP-Protokoll-Header. Real-Time-Protocol Themen Dienste der 3-Wege-Handshake TCP-Protokoll-Header Real-Time-Protocol Dienste der Fehlerüberwachung Steuerung der Reihenfolge Wie kann eine korrekte Paket-Übertragung garantiert werden? Wie kann

Mehr

Alle Metadaten werden in Dateien gehalten

Alle Metadaten werden in Dateien gehalten 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6.3 Metadaten Alle Metadaten werden in Dateien gehalten Indexnummer 0 1 2 3 4 5 6 7 8 16 17 MFT MFT Kopie (teilweise) Log File Volume Information Attributtabelle

Mehr

Datenbank-Administration im WS 2012/13 - Einführung in Projekt 3 - Prof. Dr. Klaus Küspert Dipl.-Math. Katharina Büchse Dipl.-Inf.

Datenbank-Administration im WS 2012/13 - Einführung in Projekt 3 - Prof. Dr. Klaus Küspert Dipl.-Math. Katharina Büchse Dipl.-Inf. Datenbank-Administration im WS 2012/13 - Einführung in Projekt 3 - Prof. Dr. Klaus Küspert Dipl.-Math. Katharina Büchse Dipl.-Inf. Andreas Göbel Friedrich-Schiller-Universität Jena Lehrstuhl für Datenbanken

Mehr

E.1 Object Request Brokers

E.1 Object Request Brokers E Überblick über die 4. Übung E Überblick über die 4. Übung 1 Komponenten eines ORBs Lösungsskizze Aufgabe 2 RPC und ORB Aufrufsemantiken Hinweise Aufgabe 3 Kommunikationsschicht: tauscht Daten zwischen

Mehr

Verteilte Systeme SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 8.

Verteilte 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

Mehr

Klausur Verteilte Systeme

Klausur Verteilte Systeme VS SS-05 Oß (Fachbereich 5, Elektrotechnik und Informationstechnik) Zuname: Vorname: Matr.-Nr.: Fach-Nummer: Termin: Prüfer: Klausur Verteilte Systeme 5661 (Fachprüfung) Mittwoch, 13. Juli 2005, 8.30-11.30

Mehr

Gruppenkommunikation. Dipl.-Inf. J. Richling Wintersemester 2003/2004

Gruppenkommunikation. 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.

Mehr

138 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner

138 Verteilte Betriebssysteme, Winter 2005 Verteilet Systeme, Universität Ulm, M. Schöttner 6. Replikation und Konsistenz 6.1 Motivation Replikation: redundantes Vorhalten von Daten auf verschied. Knoten. - Code: unproblemantisch, da i.d.r. unveränderlich, - Daten: o für Daten, die nur gelesen

Mehr

Fehlertolerante und Selbstheilende Systeme.

Fehlertolerante und Selbstheilende Systeme. Fehlertolerante und Selbstheilende Systeme. Inhalt 1. 2. Fehlermodelle 3. Fehlertoleranztechniken 4. DCE (Dual Core Execution) 5. Fehlertoleranz 6. Zusammenfassung 2/29 Motivation Computer Aufgaben immer

Mehr

Verteilte Systeme SS 2015. Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404. Stand: 7.

Verteilte Systeme SS 2015. Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404. Stand: 7. Verteilte Systeme SS 2015 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 7. Juli 2015 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/13) i

Mehr

Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik)

Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik) Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik) Prüfer: Prof. Dr. Haake Semester der Prüfung: WS 10/11 Datum der Prüfung: 02.05.2011 Dauer: ca. 25 min Note: 2.0 Hier

Mehr

Implementierung von Dateisystemen

Implementierung von Dateisystemen Implementierung von Dateisystemen Teil 2 Prof. Dr. Margarita Esponda WS 2011/2012 44 Effizienz und Leistungssteigerung Festplatten sind eine wichtige Komponente in jedem Rechnersystem und gleichzeitig

Mehr

Andrew S. Tanenbaum Maarten van Steen. Verteilte Systeme. Prinzipien und Paradigmen. 2., aktualisierte Auflage PEARSON

Andrew S. Tanenbaum Maarten van Steen. Verteilte Systeme. Prinzipien und Paradigmen. 2., aktualisierte Auflage PEARSON Andrew S. Tanenbaum Maarten van Steen Verteilte Systeme Prinzipien und Paradigmen 2., aktualisierte Auflage PEARSON ein Imprint von Pearson Education München Boston San Francisco Harlow, England Don Mills,

Mehr

Verteilte Systeme Prof. Dr. Stefan Fischer. Überblick. Sinn der Replikation. TU Braunschweig Institut für Betriebssysteme und Rechnerverbund

Verteilte 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

Mehr

Aufgabe 1: Interprozesskommunikation In der Vorlesung wurden zentrale Aspekte von grundlegenden Kommunikationsmustern vorgestellt.

Aufgabe 1: Interprozesskommunikation In der Vorlesung wurden zentrale Aspekte von grundlegenden Kommunikationsmustern vorgestellt. Sommersemester 211 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 11 vom 2.6.211 bis 24.6.211 Aufgabe 1: Interprozesskommunikation In der Vorlesung

Mehr

4 LCN VCN 0 1 2 3 4 5 6 7 LCN 107 108 109 110 131 132 133 134. Extents werden außerhalb der MFT gespeichert

4 LCN VCN 0 1 2 3 4 5 6 7 LCN 107 108 109 110 131 132 133 134. Extents werden außerhalb der MFT gespeichert 3 Master File Table Eintrag für eine kurze Datei Standardinfo Dateiname Zugriffsrechte Daten leer Vorspann Eintrag für eine längere Datei Virtual Cluster Number (VCN) 0 LCN 107 131 VCN 0 1 2 3 5 6 7 LCN

Mehr

Der Backoff-Algorithmus

Der Backoff-Algorithmus Der Backoff-Algorithmus Ausarbeitung im Rahmen der Vorlesung Lokale und Weitverkehrsnetze II (Prof. Koops) SS 2001 3570316 Lars Möhlmann 3570317 Jens Olejak 3570326 Till Tarara Fachhochschule Oldenburg/Ostfriesland/Wilhelmshaven

Mehr

Übungen zu Rechnerkommunikation Wintersemester 2010/2011 Übung 8

Übungen zu Rechnerkommunikation Wintersemester 2010/2011 Übung 8 Übungen zu Rechnerkommunikation Wintersemester 2010/2011 Übung 8 Mykola Protsenko, Jürgen Eckert PD. Dr.-Ing. Falko Dressler Friedrich-Alexander d Universität Erlangen-Nürnberg Informatik 7 (Rechnernetze

Mehr

Zusammenschlüsse in verteilten Systemen. Überblick. Virtual Synchrony. Gruppenkommunikation

Zusammenschlüsse in verteilten Systemen. Überblick. Virtual Synchrony. Gruppenkommunikation Überblick Zusammenschlüsse in verteilten Systemen Gruppe Zusammenschluss von Knoten in einem verteilten System, die in der Anzahl begrenzt sind, zumeist miteinander gleichberechtigt kommunizieren und gemeinsamen

Mehr

Formale Grundlagen der Fehlertoleranz in verteilten Systemen

Formale Grundlagen der Fehlertoleranz in verteilten Systemen 1/27 Formale Grundlagen der Fehlertoleranz in verteilten Systemen Felix Gärtner TU Darmstadt felix@informatik.tu-darmstadt.de 2/27 Bezug zur formalen Softwareentwicklung formale SE Definitionsphase Aufsplittung

Mehr

9 Verteilte Verklemmungserkennung

9 Verteilte Verklemmungserkennung 9 Verteilte Verklemmungserkennung 9.1 Grundlagen Für die Existenz einer Verklemmung notwendige Bedingungen Exklusive Betriebsmittelbelegung Betriebsmittel können nachgefordert werden Betriebsmittel können

Mehr

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert? SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 2 2014-04-28 bis 2014-05-02 Aufgabe 1: Unterbrechungen (a) Wie unterscheiden sich synchrone

Mehr

Aufgaben: (dazugehörige Kapitel / Seitenangaben in Kursiv: Kapitel Seite Seitennummern)

Aufgaben: (dazugehörige Kapitel / Seitenangaben in Kursiv: Kapitel Seite Seitennummern) Klausur Verteilte Systeme 15.6. R120A 8:00-9:30 5 Aufgaben, 50 Punkte (8 12 pro Aufgabe) 45-50 1.0 44 1.1 35 2.0 25 3.0 15 4.0 http://www.bts.fh-mannheim.de Aufgaben: (dazugehörige Kapitel / Seitenangaben

Mehr

Die Transportprotokolle UDP und TCP

Die Transportprotokolle UDP und TCP Die Transportprotokolle UDP und TCP! UDP (User Datagram Protocol) " Ist wie IP verbindungslos (Zustellung und Reihenfolge werden nicht garantiert) " Erweitert die Funktionalität von IP um die Möglichkeit,

Mehr

15 Implementierung von Dateien 15.5 Beispiel: Windows NT (NTFS)

15 Implementierung von Dateien 15.5 Beispiel: Windows NT (NTFS) 1 Dateiverwaltung Basiseinheit Cluster 15 Implementierung von Dateien 15.5 Beispiel: Windows NT (NTFS) 512 Bytes bis 4 Kilobytes (beim Formatieren festgelegt) wird auf eine Menge von hintereinanderfolgenden

Mehr

Alexander Kiontke Routing Protokolle

Alexander Kiontke Routing Protokolle Überblick: Wieso brauchen Sensornetze eigene Routingprotokolle? Beispiele für Routingprotokolle Energy Aware Routing (EAR Energy Aware Data-Centric Routing (EAD Ad-Hoc On-Demand Distance Vector Routing

Mehr

Seminarvortrag: Hardware-Fehlertoleranz mit Hochverfügbarkeit

Seminarvortrag: Hardware-Fehlertoleranz mit Hochverfügbarkeit Seminarvortrag: Hardware-Fehlertoleranz mit Hochverfügbarkeit Agenda Motivation Hardware-Fehlertoleranz Checkpointing and Rollback Recovery Systemverfügbarkeit VM-basierte Systeme Remus Architektur Sicherung

Mehr

Fehlerbehandlung (Recovery)

Fehlerbehandlung (Recovery) Fehlerbehandlung (Recovery) Fehlerbehandlung (Recovery) Fehlerklassifikation Fehlerarten Auswirkung der Speicherhierarchie Protokollierung von Änderungen Wiederanlauf nach Fehler ( Sicherungspunkte) Media-Recovery

Mehr

Kapitel 2 Transaktionsverwaltung

Kapitel 2 Transaktionsverwaltung LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 2 Transaktionsverwaltung Vorlesung: PD Dr. Peer

Mehr

Recovery- und Buffermanager

Recovery- und Buffermanager Recovery- und Buffermanager Gesamtübersicht der Komponenten beim Zusammenspiel des lokalen Recovery Manager und des Datenbank Buffer Manager: persistenter Log Main memory Lokaler Recovery Manager (LRM)

Mehr

Redundant Array of Inexpensive Disks

Redundant Array of Inexpensive Disks 22.01.2010 1 2 3 4 5 Es war einmal im Jahre 1988... Prozessoren, Speicher besser und günstiger Festplatten: - Speicherplatz bleibt teuer - Zugriff bleibt langsam Moore s Law Amdahl s Law S = 1 (1 f )+(f

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 5 26.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: Erläutern

Mehr

Klausur 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) 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:

Mehr

Multiuser Client/Server Systeme

Multiuser Client/Server Systeme Multiuser /Server Systeme Christoph Nießner Seminar: 3D im Web Universität Paderborn Wintersemester 02/03 Übersicht Was sind /Server Systeme Wie sehen Architekturen aus Verteilung der Anwendung Protokolle

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Institut für Informatik Prof. Dr. Bernhard Bauer Stephan Roser Viviane Schöbel Wintersemester 07/08 Übungsblatt 5 08.01.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1:

Mehr

Rechner mit JRE (JAVA Runtime Environement), Java Programm (mit main() Methode)

Rechner mit JRE (JAVA Runtime Environement), Java Programm (mit main() Methode) Klassifizierung von Java Programmen Man kennt zunächst 3 Klassen von Java Programmen 1. Java Applikation (Stand Alone Programm) Rechner mit JRE (JAVA Runtime Environement), Java Programm (mit main() Methode)

Mehr

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016 Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i

Mehr

13. Fehlerbehandlung/2. Architektur von Datenbanksystemen I

13. Fehlerbehandlung/2. Architektur von Datenbanksystemen I 13. Fehlerbehandlung/2 Architektur von Datenbanksystemen I Crash-Recovery ZIEL Herstellung des jüngsten transaktionskonsistenten DB-Zustandes aus materialisierter DB und temporäer Log-Datei... BEI DIREKTER

Mehr

Vorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19.

Vorlesung Verteilte Systeme Sommersemester 1999. Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19. Verteilte Systeme 19. Distributed Shared Memory Sharing!! No Sharing! Sharing? Evolution der Berechnungsmodelle Vergangenheit Gemeinsamer Speicher Einzelrechner Gegenwart Nachrichtenkommunikation Verteilte

Mehr

TCP. Transmission Control Protocol

TCP. Transmission Control Protocol TCP Transmission Control Protocol Wiederholung TCP-Ports Segmentierung TCP Header Verbindungsaufbau-/abbau, 3 - WayHandShake Timeout & Retransmission MTU maximum transfer Unit TCP Sicher Verbunden? Individuelle

Mehr

9: Verteilte Algorithmen

9: Verteilte Algorithmen 9: Verteilte Algorithmen Verteiltes System: Zusammenschluss unabhängiger Computer ( Knoten ), das sich für den Benutzer als einzelnes System präsentiert. (Begriffsbildung nach A. Tanenbaum hatten wir schon)

Mehr

Vorlesungsinhalt. Recovery. G. Specht: Datenbanksysteme 11-1. Kapitel XI. Vorlesung Datenbanksysteme Univ.-Prof. Dr.

Vorlesungsinhalt. Recovery. G. Specht: Datenbanksysteme 11-1. Kapitel XI. Vorlesung Datenbanksysteme Univ.-Prof. Dr. Recovery Kapitel XI Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Vorlesungsinhalt 11. Recovery Fehler

Mehr

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Block Verteilte Systeme und Middleware 1. Beschreiben Sie die Entwicklung verteilter Systeme von einer Zentralisierung bis zu Peer-to-Peer. Nicht

Mehr

RAID. Name: Artur Neumann

RAID. Name: Artur Neumann Name: Inhaltsverzeichnis 1 Was ist RAID 3 1.1 RAID-Level... 3 2 Wozu RAID 3 3 Wie werden RAID Gruppen verwaltet 3 3.1 Software RAID... 3 3.2 Hardware RAID... 4 4 Die Verschiedenen RAID-Level 4 4.1 RAID

Mehr

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik Netzwerk Programmierung Ein großer Teil von dem, was Netzwerkprogramme tun ist ganz simpler input und output: also bytes verschieben von einem System zu einem anderen. Bytes bleiben Bytes. Die Daten zu

Mehr

Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung

Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung Prof. Dr. Manfred Gruber FH München Transaktions-Konzept (1) Beispiel: op 1 BOT op 2 read(k 1

Mehr

Uhrensynchronisation. Dipl.-Inf. J. Richling Wintersemester 2003/2004

Uhrensynchronisation. Dipl.-Inf. J. Richling Wintersemester 2003/2004 Uhrensynchronisation Dipl.-Inf. J. Richling Wintersemester 2003/2004 Motivation Zeit kann in Anwendungen eine große Rolle spielen, insbesondere bei Echtzeitsystemen Häufig wichtiger noch als korrekte Zeit:

Mehr

Systemanforderungen Manufacturing Execution System fabmes

Systemanforderungen Manufacturing Execution System fabmes Manufacturing Execution System fabmes Das Manufacturing Execution System fabmes bemüht sich trotz hoher Anforderungen an die Datenverarbeitung möglichst geringe Anforderungen an die Hardware zu stellen.

Mehr

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir?

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir? Rechnernetze Übung 5 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2012 Wo sind wir? Quelle Nachricht Senke Sender Signal Übertragungsmedium Empfänger Quelle Nachricht Senke Primäres

Mehr

Replikation. Überblick. Referenzierung von Diensten. Aktive Replikation von Diensten. Varianten Aktive Replikation ( Replikation

Replikation. Überblick. Referenzierung von Diensten. Aktive Replikation von Diensten. Varianten Aktive Replikation ( Replikation Überblick Grundlagen der JGroups Varianten Aktive ( Hot Standby ) Alle Replikate bearbeiten alle Anfragen Vorteil: Schnelles Tolerieren von Ausfällen möglich Nachteil: Vergleichsweise hoher Ressourcenverbrauch

Mehr

RECOVERY. "Concurrency Control and Recovery in Database Systems" Bernstein, Hadzilacos, Goodman. Addison-Wesley. Kapitel 1, 6

RECOVERY. Concurrency Control and Recovery in Database Systems Bernstein, Hadzilacos, Goodman. Addison-Wesley. Kapitel 1, 6 Recovery 1 RECOVERY "Concurrency Control and Recovery in Database Systems" Bernstein, Hadzilacos, Goodman Addison-Wesley Kapitel 1, 6 (Online: http://research.microsoft.com/enus/people/philbe/ccontrol.aspx

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Ein Scan basierter Seitenangriff auf DES

Ein Scan basierter Seitenangriff auf DES Ein Scan basierter Seitenangriff auf DES Seminar Codes & Kryptographie SS04 Tobias Witteler 29.06.2004 Struktur des Vortrags 1. Einführung / Motivation 2. Struktur von DES 3. Die Attacke Begriffsklärung:

Mehr

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads Prozesse und Prozessmanagement des BS 1 Unterschied Prozess, Threads 1.1 Prozess Bei jedem Programm muss gespeichert werden, welche Betriebsmittel (Speicherplatz, CPU- Zeit, CPU-Inhalt,...) es benötigt.

Mehr

Fehlertoleranz in eingebetteten Systemen

Fehlertoleranz in eingebetteten Systemen Hauptseminar im SS 2006 Ausgewählte Kapitel eingebetteter Systeme (AKES) Fehlertoleranz in eingebetteten Systemen Vortragender: Thomas Klöber Betreuer: Olaf Spinczyk 1 / 11 Inhalt 1 Einführung... 3 2 Tolerieren

Mehr

Hard & Software Raid

Hard & Software Raid Hard & Software Raid Werner von Siemens Schule Präsentation Inhaltsverzeichnis Hardware Raid Raid 0 Raid 1 Parity Raid 0+1 & 2 Raid 3 & 4 Raid 5 & 6 Raid 7 Software Raid Fragen, Schlusswort 2 Hardware

Mehr

Systemvoraussetzungen und Installation

Systemvoraussetzungen und Installation Systemvoraussetzungen und Installation Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 2 2. Einzelarbeitsplatzinstallation... 3 3. Referenz: Client/Server-Installation... 5 3.1. Variante A:

Mehr

Übung zu Einführung in die Informatik # 10

Übung zu Einführung in die Informatik # 10 Übung zu Einführung in die Informatik # 10 Tobias Schill tschill@techfak.uni-bielefeld.de 15. Januar 2016 Aktualisiert am 15. Januar 2016 um 9:58 Erstklausur: Mi, 24.02.2016 von 10-12Uhr Aufgabe 1* a),

Mehr

Hardware- und Software-Anforderungen IBeeS.ERP

Hardware- und Software-Anforderungen IBeeS.ERP Hardware- und Software-Anforderungen IBeeS.ERP IBeeS GmbH Stand 08.2015 www.ibees.de Seite 1 von 8 Inhalt 1 Hardware-Anforderungen für eine IBeeS.ERP - Applikation... 3 1.1 Server... 3 1.1.1 Allgemeines

Mehr

Basiseinheit Cluster. Rückgrat des gesamten Systems. Basiseinheit Strom. entsprechender Eintrag für

Basiseinheit Cluster. Rückgrat des gesamten Systems. Basiseinheit Strom. entsprechender Eintrag für 1 Dateiverwaltung 2 Master-File-Table Basiseinheit Cluster 512 Bytes bis 4 Kilobytes (beim Formatieren festgelegt) wird auf eine Menge von hintereinanderfolgenden Blöcken abgebildet logische Cluster-Nummer

Mehr

Moritz Kaufmann. Technische Universität München

Moritz Kaufmann. Technische Universität München Q - ERDB 2016 B 01 Moritz Kaufmann Technische Universität München Themen Transaktionen Fehlerbehandlung Persistenz Moritz Kaufmann Quiz - ERDB 2016 Blatt 01 1 Wiederholung 1. Was sind Transaktionen? 2.

Mehr

RECOVERY. "Concurrency Control and Recovery in Database Systems" Bernstein, Hadzilacos, Goodman. Addison-Wesley. Kapitel 1, 6.

RECOVERY. Concurrency Control and Recovery in Database Systems Bernstein, Hadzilacos, Goodman. Addison-Wesley. Kapitel 1, 6. Recovery 1 RECOVERY "Concurrency Control and Recovery in Database Systems" Bernstein, Hadzilacos, Goodman Addison-Wesley Kapitel 1, 6 Recovery 2 Modell eines Datenbanksystems Ein Datenbanksystem besteht

Mehr

Transaktionen Recovery Isolationslevel. Datenbanksysteme. Transaktionen. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen

Transaktionen Recovery Isolationslevel. Datenbanksysteme. Transaktionen. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen Transaktionen Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Motivation ACID-Eigenschaften Übersicht Transaktionen Motivation ACID-Eigenschaften Ursachen für Logging und Backup

Mehr

sou.matrixx Systemvoraussetzungen (Hardware- und Software-Anforderungen)

sou.matrixx Systemvoraussetzungen (Hardware- und Software-Anforderungen) sou.matrixx Systemvoraussetzungen (Hardware- und Software-Anforderungen) INHALTSVERZEICHNIS 1 Hardware-Anforderungen für eine sou.matrixx-applikation... 3 1.1 Server...3 1.1.1 Allgemeines zu Festplatten...3

Mehr

... Client 1. Request. Reply. Client 2. Server. Client n. Günther Bengel Grundkurs Verteilte Systeme 3. Auflage Vieweg Verlag 2004 ISBN 3-528-25738-5

... Client 1. Request. Reply. Client 2. Server. Client n. Günther Bengel Grundkurs Verteilte Systeme 3. Auflage Vieweg Verlag 2004 ISBN 3-528-25738-5 1 2... n Abbildung 2-1: s und C + S Synchrone Kommunikation Warte auf Zurückgestellte synchrone Kommunikation Arbeite weiter Überprüfe periodisch das Vorliegen des Asynchrone Kommunikation Registriere

Mehr

Verteilte Systeme Jürgen Nehmer, SS 2003

Verteilte Systeme Jürgen Nehmer, SS 2003 Definitionen Instanz Verteilte Systeme Jürgen Nehmer, SS 2003 Einführung Rechnervernetzung Verteiltes Programm Eine Menge autonomer Softwareinstanzen, die ein gemeinsames Problem bearbeiten und zu diesem

Mehr

Client/Server-Systeme

Client/Server-Systeme Frühjahrsemester 2011 CS104 Programmieren II / CS108 Programmier-Projekt Java-Projekt Kapitel 3: /Server-Architekturen H. Schuldt /Server-Systeme Ein zweischichtiges /Server-System ist die einfachste Variante

Mehr

Netze und Protokolle für das Internet. 10. Transportprotokolle zur Gruppenkommunikation

Netze und Protokolle für das Internet. 10. Transportprotokolle zur Gruppenkommunikation Netze und Protokolle für das Internet 10. Transportprotokolle zur Gruppenkommunikation Inhalt Kommunikationsformen Zuverlässigkeitsklassen Anwendungen von zuverlässigem Multicast TCP-Eigenschaften Multicast

Mehr

Message Oriented Middleware am Beispiel von XMLBlaster

Message Oriented Middleware am Beispiel von XMLBlaster Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de

Mehr

Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke

Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke Hauptseminar im SS 2002 Hans Reiser, Rüdiger Kapitza Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Universität Erlangen-Nürnberg

Mehr

2.3 Applikationen. Protokolle: TCP/IP. Telnet, FTP, Rlogin. Carsten Köhn

2.3 Applikationen. Protokolle: TCP/IP. Telnet, FTP, Rlogin. Carsten Köhn 2.3 Applikationen Telnet, FTP, Rlogin Carsten Köhn Protokolle: TCP/IP Application umfasst Dienste, die als Prozesse des Betriebssystems ausgeführt werden SMTP, FTP, HTTP, MIME Transport regelt die Kommunikation

Mehr

XP - Winows 2003 / 2000 DomainController Slow Copy Files Network XP - Kopiert langsam auf Win2003 / 2000 Server Domain Controller

XP - Winows 2003 / 2000 DomainController Slow Copy Files Network XP - Kopiert langsam auf Win2003 / 2000 Server Domain Controller XP - Winows 2003 / 2000 DomainController Slow Copy Files Network XP - Kopiert langsam auf Win2003 / 2000 Server Domain Controller Problem liegt an Domain-Controller - (ist ja eigentlich nicht als File-Server

Mehr

Realisierung von atomarem Broadcast. Atomarer bzw. totaler Broadcast

Realisierung 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

Mehr

Tutorübung zur Vorlesung Grundlagen Rechnernetze und Verteilte Systeme Übungsblatt 8 (10. Juni 17. Juni 2013)

Tutorübung zur Vorlesung Grundlagen Rechnernetze und Verteilte Systeme Übungsblatt 8 (10. Juni 17. Juni 2013) Technische Universität München Lehrstuhl Informatik VIII Prof. Dr.-Ing. Georg Carle Dipl.-Ing. Stephan Günther, M.Sc. Nadine Herold, M.Sc. Dipl.-Inf. Stephan Posselt Tutorübung zur Vorlesung Grundlagen

Mehr

Uberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS15) Verteilte Synchronisation 10 1

Uberblick 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

Mehr

[DNS & DNS SECURITY] 1. DNS & DNS Security

[DNS & DNS SECURITY] 1. DNS & DNS Security [DNS & DNS SECURITY] 1 DNS & DNS Security Thomas Vogel & Johannes Ernst Funktionsweise von DNS und deren Security Eigenschaften. Was es für Angriffe gibt, welche Gegenmaßnahmen dafür erforderlich sind

Mehr

IT - Sicherheit und Firewalls

IT - Sicherheit und Firewalls IT - Sicherheit und Firewalls C. Lenz, B. Schenner, R. Weiglmaier 24. Jänner 2003 IT-Sicherheit & Firewalls C. Lenz, B. Schenner, R. Weiglmaier Seite 1 TEIL 1 o Grundlegendes o Cookies o Web-Log o Spoofing

Mehr

Die AspectIX Middleware-Plattform

Die AspectIX Middleware-Plattform Die AspectIX Middleware-Plattform Franz J. Hauck Verteilte Systeme, Univ. Ulm 1 1 Arbeitsbereiche 1.1 QoS-Team Dienstgüte bei der Übertragung multimedialer Daten für mobile Teilnehmer nahtlose Reservierung

Mehr

Die allerwichtigsten Raid Systeme

Die allerwichtigsten Raid Systeme Die allerwichtigsten Raid Systeme Michael Dienert 4. Mai 2009 Vorbemerkung Dieser Artikel gibt eine knappe Übersicht über die wichtigsten RAID Systeme. Inhaltsverzeichnis 1 Die Abkürzung RAID 2 1.1 Fehlerraten

Mehr

Grundlagen Rechnerarchitektur und Betriebssysteme

Grundlagen Rechnerarchitektur und Betriebssysteme Grundlagen Rechnerarchitektur und Betriebssysteme Johannes Formann Definition Computer: Eine Funktionseinheit zur Verarbeitung von Daten, wobei als Verarbeitung die Durchführung mathematischer, umformender,

Mehr