-
Die vorliegende Erfindung beansprucht die Priorität aus der provisorischen Anmeldung mit der Seriennummer 62256752, eingereicht am 18.11.2016, deren Inhalt durch Bezugnahme enthalten ist.
-
HINTERGRUND
-
Mit der Entwicklung in Bezug auf das Ausmaß und eine Funktionalität von großen vernetzten Systemen, wie beispielsweise den digitalen Netzwerksystemen (DNS) und Clouds, wird die Komplexität eines Systems signifikant größer, was es immer wichtiger macht, Systemanomalien oder -ausfälle bzw. -fehler auf eine proaktive und zuverlässige Weise zu erfassen. Dies kann das Risiko eines Zerstörens von Systemdiensten stark reduzieren, welches für gewöhnlich mit riesigem wirtschaftlichen Verlust assoziiert ist. Um den Überblick über die globalen Systembedingungen zu behalten, wird für gewöhnlich ein Überwachungssystem eingesetzt, das den Betriebszustand von wichtigen lokalen Komponenten/Modulen/Untersystemen aufzeichnet. Um eine Fehler- oder Anomalieerfassung durchzuführen, erfasst ein Verfahren Anomalien bei rauschbehafteten multivariaten zeitseriellen Daten durch Verwenden einer Regressionsmethode für zerstreute temporale Ereignisse, um die Abhängigkeitsbeziehungen unter Variablen in der zeitlichen Ablauffolge zu erfassen. Anomalien werden durch Durchführen einer Durchquerung eines zufälligen Wegs auf dem Graph, induziert durch die temporale Ereignisregression, gefunden. Ein anderes Verfahren macht den Fehlerdetektor als einen Dienst für Anwendungen verfügbar. Das System ist aus mehreren Fehlererfassungsagenten zusammengesetzt, die innerhalb der verteilten Umgebung in Betrieb sind, wobei jeder verantwortlich ist für das Überwachen einer Untergruppe von Prozessen und das Updaten der Anwendungen. Adaptive Protokolle können stattdessen zur Anomalieerfassung verwendet werden. Diese Protokolle passen sich dynamisch an ihre Umgebung an, und passen insbesondere ihr Verhalten an sich ändernde Netzwerkbedingungen an. Diese Ansätze erfordern typischerweise eine Domänenkenntnis der verteilten Systeme sowie eine gewisse Interferenz mit dem System (wie beispielsweise die Reaktion von bestimmten Testsignalen, um zu prüfen, ob das System normal läuft).
-
Eine Familie eines zugehörigen Algorithmus ist eine kausale Ableitung insbesondere basierend auf der zerstreuten Granger-Kausalitätsmethode. Der typische Ansatz bei dieser Familie eines Algorithmus besteht im Verwenden eines autoregressiven (VAR) Modells, um die Beziehung zwischen mehreren zeitlichen Serien zu berechnen. Um die Verbindungen zerstreut zu machen, wird eine L1-Norm-Regulierung hinzugefügt, so dass nur eine kleine Untergruppe von kausalen Beziehungen als signifikante identifiziert sein wird. Andere Verfahren werden verwendet, wo die Kausalstruktur rein aus statistischen Tests bestimmt wird. Diese Verfahren sind nur auf ein Identifizieren der temporalen Kausalitätsbeziehung im gesamten System fokussiert, jedoch berücksichtigen sie nicht das Problem eines weiteren Identifizierens von Anomalien im System.
-
ZUSAMMENFASSUNG
-
Ein beispielhaftes Verfahren zum Erfassen von einer oder mehreren Anomalien in einem System enthält ein Bilden eines temporalen Kausalitätsgraphen, der eine Funktionsbeziehung unter lokalen Komponenten in einer normalen Periode beschreibt; ein Anwenden des Kausalitätsgraphen als eine Ausbreitungsvorlage, um einen Systemzustand vorherzusagen, durch iteratives Anwenden von aktuellen Systemereignissignaturen; und Erfassen der einen oder der mehreren Anomalien des Systems durch Untersuchen bezogener Muster auf dem Vorlagen-Kausalitätsgraphen, der normale Systemverfahrensweisen spezifiziert. Das System kann Ereignismuster auf dem Kausalitätsgraphen ausrichten, um einen Anomalitätswert zu bestimmen.
-
Bei Implementierungen können Sensoren als Teil eines Internets von Dingen (loT), eines digitalen Netzwerksystems oder einer Cloud verwendet werden und kann das System Anomalien aus Sensordaten erfassen. Das System kann potentielle Anomalien des Systems durch Untersuchen der bezogenen Muster auf einen Vorlagen-Kausalitätsgraphen erfassen, der normale Systemverhaltensweisen spezifiziert. Das System kann einen Anomaliewert durch Verwenden dieses vorhergesagten Systemereignisses bestimmen. Das System kann Signaturen auf dem temporalen Kausalitätsgraphen verarbeiten und untersuchen, wie unterschiedlich Muster in dieser Signatur vom temporalen Kausalitätsgraphen sind.
-
Vorteile des Systems können eines oder mehreres vom Folgenden enthalten. Das System stellt eine Anomalie- und Fehlererfassung in großen Netzwerksystemen, wie beispielsweise digitalen Netzwerksystemen oder Clouds, bereit. Das System kann Anomalien, verdächtige Verhaltensweisen oder schwerwiegende Fehler in großen Netzwerksystemen erfassen. Dies lässt zu, dass Systembetreiber das System effektiver aufrechterhalten, so dass dann, wenn eine potentielle Störung eines normalen Systembetriebszustands erfolgen würde, ein proaktives Debuggen oder eine Einstellung betrieben werden kann. Dies kann den wirtschaftlichen Verlust im Vergleich mit einem unerwarteten Herunterfahren des Systems oder und einer Unterbrechung eines Dienstes stark reduzieren, was in großen verteilten Computernetzwerksystemen, wie beispielsweise DNS oder Cloud-Systemen oder IoT-Systemen, wertvoll sein wird.
-
Figurenliste
-
- 1 zeigt eine Architektur eines beispielhaften Verfahrens, um Anomalien, verdächtige Verhaltensweisen oder schwerwiegende Fehler in großen Netzwerksystemen zu erfassen.
- 2 zeigt ein beispielhaftes Verfahren zum Erfassen von einer oder mehreren Anomalien in einem System.
- 3 zeigt ein Beispiel der eingegebenen mehreren Ereignissequenzen.
- 4 stellt einen Ansatz dar, um die Ereignissequenz in Regressionsdaten zu transformieren.
- 5 zeigt einen beispielhaften gelenkten Graphen, der die temporalen Kausalitätsbeziehungen unter unterschiedlichen Ereignissen zusammenfasst.
- 6 zeigt einen beispielhaften gelenkten Graphen, der die temporalen Kausalitätsbeziehungen unter unterschiedlichen Ereignissen zusammenfasst.
- 7 zeigt ein beispielhaftes Computersystem zum Erfassen von Anomalien.
-
BESCHREIBUNG
-
1 zeigt unsere Architektur eines beispielhaften Verfahrens, um Anomalien, verdächtige Verhaltensweisen oder schwerwiegende Fehler in großen Netzwerksystemen zu erfassen. Es gibt drei Hauptkomponenten: (1) einen Kausalitätsableitungsschritt 100, der die nicht negative LASSO-Regressionstechnik anwendet, um den temporalen Kausalitätsgraphen zu bilden, der die Ursachen- und Auswirkungs-Ereignismuster in der normalen Betriebsperiode zusammenfasst; (2) einen Ereignisausbreitungsschritt 200, der die erwarteten Ereignissignaturen nach bestimmten Schritten von Zeitintervallen ab dem aktuellen Zeitstempel vorhersagt; (3) einen Anomaliewert-Quantisierungsschritt 300, der einen Anomaliewert für jeden Zeitpunkt, der durch einen Ereignissignaturvektor dargestellt ist, durch Vergleichen dieses Vektors auf dem temporalen Kausalitätsgraphen berechnet, um das Ausmaß einer Anomalie basierend auf historischen Beobachtungen zu messen.
-
2 zeigt ein beispielhaftes Verfahren zum Erfassen von einer oder mehreren Anomalien in einem System durch Bilden eines temporalen Kausalitätsgraphen, der eine Funktionsbeziehung unter lokalen Komponenten in einer normalen Periode beschreibt; Anwenden des Kausalitätsgraphen als eine Ausbreitungsvorlage, um einen Systemzustand vorherzusagen, durch iteratives Anwenden von aktuellen Systemereignissignaturen; und Erfassen der einen oder der mehreren Anomalien des Systems durch Untersuchen in Bezug auf Muster auf dem Vorlagen-Kausalitätsgraphen, der normale Systemverhaltensweisen spezifiziert. Das System kann Ereignismuster auf dem Kausalitätsgraphen ausrichten, um einen Anomaliewert zu bestimmen. Das System kann auch eine Ereignisausbreitung auf dem temporalen Kausalitätsgraphen durchführen, um einen zukünftigen Zustand vorherzusagen.
-
Unsere Prozeduren zum Bilden eines Kausalitätsgraphen und drauffolgenden Quantifizieren von Anomalien durch Vergleichen von Mustern auf dem Graphen unterscheiden sich von herkömmlichen Verfahren, die typischerweise eine Anomalieerfassung in einem euklidischen Vektorraum berücksichtigen. Gegensätzlich dazu verwendet das vorliegende System einen Graphen, um normale Systemverhaltensweisen zu beschreiben und um dann eine Anomalie basierend auf diesem kausalen Graphen als eine Vorlage zu erfassen. Insbesondere wird der Graph unter Verwendung von nicht negativem LASSO (Operator mit kleinster absoluter Schrumpfung und Auswahl = least absolute shrinkage and selection operator); während herkömmliche Verfahren zum Schätzen der Kausalitätsbeziehung typischerweise auf dem Standard-LASSO-Verfahren basiert, das zu negativen Koeffizienten führen könnte, die nicht einfach zu interpretieren sind. Während herkömmliche Verfahren typischerweise kontinuierliche zeitliche Ablauffolgen in einer kausalen Ableitung berücksichtigen, analysiert das vorliegende System diskrete Ereignissequenzen.
-
Beim Statistik- und Maschinenlernen ist LASSO ein Regressionsanalyseverfahren, das sowohl eine variable Auswahl als auch eine Regelung durchführt, um die Vorhersagegenauigkeit und Interpretierbarkeit des statistischen Modells zu verbessern, welches es erzeugt. LASSO ist nahe bezogen auf ein grundsätzliches Streben nach Rauschunterdrückung. LASSO wurde ursprünglich für Modelle kleinsten Fehlerquadrats formuliert und dieser einfache Fall offenbart eine wesentliche Menge über das Verhalten des Schätzers, einschließlich seiner Beziehung zur Ridge-Regression und einer Auswahl einer besten Untergruppe und der Verbindungen zwischen LASSO-Koeffizientenschätzen und einer sogenannten weichen Schwellenbildung. Er offenbart auch, dass (wie bei einer standardmäßigen linearen Regression) die Koeffizientenschätzungen nicht eindeutig sein müssen, wenn Kovariate kolinear sind. Obwohl sie ursprünglich für kleinste Quadrate definiert ist, kann eine LASSO-Regularisierung bei einer weiten Vielfalt von statistischen Modellen angewendet werden, einschließlich verallgemeinerter linearer Modelle, verallgemeinerter Schätzgleichungen, proportionaler Risikomodelle, und M-Schätzern. Die Fähigkeit von LASSO, eine Untergruppenauswahl durchzuführen, beruht auf der Form der Beschränkung und hat eine Vielfalt von Interpretationen einschließlich in Bezug auf Geometrie, Bayes-Statistik und konvexe Analyse.
-
Die Kombination einer kausalen Ableitung und einer Anomalieerfassung wird verwendet, um Systemfehler zu identifizieren; und die verbesserte kausale Ableitung kann diskrete Ereignissequenzen mit einstellbaren Zeitverzögerungen handhaben.
-
3 zeigt ein Beispiel unserer eingegebenen mehrfachen Ereignissequenzen. Und zwar mit einer Anzahl von D Sequenzen, wobei jede das Auftreten eines bestimmten Typs von Anomalieereignis über der Zeit beschreibt.
3 stellt ein solches Datenformat dar. Bei einem Beispiel ist jede Sequenz (oder Typ eines Ereignisses) mit dem Burst bzw. Bündel von Anomalieprotokollen in einem Server in einem gemeinsamen Netzwerksystem assoziiert. Die i-te Sequenz wird dargestellt sein durch
wobei t(i)_j der Zeitstempel des j-ten Auftretens eines Ereignisses ist, d.h. e(i)J ist die entsprechende Stärke des Auftretens und ni ist die Anzahl von Auftritten, die für das i-te Ereignis aufgezeichnet sind. Je höher e(i)J ist, umso wahrscheinlicher ist es, dass der i-te Server irgendeinem Anomaliezustand ausgesetzt ist, und zwar basierend auf der Überwachungsprotokollanalyse.
-
Im Folgenden werden wir unser System über eine Anomalieerfassung und ein frühes Warnen in großen vernetzten Systemen detailliert darlegen. Unser System stellt zwei Operationen zur Verfügung. Zuerst werden wir einen temporalen Kausalitätsgraphen bilden, der die signifikante Funktionsbeziehung unter zahlreichen lokalen Komponenten in einer normalen Periode beschreibt. Als zweites werden wir diesen Kausalitätsgraphen als eine Ausbreitungsvorlage, um den Systemzustand vorherzusagen, durch iteratives Anwenden der aktuellen Systemereignissignaturen auf ihn verwenden. Schließlich werden wir einen Anomaliewert durch Verwenden dieser vorhergesagten Systemereignissignatur berechnen.
-
Aufdecken von kausalen Beziehungen über nicht negative zerstreute Regression
-
Wir diskutieren, wie die mehreren Ereignissequenzen in die Eingabe einer Reihe von Regressionsproblemen zu transformieren ist, um die temporale Kausalitätsbeziehung unter den unterschiedlichen Ereignissen zu identifizieren. Die Idee ist, das Auftreten von dem einen Ereignis durch Verwenden von anderen Ereignissen, die vor ihm passieren, vorherzusagen (oder zu rekonstruieren). Präziser betrachtet man ein Vorhersagen des Auftretens des i-ten Ereignisses unter Verwendung von allen anderen j Ereignissen, wobei 1<j<D; j nicht gleich i. Dann waren wir dazu fähig, eine Anzahl von ni Paaren (X(i)_j, Y(i)J) zu erzeugen, wobei X(i)_j ein D-1-dimensionaler Vektor ist, Y(i)_j ein Skalar ist.
-
4 stellt einen Ansatz dar, um die Ereignissequenz in Regressionsdaten zu transformieren. Um die einigen Zeitstempel für jeden Ereigniskanal miteinander zu kombinieren, verwenden wir ein zeitbasiertes Neugewichtungsschema, um einen gewichteten Durchschnitt der Ereigniszahlen in jedem Kanal zu berechnen. Dann können wir das folgende Regressionsproblem definieren, um die Beziehung zwischen Folgendem aufzudecken:
-
Durch Zurückentwickeln jeder Ereignissequenz mit allen Restsequenzen und Wiederholen von diesem für jede Sequenz kann man D Modellkoeffizienten erhalten, wobei jeder D-1 Regressionskoeffizienten enthält. Da diese Koeffizienten alle nicht negativ sind, können wir diese Koeffizienten in einen Graphen transformieren. Spezifisch ist eine Matrix W eine D-mal-D-Matrix.
-
Ereignisausbreitung auf dem kausalen Graphen
-
Der temporale Kausalitätsgraph W fasst die Beziehung unter allen D Ereignissen zusammen. Die Randgewichtungen in diesem Graph beschreiben genau die Umsetzung der Systemereignissignatur vom Zeitstempel t-Δt zum Zeitstempel t. Daher können wir unter gegebener Systemereignissignatur bei irgendeiner zukünftigen Zeit t die Systemsignatur beim nächsten Zeitstempel vorhersagen als:
-
Gleichermaßen kann man dann, wenn man mehrere Schritte im Voraus vorhersagen möchte, die obige Gleichung iterativ anwenden. In einem Fall, in welchem man unendliche Schritte ausbreiten möchte, wird die konvergierte Signatur Folgendes sein:
-
Anomalieerfassung
-
Der temporale kausale Graph kann verwendet werden, um den Zustand des Systems zu identifizieren, welches gewöhnlich aus mehreren Komponenten zusammengesetzt ist, deren Zwischenbeziehung wichtigen Aufschluss über das Systemverhalten geben kann. Es soll angenommen werden, dass wir die historischen Ereignissequenzen in der normalen Periode verwendet haben, um den Kausalitätsgraphen W zu bilden. In der Echtzeit-Testphase soll angenommen sein, dass wir die Ereignissignatur v(t) haben, die ein D-1-dimensionaler Vektor für irgendeine gegebene Zeit t ist. Dann können wir den Anomaliewert für die Ereignissignatur vt durch Untersuchen berechnen, ob die Muster eines gemeinsamen Auftritts in v(t) in W gefunden werden können. Wenn alle Muster bei einem gemeinsamen Auftritt in W gefunden werden können, dann wird die Ereignissignatur v(t) als normal angesehen werden; gegensätzlich dazu, nämlich dann, wenn die meisten der Muster eines gemeinsamen Auftritts in v(t) in W nicht vorhanden sind, wird angenommen, dass v(t) anomale Muster enthält. Im Folgenden schlagen wir zwei Arten vor, um die Anomaliewerte zu berechnen.
-
5 zeigt einen beispielhaften gelenkten Graphen, der die temporalen Kausalitätsbeziehungen unter unterschiedlichen Ereignissen zusammenfasst. Jeder Knoten ist ein Ereignis und dann, wenn Wij > 0, existiert ein Rand zwischen dem i- und j-ten Knoten mit einer Gewichtung wij.
-
Anomaliewert durch nicht gesehene Muster eines gemeinsamen Auftritts Spezifischer können wir den Anomaliewert für v(t) berechnen als:
-
-
Hier ist g() als eine abklingende Funktion definiert, wie beispielsweise die Gaußsche Kernelfunktion oder eine Stufenfunktion. Intuitiv misst der Wert das Verhältnis zwischen den nicht gesehenen Mustern eines gemeinsamen Auftritts in v(t) und denjenigen, die mit den Mustern im Graph W konsistent sind. Je höher der Wert ist, umso anomaler ist v(t).
-
Anomaliewert durch Pfadabstände auf dem Graphen
-
Das zweite Verfahren besteht im Berechnen der paarweisen Abstände der Nichtnullereignisse in v(t) auf dem gelenkten Graphen, der durch W definiert ist. Wenn ein Paar von Ereignissen (d.h. ein Muster eines gemeinsamen Auftritts) weit weg von jedem anderen auf dem Graphen ist (in Bezug auf den kürzesten Pfadabstand), dann wird dieses Muster stark anomal sein und sollte zum Ausmaß an Anomalie beitragen. Spezifischer kann man Folgendes definieren:
-
Schwelle für Alarme
-
Um eine Schwelle der Anomaliewerte so zu definieren, dass ein Alarm ausgelöst werden kann, kann man die Verteilung der historischen Signaturereignisvektor v(t)'s für t = 1; 2; ... T untersuchen. Durch Annehmen, dass der Anomaliewert einer Gauß-Verteilung folgt, kann man die Schwelle der Werte auf einfache Weise entsprechend einem Quantil von 5 % berechnen.
-
6 stellt einen beispielhaften gelenkten bzw. gerichteten Graphen dar, der die temporalen Kausalitätsbeziehungen unter unterschiedlichen Ereignissen zusammenfasst. Jeder Knoten ist ein Ereignis, und wenn Wij > 0, dann existiert ein Rand zwischen dem i- und j-ten Knoten mit einer Gewichtung Wij.
-
Nimmt man Bezug auf die Zeichnungen, in welchen gleiche Bezugszeichen dieselben oder ähnliche Elemente darstellen, und anfänglich auf 7, ist ein Blockdiagramm, das ein beispielhaftes Verarbeitungssystem 100 beschreibt, auf welches die vorliegenden Prinzipien angewendet werden können, gemäß einer Ausführungsform der vorliegenden Prinzipien gezeigt. Das Verarbeitungssystem 100 enthält wenigstens einen Prozessor (CPU) 104, der operativ mit anderen Komponenten über einen System 102 gekoppelt ist. Ein Cache 106, ein Nurlesespeicher (ROM) 108, ein Direktzugriffsspeicher (RAM) 110, ein Eingabe/Ausgabe-(I/O-)Adapter 120, ein Klangadapter 130, ein Netzwerkadapter 140, ein Anwenderschnittstellenadapter 150 und ein Anzeigeadapter 160 sind operativ mit dem Systembus 102 gekoppelt.
-
Eine erste Speichervorrichtung 122 und eine zweite Speichervorrichtung 124 sind operativ mit einem Systembus 102 durch den I/O-Adapter 120 gekoppelt. Die Speichervorrichtungen 122 und 124 können irgendwelche einer Plattenspeichervorrichtung (z.B. einer magnetischen oder optischen Plattenspeichervorrichtung), einer Festkörper-Magnetvorrichtung und so weiter sein. Die Speichervorrichtungen 122 und 124 können derselbe Typ einer Speichervorrichtung sein oder unterschiedliche Typen von Speichervorrichtungen.
-
Ein Lautsprecher 132 ist operativ mit dem Systembus 102 durch den Klangadapter 130 gekoppelt. Ein Transceiver 142 ist operativ mit dem Systembus 102 durch einen Netzwerkadapter 140 gekoppelt. Eine Anzeigevorrichtung 162 ist operativ mit dem Systembus 102 durch einen Anzeigeadapter 160 gekoppelt. Eine erste Anwendereingabevorrichtung 152, eine zweite Anwendereingabevorrichtung 154 und eine dritte Anwendereingabevorrichtung 156 sind operativ mit dem Systembus 102 durch einen Anwenderschnittstellenadapter 150 gekoppelt. Die Anwendereingabevorrichtungen 152, 154 und 156 können irgendetwas von einer Tastatur, einer Maus, einem Keypad bzw. einer kleinen Tastatur, einer Bilderfassungsvorrichtung, einer Bewegungserfassungsvorrichtung, einem Mikrophon, einer Vorrichtung, die die Funktionalität von wenigstens zwei der vorangehenden Vorrichtungen enthält, und so weiter sein. Natürlich können andere Typen von Eingabevorrichtungen auch verwendet werden, während der Sinngehalt der vorliegenden Prinzipien beibehalten wird. Die Anwendereingabevorrichtungen 152, 154 und 156 können derselbe Typ einer Anwendereingabevorrichtung sein oder unterschiedliche Typen von Anwendereingabevorrichtungen. Die Anwendereingabevorrichtungen 152, 154 und 156 werden verwendet, um Information zu und von dem System 100 einzugeben und auszugeben.
-
Natürlich kann das Verarbeitungssystem 100 auch andere Elemente (nicht gezeigt) enthalten, wie es ohne weiteres von einem Fachmann auf dem Gebiet in Erwägung gezogen wird, so wie bestimmte Elemente weglassen. Beispielsweise können verschiedene andere Eingabevorrichtungen und/oder Ausgabevorrichtungen im Verarbeitungssystem 100 enthalten sein, und zwar in Abhängigkeit von der bestimmten Implementierung desselben, wie es ohne weiteres durch einen Fachmann auf dem Gebiet verstanden wird. Beispielsweise können verschiedene Typen von drahtlosen und/oder verdrahteten Eingabe- und/oder Ausgabevorrichtungen verwendet werden. Darüber hinaus können zusätzliche Prozessoren, Steuerungen, Speicher und so weiter in verschiedenen Konfigurationen auch verwendet werden, wie es ohne weiteres durch einen Fachmann auf dem Gebiet erkannt wird. Diese und andere Variationen des Verarbeitungssystems 100 werden angesichts der Lehren der hierin bereitgestellten vorliegenden Prinzipien durch einen Fachmann auf dem Gebiet ohne weiteres in Erwägung gezogen.
-
Es sollte verstanden werden, dass hierin beschriebene Ausführungsformen gänzlich Hardware sein können, oder sowohl Hardware- als auch Softwareelemente enthalten können, die Firmware, residente Software, einen Mikrocode, etc. enthalten, aber nicht darauf beschränkt sind.
-
Ausführungsformen können ein Computerprogrammprodukt enthalten, auf das von einem computernutzbaren oder computerlesbaren Medium zugreifbar ist, das einen Programmcode zur Verwendung durch einen oder in Verbindung mit einem oder irgendeinem Anweisungsausführungssystem bereitstellt. Ein computernutzbares oder computerlesbares Medium kann irgendeine Vorrichtung enthalten, die das Programm zur Verwendung durch das oder in Verbindung mit dem Anweisungsausführungssystem, der Vorrichtung oder dem Gerät speichert, kommuniziert, ausbreitet oder transportiert. Das Medium kann magnetisch, optisch, elektronisch, elektromagnetisch, Infrarot oder ein Halbleitersystem (oder eine Vorrichtung oder ein Gerät) oder ein Ausbreitungsmedium sein. Das Medium kann ein computerlesbares Speichermedium enthalten, wie beispielsweise einen Halbleiter oder einen Festkörperspeicher, ein Magnetband, eine entfernbare Computerdiskette, einen Direktzugriffsspeicher (RAM), einen Nurlesespeicher (ROM), eine feste Magnetplatte und eine optische Platte, etc.
-
Ein Datenverarbeitungssystem, das zum Speichern und/oder Ausführen eines Programmcodes geeignet ist, kann wenigstens einen Prozessor enthalten, wie z.B. einen Hardware-Prozessor, der direkt oder indirekt mit Speicherelementen durch einen Systembus gekoppelt ist. Die Speicherelemente können einen lokalen Speicher enthalten, der während einer aktuellen Ausführung des Programmcodes verwendet wird, einen Massenspeicher und Cache-Speicher, die eine temporäre Speicherung von wenigstens etwas von einem Programmcode bereitstellen, um die Anzahl von Malen zu reduzieren, für welche ein Code aus einem Massenspeicher während einer Ausführung ausgelesen wird. Eingabe/Ausgabe- oder I/O-Vorrichtungen (einschließlich, aber nicht darauf beschränkt, Tastaturen, Anzeigen, Zeigevorrichtungen, etc.) können mit dem System entweder direkt oder über dazwischenliegende I/O-Steuerungen gekoppelt sein.
-
Das System der 7 kann verbunden sein mit dem Internet, einem globalen System von miteinander verbundenen Computern und Computernetzwerken, die eine standardmäßige Internetprotokollfolge verwenden (z.B. das Übertragungssteuerungsprotokoll (TCP) und das Internetprotokoll (IP)), um miteinander zu kommunizieren. Das Internet der Dinge (loT) lässt zu, dass Objekte, nicht nur Computer und Computernetzwerke, lesbar, erkennbar, lokalisierbar, adressierbar und steuerbar sind über ein IoT-Kommunikationsnetzwerk (z.B. ein Ad-Hoc-System oder das Internet). Das System kann bei verschiedenen Anwendungen für das IoT verwendet werden. Beispielsweise können auf dem Gebiet von smarten Stromnetzen und Energiemanagement, Energieversorgungsfirmen eine Lieferung von Energie zu Wohnsitzen und Geschäften optimieren, während Kunden eine Energienutzung besser managen können. Auf dem Gebiet einer Wohnsitz- und Gebäudeautomatisierung können Smart-Homes bzw. -Wohnsitze und -Gebäude eine zentralisierte Steuerung über virtuell irgendeine Vorrichtung oder ein System zu Hause oder im Büro haben, und zwar von Haushaltsgeräten bis zu Sicherheitssystemen für Plug-In-Elektrofahrzeuge (PEV). Auf dem Gebiet einer Teileverfolgung können Unternehmen, Krankenhäuser, Fabriken und andere große Organisationen die Stellen von hochwertiger Ausrüstung, Patienten, Fahrzeugen und so weiter genau verfolgen. Auf dem Gebiet der Gesundheit und des Wohlfühlens können Ärzte die Gesundheit von Patienten von der Ferne aus überwachen, während die Leute den Fortschritt von Fitnessroutinen verfolgen können. Für diese IoT- oder Industriesysteme enthält die Erfassung von einer oder mehreren Anomalien im IoT-System ein Bilden eines temporalen Kausalitätsgraphen, der eine Funktionsbeziehung unter lokalen Komponenten in einer normalen Periode beschreibt; ein Anwenden des Kausalitätsgraphen als eine Ausbreitungsvorlage, um einen Systemzustand vorherzusagen, durch iteratives Anwenden von aktuellen Systemereignissignaturen; und ein Erfassen von der einen oder den mehreren Anomalien des Systems durch Untersuchen bezogener Muster auf dem Vorlagen-Kausalitätsgraphen, der normale Systemverhaltensweisen spezifiziert. Das System kann Ereignismuster auf dem Kausalitätsgraphen ausrichten, um einen Anomaliewert zu bestimmen.
-
Das Vorangehende ist in jeder Hinsicht als illustrativ und beispielhaft zu verstehen, aber nicht als beschränkend, und der Schutzumfang der hierin offenbarten Erfindung ist nicht aus der detaillierten Beschreibung zu bestimmen, sondern vielmehr aus den Ansprüchen, wie sie gemäß der vollen Breite interpretiert werden, die durch die Patentgesetze zugelassen ist. Es ist zu verstehen, dass die hierin gezeigten und beschriebenen Ausführungsformen nur illustrativ für die Prinzipien der vorliegenden Erfindung sind und dass Fachleute auf dem Gebiet verschiedene Modifikationen implementieren können, ohne vom Schutzumfang und Sinngehalt der Erfindung abzuweichen. Fachleute auf dem Gebiet könnten verschiedene andere Merkmalskombinationen implementieren, ohne vom Schutzumfang und Sinngehalt der Erfindung abzuweichen.