Kapitel 4 Epidemische Informationsausbreitung 4.1 Computerviren Unique among all forms of artificial life, computer viruses have escaped their playpens and established themselves pervasively throughout the world’s computing environment. Jeffrey Kephart [Kep94] Die Debatte, ob Computerviren tatsächlich als künstliche Lebensformen bezeichnet werden können, ist noch nicht entschieden. Jedoch nimmt der Einfluß dieser auf das tägliche Leben mehr und mehr zu, wie Abbildung 4.1 zeigt. Unter einem Computervirus versteht man folgendes: Ein Computervirus ist ein Programm, das sich von einem Computer auf andere Computer verbreitet, indem es sich selbst ohne Wissen des Benutzers kopiert. [Coh87] Nach dieser Definition sind die folgende epidemischen Phänomene keine Computerviren, obgleich sie mitunter damit assoziirt werden. Hoax Hierunter versteht man eine Warnung vor einem Virus, die sich epidemisch per EMail ausbreitet. Tatsächlich ist der überwiegende Anteil dieser Warnungen ein schlechter Scherz (daher der Namen). Ein Beispiel für eine typische falsche Warnung ist, dass ein bestimmtes Programm mit einem kryptischen Namen zu löschen ist, da es sich angeblich um einen Virus handelt. Tatsächlich ist es aber nur eine selten benutzte Systemdatei. Kettenbrief Bei einem Kettenbrief wird der Empfänger aufgefordert, diesen Brief (oder diese EMail) selber an möglichst viele Empfänger weiterzuversenden. Das Prinzip ist so einfach, dass es kaum zu glauben ist, warum so viele Leute immer daran teilnehmen und diese Briefe weiterversenden. Urban Legend, Gerüchte, Meme Grundlage der Memetik, ist die Annahme, dass Gedanken oder Ideen sich wie Gene verhalten. Sie wandern von Mensch zu Mensch, überdauern Jahre in Büchern, nur um dann mutiert, oder kombiniert mit anderen “Memen” sich wieder auszubreiten. Urband Legends sind moderne Märchen, die unabhängig von ihren Wahrheitsgehalt weiter erzählt werden. Sie können epidemische Ausmaße erhalten, sind aber wie Hoaxes letztlich auch nichts anderes als Gerüchte. 71 KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 72 Abbildung 4.1: Monatliche Virusinfektionen pro 1000 Computer [BT01] Joke-Virus Dies ist ein Programm, dass sich verhält wie ein Virus und damit auch Computerfehlverhalten an den Tag legen kann. Im Gegensatz zu Viren pflanzt sich ein Joke-Virus aber nicht ohne bewußte menschliche Unterstützung fort. Es gibt einen ganzen Zoo an verschiedenen Computerviren, die sich in Verbreitung, Übertragungsart und Auswirkung erheblich unterscheiden. Computerviren werden nach ihrem Übertragungsverhalten charakterisiert. Man unterscheidet zwei Hauptzweige, Würmer und trojanische Pferde und verschiedene Untergruppen [Old01]. 1. Wurm Würmer sind Viren, die Wirtsprogramme im weitesten Sinne zur Fortpflanzung benötigen. Wirtsprogramme können Betriebssysteme, Textverarbeitung, Tabellenkalkulationsprogramme, Mail-Server, Web-Browser u.v.a beinhalten. Die hier am häufigsten vorkommende Untergruppen sind: (a) File Infector Diese Viren hängen sich an Programmdateien und werden dadurch neuer Bestandteil eines auf dem Computer existierenden Programms. Wird das Programm gestartet, kopiert sich das Virus in andere Programme oder wird als Hintergrundprogramm gestartet. (b) Boot-Virus Dies ist eine sehr alte Virusart. Sie pflanzt sich fort, indem sie den Bootsektor eines PCs modifizieren, der die Information zum Starten des Betriebssystem beinhaltet. Dieser Virus wird in der Regel durch Disketten oder CDs übertragen, von denen unabsichtlich gebootet wird. Danach bleiben diese Viren als Hintergrundprogramm aktiv und verändern die Boot-Sektoren von anderen Disketten. (c) Macro-Virus Macro-Viren benutzen die Makrobefehle von Textbearbeitungs- und Tabellenkalkulationsprogrammen. Sie sind in (scheinbar harmlosen) Textdokumenten eingebettet und pflanzen sich dann fort, wenn die Makrobefehle durch Öffnen des Dokuments ausgeführt werden. 4.1. COMPUTERVIREN 73 Abbildung 4.2: Häufigkeit der Virustypen bezogen auf 1000 PCs [BT01] Abbildung 4.3: Grafik zur Häufigkeit der Virustypen bezogen auf 1000 PCs [BT01] 2. Trojanisches Pferd Ein trojanische Pferd ist ein legitimies Programm mit nicht spezifizierter (Viren-) Funktionalität. Diese trojanischen Pferde können Wurm-Viren auf dem Computer freisetzen, aber auch andere Programme z.B. mit File-Infector-Viren infizieren. In Abbildung 4.2 und 4.3 ist die Häufigkeit des Vorkommens der verschienden Virustypen in verschiedenen Monaten des Jahres 2001 auf Grund einer statistischen Erhebung aufgeführt. In Grafik 4.3 ist als zusätzliche Spalte der Virenbefall mit Selbst-Mailing-Auswirkung hinzugefügt. Dadurch werden einige Macro-, File- und Bootvirenvorfälle mehrfach aufgeführt. Die Auswirkungen von Viren auf den Wirtsrechner variieren stark und spiegeln die (mitunter extrem bösartige) Kreativität der Viren-Programmierer wider. Hier sind einige Beispiele dargestellt. Nachrichten Der Virus gibt Texte aus, z.B. WM97/Jerk: “I think *** is a big stupid jerk” Pranks KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 74 Abbildung 4.4: Häufigkeit der Auswirkungen von Viren im Jahr 2001 [BT01] z.B. Yankee spielt Yankee Doodle Dandy um 17 Uhr Zugriffsverweigerung z.B.WM97/NightShade errichtet Passwortschutz für Dokument am Freitag, den 13. Datendiebstahl z.B. Troy/LoveLet emailt Maschinen und Benutzerinformation auf die Philippinen Datenbeschädigung z.B. XM/Compatable ändert Daten in Excel-Tabellen Datenlöschung z.B. Michelangelo überschreibt Teile der Festplatte am 6. März Hardwaresteuerung z.B. Chernobyl versucht BIOS am 26. April zu überschreiben Abbildung 4.4 zeigt laut einer Umfrage aus dem Jahr 2001 vom ICSA Lab die Häufigkeit verschiedener Konsequenzen eines Virenbefalls. In Abbildung 4.5 findet sich die entsprechende Grafik. Computerviren können prinzipiell über jede Schnittstelle dem Computer befallen 1 . Folgende Übertragungsmedien spielen heutzutage laut Abbildung 4.6 eine besondere Rolle. Internet – EMail Momentan stellen durch EMail übertragenen Viren die Hauptquelle von Computerinfektionen dar. In der Regel finden sich die Viren als Programme (zumeist getarnt als Textdokument oder Grafik) im Attachment der EMail und werden unabsichtlich durch den Benutzter gestartet. – Download von Programmen Offensichtlich besteht durch Laden eines Programms von einer FTP-Site eine erhöhte Übertragungsgefahr, wenn die nötige Vorsicht nicht angewendet wird. 1 außer vieleicht Tastatur und Maus 4.1. COMPUTERVIREN Abbildung 4.5: Grafik der Auswirkungen von Viren im Jahr 2001 [BT01] Abbildung 4.6: Häufigkeit der Übertragungsmedien [BT01] 75 KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 76 – Infizierte Dokumente Durch Makroviren besteht schon die Gefahr, dass das Betrachten einer Webseite mit einem Web-Browser oder das öffnen eines Textdokuments bei entsprechender Einstellung der Software zur Übertragung eines Virus führt. Disketten/CD Durch Disketten oder CDs werden zumeist Bootviren übertragen. Durch verändertes Benutzerverhalten werden Daten in den letzten Jahren häufiger per EMail übertragen. Dadurch werden Bootviren zurückgedrängt. Programme Durch Programminstallation können durch ein trojanische Pferde aktiviert oder File-Infektorviren eingeschleust werden. Mitunter kommen solche Fälle auch bei offiziellen Softwaredistributionen vor. Dokumente Die Gefahr von Makroviren in Dokumenten darf nicht unterschätzt werden. Als Schutz reicht es in der Regel, die Makroausführung des Editor abzuschalten. Trotzdem sind diese Makroviren sehr verbreitet. In Abbildung 4.7 wird die Verteilung der Infektionsquellen grafisch dargestellt. In Abbildung 4.8 werden die drei bedeutendsten Infektionsquellen Diskette, EMail und Internet gesondert dargestellt. 4.2 Mathematische Modellierung von Epidemien Den Experten und Unternehmen, die sich der Virenbekämpfung verschrieben haben, sind Hunderte von verschiedenen Viren bekannt. Trotzdem erreichen nur wenige davon einen nennenswerten Verbreitungsgrad. Manchmal ist es nicht klar, warum es einigen Viren nicht gelingt einen gewissen Verbreitungsgrad zu erreichen. In anderen Fällen gelingt es Viren die Rechner eines gesamten Teilnetzes zu infizieren. In diesem Abschnitt werden wir verschiedene mathematische Modelle untersuchen, die sich mit folgenden Fragen beschäftigen: Wie schnell breitet sich ein Virus in einem idealisierten Umfeld aus? Welchen Anteil der Population infiziert der Virus? Hierbei gibt es in der Modellierung eine Reihe von Problemen. Das Kommunikationsverhalten, das die Ausbreitung des Virus bestimmt is im Allgemeinen unbekannt und kann durch den Virus auch noch bösartig beeinflußt werden. Daneben kann sich durch verändertes Benutzerverhalten, wie größere Sorgfalt oder Einsatz von Anti-Virus-Software, die Übertragungswahrscheinlichkeit eines Virus verändern. Auch der durch Aktivierung selbst verursachte Virustod, z.B. durch Computer-Crash, beendet die Möglichkeit des Virus sich weiter zu verbreiten. All diese Sachverhalte werden bis jetzt, wenn überhaupt, nur sehr ungenügend von den mathematischen Modellen berücksichtigt. Wir werden die folgenden Zustandsmodelle für Viren betrachten. 1. Das SI-Modell/Gerüchteverteilung (rumor spreading) Die Abkürzung SI steht für susceptible infected d.h. empfänglich und infiziert. Bei diesem Modell kann jeder Teilnehmer infiziert werden. Eine Infektion ist nicht heilbar und führt zu immer weiteren Ansteckungen. Man verwendet diese Modell auch zur Modellierung der Ausbreitung von Gerüchten unter der Annahme, dass diese nicht vergessen werden, und sie so interessant sind, dass sie sofort weiter erzählt werden. Bei diesem Modell werden auf lange Sicht alle Teilnehmer infiziert. Interessant ist die Geschwindigkeit der Ausbreitung. 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN Abbildung 4.7: Entwicklung der Häufigkeit der Infektionsquellen [BT01] 77 78 KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG Abbildung 4.8: Entwicklung der Häufigkeit der drei bedeutendsten Infektionsquellen [BT01] 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 79 2. SIS-Modell (birthrate/deathrate — Geburtsrate/Todesrate) Im Gegensatz zum SI-Modell können hier infizierte Teilnehmer geheilt werden: susceptible infected susceptible Dies geschieht mit einer gewissen Rate . Nach einer Heilung besteht wieder die Gefahr der Infektion durch eben dieses Virus. Neben der Ausbreitungsgeschwindigkeit interessiert man sich hier auch für das Verhältnis von gesunden und infizierten Teilnehmern. 3. SIR-Modell Dieses Modell orientiert sich am ehesten mit dem Krankheitsverlauf wie man es von Grippeepidemien kennt. Nach einer Infektion findet nach einiger Zeit eine Heilung statt, die das Individuum immunisieren gegen neue Infektionen: infected susceptible recovered Damit wird auf lange Sicht die Epidemie abklingen und die Frage besteht, wie viele werden infiziert werden, wie schnell wird die Epidemie sich ausbreiten und wie lange kann man Infektionen beobachten? Diese Fragen werden wir jetzt im Detail für die einzelnen Modelle diskutieren. 4.2.1 SI-Epidemien Dieses Modell trifft auf sehr hartnäckige Viren zu, die sich solange verbreiten, bis alle angesteckt sind. Wir gehen davon aus, dass Individuen in einer Population vorhanden sind. Diese Zahl bleibt konstant. Die Anzahl der Individuen, die zu einem bestimmten Zeitpunkt infiziert sind, bezeichnen wir mit (infected), während wir mit , die Anzahl der gesunden und gefährdeten (susceptible) bezeichnen. Im SI-Modell ist jedes Individuum in einem dieser Zustände, d.h. für alle : Wir bezeichnen mit und die relativen Anteile: Damit gilt im SI-Modell !"$#% Das deterministische und kontinuierliche Modell Bei jedem Kontakt mit einem infizierten Individuum steckt sich ein gesundes Individuum an. Damit ist der entscheidende Parameter für die Ausbreitungsgeschwindigkeit die Anzahl der Kontaktpartner eines Individuums pro Zeiteinheit. Wir gehen davon aus, dass diese Anzahl & in allen Runden für alle Spieler gleich bleibt. Ferner gehen wir davon aus, dass die & Teilnehmern genau den Infektionsgrad des Gesamtsystems wiedergeben, d.h. &' Kontaktpartner sind gesund und & Teilnehmer sind infiziert. Damit kann jeder der infizierten Individuen &( Teilnehmer infizieren und damit erhöht sich die Gesamtanzahl der infiziert in dieser Rund um &')*&(+ . Diese Überlegung führt zu den folgenden Rekursionsgleichungen ,#-. ,#-. '/&102+ 435&06+ KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 80 Häufigkeit 1 s(t) 1/2 Phase 1 Phase 2 i(t) i 0 = 1/n t Zeit Abbildung 4.9: Wachstumskurven des SI-Modells Natürlich liegt dieser Überlegung der gedankliche Fehler zugrunde, dass &' keine natürliche Zahl darstellt und damit per se die Anzahl der Infektionen nur approximiert werden. Wir führen nun den Gedanken der Approximation der Realität durch einen kontinuierlichen Prozess fort. Wir stellen uns die Anzahl der Infizierten und die Anzahl der Gesunden als kontinuierliche differenzierbare Funktion in Abhängigkeit die Zunahme der Zeit vor, wie in Abbildung 4.9 gezeigt. Damit approximiert die Ableitung der Infizierten, d.h. *,#2(3 # Damit erhalten wir die folgende Differentialgleichung: &0 )# 3 (4.1) Die Lösung dieser Gleichung ist: # # 3 # (4.2) Wir überprüfen dies, indem wir die Ableitung von berechnen, wobei # # $# 3 # Somit erhalten wir das Folgende. 3 ! 3 # &0 0 0 3 # 3 ## " " )3 &( 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 81 1 1+x 1−x/2 1 1/x 1−x 1/2x 0 0 1 x Abbildung 4.10: Abschätzung der Funktion &06(0 3 ## 3 # &06(0 # &06(0 *# 3 &06(0# 35 " Was bedeutet aber die Lösung? Wir sehen, dass die Lösung der Differentialgleichung 4.1 die Form hat. In Abbildung 4.10 ist skizziert, wie man ein solche Funktion mit einfacheren Funktionen abschätzen kann. Wir werden diese Beobachtung verifizieren. Lemma 3 Für 6# gilt: # 3 # gilt: für # # # # # # # 3 # Beweis: 1. # : Es gilt # 3 # " #3 # . Damit ist # 3 . Für 6# gilt, dass ' )#%3 . Daher gilt # # # Somit ist # 3 2. # Falls # gilt 3 # )# )# 3 . Da ,# folgt sofort . ,# . Damit folgt . # KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 82 Damit können wir folgende Beobachtung beweisen: Bis die Hälfte aller Individuen infiziert sind, wächst die Anzahl der Infizierten exponentiell. Danach schrumpft die Anzahl der Gesunden exponentiell. Theorem 11 Für das deterministischen kontinuierliche SI-Modell gilt: Für für gilt: gilt: # 0 #3 # 3 # " 0 # 3 # 3 # " Beweis: Dieser Satz folgt direkt aus Lemma 3 und der Lösung der Differentialgleichung 4.1. SI-Epidemien im Zufallsgraphen Die deterministische kontinuierliche Modellierung beschreibt nur eine Approximation der Wirklichkeit. Wir werden sehen, dass hierbei insbesondere die Startphase einer Epidemie eklatante Unterschiede auftreten, geht man von einer diskreten Modellierung mit Individuen aus, wie es der Wirklichkeit entspricht. Hierzu betrachten wir einen gegebenen gerichteten Graphen mit Knoten, die den Individuen entsprechen. Sei % die Menge der infizierten Knoten und die Menge der gesunden Knoten. Wenn in der Runde infiziert ist, d.h. % , und es existiert die Kante , dann ist (spätestens) in Runde # infiziert. Formal ist dann ,#2 "!# und Damit beschreibt das SI-Modell eine Breitensuche in einem gegebenen Graphen, wobei die Knotenmenge mit Abstand zur Ursprungsmenge bezeichnet. Damit ist das Ausbreitungsverhalten sehr stark von der zugrundeliegenden Graphstruktur abhängig. So werden z.B. im vollständigen Graph alle Knoten innerhalb eines Schrittes infiziert, während in dem Graph $ $ 21#-# %3 # - ausgehend von %#& sogar 3 # Schritte notwendig sind. Wenn wir jetzt den gerichteten Zufallsgraphen '( betrachten, erhalten wir einen erwarteten Eingrad und Ausgrad )( 3,#- , welcher der Rolle von & aus der deterministischen Analyse entspricht. Wenn wir annehmen, dass & eine Konstante unabhängig von ist, beobachten wir folgendes. Lemma 4 Für & *)( 3 #2 ist die Wahrscheinlichkeit, dass ein Knoten in keine eingehende Kante hat, mindestens + " und höchstens " . Genauso verhält es sich für Wahrscheinlichkeit, dass ein Knoten keine ausgehende Kante hat. Beweis: Die Wahrscheinlichkeit, dass eine bestimmte Kante im Graph existiert ist ) . Aufgrund der Unabhängigkeit dieser Ereignisse, beträgt die Wahrscheinlichkeit ) , dass alle 3 # Kanten nicht vorhanden sind, -/.10 ) # 3,) *# 3 & 3 # Wir benutzen nun die foglende Ungleichung. für Da gilt: + # folgt daher durch Substitution von + # 6 & # 3 3 798 # 1 # 3 -/25 .10 3 ; $< Der Beweis, der die ausgehenden Kanten betrifft, ist analog. 3 # # # : 243 & *# 3 # 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 83 Theorem 12 Falls & 4)' 3,#2 )#2 und falls für , dann ist die erwartete Anzahl aller Individuen in , die nicht infiziert werden, linear in . Falls # , gibt es eine konstante Wahrscheinlichkeit von mindestens + , dass die Epidemie nicht ausbricht. Beweis: Sind noch 40 Knoten nicht infiziert, dann finden sich darunter erwartungsgemäß + " Knoten ohne eingehende Kanten, die daher nicht infiziert werden können. Der zweite Satz folgt daher, dass der infizierte Knoten mit Wahrscheinlichkeit + " keine ausgehenden Kanten besitzt. Es zeigt sich also, dass die Epidemie nur dann vollständig ausbreiten kann, wenn der durchschnittliche so kann man mit Wahrscheinlichkeit # 3 .10 garantieren, Ausgrad nicht konstant ist. Wählt man & dass kein Knoten im Graph isoliert ist, d.h. Eingrad und Ausgrad sind immer positiv. Das Push-Modell In diesem Modell wird in jeder Runde ein neuer gerichteter Graph betrachtet. In diesem Graph hat jeder Knoten eine ausgehende Kante, die gleichwahrscheinlich aus der Knotenmenge gewählt wird. Damit sind auch Schleifen, d.h. Kanten mit gleichen Anfangspunkt und Endpunkt möglich. Die Infektion wird nun in Runde entlang einer gerichteten Kante weitergegeben, d.h. jeder infizierte Knoten in Runde wählt gleichwahrscheinlich einen Knoten aus als Kontaktpartner und infiziert ihn. Dieses Push-Modell kommt der deterministischen Modellierung des SI-Modell sehr nahe. In Abbildung 4.11 wird die Ausbreitung eines Virus im Push-Modell beispielhaft dargestellt. Für einen infizierten (und infizierenden) Knoten ergeben sich in einer Runde drei Möglichkeiten: 1. Er kontaktiert und infiziert als einziger infizierter Knoten einen gesunden Knoten 2. Er kontaktiert einen bereits infizierten Knoten , . . . 3. Er kontaktiert mit anderen infizierten Knoten zusammen einen gesunden Knoten Wir erinnern uns, dass in der deterministischen Analyse dieser dritte Fall vernachlässigt worden ist. Wir sind im allgemeinen interessiert an der Wahrscheinlichkeit für den 1. und 3. Fall (deren Analyse nicht ganz einfach ist). Wenn die Zahl der Infizierten relativ klein ist, überwiegt hierbei die Wahrscheinlichkeit, dass der 1. Fall vorliegt. Die Wahrscheinlichkeit, dass Fall 2 vorliegt, ist . Die Wahrscheinlichkeit für Fall 3 ist höchstens , da maximal Infektionen in dieser Runde stattfinden. Damit ist die Wahrscheinlichkeit für Fall 1 mindestens # 3 . Diese Überlegung ergibt das folgende Lemma. Lemma 5 Jeder infizierte Knoten infiziert unabhängig von den anderen Knoten einen gesunden Knoten mit Wahrscheinlichkeit von mindestens # 3 (im Push-Modell). Der Verlauf einer SI-Epidemie im Push-Modell verläuft in zwei verschiedenen Phasen ab: 1. Exponentielles Wachstum Die Anzahl der Infizierten wächst bis ein konstanter Anteil infiziert ist, in jeder Runde um einen konstanten Faktor. Gegen Ende dieser Periode schwächt sich dieses Wachstum etwas ab. Nach Lemma 5 ist die erwartete Anzahl von Infektionen in der nächsten Runde gegeben durch: E #- (3 # 3 ! Wir unterscheiden in der exponentiellen Wachstumsphase folgende Teilphasen: KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 84 3 4 5 2 1 8 0 8 0 3 c 4 d 5 2 0 8 f 9 a e d 3 c 4 4 5 3 0 8 a c b 5 2 6 1 7 0 8 f 9 e a d c 5 6 7 0 9 d 4 1 7 f c b 2 6 e b a e 1 7 9 d 2 6 1 f b c 3 7 8 a e 6 0 9 a 5 1 7 b 4 2 6 f 9 d 3 1 7 f 5 2 6 e 4 3 b Abbildung 4.11: SI-Epidemie im Push-Modell 8 f 9 e a d c b 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 85 (a) Startphase ! Hierbei können wir den rechten Faktor getrost vernachlässigen, da wir wissen, dass erst nach dieser Faktor eine konstante Auswirkung hat, weil ! - # 3 In viel kürzerer Zeit (wenn # ) ist der Term ! , nämlich nach Runden. Dieser Term beschreibt ganz gut die zu erwartende Rundenzahl, denn die Wahrscheinlichkeit, dass alle infizierten Teilnehmer nur gesunde Teilnehmer infizieren ist: ! % " )# 3 # 3 ) größer als ! + # 3 Damit findet die Verdopplung mit Wahrscheinlichkeit # 3 mal % " Runden statt. & in jeder der maxi- (b) Hauptphase: ! Um die Gültigkeit der Verdopplung in jeder Phase mit hoher Sicherheit (d.h. mit W’keit #3 ) nachzuweisen, verwenden wir hier eine Chernoff-Schranke: Chernoff: Es gilt für unabhängige binäre Zufallsvariablen #& und ! #" ; für alle # : E ! 3 P )# 3 E Wir setzen für P #2 )#"3 Setzen wir nun sionsgleichung: ,#2 die Anzahl der Infektionen einer Runde und erhalten daher E #- 3 ! ! 3 erhalten wir die gewünschte Sicherheit. Damit erhalten wir als Rekur- )# 3 )#%3 Der Faktor #(3 )# 3 # 3 3 ein konstanter Faktor von mindestens # 3 E #- 3 mit Wahrscheinlichkeit # 3 #(3 # 3 $ " . Damit ergibt sich nach Runden Neben dem Faktor fällt dieser Faktor kaum ins Gewicht. Wir können also in der Hauptphase mit großer Wahrscheinlichkeit davon aus gehen, dass eine Verdoppelung stattfindet. (c) Zwischenphase: Nun kann der Term nicht mehr vernachlässigt werden. Zumindestens gilt hier (3 (3 + " Damit ist noch exponentielles Wachstum vorhanden, wenn auch bezüglich einer kleineren Basis. Mit Hilfe der Chernoff-Schranke läßt sich dieses Wachstum auch mit hoher Wahrscheinlichkeit nachweisen. Die Dauer dieser Zwischenphase ist sehr kurz, d.h. dauert nur ! Runden. KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 86 n I(t) Anzahl Infizierter Exponentelles O(log log n) log n Zwischenphase Startphase Hauptphase Wachstum Sättigung t O(log n) Runden O(log log n) Abbildung 4.12: Wachstumsphasen in der einer SI-Epidemie im Push-Modell 2. Sättigung: Ist ein konstanter Anteil der Population infiziert, stoppt das exponentielle Wachstum. Die Wahr scheinlichkeit, dass ein Gesunder Knoten in einer Runde überhaupt nicht kontaktiert wird, ist # 3 . Für ist die Wahrscheinlichkeit also mindestens und höchstens . Tatsächlich ist aber nur ein konstanter Anteil + aller Knoten infektiös und wir erhalten für dieses # 3 die folgenden Schranken. Infektionswahrscheinlichkeit ) + ) Damit gilt für die erwartete Anzahl der gesunden Teilnehmber: E #- ) 06 0 Damit schrumpft die Anzahl der gesunden Teilnehmer exponentiell schnell, wobei die Basis rasch 0 von gegen konvergiert. Ähnlich wie im ersten Fall läßt sich dieses Verhalten durch Anwenden einer Chernoff-Schranke auch mit hoher Wahrscheinlichkeit für die Zufallsvariablen und #- nachweisen. Als Ergebnis können wir festhalten, dass im Push-Modell im wesentlichen die Voraussagen des deterministischen, kontinuierlichen Modells von SI-Epidemien eintreffen. Nur in der Wahl der Basis der exponentiellen Zunahme und Abnahme ergibt sich in der Wachstumsphase ein wesentlicher Unterschied (Basis im ersten Modell und Basis im zweiten). Eine genauere Analyse führt zu folgendem Satz. Theorem 13 [Pit87] Eine SI-Epidemie im Push-Modell benötigt erwartungsgemäß Runden. )#2 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 4 3 5 2 1 8 0 8 0 c 4 3 d 5 2 1 0 f 9 e d c 4 3 0 c 6 7 8 f 9 a d 5 0 9 e 4 1 8 f c b 2 6 b a 5 7 a 9 e 1 8 f d 2 7 8 b c 3 6 7 a e 6 0 9 a 5 1 7 b 4 2 6 f 9 d 3 1 7 f 5 2 6 e 4 3 87 a e d b b c Abbildung 4.13: SI-Epidemie im Pull-Modell Das Pull-Modell Genauso wie beim Push-Modell wird in jeder Runde ein neuer gerichteter Graph $ betrachtet, in welchen jeder Knoten eine ausgehende Kante, die gleichwahrscheinlich aus der Knotenmenge gewählt wird. Der Unterschied zum Push-Modell ist, dass die Infektion entgegen der Kantenrichtung verläuft. Ist also Kante und ist zum Zeitpunkt infiziert, dann ist spätestens ab den Zeitpunkt 4 # infiziert. Auf den ersten Blick erscheint dieses Modell analog zum Push-Modell. Tatsächlich werden wir aber große Unterschiede beobachten. Ein Beispiel für eine SI-Epidemie im Pull-Modell ist in Abbildung 4.13 dargestellt. Die Wahrscheinlichkeit, dass ein gesunder Knoten in Runde einen infizierten kontaktiert ist damit genau 1 . Dieses Ereignis ist insbesondere unabhängig von der Infektion anderer gesunder Knoten. Damit erhalten wir für den relativen Anteil der infizierten Knoten: E !#- 3/ + 3/+ )# 3 Für den erwarteten relativen Anteil der Infizierten bedeutet dies. # 3 E #- $ # 3 # 35 435 Für die Anfangsphase der Infektion, wenn # , gilt damit #- Damit beobachten wir die folgenden zwei Phasen der Infektion: 1. Exponentielles Wachstum: # 4 KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 88 (a) Startphase: *! Die Wahrscheinlichkeit, dass ein Infizierter überhaupt den Virus einmal verbreiten kann, ist # 3 # Dies entspricht einer konstant großen Wahrscheinlichkeit für die Stagnation der Infektion. Damit ist die Wahrscheinlichkeit, dass die Epidemie Runden am Anfang stagniert, ein Poly nom mit . Mit zunehmender Anzahl der infizierten Knoten wird die Verdoppelung in jedem Schritt sogar mit hoher Wahrscheinlichkeit (d.h. mit Wahrscheinlichkeit #%3/ ) geschehen. Garantiert ist dies jedoch erst wenn polylogarithmisch viele Knoten infiziert sind. Betrachten wir nur die erwartete Dauer dieser Phase, so läßt sich zeigen, dass sie nur "! Runden dauert. (b) Hauptphase: ! Hier liegt exponentielles Wachstum zur Basis 3 mit hoher Wahrscheinlichkeit vor. Die Analyse dieser Phase mittels einer Chernoff-Schranke ist analog zur Analyse der Hauptphase des exponentiellen Wachstums im Push-Modell. (c) Zwischenphase: Das exponentielle Wachstums verlangsamt sich jetzt. Jedoch gilt immer noch E !#- (3 3 # Mittels Chernoff-Schranken läßt sich diese Rekursion auch mit hoher Wahrscheinlichkeit nachweisen. 2. Quadratischen Schrumpfen In dieser Phase quadriert sich der auf beschränkte Anteil der Gesunden erwartungsgemäß in jeder Runde. Fände dieses Quadrierung deterministisch statt, dann wäre nach $# Runden der Anteil kleiner als und somit alle infiziert, weil: # - 0 # # Nun muß man natürlich berücksichtigen, dass die Rekursion nur auf den Erwartungswerten beruht und dass sich die Abweichungen von diesen mit der Zeit erheblich vergrößern können. In [KSSV00] wurde aber gezeigt, dass die Epidemie tatsächlich nur ! benötigt, um alle zu infizieren. Damit gibt es einen enormen Unterschied im Ausbreitungsverhalten im Push- und im Pull-Modell. Trotzdem die gleiche Erwartete Anzahl von Kontaktpartnern vorliegt, unterscheidet sich das Ausbreitungsverhalten in der Schlußphase um Größenordnungen. Die erwartete Ausbreitungsdauer einer SI-Epidemie ! Runden. im Pull-Modell dauert also Das Push&Pull-Modell Kombiniert man Push&Pull-Infektionen, erhält man eine Infektion, welche die Ausbreitungsgeschwindigkeit beider Kontaktmodelle kombiniert. In diesem Modell kann als die Infektion sowohl entlang als auch entgegen einer Kante, die mit einem Knoten inzident ist, übertragen werden. In [KSSV00] wird gezeigt, dass hierbei folgende Phasen auftreten: 1. Exponentielles Wachstum (a) Startphase: ! Push-Kontakte garantieren, dass sich die SI-Epidemie exponentiell schnell ausbreitet. Somit dauert diese Phase nur " )-# Runden. 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 89 n I(t) Anzahl Infizierter Exponentelles Startphase Hauptphase Zwischenphase Quadratisches Schrumpfen Wachstum O(log log n) O(log log n) O(log log n) log n t Runden Abbildung 4.14: Wachstumsphasen einer SI-Epidemie im Pull-Modell (b) Hauptphase: ! Durch die Kombination der Push und der Pull-Ausbreitung läßt sich mit hoher Wahrscheinlichkeit die Gleichung #- nachweisen. 3 # (c) Zwischenphase: Der Anteil der Infektionen durch Push-Kontakte nimmt hier verglichen mit den Pull-Infektionen ab. Das Wachstum von verlangsamt sich, bleibt aber immer noch exponentiell. 2. Quadratisches Schrumpfen Die Push-Infektionen sind nun kaum noch erfolgreich. Jetzt werden, wie schon im Pull-Modell beobachtet, alle Teilnehmer in ! Runden fast ausschließlich mittels Pull-Kontakten infiziert Damit dauert die Infektion der gesamten Population im Push&Pull höchstens Runden. "! 4.2.2 Deterministische und kontinuierliche Modellierung einer SIS-Epidemie Im Gegensatz zum SI-Modell wird ein -Anteil der infizierten Population geheilt, aber wieder empfänglich für die Infektion. Dieses Modell modelliert den Fall, dass ein Computervirus zwar von einem Rechner entfernt werden kann, aber dass er danach wieder in der Lage ist, den Rechner erneut zu befallen. Wieder sei die Anzahl der Individuen in einer Population. Die Anzahl der Individuen, die zu einem bestimmten Zeitpunkt infiziert sind, bezeichnen wir mit (infected), während wir mit , die Anzahl der KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 90 n I(t) Anzahl Infizierter Exponentelles O(log log n) Zwischenphase Quadratisches Schrumpfen Hauptphase Startphase Wachstum log n 3 O(log log n) O(log log n) t Runden Abbildung 4.15: Wachstumsphasen einer SI-Epidemie im Push&Pull-Modell gesunden und gefährdeten (susceptible) bezeichnen. Im SIS-Modell ist jedes Individuum in einem dieser Zustände, d.h. für alle : Wir bezeichnen mit und die relativen Anteile: Damit gilt im SIS-Modell !"$#% Wie bei der SI-Epidemie nehmen wir an, dass bei jedem Kontakt mit einem infizierten Individuum sich ein gesundes Individuum ansteckt. Damit ist der entscheidende Parameter für die Ausbreitungsgeschwindigkeit & , die Anzahl der Kontaktpartner eines Individuums pro Zeiteinheit. Wiederum gehen wir davon aus, dass die & Teilnehmern genau den Infektionsgrad des Gesamtsystems wiedergeben, d.h. &' Kontaktpartner sind gesund und & Teilnehmer sind infiziert. Damit kann jeder der infizierten Individuen &( Teilnehmer infizieren und damit erhöht sich die Gesamtanzahl der infiziert in dieser Rund um &') *&'+ . Daneben verringert sich die Anzahl der Infizierten in jeder Runde um . Diese Überlegungen führeb zu den folgenden Rekursionsgleichungen. !#- !#- !&06) 3 3 &06)' " #- /&"# 3 ) 3 In einer Rekursionsgleichung erhalten wir 4.2. MATHEMATISCHE MODELLIERUNG VON EPIDEMIEN 91 Wiederum approximieren wir diese Funktion mit einer kontinuierlichen differenzierbaren Funktion und nehmen an, dass die Sekantensteigung !#- 35 durch die erste Ableitung hinreichend genau approximiert wird, d.h. *,#2(3 # Damit erhalten wir die folgende Differentialgleichung: &0 )#%35 3 (4.3) In [Kep94] wird gezeigt, dass die Lösung dieser Differentialgleichung beschrieben wird durch: 5 wobei 1. & # # 3 3 ## . Damit ergeben sich die folgenden zwei Fälle , d.h. # 2 . In diesem Fall ist die Funktion streng monoton abnehmend und konvergiert exponentiell schnell gegen . Dieser Fall beschreibt also die Situation, in der die Heilung die Ausbreitung des SIS-Virus verhindert. 2. & , d.h. # Betrachten wir nun erhalten wir # # 3 # Die Analyse dieser Funktion ist analog zur Funktion im SI-Modell. Damit wächst die Anzahl der Infizierten exponentiell bis ein Anteil von )#"3 infiziert sind und dann konvergiert die Funktion exponentiell schnell gegen # 3 . In [Kep94] wurde dieser Fall experimentell für geeignet gewählte Zufallsgraphen überprüft, siehe Abbildung 4.16. 4.2.3 Deterministische und kontinuierliche Modellierung einer SIR-Epidemie Im Gegensatz zum SIS-Modell wird der -Anteil der infizierten Population, der geheilt wird, immun gegen weitere Ansteckung. Diese immunen Individuen werden mit (recovered) und deren Anteil mit " - bezeichnet. In diesem Modell gilt also ! " und !/ # Damit erhalten wir folgende Rekursionsgleichungen ,#2. ,#2. ',#2. 3 &06) !&102) 3 ' " Unter den schon bekannten Annahmen einer kontinuierlichen Approximation dieser Rekursionsgleichung erhält man die folgenden Differentialgleichungen. 2 Der Fall führt zu konstantem und wird daher weggelassen KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 92 Abbildung 4.16: Beispiel einer SIS-Epidemie in einem Zufallsgraphen [Kep94] 3 &0 &0 3 Leider ist für diese keine geschlossene Lösung bekannt. Daher bleibt nur noch die numerische Approximation für entsprechende Zahlenwerte. In Abbildung 4.17 wird eine solche für die Werte # 3 # # # # , & und gezeigt. Interessanterweise zeigt sich, dass gegen Ende der Epidemie, ein konstanter Anteil überhaupt nicht infiziert wurde. 4.3 Epidemische Algorithmen 4.3.1 Replizierte Datenbanken Replizierte Datenbanken (replicated database) sind im Idealfall exakte Kopien einer Datenbank an verschiedenen Orten. Neue Einträge in diese Datenbanken entstehen lokal und daher ist es notwendig, den Datenbestand in bestimmten Zeitintervallen anzupassen, damit die Konsistenz der replizierten Datenbanken erhalten wird. Ein Beispiel für die Anwendung von replizierten Datenbanken sind z.B. Name-Server im Internet. Wenn neue Rechner ihre Host-ID und IP-Adresse ihrem Router bekanntgeben, ist es nötig, dass diese Information domain-weit zur Verfügung steht. Dafür muß diese Information verbreitet werden. Ferner ist es möglich, dass ganze Teilnetzwerke sich an- oder abkoppeln. Außerdem sind nicht alle Rechner, die mit der Verwaltung von diesen Rechnernamen vertraut sind, nicht allen anderen Rechnern bekannt. Ein ideales Verfahren soll also robust und dezentral diese Informationsverbreitung erledigen, auch wenn Netzwerkverbindungen oder Rechner ausfallen. In [DGH 87] werden folgende Lösungen diskutuiert: Unicast 4.3. EPIDEMISCHE ALGORITHMEN 93 Abbildung 4.17: Numerische Approximation einer SIR-Epidemie [SM00] Hier wird jede neue Information an alle Standorte der replizierten Datenbank direkt verschickt. Problematisch ist der Fall, wenn nicht alle Standorte bekannt sind, oder die Standorte zeitweise nicht erreichbar sind. Anti-Entropie In diesem Verfahren gleichen von Zeit zu Zeit zwei Datenbankenstandorte ihren gesamten Informationsstand aus und bereinigen zeitweise Unterschiede. Die Auswahl dieser zwei Standorte kann zufällig, oder auch nach einen bestimmten Auswahlschema ablaufen. Dieses Verfahren ist sehr zuverlässig, indem jede Information mit der Zeit in allen lokalen Datenbanken vorhanden ist. Dagegen kann es einige Zeit dauern bis dieser Zustand erreicht ist. Das Hauptproblem bei dieser Methode ist der Kommunikationsoverhead für das Überprüfen bereits allseits bekannter Daten. Epicast Epicast setzt sich aus Epidemie und Broadcast zusammen. Hier nutzt man einen sogenannten epidemischen Algorithmus zur Verbreitung der Information. Hierfür wird in einem geeigneten Kontaktmodell die lokal neu entstandene Information als SI-Virus interpretiert. Damit ist die Durchdringung des Netzwerkes garantiert, solange es zusammenhängend ist. Wir bezeichnen den SI-Virus hier als Gerücht. Das Problem des Kommunikationsoverhead entsteht dann, wenn die Gerüchteverbreitung nicht stoppt. Daher ist die Wahl eines geeigneten Terminierungsmechanismus notwendig, damit die Anzahl unnötig versandter Informationen eingedämmt wird. 4.3.2 Eine einfache Terminierungsstrategie Als effektive und einfache Terminierungsstrategie erweist sich das Alterungskonzept. Jedes Gerücht wird erweitert um einen Zähler, der mit jeder weiteren Übertragung um eins heraufgesetzt wird. Ist der Zähler größer als ctr , wird das Gerücht nicht weiter verbreitet. Damit ist die Anzahl der übertragenen Nachrichten natürlich beschränkt durch 0 ctr , wobei die Anzahl der lokalen Datenbankkopien bezeichnet. Problematisch ist die Wahl von ctr . Wählt ctr zu hoch, werden mehr Nachrichten als notwendig versandt, während eine zu kleine Wahl das Risiko birgt, dass nicht alle Knoten informiert werden. Insbesondere ist die Wahl abhängig von dem Kontaktmodell der Gerüchteverbreitung, die hier vom Datenbankdesigner frei gewählt werden kann. KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG 94 Push-Modell wählen, wobei mit zunehmenWählt man das Push-Modell, so muß man ctr den konstanten Faktor # die Sicherheit der Information aller Knoten zunimmt. Für eine geeignete Wahl von werden alle Knoten mit hoher Wahrscheinlichkeit informier, d.h. mit Wahrscheinlichkeit # 35 . Die Nachrichtenmenge ist dann "! . Pull-Modell Damit alle Teilehmer mit hoher Wahrscheinlichkeit informiert werden, ist die Startphase des exponentiellen Wachstums kritisch. Hier zeigt sich, dass eine Wahl von ctr mit # notwendig ist, obwohl erwartungsgemäß alle Knoten schon in Zeit " ! informiert sind. Damit ergibt sich eine Nachrichtenmenge von "! . Push&Pull-Modell Da hier die Zeit für die vollständige Verbreitung des Gerüchtst sogar mit hoher Wahrscheinlichkeit ! garantiert die Wahl ctr , dass beschränkt ist durch alle Knoten informiert werden. In [KSSV00] wird gezeigt, dass die Nachrichtenmenge dann sogar nur ! für jedes übetragenes Gerücht beträgt. Der Grund für diese geringe Nachrichtenmenge ist, dass in der exponentiellen Verbreitungsphase nur linear viele Nachrichten entstehen. Das Gros der Nachrichten wird daher erst beim quadratischen Schrumpfen des Anteils der Nichtinformierten erzeugt, der dann nur noch ! Runden benötigt. Der Nachteil dieser Terminierungsstrategie, ist dass die Wahl von ctr sich sehr stark auf die Nachrichtenmenge auswirkt. Ist also zum Beispiel ein gleichmäßiges Kontaktmodell wie Push&Pull nicht erreichbar, weil gewisse Teile des Netzwerks nicht von allen erreicht werden können, so ergibt sich ein Trade-Off zwischen der Robustheit und der Nachrichtenmenge. 4.3.3 Shenkers Min-Counter-Algorithmus Scott Shenker [KSSV00] entwarf einen cleveren Terminierungsmechanismus, der dieses Problem elegant löst. Die Idee ist, dass jeder Spieler für ein Gerücht einen Zähler ctr unterhält, der nur dann um eins erhöht wird, falls in der vergangenen Runde alle Zählerstände von Kontaktpartnern für dieses Gerücht mindestens ebenso groß waren. Ist der Zähler größer als ctr , dann wird das Gerücht nicht mehr weitergegeben. Im einzelnen arbeitet der Termininierungsmechanismus wie folgt. Sei ctr ! . Zustand A: Jeder Spieler führt Variable ctr für Gerücht , die initialisiert ist mit ctr " , falls das Gerücht noch nicht kennt. Zustand B: Entsteht bei das Gerücht , setze ctr # und verbreite das Gerücht durch Push und Pull Zustand B: Seien 6 weiterverbreiten und falls dann setzte ctr Zustand B: Falls ctr Kommunikationspartner von ctr ctr in dieser Runde. Falls alle das Gerücht !# . ctr gehe in Zustand C Zustand C: Verbreite ctr Runden lang das Gerücht weiter. Gehe dann in Zustand D über. Zustand D: Gerücht wird nicht mehr weiterverbreitet. In Abbildung 4.18 wird gezeigt, wann welche Zustände mit welcher Häufigkeit auftreten. 4.3. EPIDEMISCHE ALGORITHMEN 95 Teilnehmer in Zustand B C D A B−1 < log n 3 2 3 O(log log n) Abbildung 4.18: Häufigkeit der einzelnen Zustände des Min-Counter-Algorithmus Theorem 14 [KSSV00] Shenkers Min-Counter-Algorithmus informiert mittels Push&Pull-Kommunikation , wobei maximal alle Teilnehmer in ! Runden mit Wahrscheinlichkeit # 35 ! Nachrichten übertragen werden. Es stellt sich im übrigen heraus, dass dieses Verhalten selbst dann garantiert ist, wenn die Partnerwahl im Kontaktgraphen (von Push und Pull) nicht mit einer gleichmäßigen Wahrscheinlichkeitsverteilung durchgeführt wird. Da eine ungleichmäßige Wahrscheinlichkeitsverteilung die Verbreitung des Gerüchts erheblich verkürzen kann, ist die gleiche Performance wie Min-Counter dann mit der einfachen Alterungsterminierungsstrategie nicht zu erreichen. Damit erweist sich Shenkers Min-Counter-Strategie als eine robuste Terminierungsstrategie für epidemische Informationsausbreitung. 96 KAPITEL 4. EPIDEMISCHE INFORMATIONSAUSBREITUNG