Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 1 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer.

Ähnliche Präsentationen


Präsentation zum Thema: "HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 1 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer."—  Präsentation transkript:

1 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 1 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Vorlesung Sommersemester 2002 Algorithmische Grundlagen des Internets (V) Christian Schindelhauer schindel@upb.de HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik AG Meyer auf der Heide

2 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 2 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Die Wirkungsweise von TCP (II) TCP ist ein verbindungsorientierter, zuverlässiger Dienst für bidirektionale Byteströme oTCP ist 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  Löscht duplizierte Pakete

3 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 3 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Die Wirkungsweise von TCP (III) TCP ist ein verbindungsorientierter, zuverlässiger Dienst für bidirektionale Byteströme oTCP ist ein Dienst für bidirektionale Byteströme  Daten sind zwei gegenläufige Folgen aus einzelnen Bytes (=8 Bits)  Inhalt wird nicht interpretiert  Zeitverhalten der Datenfolgen kann verändert werden  Versucht zeitnahe Auslieferung jedes einzelnen Datenbytes  Versucht Übertragungsmedium effizient zu nutzen = wenig Pakete

4 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 4 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer TCP-Header (II) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port | Destination Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Acknowledgment Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Data | |U|A|P|R|S|F| | | Offset| Reserved |R|C|S|S|Y|I| Window | | | |G|K|H|T|N|N| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum | Urgent Pointer | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ oFLAGS (unabhängig einsetzbar)  ACK: acknowledgment Aktiviert Bestätigungsnr.  … oSequenznummer  Jedes Datenbyte ist nummeriert modulo 2 32 -1  = Nummer des ersten Bytes im Segment  Bestätigungsnummer  Aktiviert durch ACK-Flag  Nummer des nächsten noch nicht bearbeiteten Datenbytes  = letzte Sequenznummer + letzte Datenmenge

5 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 5 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Bestätigungen oHuckepack-Technik  Bestätigungen „reiten“ auf den Datenpaket der Gegenrichtung oEine Bestätigungssegment kann viele Segmente bestätigen  Liegen keine Daten an, werden Acks verzögert „World“ Seq.nr. 23 „bla bla“ Seq.nr. 91 ACK: 91+7=98 „Hello!“ Seq.nr. 17 ACK: 17+6=23 „Das“ Seq.nr. 154 „ist“ Seq.nr. 157 „es“ Seq.nr. 160 ACK: 162 Algorithmus von Nagle Kleine Pakete werden nicht versendet, solange Bestätigungen noch ausstehen oSelbsttaktend: Schnelle Verbindung = viele kleine Pakete oPaket ist klein, wenn Datenlänge < MSS

6 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 6 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Exponentielles Zurückweichen (exponential backoff) oRetransmission Timout (RTO) regelt Zeitraum zwischen Senden von Datenduplikaten, falls Bestätigung ausbleibt oWann wird ein TCP-Paket nicht bestätigt?  Wenn die Bestätigung wesentlich länger benötigt, als die durchschnittliche Umlaufzeit (RTT/round trip time) 1. Problem: Messung der RTT 2. Problem: Bestätigung kommt, nur spät  Sender Wartet Zeitraum gemäß Retransmission Timer Sendet Paket nochmal und setzt RTO ← 2 RTO (bis RTO = 64 Sek.) oNeuberechnung von RTO, wenn Pakete bestätigt werden „World“ Seq.nr. 23 „Hello!“ Seq.nr. 17 ACK: 17+6=23 Sender Empfänger „World“ Seq.nr. 23 1 s 2 s 4 s 8 s ? ? ? ?

7 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 7 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Schätzung der Umlaufzeit (RTT/Round Trip Time) oTCP-Paket gilt als nicht bestätigt, wenn Bestätigung „wesentlich“ länger dauert als RTO oRTT nicht on-line berechenbar (nur rückblickend) oRTT schwankt stark oDaher: Retransmission Timeout Value aus großzügiger Schätzung:  RFC 793: (M := letzte gemessene RTT) R ← α R + (1- α) M, wobei α = 0,9 RTO ← β R, wobei β = 2  Jacobson 88: Schätzung nicht robust genug, daher A ← A + g (M - A),wobei g = 1/8 D ← D + h (|M - A| - D),wobei h = 1/4 RTO ← A + 4D oAktualisierung nicht bei mehrfach versandten Pakete

8 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 8 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Gleitende Fenster (sliding windows) oDatenratenanpassung durch Fenster  Empfänger bestimmt Fenstergröße (wnd) im TCP-Header der ACK-Segmente  Ist Empfangspuffer des Empfängers voll, sendet er wnd=0  Andernfalls sendet Empfänger wnd>0 oSender muß einhalten:  Anzahl unbestätigter gesender Daten ≤ Fenstergröße

9 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 9 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Segment 8 Segment 9 Segment 10 Slow Start oSender darf vom Empfänger angebotene Fenstergröße nicht von Anfang wahrnehmen o2. Fenster: Congestion-Fenster (cwnd/Congestion window)  Von Sender gewählt (FSK)  Sendefenster: min {wnd,cwnd}  Am Anfang: cwnd ← MSS  Für jede empfangene Bestätigung, setze cwnd ← cwnd + MSS  Solange bis einmal Bestätigung ausbleibt o„Slow Start“ = Exponentielles Wachstum Segment 1 ACK: Segment 1 Sender Empfänger Segment 2 Segment 3 ACK: Segment 3 Segment 4 Segment 5 ACK: Segment 7 Segment 6 Segment 7 ACK: Segment 5 …

10 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 10 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Stauvermeidung (congestion avoidance) oJacobson 88:  Parameter: cwnd und Slow-Start-Schwellwert (ssthresh= slow start threshold ) 1.Verbindungsaufbau: cwnd ← MSSssthresh ← 65535 2.Bei Paketverlust, d.h. Bestätigungsdauer > RTO, multiplicatively decreasing cwnd ← MSSssthresh ← 3.Werden Segmente bestätigt und cwnd ≤ ssthresh, dann slow start cwnd ← cwnd + MSS 4.Werden Segmente bestätigt und cwnd > ssthresh, dann additively increasing cwnd ← cwnd +

11 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 11 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Fast Retransmit und Fast Recovery oJacobson 90: Geht nur ein Paket verloren, dann Wiederversand Paket + Restfenster Und gleichzeitig Slow Start oFast Retransmit: Nach drei Bestätigungen desselben Pakets (triple duplicate ACK), sende Paket nochmal oFast Recovery: Erhöhe Paketrate mit jeder weiteren Bestätigung 1.Fast retransmit: Nach triple duplicate ack von P, sende Paket P nochmal ssthresh ← min(wnd,cwnd)/2cwnd ← ssthresh + 3 MSS 2.Fast recovery: Bei weiterer Bestätigung von P:cwnd ← cwnd + MSS 3.Congestion avoidance: Trifft Bestätigung von P+x ein: cwnd ← ssthresh

12 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 12 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Fairness und Effizienz von AIMD

13 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 13 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Fairness und Effizienz von AIMD Das Modell on Teilnehmer, Rundenmodell oTeilnehmer i hat Datenrate x i (t) oAnfangsdatenrate x 1 (0), …, x n (0) gegeben oFeedback nach Runde t: y(t) = 0, falls y(t) = 1, falls oJeder 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) oWir betrachten lineare Funktionen:

14 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 14 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Fairness und Effizienz von AIMD Das Modell oWir betrachten lineare Funktionen: oInteressante Spezialfälle:  MIMD: Multiplicative Increase/Multiplicative Decrease  AIAD: Additive Increase/Additive Decrease  AIMD: Additive Increase/Multiplicative Decrease

15 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 15 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Fairness und Effizienz oEffizienz  Last:  Maß oFairness: Für x=(x 1, …, x n ):  1/n ≤ F(x) ≤ 1  F(x) = 1 ↔ absolute Fairness  Skalierungsunabhängig  Kontinuierlich, stetig, differenzierbar  Falls k von n fair, Rest 0, dann F(x) = k/n

16 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 16 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Konvergenz oKonvergenz unmöglich oBestenfalls Oszillation um Optimalwert  Oszillations- amplitude A  Einschwingzeit T

17 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 17 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Vektordarstellung (I)

18 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 18 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Vektordarstellung (II)

19 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 19 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer AIAD Additive Increase/Additive Decrease

20 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 20 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer MIMD Multiplicative Increase/Multiplicative Decrease

21 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 21 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer AIMD Additive Increase/Multiplicative Decrease

22 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 22 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Effiziente lineare Funktionen oX(t) > K  a D ≤ 0 → b D ≤ 1  a D > 0 → b D < 0 oX(t) < K  a I ≥ 0 → b I ≥ 1  a I < 0 → nicht möglich

23 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 23 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer oFairness von x(t) = (x 1 (0), …, x n (0)) konvergiert gegen 1, d.h. für oEs gilt für c=a/b: oBeweis? Fairness (I)

24 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 24 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Beweis! (1) oEs gilt: oSubstitution oDann ist: und

25 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 25 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Beweis! (2) oZu zeigen: oWarum gilt diese Gleichung?

26 HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 26 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer Beweis! (3) oWarum gilt diese Gleichung? wobei


Herunterladen ppt "HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik 1 Algorithm. Grundlagen des Internets 13. Mai 2002 Christian Schindelhauer."

Ähnliche Präsentationen


Google-Anzeigen