Mittwoch, 3. Mai 2023

Resilienz von Systemen Teil IV - Durchsetzung und Verstärkung der Struktur

 Solange während des gesamten Lebenszyklus eines Systems immer wieder ideale Bedingungen erwartet werden, kann es sinnvoll sein , auf Lean Design zu setzen. Die Vorbereitung auf ungünstige Bedingungen (Eventualitäten) erfordert jedoch überschüssiges Material, Energie, Arbeitskräfte, Programmierung usw. Im besten Fall wird ein solcher Überschuss nie benötigt - er steht einfach still und verursacht nur Kosten.

Wenn bestimmte Funktionen geschäftskritischer sind, ist es ratsam, sich nicht ständig auf Best-Case-Annahmen zu verlassen, insbesondere wenn es externe Faktoren gibt, die nicht kontrolliert oder gar genau vorhergesagt werden können. Überschussstrategien berücksichtigen das Potenzial für ungünstige Bedingungen, auch wenn sie unsicher und schwer vorhersehbar sind. Es kann relativ sinnlos sein, in solchen Situationen nach wahrscheinlichen Ursachen zu suchen.

Genau wie die Reduktionsstrategien konzentrieren sich die Überschussstrategien auf Funktionalität und Ressourcen, die für den normalen Betrieb unter normalen Bedingungen nicht benötigt werden. Überschussstrategien sind in gewisser Weise das Gegenteil von Reduzierungsstrategien , da es bei ihnen nicht darum geht, das Vorhandene zu reduzieren, sondern hinzuzufügen, was bereits vorhanden ist und was in einer perfekten Welt ausreichend sein könnte. Hier geht es jedoch um die Fähigkeit , den Betreib auch unter Berücksichtigung von Evantualitäten fortzusetzen.

Überflüssige Strategien liefern nicht mehr Funktionalität und erhöhen nicht die Leistung, aber sie liefern Kernfunktionen unter mehr Bedingungen. Es sind „fette“ Strategien - das Gegenteil von „schlanken“ Strategien. Reduzierungsstrategien werden dort eingesetzt , wo das Potenzial zur Optimierung von Zuverlässigkeit und Wartbarkeit besteht; Überschussstrategien werden dort eingesetzt, wo es notwendig ist. Als weiterer Unterschied zwischen Überschussstrategien und Reduzierungsstrategien gibt es keine absolute Obergrenze für Überschussstrategien.Reduzierungsstrategien müssen aufhören, wenn die nackten Knochen der geforderten Funktionalität erreicht sind. Darüber hinaus ist die Reduktion konterproduktiv. Bei Überschussstrategien ist mehr immer besser. So ist beispielsweise die Hot-Standby-Redundanz besser als ein Ersatzteillager für jedes System, was besser ist als nur ein Ersatzteil pro Modell. Dreifache Redundanz ist besser als doppelte Redundanz; für die Ausfallsicherheit ist es besser, eine Million Testfälle für das Fuzzing zu verwenden als zehntausend und so weiter.

Dennoch haben Reduktionsstrategien und Überschusstrategien gemeinsam, dass es das Ziel ist, Lücken zwischen beobachteter und erforderlicher Systemkonfiguration zu schließen. Bei Reduktionsstrategien wird dies durch den Wegfall nicht benötigter Funktionalität erreicht, während bei Überschussstrategien durch Hinzufügen von Ressourcen und anwendungsneutraler Funktionalität für Zuverlässigkeit in Notfallsituationen. Da überschüssige Funktionen und Ressourcen im Normalfall nicht genutzt werden, sollte die Verfügbarkeit und Genaugkeit dieser Funktionen und Ressourcen regelmäßig über überwacht udn verifiziert werden. Das ist aus Sicherheitsgründen bekannt: Die Zuverlässigkeit einer Funktion, die nur einmal alle tausend Stunden ausgeführt wird, ist schwer zu beurteilen. Insbesondere prozedurale Überschüsse (z.B. Backup/Restore) sollten regelmäßig überprüft werden.

Überschussstrategien lassen sich in grundsätzlich in drei Kategorien einteilen, bezogen auf den Problembereich, den sie behandeln:

1. Fehler auf Systemebene und Spannungszustände

Diese Gruppe von Strategien zielt auf binäre und analoge Kontingenzen ab.

1. Erkennen und Behandeln von fehlerhaften Laufzeitdaten, Konfigurationsänderungen und Programmcode.

Diese Gruppe von Strategien zielt auf die digitale Kontingenzschicht ab.

1. Vermeidung unerwünschter Effekte aus unbestimmten Problemquellen


Belastbarer Code und Architektur

Der Begriff Resilienz im Rahmen des vernetzten Systems bezieht sich in der Regel auf die Fähigkeit, fehlerhafte oder anderweitig unerwartete Daten zu tolerieren. Bei diesen Daten kann es sich um Online-Daten handeln, die auf die Netzwerkschnittstellle des Systems treffen - sowohl deformierte als auch gut gebildete (aber vom Entwickler unerwartete), oder um korrupte Konfigurationsdateien, die beispielsweise durch versehentliche Fehlansprache des Netzwerks entstehen können.

—————————————————————————————————————————

Steckbrief


Zerbrechlichkeit beobachtet: Fehlgestaltete Daten und/oder Daten, die gut geformt, aber für die SUC unerwartet sind (z.B. leere UDP-Pakete, ICMP, Broadcast), können die Systemleistung und das Systemverhalten negativ beeinflussen. Das betrachtete System gilt auch dann als fragil, wenn seine Widerstandsfähigkeit unbekannt ist.

Strategie der Robustifizierung: Die Robustheit wird erhöht, indem die syntaktische Gültigkeit der Daten vor der Verarbeitung überprüft wird, indem Code zur Behandlung von Ausnahmen hinzugefügt wird und durch eine Systemarchitektur, die unerwarteten (wenn auch legitimen) Netzwerkverkehr toleriert.

Prinzip der Robustifizierung: Funktionsumfang der Limitübertragung (Anwendungsebene).

Ziel der Robustheit: Die Netzwerk- und Konfigurationsstabilität wird getestet und dokumentiert. Basierend auf Testergebnissen wird die Systemleistung nicht durch beschädigte oder unerwartete, nicht protokollierte Daten beeinträchtigt, die das vernetzte System und die Subsysteme betreffen.

—————————————————————————————————————————-

Resiliente Architektur bezieht sich auf eine Systemarchitektur, die nicht empfindlich auf gut geformte und legitime, sondern irrelevante - und damit unerwartete - Daten reagiert. Beispiele sind ICMP-Pakete , Broadcast-Pakete oder TCP-SYN-Pakete mit einer Datenlänge von Null. All dies sind typische Daten, die Netzwerk-Scanner übertragen können und die in modernen Netzwerken nicht als bösartig oder gefährlich gelten. System-Komponenten können Probleme haben, wenn sie von solchen Daten getroffen werden, nur aus Performance-Gründen (analoge Kontingenzschicht).
Dies gilt insbesondere für Produktarchitekturen, die die Verarbeitung von Netzwerkarchitekturen durchführen, die die Verarbeitung des Netzwerkverkehrs auf derselben CPU durchführen, die die Anwendung ausführt.



Robustifizierungsverfahren

Schritt 1. Dokumentiere, was du hast. Dokumentieren Sie für das betrachtete System die vorhandene Belastbarkeit. Definieren und verwenden Sie dazu geeignete Testwerkzeuge..

Schritt 2. Dokumentieren Sie, was Sie brauchen. Dokumentieren Sie für das betrachtete System die Art der Belastbarkeit , die tatsächlich benötigt wird. Dies kann beispielsweise Anforderungen an ein ungestörtes I/O-Verhalten beinhalten, während die Netzwerkschnittstelle des Systems durch Broadcast-Stürme und Fuzzer belastet wird.

Schritt 3. Lücken identifizieren und schließen. Wenn möglich , erhöhen Sie die Belastbarkeit des betrachteten Systems. In vielen Fällen kann dies nur durch den Lieferanten erfolgen. Wenn dies nicht möglich, kann es notwendig sein, eine stark eingeschränkte Netzwerkumgebung zu beauftragen.

Schritt 4. Dokumentänderungen. Dokumentieren Sie die neue Systemkonfiguration.

Schritt 5. Streben Sie nach Beständigkeit und Nachhaltigkeit. Stellen Sie sicher, dass jedes neue identische oder ähnliche System von Anfang an die elastische Konfiguration oder das Produkt verwendet.

Codeausführung und Konfiguration Manipulationssteuerung/-Überwachung

Die Code- und Konfigurationskontrolle ist komplementär zur Systemhärtung. Obwohl das Ziel der Code- und Konfigurationskontrolle darin besteht, einzuschränken, welche Anwendungen auf dem Zielsystem ausgeführt werden können und wer Änderungen an Konfigurationsdateien vornehmen kann, wird eine zusätzliche (überschüssige) Logik installiert, um genau das zu kontrollieren. Es wird eine Überfunktionalität eingeführt , die Code und Konfigurationsdaten auf dem Zielsystem steuert, um sicherzustellen, dass nur legitimer Code ausgeführt wird und dass die Konfiguration weder versehentlich noch böswillig geändert wird.

—————————————————————————————————————————-

Steckbrief


Zerbrechlichkeit beobachtet: Keine Barriere verhindert, dass nicht autorisierte Software auf dem betrachteten System installiert und ausgeführt wird. Konfigurationsänderungen werden nicht auf Berechtigung geprüft. Das betrachtete System gilt auch dann als fragil, wenn es nicht dokumentiert ist, in welcher Weise Software auf die Installation und Ausführung beschränkt ist.

Strategie zur Robustifizierung: Einschränkungen bei Code- und Datenänderungen auf dem System in der Konfiguration verhindern, dass sowohl böswillige als auch versehentliche Änderungen verarbeitet werden.

Prinzip der Robustifizierung: Funktionsumfang der Limitübertragung (Systemebene).

Ziel der Robustifizierung: Auf dem betreffenden System dürfen keine nicht autorisierten oder nicht validierten Softwareprogramme, Konfigurationsdateien usw. Installiert und verarbeitet werden.

—————————————————————————————————————————-

Robustifizierungsverfahren

Schritt1. Dokumentiere, was du hast. Dokumentieren Sie für das betrachtete System die bestehenden Methoden der Codeausführung und der Manipulationskontrolle.

Schritt 2. Dokumentieren Sie, was Sie brauchen. Dokumentieren Sie für das betrachtete System die Art der Codeausführung und die erforderliche Manipulationskontrolle.

Schritt 3. Identifizieren und schließen Sie die Lücken. Testen und installieren Sie zusätzliche Methoden zur Codeausführung und Konfigurationsverwaltung. Das Testen kann entfallen, wenn der Anwendungsanbieter die ausgewählte(n) Lösung(en) zertifiziert hat.

Schritt 4. Die Dokumentierung ändert sich. Dokumentieren Sie die neue Systemkonfiguration.

Schritt 5. Streben Sie nach Konsistenz und Nachhaltigkeit. Stellen Sie sicher, dass jedes identische oder ähnliche System die gewählte Methode der Code- und Konfigurationsverwaltung verwendet.

Kodierung und Verifizierung von Metainformationen für die End-to-End-Gültigkeitsprüfung

Resilience tut nichts bin Bezug auf gut geformte , legitime Daten, die aus dem Zusammenhang gerissen sein können, versehentlich an das falsche System gesendet wurden, versehentlich eine falsche Konfiguration angenommen haben oder böswillige Absichten haben. Solche Situationen können durch die Kodierung von Metainformationen leicht verhindert werden. Metainformationen können digitale Signaturen, Befehlsfolgenummern, Datenquelle- und Zielbezeichnung oder Bestätigungsmeldungen auf Anwendungsebene beinhalten.

—————————————————————————————————————————-

Steckbrief


Zerbrechlichkeit beobachtet: Aufgrund der geschichteten Architektur gängiger Netzwerkprotokolle können Metainformationen, die es dem empfangenden System oder der Anwendung ermöglichen würden, die Gültigkeit von Befehlen zu überprüfen, über verschiedene Schichten des Protokollstapels verteilt sein.

Dies kann dazu führen, das fehlerhafte Nachrichten von der Zielanwendung nicht erkannt werden können und, wenn sie verarbeitet werden, wahrscheinlich zu einem Cybertrip führen.

Strategie zur Robustifizierung: Die Robustheit wird erhöht, indem die Inhaltsvalidität von Firmware, Code, Befehlen, Parametern usw. Vor der Verarbeitung überprüft wird. Dies kann durch die Kodierung von Metainformationen erreicht werden.

Robustifizierungsprinzip: Funktionsumfang der Limitübertragung.

Ziel der Robustheit: Fehlerhafte (syntaktisch korrekte, aber falsche) Dateien und Nachrichten können durch die Überprüfung von Metainformationen erkannt und nicht verarbeit werden.

—————————————————————————————————————————-

Robustifizierungsverfahren

Schritt 1. Dokumentiere, was du hast. Dokumentieren Sie für das betrachtete System die vorhandenen Methoden zur Überprüfung von Code und Konfigurationsoptionen-Authentizität durch Metainformationen.

Schritt 2. Dokumentieren Sie, was Sie brauchen. Dokumentieren Sie für das betrachtete System die erforderlichen Methoden zur Überprüfung der Code- und Konfigurations-Authenzität durch Metainformationen.

Schritt 3. Identifizierung und schließen Sie die Lücken. Wenn möglich, integrieren Sie bessere Methoden zur Überprüfung von Code und Authentizität der Konfiguration anhand von Metainformationen, wahrscheinlich durch den Wechsel zu einem anderen Produkt oder einem anderen Anbieter.

Schritt 4. Dokumentänderungen. Dokumentieren Sie die neue Systemkonfiguration

Schritt 5. Streben Sie nach Beständigkeit und Nachhaltigkeit.


Stellen Sie sicher, dass jedes neue identische oder ähnliche System die ausgewählte Methode zur End-to-End-Validätsprüfung von Code und Befehlen verwendet.

Kontextbezogene Einschränkungen der Kontrollbehörde (Eigensicherheit)

Kontextbasierte Einschränkungen der Kontrollbefugnisse ähneln rollenbasierten Berechtigungskonzepten. Der Hauptunterschied besteht darin, dass die Einschränkungen der Autorität nicht nur auf der Identität des Akteurs basieren (wie durch Authentifizierung und Zuordnung zu einer bestimmten Rolle bestimmt), sondern sich auch auf den Systemzustand erstrecken.

—————————————————————————————————————————

Steckbrief


Zerbrechlichkeit beobachtet: Cyber-befehlen können jederzeit die gesamte eingestellte Funktion ausführen, auch wenn die Ausführung der Funktion im gegebenen Zustand keinen Sinn ergeben würde oder völlig unsicher wäre. Das betrachtete System gilt auch dann als fragil , wenn es undokumentiert ist, ob der gesamte Funktionssatz unabhängig vom Systemzustand ausgeführt werden kann.

Strategie zur Robusitifizierung: Die Verhinderung von Betriebsarten, die nur zu unerwünschten Verhalten führen können, reduziert die Wahrscheinlichkeit von unerwünschten Eingaben, die zu unerwünschten Folgen führen , unabhängig davon, wer es getan hat (d.h ohne Berücksichtigung von Authentifizierung und Autorisierung).

Prinzip der Robustifizierung: Begrenzung des Übertragungsfunktionsumfangs.

Ziel der Robustheit: Das betrachtete System beschränkt die Kontrollbefugnis technisch auf Funktionen, die für die jeweilige Betreibsart oder den jeweiligen Systemzustand sicher und legitim sind. Der Fernzugriff kann nicht zu Prozessmanipulationen führen, die den lokalen Bedienern nicht bekannt sind, oder die das System in Betracht ziehen oder den kontrollierten Prozess in einen unsicheren Zustand bringen würden.

—————————————————————————————————————————

Robustifizierungsverfahren

Schritt 1. Dokumentiere, was du hast. Dokumentieren Sie für das betrachtete System alle bestehenden kontextbezogenen Einschränkungen der Kontrollbehörde.

Schritt 2. Dokumentieren Sie, was Sie brauchen. Dokumentieren Sie für das betrachtete System alle erforderlichen kontextbezogenen Einschränkungen der Kontrollbehörde.

Schritt 3. Identifizieren und schließen Sie die Lücken. Beschränken Sie die Kontrollbefugnis auf der Grundlage des Kontextes, in dem sie erforderlich ist und nicht bereits erfolgt . In vielen Fällen kann dies nur durch den Lieferanten erfolgen.

Schritt 4. Dokumentänderungen. Dokumentierne Sie neue Systemkonfiguration.

Schritt 5. Streben Sie nach Beständigkeit und Nachhaltigkeit. Stellen Sie sicher, dass jedes neue identische oder ähnliche System die gewählte Methode zur Einschränkung der Kontrollbefugnis von Anfang an verwendet.


Sicherheitsvorkehrungen und Prozessüberwachung


Schutzvorrichtungen werden manchmal als „physikalisch-chemische Ausnahmebehandlung“ bezeichnet.
Es handelt sich um Kontrollsysteme, die sicherstellen, dass die Folgen von Störungen keine physischen Schäden verursachen oder Menschen verletzen.

Im besten Fall werden die Sicherheitsvorkehrungen nie aktiviert, was ein hervorragendes Argument für die Art der Überschussstrategien ist. Die Sicherheitsvorkehrungen sind gut verstanden, und ihre Verwendung ist in verschiedenen Konfigurationen und Anwendungen geregelt und vorgeschrieben. Sie werden heir erwähnt, um darauf hinzuweisen, dass Sicherheitssysteme ein weiterer Weg sind, die Robustheit eines Prozesses zu erhöhen.

——————————————————————————————————————————

Steckbrief


Zerbrechlichkeit beobachtet: Gefährliche Grenzwertüberschreitungen besagen, dass das Erreichen des geregelten Prozesses nur dann Manuel(wenn überhaupt) verhindert werden kann, wenn geschultes Personal die richtigen Verfahren zur richtigen Zeit durchführt. Das betrachtete System gilt auch dann als zerbrechlich, wenn nicht bekannt ist, ob es ausreichende Sicherheitsvorkehrungen gibt und wie sie funktionieren würden.

Strategie zur Robustifizierung: Die hier definierten Sicherheitsvorkehrungen sind Kontrollen, die die Auswirkungen von Out-of-Bound-Situation begrenzen, die unter normalen Bedingungen niemals auftreten sollten. In Anbetracht der Ungewissheit der Umweltbedingungen und des Schadenspotenzials bestimmter Auswirkungen außerhalb der Grenzen können Schutzvorkehrungen getroffen werden, um zu verhindern, dass solche Auswirkungen auftreten.

Prinzip der Robustifizierung: Ungültige Ausgabe sperren

Ziel der Robustheit: Möglicherweise gefährliche Prozesszustände außerhalb der Grenzwerte werden automatisch verhindert, letztendlich durch Auslösung und automatisierte kontrollierte Prozessabschaltung.

——————————————————————————————————————————

Gleichtaktausfälle 

Kurz gesagt , der Zweck eines digitalen Sicherheitssystems besteht letztendlich darin, den Prozess organisiert abzuschalten, wenn bestimmte Parameter ihre Schwellwerte überschreiten oder wenn andere gefährliche Ereignisse erkannt werden. Es muss sichergestellt werden, dass die Scherheitsvorkehrungen nicht durch einen Gleichtaktausfall des Systems beeinträchtigt werden können - Grund genug für einige, zu argumentieren, dass die jeweiligen Controller nicht das gleiche Netzwerk mit System-Komponenten teilen sollen.

Überwachung

Das Monitoring gibt es in zwei Varianten: Prozessüberwachung und Zustandsüberwachung. Während die erste Prozessvariablen und deren Schwellwerte überwacht, überwacht die zweite den Anlagenzustand und wird in der Regel als Baustein der vorbeugenden Instandhaltung implementiert.

Die Prozessüberwachung durch Anwendungen ist eine kostengünstige Alternative zu automatisierten Sicherheitsvorkehrungen. Solche Anwendungen haben die Möglichkeit, Schwellwerte für Prozessvariablen zu definieren, die bei Überschreitung Alarme auslösen. Im Gegensatz zu automatisierten Sicherheitsvorkehrungen beruht diese Architektur auf dem Vorhandensein, der Wachsamkeit und der Ausbildung von menschlichen Bedienern, die Korrekturmaßnahmen ergreifen können, wenn Alarme ausgelöst werden.

Die Zustandsüberwachung hingegen überwacht Anlagenparameter (z.B. Schmierpegel) und nicht Prozessvariablen.

Robustifizierungsverfahren

Schritt 1. Dokumentiere, was du hast. Dokumentieren Sie für das betrachtete System die bestehenden Sicherheitsvorkehrungen. 

Schritt 2. Dokumentieren Sie, was sie brauchen. Dokumentieren sie für das betrachtete System die erforderlichen Schutzvorrichtungen oder Überwachungs- und Alarmfunktionen. Eine Leitlinie könnte die Fehlerbaumanalyse sein.

Schritt 3. Identifizierung und schließen Sie die Lücken. Implementierung zusätzlicher Sicherheitsvorkehrungen oder Überwachungs-/Alarmfunktionen. In vielen Fällen kann dies nur durch den Integrator erfolgen.

Schritt 4. Dokumentänderungen. Dokumentieren Sie die neue Systemkonfiguration.

Schritt 5. Streben Sie nach Beständigkeit und Nachhaltigkeit. Stellen Sie sicher, dass neue identische oder ähnliche Systeme von Anfang an die gleichen Sicherheitsvorkehrungen treffen.

Redundanz

Praktisch jedes System, jeder Dienst oder Datensatz, der einem nicht-trivialen Zweck dient , erfordert eine Redundanzstrategie, denn null Redundanz bedeutet, dass die Funktionalität im Fehlerfall verloren geht und nicht wieder aufgenommen werden kann. Damit ist die Funktionalität dieses Systems nicht mehr verfügbar . Im wirklichen Leben sollte dies nur für nicht wesentliche Systeme gelten, die wenig Grund haben, in einer Umgebung überhaupt zu existieren. Systeme, die die erforderliche Funktionalität ohne Redunzstrategie bereitstellen, weisen auf ein schwerwiegendes Fragilitätsproblem hin.

Redundanz kann auf Datenverarbeitungs-, Datenübertragungs- und Datenspeicherressourcen angewendet werden. Im Wesentlichen beruht es auf der Duplizierung eines Systems oder von Teilen davon, um im Falle eines Ausfalls den Betrieb fortzusetzen. Es ist ein bekanntes Konzept im Engineering, das auch für Cyber gilt. 

——————————————————————————————————————————

Steckbrief


Zerbrechlichkeit beobachtet: Ein System, Dienst, Datensatz, eine Anwendung oder ein Transport hat keine Sicherung und kann im Fehlerfall nicht rechtzeitig und ausreichend ersetzt oder wiederhergestellt werden.
Das betrachtete System gilt auch dann als fragil, wenn nicht bekannt ist, wie und wann die Funktionalität nach einem Ausfall wiederhergestellt werden kann.

Strategie zur Robustifizierung: Bieten Sie eine Backup-Funktion für den Fall, dass ein System oder Teile davon aus irgendeinem Grund nicht verfügbar sind. Das Backup wird die Funktionalität des Originalsystems wiederherstellen (versuchen).

Prinzip der Robustifizierung: Angemessene Zuweisung von Ausführungsressourcen (binäre Kontingenzschicht)

Ziel der Robustheit: Es ist eine ausreichende Redundanz vorhanden, um sicherzustellen, dass das erforderliche System  jederzeit erreichbar ist.

——————————————————————————————————————————

Gleichtaktausfälle (Common Mode Failures)


Ebenso wie bei den Sicherheitsvorkehrungen sollten Redundanzstrategien die Analyse und Spezifikation von Ausfallmodi beinhalten, die vom System behandelt werden, und von solchen, die keine Gleichtaktausfälle sind. 

Robustifizierungsverfahren

Schritt 1. Dokumentiere, was du hast. Bestimmen und dokumentieren Sie für das betrachtete System und für die betrachtete Funktion oder Anlage die mittlere Erholungszeit. Verwenden Sie eine Schätzung , wenn keine Statistiken verfügbar sind. Je nach Systemtyp kann die MTTR-Bestimmung getrennt für Datenverarbeitung, Datenspeicherung und Datenübertragung durchgeführt werden.

Schritt 2. Dokumentieren Sie, was Sie brauchen. Dokumentieren Sie für das betrachtete System und für die betrachtete Funktion oder Anlage die erforderliche mittlere Erholungszeit.

Schritt 3: Identifizieren und schließen Sie die Lücken. Installieren sie bei Bedarf zusätzliche Redundanz.

Schritt 4. Dokumentänderungen. Dokumentieren Sie die neue Systemkonfiguration.

Schritt 5. Streben Sie nach Beständigkeit und Nachhaltigkeit. Stellen Sie sicher, dass jedes neue identische oder ähnliche System von Anfang an identische Redundanzstrategien verwendet.

Derating (Leistungsreserven)

Zu den bekanntesten Robustheitsstrategien gehört die Zuweisung von Reserven und Leistungssicherheitsmargen. Im Normalbetrieb und unter normalen Umständen werden die Reserven niemals verbraucht  - definitionsgemäß sind sie der Überschuss, der über das hinausgeht, was für den Normalbetrieb erforderlich ist. Sollten die Bedingungen aus irgendeinem Grund nicht ideal sein, erlauben die Reserven den weiteren Betrieb.

——————————————————————————————————————————

Steckbrief


Zerbrechlichkeit beobachtet: Das betrachtete System oder seine Subsysteme verfügen über unzureichende oder unbekannte Ressorucenreserven; jede zusätzliche Belastung kann dazu führen, dass das System ausfällt. Das betrachtete System hielt es auch für fragil, wenn es undokumentiert ist, welche Art von Ressourcenreserven es gibt.

Strategie zur Robustifizierung: Verhindern des Erreichens oder Überschreitens unzulässiger Systemgrenzen durch Bereitstellen von mehr Ressourcen, als unter normalen Bedingungen benötigt würden, oder durch Verwenden von Ressourcen unterhalb bestimmter Grenzen.

Prinzip der Robustifizierung: Angemessene Ausführung der Ressourcenallokation (analoge Kontingenzschicht).

Ziel der Robustheit: Das betrachtete System und seine Subsysteme verfügen über genügend Ressourcenreserven, um während des gesamten Lebenszyklus des Systems, wie angegeben, unter jeder projizierten zusätzlichen Last voll funktionsfähig zu sein.

——————————————————————————————————————————

Robustifizierungsverfahren

Schritt 1. Dokumentiere, was du hast. Dokumentieren Sie für das betrachtete System und das betrachtete Leistungsmerkmal das bestehende Leistungsargument. Wählen und verwenden Sie dazu geeignete Überwachungswerkzeuge. 

Schritt 2. Dokumentieren Sie, was Sie brauchen. Dokumentieren Sie für das betrachtete System und das betrachtete Leistungsmerkmal die tatsächlich benötigten Performance Margins, basierend auf Prognosen und Worst-Case-Szenarien.

Schritt 3. Identifizieren und schließen Sie die Lücken. Erhöhen Sie die Leistungsspannen des betrachteten Systems, damit sie den Anforderungen entsprechen oder die Belastung begrenzen.

Schritt 4. Dokumentänderungen. Dokumentieren Sie die neue Systemkonfiguration.

Schritt 5. Streben Sie nach Konsistenz und Nachhaltigkeit. Stellen Sie sicher, dass jedes neue identische oder ähnliche System die gewählte Methode der Zuteilung von Leistungsreserven verwendet.


Erster Teil:

https://einsiedlerkreps.blogspot.com/2023/04/resilienz-von-systemen.html

Zweiter Teil:

https://einsiedlerkreps.blogspot.com/2023/05/resilienz-von-systemen-teil-ii.html

Dritter Teil:

https://einsiedlerkreps.blogspot.com/2023/05/resilienz-von-systemen-teil-iii.html

Keine Kommentare:

Kommentar veröffentlichen