TCP flow control, congestion avoidance

Ähnliche Dokumente
Internet Networking TCP Congestion Avoidance and Control

TCP Teil 2. TCP Teil 2: Tilmann Kuhn Betreuer: Dr. Thomas Fuhrmann 1/18

Modul 5: TCP-Flusskontrolle

Einfluss der Window Scale Option auf die Fairness in TCP/IP-Netzen

Mobilkommunikationsnetze. - Transportschicht -

Stauvermeidung in TCP Tahoe

Grundlagen der Rechnernetze. Transportschicht

TCP. Transmission Control Protocol

Transportschicht (Schicht 4) des Internet

Übung 9. Tutorübung zu Grundlagen: Rechnernetze und Verteilte Systeme (Gruppen Mo-T1 / Di-T11 SS 2016) Dennis Fischer

Der Retransmission Timeout von TCP. Philipp Lämmel Proseminar Technische Informatik Institut für Informatik, Betreuerin Dr.

Internetprotokoll und Adressvergabe

Peer-to-Peer- Netzwerke

Vorlesung: Netzwerke (TK) WS 2011/12 Kapitel 5 Ende-zu-Ende-Protokolle Session 17

Hauptdiplomklausur Informatik März 2002: Internet Protokolle

Dienste der Transportschicht

Lehrveranstaltung Rechnernetze Einschub für das Labor

Übung 5: Transport. Rechnernetze. Wintersemester 2014/ Allgemeine TCP Verständnisfragen

TCP-Verbindungen und Datenfluss

ICMP Internet Control Message Protocol. Michael Ziegler

One way Delay (OWD) Determination Techniques

Transportschicht. Transmission Control Protocol, RFC793. (Fortsetzung TCP)

Netzwerk-Programmierung. Netzwerke. Alexander Sczyrba Michael Beckstette.

Die Transportprotokolle: Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Die Socket-Schnittstelle

Informations- und Kommunikationssysteme

Christoph Fischer Jörg Schneider DFKI Intelligente Netze. Real Time Workload Monitoring for WLAN

TCP - Kollisionsvermeidung und verwandtes

TCP Transmission Control Protocol (Flusskontrolle und Zustandsdiagramm)

TCP Überlastkontrolle. SS 2014 Grundlagen der Rechnernetze Transportschicht 31

Grundlagen TCP/IP. C3D2 Chaostreff Dresden. Sven Klemm

UDP User Datagramm Protokoll

Kurzeinführung in TCP/IP. Sebastian Drexler

Mobile IP. Jeremi Dzienian. 29. Januar Universität Freiburg. Jeremi Dzienian (Universität Freiburg) Mobile IP 29. Januar / 13

Netzwerke. Netzwerk-Programmierung. Sven Hartmeier.

Netzwerke, Kapitel 3.1

Kommunikationsnetze Prof. Dr. rer. nat. habil. Seitz. Sara Schaarschmidt Eric Hänsel

T T T. o TS, i 1= zuvor berechnete gemittelte RTT

Demo Off-Site Survey Report. Demo Off-Site Survey Report

Netzwerk-Programmierung. Netzwerke.

Grundlagen der Telematik AMW Übungsaufgaben

A closer look at the M/G/R PS model for TCP traffic

Lösungsvorschlag zur 12. Übung

Selective Reject ARQ

TCP/UDP PROF. DR. M. FÖLLER NORD INSTITUT EMBEDDED AND MOBILE COMPUTING

Chapter 11 TCP. CCNA 1 version 3.0 Wolfgang Riggert,, FH Flensburg auf der Grundlage von

Netzwerkperformance 2.0

Übung 10. Tutorübung zu Grundlagen: Rechnernetze und Verteilte Systeme (Gruppen Mo-T1 / Di-T11 SS 2016) Dennis Fischer

Übungen zur Vorlesung Rechnernetze und Verteilte Systeme

Evaluation of QoS- Aspects of mobile IPv6 Clients in an IEEE Network. Folkert Saathoff Oktober 2oo5

Netzwerktechnologien 3 VO

Version: Das Versionsfeld gibt an ob es sich um IPv4 oder um IPv6 handelt.

Algorithmen des Internets Sommersemester Vorlesung

Rechnerkommunikation Sommersemester September 2013

6. Die Transportschicht

Transmission Control Protokoll

Flusskontrolle. Grundlagen der Rechnernetze Übertragungssicherung 68

Universität Freiburg. Thema: IP-Multicast Marcel Tschöpe. IP-Multicast

Internet Protokolle. ICMP & Ping Internet Controll Message Protokolls

DCCP Datagram Congestion Control Protocol

Netzwerke. Netzwerk - Programmierung. Alexander Sczyrba. Madis Rumming.

Transportschicht. Einleitung Transmission Control Protocol, RFC793. Transportschicht

Vorlesung. Rechnernetze II Teil 10. Sommersemester 2006

Device Management Schnittstellen. Referat von Peter Voser Embedded Development GmbH

Konstruktion und Analyse des Angriffs im Rahmen der Bachelorarbeit an der Universität Hamburg

Internet Networking TCP Congestion Avoidance and Control

Verteilte Systeme - Java Networking (Sockets) -

Übung 5: Routing, Überlastabwehr

Abschlussklausur. Moderne Netzstrukturen. 18. Februar Aufgabe: Σ Note

Rechnernetze und Internettechnologien

Domain Name Service (DNS)

Transkript:

TCP flow control, congestion Christian Dondrup (cdondrup@techfak...) Tim Nelißen (tnelisse@techfak...) 1

Übersicht Einleitung Sliding Window Delayed Acknowledgements Nagle Algorithm Slow Start Congestion Avoidance Round-Trip Time (RTT) Silly Window Syndrome Quellen Fragen, Anregungen 2

Einleitung Warum lohnt sich ein zweiter Vortrag? Wir wollte auch einen Vortrag halten TCP ist nicht wirklich perfekt Ohne Kontrollen entstehen Congestions 3

Sliding Window (Ergänzung) Das Window besteht aus 3 Pointern 3ter Pointer wirkt als Grenze 4

Delayed Acknowledgements (Ergänzung) Wartet bis zu 200ms (Timer) Timer wird beim KernelBoot gestartet Empfänger sendet gesammelte ACKs 5

Delayed Acknowledgements Zeitdifferenz zwischen Empfang und Senden nicht genau 200ms RLogin benötigt echo Server hat kein Delayed ACK 6

Nagle Algorithm (RFC 986) Wann es Sinn macht Wann man es nicht braucht 7

Nagle Algorithm (wann es Sinn macht) Wird bei langsamen Netzwerken eingesetzt (z.b. RLogin) 1byte-Befehle werden gesammelt Entlastet das Netzwerk 8

Nagle Algorithm (Wann man es nicht braucht) X-Window (small messages wie Mausbewegung) Funktionstaste sind 3 byte groß z.b.: F1-Taste: ESC + [ + M F2-Taste: ESC + [ + N 9

Nagle Algorithm (Beispiel mit Nagle) 2tes Packet wird erst nach Empfang des ACKs gesendet Dauert insgesamt 3.39sec 10

Nagle Algorithm (Beispiel ohne Nagle) Pakete werden direkt gesendet Geht schneller (da timeout wieder gleich schnell) 11

Slow Start Flow Control durch den Sender 12

Slow Start Initialisiert das Congestion Window (cwnd) Überwacht die Ankommenden ACK s Erhöht das cwnd exponentiell 13

Slow Start Beispiel: Das cwnd wird mit 1 initialisiert Bei ACK auf 2 erhöht Bei den beiden nächsten ACK S auf 4 Dann auf 8 erhöht usw. 14

Congestion Avoidance Was tun bei Verstopfung? 15

Congestion Avoidance 1% Paketverlust durch Beschädigung Verstopfung (Congestion) durch zu hohe Sendegeschwindigkeit 16

Congestion Avoidance Slow Start und Congestion Avoidance sind zwei verschieden Algorithmen Beide Algorithmen werden aber zusammen implementiert, denn der eine verursacht die Verstopfung und der andere soll sie beheben. 17

Congestion Avoidance Man nehme: Congestion Window (cwnd) Wird mit 1 initialisiert Slow Start threshold size (ssthresh) Wenn eine Verstopfung auftritt wird das ssthresh auf die Hälfte der Paketzahl gesetzt, aber min. 2 18

Congestion Avoidance Bei Ankunft eines ACK wird das cwnd erhöht abhängig davon ob Slow Start oder Congestion Avoidance angewandt wird Wenn das cwnd kleiner oder gleich der ssthresh ist wird Slow Start angewandt, ansonsten Congestion Avoidance 19

Congestion Avoidance Beispiel: Verstopfung bei 32 Die ssthresh auf 16 Das cwnd auf 1 Slow Start beginnt und erhöht die Paketzahl exponentiell Ab 16 Pakete übernimmt Congestion Avoidance 20

Round-Trip Time (RTT) Woher weiß TCP wie lang eine Runde ist? 21

RTT Fundamental für TCP Kann sich mit jedem Paket ändern und wird deshalb jedes mal neu berechnet Jede neue Berechnung geht zu 10% in die geschätzte gesamt Zeit ein 22

RTT R = Geschätzte gesamt RTT M = Gemessene RTT = Glättungsfaktor (Empfohlenerweise mit dem Wert 0,9) 23

Silly Window Syndrome Was so alles passiert wenn man dies alles nicht beachtet 24

Silly Window Syndrome Beidseitiger Fehler Der Empfänger bietet ein Fenster mit einem Byte an Der Sender schickt Daten sofort wenn er sie bekommt Das Netz bricht unter 41 Byte Paketen zusammen 25

Quellen W. Richard Stevens TCP/IP Illustrated, Vol.1 Douglas E. Comer Internetworking with TCP/IP, Vol.1 26

Fragen & Anregungen Vielen Dank für eure Aufmerksamkeit 27