TCP-Staukontrolle
Erkunde ein vereinfachtes Reno-Staufenster: Slow Start, Wachstum und ein Verlustereignis.
Über dieses Tool
Vergleiche Timeout und drei doppelte ACKs an einer vereinfachten, ausgelasteten Reno-Verbindung. Anzeigen berechnet sofort alle 80 RTT-Runden. Die ganze Kurve bleibt sichtbar; Zeitpunkt, Schritt und Abspielen zeigen einzelne Zustände. Das Fenster ist durchgezogen, die Schwelle gestrichelt und der Punkt markiert den gewählten Zustand. Werte zeigt dieselben Zahlen ohne Diagramm.
Das Fenster beginnt mit einem Segment. Slow Start verdoppelt es pro RTT bis zur Schwelle; Stauvermeidung addiert danach ein Segment pro RTT. In der gewählten Verlustrunde wird die Schwelle max(2, floor(Fenster/2)). Timeout setzt das Fenster auf ein Segment und beginnt Slow Start; bei doppelten ACKs wird der Zustand nach abgeschlossener Fast Recovery an der neuen Schwelle gezeigt. Vorher und nachher liegen zur Veranschaulichung am selben Zeitpunkt. Kein Verlust oder Runde null lässt das Ereignis weg.
Beispiel: Anfangsschwelle 8, Verlust nach RTT 24: vorher Fenster 29, danach Schwelle 14. Timeout ergibt Fenster 1, doppelte ACKs ergeben 14. Die Umlaufzeit in Sekunden ändert nur die Zeitachse. Abspielen zeigt standardmäßig vier Zustände pro Sekunde, unabhängig von der simulierten RTT; es misst keine Netzwerkgeschwindigkeit.
Das ist ein Rundenmodell nach RFC 5681, keine TCP-Paketsimulation. Es setzt FlightSize gleich dem Staufenster und verwendet ganze Segmente. Fast-Recovery-Aufblähung, ACK-Zeitpunkte, Limited Transmit, verzögerte ACKs, Wiederholungsdauer, Empfangsfenster, SACK, CUBIC und moderne Anfangsfenster fehlen. Gezeigt wird ein einzelner injizierter Verlust, kein periodischer Sägezahn und keine Durchsatzvorhersage. TCP-Fenster und Durchsatz berechnet ideale Fenster-/RTT-Grenzen.
Vor Verlust springt direkt zum Zustand vor dem injizierten Ereignis; Schritt zeigt die Reaktion. In Werte wird der gewählte Zustand hervorgehoben. Eingaben, Feldfehler, Position, Abspieltempo, offene Tabelle und deren lokale Scrollposition bleiben beim Neuladen und Sprachwechsel lokal erhalten. Wiederhergestellte Simulationen sind immer pausiert, auch wenn sie vorher liefen. Eingabeänderungen stoppen die Wiedergabe und verbergen das alte Ergebnis. Anzeigen berechnet ab dem Anfang neu; Replay, Zurücksetzen und Navigation stoppen den alten Timer.