Transmission Control Protokoll



Ähnliche Dokumente
A Lösungen zu Einführungsaufgaben zu QueueTraffic

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Im Jahr t = 0 hat eine Stadt Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Primzahlen und RSA-Verschlüsselung

Zwischenablage (Bilder, Texte,...)

Wachstum 2. Michael Dröttboom 1 LernWerkstatt-Selm.de

Informationsblatt Induktionsbeweis

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

7 Rechnen mit Polynomen

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Qualität und Verlässlichkeit Das verstehen die Deutschen unter Geschäftsmoral!

Lösung. Prüfungsteil 1: Aufgabe 1

Südbaden-Cup. Ausstieg Champions

Statuten in leichter Sprache

Wichtiges Thema: Ihre private Rente und der viel zu wenig beachtete - Rentenfaktor

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

BERECHNUNG DER FRIST ZUR STELLUNGNAHME DES BETRIEBSRATES BEI KÜNDIGUNG

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Glaube an die Existenz von Regeln für Vergleiche und Kenntnis der Regeln

Ein Vorwort, das Sie lesen müssen!

Wir machen neue Politik für Baden-Württemberg

Der Provider möchte möglichst vermeiden, dass die Werbekampagne auf Grund des Testergebnisses irrtümlich unterlassen wird.

Für über 4 Millionen Kunden: Unser Online-Shop leistet viel, damit Sie zufrieden sind. RS ONLINE.

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014

Kompetitive Analysen von Online-Algorithmen

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

In konstanten Modellen wird davon ausgegangen, dass die zu prognostizierende Größe sich über die Zeit hinweg nicht verändert.

Produkte Info Touchscreen-Panel

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Behörde für Bildung und Sport Abitur 2008 Lehrermaterialien zum Leistungskurs Mathematik

ecaros2 - Accountmanager

Abschlussprüfung Realschule Bayern II / III: 2009 Haupttermin B 1.0 B 1.1

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

Grundlagen verteilter Systeme

Mathematischer Vorbereitungskurs für Ökonomen

Ein neues System für die Allokation von Spenderlungen. LAS Information für Patienten in Deutschland

Erstellen von x-y-diagrammen in OpenOffice.calc

Dokumentation IBIS Monitor

a n auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert:

Grundlagen der Theoretischen Informatik, SoSe 2008

Anbindung des eibport an das Internet

Erfahrungen mit Hartz IV- Empfängern

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Bestimmung einer ersten

Korrelation (II) Korrelation und Kausalität

Stornierungsbedingungen und weitere Voraussetzungen

Massenversand Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

DAVID: und David vom Deutschlandlabor. Wir beantworten Fragen zu Deutschland und den Deutschen.

Musterlösungen zur Linearen Algebra II Blatt 5

1 topologisches Sortieren

Geld Verdienen im Internet leicht gemacht

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach Bremen. Friedrich-Mißler-Straße Bremen

Repetitionsaufgaben Wurzelgleichungen

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

C.M.I. Control and Monitoring Interface. Zusatzanleitung: Datentransfer mit CAN over Ethernet (COE) Version 1.08

Avenue Oldtimer Liebhaber- und Sammlerfahrzeuge. Ihre Leidenschaft, gut versichert

Bereich METIS (Texte im Internet) Zählmarkenrecherche

WinVetpro im Betriebsmodus Laptop

Um Ihre Ziele durchzusetzen! Um Beziehungen zu knüpfen und zu pflegen! Um in Begegnungen mit anderen Ihre Selbstachtung zu wahren!

Monatliche Grundgebühr: 5,00 Zeitabhängige Nutzung: Feiertags/Sonntags: 0,04 /min

Info zum Zusammenhang von Auflösung und Genauigkeit

Teilnahme-Vertrag. Der Teilnahme-Vertrag gilt zwischen. dem Berufs-Bildungs-Werk. und Ihnen. Ihr Geburtsdatum: Ihre Telefon-Nummer:

Charakteristikum des Gutachtenstils: Es wird mit einer Frage begonnen, sodann werden die Voraussetzungen Schritt für Schritt aufgezeigt und erörtert.

Kurzanleitung für Verkäufer

Anleitung über den Umgang mit Schildern

1. Kennlinien. 2. Stabilisierung der Emitterschaltung. Schaltungstechnik 2 Übung 4

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Wasserkraft früher und heute!

Chemie Zusammenfassung KA 2

Programmentwicklungen, Webseitenerstellung, Zeiterfassung, Zutrittskontrolle

Dokumentenverwaltung im Internet

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

Lichtbrechung an Linsen

2.3 Applikationen. Protokolle: TCP/IP. Telnet, FTP, Rlogin. Carsten Köhn

Die Näherung durch die Sekante durch die Punkte A und C ist schlechter, da der Punkt C weiter von A entfernt liegt.

R ist freie Software und kann von der Website.

Verband der TÜV e. V. STUDIE ZUM IMAGE DER MPU

4. Versicherungsangebot

B 2. " Zeigen Sie, dass die Wahrscheinlichkeit, dass eine Leiterplatte akzeptiert wird, 0,93 beträgt. (genauerer Wert: 0,933).!:!!

Diese Prozesse und noch viele andere Tricks werden in der Digitalfotografie mit Hilfe von Bildbearbeitungsprogrammen, wie z. B. Gimp, bewältigt.

1 MIO ÖSTERREICHISCHE SKIFAHRER SCHÜTZEN SICH BEREITS MIT HELM - UM MEHR ALS IM VORJAHR

Fachbereich Physik Dr. Wolfgang Bodenberger

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Installation von Druckern auf dem ZOVAS-Notebook. 1. Der Drucker ist direkt mit dem Notebook verbunden

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Fotobedingungen. Bedingungen für Lieferanten zum Anhängen von Produktfotos bei PlantConnect.nl

50 Fragen, um Dir das Rauchen abzugewöhnen 1/6

Berechnung der Erhöhung der Durchschnittsprämien

Approximation durch Taylorpolynome

Selbsttest Prozessmanagement

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

Transkript:

TCP TCP 1 / 34

TCP Paketverluste entstehen aufgrund von Überlast, defekten Routern, nicht ausreichender Puffer-Kapazität des Empfängers oder Bitfehlern während der Übertragung. Weitere Fehlerquellen sind duplizierte Pakete sowie das Eintreffen von Paketen in falscher Reihenfolge. TCP, das Transmission Control Protokoll, ist die verantwortliche Kontrollinstanz für die Behebung von Überlast und die bestmögliche Nutzung der Link-Kapazitäten. Die TCP-Verkehrskontrolle misst dazu die Belastung einer Sender-Empfänger Verbindung und stellt den bisher beobachteten Durchsatz der Verbindung fest. Die Emissionsrate wird adaptiv auf die Belastung durch Hochoder Runterfahren eingestellt. TCP 2 / 34

Sendefester, Acks, RTT und RTO TCP Sendefenster 3 / 34

Das Sendefenster Der Sender berechnet ein Sendefenster (sliding window), dessen Größe sich dynamisch dem Durchsatz anpasst, aber die Länge des Empfänger-Puffers nicht übersteigen sollte. Das Sendefenster besteht aus einem Intervall aufeinanderfolgender Pakete und beschreibt die versandbereiten Pakete, bzw. die versandten, aber noch nicht bestätigten Pakete. Pakete werden durchnummeriert: Der Empfänger kann die Pakete in richtiger Reihenfolge zusammenzusetzen. Der Empfänger bestätigt den Erhalt eines Pakets durch Acknowledgements oder Acks, die Paketen in der Gegenrichtung hinzugefügt werden. bestätigt nicht bestätigt kann gesendet werden zukünftige Pakete Sliding Window (Länge = Länge des Empfänger Puffers) TCP Sendefenster 4 / 34

Ack s Eine kumulative Bestätigung bestätigt stets auch den Erhalt aller nach der letzten kumulativen Bestätigung gesandten Pakete. Eine duplizierte Bestätigung wird verschickt, wenn ein Paket in falscher Reihenfolge empfangen wird: Das jüngste in richtiger Reihenfolge empfangene Paket wird wiederholt bestätigt. Eine duplizierte Bestätigung ist für den Sender ein Hinweis, aber kein Beweis, für einen Paketverlust. Eine selektive Bestätigung führt bis zu vier Paket-Intervalle explizit auf, die erfolgreich empfangen wurden. Selektive Bestätigungen sind wichtig, wenn mehrere Paketverluste in einem Sendefenster auftreten. Sie helfen, die nachzusendenden Pakete zu identifizieren. Drohender Paketverlust wird frühzeitig erkannt und wiederholt zu verschickende Pakete können bestimmt werden. TCP Ack s 5 / 34

Rundreisezeit und Retransmission Timeout Der Sender berechnet die Rundreisezeit (bzw. Round-Trip Time oder RTT) eines Pakets. Die Rundreisezeit beginnt mit dem Versand und endet mit dem Erhalt des vom Empfänger versandten Ack. Die Rundreisezeit wird durch Stichproben aktualisiert. Der Retransmission Timeout (RTO) ist der Zeitraum, in dem der Sender auf eine Bestätigung eines versandten Pakets wartet. Geht innerhalb des RTO-Zeitraums keine Bestätigung ein, wird das Paket wieder gesendet. Der RTO-Zeitraum verändert sich dynamisch mit der Rundreisezeit: Bei steigender Rundreisezeit, und damit bei stärker belasteten Links, wird RTO entsprechend hochgesetzt und der Sender wartet länger auf eine Bestätigung. TCP Ack s 6 / 34

Slow Start, Congestion Avoidance, Fast Retransmit und Fast Recovery TCP Ack s 7 / 34

Anpassung des Sendefensters Der Sender versucht, sein Sendefenster den Netzbedingungen anzupassen und benutzt dazu die Komponenten - Slow Start, - Congestion Avoidance, - Fast Retransmit und - Fast Recovery. Die TCP-Varianten TCP Tahoe, TCP Vegas, TCP Reno, TCP New Reno, TCP Sack unterschieden sich zum Teil wesentlich in der Implementierung dieser vier Komponenten. Wir beschreiben TCP Sack. TCP Ack s 8 / 34

Slow Start und Congestion Avoidance Slow Start wird beim Aufbau einer Verbindung bzw. nach einem RTO-Fehler aufgerufen. - Slow Start beginnt mit einem kleinen Sendefenster S 0 und endet, wenn der Schwellenwert S 1 (S 0 << S 1 ) überschritten wird. - Werden alle bisher versandten Pakete innerhalb des Retransmission Timeouts bestätigt, dann setze die Länge des gegenwärtigen Sendefensters S auf S = max{2 S, S 1 } hoch. Slow Start lässt die anfänglich sehr geringe Emissionsrate multiplikativ wachsen (multiplicative increase) bis entweder der Schwellenwert S 1 überschritten wird oder ein Fehler auftritt. Wird S 1 überschritten, dann wechsle zu Congestion Avoidance: Erhöht die Fenstergröße S um Eins (additive increase), wann immer alle Pakete eines Fensters bestätigt wurden. TCP Slow Start 9 / 34

Fast Retransmit und Fast Recovery Fast Retransmit wird aufgerufen, wenn ein Ordnungsfehler für ein Paket auftritt. Das (vermutlich) verlorene Paket wird neu versandt ohne den Retransmission Timeout abzuwarten. Die gegenwärtige Emissionsrate S wird halbiert (multiplicative decrease) und Fast Recovery wird aufgerufen. TCP Fast Retransmit 10 / 34

Fast Recovery Mit Hilfe der selektiven Bestätigungen wird ein Scoreboard berechnet, das alle vermutlich verlorenen Pakete des Fensters aufführt. Der Sender schätzt die Anzahl der (regulär) ausstehenden Pakete und hält die Schätzung in der Variable pipe fest. Der Sender sendet Pakete des Scoreboards bzw. neue Pakete nur dann, wenn pipe < S für die aktuelle Fenstergröße S gilt. pipe wird für jedes versandte Paket um Eins erhöht und für jede Bestätigung um Eins erniedrigt: Die Belastung des Netzes ist somit durch S beschränkt. Tritt ein RTO-Fehler auf, wird Slow Start aufgerufen, wobei die aktuelle Fenstergröße als neuer Schwellenwert S 1 gewählt wird. Werden hingegen alle Pakete des Scoreboards bestätigt, erfolgt ein Aufruf von Congestion Avoidance. TCP Fast Recovery 11 / 34

Die vier Komponenten (Multiplicative Decrease) Fast Retransmit Fast Recovery Slow Start (mit Schwellenwert S ) 1 Congestion Avoidance (Additive Increase) Die Kombination von Congestion Avoidance und Fast Retransmit folgt somit dem konservativen Prinzip des additiven Anwachsen, multiplikativen Fallens (AIMD). TCP Fast Recovery 12 / 34

Active Queue Management (AQM) AQM-Algorithmen entfernen sogar vorsätzlich Pakete als Teil einer Verkehrskontrolle. - Warum entfernt man Pakete, wenn dies nicht erzwungen ist? - Der Sender stellt fest, dass Pakete nicht ankommen und vermindert daraufhin (hoffentlich) die Sendegeschwindigkeit. Der AQM-Algorithmus Drop-Tail: Ankommende Pakete werden abgewiesen, wenn die maximale Queuegröße überschritten wird. Paketstaus werden nur langsam aufgelöst, da Sender zu spät von überlaufenden Queues erfahren. Der AQM-Algorithmus RED (Random Early Detection): RED arbeitet mit dem Schwellenwert MIN und MAX. Bei gegenwärtiger Queuegröße M werden Pakete mit Wahrscheinlichkeit p M entfernt: Fine-Tuning von p M ist erforderlich. TCP Fast Recovery 13 / 34

Active Queue Management: Blue Pakete werden zufällig durch RED entfernt: + Die Aufteilung der Bandbreite ist fair. - Eine Vielzahl von Verbindungen wird zur Neuübertragung oder zum Abbremsen veranlasst, was den Stau verschärfen kann. - Fine-Tuning von p M ist erforderlich. Der AQM-Algorithmus Blue: Die Löschwahrscheinlichkeit wird an die Queuegröße gekoppelt. Blue erhöht die Löschwahrscheinlichkeit bei Überlast auf p (1 + ε) und reduziert bei Unterlast auf p (1 ε). Der AQM-Algorithmus Stochastic Fair Blue (SFB): Die Rate von Paketflüssen wird durch Hashing oder die speicher-effizienteren Bloom-Filter approximiert. Pakete eines Flusses werden entsprechend ihrer Rate zufällig gelöscht. Reagiert ein aggressiver Fluß nicht durch Ratenreduktion, wird er bestraft. TCP Fast Recovery 14 / 34

AIMD AIMD Ein statisches Modell 15 / 34

Kampf um eine Ressource n Verbindungen kämpfen um die Ressource Bandbreite. - Verbindung i habe zum Zeitpunkt t den Anteil x i (t) 0 der Ressource angefordert. - Das System antwortet mit dem Befehl fahr hoch oder fahr runter, der von allen Verbindungen zu befolgen ist. - Bestimme einen Anforderungsmechanismus { ah + b x i (t + 1) = H x i (t) y t = fahr hoch, a R + b R x i (t) y t = fahr runter so dass der Anstieg F t+1 F t der Fairness zum Teitpunkt t + 1 maximiert wird. ist die Fairness zum Zeitpunkt t. F t = ( n i=1 x i(t)) 2 n n i=1 x i(t) 2 AIMD Ein statisches Modell 16 / 34

Fahr runter! Verbindung i muss ihre Anforderung für y t = fahr runter drosseln. Wir müssen x i (t + 1) = a R + b R x i (t) < x i (t) fordern, falls x i (t) > 0 gilt. Stelle x i (t + 1) 0 auch für kleine Werte von x i (t) sicher: a R ist nicht-negativ. x i (t + 1) < x i (t) muss für kleine Werte von x i (t) garantiert werden: a R = 0 folgt. Es ist a R = 0 und 0 b R < 1. AIMD Ein statisches Modell 17 / 34

Fahr hoch! Wir müssen x i (t + 1) = a H + b H x i (t) > x i (t) garantieren und erhalten die Bedingungen a H 0 und b H 1. Wenn F t die Fairness zum Zeitpunkt t ist: F t+1 = ( n i=1 x i(t + 1)) 2 n n i=1 x i(t + 1) 2 = ( n i=1 a H + b H x i (t)) 2 n n i=1 (a H + b H x i (t)) 2 ( n i=1 = a H/b H + x i (t)) 2 n n i=1 (a H/b H + x i (t)) 2 = G(c) mit c = a H /b H und G(c) = ( n i=1 c + x i(t)) 2 /(n n i=1 (c + x i(t)) 2. AIMD Ein statisches Modell 18 / 34

Analyse (1/2) - F t+1 = G(c) = ( n i=1 c + x i(t)) 2 /(n n i=1 (c + x i(t)) 2. - G ist monoton wachsend: Zeige G (c) 0 für c 0. ( f g ) 0 ist äquivalent zu f g f g. Zeige 2n ( n i=1 c + x i(t)) (n n i=1 (c + x i(t)) 2 ) ( n i=1 c + x i(t)) 2 (2n n i=1 (c + x i(t))). Die Ungleichung ist äquivalent zu n n n (c + x i (t)) 2 ( c + x i (t)) 2. i=1 Die Ungleichung ist stets erfüllt, denn n n i=1 a 2 i ( i=1 i=1 a i ) 2. AIMD Ein statisches Modell 19 / 34

Analyse (2/2) - G ist monoton wachsend für c 0. - Wähle c größtmöglich, um einen maximalen Fairnessanstieg zu erreichen. Wenn der Befehl Fahr runter ist, dann bleibt die Fairness unverändert, denn a R = 0. Und wenn der Befehl Fahr hoch ist? Für ah = 0 bleibt die Fairness unverändert, für a H > 0 kann die Fairness nur zunehmen. Wir wissen, dass bh 1 gilt und dass c = a H /b H größtmöglich zu wählen ist. Um die Fairness zu maximieren, wähle AIMD - a H > 0, b H = 1 (additive increase) und - a R = 0, b R < 1 (multiplicativ decrease). AIMD Ein statisches Modell 20 / 34

Und die Konsequenzen für TCP - Ein additives Anwachsen führt zum stärksten Fairnessanstieg: Ist das überraschend? Nicht wirklich, jede beteiligte Verbindung erhält denselben Zusatzgewinn. - Wir haben aber keine wirklich überzeugende Rechtfertigung des additive increase - multiplicative decrease Rezepts erhalten: Wir haben uns auf die kleine Klasse der linearen Anforderungsschemata eingeschränkt. AIMD Ein statisches Modell 21 / 34

Ein dynamisches Modell Verbindungen kämpfen wiederum um die Ressource Bandbreite. Alte Verbindungen terminieren möglicherweise und neue Verbindungen kommen hinzu. Wie schnell konvergiert AIMD gegen ein sich jetzt dynamisch änderndes Fairness-Optimum, wenn die Bandbreite im Hochfahren um 1 erhöht und im Runterfahren um den Faktor β < 1 erniedrigt wird? AIMD Ein dynamisches Modell 22 / 34

Die Bandbreite einer neuen Verbindung Wir fixieren eine Verbindung V und nehmen an, dass das System eine Gesamtbandbreite B zur Verfügung stellt. V wird zum Zeitpunkt T mit Bandbreite 0 aufgenommen und wird dann in einer Folge von Additionsschritten Bandbreite gewinnen. T 0 < T 1 < T k < sei die Folge der Zeitpunkte, zu dem das System den Befehl des Runterfahrens gibt. Es gelte T T0. - Wenn Verbindung V bis zum Zeitpunkt T k besteht, dann beträgt ihre Bandbreite vor dem Zeitpunkt T k mindestens (1 β) k B n k, n k ist die Anzahl der Verbindungen zum Zeitpunkt T k. - Zu einem Zeitpunkt t [T k 1, T k [ besitzt jede andere Verbindung höchstens die Bandbreite von V plus die Bandbreite β k B. AIMD Ein dynamisches Modell 23 / 34

Gerechtfertigte Bandbreite Die von den einzelnen Verbindungen zum Zeitpunkt T gehaltenen Bandbreiten sind ungerechtfertigt. Wir nehmen die Sichtweise der Verbindung V ein, die zum Zeitpunkt T mit Bandbreite 0 beginnen muss. Die nach dem Zeitpunkt T vergebenen Bandbreiten sind gerechtfertigt. Die Verbindung V muss die ihrerseits gewonnene Bandbreite auch den anderen Verbindungen zugestehen. Wieviel Bandbreite ist zum Zeitpunkt T k gerechtfertigt? Nur die Bandbreite zum Zeitpunkt T ist ungerechtfertigt und danach kommt nie mehr ungerechtfertigte Bandbreite hinzu. Die ungerechtfertigte Bandbreite zu jedem Zeitpunkt Ti wird um den Faktor β erniedrigt. Vor dem Zeitpunkt T k ist höchstens die Bandbreite β k B ungerechtfertigt. AIMD Ein dynamisches Modell 24 / 34

Berechtigte Bandbreite von V Keine andere Verbindung besitzt mehr berechtigte Bandbreite als V : Spätere Verbindungen besitzen weniger und zwischenzeitlich terminierende Verbindungen geben zusätzliche Bandbreite frei. V hat vor dem Zeitpunkt T k mindestens die Bandbreite (1 β k ) B/n k errungen. Wieviel Bandbreite besitzen andere Verbindungen höchstens? Eine andere Verbindung W wird dann die meiste Bandbreite an sich reißen, wenn sie zum Zeitpunkt T die gesamte (und damit ungerechtfertigte) Bandbreite B besitzt. Zu einem Zeitpunkt t [Tk 1, T k [ ist aber die ungerechtfertigte Bandbreite auf β k B geschmolzen. Die Verbindung W besitzt höchstens die (gerechtfertigte) Bandbreite von V plus die ungerechtfertigte Bandbreite β k B. AIMD Ein dynamisches Modell 25 / 34

Das Steady State Modell AIMD Das Steady State Modell 26 / 34

Das Steady State Modell für AIMD 1 Ein Sender fährt seine Sende-Rate um jeweils ein Paket solange hoch, bis ein Schwellenwert S erreicht ist. 2 Danach erfolgt ein Paketverlust und der Sender muss seine Rate von S auf S 2 halbieren. Berechne den Durchsatz D in Abhängigkeit von der Verlustrate p. Beginnend mit Senderate S 2 erhalten wir in den ersten S/2 Schritten den Gesamtdurchsatz D = S i=s/2 i 3 8 S2. D fällt auch in jedem folgendem Zeitintervall der Länge S 2 an. Also erhalten wir den durchschnittlichen Durchsatz D 3 8 S2 /(S/2) = 3 4 S. AIMD Das Steady State Modell 27 / 34

Durchsatz und Verlustrate im Steady State Modell In jedem Zeitintervall der Länge S/2 gibt es genau einen Paketverlust. p 8 3 S 2 ist die durchschnittliche Verlustrate. Wir haben die Beziehung D = Θ( 1 p ) erhalten. Übungsaufgabe: Zeige, dass die Beziehung D = Θ( 1 p ) für AIAD, MIAD und MIMD gilt: AIMD besitzt den höchsten Durchsatz als Funktion der Verlustrate. AIMD Das Steady State Modell 28 / 34

AIMD: Kritikpunkte 1. TCP ändert Geschwindigkeiten nur aufgrund von Paket-Verlusten. Paket-Verlust ist ein binäres Signal, das nicht den Grad der Verstopfung angibt. Eine der Ursache angepasste Reaktion ist nicht möglich. Vorbeugende Gefahrmeldungen durch Router scheinen vernünftiger als ein Warten auf den Unfall. Verfahren des Active Queue Management geben aber implizit das Ausmaß der Verstopfung wieder. 2. Die Reaktionszeit hängt stark von der Round-Trip Time ab, die kontroll-theoretisch als Feedback-Verzögerung wirkt. TCP benachteiligt Paketflüsse mit grosser Round-Trip Time. 3. Slow Start benötigt Θ(log 2 N) Verdopplungen bis die volle Bandbreite N erreicht ist. Kurzlebige Flüsse verlassen Slow Start während ihrer Lebenszeit nicht: Schlechte Ausnutzung der möglichen Bandbreite. AIMD Das Steady State Modell 29 / 34

Alternative Ansätze Alternative Ansätze 30 / 34

HighSpeed TCP - verhält sich wie das konventionelle TCP, wenn das Sliding Window nicht zu groß ist. - Auch für große Sliding Windows wird das AIMD Verfahren beibehalten, allerdings mit aggressiveren Inkrementen und langsamerem Abbremsen. - Slow Start wird durch Limited Slow Start ersetzt, wenn TCP mit einem großen Sliding Window beginnt: Statt die Senderate exponentiell zu steigern, wird die Fenstergröße nach jedem Acknowledgement um eine Konstante vergrößert. Selbst wenn ein Acknowledgement ausbleibt, wird die Fenstergröße allerdings um eine kleinere Konstante vergrößert. Alternative Ansätze 31 / 34

QuickStart Eine Verbindung zwischen Hosts A und B soll eröffnet werden. A sendet ein Paket mit einer gewünschten Emissionsrate. Router auf dem Weg von A nach B können die gewünschte Emissionsrate billigen, modifizieren oder ablehnen. Host B sendet dann das Ergebnis der Router-Umfrage an A zurück. Sollte die Anfrage abgelehnt werden, wählt A eine Default-Emissionsrate. Natürlich ist das Ziel, bereits mit einer großen Emissionsrate, beziehungsweise mit einem großen Sliding Window zu beginnen. Alternative Ansätze 32 / 34

Explicit Control Protocol (XCP) - XPC verschickt explizite Stauinformationen: Die Router informieren Sender und Empfänger durch Acknowledgements über den Verstopfungsgrad und erlauben damit eine der Ursache angepasste Reaktion. - Router behandeln Effizienz (möglichst große Ausnutzung der Bandbreite) und Fairness (möglichst gleichmäßige Aufteilung der Bandbreite) getrennt. Das Ziel: Eine schnellere, aber faire Bandbreitennutzung. 1. QuickStart ist ein Teil von XPC: Der Sender A gibt die Größe des Sliding Windows, die Round-Trip Time und die gewünschte Emissionsrate im Paket-Header bekannt. Jeder Router auf dem Weg kann die Emissionsrate modifizieren. Der Empfänger B verschickt dann die Empfehlung als Teil des Acknowledgements zurück an A. Alternative Ansätze 33 / 34

XCP 2. Jeder Router R bestimmt für jeden Link die durchschnittliche Round-Trip Time T der über den Link führenden Pakete. R wartet ein Zeitintervall der nächsten T Schritte ab. Danach wird ein neues Zeitfenster mit aktualisiertem T aufgemacht und das Vorgehen wiederholt sich. 3. Der Effizienz- und Fairness-Controller geben in jedem Zeitintervall eine Geschwindigkeitsempfehlung ab. Der Effizienz-Controller bestimmt am Ende des alten Zeitfensters die freie Bandbreite B und die minimale Queuegröße Q und setzt φ = α B β Q als zu vergebende / drosselnde Bandbreite für Koeffizienten α, β [0, 1]. Q geht negativ ein, um die Queue zu entleeren. Der Fairness-Controller wendet AIMD an, um φ auf die Flüsse aufzuteilen: Für φ 0 erhält jeder Fluss dasselbe additive Inkrement. Für φ < 0 sinkt die Bandbreite jedes Flusses um denselben Faktor. Alternative Ansätze 34 / 34