Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler...

49
Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn

Transcript of Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler...

Page 1: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Verteilte Algorithmen und Datenstrukturen

Kapitel 2: Routing und Scheduling

Christian Scheideler

Institut für Informatik

Universität Paderborn

Page 2: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing und Scheduling

• Routing: finde Weg von A nach B• Scheduling: koordiniere Paketbewegun-

gen über Kanten

A

B

Page 3: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing

Problem: finde mit möglichst geringem Koordinierungsaufwand Wege, so dass

• Weglänge (Dilation) so kurz wie möglich ist und

• möglichst wenige Wege über dieselbe gerichtete Kante wollen (Congestion)

Einfachste Lösung: oblivious Routing (Wege hängen nur von Quell-Ziel-Paaren ab)

Page 4: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing

Oblivious Routing für Graph G=(V,E):

• Wegesystem P = ∪s,tPs,t mit nichtleerer Wegemenge Ps,t für alle Quell-Ziel-Paare (s,t)∈V2 (P wird anfangs berechnet)

• Gewichtsfunktion w:P→ℝ+,so dass für alle (s,t)∈V2: ∑p∈Ps,t w(p) = 1.

1/3

2/3

s t

Page 5: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing

Verwendung eines Wegesystems mit ∑p∈Ps,t w(p) = 1 für alle (s,t)∈V2:

Realität:• Zerteile „großes“ Paket bzw. Paketstrom mit Quell-Ziel-

Paar (s,t) in Teile, so dass ein Bruchteil der Größe w(p) entlang p∈Ps,t geschickt wird.

• Schicke „kleines“ Paket mit Quell-Ziel-Paar (s,t) entlang p∈Ps,t mit Wahrscheinlichkeit w(p).

Hier:• Ein Paket mit Quell-Ziel-Paar (s,t) entspricht Paar (s,t)

im Mehrfachflussproblem mit Anforderung 1.

Page 6: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing

Verwendung eines Wegesystems mit ∑p∈Ps,t w(p) = 1 für alle (s,t)∈V2:

Hier:Ein Paket mit Quell-Ziel-Paar (s,t) entspricht Paar (s,t) im Mehrfachflussproblem mit Anforderung 1.

Lösung des Routingproblems:• Mehrfachfluss S, der jedem Paket mit Quell-Ziel-Paar

(s,t) einen (s,t)-Fluss fs,t mit Wert |fs,t|=1 zuweist.

• Congestion C(S): maxe∈E f(e)/c(e)

• Dilation D(S): längster Flusspfad in S

Page 7: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing im Gitter

Wegesystem P für n×n-Gitter:• Für jedes Paar (x1,y1),(x2,y2)∈[n]2:

route erst von (x1,y1) nach (x2,y1), dann von (x2,y1) nach (x2,y2).

• D.h. eindeutiger Weg pro Quell-Ziel-Paar.

x-y-Routing Strategie

(x1,y1) (x2,y1)

(x2,y2)

Page 8: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing im Gitter

„Benchmark“ für Routingstrategie: kann die Strategie beliebige Permutationen p:V→V mit geringer Dilation und Congestion routen? (D.h. die Quell-Ziel-Paare sind bestimmt durch (v,p(v)) mit Anforderung 1 alle v∈V).

Theorem 2.2: Die x-y-Routingstrategie kann jede Permutation im n×n-Gitter mit Con-gestion und Dilation höchstens d routen, wobei d die maximale Distanz eines Quell-Ziel-Paares ist.

Page 9: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing im Gitter

Beweis:

(x2,y2)

(x1,y1) Weg p

Dilation:• p hat Länge d((x1,y1),(x2,y2))• also ist max. Weglänge d

Congestion:• betrachte Kante e in x-Richtung

Weg p

e

• maximal d Wege p können über e laufen, also ist Congestion in x-Richtung maximal d

• dasselbe gilt auch in y-Richtung

Page 10: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing im Hypercube

Bitanpassungsstrategie:Weg von (x1,...,xd) nach (y1,...,yd) führt über (y1,x2,...,xd), (y1,y2,x3,...,xd), (y1,y2,y3,x4,...,xd), ...

• Dilation: optimal, da Weglänge gleich Distanz• Congestion: es gibt Permutationen, die sehr

hohe Congestion haben!

Beispiel: sei p(x1,...,xd) = (xd,...,x1) für alle (x1,...,xd)

Page 11: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Routing im Hypercube

Beispiel: sei p(x1,...,xd) = (xd,...,x1) für alle (x1,...,xd)

• Betrachte KnotenmengeM={ (x1,...,xd/2,0,...,0) | xi∈{0,1} für alle i∈{1,...,d/2} }

• Nach d/2 Routingschritten gemäß p sind alle Pakete mit Quelle in M im Knoten (0,...,0)

• Da |M|=2d/2 = 2d = n ist, kann Congestion wesentlich größer als Dilation (maximal log n) sein. Bestmöglich wäre Congestion O(1)!

Page 12: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Borodin-Hopcroft Schranke

Theorem 2.3: Für jeden Graphen G der Größe n mit Grad d und jede oblivious Routing Strategie mit nur einem Pfad pro Quell-Ziel-Paar gibt es eine Permutation p, für die ein Knoten von mindestens n/d Pfaden durchlaufen wird.

Beweis:Tafel (siehe auch Skript)

Page 13: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Frage: gibt es oblivious Routingstrategien, die für alle Permutationen eine niedrige Congestion haben?

Antwort: ja, aber wir brauchen mehrere Pfade pro Quell-Ziel-Paar.

Strategie:

• konstruiere zunächst Wegesystem P´ = ∪s,t P´s,t basierend auf optimaler Lösung zur Flusszahl

• Konstruiere aus P´ Wegesystem P = ∪s,t Ps,t ähnlich zum Beweis von Theorem 1.14

Page 14: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Konstruktion von P´:• Sei G=(V,E,c) das gegebene Netzwerk. • S: optimale Lösung zum speziellen Mehrfachfluss-

problem für G, das der Flusszahl F zugrunde liegt, d.h. F=max{C(S),D(S)}

• fv,w: Fluss in S von v nach w

• Für jeden Pfad p von v nach w in fv,w fügen wir den Pfad p zu P´v,w hinzu mit Gewicht w(p) = |fp|/|fv,w|.

• Damit gilt dann ∑p∈P´v,w w(p) = 1, d.h. P´ = ∪s,t P´s,t ist ein gültiges Wegesystem.

Page 15: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Konstruktion von P:• Ps,t = { p=q1∘q2 | q1∈P´s,v und q2∈P´v,t für ein

v∈V } (∘: Konkatenation)• Für alle p=q1∘q2 in Ps,t:

w(p) = w(q1)w(q2)c(v)/c(V).

• Damit ist ∑p∈Ps,t w(p) = 1, d.h. P = ∪s,t Ps,t ist ein gültiges Wegesystem.

s tv

Page 16: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Eigenschaften von P:• Betrachte beliebiges BMFP mit Anforderungen ds,t für

jedes Quell-Ziel-Paar (s,t)• Betrachte nur die erste Hälfte aller Wege in P für BMFP• Flusswert von s nach v:

∑t ds,t ∑q1∈P´s,v ∑q2∈P´v,t w(q1)w(q2)c(v)/c(V) = c(s)c(v)/c(V)

• Also Congestion F, da spezielles BMFP für F!

s tv

Page 17: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Resultat:

Theorem 2.6: Mit Valiants Trick kann in jedem Netzwerk mit Flusszahl F jedes BMFP mit Congestion höchstens 2F und Dilation höchstens 2F geroutet werden.

Page 18: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Beispiel: d-dimensionaler Hypercube• Ein optimales Wegesystem für das spezielle

BMFP zur Flusszahl F ist die Bitanpassungsstrategie.

• P´s,t besteht lediglich aus einem Weg für jedes Knotenpaar (s,t) im Hypercube, d.h. P´s,t = {ps,t} für einen Weg ps,t mit w(ps,t)=1.

• Also ist Ps,t = { ps,v,t = ps,v∘pv,t | v∈V } mit w(ps,v,t)=d/(dn) = 1/n.

Page 19: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Ist das Wegesystem wirklich gut?• Betrachte eine beliebige Permutation p.• Zunächst wird für jede Quelle s das Paket über n Knoten v „verteilt“ • Dilation: maximal d bis v, also insgesamt maximal 2d.• Congestion: betrachte feste Kante e entlang Dimension i{1,…,d}.• Mit der Bitanpassungsstrategie gibt es 2i-1 mögliche Quellen für e.• Weiterhin können 2d-i Ziele nach Überquerung von e erreicht werden.• D.h. die Anzahl der Quell-Ziel-Paare, dessen Pfade e kreuzen, ist

gleich 2i-1 2d-i = 2d-1 = n/2.• Da jeder dieser Pfade ein Gewicht von 1/n hat, ist die Congestion n/2

1/n = ½.• Da diese Congestion zweimal entsteht (von der Quelle zum

Zwischenziel, und vom Zwischenziel zum Ziel), ist die Congestion 1.

Page 20: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Valiants Trick

Allgemein folgt analog zu Theorem 2.6:

Theorem 2.5: Mit Valiants Trick kann im Hypercube jedes BMFP mit Congestion höchstens d und Dilation höchstens 2d geroutet werden.

Page 21: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Nahezu optimales Wegesystem für das spezielle BMFP zur Flusszahl F ist die x-y-Routingstrategie.

Aus Theorem 2.6 folgt: mit Valiants Trick kann jedes BMFP im n×n-Gitter mit Dilation und Congestion maximal O(n) geroutet werden.

Problem: für einige BMFPs viel bessere Lösungen möglich

Page 22: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

• Kürzeste Wege (x-y-Routing):niedrige Dilation, aber evtl. hohe Congestion

• Valiants Trick:im worst case Dilation und Congestion nahezu optimal, aber für Quell-Ziel-Paare geringer Distanz Dilation und Congestion viel zu hoch

Page 23: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Beispiel:

s1 s2 ... sm

t1

t2

tm

x-y-Routing:• Dilation: OPT• Congestion: m

...

Page 24: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Beispiel:

s1 s2 ... sm

t1

t2

tm

Valiants Trick:• Dilation: ~2n• Congestion: ~m

...

Page 25: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Beispiel:

s1 s2 ... sm

t1

t2

tm

y-x-Routing:• Dilation: OPT• Congestion: OPT

...

Page 26: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Beispiel:

t1 t2 ... tm

s1

s2

sm

y-x-Routing:• Dilation: OPT• Congestion: m

...

Page 27: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Problem: Gibt es eine oblivious Routing-strategie für das n×n-Gitter, die für alle Routingprobleme nahezu optimale Congestion und Dilation erreicht?

• COPT: bestmögliche Congestion (bel. Dilation)

• DOPT: bestmögliche Dilation (= max. Distanz)

Theorem 2.7: Es gibt eine oblivious Routing-strategie, die für jedes Mehrfachfluss-problem Congestion O(COPT log DOPT) und Dilation O(DOPT) hat.

Page 28: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Routing von s nach t:• Sei Ms,t das kleinste 2k×2k-Gitter (oder falls nicht möglich, das

Gesamtgitter), das s in einer Ecke hat und t enthält.• Der Fluss von s nach t wird zunächst gleichmäßig über gemischtes x-

y und y-x Routing auf ein 2×2-Gitter über s verteilt, dann auf ein 4×4-Gitter über s, usw., bis der Fluss gleichmäßig über Ms,t verteilt ist.

• Danach wird der Fluss in umgekehrter Form nach t hin konzentriert.

s

t

Page 29: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Routing von s nach t anschaulich:

Page 30: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Beweis von Theorem 2.7:

Dilation:• Angenommen, Ms,t ist ein 2k×2k-Gitter. Dann haben

s und t eine Distanz von mindestens 2k-1. Auf der anderen Seite hat der längste Flusspfad unserer Routingstrategie eine Länge von höchstens2 Si=0

k-12(2i-1) + 2(2k-1) ≤ 42k + 22k = 62k

• Das ist nur um einen konstanten Faktor über der Distanz

• Also ist die Dilation D=O(DOPT).

Page 31: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Oblivious Routing im Gitter

Congestion:• Zu zeigen: für alle k ist die Congestion, die

durch das Routing in den 2k×2k-Gittern der Quell-Ziel-Paare verursacht wird, O(COPT).

• Da es nur log DOPT verschiedene k-Werte gibt, ist die Gesamtcongestion

O(COPT log DOPT ).

• Rest des Beweises: Tafel (siehe Skript)

Page 32: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Scheduling

Zentrale Frage: wie bewegt man am effektivsten Pakete entlang der gewählten Wege?

Modell:• Netzwerk mit gerichteten Kanten mit Kapazität 1.• Jede gerichtete Kante kann pro Zeiteinheit ein Paket befördern.• Pakete werden kontinuierlich in das Netzwerk injiziert (wie in der

Realität).• Jedem Paket wird bei der Injektion ein fester Weg vorgegeben

(wie beim oblivious Routing).• Injektionen und Wegewahl sind unter gegnerischer Kontrolle (zur

Ermittlung des worst-case Verhaltens), aber Gegner darf nicht mehr Pakete injizieren als das Netzwerk verkraften kann.

Page 33: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Scheduling

Gegnerisches Injektionsmodell:• (w,l)-beschränkter Gegner für ein w∈ℕ und

0<l≤1• Für jedes Zeitintervall der Länge w und jede

gerichtete Kante e injiziert der Gegner höchstens lw Pakete mit Pfaden, die über e verlaufen.

• Da jede gerichtete Kante nur ein Paket pro Zeiteinheit befördern kann, muss l≤1 sein, damit die Anzahl der Pakete im System nicht gegen läuft

Page 34: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Scheduling

• Scheduling-Protokoll: bestimmt, in welcher Reihenfolge die Pakete die Kanten durchlaufen.

A

B

Page 35: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Scheduling

• Scheduling-Protokoll: bestimmt, in welcher Reihenfolge die Pakete die Kanten durchlaufen.

• Ein Scheduling-Protokoll ist stabil für ein l und ein Netzwerk G, falls die Anzahl der Pakete in G für jeden beliebigen (w,l)-beschränkten Gegner zu jedem Zeitpunkt beschränkt ist.

• Ein Protokoll, das für alle l<1 und alle Netzwerke G stabil ist, heißt universell stabil.

Page 36: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Scheduling

Annahme: jede Kante hat einen (prinzipiell unbeschränkten) Puffer für ausgehende Pakete.

Einfache Queueing-Regeln für die Kantenpuffer:• FIFO (first in first out): bedient die Pakete in der Reihenfolge ihres

Eintreffens im Puffer (Standard in Routern).• NTO (nearest to origin): gibt dem Paket Vorzug, das bisher den geringsten

Weg zurückgelegt hat.• FTG (furthest to go): gibt dem Paket Vorzug, das noch den längsten Weg

vor sich hat.• NTG (nearest to go): gibt dem Paket Vorzug, das noch den kürzesten Weg

vor sich hat.• SIS (shortest in system): bevorzugt das jüngste Paket.• LIS (longest in system): bevorzugt das älteste Paket.

Page 37: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Theorem 2.8: SIS ist universell stabil.

Beweis:Tafel (siehe auch Skript)

Theorem 2.9: LIS ist universell stabil.

Beweis:Tafel (siehe auch Skript)

Page 38: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Theorem 2.10: Für l≥0,85 gibt es ein Netzwerk und einen Gegner, für den FIFO instabil ist.

Beweis:

Induktion: in Phase j mind s+j Pakete mit Weg (eifi) in Puffer von ei für i=j mod 2 und konstantes s

e0

f´0 f0

e1

f´1 f1

Page 39: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Induktionsanfang: Phase 1

e0

f´0 f0

e1

f´1 f1

s+2 Pfade, über die Pakete mit Restweg (e0f0) injiziert werden.

Page 40: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Anfangs: m=s+j Pakete mit Restweg (e0f0)

e0

f´0 f0

e1

f1

m × (e0f0)

Page 41: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 1: m Schritte

Injektionen: lm × (e0f´0e1f1), lm × (f0)

e0

f´0 f0

e1

f1

m × (e0f0) lm × (e0f´0e1f1) lm × (f0)

Page 42: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 1: m Schritte

Am Ende übrig:

e0

f´0 f0

e1

f1

lm × (e0f´0e1f1) lm × (f0)

Page 43: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 2: lm Schritte

Injektionen: l2m × (f0e1f1), l2m × (f´0)

e0

f´0 f0

e1

f1

l2m × (f0e1f1)

lm × (f0)l2m × (f´0)

lm × (e0f´0e1f1)

mischen sich

Page 44: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 2: lm Schritte

Am Ende übrig:

e0

f´0 f0

e1

f1

l2m × (f0e1f1)

l2m/(1+l) × (f´0e1f1), l3m/(1+l) × (f´0)

Page 45: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 3: l2m Schritte

Injektionen: l3m × (e1f1)

e0

f´0 f0

e1

f1

l2m × (f0e1f1)

l2m/(1+l) × (f´0e1f1), l3m/(1+l) × (f´0)

l3m × (e1f1)

Page 46: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 3: l2m Schritte

Am Ende übrig:

e0

f´0 f0

e1

f1

l3m+l2m/(1+l) × (e1f1)

Page 47: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

Betrachte o.B.d.A. beliebige gerade Phase j.

Stufe 3: l2m Schritte

Für l≥0,85 gilt l3+l2/(1+l)>1, d.h. >m × (e1f1).

e0

f´0 f0

e1

f1

l3m+l2m(1+l) × (e1f1)

Page 48: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Universelle Stabilität

• D.h. FIFO im Gitter kann nicht Stabilität für alle l<1 sicherstellen.

• Bramson: FIFO stabil für stochastisches Injektionsmodell.

Vorteil von FIFO: robust gegen Manipulation von Paketen (in LIS können z.B. Pakete durch ein sehr hohes Alter bevorzugt behandelt werden).

Page 49: Verteilte Algorithmen und Datenstrukturen Kapitel 2: Routing und Scheduling Christian Scheideler Institut für Informatik Universität Paderborn.

Fragen?