4.1 Einführung. Dimensionen der Systemqualität. 4.2 Fehlerintoleranz. Verlässliche Systeme. 4. Kapitel Konzepte der Verlässlichkeit.
|
|
- Nicole Holst
- vor 5 Jahren
- Abrufe
Transkript
1 Verlässliche Systeme Wintersemester 2018/ Einführung Verlässlichkeitsbaum 4.1 Einführung Verlässliche Systeme 4. Kapitel Konzepte der Verlässlichkeit Christine Jakobs Professur Betriebssysteme WS 2018/19 C. Jakobs 2 / 70 osg.informatik.tu-chemnitz.de 4.1 Einführung Dimensionen der Systemqualität 4.2 Fehlerintoleranz 4.2 Fehlerintoleranz Wie umgehen mit Fehlern? vermeiden Konzept: Fehlerintoleranz Eliminierung der Ursachen von Unzuverlässigkeit durch Fehlervermeidung Fehlerbeseitigung (offline) Keine Redundanzen (online) Fehlerintoleranz bringt Verlässlichkeit durch: Einsatz sehr zuverlässiger Komponenten Ausgefeilte Entwurfstechniken Ausgefeilte Produktionstechniken Abschirmung Eingehende Tests WS 2018/19 C. Jakobs 3 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 4 / 70 osg.informatik.tu-chemnitz.de
2 4.2 Fehlerintoleranz Fehlervermeidung 4.2 Fehlerintoleranz Fehlerbeseitigung Fehlerintoleranzansatz Verhinderung des Auftretens oder der Einführung von Fehlerursachen durch Prozesse Entwicklungsprozess Wasserfall, V-Modell, Rational Unified Process,... Codeinstektionen, extreme programming, agile, MISRA-C,... Requirements engineering Organisationsprozess Capability Maturity Model (CMMI) IEC (Medizin) ISO (automotive) Fehlerintoleranzansatz Analytische Fehlerursachenentfernung Analyse der Systemrepräsentation, um Probleme zu entdecken Verlässt sich auf geeignetes Modell Beispiel: Modellüberprüfung mit UML-Diagrammen Experimentelle Fehlerursachenentfernung Duch koordiniertes Experimentieren Verhalten provozieren und beobachten Besser bekannt als testing und debugging Spezialvariante: Fehlerinjektion WS 2018/19 C. Jakobs 5 / 70 osg.informatik.tu-chemnitz.de 4.3 Fehlertoleranz 4.3 Fehlertoleranz Akzeptiert, dass ein System nicht frei ist von Fehlerursachen Führt automatischen Umgang mit Fehlerzuständen in Systemdesign ein Ziel: Rückkehr zum dormant fault Zustand External Fault Active Fault / Latent Error Detection Failure WS 2018/19 C. Jakobs 6 / 70 osg.informatik.tu-chemnitz.de Fehlertoleranz 4.3 Fehlertoleranz Fehlertoleranz benötigt stets Redundanz Redundanz im Raum Zusätzliche Hardware, Speicherbedarf,,... Redundanz in der Zeit Zusätzliche Rechenzeit, Zeit für Fehlererkennung und -behebung, etc. Informationale Redundanz Alternative Repräsentation der selben Daten Normal Activation Detected Error Redundanz ermöglicht erreichen des gleichen Ziels, obwohl etwas broken ist Internal Fault Error Handling Failure Redundant heißt nicht identisch Redundanz spielt in verschiedenen Phasen der Fehlertoleranz eine Rolle Dormant Fault Restoration Outage WS 2018/19 C. Jakobs 7 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 8 / 70 osg.informatik.tu-chemnitz.de
3 4.3 Fehlertoleranz Phasen der Fehlertoleranz [Hamner] 4.3 Fehlertoleranz Fehlertoleranzmuster [Hamner] Architektonische Muster Fehlertoleranzstrategien, die alle Teile eines Systems beeinflussen Müssen in frühen Designphasen angewandt werden Fehlererkennungsmuster Erkennung von Fehlerzuständen im System Fehlerwiederherstellungsmuster Aktivitäten, um einen neuen Fehlerfreien Zustand zu erreichen Fehlerabschwächungsmuster Maskieren den Fehlerzustand, nicht den Ausfall, und Kompensieren die Auswirkungen WS 2018/19 C. Jakobs 9 / 70 osg.informatik.tu-chemnitz.de Einheiten der Abschwächung Nur ein Teil des Systems soll potentiell in einen Fehlerzustand eintreten Einheiten der Abschwächung sind definiert, sodass sie Fehlerzustände und deren Wiederherstellungsmechanismen beinhalten Hinweise zu Granularität Architektonische Ebenen Funktionale und Ressourcenbegrenzungen (CPU, Speicher) Wahl der Wiederherstellungsaktion (z.b. Neustart) Kommunikationsintensität Einheiten ohne jegliche Wiederherstellungs- / Abschwächungsmöglichkeit sind zu klein Tradeoff: Komponentengröße vs. Fehlertoleranzoptionen WS 2018/19 C. Jakobs 10 / 70 osg.informatik.tu-chemnitz.de Fehlereindämmungsbarrieren Fehlerausbreitung erfolgt durch verschiedene Kanäle (Speicher, Nachrichten,... ) Errichten einer Fehlereindämmungsbarriere Als separate Systemkomponente behandelt Ermöglicht Fehlererkennung nahe dem Ausfall (strukturelle und zeitliche Nähe) Isoliert Fehlerzustände Löst Fehlerwiederherstellung oder -Abschwächung aus Beispiel: Quatschkopf-Problem Kommunikationsknoten verwenden gemeinsamen Systembus Fehlerhafte Knoten sollten nie die Kontrolle über den Kommunikationsbus erlangen Buswächter als Implementierung der Fehlereindämmungsbarriere WS 2018/19 C. Jakobs 11 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 12 / 70 osg.informatik.tu-chemnitz.de
4 Beispiel: Nuklearkraftwerk Beispiel: Temporäre Firewall in TTA WS 2018/19 C. Jakobs 13 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 14 / 70 osg.informatik.tu-chemnitz.de Korrekturprüfungen Replikation Datenbeschädigung kann auf Hardwareebene (Speicherfehler) und Softwareebene (Programmierfehler) passieren Fehlerzustand breitet sich leicht von fehlerhaften Daten aus Datenüberprüfung auf Basis von Korrektheitskriterien Strukturelle Eigenschaften der Datenstruktur (linked list structure, pointer boundaries,... ) Bekannte Korrelationen (mehrerer Orte, bekannte Umrechnungsfaktoren, cross linkage) Sanity checks (Wertebereiche, checksums) Direkter Vergleich (Dopplung, meist bei statischen Daten) Prüfung kann zu Korrektur, Bericht oder bewusster Unwissenheit führen Datenreplikation: Sichert Konsistenz zwischen redundanten Quellen Aktive Replikation führt die gleiche Aktivität auf allen Repliken aus Erstmalig eingeführt von Leslie Lamport als state machine replication Erfordert deterministische Verarbeitung von Aktivitäten Passive Replikation führt Aktivität auf einzelner Replik aus Andere Repliken bekommen nur die Unterschiede Primary server vs. backup servers Verzögerte Antwort im Failover-Fall Arbeitet auch mit nichtdeterministischen Prozessen Beispiel: Master-Slave vs. Master-Master replication setup WS 2018/19 C. Jakobs 15 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 16 / 70 osg.informatik.tu-chemnitz.de
5 Beisplie: PostgreSQL 9 Replicationsoptionen Wartungsschnittstelle Shared-Disk Setup Verhindert Synchronisationsmehraufwand, aber erfordert Speicher Gegenseitiger Ausschluss für aktive und passive Knoten muss sichergestellt werden Shared-Nothing Setup Block-device Replication - Betriebssystem spiegelt Dateisystemoperationen auf alle Knoten (z.b. GFS, DRBD) Point-In-time Recovery (PITR) - Passive Knoten erhalten Stream von write-ahead log (WAL) Einträgen nach jeder Transaktionsbestätigung Master-Slave / Multimaster Replication - Schubweise Updates der Tabellengranularität werden an passive Knoten gesendet Statement-Based Replication Middleware - SQL wird an alle Knoten gesendet Wartungstask für Außenwelt sichtbar machen Zusätzliche Art von Systeminput Trennung von Schnittstelle und Verarbeitung Überlastschutz sollte die Wartungsschnittstelle nicht beeinflussen Durchmischte Schnittstellen können Sicherheitsprobleme mit sich bringen Keine verborgene Falltür, aber ein gut gesicherter dedizierter Weg Verhindern, dass die Anwendungslast davon Gebrauch macht Auch nützlich für ähnliche Funktionen, wie Informationen aus Log ziehen WS 2018/19 C. Jakobs 17 / 70 osg.informatik.tu-chemnitz.de Eskalation WS 2018/19 C. Jakobs 18 / 70 osg.informatik.tu-chemnitz.de Endlose Wiederherstellungsversuche können in machen Fällen valide sein (Transiente Fehlerursachen) Aber Fehlerverarbeitung sollte angehalten werden wenn: Correcting audits bleiben unerfolgreich Rollback / roll-forward bleiben unerfolgreich Eskalation des Prozesses macht Fehler weniger lokal und drastischer Erfordert Verständnis der Fehlerursache und des Ausfallmodells Einige Optionen: Partielle Operation wiederaufnehmen, partielle Dienstverschlechterung ausführen WS 2018/19 C. Jakobs 19 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 20 / 70 osg.informatik.tu-chemnitz.de
6 Fehlerursachenkorrelation Voraussetzung: Frühe Fehlerursachenentfernung deckt gemeinsame Fehlerzustandstypen auf Betrachtung der einzigartigen Signatur eines Fehlerzustandes, um die entsprechende Fehlerkategorie zu identifizieren Ermöglicht die Aktivierung eines bekannten Fehlerzustandsabgleichs Beispiel: Viele off-by-one Fehlerzustände beim Testen gefunden, System darauf vorbereiten Bei Datenfehlerzuständen, entsprechend zu prüfende Daten sollten vorher bekannt sein Mehrere Fehlerzustände können zeitlich Dicht erfolgen Korrelation ist hilfreich, um den Ausfallort zu bestimmen Designkriterien Abdeckung (Coverage) Gesamtabdeckung Abdeckung bezüglich gegebener Fehlerarten Overhead Hardware (zusätzliche Schaltungen, zusätzlicher Speicher) Software Laufzeit (Overhead für Kodierung und Dekodierung)... Anwendungsfall Erkennung Lokalisierung Korrektur WS 2018/19 C. Jakobs 21 / 70 osg.informatik.tu-chemnitz.de Standardtechniken der Diagnose Replikationsschecks Timingchecks Reversalchecks Kodierungschecks Plausibilitätschecks Strukturchecks Diagnosechecks Algorithmische Checks WS 2018/19 C. Jakobs 22 / 70 osg.informatik.tu-chemnitz.de Replikationschecks Führe Test gegen Replik der Komponente aus Gründlich, aber teuer Varianten: Identische Kopien einer Einheit implizieren korrektes Design und unabhängige Aufälle Unterschiedliche Kopien mit der gleichen Funktionalität implizieren Designfehler Zeitliche Redundanz (wiederholte Ausführung) impliziert transiente Ausfälle INPUT C1 COMPARATOR OUTPUT C2 WS 2018/19 C. Jakobs 23 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 24 / 70 osg.informatik.tu-chemnitz.de
7 Timingchecks Überprüfung, ob Zeitbedingungen eingehalten werden Watchdog - Fortschritt setzt Timer zurück, abgelaufener Timer unterstellt defekte Komponente Erkennung von Crashs, Überlast, unendliche Schleifen; Frequenz hängt von Anwendung ab Passive gegenseitige Überwachung Broadcast timeout - Komponente sendet Nachricht während des Fortschritts, Empfänger kennen Deadline für die nächste Nachricht Aktive gegenseitige Überwachung Acknowledge timeout - Peers sollten auf Anfrage mit Antwort reagieren BUS1 BUS2 P1 P2.... P16 Kodierungschecks Kodierungstechniken realisieren informationelle Redundanz Code definiert eine Untermenge aller möglichen Informationsworte als valide Jede valide Information ist ein Codewort Fehlererkennungsmechanismus: Ist ein gegebenes Wort ein (valides) Codewort? Beispiele: Paritätsbit gerade/ungerade Berger-Code Anzahlen von 0 (oder seltener 1) Checksumme Addition von Elementen eines Blocks Hamming-Code Vergrößerung der Hamming-Distanz Cyclic Redundancy Check Ausnutzung des Lemma von Bézout (Restwerttheorem) Beispiel Tandem-Computer: I am alive im Sekundentakt, Are you okay? zweisekündlich WS 2018/19 C. Jakobs 25 / 70 osg.informatik.tu-chemnitz.de Hamming Distance (Ricard Hamming, 1950) Hammingdistanz zwischen zwei Codeworten: Anzahl der Unterschiede zwischen korrespondierenden Bitstellen Alternative Definition: Anzahl der notwendigen Substitutionen um A in B zu wandeln Alternative Definition: Anzahl an Fehlern, die A in B transformieren WS 2018/19 C. Jakobs 26 / 70 osg.informatik.tu-chemnitz.de Paritätscodes Füge Paritätsbit zum Informationswort hinzu Gerade Parität Wenn ungerade Anzahl von Einsen, füge eine hinzu um die Anzahl gerade zu machen Ungerade Parität Wenn gerade Anzahl an Einsen, füge eine hinzu um die Anzahl ungerade zu machen Minimaler Hemmingabstand: Kleinste Distanz zwischen zwei beliebigen Codeworten Um d Einbitfehler zu finden, muss ein Code mindestens Distanz d + 1 haben Wenn mindestens d + 1 Bits im übermittelten Codewort verändert werden, taucht ein neues (valides) Codewort auf Um d Einbitfehler zu korrigieren, muss die kleinste Distanz mindestens 2d + 1 sein WS 2018/19 C. Jakobs 27 / 70 osg.informatik.tu-chemnitz.de Varianten: Bit-per-word parity Bit-per-byte parity (Beispiel: Pentium data cache) Bit-per-chip parity... WS 2018/19 C. Jakobs 28 / 70 osg.informatik.tu-chemnitz.de
8 Zweidimensionale Parität m-aus-n-kode Erkennt alle 1-Bit-Fehler, alle 2- und 3-Bit-Fehler in k Worten, sowie viele weitere Lokalisiert alle 1-Bit-Fehler in k Worten Datenwort der Länge n (inklusive Codebits) stellt sicher, dass m Einsen im Wort sind Example: 2-out-of-5 code Oft in Telekommunikation und US-Postsystem genutzt 5 Bits ermöglichen 10 Kombinationen mit 2-aus-5, sodass alle Dezimalzahlen darstellbar sind Kann mit mehr als Einbitfehlern umgeben Decimal Digit 2-out-of WS 2018/19 C. Jakobs 29 / 70 osg.informatik.tu-chemnitz.de Codeeigenschaften WS 2018/19 C. Jakobs 30 / 70 osg.informatik.tu-chemnitz.de Prüfsummen Code Bits / Word Number of possible words Even Parity 4 8 Odd Parity 4 8 2/4 4 6 Coverage Any single bit error, no double-bit error, Any single bit error, no double-bit error, Any single bit error, 33% of double bit errors Multipliziere Komponenten eines Datenworts und addiere sie zu einer Prüfsumme Gut für riesige Datenblöcke, geringer Hardwareoverhead Kann erhebliche Zeit beanspruchen, Speicheroverhead 100% Abdeckung von Einzelfehlern Beispiel: ISBN 10 Prüfziffer Letzte Ziffer einer 10-Ziffern-ISBN ist Prüfziffer, berechnet durch: Multiplikation aller Datenziffern mit ihrer Position, beginnend von rechts Summe davon nehmen und Prüfziffer wählen, sodass das Ergebnis mod 11 = 0 ist Prüfziffer 10 ist durch X repräsentiert Komplexere Ansätze führen zu besserer Abdeckung (z.b. CRC) im Tauch gegen mehr CPU-Zeit WS 2018/19 C. Jakobs 31 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 32 / 70 osg.informatik.tu-chemnitz.de
9 Hammingcode Jedes Datenwort mit n Bits wird um k Kontrollbits erweitert Kontrollbits durch Paritätsansatz (gerade Parität), implementiert mit XOR Einfügung an zwei-hoch Positionen Paritätsbit p x ist für alle Positionszahlen mit X-least significant gesetzten Bits verantwortlich (z.b. p 1 ist für,red dot Positionen verantwortlich) Paritätsbits prüfen überlappende Teile der Daten Minimale Hammingdistanz von drei (Einzelbitkorrektur) Anwendung in DRAM-Speicher Konstruktion von HAMMING-Codes Konstruktion nach R.W. HAMMING, 1950 Jede j. Stelle, j = 2 i 1 mit i = 1,..., k ist ein Checkbit (Paritätsbit) c i. Die übrigen Bits sind Datenbits d l mit l = 1,..., m Beispiel für (7, 4): d 4, d 3, d 2, c 3, d 1, c 2, c 1 = h 7, h 6, h 5, h 4, h 3, h 2, h 1 Jedes Checkbit bildet eine Parität über eine Anzahl Bits Bildungsregel: c j = h 2 j 1 wird für alle Bits mit (i mod 2 j ) 2 j 1 genutzt (i bezieht sich auf h i ) Beispiel für (7, 4): Parität von h 1, h 3, h 5, h 7 c 1 = d 1 d 2 d 4 Parität von h 2, h 3, h 6, h 7 c 2 = d 1 d 3 d 4 Parität von h 4, h 5, h 6, h 7 c 3 = d 2 d 3 d 4 WS 2018/19 C. Jakobs 33 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 34 / 70 osg.informatik.tu-chemnitz.de Beispiel (7,4)-HAMMING-Codes Beispiel für einen (7, 4)-Hamming- Code Keine zwei Codewörter (dritten Spalte) haben eine Hamming- Distanz kleiner 3 Wert binär Hamming Generatormatrix HAMMING-Code ist ein linearer Code er kann mit einer Generatormatrix erzeugt werden, so dass h = c G (Multiplikation ist Modulo 2) Beispiel für (7,4)-Code: G = Beispiel: M = 3, c = (0011), h = d G = ( ) WS 2018/19 C. Jakobs 35 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 36 / 70 osg.informatik.tu-chemnitz.de
10 Paritätsmatrix Überprüfung von HAMMING-Codes Die Paritätsmatrix P gibt eine Matrizenform für die Paritätsbildung Beispiel für (7,4)-Code: P = Jede Spalte von P entspricht einer der Paritäten laut der Code-Bildungsregel Anmerkung: G P = 0 (wiederum: Multiplikation modulo 2) Ein empfangenes Codewort h wird überprüft durch Multiplikation modulo 2 mit der Paritäts-Matritze Den entstehenden Vektor S nennt man Syndrom h P = S Ist das Syndrom ein Null-Vektor, so ist die Übertragung fehlerlos (wenn die Fehlerannahme zutrifft) Bei einem Einzelfehler enthält das Syndrom die fehlerhaften Bitstelle WS 2018/19 C. Jakobs 37 / 70 osg.informatik.tu-chemnitz.de Hammingcode Hammingcodes sind bekannt dafür zwischen 10% und 40% Overhead zu erzeugen Syndrom legt fest, ob und welches Bit beschädigt ist Beispiel ECC Mehrheit der one-off Soft-Errors in DRAM sind durch Hintergrundstrahlung bedingt Dichte Pakete, niederer Spannung mit hohen Frequenzen Bekanntester Ansatz ist SECDEC Hammingcode Single error correction, double error detection (SECDEC) Hammingcode mit zusätzlicher Parität WS 2018/19 C. Jakobs 39 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 38 / 70 osg.informatik.tu-chemnitz.de Andere Checks Umkehrchecks Eins-zu-Eins Beziehung zwischen Eingabe und Ausgabe Berechnet Eingabe aus Ausgabe durch Umkehrfunktion, Verlgeich Wiederlesen der Daten nach Schreiben, mathematische Funktionen x2 = x Diagnostische Checks Prüfe bekannte Ausgabe für einige Eingaben Typischer Ansatz bei eingebauten Hardwaretests Lasttests - Ausführung auf Sättigungsniveau, auslösen abnormaler Umgebungsbedingungen Plausibilitätschecks Basieren auf Wissen um Systementwurf und Datentypen - range checks, consistency checks, type checks, e.g. 0 α < 360 WS 2018/19 C. Jakobs 40 / 70 osg.informatik.tu-chemnitz.de
11 Leaky Bucket Zähler Unterscheidung zwischen transienten und intermittierend wiederholenden Ausfällen Weise einem leaky bucket Zähler eine Abschwächungseinheit zu Erhöhung für jedes Event / jeden Ausfall Periodische Verringerung bis auf Initialwert - Ausfallereignisse werden periodisch geleaked Überschreiten des vordefinierten oberen Schwellwerts des Eimers identifiziert einen permanenten Ausfall Beispiele: Fehlerhafte Nachrichten füllen den Buffer Korrigierbare Speicherfehler Quarantäne / Konzentrierte Wiederherstellung Quarantäne Prävention von Fehlerzustandsausdehnung Verlässt sich auf Einheiten der Abschwächung in der Architektur Aktiviert Barriere um die Komponente Beispiel: Statusindikator einer voting unit Konzentrierte Wiederherstellung Minimiere Nichtverfügbarkeit durch Fokussierung sämtlicher Resourcen auf die Wiederherstellung Informiere Ausfallbeobachter über Wiederherstellungsaktivität und bleibe innerhalb der Einheit der Abschwächung Etabliere Quarantäne um die Wiederherstellungsaktivität Genutzt in Systemen mit hohem Überlebensbedarf (Telekommunikationsindustrie) WS 2018/19 C. Jakobs 41 / 70 osg.informatik.tu-chemnitz.de Checkpoint WS 2018/19 C. Jakobs 42 / 70 osg.informatik.tu-chemnitz.de Individuelle Zeitentscheidung / Datenrücksetzung Verhindere Verlust von Resultaten während der Wiederherstellung durch Sicherung globaler Zustandsinformationen Fokus auf Langzeitdaten, die schwer zu bekommen sind Datenkonsistenz und das Kontrollintervall sind relevant Das Snapshot -Problem - Wie erreicht man (globale) Konsistenz? Globaler Zustand = lokaler Zustand + Nachrichten Snapshot-Algorithmen: Erfasse den vergangenen, konsistenten, globalen Zustand Chandy & Lamport (1985) landmark paper Verlässt sich auf flush-prinzip in FIFO-Kommunikationskanälen Kontrollnachrichten,schieben ausstehende Nachrichten,raus Individuelle Zeitentscheidung Unabhängige Checkpoints: Gegenläufiger Ansatz zu globalen Checkpoints Jeder Prozess macht dynamisch lokale Snapshots, wenn nötig Overhead für Etablierung der Konsistenz bei Wiederherstellung vs. globaler Checkpoint-Overhead während der Ausführung Datenrücksetzung Erholung von nicht-korrigierbaren Datenfehlern durch Verwendung / Berechnung von Initialwerten und approximierten Werten WS 2018/19 C. Jakobs 43 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 44 / 70 osg.informatik.tu-chemnitz.de
12 Rollback / Roll-Forward Wie zur Verarbeitung zurückkehren nach der Wiederherstellung / Fehlerbehandlung? Rollback Zeitpunkt des Checkpoints / der letzten Anfrage entscheiden den Rollback-Punkt Beachtung der Nebeneffekte wiederholter Arbeit Fehlerzustände können wiederholt auftreten, die Wiederholungen sollten begrenzt sein Roll-Forward Resynchronisation von System-Tasks, die schneller sein könnten Besonders nützlich in ereignisorientierten zustandslosen Diensten Erfordert saubere Schadensabschwächung und -eindämmung Restart / Limit Retries Restart Ausführung wiederaufnehmen, wenn Wiederherstellung / Eskalation nicht möglich ist Kalt / warm Neustart - einige initiale Prüfungen übergehen, Hardware vs. Software Neustart Unterstützt durch checkpoints Limit Retries Szenario: Fehlerursachen sind deterministisch (latente Fehlerursachen -> gleiche Stimuli -> Aktivierung) Rollback kann das Problem nicht lösen, wenn der Aktivierungsgrund bestehen bleibt Beispiel:,Killer Nachrichten als unverarbeitet markiert Problem: Fehlerpropagierung in sich selbst, muss durch Begrenzung der Wiederholungen gestoppt werden Lösung: Safeguarding und roll-forward WS 2018/19 C. Jakobs 45 / 70 osg.informatik.tu-chemnitz.de Failover Wiederherstellen einer fehlerfreien Ausführung in einem aktiven Element war nicht erfolgreich Wechsel zu redundanter Ressource, basierend auf Replikation Wichtige Faktoren sind Failover-Zeit und gemeinsamer Datenzugriff Etabliere jemanden, der verantwortlich ist, zur Lenkung Benötigt korrekte Quarantäne für fehlerhaften Systemteil WS 2018/19 C. Jakobs 46 / 70 osg.informatik.tu-chemnitz.de Redundanzkonfiguration für Failover N-zu-1 und N+1 sind Spezialfälle für aktiv/passiv mit mehreren Diensten Aktiv / aktiv hat keine Downtime, aber führt zu verringerter Systemleistung N-zu-1 erfordert einen Failback-Schritt, der mit N+1 nicht nötig ist Hot Standby: Kein Hochfahren bei Failover, kein Dienstausfall für den Nutzer Natürliche Eigenschaft von aktiv/aktiv Systemen Möglich selbst mit aktiv/passiv durch kontinuierliche Replikation, zustandslose Dienste oder statische Daten Warm standby / log shipping: Passive Replikation auf Reserve Cold standby: Reserve ist deaktiviert bis Failover eintritt WS 2018/19 C. Jakobs 47 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 48 / 70 osg.informatik.tu-chemnitz.de
13 Beispiel: Duplex System Beispiel: Duplex System + Standby-Modul Output Switch Output 1 primary unit Module Switch 1 Output 2 secondary Processor 1 P1 Processor P2 2 unit Output Input 2 Switch 3 Control logic Input WS 2018/19 C. Jakobs 49 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 50 / 70 osg.informatik.tu-chemnitz.de Beispiel: Mehrere Standby-Module Beispiel: Pair and Spare Module Module 1 Switch 1 Output Comparator 2 Output 2 Input Input 3 Switch n Comparator 4 WS 2018/19 C. Jakobs 51 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 52 / 70 osg.informatik.tu-chemnitz.de
14 Beispiel: Triple Modular Redundancy (TMR) Input Module A Module B Module C Voter Voter output Voting Kombination von Replikationschecks und Failover Exact Voting: Entscheidung führt zu korrektem Resultat oder Benachrichtigung über unsichereren Zustand Inexact Voting: Vergleich kann zu mehreren korrekten Resultaten führen Non-adaptive Voting: Verwendet zulässige Resultatabweichung, durch Abweichungsminimum und -maximum Adaptive Voting: Resultate basierend auf vergangener Erfahrung ordnen Vorhersage was der korrekte Wert sein sollte und naheliegendstes Resultat verwenden Beispiel: Gewichtete Summe verschiedener Resultate R = W 1 R 1 + W 2 R 2 + W 3 R 3 mit W 1 + W 2 + W 3 = 1 Verschiedene Optimierungen für verschiedene Antwortgrößen (z.b. nur Checksum vergleichen) Kommunikationslatenz sollte die Abstimmung nicht beeinflussen WS 2018/19 C. Jakobs 53 / 70 osg.informatik.tu-chemnitz.de Voting (Forts.) WS 2018/19 C. Jakobs 54 / 70 osg.informatik.tu-chemnitz.de Beispiel: Space Shuttle Module Auswahl im Falle mehrere Ereignisse: Majority Vote (ungerade Knotenanzahl) Generalized Median Voting - wähle Median als Resultat (durch iteratives Entfernen von Extrema) Formalized Plurality Voting - teile Resultate in Partitionen, wähle zufälliges Mitglied der größten Partition Weighted Average Technik Komponenten, die (zum Teil) nicht dem Ergebnis zustimmen, werden als fehlerhaft markiert Input Space Shuttle: TMR mit zwei Standby-Modulen Aktive Module: 1,2 und 3 Modul 4: warm standby, Modul 5: cold standby Voter/Switch Output WS 2018/19 C. Jakobs 55 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 56 / 70 osg.informatik.tu-chemnitz.de
15 Beispiel: Tandem NonStop Systems I I I I Dual Master Problem Hochredundante Hardwarekonfiguration Mehrere gänzlich unabhängige Prozessoren, redundante Pfade Fail-fast-Module mit Selbstprüfungsfähigkeit (paritätsbasiert) Unterstützung von Hardwareaustausch während des Betriebs I Aktuell aktives Element kann Kontrolle im Failover-Fall nicht abgeben I Typisches Problem in hochverfügbaren Clustern I Split brain - Cluster interconnect ist beschädigt, Unterclusterpartition entsteht I Resource fencing - Nur eine Untergruppe des Clusters soll arbeiten I Amnesia - Clusterneustart mit veralteter Konfigurationsinformation Tandem NonStop processor redundancy I Quorum - The number (as a majority) of officers or members of a body that when duly assembled is legally competent to transact business [Merriam-Webster] I Nur eine Seite soll arbeiten I Quorum ermöglicht es andere Subcluster einzudämmen, ohne zu kommunizieren I Verlust der Mehrheit sollte zum Knotensuizid führen (wenn möglich) Hardware Fault Tolerance WS 2018/19 C. Jakobs 57 / osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 58 / 70 osg.informatik.tu-chemnitz.de Beispiel: Windows Multi-Site Clustered File Server Quorumansätze I Central arbitration - Manuelles Quorum, zentralisierter Server / Admin bestimmt Master I Simple majority - Mehr als die Hälfte der Knoten muss eine Gruppe bilden I Weighted majority - Stimme von jedem Knoten, Gruppe mit größter Anzahl gewinnt á Gruppenentscheidung basiert auf statischen Daten (Anzahl der Stimmen, Mehrheit nötig) I Tie-breaker - Leichtgewichtige Auflösungsstrategie vor der Entscheidung Beispiel: Ping-Antwort von gemeinsamem Upstream-Server I Wenn Konnektivität sich ändert sollte sich auch die Quorumentscheidung ändern I Split Brain hat verschiedene Gesichter I Beispiel in DRBD Dateisystem: Mehrere Replikationsmaster durch menschliche Fehler oder temporären Verbindungsverlust führt zu Problemen bei der Datenzusammenführung WS 2018/19 C. Jakobs 59 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 60 / 70 osg.informatik.tu-chemnitz.de
16 Weighted Majority with Quorum Device Mit gerader Anzahl, zusätzliche externe Stimme durch Quorumgerät Anzahl der Stimmen durch das Quorumgerät sollte kleiner sein als die Anzahl der Stimmen Ermöglicht Cluster die Ausführung mit defektem Quorumgerät Verbindungsschema eines Quorumgeräts entscheidet über valide Partitionierungsfälle Quorumgerät ist typischerweise ein geteiltes Laufwert Nur verwendet, wenn Kommunikation mit andern Knoten ausfällt Implementiert durch SCSI RESERVE, Fibre Channel, oder iscsi Marked Data Datenfehler gefunden, aber keine Wiederherstellungsoption verfügbar Daten sollten unter Quarantäne gestellt werden - nicht verwenden, keine Aktionen aus ihnen ableiten Stattdessen Defaultwert verwenden Operationen mit diesen Daten überspringen Resultate von Operationen als fehlerhaft markieren Beispiel: IEEE Standarddarstellung für binäre Fließkommazahlen Definiert,Not a Number (NaN) als Wert Resultat einer Division durch Null, Wurzel aus 1,... Regeln für Berechnungen, wenn ein Operand NaN ist WS 2018/19 C. Jakobs 61 / 70 osg.informatik.tu-chemnitz.de Load Shedding Wirf eine Minderheit an zu bedienenden Anfragen weg, um die Mehrheit zu bearbeiten So früh wie möglich, um Resourcenkonsum zu minimieren Beispiel: ICMP Typ 3: Destination Unreachable - kein Timeout des Clienten Typ 4: Source Quench - typischerweise nur zwischen Routern, also von Mailservern verwendet Typ 11: Time Exceeded - wegen Verstopfung (oder zirkulären Paketen) Beisplie: HTPP 5XX error codes 503: Service Unavailable Spezialfall: Arbeit auf Peripherie loswerden WS 2018/19 C. Jakobs 62 / 70 osg.informatik.tu-chemnitz.de Beenden laufender Arbeit / neue Arbeit vor dem Stillstand Beenden laufender Arbeit Was verarbeiten, was zurückweisen? Beschriftung der Anfragen: neu vs. fortfahren Klassifiziere Prozesse als,fortfahren basierend auf ihrer Ressourcennutzung Aggressiv versuchen Ressouce Hogs loszuwerden Kann zur Oszillation führen, wenn das System nach neuen Anfragen hungert Nach Cleanup Lösung: Kleine Menge neuer Anfragen zulassen Neue Arbeit vor dem Stillstand Wenn Anfragender aufgibt, verschwendet sein Retry noch mehr Ressourcen LIFO-Behandlung oder bevorzugte Abarbeitung für Premiumanfragen WS 2018/19 C. Jakobs 63 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 64 / 70 osg.informatik.tu-chemnitz.de
17 Slow It Down Überlastfälle bearbeiten und Sättigung verhindern durch Multi-Step-Eskalation Beschränkung der Anfragebarbeitung mit ansteigender Schwere pro Level Ziel: Dinge verlangsamen bis das System mit der Last aufgeholt hat Feedbacksystem erfordert dedizierte Resourcen für den Controller Hystereseeffekt hinzufügen, um Oszillation in der Leveländerung zu verhindern Systemausgabeverhalten hängt von vergangenem Verhalten ab, nicht nur von der Eingabe Implementierung verschiedener Auslösertypen, um ein Eskalationslevel zu betreten oder zu verlassen Wenn das System dazwischen bleibt, ändert sich der Zustand nicht Beispiel: Thermostat WS 2018/19 C. Jakobs 65 / 70 osg.informatik.tu-chemnitz.de Expansive / Protective Automatic Controls Expansive Automatic Controls Entwurf einiger Systemteile, die nur im Falle der Überlast Verwendung finden Beispiel: Keine 100%ige CPU-Auslastung im Normalbetrieb eines HPC-Clusters Beispiel: Dynamic Offloaded Work - Cloud Computing Erhöht Anfrageoverhead, nur temporäre Lösung Protective Automatic Controls Überlastoptionen: interne Arbeit abwerfen, hereinkommende Anfragen abwerfen, nichts tun Restriktion an Menge der Arbeit, die das System während des funktionierens annimmt Systemdurchsatz kann abfallen, sollte aber nicht auf Null sinken Abschiebbare Arbeit / Gerechte Resourcenallocation Abschiebbare Arbeit Hohe Last: Hereinkommende Arbeit loswerden vs. Routinewartung loswerden Routinearbeit verlegbar machen (nur im Fehlerfall relevant) Gerechte Resourcenallocation Szenario: Behandlung vieler Anfragen für eine Menge an Ressourcen, von denen einige knapp sind Anfragebehandlung würde einige Ressourcen unnötigerweise stillstehen lassen Lösung: Ähnliche Anfragen zusammenfassen und gemeinsam Ressourcen allozieren Zusätzliche Aufzeichnungen für Anfragen und deren Ressourcen nötig Kann zu Prioritätsinversion führen WS 2018/19 C. Jakobs 66 / 70 osg.informatik.tu-chemnitz.de Fehlervorhersage Schätzung der derzeitigen, zukünftigen und wahrscheinlichen Konsequenzen von Fehleraktivierung und Fehlerzuständen Generiere eine Vorhersage des Systemverhaltens Qualitative und quantitative Methoden Strukturelle und zustandsbasierte Modellierung und Analyse Siehe folgende Kapitel... WS 2018/19 C. Jakobs 67 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 68 / 70 osg.informatik.tu-chemnitz.de
18 Zusammenfassung Literatur Verschiedene Verlässlichkeitsmaße, um mit Ausfällen, Fehlerursachen und Fehlerzuständen umzugehen Kombinierte Ansätze sind häufig Testen für Fehlerursachenentfernung + Fehlertoleranz für restliche Bugs Fehlerprävention kann koordiniertes Testen und Vorhersehen unvermeidlicher Probleme beinhalten Fehlertoleranz verbessert Nutzervertrauen, aber erhöht Komplexität Kosten Senkung/Anstieg hängt vom konkreten Fall ab [Lap92] [Han13] [SS92] Jean-Claude Laprie. Dependability: Basic concepts and terminology. Springer, 1992 Robert Hanmer. Patterns for Fault Tolerant Software. John Wiley & Sons, Juli 2013 Daniel P. Siewiorek und Robert S. Swarz. Reliable Computer Systems (2Nd Ed.): Design and Evaluation. Newton, MA, USA: Digital Press, 1992 Wichtig: Es ist unnötig einen Fehler zu tolerieren, der nicht auftreten kann. WS 2018/19 C. Jakobs 69 / 70 osg.informatik.tu-chemnitz.de WS 2018/19 C. Jakobs 70 / 70 osg.informatik.tu-chemnitz.de
Fehlertoleranz. 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
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 /
Mehr7.2 Standardtechniken der Diagnose Test/Checks. Tests. Verlässliche Systeme. 7. Kapitel Diagnose. Prof. Matthias Werner
Verlässliche Systeme Wintersemester 26/27 Verlässliche Systeme 7. Kapitel Diagnose Prof. Matthias Werner Professur Betriebssysteme 7. Einführung 7. Einführung Diagnose ist ein Standardansatz beim Entwurf
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
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
MehrVerteilte 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
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
MehrGrundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3
Hamming-Codes Kapitel 4.3 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design Inhalt Welche Eigenschaften müssen Codes haben, um Mehrfachfehler erkennen und sogar korrigieren zu können?
MehrVerlässliche Systeme
Verlässliche Systeme Konzepte der Fehlertoleranz Rachid El Abdouni Khayari Universität der Bundeswehr München, Neubiberg, Fakultät für Informatik, Institut für Technische Informatik Herbsttrimester 2004
MehrKapitel 13: Syndromcodierung / Hamming Codes
Kapitel 3: Syndromcodierung / Hamming Codes Ziele des Kapitels Lineare Codes Zyklische Codes Copyright M. Gross, ETH Zürich 26, 27 2 Parity-Check-Matrix Theorem: Die Minimaldistanz eines linearen Codes
Mehr(eindimensionaler) Paritätscode: Codes (8a)
(eindimensionaler) Paritätscode: Codes (8a) Cyclic Redundancy Check (CRC) view data bits, D, as a binary number choose r+ bit pattern (generator), G goal: choose r CRC bits, R, such that exactly
MehrFehlerdetektion. Cyclic Redanduncy Check. Grundlagen der Rechnernetze Übertragungssicherung 7
Fehlerdetektion Cyclic Redanduncy Check Grundlagen der Rechnernetze Übertragungssicherung 7 Modulo 2 Arithmetik Addition Modulo 2 Subtraktion Modulo 2 Multiplikation Modulo 2 A B A B 0 0 0 1 1 0 1 1 A
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)
MehrZuverlä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
MehrGrundlagen der Technischen Informatik. 2. Übung
Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 2. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Hamming-Distanz Fehlererkennung
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
MehrError detection and correction
Referat Error detection and correction im Proseminar Computer Science Unplugged Dozent Prof. M. Hofmann Referent Pinto Raul, 48005464 Datum 19.11.2004 Error detection and correction 1. Fehlererkennung
MehrÜberblick. Verlässliche Echtzeitsysteme. Annahmen. Table of Contents. Übungen zur Vorlesung. Florian Franzmann Martin Hoffmann Tobias Klaus
Überblick Verlässliche Echtzeitsysteme Übungen zur Vorlesung Florian Franzmann Martin Hoffmann Tobias Klaus Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und
MehrGruppe. Kanalcodierung
Kanalcodierung Ziele Mit diesen rechnerischen und experimentellen Übungen wird die prinzipielle Vorgehensweise zur Kanalcodierung mit linearen Block-Codes und mit Faltungscodes erarbeitet. Die konkrete
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
MehrEntwurfsmuster und Softwarearchitekturen für sicherheitskritische Systeme
1 Entwurfsmuster und Softwarearchitekturen für sicherheitskritische Systeme Für das Seminar Analyse, Entwurf und Implementierung zuverlässiger Software Von: Andreas Seibel Betreut durch: Dr. Holger Giese
MehrPostgreSQL im Cluster. Hans-Jürgen Schönig Hans-Jürgen Schönig
PostgreSQL im Cluster Über uns PostgreSQL Dienstleistungen Cybertec bietet Ihnen... 24x7 Support für PostgreSQL PostgreSQL Consulting Performance Tuning PostgreSQL Training Cloud & Clustering PostgreSQL
MehrVerlässliche Echtzeitsysteme
Verlässliche Echtzeitsysteme Übungen zur Vorlesung Florian Franzmann, Martin Hoffmann Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.informatik.uni-erlangen.de
MehrEs gibt 2 gebräuchliche Arten, wie erkannte Fehler dem Aufrufer bekannt gegeben werden:
Introduction to Detection Patterns Der erste Schritt für die Fehlertoleranz ist die Erkennung von Fehlern; es ist die Voraussetzung für Fehler Entschärfung (mitigation) und Erhohlung (recovery). Es ist
MehrÜ B U N G E N Z U V E R L Ä S S L I C H E E Z S A U F G A B E 4 : E RW E I T E RT E A R I T H M E T I S C H E C O D I E R U N G
A U F G A B E 4 : E RW E I T E RT E A R I T H M E T I S C H E C O D I E R U N G In dieser Aufgabe werden Sie die gegen Bitfehler abgesicherten Bereiche Ihrer dreifach redundanten Filterausführung durch
MehrGrundlagen der Rechnernetze
Grundlagen der Rechnernetze Übertragungssicherung Übersicht Fehlerdetektion Fehlerkorrektur Flusskontrolle Fehlerkontrolle Framing Grundlagen der Rechnernetze Übertragungssicherung 2 Fehlerdetektion Grundlagen
MehrVerlässliche Systeme
Verlässliche Systeme RAID, Teil 2 Rachid El Abdouni Khayari Universität der Bundeswehr München, Neubiberg, Fakultät für Informatik, Institut für Technische Informatik Herbsttrimester 2004 Datenorganisation
MehrDekohärenz und Grundprinzip der Quantenfehlerkorrektur
Dekohärenz und Grundprinzip der Quantenfehlerkorrektur Bachelorarbeit Gregor Wurm, Betreuer: Prof. E. Arrigoni Institut für Theoretische Physik der Technischen Universiät Graz 24. Sept. 2010 Übersicht
MehrRechnernetze Ü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
Mehreuronas Fibre Channel SAN Cluster Datenblatt
euronas Fibre Channel SAN Cluster Datenblatt Rev. 16-03-04 Index Einführung.......3 Wie funktioniert der Fibre Channel SAN Cluster?...3 Aufbau......4 Die Vorteile. 5 Hardware-Empfehlung...6 euronas SAN
MehrÜbungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen
Übungen zur Vorlesung Grundlagen der Rechnernetze Zusätzliche Übungen Hamming-Abstand d Der Hamming-Abstand d zwischen zwei Codewörtern c1 und c2 ist die Anzahl der Bits, in denen sich die beiden Codewörter
MehrHochverfügbarkeit mit Data Guard Möglichkeiten und Grenzen
Hochverfügbarkeit mit Data Guard Möglichkeiten und Grenzen DOAG Konferenz 16. 18.11.2010, Nürnberg Andreas Kother info@ordix.de www.ordix.de Agenda Definition Hochverfügbarkeit Abgrenzung RAC vs. Data
MehrWege zur Hochverfügbarkeit. Christian Affolter High Availability 08. Mai 2015
Wege zur Hochverfügbarkeit Christian Affolter High Availability 08. Mai 2015 Übersicht Weshalb Hochverfügbarkeit? Was ist Hochverfügbarkeit? Wege / Prinzipien / Konkrete Ansätze Herausforderungen und Erfolgsfaktoren
MehrResidue Number System und Modulararithmetik
Residue Number System und Modulararithmetik Patrick Russell Dresden, 18. Juni 2015 Zahlendarstellung RNS Systeme Anwendungsbeispiele Literatur TU Dresden, 18.06.15 Folie 2 von 30 01 Zahlendarstellung Darstellung
MehrThemen. Sicherungsschicht. Rahmenbildung. Häufig bereitgestellte Dienste. Fehlererkennung. Stefan Szalowski Rechnernetze Sicherungsschicht
Themen Sicherungsschicht Rahmenbildung Häufig bereitgestellte Dienste Fehlererkennung OSI-Modell: Data Link Layer TCP/IP-Modell: Netzwerk, Host-zu-Netz Aufgaben: Dienste für Verbindungsschicht bereitstellen
MehrÜberblick. Verlässliche Echtzeitsysteme. Überblick. Annahmen. Übungen zur Vorlesung. 6. Juli 2015
Verlässliche Echtzeitsysteme Übungen zur Vorlesung Florian Franzmann Tobias Klaus Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) https://www4.cs.fau.de
MehrVerfügbarkeit von Applikationen und Failover Szenarien. Winfried Wojtenek. wojtenek@mac.com
Verfügbarkeit von Applikationen und Failover Szenarien Winfried Wojtenek wojtenek@mac.com Verfügbarkeit % Tage Stunden Minuten 99.000 3 16 36 99.500 1 20 48 99.900 0 9 46 99.990 0 0 53 99.999 0 0 5 Tabelle
MehrCodierungstheorie Teil 1: Fehlererkennung und -behebung
Codierungstheorie Teil 1: Fehlererkennung und -behebung von Manuel Sprock 1 Einleitung Eine Codierung ist eine injektive Abbildung von Wortmengen aus einem Alphabet A in über einem Alphabet B. Jedem Wort
MehrCache-Kohärenz und -Konsistenz. Betreuer: Prof. Brüning Veton Kajtazi Mat.-Nr.: Universität Heidelberg
Cache-Kohärenz und -Konsistenz Betreuer: Prof. Brüning Veton Kajtazi Mat.-Nr.: 3220501 Universität Heidelberg Inhaltsverzeichnis Wozu Caches? Unterschied Kohärenz und Konsistenz MESI-Protokoll Fazit 2
MehrOracle HA-Technologien im Überlick
Oracle HA-Technologien im Überlick Björn Bröhl OPITZ CONSULTING Gummersbach GmbH Seite 1 Übersicht Was bedeutet Hochverfügbarkeit? Oracle HA-Technologien Standby Dataguard Failover-Cluster / Failsafe Seite
MehrVerschlüsselungs- und Codierungstheorie PD Dr. Thomas Timmermann Westfälische Wilhelms-Universität Münster Sommersemester 2017
Verschlüsselungs- und Codierungstheorie PD Dr. Thomas Timmermann Westfälische Wilhelms-Universität Münster Sommersemester 2017 Lineare Codes (Ausarbeitung von Benjamin Demes) 1) Was sind lineare Codes
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
MehrTheorie der Programmiersprachen
slide 1 Vorlesung Theorie der Programmiersprachen Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg slide 2 Heute Komponenten eines Computers Speicher Die
MehrÜberblick. Virtualisierungsbasierte Fehlertoleranz Motivation Remus. c td MWCC (WS16/17) Virtualisierungsbasierte Fehlertoleranz 14 1
Überblick Virtualisierungsbasierte Fehlertoleranz Motivation Remus c td MWCC (WS16/17) Virtualisierungsbasierte Fehlertoleranz 14 1 Virtualisierungsbasierte Fehlertoleranz Widersprüchliche Entwicklung
MehrCodes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC)
Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC) Definitionen: Codewort:= mit zusätzlichen (redundanten) Kontrollbits versehenes Quellwort m:= Länge des Quellwortes (Anzahl der Nutzdatenbits)
MehrHochverfügbarkeit mit Speichernetzen
Hochverfügbarkeit mit Speichernetzen Ulf Troppens LAN vip Server 1 Brandschutzmauer Server 2 Cluster Agenda e Multipathing Clustering Datenspiegelung Beispiele Fazit 2/32 Agenda e Multipathing Clustering
MehrRechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 14/15 Prof. Dr Jian-Jia Chen Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-.de http://ls1-www.cs.tu-.de Übersicht
MehrFunktionale Sicherheit und Simulation
Funktionale Sicherheit und Simulation Prof. Dr. Walter Commerell ASIM STS/GMMS 9./10.3.2017 Ulm 1 Inhalt Funktionale Sicherheit bei Fahrzeugen Simulative Anforderungen der ISO26262 Optimaler Einsatz von
MehrÜbung zu Drahtlose Kommunikation. 1. Übung
Übung zu Drahtlose Kommunikation 1. Übung 22.10.2012 Termine Übungen wöchentlich, Montags 15 Uhr (s.t.), Raum B 016 Jede Woche 1 Übungsblatt http://userpages.uni-koblenz.de/~vnuml/drako/uebung/ Bearbeitung
MehrSysteme II 3. Die Datensicherungsschicht
Systeme II 3. Die Datensicherungsschicht Christian Schindelhauer Technische Fakultät Rechnernetze und Telematik Albert-Ludwigs-Universität Freiburg Version 12.05.2016 1 Fehlererkennung: CRC Effiziente
MehrEinführung in die Kodierungstheorie
Einführung in die Kodierungstheorie Einführung Vorgehen Beispiele Definitionen (Code, Codewort, Alphabet, Länge) Hamming-Distanz Definitionen (Äquivalenz, Coderate, ) Singleton-Schranke Lineare Codes Hamming-Gewicht
MehrFehlererkennung und -behandlung. Paritätsverfahren
Fehlererkennung und -behandlung Gründe Thermische Elektronenbewegung in Halbleitern oder Leitungen Elektromagnetische Einstrahlung (Motoren, Blitze, benachbarte Leitungen) Bitfehlerrate ist die Wahrscheinlichkeit,
MehrEinleitung. Komplexe Anfragen. Suche ist teuer. VA-File Verfeinerungen. A0-Algo. GeVAS. Schluß. Folie 2. Einleitung. Suche ist teuer.
Anwendung Input: Query-Bild, Ergebnis: Menge ähnlicher Bilder. Kapitel 8: Ähnlichkeitsanfragen und ihre effiziente Evaluierung Wie zu finden? Corbis, NASA: EOS Bilddatenbank Folie Folie 2 Ähnlichkeitssuche
MehrInstitut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik Universität Rostock.
Seite 1 Optimierung der Verbindungsstrukturen in Digitalen Neuronalen Netzwerken Workshop on Biologically Inspired Methods on Modelling and Design of Circuits and Systems 5.10.2001 in Ilmenau, Germany
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
MehrFehlertolerante Systeme
Wissenschaftliche Vertiefung Studiengang Technische Informatik Fehlertolerante Systeme Philipp Dürnay 22.01.2016 Agenda Fehlertoleranz Fehlerdiagnose Fehlerbehandlung Beispielsystem Ausblick Philipp Dürnay
MehrHochverfügbarkeit mit MySQL: Eine Kartographie der Lösungen
Erkan Yanar (linsenraum.de) Hochverfügbarkeit mit MySQL: Eine Kartographie der Lösungen 20. November DOAG 2012 20121 / 24 Hochverfügbarkeit mit MySQL: Eine Kartographie der Lösungen DOAG 2012 Erkan Yanar
MehrHochverfügbarkeit mit Windows Server vnext. Carsten Rachfahl Microsoft Hyper-V MVP
Hochverfügbarkeit mit Windows Server vnext Carsten Rachfahl Microsoft Hyper-V MVP Carsten Rachfahl www.hyper-v-server.de Roling Cluster Upgrade Herausforderung: Update eines Failover Clusters ohne Downtime
MehrTheoretische Grundlagen der Informatik. Vorlesung am 7. Februar INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik 0 07.02.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Werbung Vorlesung Algorithmen
MehrÜbungsblatt 5 - Musterlösung
Universität Mannheim Lehrstuhl für Praktische Informatik IV Prof. Dr. W. Effelsberg Christoph Kuhmünch, Gerald Kühne Praktische Informatik II SS 2000 Übungsblatt 5 - Musterlösung Aufgabe 1: Huffman-Codierung
MehrZyklische Codes Rechnernetze Übung SS2010
Zyklische Codes Binärcodes Blockcodes Lineare Codes Nichtlineare Codes Zyklische Codes Systematische Codes Binärcodes Blockcodes Lineare Codes Nichtlineare Codes Zyklische Codes Systematische Codes Durch
MehrIntern: Ceph Kurzeinführung in die verteile Storage-Lösung
Intern: Ceph Kurzeinführung in die verteile Storage-Lösung Dominik Vallendor 29.05.2017 Tralios IT GmbH www.tralios.de Motivation Lokale Speicher sind unflexibel, selbst mit Redundanzlösungen (bsp. DRBD)
MehrFehlererkennende und fehlerkorrigierende Codes
Fehlererkennende und fehlerkorrigierende Codes Claudiu-Vlad URSACHE, 5AHITN Inhalt 1. Codes... 2 2. Hammingdistanz... 3 3. Fehlererkennende Codes... 4 4. Fehlerkorrigierende Codes... 5 1. Codes a 2 a 00
MehrIm Vergleich: Hochverfügbarkeitslösungen für die MySQL -Datenbank
Im Vergleich: Hochverfügbarkeitslösungen für die MySQL -Datenbank Ralf Gebhardt SkySQL Ab Vävarsvägen 11 02630 Esbo Finland Schlüsselworte MySQL, MariaDB, Hochverfügbarkeit, Replikation, MHA, DRBD, HA,
MehrSolaris Cluster. Dipl. Inform. Torsten Kasch <tk@cebitec.uni Bielefeld.DE> 8. Januar 2008
Dipl. Inform. Torsten Kasch 8. Januar 2008 Agenda Übersicht Cluster Hardware Cluster Software Konzepte: Data Services, Resources, Quorum Solaris Cluster am CeBiTec: HA Datenbank
MehrOracle Real Application Cluster
Oracle Real Application Cluster Björn Bröhl OPITZ CONSULTING Gummersbach GmbH Seite 1 Übersicht Die RAC Architektur RAC Komponenten (Hard- und Software) Oracle Cluster Filesystem vs. Oracle Automatic Storage
MehrWAN-Optimierung SAN über WAN mit Riverbed Granite
Eugen Neufeld Inhalt Riverbed Übersicht Probleme bei verteilten Zweigstellen Riverbed Übersicht Steelhead (WAN Optimierung) Kompression Cache Data-, Transport- und Application Streamlining Riverbed Übersicht
MehrFormale 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
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 24.01.2013 Online Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
MehrThomas-Krenn.AG und NexentaStor HERBSTWORKSHOP 2010 DER THOMAS-KRENN.AG
Thomas-Krenn.AG und NexentaStor HERBSTWORKSHOP 2010 DER THOMAS-KRENN.AG Thomas-Krenn.AG und NexentaStor OPEN STORAGE FOR THE 21ST CENTURY Die Herausforderungen im Storage Bereich It is all about having
MehrSlow Control System SCS3000 / Midas Slow Control Bus (MSCB)
WIR SCHAFFEN WISSEN HEUTE FÜR MORGEN Lukas Künzi :: Entwicklungsingenieur:: Paul Scherrer Institut Slow Control System SCS3000 / Midas Slow Control Bus (MSCB) Freitag, 4. März 2016 Inhalt Übersicht MSCB
MehrCodierung Fehlerdetektion
Übersicht Elektromagnetische Wellen Frequenzen und Regulierungen Antennen Signale Signalausbreitung Multiplex Modulation Bandspreizverfahren Codierung Rauschen und Übertragungsfehler Fehlerdetektion Block-Codes
MehrGrundlagen Rechnernetze und Verteilte Systeme IN0010, SoSe 2018
Grundlagen Rechnernetze und Verteilte Systeme IN0010, SoSe 2018 Übungsblatt 5 14. Mai 18. Mai 2018 Hinweis: Mit * gekennzeichnete Teilaufgaben sind ohne Lösung vorhergehender Teilaufgaben lösbar. Aufgabe
MehrTechnische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Darstellung von Zeichen und
MehrGrundlagen der Technischen Informatik. 2. Übung
Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit Organisatorisches Übungsblätter zuhause vorbereiten! In der Übung an der Tafel vorrechnen! Bei
MehrGrundlagen: Überblick
Grundlagen: Überblick Verteilte Systeme Definition Grundbegriffe Kommunikation Klassifikation von Fehlern Begriffe Fehlerarten Analyse von Algorithmen Korrektheit Komplexität Verteilte Algorithmen (VA),
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Graphen (1) Darstellung Traversierung Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 441 Generalisierung von Bäumen Verallgemeinerung (von Listen zu Graphen)
Mehr2. Anforderungen an Automatisierungssysteme
Grundlagen der Automatisierungstechnik (Automatisierungstechnik 1) 2. Anforderungen an Automatisierungssysteme Anforderungen an Automatisierungssysteme Verlässlichkeit (Dependability) Zuverlässigkeit (Reliability)
MehrKombinierte HW/SW-Verfahren zur Behebung von Hauptspeicherfehlern
Kombinierte HW/SW-Verfahren zur Behebung von Hauptspeicherfehlern Jan Lahni TU Dortmund 3. März 2013 1 / 24 Inhaltsverzeichnis Einleitung Hauptspeicher VECC LOT-ECC Fazit 2 / 24 Motivation kontinuierliche
MehrMariaDB und Galera. Chemnitzer Linux-Tage März Ralf Lang Linux Consultant & Developer B1 Systems GmbH
MariaDB und Galera Chemnitzer Linux-Tage 2019 16. März 2019 Ralf Lang Linux Consultant & Developer B1 Systems GmbH lang@b1-systems.de Vorstellung B1 Systems gegründet 2004 primär Linux/Open Source-Themen
MehrWeitere Verbesserungen
Weitere Verbesserungen Welcher Cache liefert aktuellen Block falls mehrere Caches Block im Zustand S halten? Lösung: Einführung eines weiteren Zustands O (Owner) Zustand O besagt: Eigentümer des Blocks
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
MehrJ. Reinier van Kampenhout Robert Hilbrich Hans-Joachim Goltz. Workshop Echtzeit Fraunhofer FIRST
Modellbasierte Generierung von statischen Schedules für sicherheitskritische, eingebettete Systeme mit Multicore Prozessoren und harten Echtzeitanforderungen J. Reinier van Kampenhout Robert Hilbrich Hans-Joachim
MehrSynchroner Spiegel & Applikationsverfügbarkeit. Johan van den Boogaart
Synchroner Spiegel & Applikationsverfügbarkeit Johan van den Boogaart Definitionenvon DR/ BC HA-Cluster Ausfallsicherheit bei einem Fehler auf einem Knoten Backup Kopieren von Daten im Fall eines Datenverlustes
MehrFehlertoleranzmechanismen 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
MehrTUD Computer Poker Challenge
TUD Computer Poker Challenge The Challenge of Poker Björn Heidenreich 31. März 2008 The Challenge of Poker Björn Heidenreich 1 Anforderungen an einen guten Poker-Spieler Hand Strength Hand Potential Bluffing
MehrEin (7,4)-Code-Beispiel
Ein (7,4)-Code-Beispiel Generator-Polynom: P(X) = X 3 + X 2 + 1 Bemerkung: Es ist 7 = 2^3-1, also nach voriger Überlegung sind alle 1-Bit-Fehler korrigierbar Beachte auch d min der Codewörter ist 3, also
MehrZugriffskontrollmechanismen. Rechteverwaltung. und. Gonsu Veronique
Rechteverwaltung und Zugriffskontrollmechanismen Gonsu Veronique Überblick! Zugriffskontrolle! Acces Control List! Problemen mit Acces Control List! Capabilities! Capabilities-basierte Systemen! EROS!
MehrAn Overview of the Signal Clock Calculus
An Overview of the Signal Clock Calculus, Jennifer Möwert Inhaltsverzeichnis Synchrone Programmiersprachen Clock Calculus Synchrone Paradigmen SLTS Clocks SIGNAL Definitionen Endochrony Bäume, Jennifer
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
MehrTechnische Grundlagen der Informatik Test Minuten Gruppe A
Technische Grundlagen der Informatik Test 1 04.11.2016 90 Minuten Gruppe A Matrikelnr. Nachname Vorname Unterschrift Deckblatt sofort ausfüllen und unterschreiben! Bitte deutlich und nur mit Kugelschreiber
MehrGrundlagen der Rechnernetze. Übertragungssicherung
Grundlagen der Rechnernetze Übertragungssicherung Übersicht Fehlerdetektion Fehlerkorrektur Flusskontrolle Fehlerkontrolle Framing Grundlagen der Rechnernetze Übertragungssicherung 2 Fehlerdetektion Grundlagen
Mehr<Insert Picture Here> RAC Architektur und Installation
RAC Architektur und Installation Elmar Ströhmer Michael Künzner Oracle Server Technologies Competence Center Agenda Überblick und Architekturen von HA-Systemen Hardware Die Basis
MehrKanalkodierung. 6 Kanalkodierung Zielstellung. Störungen der übertragenen Daten. 6 Kanalkodierung Zielstellung WS 2018/2019
Fakultät Informatik Institut Systemarchitektur Professur Datenschutz und Datensicherheit WS 2018/2019 6. Kanalkodierung Dr.-Ing. Elke Franz Elke.Franz@tu-dresden.de 6 Kanalkodierung Zielstellung en der
Mehr7. Vorlesung Netzwerkcodierung
7. Sommersemester 2010 Anwendungen von Netzwerkcodierung Content distribution, P2P Netzwerke, Microsoft Secure Content Distribution (MSCD) aka Avalanche Netzwerkcodierung für drahtlose Netzwerke / Analoge
MehrSeminar: Multi-Core Architectures and Programming
Seminar: Multi-Core Architectures and Programming Parallelisierung des Viola-Jones Algorithmus auf Tilera Hardware-Software-Co-Design Universität Erlangen-Nürnberg 1 Übersicht Einleitung Erste Versuche
MehrDie Größe A(n, d) und optimale Codes
Die Größe A(n, d) und optimale Codes Definition Optimaler Code Wir definieren A(n, d) = max{m binärer (n, M, d) Code} Ein (n, M, d)-code heißt optimal, falls M = A(n, d). Bestimmung von A(n, d) ist offenes
Mehr