TCP over a multi-state Markovian path

Werbung
Rheinisch-Westfälische Technische Hochschule Aachen
Lehrstuhl für Informatik IV
Prof. Dr. rer. nat. Otto Spaniol
Leistungsbewertung von TCP mit Hilfe von
Mehrzustands-Markov-Ketten
Seminar: Datenkommunikation und verteilte
Systeme
Wintersemester 2002/2003
Christoph Grigutsch
Matrikelnummer: 201997
Betreuung:
Andre Schüppen
Lehrstuhl für Informatik IV, RWTH Aachen
Inhaltsverzeichnis
1
2
Einleitung
3
1.1
Motivation zur Untersuchung von AIMD mit MSMCs . . . . . . . . . . . . . . . . .
3
1.2
Leistungsbewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
Begriffe
6
2.1
Überlastbehandlung bei TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.2
Stochastische Prozesse, Markov-Prozesse und Ketten . . . . . . . . . . . . . . . . .
8
2.2.1
Punktprozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2.2.2
Poisson-Prozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.2.3
Markov-Prozesse, Markov-Ketten . . . . . . . . . . . . . . . . . . . . . . .
10
Laplace-Stieltjes-Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.3
3
Das allgemeine Modell zur Leistungsbewertung von AIMD
13
4
Leistungsbewertung des allgemeinen Modells
15
5
Spezialfälle des allgemeinen Modells
22
5.1
Das Basis-Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
5.2
Zusammengefasste Verlustmomente . . . . . . . . . . . . . . . . . . . . . . . . . .
23
5.3
Das Zwei-Zustands-Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
6
Zusammenfassung
34
6.1
35
Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
Zusammenfassung
In diesem Vortrag wird die Leistungsbewertung eines AIMD (additive increasing multiplicative decreasing)-Kontrollflussmechanismus mit Hilfe von Markov-Ketten vorgestellt. Dies ist
besonders interessant, da diese Strategie u.a. von Netzwerkprotokollen wie TCP/IP benutzt wird.
Bei einem AIMD-Kontrollflussmechanismus wird mit Auftreten einer Überlast die Übertragungsrate um einen konstanten Faktor gesenkt. Nach der Überlast wird die Übertragungsrate
linear, d.h. um einen festen Betrag pro Zeiteinheit, bis zu einem Maximum gesteigert. Ziel dieser
Arbeit ist es Modelle zu finden, die nur wenige einfach zu ermittelnde Parameter benötigen und
dennoch das Verhalten des Netzwerkes möglichst genau approximieren. Das hier vorgeschlagene Modell basiert dabei auf Markov-Ketten mit mehreren Zuständen. Dies wird hervorgehoben,
da AIMD-Modelle in früheren Arbeiten der Autoren lediglich Markov-Ketten mit maximal 2
Zuständen benutzten. Diese Mehrzustands-Markov-Kette (MSMC) ändert ihren Zustand zu den
Zeitpunkten, zu denen eine Überlast erkannt wird. Dabei bestimmt der dann aktuelle Zustand der
Markov-Kette den Reduktionsfaktor der Übertragungsrate.
Im Folgenden wird zunächst das AIMD-Modell in allgemeiner Form vorgestellt und einer
Leistungsbewertung, d.h. der analytischen Berechnung interessanter Größen, wie z.B. der durchschnittlichen Übertragungsrate aus vorgegebenen Parametern unterzogen. Danach werden aus diesem allgemeinen Modell drei spezielle Versionen entwickelt. Diese unterscheiden sich in der Zahl
der Zustände und der benötigten Parameter. Außerdem wird gezeigt, wie man die Parameter der
einzelnen Modelle aus realen TCP -Traces identifizieren kann. Dabei werden diese drei Versionen mit einem sog. Exact Fluid Model (EFM), das das reale Netzwerkverhalten etwas idealisiert
nachbildet, verglichen und bewertet.
1
Einleitung
Leistungsbewertung von Netzwerken mit Hilfe stochastischer Methoden ist ein wichtiger Ansatz zur
Analyse der Leistungsfähigkeit von Netzwerkprotokollen. Dabei verfolgt man unterschiedliche Ziele,
die auch miteinander in Konflikt stehen.
Zunächst möchte man natürlich, dass das entwickelte Modell die Realität, d.h. die Netzwerkprotokolle unter realen Bedingungen, möglichst genau approximiert. Auf der anderen Seite möchte man
Modelle entwickeln, die leicht zu berechnen sind und möglichst wenige Parameter erfordern. Die so
entwickelten Modelle können dann zur Bewertung der untersuchten Netzwerkprotokolle eingesetzt
werden. Dazu ermittelt man die Parameter aus realen Netzwerkaufzeichnungen oder berechnet die
Parameter a priori aus dem verwendeten Protokoll. In der folgenden Arbeit wird nun verschiedene Modell entwickelt und dessen Genauigkeit durch Vergleiche mit realen Netzwerkaufzeichnungen
ermittelt.
1.1
Motivation zur Untersuchung von AIMD mit MSMCs
Überlastbehandlung ist eine wesentliche Aufgabe von Netzwerkprotokollen. Würde man bei einer
Überlast nicht mit einer Verringerung der Datenübertragungsrate zwischen den einzelnen Stationen
3
reagieren, käme es zu einer dauerhaften Verstopfung und es wäre überhaupt kein Datenverkehr mehr
möglich. Da TCP ein sehr verbreitetes verbindungsorientiertes Protokoll ist, ist eine Leistungsbewertung hier besonders interessant.
TCP hat in [6] festgelegte Strategien um auf Überlastungssituationen angemessen zu reagieren. Eine
dieser Strategien wird abstrakt als AIMD oder ausgeschrieben additiv erhöhende multiplikativ
verringernde bzw. additive increase multiplicative decrease Strategie bezeichnet. Diese Art der
Flusskontrolle wird nicht nur von TCP , sondern auch von einer Reihe anderer Protokolle verwendet.
Die Modelle in diesem Vortrag werden zwar am Beispiel von TCP entwickelt, es wird jedoch erwartet,
dass diese Ergebnisse auf andere Protokolle mit anderen Kontrollflussmechanismen übertragbar sind.
Zu AIMD gibt es zwei wichtige Parameter, die im Folgenden mit a und α bezeichnet werden. Dabei
bezeichnet a den Faktor, um den die Übertragungsrate bei Auftreten einer Überlast verringert wird. α
ist die (konstante) Rate des linearen Anstieges der Übertragungsrate, nachdem die Überlast überwunden ist. Im Fall von TCP wird der Durchsatz über die Größe eines sog. Überlastfensters (congestion
window) gesteuert. Die Übertragungsrate des Netzwerkes lässt sich dabei einfach berechnen indem
man die Fenstergröße durch die Paketumlaufzeit (Round-Trip-Time RTT) teilt.
Eine wichtige Frage stellt in diesem Zusammenhang die Erkennung einer Überlastsituation dar. Im
Gegensatz zu anderen Protokollen gibt es bei TCP keine expliziten Meldungen, die eine Überlast signalisieren. (z.B. hat ABR, einem Signalisierungs-Protokoll von ATM, explizite Nachrichten, die eine
Überlastsituation melden). Im Falle von TCP wird u.a. ein Paketverlust, d.h. ein ausbleibendes ACK
nach einem TIMEOUT oder mindestens 3 identische ACK-Pakete als Überlastmeldung gewertet. Es
gibt bei TCP also nur implizite Überlastmeldungen.
1.2
Leistungsbewertung
Bei der Leistungsbewertung von Netzwerken versucht man ein geeignetes Modell zu konstruieren,
das anhand möglichst weniger Parameter die Performance des Netzwerkes bzw. dessen Protokolle
voraussagen bzw. approximieren kann. Die benötigten Parameter werden aus Aufzeichnungen realer
Netzwerkverbindungen ermittelt und die damit vom Modell vorhergesagte Leistung mit der der echten
Verbindung verglichen.
Der Zeitpunkt, zu dem die Quelle ihre Übertragungsrate verringert, wird im Folgenden Verlustzeitpunkt oder Verlustmoment genannt. Mit dem Auftreten eines solchen Verlustzeitpunkts wird die
Übertragungsrate um einen Faktor a ∈ [0, 1] verringert. Dieser Faktor hängt bei TCP von vielen Parametern, u.a. der Version, der Anzahl der Paketverluste in der Überlastphase und der Art des Paketverlustes (mehrfach identisches ACK, TIMEOUT) ab. Wählt man zu bestimmten Zeitpunkten a = 1,
kann man damit potenzielle Verlustzeitpunkte einführen. Denn a = 1 bedeutet nichts anderes, als
dass die Übertragungsrate trotz Auftreten eines Verlustzeitpunktes nicht reduziert wird.
Als ersten Schritt der Leistungsbewertung müssen die Zeitpunkte charakterisiert werden, zu denen
die Übertragungsrate verringert wird. Diese Zeitpunkte werden hier als Punktprozess modelliert, bei
dem ein Punkt des Punktprozesses dem Auftauchen eines Überlastsignals bzw. Kontextverlustes bei
TCP entspricht.
4
Oft werden solche Leistungsbewertungen mit einfachen Modellen, wie z.B. Poisson- bzw. iid-Modellen
durchgeführt. Das bedeutet Abhängigkeiten der Verlustmomente untereinander nicht zu berücksichtigen, sondern als unabhängig voneinander zu betrachten. Messungen bei echten Netzwerken haben
jedoch gezeigt, dass Verlustzeitpunkte keineswegs unabhängig voneinander, sondern meistens gehäuft
auftreten, wie man dies in Abb.1 recht gut erkennen kann.
Abbildung 1: Veränderung der TCP-Fenster durch Überlastsituationen
Normalerweise wird bei TCP das Übertragungsfenster halbiert, sobald eine Überlast erkannt wird.
Im obigen Bild erkennt man jedoch oftmals eine viel stärkere Reduktion, was durch mehrere direkt
aufeinander folgende Halbierungen des Übertragungsfensters zu erklären ist. Um dies zu berücksichtigen gibt es mehrere Wege. Einer wäre die Korrelationen der Verlustzeitpunkte explizit aus den
Netzwerkaufzeichnungen zu ermitteln und in ein relativ einfaches Modell als Parameter einfließen zu
lassen.
Diese Arbeit beschäftigt sich jedoch speziell damit Modelle zu entwickeln, die Korrelation und Häufung
der Verlustzeitpunkte von sich aus berücksichtigen und dadurch die Anzahl der nötigen Parameter für
eine Modellierung möglichst gering halten.
In einer früheren Arbeit [2] präsentierten die Autoren zur Modellierung von AIMD ein 2-ZustandsMarkov-Modell. In der hier behandelten Arbeit wird ein verlustbehafteter Pfad nicht nur mit je einem
Good− und Bad− Zustand, sondern auch mit mehreren potenziellen Verlustzuständen betrachtet.
Dabei kann mit Auftreten einer Überlast die Übertragungsrate nicht nur halbiert, sondern auch stärker
in Vielfachen von 0.5 oder im Fall eines potenziellen Verlustmoments gar nicht reduziert werden.
5
Die Zeitspannen zwischen zwei Verlustzeitpunkten, die nun nicht mehr mit den realen Verlustzeitpunkten übereinstimmen, sondern schon die Häufung mehrerer Verluste berücksichtigen, wird dann
aber als unabhängig und identisch verteilt (iid) angenommen. Vereinfacht gesagt, besteht das Modell aus einem iid-Prozess (z.B. Poisson), der Überlastungen modelliert und einer Markov-Kette, die
den Faktor der Übertragungsratenreduktion zu einem solchen Zeitpunkt bestimmt.
Abbildung 2: 2 Prozesse steuern das Übertragungsfenster
Die Notwendigkeit von mehr als zwei Zuständen zur Beschreibung eines Kanals ist auch durch (modellierte) Ergebnisse von [7, 9] über mobile Satellitenverbindungen motiviert, wo es sich gezeigt hat,
dass dortige Modelle typischerweise mindestens 4 Zustände brauchen.
Nach der Klärung wichtiger Begriffe wird im darauf folgenden Abschnitt zunächst das allgemeine
AIMD-Modell mit N Zuständen vorgestellt. Dieses allgemeine Modell wird dann analysiert, d.h. die
Berechnung der Erwartungswerte und Momente wird vorgeführt. Im vorletzten und wichtigsten Abschnitt werden mehrere Spezialfälle des allgemeinen Modells entwickelt und gezeigt, wie die bestimmenden Parameter aus realen Netzwerkaufzeichnungen ermittelt werden können. Schließlich werden
diese speziellen Modelle miteinander und mit dem “exact fluid model” verglichen.
2 Begriffe
2.1
Überlastbehandlung bei TCP
Wie schon in der Einleitung erwähnt, kennt TCP keine expliziten Überlastnachrichten, sondern erkennt eine Überlast an verschiedenen Ereignissen.
Zum einen geht man bei TCP von einer Überlast aus, wenn innerhalb einer vorgegebenen Zeitspanne
Rückmeldungen, sog. ACKs, ausbleiben, dies bezeichnet man in [6] als TIMEOUT.
Eine weitere Fehlersituation erkennt TCP beim Eintreffen mindestens 3 gleicher ACK-Packete. Damit
will der Empfänger dem Sender signalisieren will, dass Segmente seiner Nachricht verloren gegangen sind und neu gesendet werden müssen. In diesem Fall kann der Sender von Netzwerkproblemen,
6
meistens einer Überlast ausgehen. Je nach Implementierung, kann die Behandlung von TIMEOUT
und “duplicate ACKs” unterschiedlich ausfallen. Hier werden jedoch nur AIMD -Verfahren berücksichtigt.
Die wichtigsten (Kontrollfluss-)Parameter bei TCP-Verbindungen sind
cwnd in Bytes, ist die Größe des aktuellen Übertragungsfensters (congestion window).
SSM S in Bytes, ist die maximale Segmentgröße auf Senderseite (sender segment maximum size).
Dies entspricht im wesentlich der kleinsten MTU1 auf dem Netzwerkpfad. Diese Größe wird
meistens zur linearen Erhöhung des Übertragungsfensters (cwnd) herangezogen.
IW in Bytes, ist die Größe des Übertragungsfensters zu Beginn einer Übertragung (initial window).
RT T in ms die Umlaufzeit eines Paketes im Netzwerk (round trip time).
Die Übertragungsrate X(Bytes/s) ist mit
X=
cwnd
RT T
leicht zu ermitteln. Damit lässt sich die Übertragungsrate direkt durch die Fenstergröße (cwnd) beeinflussen.
Ohne Überlast wird die Größe des Übertragungsfensters mit jedem erfolgreich gesendeten Paket um
einen konstanten Wert, meistens SSM S erhöht, also
cwnd := cwnd0 + SSM S,
wobei cwnd0 das Überlastfenster vor der Erhöhung bezeichnet. Damit entspricht SSM S in dem abstrakten Modell dem α.
Beim Auftreten einer Überlast wird das Übertragungsfenster um einen Faktor a ∈ [0, 1] (meist 0.5, je
nach TCP Version und Überlastereignis) gesenkt.
Nach [6] ist α =
1
RT T 2
oder α =
1
2RT T 2
im sog. delayed acknowledgment mechanism.
Die Größe eines neuen Übertragungsfensters nach Überlast:
cwnd := cwnd0 · a,
wobei auch hier cwnd0 die Fenstergröße vor der Reduktion ist.
1
maximal transfer unit
7
2.2 Stochastische Prozesse, Markov-Prozesse und Ketten
Zur Modellierung von AIMD und vieler anderer dynamischer Systeme werden im Folgenden stochastische Prozesse verwendet. Stochastische Prozesse werden dort benutzt, wo eine deterministische Angabe der gesuchten Größen nicht möglich bzw. zu aufwendig wäre und stattdessen durch eine
Folge von zufälligen Ereignissen approximiert wird.
Definition 2.1 (Stochastischer Prozess)
Ein stochastischer Prozess ist eine Familie von Zufallsvariablen {Xt : Ω → S | t ∈ T } definiert
auf einem (oft nicht näher interessierenden) Wahrscheinlichkeitsraum (Ω, A, P), die alle durch Elemente von T (dem Parameterraum, oft als Zeit angenommen) indiziert sind und den Wertebereich S
(Zustandsraum) besitzen. Die Xt nennt man auch Zustände des Prozesses. Die Folge Xt (ω), ω ∈ Ω
nennt man eine Realisierung eines stoch. Prozesses für das Ereignis ω. Die Abbildung P : t → Xt
oder in äquivalenter Notation P : t → X(t) heißt Pfad des Prozesses {Xt }. Ein Pfad ist also eine
Folge von Zuständen, die der Prozess angenehmen kann.
Durch die Art der Mengen S, T lassen sich bestimmte Typen von Stochastischen Prozessen unterscheiden.
1. S diskret z.B. N, T diskret, z.B. Z:
2. S stetig z.B. R, T diskret, z.B. Z:
3. S diskret z.B. N, T stetig, z.B R:
4. S stetig z.B. R, T stetig,z.B. R:
Da der Parameterraum T meistens die Zeit beschreiben soll, spricht man bei diskreten bzw. abzählbarem T von einem zeitdiskreten stochastischen Prozess, bei kontinuierlichem T von einem zeitkontinuierlichen stochastischen Prozess.
2.2.1
Punktprozesse
Überlastungen treten hier zu zufälligen Zeitpunkten auf. Diese Zeitpunkte können durch eine besondere Art stochastischer Prozesse, sog. Punktprozesse beschrieben werden. Punktprozesse haben
ihren Namen da sie eine Folge zufälliger Punkte in Rd (z.B. d = 1 für die reelle Achse) beschreiben. Die eingangs definierte Folge von Zufallsvariablen {Xt }, t ∈ G, G ⊆ Z sind hier die jeweiligen
Werte zu Zeitpunkten t. Jedes t ∈ G entspricht dabei dem Auftreten eines neuen Punktes.
Es Stochastischer Prozess {Xt }, t ∈ G ⊆ Z heißt Punktprozess, wenn die folgende Einschränkung
für jede Realisierung ω ∈ Ω gilt:
8
· · · ≤ X−1 (ω) ≤ 0 ≤ X1 (ω) ≤ . . . ,
ω∈Ω
Gilt anstatt ≤ sogar < nennt man den Punktprozess einfach. Einfache Punktprozesse besitzen eine
weitere äquivalente Darstellung durch ein sog. Zählmass Φ : B → N, das einem Intervall B ∈
R (einem Element der Borel-σ-Algebra R) die Anzahl der Punkte des zugehörigen Punktprozesse
innerhalb des Intervalls zuordnen. Der Prozess {N (t); t ∈ R} mit N (t) = |{n : Xn ∈ [0, t)}| wird
der zu {Xn } gehörige Zählprozess genannt.
Besitzen die Punkte eines Punktprozesses unterschiedliche Eigenschaften, so kann man diese durch
eine zweite Zufallsvariable, beispielsweise Mt , modellieren, die diese Eigenschaft zum zugehörigen
Punkt ausdrückt.
Diesen Prozess nennt man dann einen markierten Punktprozess {Xt , Mt }. Hier könnte ein Punktprozess die zufälligen Zeitpunkte Xt der Überlastungsmomente des Netzwerkes beschreiben, die zugehörigen Marken Mt dann die aktuelle Datenübertragungsrate widerspiegeln. Man kann einen beliebigen Punktprozess äquivalent durch einen einfachen markierten Punktprozess beschreiben. Dabei
entsprechen die Marken der Anzahl hintereinander gleicher Punkte.
Ein Begriff, der hier im Zusammenhang mit Punktprozessen auftaucht ist die Palm-Verteilung. Um
Punktprozesse und damit die Palm-Verteilung in ihren Einzelheiten zu verstehen, empfiehlt sich entsprechende Fachliteratur [4]. Zur Palm-Verteilung sei hier nur gesagt, dass diese eine Wahrscheinlichkeitsverteilung von Punktprozessen mit der Bedingung darstellt, dass der Punktprozess an gewissen
Stellen (z.B. P 0 für den Nullpunkt) einen Punkt hat.
2.2.2
Poisson-Prozess
Der Poisson-Prozess ist ein einfacher rekurrenter Punktprozesses. Ein Punktprozess heißt rekurrent,
falls die Abstände {Xn+1 − Xn }, n ∈ G\{0} unabhängig und gleichverteilt sind. Poisson-Prozesse
zählen Ereignisse in einem gegebenen Zeitintervall. Die Anzahl dieser Ereignisse ist proportional zur
Länge des Intervalls und zu einem Intensitätsparameter λ, der sog. Ankunftsrate.
Die Anzahl der Ereignisse in einem Zeitintervall der Länge t ist Poissonverteilt und damit gilt:
(λ · t)n
Pn (t) =
exp−λt ,
n!
wobei Pn (t) die Wahrscheinlichkeit dafür ist, dass n Ereignisse zur Zeit t eingetreten sind.
Die Herleitung dieses Ergebnisses folgt aus den speziellen Eigenschaft des Poisson-Prozesses
• P (ein Ereignis tritt im Intervall der Länge ∆t auf) = ∆t · λ + o(∆t)
• P (mehr als ein Ereignis tritt im Intervall der Länge ∆t auf) = o(∆t)
• P (kein Ereignis tritt im Intervall der Länge ∆t auf) = 1 − ∆t · λ + 2 · o(∆t)
9
und soll hier nicht näher betrachtet werden. Der Term o(∆t) ist ein sog. Störterm, der die Eigenschaft
hat schneller als ∆t gegen 0 zu streben.
Wichtig ist, dass die Zeit zwischen zwei Ereignissen {Xn+1 − Xn } exponentialverteilt ist. Daraus
ergibt sich eine Gedächtnislosigkeit des Poisson-Prozesses. D.h. aus der Vergangenheit können keine
Rückschlüsse auf die Zukunft gemacht werden.
Eine beschränkte Abhängigkeit von der Vergangenheit berücksichtigt die folgenden Klasse stochastischer Prozesse, die in diesem Vortrag eine Hauptrolle spielen werden.
2.2.3
Markov-Prozesse, Markov-Ketten
Ein stochastischer Prozess heißt Markov-Prozess, wenn die zukünftige Verteilung der Zufallsvariablen nur von dem aktuellen Zustand des Prozesses abhängt. Formal bedeutet dies, ein Prozess besitzt
die Markov-Eigenschaft bzw. ist markovsch, wenn gilt:
P (Xt = x|Xtn = xn , Xtn−1 = xn−1 , . . . , Xt0 = x0 ) = P (Xt = x|Xtn = xn )
für alle Folgen von Zeitpunkten t0 < t1 < · · · < tn < t.
Diesen Fall nennt man auch Markov-Prozess 1. Ordnung, da man als Verallgemeinerung auch Prozesse zulassen kann, die von m vergangenen Zuständen abhängen. Solche Prozesse nennt man dann
Markov-Prozess m.-Ordnung. Auch der o.g. Poisson-Prozess ist markovsch. Markov-Prozesse gibt es
in allen vier Ausprägungen bzgl. des Zustands- und Parameterraums. Markov-Prozesse mit diskretem
Zustands- und Parameterraum nennt man Markov-Ketten. Markov-Prozesse mit kontinuierlichem
Zustandraum sind schwieriger zu handhaben, lassen sich jedoch auf Markov-Ketten zurückführen.
Für Markov-Ketten lautet die obige Bedingung:
P (Xn+1 = x|Xn = xn , Xn−1 = xn−1 , . . . , X0 = x0 ) = P (Xn+1 = x|Xn = xn ).
Man bezeichnet mit
pij (s, t) = P (X(t) = j|X(s) = i)
die Wahrscheinlichkeit, dass die Markov-Kette unter der Bedingung zum Zeitpunkt s in Zustand i
gewesen zu sein, zum Zeitpunkt t im Zustand j zu sein.
Eine Markov-Kette mit n = |S| Zuständen kann durch die n × n- Übergangsmatrix P = (pij ) und einer Anfangsverteilung p(0) = (p0 , . . . , pn )T vollständig beschrieben werden. Die Zeilensummen von
P ergeben immer 1.
Alternativ kann eine Markov-Kette auch durch ein Zustandübergangsdiagramm dargestellt werden.
Eine Markov-Kette mit 3 Zuständen kann beispielsweise folgendermaßen dargestellt werden:
10


0.2 0.8 0.0
P =  0.5 0.3 0.2 
0.3 0.1 0.6
Abbildung 3: Zustandsdiagramm obiger Markov-Kette
Hängen die Übergangswahrscheinlichkeiten nur von der Zeitdifferenz t − s = ∆t und nicht von den
konkreten Zeitpunkten s und t ab, d.h. gilt
P (X(s + ∆t) = j|X(s) = i) = P (X(∆t) = j|X(0) = i) = pij ,
dann nennt man die Markov-Kette (zeit-)homogen.
Man definiert:
(n)
pij = Wahrscheinlichkeit nach n Schritten von i nach j zu kommen.
Für homogene Markov-Ketten gelten einige Eigenschaften:
• ∀i, j ∈ S . pij ≥ 0.
P
•
i6=j pij = 1
P
(m+n)
(m)
(n)
• pij
= k∈S pik · pk,j (∆s) bzw. Pm+n = Pm + Pn .
Dies ist die Chapman-Kolmogorov-Gleichung für den Fall einer homogenen Markov-Kette.
(n)
• Falls pij ≥ 0 für ein n ist, nennt man den Zustand j von i aus erreichbar.
• Falls i von j und j von i erreichbar sind, kommunizieren sie miteinander. Zustände, die kommunizieren, bilden eine Äquivalenzklasse.
• Wenn alle Zustände in der selben Aquivalenzklasse sind, nennt man die Markov-Kette irreduzibel.
(n)
• Falls d = ggT {n|pii
aperiodisch.
> 0} > 1 gilt, nennt man die Markov-Kette periodisch, andernfalls
11
• ein Zustand, der mit der Wahrscheinlichkeit 1 irgendwann wieder erreicht wird, nennt man
rekurrent.
• Falls die erwartete Anzahl Schritte endlich ist, heißt der Zustand positiv-rekurrent.
• Ist die Markov-Kette positiv-rekurrent, aperiodisch und irreduzibel, so nennt man die MarkovKette ergodisch
Mit Markov-Ketten werden oft Vorgänge modelliert, die eine Art Zugang und Abgang haben; z.B.
ein Server, der innerhalb einer Zeitspanne gewisse Anfragen erhält und abarbeitet. Wenn gewisse
Ankunfts- und Abarbeitungsraten vorgegeben sind, erreicht die Markov-Kette möglicherweise nach
einer gewissen (Einschwing-)Zeit einen Zustand in dem genauso viele Abfragen verarbeitet werden,
wie ankommen. Dann ändern sich die Wahrscheinlichkeiten in einem bestimmten Zustand zu sein
nicht mehr, d.h. die Wahrscheinlichkeiten P (Xn+1 = j|Xn = i) ändern sich ab einem n ≥ n0 nicht
mehr.
Dies ist der Fall, falls die Gleichung
π = Pπ
eine Lösung hat und π nennt man die stationäre Verteilung der Markov-Kette. P = (pij ) ist die Übergangsmatrix der Markov-Kette. Ist eine Markov-Kette irreduzibel und aperiodisch, also insbesondere
auch ergodisch, so existiert diese stationäre Verteilung und ist unabhängig von der Anfangsverteilung p = (p0 , . . . , pn )T . Das bedeutet, dass man nach einer gewissen Einschwingzeit von einer festen
Verteilung ausgehen kann. Dies erleichtert Berechnungen erheblich.
Markov-Prozesse mit diskretem Zustandsraum und kontinuierlicher Zeit gibt es ebenso eine Matrix,
die das Verhalten des Markov-Prozesses bestimmt.
Eine daraus gebildete zeitdiskrete Markov-Kette nennt man die eingebettete Markov-Kette zum entsprechenden Markov-Prozess. Nähere Information zu diesem Thema lassen sich in verschiedenen
Büchern zur Stochastik und stochastischen Prozessen.
2.3
Laplace-Stieltjes-Transformation
Erwartungswerte und höhere Momente insbesondere zusammengesetzter Zufallsvariablen sind oft
schwierig zu berechnen. Daher benutzt man Transformationen, die die Berechnungen vereinfachen
können. Wenn die Transformation eineindeutig ist, ist sie eine alternative Beschreibung für die Ursprungsfunktion. In diesem Fall haben zwei Verteilungsdichten die gleiche transformierte Funktion,
genau dann wenn die Verteilungsdichten gleich sind.
Eine Transformation mit dieser Eigenschaft ist die Laplace-Transformation für kontinuierliche Verteilungen. Die Laplace-Transformatierte der Zufallsvariablen X lautet für die Verteilungsdichte fX (x)
mit fX (x) = 0 für x < 0:
Z ∞
e−s·x fX (x)dx, fürs ≥ 0.
LX (s) =
0
12
Die Laplace-Transformation hat u.a. folgende Eigenschaften:
• Falls LX (s) = LY (s) folgt X = Y .
• LX+Y = LX (s) · LY (s). Ohne Transformation wäre eine aufwendige Faltungsoperation nötig.
• Einfache Berechnung des Erwartungswert, der Varianz und anderer Momente:
E[X] = −L0X (0),
(Der Erwartungswert)
V [X] = L00X (0) − [L0X (0)]2
E[X n ] = (−1)n L(n) (0),
(Die Varianz)
(das n-te Moment)
Die Laplace-Stieltjes-Transformation stellt eine Verallgemeinerung der Laplace-Transformation
auf allgemeinere Funktionen dar, die aber in den hier verwendeten Fällen der Laplace-Transformation
entspricht.
Z
LSTX (s)
∞
=
−st
e
Z
dFX (t)
∞
=
−∞
e−st fX (t)dt
=
LX (s)
−∞
Hiermit sollten die Grundlagen ausreichend angesprochen sein, für weitergehende Information, insbesondere für die Herleitungen und Beweise der kurz vorgestellten Ergebnisse, möge der Leser geeignete Literatur[10] zu Rate ziehen.
3
Das allgemeine Modell zur Leistungsbewertung von AIMD
Zunächst sollen hier einige wichtigen Größen definiert werden.
Es sei X(t) ∈ R die Übertragungsrate zur Zeit t. Beim Spezialfall TCP ist diese äquivalent zur
aktuellen Fenstergröße (windows-size) dividiert durch die Round-Trip-Zeit (RTT) der Verbindung.
Sei K = {1, 2, . . . , N } die Menge möglicher Zustände der Markov-Kette. Das Modell erlaubt in jedem Zustand eine Reduktion der Übertragungsrate (Verlust). Die Wahrscheinlichkeit eines auftretenden Verlustes kann in jedem Zustand unterschiedlich sein. Also wird eine Folge potenzieller Verluste,
mit einer bestimmten zeitlichen Verteilung definiert.
Bezeichne Tn den Zeitpunkt, an der der n-te potenzielle Verlust auftritt. Xn sei die Übertragungsrate
gerade vor Tn .
Das Paar {Tn , Xn } kann nach [4] als ein markierter Punktprozess betrachtet werden.
Sei Dn , n ∈ Z die Folge von Zeitspannen zwischen zwei potenziellen Verlusten, also Dn = Tn+1 −Tn .
Die Dn werden als unabhängig und gleichverteilt, mit dem Erwartungswert d, dem 2. Moment d(2)
und der Laplace-Stieltjes-Transformierten D∗ (s) = E[e−sDn ] angenommen.
13
Abbildung 4: Veränderung der Übertragungsfenster im TCP-Modell
Yn ∈ K bezeichne den Zustand des Kanals zum Zeitpunkt des n-ten potenziellen Verlustmoments.
Es wird angenommen, dass die Folgen {Yn } und {Dn } unabhängig sind und {Yn } eine ergodische
Markov-Kette mit den Übergangswahrscheinlichkeiten
pij = P {Yn+1 = j|Yn = i}, 1 ≤ i, j ≤ N
sei.
Sei P = {pij }N
i,j=1 die Übergangsmatrix von {Yn } und π = Pπ die stationäre Verteilung der mit dem
Kanal assoziierten Markov-Kette.
Als nächstes definiert man N = |K| Zufallsvariablen {Ajn ; ≤ j ≤ N }, die das Verhalten der
Übertragungsrate(n-Reduktion) während eines potenzieller Verlust, abhängig vom Zustand der MarkovKette, beschreiben. Diese Zufallsvariablen legen abhängig vom Zeitpunkt Dn und Zustand j ∈ {1, . . . , N }
fest, ob die Datenübertragungsrate reduziert wird und um welchen Faktor. D.h. diese Variablen {Ajn ; 1 ≤
j ≤ N } korrespondieren mit den N möglichen Zuständen des Markov-Modells und nehmen Werte
im Intervall [0, 1] an.
Die Wahl des reellen oder rationalen Intervalls [0, 1] bedeutet, dass die Übertragungsrate in Verlustzeitpunkten um einen gewissen Faktor heruntergesetzt wird. Da die 1 mit eingeschlossen ist, muss ein
potenzieller Verlust nicht immer zu einem wirklichen Absenken der Übertragungsrate führen.
14
Jedes Ajn ; 1 ≤ j ≤ N hat eine Verteilungsfunktion F j (a) für alle n ∈ Z. D.h. es wird angenommen,
die Verteilung von Ajn seien zeithomogen.
Z
1
a dF i (a), 1 ≤ i ≤ N
ai :=
0
Es wird angenommen, dass mindestens ein ai < 1 ist. Die obige Schreibweise nennt man RiemannStieltjes-Intregral, eine verallgemeinerte Form des Integrals und bezeichnet hier nichts anderes als
den Erwartungswert
Z
1
af i (x)dx.
ai = E[Ain ] =
0
Die Dynamik des Systems kann durch folgende stochastische Rekurrenzgleichung beschrieben werden.
Xn+1 =
N
X
Ajn Xn 1{Yn = j} + αDn .
(1)
j=1
(2)
4 Leistungsbewertung des allgemeinen Modells
Zunächst stellt man fest, dass Gleichung (1) ein Spezialfall einer linearen stochastischen Differenzengleichung vom Typ Xn+1 = βn Xn + γn ist, wobei {βn , γn } stationäre und ergodische Prozesse
sind. (Man betrachtet die Markov-Kette {Yn } bereits als im stationären Zustand). Es folgt aus [5] und
[1], dass diese Gleichungen eine stationäre Lösung Xn∗ gegeben durch
Xn∗
∞
n−1
X
Y
=
(
βi )γn−k−1
k=0 i=n−k
haben.
Der stationäre Zustand existiert unter der Annahme, dass für mindestens ein 1 ≤ i ≤ N a < 1
ist. Darüber hinaus konvergiert für jedem Anfangszeitpunkt X0 die Folge {Xn } fast sicher zu einem
stationären Zustand, so dass
lim |Xn − Xn∗ | = 0,
n→∞
P-fast sicher
gilt.
Daher können wir o.B.d.A. annehmen, dass der Prozess {Xn } in einem stationären Zustand ist, um
darauf die Grenzverteilung zu berechnen können. Also berechnet man die Momente von Xn in der
Annahme eines stationären Zustands.
15
Es seien
1≤i≤N
xi = E[Xn 1{Yn = i}],
die Erwartungswerte der Übertragungsrate abhängig vom Zustand der Markov-Kette. Offensichtlich
ist der Erwartungswert des gesamten Kanals durch
E[Xn ] =
N
X
xi ,
i=1
also durch Aufsummierung über die Zustände der Markov-Kette, gegeben.
Um diese xi , 1 ≤ i ≤ N zu berechnen, wird der Laplace-Stieltjes-Transformation Ansatz verwendet.
Und zwar definiert man für die einzelnen xi die folgende Laplace-Stieltjes-Transformation:
W (s, i) = E e−sXn 1{Yn = i} ,
1 ≤ i ≤ N,
wobei wir annehmen, dass Xn in stationärem Zustand ist.
Satz 4.1 Die Laplace-Stieltjes-Transformierten W (s, j), 1 ≤ j ≤ N, sind Lösungen der folgenden
impliziten Gleichung:
"
W (s, j) = D∗ (αs)
N
X
i=1
Z
pij
#
1
W (as, i)dF i (a) 1 ≤ j ≤ N
(3)
0
Beweis: Wir schreiben für ein beliebiges j, 1 ≤ j ≤ N ,
E[e−sXn+1 1{Yn+1 = j}] =
=
=
=
=
PN
−sXn+1
1{Yn+1 = j|Yn = i}]P (Yn = i)
i=1 E[e
PN
−sXn+1
E[e
|Yn = i]E[1{Yn+1 = j|Yn = i}]P (Yn = i)
Pi=1
N
−s(Ain Xn +αDn )
|Yn = i]pij P (Yn = i)
i=1 E[e
PN R 1
∗
−saXn
D (αs) i=1 0 E[e
|Yn = i]dF i (a)pij P (Yn = i)
R
P
1
−saXn
D∗ (αs) N
1{Yn = i}]dF i (a)
i=1 pij 0 E[e
2
Dies ergibt die implizite Gleichung (3).
Hier sind im wesentlichen die Momente, also Erwartungswert und 2. Moment wichtig. Obwohl die
Laplace Stieltjes Transformierten in Satz 4.1 nur als Lösungen der impliziten Gleichung gegeben
sind, können alle Momente von Xn 1{Yn = i} für 1 ≤ i ≤ N (in dem stationären Zustand) explizit
gewonnen werden.
16
Es gilt
E[xkn 1{Yn
dk W (s, i) = i}] = (−1)
.
dsk s=0
k
Nun fährt man mit der Berechnung der Ausdrücke für das erste und zweite Moment von Xn 1{Yn = i}
für 1 ≤ i ≤ N von den impliziten Ausdrücken der Laplace Stieltjes Transformation fort. Unter Benutzung der folgenden Beziehungen
1 ≤ i ≤ N,
dD∗ (αs) ∗
D (0) = 1,
= −αd,
ds s=0
W (0, i) = πi ,
erhält man N lineare Gleichungen mit N Unbekanten:
xj =
N
X
pij ai xi + αdπj
1 ≤ j ≤ N.
(4)
i=1
Diese Gleichungen kann man mit x = [x1 , . . . xn ] und



A=

a1 0
0 a2
..
..
.
.
0 0
...
...
...
0
0
..
.





. . . aN
in Matrixnotation aufschreiben. Danach nehmen die Gleichungen (4) folgende Form an:
x = AP + αdπ
(5)
Oben wurde festgelegt, dass für alle i ∈ K 0 ≤ ai ≤ 1 gilt. Weiterhin wurde angenommen,
dass es mindestens ein i ∈ K gibt, für das ai < P
1 wird. Damit P
ist garantiert, dass die Matrix AP
substochastisch ist, d.h. es gibt ein i für das gilt N
p
a
<
j=1 ij i
j=1 pij = 1. Weiterhin gilt für
substochastische Matrizen, dass die Beträge aller Eigenwerte strikt kleiner als 1 sind. Daher hat die
Matrix I − AP einen Eigenwert ungleich 0 und folglich die Gleichung (9) eine eindeutige Lösung.
Zusammenfassend bekommt man folgendes Ergebnis:
17
Satz 4.2 Sei Xn in stationärem Zustand. Dann ist E[Xn ] gegeben durch
E[Xn ] = xe = αdπ(I − AP)−1 e,
wobei e ein Vektor aus Einsen ist.
Ähnlich verfährt man zur Berechnung des zweiten Moments von Xn und definiert zunächst die 2.
Momente abhängig von den einzelnen Zuständen der Markov-Kette
(2)
xi = E[Xn2 1{Yn = i}], 1 ≤ i ≤ N.
und summiert ebenfalls wieder über alle Zustände und erhält
E[Xn2 ] =
N
X
(2)
xi .
i=1
(2)
(2)
(2)
Es seien x(2) = [x1 , x2 , . . . , xN ] und

(2)
A


=

(2)
a1
0
..
.
0
0 ...
0
(2)
a2 . . .
0
..
..
..
.
.
.
(2)
0 . . . aN



,

wobei
(2)
ai
Z
=
1
a2 dF i (a),
1 ≤ i ≤ N.
0
Der nächste Satz gibt einen expliziten Ausdruck für E[Xn2 ] an:
Satz 4.3 Sei {Xn } in stationärem Zustand und es gibt mindestens ein ai < 1. Dann ist E[X 2 ] gegeben
durch
E[Xn2 ] = x(2) e = 2αd(xAP) + α2 d(2) π (I − A(2) P)−1 e.
Beweis: Durch zweimalige Differenzierung der impliziten Gleichung (2) erhält man
18
" N
#
X Z 1 d2 W (as, i)
d2 W (s, j)
= D∗ (αs)
pij
dF i (a)
2
ds2
ds
0
i=1
" N
#
Z 1
d2 D∗ (αs) X
+
pij
W (as, i)dF i (a)
ds2
0
i=1
" N
#
Z
1
dD∗ (αs) X
dW (as, i) i
+ 2
pij
dF (a)
ds
ds
0
i=1
(6)
(7)
(8)
(9)
Wie zur Berechnung der Momente nötig, wertet man die obigen Ableitungen bei s = 0 aus und erhält
(2)
xj
=
N
X
(2) (2)
pij ai xi
+ 2αd
i=1
N
X
pij ai xi + α2 d(2) πj
i=1
Als nächstes wird die Gleichung in Matrixnotation umgeschrieben:
x(2) = x(2) A(2) P + 2αd(xAP) + α2 d(2) π,
und beim Auflösen nach x(2) erhält man
x(2) = 2αd(xAP) + α2 d(2) π (i − A(2) P)−1 .
Die Existenz von (I − A(2) P)−1 ist garantiert, da A(2) P wiederum eine substochastische Matrix ist.
P
PN
(2)
Also sind die Summen der Elemente der i-ten Reihe von A(2) P N
j=1 pij aj <
j=1 pij = 1.
2
Der Erwartungswert der Übertragungsrate wurde zunächst nur zu den Verlustmomenten Tn berechnet.
Dieser Erwartungswert wird auch als Palm-Erwartung im Kontext von markierten Punktprozessen [4] bezeichnet. Natürlich ist man hauptsächlich an der Berechnung des Erwartungswertes der
Übertragungsrate zu einem beliebigen Zeitpunkt t also X(t) unabhängig von Verlustmomenten interessiert. Für ergodisch Prozesse fällt dieser gesuchte Erwartungswert mit dem zeitdurchschnittlichen
P-f.s. - Grenzwert.
Z
1 T
x = lim
X(t)dt
T →∞ T 0
zusammen.
Dies ist nichts anderes als der durchschnittliche Durchsatz der TCP-Verbindung. Es ist genau die
gesamte Menge der übertragenen Daten dividiert durch die Übertragungszeit. Zur Auswertung dieses
Durchsatzes wird jetzt das Konzept der Palm-Wahrscheinlichkeit angewandt.
19
Satz 4.4 Der Durchsatz, bzw. die durchschnittliche Übertragungsrate, ist durch
x = E[X(t)] =
N
X
i=1
1 d(2)
1 d(2)
ai x i + α
= axT + α
,
2 d
2 d
mit a = [a1 , a2 , . . . , aN ] und x entsprechend Satz 4.2.
Beweis:
Zur Berechnung von E[X(t)] kann man die folgende Inversionsformel (z.B. aus [4] Char.1 Sec.4)
Z
1 0 T1
E[X(t)] = E [
X(t)dt],
d
0
wobei E 0 [.] der mit der Palm-Verteilung assoziierter Erwartungswert ist, verwenden.
Also gilt:
1
E[X(t)] = E 0 [
d
Z
0
T1
N
X
(
Ai0 X0 1{Y0 = i} + αt)dt]
i=1
Wegen der Unabhängigkeit von Xn und {Dk , k ≥ n} und wegen der Unabhängigkeit von {Dn } und
{Yn } gilt
N
1X 0 i 0
α
E[X(t)] =
[
E [A0 ]E [X0 1{Y0 = i}] E0 [D0 ]] + E 0 [D02 ]
d i=1
2d
=
N
X
i=1
1 d(2)
1 d(2)
ai x i + α
= axT + α
2 d
2 d
(10)
(11)
2
Im nächsten Satz wird das 2. Moment der Übertragungsrate zu einem beliebigen Zeitpunkt ausgewertet. Das zweite Moment der Übertragungsrate beschreibt wie stark die Übertragungsrate variiert.
Dieser Wert könnte für Echtzeit-Anwendungen über TCP (z.B. Audio- oder Videoübertragungen) interessant sein. Für diese Anwendungen könnte es nötig sein, α und a anders zu wählen, um die Ozillation der Übertragungsrate zu minimieren ohne dabei den Durchsatz zu verschlechtern. Eine “glattere”
Übertragungsrate ist z.B. auch für “Quality of Service” - Dienste, die empfindlich auf Verzögerungen
reagieren, erforderlich. Schließlich gilt es noch Fairness-Aspekte des Datendurchsatzes zu berücksichtigen.
20
Satz 4.5 Sei d(3) das dritte Moment der Zeit zwischen zwei Verlustzeitpunkten. Das zweite Moment
der Übertragungsrate über einen langen Zeitintervall ist gleich:
x
(2)
(2)
(2)
Z
1 t 2
= lim
X (t)dt
t→∞ t 0
1 2 d(3) 1 (2) T
=
α
+ αd αx + a(2) x(2)
3
d
d
(12)
(13)
(2)
wobei a(2) = [a1 , a2 , . . . , aN ] wie in Satz 4.3 gegeben ist.
Beweis: Mit der Inversionformel der Palm-Wahrscheinlichkeit gilt
E[X 2 (t)] =
=
=
=
=
R
1 0 T1
2
E
[
d
0 X (t)dt]
R T1 PN
1 0
i
E
i=1 A0 X0 1{Y0
d
0
2 = i} + αt dt
h 2 3
i
PN
PN
1 0 α D0
2
i
i 2 2
E
+ αD0 i=1 A0 X0 1{Y0 = i} + i=1 (A0 ) X0 1{Y0 = i}D0
d
3
PN
PN (2) 2
1 2 d(3)
1
(2)
α
+
αd
a
x
+
i
i
i=1
i=1 ai xi
3
d
d
1 2 d(3)
1
(2)
T
(2) (2)T
α d + d αd ax + a x
3
2
Für den allgemeinen Fall einer Markov-Kette mit N Zuständen sind nun folgende Ausdrücke für folgende Werte berechnet worden:
Erwartungswert (EW) der Übertragungsrate zu Verlustmomenten
2. Moment der Übertr. zu Verlustmomenten
EW der Übertragungsrate zu beliebigen Zeitpunkten
2. Moment der Übertragungsrate zu beliebigen Zeitpunkt
E[Xn ]
E[Xn2 ]
x = E[X(t)]
x2 = E[X 2 (t)]
Die Parameter, die zu diesem Modell aus Netzwerkaufzeichnungen ermittelt werden könnten sind:
linearer Erhöhungsfaktor
Durchschnittlich Zeitspannen zwischen 2 Verlustmomenten (VM)
2. Moment der Zeitspannen zwischen 2 VM
3. Moment der Zeitspannen zwischen 2 VM
Übergangsmatrix der Markov-Kette (MC)
Verteilung der Reduktionsraten zu jedem Zustand der MC
dazu Durchschnitt der Reduktionsraten
2. Moment der Reduktionsraten
21
α
d
d(2)
d(3)
P = (pij ), 1 ≤ i, j ≤ N
Ai , i ∈ K
ai , i ∈ K
(2)
ai i ∈ K
Im folgenden Abschnitt wird gezeigt, wie die Parameter des Modells von echten TCP-Traces ermittelt werden können. Mehrere unterschiedliche Spezialisierungen des allgemeinen Modells werden auf
dem gleichen TCP-Trace verglichen, um zu zeigen, welche Spezialisierung die effizienteste Näherung
beschreibt.
5 Spezialfälle des allgemeinen Modells
In diesem Abschnitt werden nun verschiedene Wege für die Anwendung des allgemeinen Modells zur
Vorhersage der Performance eines TCP-ähnlichen Flusskontroll-Mechanismus präsentiert.
Als Vergleich dient das sog. “exact fluid model” (EFM), welches auf realen Netzwerkaufzeichnungen basiert, jedoch die AIMD-Strategie etwas idealisiert. Das “exact fluid model” entsteht aus einer
realen Aufzeichnung dadurch, dass man zwischen zwei Verlustzeitpunkten die Erhöhung des Überlastfensters und damit der Übertragungsrate, linear rekonstruiert. Anschaulich heißt das, man zieht
eine Linie angefangen bei der letzten Reduktion bis hin zur nächsten. Die Übertragungsrate in realen
TCP - Verbindungen steigt nicht linear, sondern sub-linear, da mit Vergrößerung des Überlastfensters
im realen Netzwerken auch die RTT leicht ansteigt. Damit wird die Übertragungsrate nicht linear steigen, sondern etwas langsamer. Eine Modellierung dieses sub-linearen Verhaltens ist außerordentlich
schwierig und wäre mit den einfachen Modellen hier nicht machbar. Da hier jedoch von der Annahme eines AIMD - Protokolls ausgegangen wird, könnte ein Vergleich mit einem realen, nicht-linearen
TCP-Trace einem falschen Modell bessere Annäherung attestieren als einem richtigen. Ebenso bleibt
unberücksichtigt, dass das Übertragungsfenster nicht unendlich wächst.
Die Experimente zur Ermittlung realer TCP-Traces wurden an langzeit New-Reno TCP Verbindungen zwischen “clope.inria.fr” bei INRIA und “nessie.essi.fr” bei ESSI durchgeführt. Beide sind im
Technologypark Antipolis in Frankreich beheimatet. Die zwei Maschinen sind am gleichen Stadtnetzwerk (metropolitan) angeschlossen. Die TCP Verbindung wurde elf mal für ungefähr 20 min. zu
den stärkst frequentierten Zeiten (zwischen 10 Uhr und 14 Uhr) gestartet. Der Trace der Verbindung
wurde an der Quelle mit tcpdump protokolliert und es wurde ein Programme entwickelt, dass in
den Traces die Zeitpunkte ermittelte, an dem die Größe des Überlastfenster durch 2 geteilt wurde.
Man bemerkte, dass der häufigste Fall eines Paketsverlust durch den “Fast Retransmit”-Alogrithmus
(3 gleiche ACKs) ausgelöst wurde. Ferner stellte man fest, dass das durch den Empfänger angebotene
maximale Übertragungsfenster in Hochlastzeiten kaum erreicht wurde. Also kann man erwarten, dass
unser “exact fluid model” das Verhalten des Übertragungsfenster korrekt approximiert.
5.1 Das Basis-Modell
Im einfachsten Fall, kann der Pfad und damit die Markov-Kette nur einen einzigen Zustand annehmen.
Die Übertragungsrate wird also bei jedem Paketverlust einfach halbiert.
Unter der Annahme, dass die Zeiten zwischen zwei Paketverlusten unabhängig und gleich verteilt
sind, ergibt dies folgenden Ausdruck für den Durchsatz
22
1 d(2)
E[X(t)] = αd + α
.
2 d
Dieses Modell muss genau dann sehr gute Ergebnisse zu dem “exact fluid model” liefern, falls die
Paketverlustzeiten tatsächlich unabhängig und gleichverteilt sind. In der Tat lassen Experimente keine
Korrelation zwischen Paketverlustzeiten erkennen und Abb. 5 bestätigt diese Vermutung. Der Durchsatz, der durch obige Formel gegeben ist, entspricht sehr genau dem des “exact fluid model”. Das
Problem dieses Modells ist jedoch, dass zur Berechnung des Durchsatzes das 2. Moment d(2) der
Verlustzwischenzeiten bekannt sein muss. Diese Größe ist relativ schwierig zu berechnen, da es die
Kenntnis aller Verlustzeitspannen der modellierten Verbindung voraussetzt. Im Gegensatz dazu kann
d einfach berechnet werden indem man die Anzahl der Verluste durch die Übertragungszeit teilt. Die
Anzahl der Verluste kann im Gegenzug durch die Verlustauftrittswahrscheinlichkeit berechnet werden. Daher wäre es wünschenswert, die Größe d(2) durch verfeinerte Modellierung zu eliminieren.
Ein Weg um d(2) zu eliminieren ist d(2) durch eine Funktion von d auszudrücken. Als Beispiel könnte
man annehmen, dass die Verlustzwischenzeiten in Form eines Poisson-Prozess auftreten. Dann ist
d(2) = 2d2 . Das Problem an dieser Lösung ist, dass es die Wirkung von Häufungen versteckt und den
Durchsatz nur als Funktion eines Durchschnittswert ausdrückt wird.
Abb. 5 zeigt tatsächlich, dass der dem Poisson-Modell angelehnte berechnete Durchsatz nicht sehr
gut mit dem “exact fluid model” übereinstimmt. Der Grund für diese Abweichung ist klar in Abb. 6
zu sehen, die ein Histogramm der Verlustzwischenzeiten skizziert. Diese Abbildung zeigt eine Abweichung der Verlustzwischenzeiten von einer exponentialverteilten Form. Diese Abweichung wird
durch das Auftauchen von Verlusthäufungen, welche einen Wahrscheinlichkeitsausschlag um den Ursprung verursachen, hervorgerufen. Tatsächlich stellt man bei echten TCP-Traces fest, dass das Überlastfensterinfolge von Paketverlusten in mehreren aufeinander folgenden Round-Trips oft mehrfach
verkleinert wurde. Aber als weitere Beobachtung konnte man erkennen, dass die Zeiträume zwischen
zusammengefassten Verlustzeitpunkten durchaus annähernd exponential verteilt sind. Abb. 8 zeigt die
Verteilung der Zeiten zwischen Verlusten nach der Entfernung des Ausschlags um den Ursprung. In
den nächsten zwei Abschnitten werden zwei Modelle vorgestellt, die dieses Häufungsverhalten der
Verluste berücksichtigen.
5.2
Zusammengefasste Verlustmomente
Aus Abb. 6 kann man erkennen, dass die Verteilung der Verlustzeitspannen eine Mischung aus zwei
Verteilungen ist, eine repräsentiert die Zeit während eines gehäuften Auftretens von Verlustzeitpunkten und liegt um den Ursprung. Eine andere Verteilung jenseits des Ursprung beschreibt die Zeiten
zwischen zwei Verlustmomenten. Dies regt an, die Verluste innerhalb der Häufungen zu einem einzigen Verlust zusammenzufassen. Dabei wird bei einem Verlust das Übertragungsfenster nicht nur halbiert, sondern mit einem Vielfachen von 0.5 multipliziert. Dieser zusammengefasste Verlustprozess
kann nun als Poisson-Prozess betrachtet werden. Beim Auftreten eines zusammengefassten Verlustes,
wird die Übertragungsrate durch einen zufälligen Faktor größer (oder gleich) 2 geteilt. Die Frage ist
23
Abbildung 5: Vergleich von Poisson, iid und exakter Fluss
nun, wie eine Häufung charakterisiert wird, oder anders ausgedrückt, wie entscheidet man, ob zwei
aufeinander folgende Verluste in der selben Spitze sind und zusammengefasst werden oder zu zwei
Spitzen (bursts) gehören. In diesem Abschnitt wird folgende empirische Methode benutzt; man schaut
sich die Verteilung der Verlustzwischenzeiten an und versucht einen Punkt zu finden, welcher die zwei
Verteilungen klar trennt. In Abb. 7 sind die Verlustzwischenzeiten um den Ursprung vergrößert dargestellt. Man erkennt gut, dass zwei Spitzen ungefähr durch δ = 0.4s getrennt werden. Nun kann
man δ zur Identifikation von Spitzen benutzen. Im Folgenden werden zwei Wege präsentiert, um das
Verhalten des zufälligen Reduktionsfaktors zu beschreiben.
Der erste Weg ist anzunehmen, dass dieser Reduktionsfaktor unabhängig gleichverteilt ist. Der zweite
Weg ist ihn mit einer Markov-Kette zu modellieren.
Zunächst wird der Fall des gleichverteilten unabhängigen Reduktionsfaktors betrachtet. Die Entwicklung der Übertragungsrate wird in diesem Fall durch
Xn+1 = An Xn + αDn
gegeben, wobei der Reduktionsfaktor An eine Verteilungsfunktion F (a) hat. Dn bezeichnet die Zeit
zwischen zwei Spitzen und kann als Poisson-Prozess angenähert dargestellt werden. Diese Situation
kann als ein Spezialfall des allgemeinen Modells angesehen werden, wo der Pfad nur einen Zustand
hat.
24
Abbildung 6: Histogramm der Verlustzwischenzeiten
Das allgemeine Ergebnis von Abschnitt 3 und 4 kann für den aktuellen Fall folgendermaßen spezialisiert werden,
αd
1−a
E[Xn ] =
x = E[X(t)] =
αda
1 d(2)
+ α
,
1−a 2 d
(14)
R1
wobei a = 0 adF (a) ist. Hier ist der Reduktionsfaktor An eine diskrete Zufallsvariable, welche
Vielfache von 0.5 annimmt. Kann der Erwartungswert a mit
a=
m
X
1
p
i i
2
i=1
berechnet werden.
Die Wahrscheinlichkeiten pi müssen vom TCP-Trace geschätzt werden. Sei n die Gesamtzahl von
gehäuften Verlustmomente im Trace. Dann ist
25
Abbildung 7: Histogramm der Zeiten zwischen Verlustspitzen
pi =
n
X
1{ak = 1/2i }/n
k=1
Der Gewinn dieses Verfahrens der Zusammenfassung der Verlustzeitpunkte ist, dass für das zweite
Moment von Dn nun 2d2 annehmen kann. Weiterhin kann man aus Abb. 7 erkennen, dass die Verteilung von Dn durch eine verschobene exponentielle Verteilung gegeben ist, deren Zeiten zwischen
zwei zusammengefassten Verlustmomenten immer größer als δ ist. Eine genauere Abschätzung des
zweiten Moments kann man mit der Formel
d(2) = δ 2 − 2δd + 2d2
erreichen.
Es folgt das erste Modell mit einer Markov-Kette mit mehr als einem Zustand. Durch diese MarkovKette wird der Reduktionsfaktor modelliert. Man ordnet dem Pfad also eine Mehr-Zustands-MarkovKette zu. Die Transitionen der Markov-Kette finden bei zusammengefassten Verlustzeitpunkten statt.
Dabei ist der Zustand der Markov-Kette bei einen zusammengefassten Verlustmoment gleich der Anzahl der Verluste innerhalb dieser Spitze. Die Markov-Kette legt fest, wie oft die Übertragungsrate
26
Abbildung 8: Histogramm der Verlustzwischenzeiten innerhalb der Spitzen
halbiert wird. Ein Intervall von 0.4s kennzeichnet in den hier vorliegenden Aufzeichnungen zusammenhängende Verlustmomente. Die Entwicklung der Übertragungsrate kann dann wie folgt beschrieben werden,
Xn+1 =
N
X
aj 1{Yn = j}Xn + αDn ,
(15)
j=1
wobei aj eine Konstante gleich 1/2j und Yn der Zustand der Markov-Kette ist. Dn beschreibt nach wie
vor die Zeiten zwischen den Spitzen, die durch einen Poisson-Prozess angenähert modelliert werden
können. Als ein Korollar aus Satz 4.3 kann der Durchsatz folgendermaßen berechnet werden:
x = E[X(t)] =
N
X
j=1
aj x j +
αd(2)
,
2d
Die Schätzung der Übergangswahrscheinlichkeiten pˆij , i, j = 1, . . . , N der Markov-Kette {Yk } müssen
aus dem Trace der TCP-Verbindung auf folgende Weise identifiziert werden:
27
pˆij =
n−1
X
1{Yk+1 = j|Yk = i}/
k=1
n−1
X
1{Yk = 1},
k=1
wobei der Zustand Yk der Markov-Kette mit der Anzahl der Übertragungsratenreduktionen beim Eintritt des k-ten zusammengefassten Verlustes korrespondieren und n die Anzahl der zusammengefassten Verlustmomente bezeichnet. Falls die Anzahl der Reduktionen größer als N ist, bleibt die
Markov-Kette im Zustand N . Daher sollte N so gewählt werden, dass es recht unwahrscheinlich ist,
die Übertragungsrate mehr als N mal während einer Spitze zu reduzieren Diese Annahme sollte keine
Probleme bereiten. Im Folgenden ist N = 4.
Bei einer maximalen Distanz der Verluste von 0.4s während einer Spitze, fasst man die Verlustmomente in Spitzen zusammen in denen die Übertragungsrate durch zwei dividiert wurde. Wie zuvor nehmen wir an, dass der resultierende Prozess für die zusammengefassten Verlustzeitpunkte ein
Poisson-Prozess ist.
Wir nähern den Durchsatz des EFM unter Benutzung der Gleichungen (14) und (15) an. Abb. 10
zeigt die Ergebnisse. Das iid batch model zeigt den ersten Fall, wo die Zahl der Verlustmomente
innerhalb einer Spitze durch eine gleichverteilte unabhängige Zufallsvariable beschrieben worden
sind. Das Markovian Batch Model bezeichnet den zweiten Fall, wo diese Zahl als eine MarkovKette beschrieben wird. Diese zwei Methoden liefern fast das selbe Ergebnis, was bedeutet, dass die
Verluste innerhalb einer Übertragungsspitze nahezu gleichverteilt und unabhängig sind.
Das Ergebnis ist aber näher am EFM als der angenäherte Durchsatz des Poisson-Modells. Jedoch ist
es nicht so gut wie erwartet. Der Hauptgrund dafür ist, dass die Länge einer Spitze ignoriert wird,
welche vergleichbar mit der Zeit zwischen zwei Spitzen ist. Für andere Verbindungen, wo solche
Spitzen zusammenhängender sind, könnten diese Modelle bessere Ergebnisse liefern. Man könnte
erwarten, dass die Markov-Version unseres Modells bei Verbindungen mit starker Korrelation zwischen Spitzenlängen besser als die iid-Version annähert. Im nächsten Unterabschnitt wird ein Modell
präsentiert, dass zusätzlich auch die Länge einer Spitze mit berücksichtigt.
5.3 Das Zwei-Zustands-Modell
Im abschließend betrachteten Spezialfall des allgemeinen Modells, wechselt der Pfad der MarkovKette zwischen zwei unterschiedlichen Zuständen hin- und her. Also ist N = 2 und es korrespondiere
der Zustand 1 mit einem Good - Zustand und der Zustand 2 mit einem Bad - Zustand. In beiden
Zuständen können echte Verluste auftreten, jedoch mit unterschiedlicher Wahrscheinlichkeit. Wie
die Bezeichnung es schon vermuten lässt, ist die Wahrscheinlichkeit im Bad-Zustand höher einen
potenziellen in einen echten Verlustmoment umzuwandeln. Damit bestimmt die Markov-Kette die
Verlustrate bei auftretenden potenziellen Verlustmomenten. Je höher die Wahrscheinlichkeit im BadZustand ist, desto gehäufter treten die Verlustmomente auf.
Die Übergangswahrscheinlichkeiten der Markov-Kette seien wie folgt:
28
Abbildung 9: Transitionen der Mehrzustands-Markov-Kette
p11 = g, p12 = g = 1 − g, p21 = b = 1 − b, p22 = b.
also
P=
g
1−g
1−b
b
.
Die stationäre Verteilung dieser Kette lässt sich leicht berechnen als
π1 =
b
,
b+g
π2 =
g
.
b+g
Die folgenden Ergebnisse erhält man direkt als Korollare aus den Sätzen des allgemeinen N -Zustandsmodells.
Satz 5.1 Die Laplace Stieltjes Transformierten W (s, i), i = 1, 2, sind die Lösungen der folgenden
impliziten Gleichungen,
∗
Z
1
1
W (s, 1) = D (αs)[g
∗
1
W (as, 1)sF (a)] + D (αs)[b
0
∗
Z
Z
W (s, 2) = D (αs)[g
W (as, 2)dF 2 (a)]
(16)
W (as, 2)dF 2 (a)]
(17)
0
1
1
∗
Z
W (as, 1)sF (a)] + D (αs)[b
0
1
0
(18)
29
Abbildung 10: Vergleich der verschiedenen Modelle
Ferner werden expliziten Ausdrücke für das 1. und 2. Moment der Übertragungsrate berechnet.
Satz 5.2 Das 1. Moment (Erwartungswert) der Übertragungsrate zu einem potenziellen Verlustmoment ist gegeben durch
E[Xn ] = x1 + x2 ,
wobei
a2 (π2 − b) + π1
1 − a2 b − a1 g + a1 a2 (g + b − 1)
a1 (π1 − g) + π2
= αd
1 − a2 b − a1 g + a1 a2 (g + b − 1)
x1 = αd
(19)
x2
(20)
(21)
sind
Satz 5.3 Das 2. Moment der Übertragungsrate zu einem potenziellen Verlustzeitpunkt ist gegeben
durch
30
Abbildung 11: Nicht jede Überlast führt zur Senkung der Übertragungsrate.
Abbildung 12: Zustandsdiagramm der Markov-Kette
(2)
(2)
E[Xn 2 ] = x1 + x2 ,
wobei
(2)
(2)
x1 =
(2)
(2)
(2)
x2
(2)
2αda1 a2 x1 (1 − g − b) + 2αd(a2 x2 g + a1 x1 g) + α2 d(2) (a2 π2 + π1 − ba2 )
(2)
(2)
(2) (2)
1 − ga1 − ba2 − a1 a2 (1 − g − b)
(2)
(2)
2αda1 a2 x2 (1 − g − b) + 2αd(a1 x1 g + a2 x2 b) + α2 d(2) (a1 π1 + π2 − ga1 )
=
.
(2)
(2)
(2) (2)
1 − ga1 − ba2 − a1 a2 (1 − g − b)
Satz 5.4 Der Durchsatz, oder die durchschnittliche Übertragungsrate, ist damit
1 d(2)
E[X(t)] = a1 x1 + a2 x2 + α
2 d
wobei x1 und x2 den obigen Gleichungen entnommen werden kann.
31
Satz 5.5 Das zweite Moment der Übertragungsrate zu einem beliebigen Zeitpunkt ist durch
(2) (2)
(2) (2)
E[X 2 (t)] = a1 x1 + a2 x2 +
(2)
αd(2) (a1 x2 + a2 x2 ) 1 2 d(3)
+ α
d
3
d
(2)
gegeben, wobei wiederum x1 , x2 und x1 , x2 den obigen Gleichungen entsprechen.
Die Ajn spezialisieren das Modell weiter. Ajn für j ∈ {1, 2} und ∀n ≥ 0 sei eine diskrete Zufallsvariable, die die Werten in {0.5, 1} annimmt.
Ajn = 0.5 repräsentiert dabei, dass ein potenzieller in einen tatsächlichen Verlustmoment umgewandelt wird, also die Übertragungsrate wirklich reduziert wird. Dagegen repräsentiert Ajn = 1 den Fall,
dass die Übertragungsrate zu einem potenziellen Verlustmoment nicht reduziert wird. Hier ist das
selbe Modell wie in [3] beschrieben. In [3] wurde durch Simulation ein Spezialfall dieses ZweiZustandsmodell, nämlich pG = 0, pB = 1, überprüft. Dies ist ein Extremfall in dem alle Verlustmomente als gehäuft angenommen werden.
Hier wird zusätzlich gezeigt, wie man die verschiedenen Parameter des Zwei-Zustandsmodell im allgemeinen Fall anhand eines Traces setzt. {Dn } sei die Folge der Zeiten zwischen zwei Verlusten. Wir
bezeichnen außerdem pg := P {A1n = 0.5} = 1 − P {A1n = 1}, als die Wahrscheinlichkeit des Ereignisses, wenn ein pot. Verlust in einen echten Verlust im Zustand Good umgewandelt wird. Analog
wird die Wahrscheinlichkeit einen potenziellen Verlust im Bad Zustand in einen echten umzuwandeln als pB := P {A2n = 0.5} = 1 − P {A2n = 1} definiert. Es wird angenommen, dass pG ≤ pB ist.
Offensichtlich sind die Erwartungswerte,
1
a1 = E[A1n ] = 1 − pG
2
und
1
a2 = E[A2n ]1 − pB .
2
Nun wird gezeigt, wie die oben eingeführten Parameter, sowie d die Transitionsmatrix P aus echten
TCP-Traces ermittelt werden können. Als erstes wird eine Abschätzung der Transitionsmatrix für die
Markov-Kette {Yn } berechnet. {Yn } ist ja die Markov-Kette, die den Zustand des Kanals während eines potenziellen Verlustmomentes beschreibt. Sei {Sk } eine Folge von Verlustzwischenzeiten, die an
einem realen TCP-Trace gemessen wurden. Nun muss festgelegt werden, wann der Pfad im Zustand
Good und wann im Zustand Bad ist. Es wird folgende einfache Methode benutzt. Zunächst wähle
man einen Zeitintervall τ , wie dieser zu wählen ist, wird später erklärt. Wenn die Verlustzwischenzeit Sn kleiner als τ ist, dann ist der Pfad im Bad-Zustand, andernfalls im Good-Zustand. Falls zwei
oder mehr Verlustzwischenzeiten mit dem selben Zustand korrespondieren, dann legen wir diese InB
tervalle zusammen und nennen den neuen Intervall LG
k oder Lk abhängig vom Zustand. Diese neuen
Intervalle repräsentieren die Zeit zwischen denen der Pfad entweder im Good- oder im Bad-Zustand
ist. Bezeichne nG (bzw. nB ) die Anzahl der Zeitintervalle SkG (resp. SkB ) innerhalb des Messzeitraumes. Die Entwicklung des Pfad der gemessenen TCP-Verbindung kann dann als ein Markov-Prozess
kontinuierlicher Zeit beschrieben werden, mit der folgenden infinitesimalen Generatormatrix,
Q =
−σG
σG
σB
−σB
32
(22)
wobei die Raten σG und σB folgendermaßen berechnet werden;
σG =
1
nG
≈ PnG G ,
G
E[Sk ]
k=1 Sk
σB =
1
nB
≈ Pnb B .
B
E[Sk ]
k=1 Sk
Auf manchen Pfaden, z.B. auf einer drahtlosen Verbindung, ist diese Markov-Kette a priori bekannt
und kann direkt ohne Sicht des TCP-Traces benutzt werden. In dem Fall wo sie nicht bekannt ist,
müssen die obigen Parameter unter Benutzung von τ berechnet werden.
Jetzt fehlt noch die Methode, ein sinnvolles τ zu ermitteln. Zwei Ansätze um τ zu ermitteln, werden
nun vorgestellt. Der erste ist etwas empirischer. Wir schauen auf das Histogramm der Verlustzwischenzeiten und wählen τ als die Zeit, die die zwei enthaltenen Verteilungen trennt. (0.4s im Fall
von Abbildung 6). Die zweite Methode ist weniger empirisch und wird im Kontext von Markovmodulierten Poisson-Prozessen[8] benutzt.
Im zweiten Ansatz definiert man den Parameter τ als den Erwartungswert der Verlustzwischenzeiten,
dieser ist
n
1X
τ = E[Sk ] ≈
Sk ,
n k=1
wobei n die Anzahl der Verlustzwischenzeiten des gemessenen TCP-Trace ist. Ist die zu dem Kanal
assoziierte zeitkontinuierliche Markov-Kette gegeben, so kann man die Parameter der eingebetteten
diskreten Markov-Kette während der potenziellen Verlustzeitpunkte extrahieren. Zu diesem Zweck
benutzt man die “Uniformisation”-Technik aus [11]. Man betrachtet den Verlustprozess {Dn } als
einen Poisson-Prozess mit der Intensität 1/d höher als beide σG und σB . Zum Beispiel wäre die
Abschätzung der durchschnittlichen RTT der Verbindung eine vernünftige Wahl für d. Durch die
“uniformisations”-Technik kann der Pfad des zeitkontinuierlichen Prozesses 22 als Abtastwerte zu
den Verlustzeitpunkten, durch eine Markov-Kette (mit diskreter Zeit) gleichwertig beschreiben werden. Die Transitionsmatrix diese Markov-Kette lautet dann
P =
1 − dσG
dσG
dσB
1 − dσB
.
Nachdem d gewählt und σG und σB von dem Trace der Verbindung berechnet ist, können die Parameter b und g dieses Verlustmodells einfach ableitet werden. Nämlich, g = dσG und b = dσB . Nun
wird noch pG und pB ermittelt. Seien ωkG (ωkB ) die Anzahl der tatsächlichen Verluste im Zeitintervall
SkG (bzw. in SkB ). Dann sind die Wahrscheinlichkeiten pG und pB folgendermaßen gegeben:
PnG G
P G G
ωk
d nk=1
ω
k=1
pG = PnG G = PnG Gk = dλG ,
k=1 Sk /d
k=1 Sk
PnB B
P B B
ωk
d nk=1
ω
k=1
pB = PnB B = PnB Bk = dλB .
k=1 Sk /d
k=1 Sk
1/λG und 1/λB repräsentieren die durchschnittliche Zeit zwischen den Fensterreduktionen im Good
Zustand und entsprechend im Bad Zustand. Für die gleichen 11 Traces unseres Experiments haben
33
wir die Parameter dieses Modells berechnet. Wir benutzten τ = δ = 0.4s um den Bad Zustand
vom Good Zustand zu unterscheiden. In Abb. 10 vergleichen wir die Ergebnisse mit dem “Exakten
Fluss Modell”. Es wurde eine gute Übereinstimmung festgestellt. Trotz der guten Ergebnissen und der
geschlossenen Form der Ausdrücke hat dieses Modell sehr einfach Parameter. Alles was wir benötigen
um die Durchsatz anzunähern ist der Parameter, der mit dem Pfad assoziierten zwei - Zustands Markov-Kette und die Intensität der Verluste in beiden Zuständen. Bezüglich des Parameters d reicht
es einen Weg zu wählen, so dass die Intensität der potenziellen Verluste 1/d höher ist, als die Intensität
der Verluste im Bad Zustand λB .
6 Zusammenfassung
In diesem Vortrag wurden Mehrzustands-Markov-Ketten, d.h. hier Markov-Ketten mit mehr als 2
Zuständen, zur Beschreibung der Datenübertragungsrate unter Netzüberlast eingesetzt. Diese Modelle können später zum Entwurf von Überlastbehandlungen, die spezielle Anforderungen an die Übertragung bereitstellen, herangezogen werden. Stichwort: QoS, z.B. bei Videoübertragung. Dazu wurde
zunächst ein allgemeines Modell mit einer N -Zustands-Markov-Kette vorgestellt. Dieses Modell besteht grob gesagt aus einem Punktprozess, der die eintreffenden Überlastmomente modelliert und
einer Markov-Kette, die die Reduktion der Übertragungsrate beschreibt. Für dieses allgemeine Modell wurde in der anschließenden Leistungsbewertung Erwartungswert und Varianz, d.h. das 1. und
2. Moment der Übertragungsrate zu den Verlustzeitpunkten berechnet. Dazu wurde u.a. die LaplaceStieljes-Transformation zur einfacheren Berechnung diese Werte benutzt. Danach wurde gezeigt, wie
man die eigentlich interessanten Werte nämlich Erwartungswert und Varianz der Übertragungsraten
zu beliebigen Zeitpunkten berechnet. Mit den fertigen Formeln des allgemeinen Modells wurden anschließend 3 verschiedene Spezialisierungen vorgestellt. Das erste benutzt lediglich einen Zustand
und beschreibt deshalb nur unabhängig auftretenden Überlasten gut. Das nächste Modell hat dann
mit einer variablen Zahl von Zuständen die Häufung von Überlastsituationen modelliert. Dabei sollte
die Zustandzahl mindestens der maximal hintereinander auftretenden Verlustmomente entsprechen.
Zu den dann seltener auftretenden zusammengefassten Verlustmomenten wurde die Übertragungsrate abhängig vom Zustand der Markov-Kette um Vielfache von 0.5 reduziert. Eine Zeitspanne für
zusammenhängende Überlastmomente wurde lediglich empirisch aus den Verteilungen der Verlustmomente gewonnen. Die Ergebnisse waren nicht so gut wie erwartet, was darauf zurückzuführen ist,
dass die Verlustmomente in den Traces tatsächlich relativ gleichverteilt auftraten und die Längen der
Überlastspitzen nur unzureichend berücksichtigt.
Schließlich wurde ein Modell mit 2 Zuständen vorgestellt, das sich dadurch auszeichnet nun potenzielle Verlustmomente einzuführen, die nicht immer mit einer Reduzierung der Datenübertragungsrate
einhergehen müssen. Der Zustand der Markov-Kette beschreibt mit welcher Wahrscheinlichkeit ein
potenzieller Verlust in eine tatsächliche Reduzierung umgewandelt wird. Die Werte dieses Modells
lieferten die besten Ergebnisse, jedoch sind die Parameter relativ kompliziert zu ermitteln. Als Vergleich für die obigen Modelle diente das “Exact Fluid Model”, welches den linearen Anstieg der
Übertragungsrate nach der Überlast idealisiert. Die Berücksichtigung sublineare Steigerungen ist eine Thema folgender Arbeiten. In einigen Arbeiten wurden diese Modelle bereits verfeinert. So wird
34
hier noch nicht berücksichtigt, dass das Übertragungsfenster beschränkt ist. Abschließend sind die
Eigenschaften verschiedenen Fälle noch einmal tabellarisch zusammengestellt:
exact fluid model
Zustandsraum
der MC
-
zu suchende Parameter
-
Basis-Modell
1
d, d(2) , Ajn
iid-Batch-model
1
d, E[Ajn ] = a
Modell
multi-state model
two-state model
Approximierung
Besonderheiten
genau
gut, aber aufwendige
Parametersuche
und unabhängige und
gleichverteilte Dn
gut
Ausgangsbasis
ca. 4
d,
P = (pij )1≤i,j≤4
gut, aber nicht so gut
wie erwartet
2
p G , pB ,
P = (pij )1≤i,j≤2 ,
B
SkG , SkB , LG
k , Lk
sehr gut, da auch die
Längen der Spitzen
berücksichtigt wurden.
n Verlustmomente innerhalb ≤ 0.4s werden
zu einem mit Reduktion
2n zusammengefasst
6.1 Literaturverzeichnis
Literatur
[1] Stochastic vector difference equations with stationary coefficients. J. Appl. Prob., Vol. 32, pages
851–866, 1995.
[2] Eitan Altman, Konstantin Avrachenkov, and Chadi Barakat. TCP in presence of bursty losses.
In Measurement and Modeling of Computer Systems, pages 124–133, 2000.
[3] Eitan Altman, Konstantin Avrachenkov, and Chadi Barakat. TCP in presence of bursty losses.
In Measurement and Modeling of Computer Systems, pages 124–133, 2000.
[4] F. Bacelli and P. Bremaud. Elements of queuing theory: Palm-Martingale calculus and stochastic recurrences. 1994.
[5] A. Brandt. The stochastic equation yn+1 = an yn + bn with stationary coefficients. Adv. Appl.
Prob., Vol. 18, pages 211–220, 1986.
[6] W. Stevens M. Allman, V. Paxson. Rfc 2581 - tcp congestion control. IETF, 1999.
[7] M. Wilkinson M. Rahmen, M. Bulmer. Error models for land mobile satellite channels. Australian Telecommunication Research, Vol. 25, No 2, pages 61–88, 1991.
35
[8] K.S. Meier-Hellstern. A fitting algorithm for markov-modulated poission processes having two
arrival rates. Euro. J. Oper. Res., Vol. 29,, pages 370–377.
[9] B. Vucetic and J. Du. Channel modeling and simulation in satellite mobile communication
systems. IEEE J. on Selected Areas in Communication, Vol. 10, No. 8, pages 1209–1218, 1992.
[10] Prof. Dr. B. Walke. Skript zu Kommunikationsnetze und Verkehrstheorie II. Lehrstuhl für Kommunikationsnetze an der RWTH-Aachen, 2000.
[11] J. Walrand. An Introduction to queuing networks. Prentice Hall, 1988.
** Ende **
36
Herunterladen