Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Gertrúd Lederman Geändert vor über 10 Jahren
1
HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen des Internets Sommersemester 2005 09.05.2005 5. Vorlesung Christian Schindelhauer schindel@upb.de
2
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 2 Heute Überblick Das Internet: Einführung und Überblick Mathematische Grundlagen IP: Routing im Internet TCP: Das Transport-Protokoll des Internets –Fenster und Congestion-Fenster –TCP Tahoe, TCPReno –Das Lastbalancierungsspiel –AIMD: Lösung des Lastbalancierungsspiel –TCP Vegas Die Struktur des World Wide Web und des Internets Suche im Web Web-Caching im Internet Peer-to-peer-Netzwerke Angriffe auf das Internet
3
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer TCP ist.. … ein verbindungsorientierter, zuverlässiger Dienst für bidirektionale Byteströme Verbindungsorientiert –Zwei Parteien identifiziert durch Socketpaar: IP-Adresse und Port –Kein Broadcast oder Multicast –Verbindungsaufbau und Ende notwendig, d.h. Verbindung aktiv, bis (ordentlich) beendet Zuverlässig –Jedes Datenpaket wird bestätigt (acknowledgment) –Erneutes Senden von unbestätigten Datenpakete –Checksum für TCP-Header und Daten –TCP nummeriert Pakete und sortiert beim Empfänger Bidirektionale Byteströme –Zwei gegenläufige Datenströme aus einzelnen Bytes –Möglichst zeitnahe Auslieferung jedes einzelnen Datenbytes, aber Zeitverhalten der Datenfolgen kann verändert werden –Versucht Übertragungsmedium effizient und fair zu nutzen durch Anpassung der Datenrate
4
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 4 Stauvermeidung in TCP Tahoe (congestion avoidance) Jacobson 88: –Parameter: cwnd und Slow-Start-Schwellwert (ssthresh=slow start threshold) –S = Datensegmentgröße = maximale Segmentgröße Verbindungsaufbau: cwnd S ssthresh 65535 Bei Paketverlust, d.h. Bestätigungsdauer > RTO, –multiplicatively decreasing cwnd Sssthresh Werden Segmente bestätigt und cwnd ssthresh, dann –slow start: cwnd cwnd + S Werden Segmente bestätigt und cwnd > ssthresh, dann additively increasing cwnd cwnd + x 1 x x +1 y max y x/2 x 1 x 2 x, bis x = y x: Anzahl Pakete pro RTT
5
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 5 TCP Tahoe
6
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 6 Fast Retransmit und Fast Recovery TCP Tahoe [Jacobson 1988]: –Geht nur ein Paket verloren, dann Wiederversand Paket + Restfenster Und gleichzeitig Slow Start –Fast retransmit Nach drei Bestätigungen desselben Pakets (triple duplicate ACK), sende Paket nochmal, starte mit Slow Start TCP Reno [Stevens 1994] –Nach Fast retransmit: ssthresh min(wnd,cwnd)/2 cwnd ssthresh + 3 S –Fast recovery nach Fast retransmit Erhöhe Paketrate mit jeder weiteren Bestätigung cwnd cwnd + S –Congestion avoidance: Trifft Bestätigung von P+x ein: cwnd ssthresh x y + 3 y x/2
7
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 7 Stauvermeidungsprinzip: AIMD Kombination von TCP und Fast Recovery verhält sich im wesentlichen wie folgt: Verbindungsaufbau: Bei Paketverlust, MD:multiplicative decreasing Werden Segmente bestätigt, AD: additive increasing x 1 x x +1 x x/2
8
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 8 Beispiel: TCP Reno in Aktion Slow Start Additively Increase Fast Recovery Fast Retransmit Multiplicatively Decrease
9
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 9 Durchsatz und Antwortzeit Klippe: –Hohe Last –Geringer Durchsatz –Praktisch alle Daten gehen verloren Knie: –Hohe Last –Hoher Durchsatz –Einzelne Daten gehen verloren
10
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 10 Ein einfaches Datenratenmodell n Teilnehmer, Rundenmodell –Teilnehmer i hat Datenrate x i (t) –Anfangsdatenrate x 1 (0), …, x n (0) gegeben Feedback nach Runde t: –y(t) = 0, falls –y(t) = 1, falls –wobei K ist Knielast Jeder Teilnehmer aktualisiert in Runde t+1: –x i (t+1) = f(x i (t),y(t)) –Increase-Strategie f 0 (x) = f(x,0) –Decrease-Strategief 1 (x) = f(x,1) Wir betrachten lineare Funktionen:
11
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 11 Lineare Datenratenanpassung Interessante Spezialfälle: –AIAD: Additive Increase Additive Decrease –MIMD: Multiplicative Increase/Multiplicative Decrease –AIMD: Additive Increase Multiplicative Decrease
12
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 12 Fairness und Effizienz Effizienz –Last: –Maß Fairness: Für x=(x 1, …, x n ): –1/n F(x) 1 –F(x) = 1 absolute Fairness, d.h. x i = x j, für alle i,j –Skalierungsunabhängig –Kontinuierlich, stetig, differenzierbar –Falls k von n fair, Rest 0, dann F(x) = k/n
13
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 13 Konvergenz Konvergenz unmöglich Bestenfalls Oszillation um Optimalwert –Oszillations-amplitude A –Einschwingzeit T
14
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Vektordarstellung (I)
15
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Vektordarstellung (II)
16
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 16 AIAD Additive Increase –Falls x 1 + x 2 K x 1 x 1 + a I x 2 x 2 + a I Additive Decrease –Falls x 1 + x 2 > K x 1 x 1 + a D x 2 x 2 + a D –a I > 0 –a D < 0
17
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 17 MIMD Multiplicative Increase –Falls x 1 + x 2 K x 1 x 1 b I x 2 x 2 b I Multiplicative Decrease –Falls x 1 + x 2 > K x 1 x 1 b D x 2 x 2 b D –b I > 1 –0 < b D < 1
18
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 18 AIMD Additive Increase –Falls x 1 + x 2 K x 1 x 1 + a I x 2 x 2 + a I Multiplicative Decrease –Falls x 1 + x 2 > K x 1 x 1 b D x 2 x 2 b D –a I > 0 –0 < b D < 1
19
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Faire und Effiziente Lineare Datenratenanpassung
20
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Effiziente lineare Funktionen X(t) > K –a D 0 b D 1 –a D > 0 b D < 0 nicht möglich X(t) < K –a I 0 b I 1 –a I < 0 nicht möglich
21
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 21 Fairness von x(t) = (x1(0), …, xn(0)) konvergiert gegen 1, d.h. für Es gilt für c=a/b: Beweis? Fairness (I)
22
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 22 Beweis! (1) Es gilt: Substitution Dann ist: und
23
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Beweis! (2) Zu zeigen: Warum gilt diese Gleichung?
24
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Beweis! (3) Warum gilt diese Gleichung? wobei
25
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Es gilt: D.h. Fairness nimmt mit c=a/b zu. –Für c=0 ist F(x(t+1))= F(x(t)) –Für c>0 ist F(x(t+1))> F(x(t)), falls F(x(t)) 1 –Für c<0 ist F(x(t+1))< F(x(t)) Daher a I /b I 0 und a D /b D 0 –Also, a I,b I,a D,b D 0 Aus Effizienz: –a D 0 b D 1, heißt also a D = 0 b D 1, –a I 0 b I 1, es muß a I > 0, da sonst Fairness nicht zunimmt (siehe MIMD) Führt zu AIMD Fairness (II)
26
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 26 Durchsatzoptimierung in der Transportschicht Hauptproblem von TCP: Durchsatzoptimierung durch Stauvermeidung –Jacobson: min. 99% aller verlorenen Pakete durch IP wegen Datenüberlaufs (congestion) an Routern –Feedback in der Transportschicht nur durch Ackn.-Pakete: Wird ein Paket nicht bestätigt, war der gewählte Datendurchsatz zu hoch TCP verringert Datendurchsatz Werden alle Pakete bestätigt, war der Datendurchsatz genau richtig oder zu niedrig TCP erhöht Datendurchsatz
27
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Modell Rundenmodell –In Runde t steht Bandweite ut zur Verfügung –Algorithmus fordert in Runde Bandweite x t an –Feedback zu Beginn von Runde t+1: Ist x t > u t ? (d.h. sind Pakete verloren gegangen) –Algorithmus erfährt nie die wirklich verfügbaren Bandweiten Runde Internet Host B t Bandweite läßt maximal u t Pakete durch Host A sendet x t+1 Pakete schickt Bestätigung (Ack.) erhält Ack. und berechnet x t+1 t+1 sendet x t Pakete erhält min(x t+1,u t+1 ) Pakete Bandweite läßt maximal u t+1 Pakete durch erhält min(x t,u t ) Pakete
28
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 28 Der statische Fall –die verfügbare Bandweite bleibt konstant Der dynamische Fall –die verfügbare Bandweite ändert sich Durchsatzoptimierung in der Transportschicht
29
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 29 Kosten Modell nach Karp, Koutsoupias, Papadimitriou, Shenker 2000 Prinzip: –x t > u t : Datenrate ist größer als verfügbare Bandweite Zeitverlust und Overhead durch wiederholtes Senden von verlorenen Paketen –x t < u t : Nur ein kleiner Teil der verfügbaren Bandweite wird genutzt Opportunitätskosten
30
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 30 Milde Kosten Modell nach Karp, Koutsoupias, Papadimitriou, Shenker 2000 Prinzip: –x t > u t : Datenrate ist größer als verfügbare Bandweite Zeitverlust und Overhead durch wiederholtes Senden von verlorenen Paketen –x t < u t : Nur ein kleiner Teil der verfügbaren Bandweite wird genutzt Opportunitätskosten
31
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 31 Strenge Kosten Modell nach Karp, Koutsoupias, Papadimitriou, Shenker 2000 Prinzip: –x t > u t : Datenrate ist größer als verfügbare Bandweite Zeitverlust und Overhead durch wiederholtes Senden von verlorenen Paketen –x t < u t : Nur ein kleiner Teil der verfügbaren Bandweite wird genutzt Opportunitätskosten
32
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 32 Bandweite ist fest: –u 1 = u 2 = … = u Start mit Intervall –[1..n] = {1,2,3,…n} Sinnvoller (rekursiver) Suchalgorithmus A(i,j) auf Intervall [i..j]: –Falls i=j dann ist u=x. –Ansonsten x = A(i,j) mit x [i+1..j] Falls x u: Suche in [x,j] Falls x>u: Suche in [i,x-1] Der statische Fall
33
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 33 Komplexitätsmaß C c,A (i,j,u): Kosten, die Algorithmus A bei Suche nach u mit Kostenfunktion c(x,u) entstehen worst-case: average-case: wobei:
34
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 34 Wahl von x: Milde Kosten bei Binärer Suche
35
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 35 Wahl von x: Strenge Kosten bei Binärer Suche
36
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 36 Wahl von x: Strenge worst-case Kosten: Strenge average-case Kosten: Milde worst-case Kosten: Milde average-case Kosten: Binäre Suche
37
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 37 Wird als Grundbaustein von TCP eingesetzt Wahl von x: AIMD (Additively Increasing – Mulitiplicatively Decreasing)
38
Algorithmen des Internets 2005-05 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer 38 Wird als Grundbaustein von TCP eingesetzt Wahl von x: Strenge worst-case Kosten: Strenge average-case Kosten: Milde worst-case Kosten: Milde average-case Kosten: AIMD (Additively Increasing – Mulitiplicatively Decreasing)
39
HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität 39 Vielen Dank! Ende der 5. Vorlesung Nächste Vorlesung: Mo. 16.05.2005 Nächste Übung: Mo. 16.05.2005 Heinz Nixdorf Institut & Institut für Informatik Universität Paderborn Fürstenallee 11 33102 Paderborn Tel.: 0 52 51/60 66 92 Fax: 0 52 51/62 64 82 E-Mail: schindel@upb.de http://www.upb.de/cs/schindel.htmlschindel@upb.de http://www.upb.de/cs/schindel.html
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.