Überlastkontrolle in Netzen: TCP, CUBIC, BBR und QUIC

Lerne, warum Netze überlastet werden und wie Sender einen Engpass ohne zentrale Steuerung aufteilen. Verfolge das TCP-Überlastfenster durch Slow Start, Überlastvermeidung, Fast Retransmit und Fast Recovery, schätze den daraus entstehenden Durchsatz und erkenne, warum additive Erhöhung und multiplikative Verringerung konkurrierende Datenströme zu einer fairen Aufteilung führen. Vergleiche anschließend CUBIC und BBR, sieh, wie aktives Warteschlangenmanagement und explizite Überlastbenachrichtigung Sender vor einem Pufferüberlauf warnen, und erfahre, wie QUIC diese Ideen in einem neuen Transportprotokoll auf UDP-Basis umsetzt.

MittelEinheit 4 von 8 in Kurs: Computernetzwerke – Internetprotokolle, TCP/IP und Routing

Was du lernst

  1. Beschreibe, wie Verkehr, der die Kapazität einer Verbindung übersteigt, Warteschlangen, Verzögerung und Verlust verursacht, warum dadurch Netzkapazität verschwendet wird und welche zwei grundlegenden Möglichkeiten es gibt, Überlastung zu vermeiden.
    • Vollziehe nach, wie Last an einer Engpasswarteschlange zu Verzögerung und Verlust führt
      Definiere Überlastung und Engpassverbindung und vollziehe nach, wie die Warteschlange eines Routers wächst, wenn Verkehr schneller ankommt, als die Verbindung ihn senden kann.
    • Erkläre die Kosten von Überlastung und Überlastkollaps
      Zeige, wie Übertragungswiederholungen, unnötige Duplikate und spät auf langen Pfaden verworfene Pakete Kapazität verschwenden und wie unkontrollierte Sender den Nutzdatendurchsatz gegen null treiben können.
    • Vergleiche Ende-zu-Ende-Überlastkontrolle und netzgestützte Überlastkontrolle
      Ordne Verfahren zur Überlastkontrolle danach ein, woher das Überlastsignal stammt, welche Signale sie nutzen und ob sie ein Fenster oder eine Rate steuern.
  2. Vollziehe nach, wie ein TCP-Sender mit seinem Überlastfenster mithilfe von Slow Start und Überlastvermeidung die verfügbare Bandbreite erkundet, mit Fast Retransmit, Fast Recovery und Zeitüberschreitungen seine Rate verringert und welcher Durchsatz daraus entsteht.
    • Erkläre den Zusammenhang zwischen Überlastfenster und Senderate
      Bestimme anhand von Überlastfenster, Empfangsfenster und Umlaufzeit, wie schnell ein TCP-Sender überträgt und wie viele Daten auf einem Pfad unterwegs sein müssen.
    • Vollziehe Slow Start und Überlastvermeidung nach
      Berechne, wie cwnd im Slow Start und in der Überlastvermeidung wächst, und erkläre, wann der Sender zwischen beiden wechselt.
    • Erkläre die Reaktion von TCP auf Verluste: Zeitüberschreitungen, Fast Retransmit und Fast Recovery
      Wende die TCP-Regeln nach einer Zeitüberschreitung oder drei Duplikatquittungen an und vollziehe die Unterschiede zwischen TCP Tahoe, Reno und NewReno nach.
    • Schätze den TCP-Durchsatz anhand des Sägezahnverlaufs
      Schätze mit dem Sägezahnmodell und der Verlustanteilsformel den Durchsatz einer langlebigen TCP-Verbindung und erkenne, warum das klassische TCP auf schnellen, langen Pfaden Schwierigkeiten hat.
  3. Erkläre, warum additive Erhöhung und multiplikative Verringerung konkurrierende Datenströme zu gleichen Anteilen führen, miss die Fairness und erkenne die realen Bedingungen, unter denen die Anteile ungleich werden.
    • Zeige, warum AIMD zu einer fairen und effizienten Aufteilung konvergiert
      Zeige anhand des Zwei-Datenstrom-Modells von Chiu und Jain, wie additive Erhöhung und multiplikative Verringerung zwei Sender zu gleichen Anteilen an einer Verbindung führen.
    • Bewerte die Fairness zwischen realen Datenströmen
      Miss Fairness mit dem Jain-Fairnessindex und der Max-Min-Fairness und erkläre, wie RTT-Unterschiede, parallele Verbindungen, nicht auf Überlastung reagierender Verkehr und unterschiedliche Algorithmen die Anteile verändern.
  4. Beschreibe, warum volle Puffer lange Verzögerungen verursachen, wie aktives Warteschlangenmanagement Pakete frühzeitig verwirft oder markiert und wie explizite Überlastbenachrichtigung ein Überlastsignal ohne Paketverlust zum Sender überträgt.
    • Erkläre Bufferbloat und aktives Warteschlangenmanagement
      Erkläre, warum große Tail-Drop-Puffer und verlustbasierte Sender dauerhaft gefüllte Warteschlangen erzeugen und wie RED und CoDel Warteschlangen durch frühzeitiges Eingreifen kurz halten.
    • Beschreibe die explizite Überlastbenachrichtigung in IP und TCP
      Verfolge die ECN-Codepunkte und TCP-Flags vom Router über den Empfänger zum Sender und erkläre, wie Data Center TCP und L4S häufige Markierungen für sehr geringe Verzögerungen nutzen.
  5. Erkläre, wie CUBIC sein Fenster als Funktion der Zeit seit dem letzten Verlust vergrößert, wie verzögerungs- und modellbasierte Algorithmen wie Vegas und BBR volle Puffer vermeiden und welche Vor- und Nachteile sie haben.
    • Erkläre, wie CUBIC sein Überlastfenster vergrößert
      Berechne das CUBIC-Fenster anhand seiner kubischen Wachstumsfunktion und erkläre seine geringere Verringerung, seinen Reno-freundlichen Modus und warum sein Wachstum von der Zeit statt von der RTT abhängt.
    • Erkläre verzögerungsbasierte Überlastkontrolle und die Pfadmodellierung bei BBR
      Erkläre, wie Vegas aus der Verzögerung auf Warteschlangen schließt, wie BBR die Engpassbandbreite und die minimale RTT schätzt, um mit der richtigen Rate zu senden, und wie CUBIC und BBR im Vergleich abschneiden.
  6. Erkläre, warum TCP schwer zu ändern ist, wie QUIC einen zuverlässigen, sicheren Transport auf UDP aufbaut und wie QUIC Verluste erkennt und Überlastung kontrolliert.
    • Erkläre, warum Transportprotokolle verkrusten und wie QUIC dem entgegenwirkt
      Erkläre, wie Middleboxes und Kernelimplementierungen die Weiterentwicklung von TCP verlangsamen und wie QUIC-Datenströme, der kombinierte Handshake, Verschlüsselung und Verbindungs-IDs die Grenzen von TCP adressieren.
    • Beschreibe Verlusterkennung und Überlastkontrolle in QUIC
      Erkläre, wie Paketnummern und Quittungen von QUIC die Verlusterkennung verbessern, und wende die Regeln seiner standardmäßigen Überlastkontrolle für Anfangsfenster, Wiederherstellung, anhaltende Überlastung, ECN und Pacing an.

Überlastkontrolle in Netzen einfach erklärt

6 Kapitel

1

Warum Überlastung die Zustellung von Nutzdaten verlangsamt

Auch ein schneller Sender kann auf einen langsamen Pfad treffen. Mehrere Eingänge können eine Ausgangsverbindung speisen, deren Kapazität sich ihr gemeinsamer Verkehr teilen muss. Verfolge, was mit Paketen geschieht, wenn diese Kapazität erschöpft ist, und unterscheide anschließend die Zustellung von Nutzdaten von dem Verkehr, der für Wiederholungen und später verlorene Pakete aufgewendet wird. Der Sender muss eine Überlast früh genug erkennen, um sie zu verringern, sei es anhand eigener Beobachtungen oder anhand von Rückmeldungen der Router.

1.1 Von einer stark ausgelasteten Verbindung zur wachsenden Warteschlange

Überlastung beginnt, wenn Verkehr über einen längeren Zeitraum schneller in einem Teil eines Netzes eintrifft, als dieser ihn übertragen kann. Pakete warten im Ausgangspuffer eines Routers, der Warteschlange. Der Engpass ist die Verbindung auf dem Pfad, die für diesen Verkehr die geringste Kapazität bereitstellt.

Verfolge den Überschuss

Angenommen, ein Router empfängt 12 Mbps für eine Ausgangsverbindung, die 10 Mbps senden kann. Er kann den Ausgang nicht auf die Geschwindigkeit des Eingangs beschleunigen. In jeder Sekunde bleiben 2 Megabit zurück, nach Division durch 8 also 250.000 Byte. Ein anfangs leerer Puffer mit 1.000.000 Byte füllt sich in:

1.000.000/250.000=4 s.

Ein Paket, das sich hinter dieser Datenmenge einreiht, wartet, bis die Verbindung die Daten vor ihm übertragen hat:

1.000.000×8/10.000.000=0,8 s.

Sobald der Puffer voll bleibt, überträgt der Ausgang weiterhin nur 10 Mbps. Von den eintreffenden 12 Mbps werden etwa 2 Mbps verworfen, also ein Sechstel des angebotenen Verkehrs. Diese Berechnungen gehen von gleichbleibenden Ankunfts- und Abgangsraten aus; der genaue zeitliche Ablauf einzelner Pakete führt zu kleinen Abweichungen.

Entscheide, ob sich die Warteschlange leert

Ein kurzer Verkehrsschub unterscheidet sich von anhaltender Überlast. Eine Warteschlange kann einen Schub aufnehmen und sich leeren, wenn die Ankunftsrate unter die Ausgangsrate fällt. Entspricht eine gleichbleibende Ankunftsrate genau der Ausgangsrate, bleibt eine bestehende Warteschlange erhalten: Jedes abgehende Paket wird durch ein ankommendes ersetzt. Liegt die Ankunftsrate dauerhaft über der Ausgangsrate, wächst die Warteschlange, bis der Puffer voll ist.

Tatsächlicher Verkehr trifft ungleichmäßig ein. Selbst unterhalb der vollen durchschnittlichen Auslastung führen Verkehrsschübe dazu, dass Pakete warten. Nahe der Kapazitätsgrenze bleibt wenig freie Zeit, um solche Schübe abzubauen, sodass die durchschnittliche Verzögerung stark steigt. Überlastung erhöht vor allem den Warteschlangenanteil der Paketverzögerung; Verarbeitung, Übertragung und Ausbreitung sind eigene Bestandteile.

Benenne die gemeinte Rate
RateWas sie zählt
Angebotene LastIn das Netz gesendeter Verkehr einschließlich Übertragungswiederholungen
DurchsatzPro Sekunde zugestellte Pakete oder Bytes
NutzdatendurchsatzPro Sekunde zugestellte neue Nutzdaten der Anwendung, jeweils einmal gezählt

Unterschiedliche Geschwindigkeiten können den Engpass sichtbar machen: Ein lokales Netz mit 1 Gbps kann eine Zugangsverbindung mit 50 Mbps speisen. Bündelung hat denselben Effekt, wenn mehrere Routereingänge einen Ausgang teilen. Ein einzelner Eingang kann wenig Verkehr führen, während seine Summe mit dem Verkehr der anderen den Ausgang überlastet.

Wähle die richtige Begrenzung

Die Flusskontrolle schützt den Puffer des Empfängers mithilfe des von ihm bekannt gegebenen Empfangsfensters. Die Überlastkontrolle schützt den Pfad zwischen den Endpunkten. Ein Empfänger kann reichlich freien Speicher haben, während ein Router auf dem Pfad Pakete verwirft.

Ein größerer Routerpuffer kann einen längeren Verkehrsschub aufnehmen, doch anhaltende Überlast füllt jeden endlichen Puffer und erhöht die Wartezeit. Eine schnellere Engpassverbindung beseitigt diesen Kapazitätsmangel. Eine andere Verbindung begrenzt dann den Pfad; sie wird nur überlastet, wenn der Verkehr die dort verfügbare Kapazität übersteigt.

Wichtige Erkenntnisse

  • Überlastung lässt Warteschlangen wachsen, wenn die Ankunftsrate dauerhaft die verfügbare Ausgangsrate übersteigt.
  • Unterhalb der Kapazität leert sich eine Warteschlange; bei gleichbleibender Ankunftsrate genau auf Kapazitätsniveau bleibt sie bestehen.
  • Rechne wartende Bytes in Bit um, bevor du zur Bestimmung der Wartezeit durch die Übertragungsrate dividierst.
  • Der Nutzdatendurchsatz zählt Nutzdaten einmal; die angebotene Last umfasst Übertragungswiederholungen.
  • Die Flusskontrolle schützt den Empfänger; die Überlastkontrolle schützt den Netzwerkpfad.

1.2 Warum ein ausgelastetes Netz sehr wenig zustellen kann

Eine ausgelastete Verbindung ist nur dann nützlich, wenn ihr Verkehr zur Zustellung neuer Daten beiträgt. Überlastung verbraucht Kapazität auf eine Weise, die die Zustellung von Nutzdaten verringern kann, obwohl das Netz ausgelastet bleibt.

Erfasse die Kosten

Zuerst entsteht Warteschlangenverzögerung. Ein Videoanruf kann schwer verständlich werden, bevor Pakete verworfen werden, weil Sprache zu spät ankommt. Zuverlässigkeit allein kann diese Verzögerung nicht beheben.

Verlorene Pakete verursachen weitere Kosten: Ein zuverlässiger Sender überträgt sie erneut. Wenn eine Verbindung mit 10 Mbps gleich große Pakete überträgt und 20 % Daten wiederholen, die bereits über diese Verbindung übertragen wurden, entfallen höchstens 8 Mbps auf neue Daten:

10×(1−0,2)=8 Mbps.

Der Nutzdatendurchsatz der Anwendung ist geringer, wenn Header und mögliche Verluste an anderer Stelle berücksichtigt werden. Die Aktivität der Verbindung lässt den Fortschritt der Anwendung daher größer erscheinen, als er ist.

Manche Übertragungswiederholungen sind unnötig. Ein Paket kann in einer langen Warteschlange warten, wenn der Zeitgeber des Senders abläuft. Sein Ersatz gelangt dann in dasselbe stark belastete Netz. Beide Kopien können eintreffen, aber der Empfänger behält die Daten nur einmal. Die Warteschlange hat ein Verzögerungsproblem in zusätzliche angebotene Last verwandelt.

Betrachte die Verbindungen vor einem verworfenen Paket

Ein Verwerfen nahe dem Ziel kann Arbeit auf mehreren früheren Verbindungen verschwenden. Stell dir vor, ein Paket durchläuft die Verbindungen A und B, bevor es in der Warteschlange für C verworfen wird. Die Übertragungen auf A und B haben Kapazität genutzt, ohne das Paket zuzustellen. Wiederholt sich dies, bleibt auf den vorgelagerten Verbindungen weniger Kapazität für Verkehr, der sein Ziel hätte erreichen können.

Steigt die angebotene Last, steigt zunächst auch der Durchsatz. Werden jedoch genügend Pakete auf nachgelagerten Verbindungen verworfen, führt eine höhere Last dazu, dass mehr Verkehr für Arbeit aufgewendet wird, die verschwendet sein wird. Der Ende-zu-Ende-Durchsatz kann einen Höchstwert erreichen und dann fallen. Der Überlastkollaps ist der Extremfall: Die angebotene Last bleibt hoch, während der Nutzdatendurchsatz gegen null fällt.

Im Oktober 1986 fiel der Durchsatz zwischen dem Lawrence Berkeley Laboratory und der UC Berkeley von 32 kbps auf 40 bps, also um den Faktor 800. Die Arbeit von Jacobson und Karels aus dem Jahr 1988 führte eine abgestimmte Reaktion ein: Slow Start, Überlastvermeidung, eine bessere Schätzung der Umlaufzeit und exponentielles Backoff des Zeitgebers. Fenstersteuerung und sinnvoll eingestellte Zeitgeber wirken an unterschiedlichen Stellen des Rückkopplungskreises.

Finde den sinnvollen Betriebsbereich

Raj Jains Kniepunkt und Klippe beschreiben zwei Schwellen. Jenseits des Kniepunkts bringt zusätzliche Last wenig zusätzlichen Durchsatz, aber viel mehr Verzögerung. Jenseits der Klippe fällt der Durchsatz, weil Verluste und verschwendete Arbeit überwiegen. Die Überlastkontrolle strebt eine effiziente Zustellung nahe dem Kniepunkt an und hält Abstand zum Kollaps.

Im Internet gibt es keine zentrale Steuerung, die jedem Sender eine Rate zuweist. Jeder Sender muss auf die Rückmeldungen reagieren, die er erhält. Sendet einer weiterhin mit einer festen hohen Rate, während andere ihre Rate verringern, kann er deren Kapazität beanspruchen und die Überlast verschärfen.

Übertragungswiederholung macht einen Bytestrom zuverlässig, aber sie macht Verluste nicht kostenlos. Die Wiederherstellung verbraucht Kapazität und verzögert die Zustellung fehlender Daten; das Warten auf einen Zeitgeber für Übertragungswiederholungen kann die Verbindung viel länger zum Stillstand bringen als Fast Recovery.

Wichtige Erkenntnisse

  • Warteschlangenverzögerung kann interaktiven Verkehr beeinträchtigen, bevor Pakete verloren gehen.
  • Übertragungswiederholungen und unnötige Duplikate verbrauchen Kapazität, ohne neue Anwendungsdaten hinzuzufügen.
  • Ein später verworfenes Paket verschwendet die Übertragungen auf vorgelagerten Verbindungen, die es befördert haben.
  • Ein Überlastkollaps verbindet hohe Netzaktivität mit einer sehr geringen Zustellung von Nutzdaten.
  • Der Kniepunkt bezeichnet steigende Verzögerung bei geringem Durchsatzzuwachs; die Klippe bezeichnet fallenden Durchsatz.
  • Jeder Sender trägt dazu bei, die angebotene Last innerhalb der Kapazität des Pfades zu halten.

1.3 Wie Sender erkennen, wann sie langsamer werden müssen

Ein Sender sieht nicht jede Routerwarteschlange auf seinem Pfad direkt. Überlastkontrolle ist ein Rückkopplungsprozess: Die Zustellung wird beobachtet, die Beobachtungen werden gedeutet und die Menge oder Rate des ins Netz eintretenden Verkehrs wird angepasst.

Bestimme die Quelle der Rückmeldung

Bei der Ende-zu-Ende-Überlastkontrolle schließen Endpunkte aus Verlust oder Verzögerung auf Überlastung, ohne eine ausdrückliche Routernachricht zu erhalten. Reno nutzt Verlust. Vegas nutzt Änderungen der Umlaufzeit. BBR erstellt aus Messungen der Zustellrate und RTT ein Pfadmodell.

Bei der netzgestützten Überlastkontrolle liefert ein Router eine ausdrückliche Rückmeldung. ECN markiert ein Paket auf dem Weg zum Empfänger, der die Markierung in seiner Quittung meldet. Ältere ATM-Verfahren konnten eine ausdrücklich erlaubte Rate melden. Ein Router kann auch eine Nachricht direkt an den Sender zurückschicken, ein sogenanntes Drosselpaket. ICMP Source Quench im Internet nutzte diesen Ansatz und wurde 2012 für veraltet erklärt.

Deute Signale sorgfältig
SignalWas es bietetWas den Sender irreführen kann
VerlustEinen Hinweis darauf, dass Pakete nicht angekommen sindBeschädigung auf Funkverbindungen kann ohne Überlastung zu Verlust führen
Steigende RTTEine frühe Warnung vor zusätzlicher WartezeitAuch eine Routenänderung kann die RTT erhöhen
Explizite MarkierungenEine Überlastwarnung des Routers ohne Verlust markierter DatenDer Pfad und die Endpunkte müssen das Verfahren unterstützen

Bei Tail-Drop-Warteschlangen tritt Verlust normalerweise auf, nachdem sich der Puffer gefüllt hat. Aktives Warteschlangenmanagement kann Pakete früher verwerfen oder markieren. Das verändert den Zeitpunkt des Signals, aber der Sender muss weiterhin reagieren.

Die kleinste beobachtete RTT ist nützlich, weil sie näherungsweise einem Pfad mit wenig Wartezeit in Warteschlangen entspricht. Eine RTT über diesem Minimum deutet auf Wartezeit hin, doch ein Endpunkt muss Messungen über einen längeren Zeitraum auswerten. Weder ein einzelner störanfälliger Messwert noch jedes verlorene Funkpaket zeigt die Ursache mit Sicherheit an.

Steuere ein Fenster oder eine Rate

Ein fensterbasierter Sender begrenzt unquittierte Daten, die unterwegs sind. Wenn Quittungen zurückkommen, wird Platz für neue Daten frei. Ein ratenbasierter Sender legt eine Zielrate fest und nutzt meist Pacing, um Pakete über die Zeit zu verteilen. Die Steuergrößen hängen zusammen:

Rate≈Fenster/RTT.

Zum Beispiel entsprechen 100.000 Byte pro 50 ms einer Rate von 2.000.000 Byte/s oder 16 Mbps, wenn das Fenster die maßgebliche Beschränkung ist. Eine ratenbasierte Steuerung kann ebenfalls ein Fenster als obere Schranke für ausstehende Daten nutzen.

Wäge mehrere Ziele ab

Effizienz bedeutet, die verfügbare Engpasskapazität auszulasten. Fairness betrifft die Aufteilung unter konkurrierenden Datenströmen. Geringe Verzögerung setzt kurze Warteschlangen voraus; Stabilität vermeidet große, wiederholte Schwankungen; Reaktionsfähigkeit bedeutet, sich an Änderungen der Kapazität oder der Konkurrenz anzupassen. Eine Regel, die einen Pfad schnell auslastet, kann dennoch ungeeignet sein, um die Verzögerung gering zu halten oder mit anderen Algorithmen zu teilen.

Die TCP-Überlastkontrolle läuft normalerweise im Betriebssystem, die von QUIC normalerweise in einer Anwendungsbibliothek. UDP stellt keine Überlastkontrolle bereit, sodass Anwendungen, die es nutzen, selbst dafür sorgen müssen. Das Trägerprotokoll entbindet nicht von der Pflicht, auf Überlastung zu reagieren.

Wichtige Erkenntnisse

  • Ende-zu-Ende-Verfahren schließen auf Überlastung; netzgestützte Verfahren erhalten ausdrückliche Rückmeldungen von Routern.
  • Verlust, Verzögerung und explizite Markierungen unterscheiden sich im Zeitpunkt und in den Grenzen ihrer Deutung.
  • Fenstersteuerung begrenzt unterwegs befindliche Daten; Pacing verteilt Pakete mit einer gewählten Rate über die Zeit.
  • Effizienz, Fairness, Verzögerung, Stabilität und Reaktionsfähigkeit müssen gemeinsam beurteilt werden.
2

Wie TCP sein Fenster vergrößert und nach Verlusten wiederherstellt

TCP steuert, wie viele unquittierte Daten es im Netz belässt. Quittungen ermöglichen das Wachstum dieser Menge; Verluste lassen sie schrumpfen. Verfolge das Fenster in Segmenten, um die Wachstumsregeln deutlich zu sehen, und rechne anschließend in Byte und Sekunden um, um eine Rate zu schätzen. Die Unterscheidung zwischen einer Zeitüberschreitung und der Wiederherstellung nach Duplikatquittungen erklärt die unterschiedlichen Rückgänge in einem Fensterverlauf und zeigt, warum das klassische TCP auf schnellen Pfaden mit langen Umlaufzeiten Schwierigkeiten bei der Wiederherstellung hat.

2.1 Fenster, Umlaufzeit und Pfad

Das Überlastfenster, cwnd, ist eine senderseitige Begrenzung für unquittierte Daten, die unterwegs sind. Es wird in Byte gemessen, auch wenn Ablaufbeispiele häufig Segmente maximaler Größe zählen. Es ist kein TCP-Headerfeld. Der Empfänger gibt eine andere Begrenzung bekannt: das Empfangsfenster rwnd.

Wende beide Begrenzungen an

Neue Übertragungen müssen sowohl die Flusskontrolle als auch die Überlastkontrolle einhalten. Die nutzbare Begrenzung ist:

min⁡(cwnd,rwnd).

Beträgt cwnd 30.000 Byte und rwnd 18.000 Byte, ist die Begrenzung des Empfängers maßgeblich. Sind noch 12.000 Byte unquittiert unterwegs, kann der Sender weitere 6.000 Byte senden. Nach einer Verringerung des Überlastfensters können bereits gesendete Daten die neue Begrenzung übersteigen; der Sender wartet auf Quittungen, bevor er weitere Daten sendet.

Die maximale Segmentgröße, MSS, zählt Anwendungsdaten ohne Header. Von einer Ethernet-MTU mit 1.500 Byte bleiben nach Abzug von 20 Byte für den IPv4-Header und 20 Byte für den TCP-Header ohne Optionen 1.460 Byte. Standards verwenden SMSS für die MSS des Senders.

Rechne ein Fenster in eine Rate um

Ein durch sein Fenster begrenzter Sender liefert ungefähr ein Fenster pro RTT. Bei einem cwnd von 65.536 Byte und einer RTT von 50 ms:

65.536/0,05=1.310.720 Byte/s.

Multipliziere mit 8, um etwa 10,5 Mbps zu erhalten. Diese Schätzung setzt außerdem genügend Anwendungsdaten, ein mindestens ebenso großes Empfangsfenster und einen Pfad voraus, der die resultierende Rate übertragen kann.

Laste den Pfad aus, ohne seine Warteschlange zu füllen

Das Bandbreiten-Verzögerungs-Produkt, BDP, ist die Engpassbandbreite mal der minimalen RTT ohne Warteschlangen. Für 100 Mbps und 40 ms:

100.000.000×0,04=4.000.000 Bit.

Die Division durch 8 ergibt 500.000 Byte, also etwa 342 Segmente à 1.460 Byte. Ein BDP an unterwegs befindlichen Daten hält diesen idealisierten Engpass ohne dauerhaft gefüllte Warteschlange ausgelastet. Weniger Daten lassen Kapazität ungenutzt; überschüssige Daten warten und erhöhen die gemessene RTT. Berechnest du das BDP aus einer bereits erhöhten RTT, hältst du wartende Daten fälschlich für Daten, die der Pfad benötigt.

Die Quittungstaktung hilft, das Tempo zu halten. Wenn Pakete den Engpass verlassen, kehren Quittungen zurück und geben Platz für Ersatz frei. Im stationären Zustand helfen Abgänge daher, den Zeitpunkt neuer Ankünfte zu bestimmen. Das ist der Gedanke der Paketerhaltung hinter der Selbsttaktung von TCP.

Lege Anfangswert und Schwelle fest

Das Anfangsfenster von RFC 5681 reicht je nach SMSS von zwei bis vier Segmenten: vier bis einschließlich 1.095 Byte, drei bis einschließlich 2.190 Byte und darüber zwei. RFC 6928 erlaubt ein Anfangsfenster von bis zu zehn Segmenten. Ein Ablaufbeispiel, das bei einem Segment beginnt, ist eine nützliche Darstellung zum Lernen und keine Aussage, dass alle neuen Verbindungen dort beginnen.

ssthresh, die Slow-Start-Schwelle, bestimmt den Wachstumsmodus. Darunter nutzt TCP Slow Start, darüber Überlastvermeidung. Bei Gleichheit erlaubt RFC 5681 beide Möglichkeiten. Eine hohe Anfangsschwelle ermöglicht einem neuen Sender, die Kapazität durch Slow Start zu erkunden.

Wichtige Erkenntnisse

  • cwnd ist ein interner Zustand des Senders; rwnd wird vom Empfänger bekannt gegeben.
  • Neue Daten müssen beide Fenster einhalten, nachdem bereits unterwegs befindliche Bytes berücksichtigt wurden.
  • Die MSS zählt Anwendungsdaten ohne IP- und TCP-Header.
  • Eine durch das Fenster begrenzte Rate entspricht ungefähr dem nutzbaren Fenster dividiert durch die RTT.
  • Das BDP nutzt die RTT ohne Warteschlangen; überschüssige unterwegs befindliche Daten bilden eine Warteschlange.
  • Die Quittungstaktung bindet neue Übertragungen an die Zustellung über den Engpass.
  • Anfangsfenster und ssthresh bestimmen, wie ein Ablauf beginnt und wächst.

2.2 Exponentielles Wachstum, dann ein Segment pro Umlaufzeit

TCP muss zunächst erkunden, wie viel Verkehr der Pfad übertragen kann. Slow Start vergrößert das Fenster von einem kleinen Anfangswert aus schnell. Sobald die Slow-Start-Schwelle erreicht ist, erkundet die Überlastvermeidung die Kapazität vorsichtiger.

Zähle Quittungen im Slow Start

RFC 5681 erhöht cwnd für jede Quittung neuer Daten um bis zu eine SMSS:

Δcwnd=min⁡(N,SMSS),

wobei N die Anzahl der neu quittierten Bytes ist. Bei einer Quittung pro vollem Segment und genügend Daten zum Füllen jedes Fensters schafft jedes gesendete Segment in der nächsten Runde Platz für zwei: einen Ersatz und ein Segment aus dem vergrößerten Fenster.

Ausgehend von 1 MSS lauten die Werte pro Runde 1, 2, 4, 8, 16, 32 und 64 MSS. Nach sechs RTTs sind 64 MSS erreicht. Bei 100 ms pro RTT sind das 0,6 s. Der Name bezeichnet einen sichereren Beginn als das sofortige Senden eines ganzen Empfangsfensters; das Wachstum selbst ist exponentiell.

Verzögerte Quittungen verändern die Rechnung. Sendet der Empfänger für jeweils zwei volle Segmente eine Quittung, ergibt die einfache Regel pro Quittung etwa das 1,5-Fache pro RTT. Appropriate Byte Counting, beschrieben in RFC 3465, nutzt neu quittierte Bytes, um die Abhängigkeit von der Häufigkeit der Quittungen zu beheben.

Wechsle den Wachstumsmodus

Wähle für ein Ablaufbeispiel mit einem anfänglichen cwnd von 1 MSS und ssthresh von 8 MSS bei Gleichheit die Überlastvermeidung. Der Ablauf lautet:

1, 2, 4, 8, 9, 10, 11, 12 MSS.

Die ersten drei Änderungen verdoppeln das Fenster. Spätere Änderungen addieren eine MSS pro RTT. Verlust kann beide Phasen unterbrechen. Implementierungen mit HyStart++ (RFC 9406) können Slow Start außerdem vorzeitig verlassen, wenn die Verzögerung steigt.

Erkläre die additive Erhöhung

Eine übliche Regel pro Quittung während der Überlastvermeidung lautet:

Δcwnd=SMSS2/cwnd.

Bei 10 MSS fügt eine Quittung etwa 0,1 MSS hinzu. Im Verlauf der Runde treffen etwa zehn Quittungen ein, sodass die gesamte Erhöhung etwa eine MSS beträgt. Der Zuwachs pro Quittung wird mit wachsendem cwnd kleiner, sodass die Erhöhung pro Runde ungefähr konstant bleibt.

Dieser Unterschied ist auf einem großen Pfad bedeutsam. Von 16 auf 32 MSS dauert es im idealen Slow Start eine RTT, in der Überlastvermeidung aber sechzehn RTTs. Das langsamere Wachstum verringert eine plötzliche Überschreitung der Kapazität, sobald der Sender über eine brauchbare Schätzung verfügt.

Erkenne einen Neustart

Slow Start ist nicht auf den Beginn einer Verbindung beschränkt. Der Ablauf des Wiederholungszeitlimits setzt cwnd auf ein Segment zurück. Auch eine Ruhephase, die länger als das Wiederholungszeitlimit dauert, erfordert einen Neustart mit höchstens dem Anfangsfenster, weil die frühere Quittungstaktung und Kapazitätsschätzung möglicherweise nicht mehr zum Pfad passen.

Die Überlastvermeidung hält cwnd nicht auf einem festen sicheren Wert. Sie erhöht das Fenster weiter, bis eine Überlastrückmeldung eintrifft. Auf einem Pfad mit Tail Drop führt dieses fortgesetzte Erkunden tendenziell zu einer dauerhaft gefüllten Warteschlange, bevor ein Verlust dem Sender signalisiert, seine Rate zu verringern.

Wichtige Erkenntnisse

  • Bei einer Quittung pro Segment verdoppelt sich cwnd im idealen Slow Start in jeder RTT.
  • Verzögerte Quittungen verlangsamen das Wachstum nach der einfachen Regel pro Quittung.
  • Die Überlastvermeidung addiert etwa eine MSS pro RTT, nicht pro Quittung.
  • ssthresh trennt die Wachstumsmodi; ein Ablaufbeispiel muss bei Gleichheit eine Regel wählen.
  • Zeitüberschreitungen und lange Ruhephasen können einen erneuten Slow Start erfordern.

2.3 Unterschiedliche Verluste führen zu unterschiedlichen Wiederherstellungsverläufen

TCP kann aus einem Zeitgeber oder aus Duplikatquittungen auf ein fehlendes Segment schließen. Der Unterschied ist wichtig: Eine Zeitüberschreitung liefert weniger Hinweise darauf, dass das Netz weiterhin Verkehr zustellt, als drei Duplikatquittungen.

Lege die neue Schwelle fest

Reno verwendet die tatsächlich ausstehende Datenmenge, FlightSize, um Folgendes festzulegen:

ssthresh=max⁡(FlightSize/2, 2×SMSS).

FlightSize liegt bei einer voll ausgelasteten Übertragung oft nahe bei cwnd. Beide Werte müssen aber nicht gleich sein, wenn die Anwendung wenig Daten sendet. Die untere Schranke verhindert, dass die Schwelle unter zwei Segmente fällt.

Nach einer Zeitüberschreitung überträgt der Sender erneut, setzt cwnd auf eine SMSS und beginnt Slow Start erneut. Wiederholte Zeitüberschreitungen für dieselben Daten verdoppeln das Wiederholungszeitlimit. Dieses exponentielle Backoff verhindert, dass ein anhaltender Fehler einen ebenso anhaltenden Strom von Wiederholungsversuchen erzeugt.

Stelle die Übertragung vor Ablauf des Zeitgebers wieder her

Drei Duplikatquittungen zeigen, dass drei spätere Segmente hinter einer Lücke angekommen sind. Sie bedeuten nicht, dass drei Segmente verloren gingen. Ein oder zwei Duplikate können durch eine andere Reihenfolge beim Eintreffen entstehen. Daher wartet TCP auf das dritte, bevor Fast Retransmit das fehlende Segment sendet.

Reno beginnt dann Fast Recovery. Angenommen, FlightSize beträgt 12 MSS. Die neue Schwelle beträgt 6 MSS und Reno setzt vorübergehend:

cwnd=6+3=9 MSS.

Die drei zusätzlichen Segmente berücksichtigen Pakete, die nachweislich das Netz verlassen haben. Jede weitere Duplikatquittung bläht cwnd um eine MSS auf und ermöglicht weiteres Senden, wenn das Fenster es erlaubt. Sobald eine Quittung die kumulative Quittung voranschiebt, setzt Reno cwnd wieder auf 6 MSS und setzt die Überlastvermeidung fort.

Ereignis bei 12 MSS ausstehenden DatenTahoeReno
Zeitüberschreitungcwnd wird auf 1 MSS gesetztcwnd wird auf 1 MSS gesetzt
Dritte DuplikatquittungErneut übertragen und bei 1 MSS neu beginnenErneut übertragen und Fast Recovery bei 9 MSS beginnen
Erfolgreiche WiederherstellungMit Slow Start wachsenAuf 6 MSS zurücksetzen, dann additiv wachsen

Bei einem Anfangsfenster von 1 MSS und ssthresh von 8 MSS wächst cwnd vor dem Verlust über 1, 2, 4, 8, 9, 10, 11, 12 MSS. Reno fährt schließlich mit 6, 7, 8, 9 fort. Tahoe beginnt erneut mit 1, 2, 4, erreicht die neue Schwelle von 6 und fährt dann mit 7, 8 fort.

Behebe mehrere Lücken in einem Fenster

Das klassische Reno verlässt Fast Recovery bei der ersten Quittung neuer Daten. Deckt diese Quittung nur einen Teil der ursprünglich unterwegs befindlichen Daten ab, bleibt eine weitere Lücke. Reno kann erneut verringern oder eine Zeitüberschreitung erfahren.

NewReno (RFC 6582) bleibt bei einer solchen Teilquittung in Fast Recovery und überträgt das nächste fehlende Segment erneut. Es verlässt die Phase, wenn alle bei Beginn der Wiederherstellung ausstehenden Daten quittiert sind. SACK meldet empfangene Blöcke ausdrücklich; eine SACK-basierte Wiederherstellung kann mehrere Lücken innerhalb einer Umlaufzeit erkennen und beheben.

Ein Überlastungsereignis sollte normalerweise eine Verringerung verursachen, auch wenn mehrere Pakete verloren gehen. NewReno und die SACK-basierte Wiederherstellung handhaben dies zuverlässiger als das klassische Reno. CUBIC verwendet für gewöhnliche Überlastsignale einen anderen Verringerungsfaktor und behält 70 % bei, beginnt nach einer Zeitüberschreitung aber ebenfalls erneut bei einem Segment.

Wichtige Erkenntnisse

  • Reno legt ssthresh anhand von FlightSize fest, mit mindestens zwei SMSS.
  • Eine Zeitüberschreitung setzt cwnd auf eine SMSS zurück; wiederholte Zeitüberschreitungen verlängern das Zeitlimit durch Backoff.
  • Drei Duplikatquittungen lösen Fast Retransmit aus; sie zeigen später eingetroffene Segmente hinter einer Lücke an.
  • Reno bläht cwnd während Fast Recovery auf und setzt es beim Verlassen der Phase auf ssthresh zurück.
  • NewReno bleibt bei Teilquittungen in der Wiederherstellungsphase, um mehrere Verluste zu beheben.
  • SACK meldet empfangene Blöcke, sodass der Sender mehr als eine Lücke finden kann.
  • Tahoe beginnt nach einem durch Duplikatquittungen erkannten Verlust erneut mit Slow Start; Reno wächst nach der Wiederherstellung normalerweise additiv weiter.
  • Verringerungen des Überlastfensters beziehen sich auf Überlastungsereignisse, nicht auf jedes einzelne verlorene Paket.

2.4 Schätze die Rate einer langlebigen Übertragung

Das klassische Reno erhöht sein Fenster wiederholt und verringert es nach einer Überlastung. Der entstehende Sägezahnverlauf liefert eine nützliche Schätzung für den stationären Zustand, wenn die RTT ungefähr konstant ist, Fast Retransmit Verluste erkennt und keine Zeitüberschreitungen oder Slow-Start-Phasen auftreten.

Bilde den Durchschnitt des Fensters

Das Spitzenfenster betrage W Segmente. Eine Halbierung ergibt einen Bereich von W/2 bis W, dessen Durchschnitt 0,75 W beträgt. Multipliziere mit der MSS, um Byte pro Umlaufzeit zu erhalten, und dividiere dann durch die RTT:

durchschnittliche Rate≈0,75 W MSS/RTT.

Bei W von 24 Segmenten, einer MSS von 1.460 Byte und einer RTT von 80 ms beträgt die Spitzenrate 3,504 Mbps. Der Durchschnitt liegt bei etwa 2,63 Mbps. Denk daran, dass ein Fenster in Segmenten einen Faktor für die Segmentgröße benötigt; bei einem Fenster, das bereits in Byte angegeben ist, entfällt dieser Faktor.

Stelle den Zusammenhang zwischen Durchsatz und Verlust her

Die Mathis-Näherung beschreibt dasselbe Reno-ähnliche Verhalten mithilfe des Verlustanteils L:

T≈1,22 MSSRTTL.

Steht die MSS in Byte und die RTT in Sekunden, wird T in Byte/s angegeben. Bei einer MSS von 1.460 Byte, einer RTT von 0,1 s und einem Verlustanteil von 0,0001 beträgt der Nenner 0,001 s. Das Ergebnis sind 1.781.200 Byte/s, nach Multiplikation mit 8 also etwa 14,25 Mbps.

Bei festem Verlustanteil halbiert eine Verdopplung der RTT den Durchsatz. Bei fester RTT muss der Verlustanteil auf ein Viertel fallen, um den Durchsatz zu verdoppeln, weil der Nenner die Quadratwurzel des Verlustanteils enthält. Ein Verlustanteil von 0,0001 bedeutet 0,01 %, nicht 0,0001 %.

Erkenne das Problem bei hohen Übertragungsraten

Ein Pfad mit 10 Gbps und einer RTT ohne Warteschlangen von 100 ms benötigt zur Auslastung 1 Milliarde Bit oder 125.000.000 Byte an unterwegs befindlichen Daten. Bei Segmenten mit 1.500 Byte ergibt das etwa 83.333 Segmente. Nach einer Halbierung dieses Fensters müssen etwa 41.667 Segmente wieder hinzugewonnen werden. Reno fügt eines pro RTT hinzu, sodass das etwa 4.167 s dauert, fast 70 Minuten.

Der Wert von 83.333 Segmenten ist das Fenster, das benötigt wird, um zu einem bestimmten Zeitpunkt mit 10 Gbps zu senden. Ein Reno-Sägezahn mit durchschnittlich 10 Gbps bräuchte eine höhere Spitze, weil sein durchschnittliches Fenster nur drei Viertel seines Spitzenwerts beträgt. Die Verlustanteilsformel schätzt, dass für einen dauerhaften Durchschnitt von 10 Gbps bei dieser MSS und RTT ungefähr ein Segment unter 4,7 Milliarden verloren gehen darf.

Prüfe weitere Begrenzungen

Eine Überlastkontrolle kann nicht schneller zustellen, als der Engpass es erlaubt, und ein kleines Empfangsfenster kann vor cwnd zur Begrenzung werden. Verwende die kleinste zutreffende Schranke. Zeitüberschreitungen senken die Rate unter den Wert des einfachen Modells, und die Übertragung eines kleinen Objekts kann vollständig im Slow Start enden. Ihre Abschlusszeit hängt stark von den Anfangsrunden und dem Anfangsfenster ab, sodass die Formel für langlebige Übertragungen sie schlecht beschreibt.

Eine schnellere Zugangsverbindung hilft daher nur, wenn sie eine wirksame Begrenzung beseitigt. Eine lange RTT, Verlust oder ein kleines Fenster können eine einzelne Verbindung weit unter der Kapazität der ausgebauten Verbindung halten.

Wichtige Erkenntnisse

  • Ein Reno-Sägezahn von W/2 bis W hat ein durchschnittliches Fenster von etwa 0,75 W.
  • Das Mathis-Modell ergibt einen Durchsatz proportional zu 1/RTT und 1/√L.
  • Achte beim Berechnen von Raten auf einheitliche Angaben in Segmenten, Byte, Bit und Sekunden.
  • Auf Pfaden mit großem BDP erholt sich Reno langsam, weil es nur um ein Segment pro RTT wächst.
  • Engpasskapazität und Empfangsfenster bleiben voneinander unabhängige obere Schranken.
  • Kurze Übertragungen und Verbindungen mit vielen Zeitüberschreitungen benötigen mehr als ein Modell für den stationären Zustand.
3

Wie Datenströme eine gemeinsam genutzte Verbindung aufteilen

Eine Verbindung auszulasten und sie fair aufzuteilen sind unterschiedliche Ziele. Zwei Datenströme können die gesamte Kapazität nutzen, während einer fast alles beansprucht. Vollziehe nach, wie gleiche additive Erhöhungen und proportionale Verringerungen ihre Raten verändern, und prüfe dann, was bei unterschiedlichen Bedingungen geschieht. Fairnessmaße helfen, das Ergebnis zu beschreiben. Um ein Maß zu deuten, musst du aber auch wissen, wen die Datenströme vertreten und wie viel Verkehr jeder benötigt.

3.1 Warum AIMD Datenströme zu gleichen Anteilen führt

Wenn K aktive Datenströme jeweils mehr Kapazität benötigen, als ein Engpass ihnen geben kann, beträgt ein gleicher Anteil pro Datenstrom R/K, wobei R die verfügbare Rate ist. Effizienz fragt danach, ob ihre Raten zusammen R ergeben. Fairness fragt danach, wie gleichmäßig sie die Kapazität aufteilen.

Trage zwei Raten in ein Diagramm ein

In einem Chiu-Jain-Diagramm entsprechen die waagerechte und die senkrechte Koordinate den Raten der beiden Datenströme. Die Effizienzgerade lautet:

x1+x2=R.

Die Fairnessgerade ist die Diagonale, auf der die Raten gleich sind. Ihr Schnittpunkt steht für die faire Aufteilung bei voller Auslastung. Auf einer Verbindung mit 10 Mbps sind das 5 Mbps pro Datenstrom. Punkte unterhalb der Effizienzgeraden lassen Kapazität ungenutzt; Punkte oberhalb bieten mehr Verkehr an, als die Verbindung übertragen kann.

Unterscheide die beiden Anpassungen

Die additive Erhöhung addiert zu jeder Rate denselben Betrag. Ausgehend von 8 und 1 Mbps ergeben sich durch Addition von jeweils 0,5 Mbps die Raten 8,5 und 1,5 Mbps. Die Differenz bleibt 7 Mbps, aber der kleinere Datenstrom gewinnt im Verhältnis zu seiner Ausgangsrate mehr hinzu. Im Diagramm bewegt sich der Punkt parallel zur Gleichheitsdiagonalen.

Die multiplikative Verringerung multipliziert beide Raten mit demselben Faktor. Die Halbierung von 9 und 2 Mbps ergibt 4,5 und 1 Mbps. Ihr Verhältnis bleibt unverändert, während die absolute Differenz von 7 auf 3,5 Mbps fällt. Der Punkt bewegt sich zum Ursprung hin und die Überlast wird schnell abgebaut.

Dies sind unterschiedliche Arten der Verbesserung: Eine gleiche Addition verbessert das relative Verhältnis; eine proportionale Verringerung verkleinert den absoluten Abstand. Die Wiederholung beider Schritte verhindert, dass der Abstand beim erneuten Erkunden der Kapazität wieder wächst.

Verfolge mehrere Zyklen

Beginne bei 8 und 1 Mbps auf der Verbindung mit 10 Mbps. Addiere pro Schritt und Datenstrom 0,5 Mbps und verringere die Raten erst, nachdem ihre Summe die Kapazität übersteigt. Nach zwei Erhöhungen betragen die Raten 9 und 2, zusammen 11. Die Halbierung ergibt 4,5 und 1.

Fünf weitere Erhöhungen führen zu 7 und 3,5, zusammen 10,5. Die Halbierung ergibt 3,5 und 1,75. Die Abstände betrugen 7; 3,5 und 1,75 Mbps. Eine weitere gleichzeitige Halbierung führt zu einem nächsten Abstand von 0,875 Mbps. Die Datenströme nähern sich gleichen Anteilen, während ihre Summe weiterhin um die verfügbare Kapazität schwankt.

Vergleiche andere Anpassungsregeln
RegelWas bei ungleichen Raten geschieht
Additive Erhöhung, additive VerringerungGleiche Additionen und Subtraktionen erhalten den absoluten Abstand
Multiplikative Erhöhung, multiplikative VerringerungGleiche proportionale Änderungen erhalten das Verhältnis der Raten
Multiplikative Erhöhung, additive VerringerungDas Wachstum begünstigt den größeren Datenstrom und das Gleichgewicht kann sich verschlechtern
Additive Erhöhung, multiplikative VerringerungWiederholte Zyklen nähern sich gleichen Anteilen und effizienter Nutzung

Diese Konvergenz setzt gleiche RTTs, zeitgleiche Überlastrückmeldungen, übereinstimmende Reaktionen und Datenströme voraus, die lange genug aktiv bleiben. Renos additiver Schritt beträgt etwa eine MSS pro RTT und sein Verringerungsfaktor eine Hälfte. Andere positive additive Schritte und Verringerungsfaktoren zwischen null und eins führen zum selben grundlegenden Konvergenzargument. Reale Datenströme müssen nicht alle Annahmen erfüllen, sodass ein zu einem bestimmten Zeitpunkt ungleiches Wertepaar für sich genommen kein Versagen von AIMD zeigt.

Wichtige Erkenntnisse

  • Effizienz betrifft die Summe der Raten; Fairness betrifft ihre Aufteilung.
  • Gleiche additive Erhöhungen erhalten den absoluten Abstand und verbessern zugleich das relative Verhältnis.
  • Gleiche multiplikative Verringerungen erhalten das Verhältnis und verkleinern zugleich den absoluten Abstand.
  • Wiederholte AIMD-Zyklen konvergieren bei gleichen RTTs, zeitgleichen Rückmeldungen und übereinstimmenden Reaktionen.
  • Fairness beschreibt die langfristige Aufteilung, während die Raten weiter schwanken.

3.2 Miss die Aufteilung und erkläre ungleiche Ergebnisse

Gleiche Anteile sind ein nützlicher Bezugspunkt, aber reale Datenströme können sich in Bedarf, RTT, Anzahl der Verbindungen und Überlastkontrolle unterscheiden. Eine Aussage über Fairness braucht eine klare Antwort auf „Fair zwischen welchen Datenströmen?“

Berechne den Jain-Fairnessindex

Für nicht negative Datenstromraten mit einer Summe ungleich null lautet der Jain-Fairnessindex:

J=(∑xi)2n∑xi2.

Die Raten 8 und 2 Mbps ergeben eine Summe von 10 und eine Quadratsumme von 68. Der Index beträgt daher etwa 0,735. Gleiche Raten ergeben 1. Erhält einer von n Datenströmen alles, beträgt der Index 1/n.

Der Index misst Gleichheit, nicht Auslastung. Zwei Datenströme mit jeweils 1 Mbps und zwei mit jeweils 5 Mbps haben beide einen Index von 1, obwohl sie unterschiedliche Anteile einer Verbindung mit 10 Mbps nutzen. Prüfe die Gesamtrate getrennt davon.

Berücksichtige begrenzten Bedarf

Max-Min-Fairness gibt Datenströmen mit geringem Bedarf, was sie benötigen, und teilt dann die verbleibende Kapazität unter den Datenströmen auf, die noch mehr möchten. Auf einer Verbindung mit 12 Mbps benötigen drei Datenströme 2, 8 und 10 Mbps. Der anfängliche gleiche Anteil beträgt 4 Mbps. Der erste benötigt nur 2, sodass 10 Mbps für die anderen beiden bleiben. Die Aufteilung beträgt daher 2, 5 und 5 Mbps.

Eine der größeren Raten zu erhöhen würde erfordern, die Rate eines Datenstroms zu verringern, dessen Rate bereits gleich groß oder kleiner ist. Diese Eigenschaft definiert Max-Min-Fairness. Ihre ungleiche Aufteilung kann angemessen sein, auch wenn Jains Gleichheitsmaß unter 1 fällt.

Erkenne Vorteile einzelner Datenströme

Reno wächst einmal pro RTT. Bei gleichem Verlustanteil ist sein ungefährer Durchsatz umgekehrt proportional zur RTT: Ein Datenstrom mit 20 ms kann etwa die vierfache Rate eines Datenstroms mit 80 ms erreichen. Gleicher Zugang zum Engpass beseitigt diesen zeitlichen Vorteil nicht.

Die Aufteilung erfolgt außerdem pro Verbindung. Bei neun bestehenden Verbindungen könnte eine Anwendung, die eine weitere hinzufügt, etwa ein Zehntel der Verbindungskapazität erhalten. Fügt sie stattdessen elf vergleichbare Verbindungen hinzu, beträgt ihr Anteil elf Zwanzigstel oder 55 %. HTTP/2 und HTTP/3 übertragen viele Anfragen über eine Verbindung, während HTTP/1.1-Clients häufig mehrere Verbindungen öffnen.

Eine UDP-Anwendung mit fester Rate kann weitersenden, während TCP-Datenströme ihre Rate verringern. UDP selbst stellt keine Überlastkontrolle bereit; RFC 8085 fordert Anwendungen auf, eine geeignete Überlastkontrolle zu ergänzen. Ein TCP-freundlicher Datenstrom nutzt unter denselben Bedingungen nicht mehr Bandbreite, als vergleichbarer TCP-Verkehr nutzen würde. TFRC nutzt die TCP-Durchsatzgleichung, um eine gleichmäßigere Rate zu unterstützen.

Berücksichtige Warteschlange und Algorithmus

Eine FIFO-Warteschlange setzt keine gleichen Anteile pro Datenstrom durch. Das Ergebnis hängt vom Verhalten der Sender ab. Fair Queuing, einschließlich des Schedulings pro Datenstrom in FQ-CoDel, gibt Datenströmen separate Warteschlangen und Möglichkeiten zur Bedienung.

Das Wachstum von CUBIC und Reno unterscheidet sich auf Pfaden mit großem BDP. Auch die Aufteilung zwischen BBR und CUBIC hängt von der Version und der Puffergröße ab; frühe BBR-Versionen konnten bei kleinen Puffern aggressiv sein. Keine einzelne Gleichheitsberechnung belegt, dass unterschiedliche Überlastkontrollen auf jedem Pfad gleichmäßig nebeneinander arbeiten.

Wichtige Erkenntnisse

  • Der Jain-Fairnessindex misst Gleichheit; prüfe die Auslastung unabhängig davon.
  • Max-Min-Fairness erfüllt geringen Bedarf, bevor sie die verbleibende Kapazität aufteilt.
  • Kürzere RTTs und mehr parallele Verbindungen können den Anteil eines Senders erhöhen.
  • UDP-Anwendungen benötigen eine eigene Überlastkontrolle; TCP-freundlicher Verkehr begrenzt seine Bandbreitennutzung auf die vergleichbaren TCP-Verkehrs.
  • FIFO-Warteschlangen überlassen die Aufteilung den Sendern, während Fair Queuing eine Bedienung pro Datenstrom ermöglicht.
  • Algorithmusversionen und Puffergröße können das Zusammenwirken von Datenströmen verändern.
4

Wie Router früher vor Überlastung warnen

Ein großer Puffer kann Paketverluste verbergen und zugleich eine interaktive Verbindung quälend langsam machen. Router können diese Wartezeit verkürzen, indem sie auf eine anhaltende Warteschlange reagieren, bevor sie überläuft. Vollziehe den Unterschied zwischen der Erkennung anhand der Warteschlangenlänge und anhand der Verzögerung nach und verfolge anschließend eine ECN-Markierung vom Router bis zum Sender. Dieselbe Grundidee der Markierung ermöglicht unterschiedliche Senderreaktionen im klassischen TCP, in kontrollierten Rechenzentren und in Internetarchitekturen mit geringer Verzögerung.

4.1 Nutze Puffer, ohne eine dauerhaft gefüllte Warteschlange aufzubauen

Eine Tail-Drop-Warteschlange nimmt Pakete an, bis ihr Puffer voll ist, und verwirft dann neu eintreffende Pakete. Verlustbasierte Sender erhöhen ihre Rate weiter, bis sie ein Überlastsignal erhalten. Bei einem großen Tail-Drop-Puffer kann dieses Signal erst eintreffen, nachdem sich eine lange Warteschlange gebildet hat.

Berechne die im Puffer verborgene Verzögerung

Ein Puffer mit 2.000.000 Byte vor einer Ausgangsverbindung mit 20 Mbps fasst 16 Millionen Bit. Ist er voll, wartet ein Paket hinter diesen Daten:

16.000.000/20.000.000=0,8 s.

Ein Upload kann daher den Durchsatz hoch halten und zugleich einen Anruf auf derselben Ausgangsverbindung um fast eine Sekunde verzögern. Bufferbloat bezeichnet eine anhaltend erhöhte Verzögerung durch große Puffer und das Verkehrsverhalten, das diese gefüllt hält.

Pufferung hat dennoch einen Zweck: Kurze Verkehrsschübe brauchen einen Platz zum Warten. Im einfachen Modell mit einem einzelnen Reno-Datenstrom kann ein Puffer von etwa einem BDP die Verbindung unmittelbar nach einer Fensterhalbierung auslasten. Ein wesentlich größerer Puffer erhöht die Wartezeit, ohne die Übertragungsrate der Verbindung zu steigern.

Signalisiere Überlastung vor dem Überlauf

Aktives Warteschlangenmanagement, AQM, verwirft oder markiert Pakete frühzeitig, um Sendern zu signalisieren, dass sie ihre Last verringern sollen. Ein tatsächlicher Überlauf ist nicht mehr die einzige Möglichkeit, Überlastung anzuzeigen. RFC 7567 empfiehlt einen breiten Einsatz von AQM.

Random Early Detection, RED, beobachtet einen gleitenden Durchschnitt der Warteschlangenlänge. Unterhalb einer unteren Schwelle signalisiert RED nichts. Zwischen zwei Schwellen verwirft oder markiert es mit steigender Wahrscheinlichkeit. Oberhalb der oberen Schwelle signalisiert es bei jedem eintreffenden Paket. Die Mittelwertbildung verhindert, dass ein einzelner kurzer Verkehrsschub wie anhaltende Überlast aussieht. Es ist jedoch schwierig, Schwellen zu wählen, die bei unterschiedlichen Geschwindigkeiten und Lasten funktionieren.

Miss die Wartezeit direkt

CoDel, Controlled Delay, misst die Verweilzeit eines Pakets, also seine Zeit in der Warteschlange. Der Standardzielwert beträgt 5 ms und das Intervall 100 ms. Bleibt selbst die kleinste beobachtete Verweilzeit ein Intervall lang über dem Zielwert, liegt eine dauerhaft gefüllte Warteschlange vor. CoDel verwirft oder ECN-markiert dann Pakete und erhöht die Häufigkeit der Signale, solange die erhöhte Verzögerung anhält.

Das Minimum über ein Intervall ist entscheidend. Ein Verkehrsschub kann kurzzeitig eine hohe Verzögerung verursachen und kurz darauf abgebaut sein; eine Warteschlange, deren Verzögerung nie klein wird, erfordert ein Eingreifen. Dank der Verzögerungsmessung funktionieren die Standardeinstellungen von CoDel bei einem breiten Spektrum von Übertragungsraten.

VerfahrenWas es beobachtetWann es signalisiert
Tail DropOb der Puffer voll istBeim Überlauf
REDDurchschnittliche WarteschlangenlängeMit einer Wahrscheinlichkeit beim Überschreiten der Schwellen
CoDelAnhaltende Wartezeit von PaketenWenn die Verzögerung über dem Zielwert bleibt

FQ-CoDel kombiniert separate Warteschlangen pro Datenstrom mit CoDel. Durch die Trennung der Datenströme führt eine große Übertragung weniger leicht dazu, dass jedes kleine interaktive Paket hinter ihrem Rückstau warten muss.

Frühzeitige Signale können auch die globale Synchronisation verringern, bei der viele Datenströme gleichzeitig Pakete verlieren, gemeinsam ihre Rate halbieren und die Verbindung vorübergehend unterausgelastet lassen. Zufällig verteilte frühe Signale verteilen die Reaktionen über die Zeit. Bei ECN-fähigem Verkehr kann ein AQM seine Warnung durch eine Markierung senden und das Paket trotzdem zustellen.

Wichtige Erkenntnisse

  • Bufferbloat ist eine anhaltende Warteschlangenverzögerung, auch wenn der Durchsatz hoch bleibt.
  • Die Wartezeit in der Warteschlange entspricht den wartenden Bit dividiert durch die Ausgangsrate.
  • AQM signalisiert Überlastung, bevor der Puffer tatsächlich überläuft.
  • RED verfolgt die durchschnittliche Warteschlangenlänge; CoDel verfolgt anhaltende Wartezeit.
  • FQ-CoDel kombiniert Warteschlangen pro Datenstrom mit der Verzögerungskontrolle von CoDel.
  • Frühzeitige, verteilte Signale verringern gleichzeitige Verluste und Fensterverringerungen.

4.2 Verfolge eine ECN-Warnung zurück zum Sender

Die explizite Überlastbenachrichtigung, ECN, ermöglicht einem Router, ein Paket zuzustellen und vor entstehender Überlastung zu warnen. Die Markierung verändert das Verhalten des Senders, ohne fehlende Daten zu erzeugen, die erneut übertragen werden müssen.

Lies den IP-Codepunkt

Das ECN-Feld besteht aus zwei Bits im IPv4-Type-of-Service-Byte beziehungsweise in der IPv6-Traffic-Class.

BitsBedeutung
00Not-ECT: Das Transportprotokoll hat sich nicht als ECN-fähig ausgewiesen
10ECT(0): ECN-fähiger Transport
01ECT(1): ECN-fähiger Transport; außerdem die L4S-Kennung
11CE: Überlastung festgestellt

Beim klassischen TCP-Handshake nach RFC 3168 setzt das SYN des Clients ECE und CWR. Das SYN-ACK eines zustimmenden Servers setzt ECE. Nach der Aushandlung markiert klassisches TCP Datenpakete mit ECT(0).

Verfolge den Rückkopplungskreis

Ein AQM, das ein ECN-fähiges Paket als Überlastwarnung verwerfen würde, kann dessen Codepunkt auf CE ändern und es weiterleiten. Ein Not-ECT-Paket kann diese Warnung nicht tragen und wird verworfen, wenn das AQM ein Signal geben muss. Ein vollständig gefüllter Puffer verwirft weiterhin Pakete, auch ECN-fähige.

Der Empfänger meldet CE zurück, indem er in seinen Quittungen ECE, ECN-Echo, setzt. Er setzt ECE weiter, bis er vom Sender CWR, Congestion Window Reduced, erhält. Diese Flags melden und bestätigen die Rückmeldung; ihr Vorhandensein bedeutet nicht, dass Daten verloren gingen.

Beginne für klassisches ECN nach Reno-Art mit einem cwnd von 20 MSS. Nach Eingang von ECE verringert der Sender cwnd auf 10 MSS und setzt CWR im nächsten Segment mit neuen Daten. Der Empfänger beendet die Rückmeldung, sobald CWR eintrifft. Wiederholte Rückmeldungen aus demselben Fenster erfordern keine wiederholten Halbierungen. Die Warnung kehrt auf dem Quittungspfad zurück, sodass die Reaktion einer Rückmeldeverzögerung unterliegt.

ECN legt das Signal fest; der Überlastkontrollalgorithmus bestimmt die Verringerungsregel. Reno halbiert, während CUBIC bei einem ECN-Ereignis normalerweise 70 % beibehält. Beide Endpunkte und ein markierender Engpass müssen ECN unterstützen, damit dieser Kreis funktioniert.

Nutze den Anteil der Markierungen

DCTCP, Data Center TCP, nutzt häufige Markierungen in einer kontrollierten Umgebung. Es schätzt den Anteil markierter Bytes mit einem geglätteten Wert Alpha:

α←(1−g)α+gM,

wobei M der kürzlich markierte Anteil ist. Manche Implementierungen verwenden für g den Wert 1/16. Das Fenster wird wie folgt verringert:

cwnd←cwnd(1−α/2).

Bei einem Alpha von 0,2 wird aus einem Fenster von 100 der Wert 90; bei einem Alpha von 1 halbiert es sich. DCTCP benötigt eine passende Markierung und Rückmeldung. Werden DCTCP und klassisches TCP in einer gewöhnlichen Warteschlange gemischt, können unfaire Anteile entstehen.

L4S, die experimentelle Architektur in RFC 9330 bis 9332, überträgt eine verwandte skalierbare Reaktion auf Internetpfade. ECT(1) kennzeichnet skalierbaren Verkehr, und ein gekoppeltes AQM mit zwei Warteschlangen trennt ihn vom klassischen Verkehr und koordiniert zugleich deren Behandlung. Häufige Markierungen schon bei geringer Warteschlangenbildung zielen auf eine Warteschlangenverzögerung von etwa einer Millisekunde. ECT(1) allein garantiert diese Verzögerung nicht: Die Überlastkontrolle und das Verhalten des Engpasses vervollständigen den Entwurf.

Wichtige Erkenntnisse

  • CE markiert ein zugestelltes Paket; ECN-fähiger Verkehr kann bei einem Überlauf trotzdem verworfen werden.
  • Klassisches TCP handelt ECN aus, meldet CE über ECE zurück und bestätigt seine Reaktion mit CWR.
  • Die Überlastkontrolle bestimmt die Stärke der Verringerung; ECN liefert das Überlastsignal.
  • DCTCP nutzt in kontrollierten Umgebungen den markierten Anteil, um seine Verringerung zu bemessen.
  • L4S kombiniert ECT(1), skalierbare Überlastkontrolle und gekoppeltes Warteschlangenmanagement.
5

Wie CUBIC und BBR sich an moderne Pfade anpassen

Ein Pfad mit einem großen Bandbreiten-Verzögerungs-Produkt benötigt eine große Menge an unterwegs befindlichen Daten. Reno kann zu lange brauchen, um dieses Fenster nach einer Verringerung wiederherzustellen. CUBIC verändert, wie das Fenster im Laufe der Zeit wächst, während BBR die Zustellrate des Pfades und die RTT ohne Warteschlangen schätzt. Vergleiche, was jeder Algorithmus misst, wie er die Kapazität erkundet und was sein Verhalten für Verzögerung und die Aufteilung mit anderem Verkehr bedeutet.

5.1 Vergrößere das CUBIC-Fenster anhand der Zeit

CUBIC behebt Renos langsames Wachstum auf schnellen Pfaden über große Entfernungen. Sein Fenster folgt der seit einer überlastungsbedingten Verringerung verstrichenen Zeit und reagiert damit anders als bei einer festen Erhöhung um ein Segment pro RTT. RFC 9438 spezifiziert CUBIC; es ist die Standardeinstellung in wichtigen TCP-Implementierungen von Linux, Windows und Apple.

Merke dir den letzten Überlastungspunkt

Bei einem gewöhnlichen Verlust oder einem ECN-Überlastungsereignis speichert CUBIC sein Fenster als Wmax. Bei einem vollständig genutzten Fenster behält es mit dem Verringerungsfaktor 0,7 70 % der unterwegs befindlichen Datenmenge bei. Reno würde die Hälfte behalten. Der Ablauf des Wiederholungszeitlimits ist anders: CUBIC kehrt wie Reno zu einem Fenster von einem Segment und Slow Start zurück und legt seine Schwelle dabei mit dem CUBIC-Verringerungsfaktor fest.

Für die grundlegende kubische Phase nach einer Verringerung lautet das Zielfenster in Segmenten:

W(t)=C(t−K)3+Wmax⁡,C=0,4.

Die Zeit t wird in Sekunden angegeben. Beträgt das verringerte Fenster 0,7 Wmax, ist die Rückkehrzeit zum alten Spitzenwert:

K=Wmax⁡(1−0,7)/0,43.
Vollziehe die Kurve nach

Bei einem Wmax von 100 Segmenten beträgt das verringerte Fenster 70. Der Wert unter der Kubikwurzel ist 75, sodass K etwa 4,22 s beträgt. Nach einer Sekunde liegt die Kurve bei etwa 86,7 Segmenten, nach zwei Sekunden bei 95,6 und nach drei Sekunden bei 99,3. Sie erreicht 100 bei K.

Unterhalb des alten Spitzenwerts ist das Wachstum zunächst schnell und verlangsamt sich dann. Dieser konkave Bereich nähert sich vorsichtig einem Punkt, an dem zuvor Überlastung auftrat. Nahe der Spitze liegt ein relativ flaches Plateau. Darüber beschleunigt sich das Wachstum im konvexen Bereich, um möglicherweise neu verfügbare Kapazität zu erkunden. Nach sieben Sekunden erreicht die Beispielkurve etwa 108,6 Segmente.

Erkläre den RTT-Vorteil und seine Grenze

Reno benötigt 50 RTTs, um von 50 wieder auf 100 Segmente zu steigen: 5 s bei einer RTT von 100 ms und 10 s bei einer RTT von 200 ms. Die Rückkehrzeit der kubischen Kurve hängt vom gespeicherten Spitzenwert und der verstrichenen Zeit ab, sodass ihre Rückkehr nach 4,22 s nicht direkt von der Anzahl der Quittungen abhängt.

CUBIC berechnet außerdem eine Reno-freundliche Schätzung. Sie verwendet eine entsprechende AIMD-Erhöhung von etwa 0,53 Segmenten pro RTT bei einem Verringerungsfaktor von 0,7. CUBIC nutzt diese Schätzung, wenn sie über dem kubischen Zielwert liegt. Pfade mit kurzer RTT können sich daher früher erholen, als es die rein kubische Rückkehrzeit vorsieht. Zeitbasiertes Wachstum verringert eine wichtige Ursache der Bevorzugung bestimmter RTTs; es macht nicht jede tatsächliche Aufteilung RTT-unabhängig.

Passe den gespeicherten Spitzenwert an

Tritt Überlastung unterhalb des vorherigen Spitzenwerts erneut auf, senkt die schnelle Konvergenz von CUBIC den gespeicherten Wert Wmax. Ein neues Ereignis bei 90 Segmenten nach einer vorherigen Spitze von 100 ergibt:

Wmax⁡=90(1+0,7)/2=76,5.

Das unmittelbar verringerte Fenster beträgt 63 Segmente. Der gespeicherte Spitzenwert und das neue aktuelle Fenster haben unterschiedliche Aufgaben: Der eine gestaltet das zukünftige Wachstum, während das andere das aktuelle Senden begrenzt.

CUBIC bleibt verlustbasiert, mit ECN als alternativem Signal. Auf einem Pfad mit Tail Drop kann es eine dauerhaft gefüllte Warteschlange aufbauen. Schnellere Wiederherstellung und eine geringere gewöhnliche Verringerung verbessern die Nutzung von Pfaden mit großem BDP, aber keines von beiden garantiert für sich eine geringe Warteschlangenverzögerung.

Wichtige Erkenntnisse

  • CUBIC behält nach einem Verlust oder ECN-Ereignis normalerweise 70 % bei, beginnt nach einer Zeitüberschreitung aber erneut bei einem Segment.
  • Der kubische Zielwert hängt von den verstrichenen Sekunden und dem gespeicherten Überlastfenster ab.
  • Das Wachstum verlangsamt sich nahe dem alten Spitzenwert und beschleunigt sich darüber.
  • Die Reno-freundliche Schätzung kann die kubische Kurve übersteigen, besonders bei kurzen RTTs.
  • Die schnelle Konvergenz senkt den gespeicherten Spitzenwert, wenn Überlastung unterhalb davon erneut auftritt.
  • CUBIC ist weiterhin eine verlustbasierte Überlastkontrolle und kann dauerhaft gefüllte Warteschlangen aufbauen.

5.2 Schätze den Pfad mit Verzögerungs- und Zustellmessungen

Verlust ist nicht das einzige Zeichen eines überlasteten Pfades. Verzögerung kann wartende Daten anzeigen, während Zustellmessungen die verfügbare Bandbreite des Pfades schätzen lassen. Vegas und BBR nutzen diese Beobachtungen auf unterschiedliche Weise.

Schätze die wartenden Daten bei Vegas

Vegas vergleicht eine erwartete Rate auf Basis der minimalen Basis-RTT mit der tatsächlichen Rate auf Basis der gemessenen RTT. Ihre Differenz, multipliziert mit der Basis-RTT, schätzt die wartenden Daten des Datenstroms.

Bei einem cwnd von 50 Segmenten, einer Basis-RTT von 40 ms und einer gemessenen RTT von 50 ms beträgt die erwartete Zustellrate 1.250 Segmente/s und die tatsächliche 1.000 Segmente/s. Die Schätzung für die Warteschlange lautet:

(1.250−1.000)×0,04=10 Segmente.

Vegas wächst unterhalb einer unteren Schwelle und schrumpft oberhalb einer oberen Schwelle. Füllt verlustbasierter Verkehr die gemeinsam genutzte Warteschlange immer weiter, erkennt Vegas wiederholt Verzögerung und verringert seine Rate. Dadurch kann ihm ein kleiner Anteil bleiben.

Erstelle das zweiteilige Modell von BBR

BBR, Bottleneck Bandwidth and Round-trip propagation time, schätzt die Engpassbandbreite anhand der zuletzt gemessenen maximalen Zustellraten und die minimale RTT über ein Zeitfenster von 10 s. Ihr Produkt schätzt das BDP. Das ideale Ziel ist eine ausgelastete Verbindung mit etwa einem BDP an unterwegs befindlichen Daten und wenigen wartenden Daten.

Eine Bandbreitenschätzung von 50 Mbps und eine minimale RTT von 30 ms ergeben 1,5 Millionen Bit oder 187.500 Byte pro BDP. Ein typischer Überlastfensterfaktor von 2 begrenzt ausstehende Daten auf etwa 375.000 Byte. Die Pacing-Rate ist eine separate Steuergröße: Pacing-Faktor mal geschätzte Bandbreite. Eine Obergrenze erlaubt unterwegs befindliche Daten; sie verlangt nicht, dass der Sender mit der doppelten Bandbreite sendet.

Verfolge die Zustände von BBR Version 3
ZustandHauptaufgabeVerhalten im Entwurf von Version 3
StartupKapazität ermittelnMit etwa dem 2,77-Fachen der Schätzung senden; beenden, wenn das Wachstum stockt oder der Verlust hoch ist
DrainStartup-Warteschlange abbauenMit etwa dem 0,5-Fachen der Schätzung senden
ProbeBWBandbreite testen und nutzenPacing-Faktoren: Up 1,25, Down 0,9, Cruise 1,0, Refill 1,0
ProbeRTTMinimale RTT aktualisierenUnterwegs befindliche Daten für mindestens 200 ms und eine Umlaufzeit in Richtung eines halben BDP verringern

Der Wachstumstest von Startup prüft, ob die Zustellrate drei Runden lang um weniger als 25 % wächst. ProbeRTT wird höchstens etwa alle 5 s eingeplant. Auf dem Beispielpfad strebt ProbeBW in Up 62,5 Mbps und in Down 45 Mbps an. Diese Einzelheiten von Version 3 sind im BBR-Internet-Draft spezifiziert, nicht in einem veröffentlichten BBR-RFC.

Vergleiche Rückmeldungen und Vor- und Nachteile

Reno und CUBIC wachsen, bis Verlust oder ECN Überlastung signalisiert. BBR steuert das Pacing anhand eines Bandbreiten- und RTT-Modells. In Startup und ProbeBW Up baut es absichtlich kurzzeitig eine Warteschlange auf. „Modellbasiert“ bedeutet daher nicht „baut nie eine Warteschlange auf“.

BBR Version 1 ignorierte Verluste weitgehend. Version 3 nutzt starke Verluste von etwa 2 % in einer Runde, um das Überschreiten der Kapazität zu begrenzen und das Zusammenwirken mit anderen zu verbessern. Es kann auf langen Pfaden mit zufälligen Verlusten einen höheren Durchsatz halten, aber nicht vollständig erkennen, warum ein Paket verloren ging. Seine konkrete ECN-Reaktion bleibt im Entwurf offen; jede Verbindung, die ECN-Unterstützung angibt, muss auf CE als Überlastung reagieren. Puffergröße, RTT, Version und konkurrierende Algorithmen bleiben für die Fairness relevant.

Wichtige Erkenntnisse

  • Vegas schließt mithilfe der Basis-RTT aus erwarteter und tatsächlicher Rate auf wartende Daten.
  • BBR modelliert Bandbreite und minimale RTT und steuert anschließend Pacing und die Begrenzung unterwegs befindlicher Daten getrennt.
  • BBR erkundet in Startup und ProbeBW absichtlich Raten oberhalb der geschätzten Zustellrate.
  • Drain und ProbeRTT verringern wartende Daten für unterschiedliche Messzwecke.
  • BBR Version 3 begrenzt starke Verluste; es ignoriert Überlastung nicht.
  • BBR ist modellbasiert, während Vegas direkt auf zunehmende Verzögerung reagiert.
  • Algorithmusversion und Pfadbedingungen beeinflussen das Zusammenwirken und die Warteschlangenbildung.
6

Warum QUIC sich weiterentwickeln und zugleich das Netz teilen kann

Der Entwurf eines Transportprotokolls muss mit bereits eingesetzten Geräten funktionieren. Middleboxes und Aktualisierungszyklen von Betriebssystemen können TCP-Erweiterungen verzögern. QUIC führt einen verschlüsselten Transport über UDP aus, sodass Anwendungen neues Verhalten leichter bereitstellen können. Vollziehe nach, wie Datenströme, Paketnummern und aussagekräftigere Quittungen Zustellung und Wiederherstellung verbessern, während der Sender weiterhin die von TCP vertrauten Prinzipien der Überlastkontrolle befolgt.

6.1 Verlagere Transportfunktionen in einen verschlüsselten Entwurf auf UDP-Basis

Ein Protokoll verkrustet, wenn eingesetzte Geräte so stark von seiner bestehenden Form abhängen, dass Änderungen schwer einzuführen sind. Middleboxes untersuchen TCP-Header und können unbekannte Optionen oder Flags zurückweisen. Bei kernelbasierten Implementierungen wird neues Verhalten zudem durch Aktualisierungen des Betriebssystems verbreitet, häufig langsam.

Erkenne die Kosten, die QUIC adressiert

TCP hat sich durch SACK, ECN, Fensterskalierung und neue Überlastkontrollen weiterentwickelt. Dennoch ist seine Struktur für den Webverkehr weiterhin relevant. Eine herkömmliche neue TCP-Verbindung mit TLS benötigt den TCP-Handshake vor dem TLS-Handshake. Ihr einziger geordneter Bytestrom bedeutet außerdem, dass ein fehlendes Segment die Zustellung späterer Bytes blockiert, einschließlich der Daten für unabhängige Anfragen. Das ist Head-of-Line-Blocking auf Transportebene.

Adressen und Ports einer Verbindung können ein weiteres Hindernis schaffen, wenn ein Gerät zwischen Netzen wechselt. QUIC, standardisiert in RFC 9000, verändert diese Teile des Transportentwurfs und überträgt seine Pakete dabei über UDP. HTTP/3 läuft über QUIC.

Kombiniere die Handshakes

QUIC integriert TLS 1.3 in seinen Transport-Handshake. Bei einem einfachen Austausch mit 80 ms RTT, vernachlässigbarer Verarbeitung und ohne Verlust sendet eine neue TCP-Verbindung mit TLS 1.3 die Anfrage nach zwei RTTs und erhält die ersten Antwortbytes nach drei: 240 ms. Eine neue QUIC-Verbindung kann sie nach zwei RTTs erhalten: 160 ms.

Eine wiederaufgenommene QUIC-Verbindung kann frühe Anwendungsdaten bereits beim ersten Paketversand senden; dies heißt 0-RTT. Die erste Antwort kann dann nach einer RTT eintreffen, in diesem Beispiel nach 80 ms. Frühe Daten können erneut abgespielt werden, weshalb Anwendungen sie auf Aktionen beschränken, deren Wiederholung unbedenklich ist. Der Begriff 0-RTT beschreibt, wann das Senden beginnen kann, und keine sofortige Antwort.

Trenne Datenströme, aber nicht alle gemeinsamen Begrenzungen

QUIC überträgt unabhängige geordnete Byteströme. Enthält ein Paket Daten für Bild 1, blockiert sein Verlust nicht die Zustellung bereits empfangener Daten für die Bilder 2 und 3 in separaten Datenströmen. Ein Paket, das mehrere Datenströme überträgt, kann jeden davon betreffen. Alle Datenströme teilen sich weiterhin die Überlastkontrolle der Verbindung, sodass Verlust ihre insgesamt verfügbare Rate verringern kann.

QUIC stellt auf UDP-Basis eine zuverlässige Zustellung innerhalb der Datenströme bereit. Es bietet außerdem Flusskontrolle sowohl pro Datenstrom als auch pro Verbindung. UDP ist das Trägerprotokoll und kein Ersatz für diese Transportfunktionen.

Schütze veränderbare Einzelheiten

QUIC verschlüsselt Paketnutzlasten einschließlich aller Transport-Frames. Der Headerschutz deckt Paketnummern und einige Bits des ersten Bytes ab. Felder, die für Routing und Aushandlung benötigt werden, etwa Verbindungs-IDs und die Version, bleiben sichtbar. Das Verbergen veränderbarer Transportdetails gibt Middleboxes weniger Verhalten vor, von dem sie abhängig werden können.

Verbindungs-IDs identifizieren eine Verbindung unabhängig von den aktuellen IP-Adressen und Ports. Mithilfe der Pfadvalidierung kann eine Verbindung migrieren, wenn ein Mobiltelefon vom WLAN zum Mobilfunkzugang wechselt, ohne eine vollständig neue Verbindung zu beginnen.

QUIC ist gewöhnlich eine Bibliothek im Benutzerraum. Eine Anwendungsaktualisierung kann daher eine Verbesserung des Transportprotokolls bereitstellen, ohne auf Änderungen in jedem Betriebssystemkern zu warten. Diese Flexibilität überträgt der Anwendung zugleich die Verantwortung für korrekte Verlusterkennung, Sicherheit, Flusskontrolle und Überlastkontrolle.

Wichtige Erkenntnisse

  • Protokollverkrustung entsteht, wenn eingesetzte Geräte Änderungen am Protokoll erschweren.
  • QUIC kombiniert Transport- und TLS-Aufbau und kann 0-RTT-Frühdaten unterstützen, die erneut abgespielt werden können.
  • Unabhängige Datenströme verhindern, dass die geordnete Zustellung über unabhängige Datenströme hinweg auf Transportebene stockt.
  • Nutzlastverschlüsselung und Headerschutz verbergen die meisten veränderbaren Transportdetails.
  • Verbindungs-IDs unterstützen Migration unabhängig von einem festen Adress- und Porttupel.
  • QUIC ergänzt auf UDP-Basis Zuverlässigkeit, Flusskontrolle und Überlastkontrolle.

6.2 Nutze klarere Verlustsignale mit vertrauter Überlastkontrolle

QUIC verbessert, was ein Sender aus Quittungen erfahren kann, muss aber weiterhin eine Überlastung des Pfades vermeiden. RFC 9002 definiert die Verlusterkennung und eine standardmäßige Überlastkontrolle ähnlich NewReno. Implementierungen können andere geeignete Algorithmen verwenden, darunter CUBIC oder BBR.

Identifiziere jede Übertragung

Paketnummern steigen und wiederholen sich innerhalb eines Paketnummernraums nie. Erneut gesendete Daten werden in Frames innerhalb eines neuen Pakets mit neuer Nummer übertragen. Eine Quittung kann daher die Übertragung identifizieren, die angekommen ist. So wird die bei TCP bestehende Mehrdeutigkeit zwischen einem ursprünglichen Segment und seiner Übertragungswiederholung vermieden.

ACK-Frames melden empfangene Bereiche und die Quittungsverzögerung des Empfängers. Nach dem Handshake nutzt der Sender eine validierte und begrenzte Quittungsverzögerung, um RTT-Schätzungen anzupassen; er zieht nicht blind eine beliebige Verzögerung des Empfängers von jedem Messwert ab.

QUIC erklärt ein Paket für verloren, wenn ein Paket mit einer um mindestens drei höheren Paketnummer quittiert wurde, oder anhand seines Zeitschwellenwerts, sobald ein späteres Paket quittiert wurde. Der empfohlene Zeitschwellenwert beträgt das 9/8-Fache des größeren Werts aus der letzten und der geglätteten RTT. Ein Probe Timeout, PTO, sendet Testpakete, die Quittungen auslösen. Der Ablauf des PTO allein lässt cwnd nicht auf das Mindestfenster fallen.

Lege Fenstergrenzen in Byte fest

Für die maximale Datagrammgröße d lautet das Anfangsfenster nach RFC 9002:

min⁡(10d, max⁡(14.720,2d)).

Bei einem d von 1.200 Byte beträgt das Ergebnis 12.000 Byte. Bei einem d von 1.500 Byte sind es 14.720 Byte. Das minimale Überlastfenster beträgt zwei Datagramme maximaler Größe, sodass die Mindestwerte für diese Pfade jeweils 2.400 und 3.000 Byte betragen.

In der standardmäßigen Überlastkontrolle halbiert ein Verlust oder ein neues CE-Überlastsignal cwnd, begrenzt durch das Mindestfenster, und setzt ssthresh auf das verringerte Fenster. Eine Wiederherstellungsphase verhindert eine weitere Verringerung bei weiteren Verlusten von Paketen, die vor Beginn der Phase gesendet wurden. Die Quittung eines während der Wiederherstellung gesendeten Pakets beendet die Phase. Der Sender setzt dann das normale Wachstum fort.

Erkenne anhaltende Ausfälle

Anhaltende Überlastung ist ein stärkerer Hinweis als der einmalige Ablauf eines Zeitgebers. Sie setzt eine ausreichend lange Folge verlorener quittierungsauslösender Pakete voraus, ohne dass ein dazwischenliegendes Paket quittiert wurde, sowie einen vorherigen RTT-Messwert. Ihr Zeitschwellenwert lautet:

3 [gegla¨ttete RTT+max⁡(4 RTT-Schwankung,Zeitgeberauflo¨sung)+maximale Quittungsverzo¨gerung].

Bei 100 ms geglätteter RTT, 10 ms Schwankung, 25 ms maximaler Quittungsverzögerung und vernachlässigbarer Zeitgeberauflösung beträgt der Schwellenwert 495 ms. Das maßgebliche Verlustintervall muss diesen Wert überschreiten. Die Überlastkontrolle senkt cwnd dann auf zwei Datagramme, ihr Mindestfenster.

Halte Rückmeldung und zeitliche Steuerung nutzbar

QUIC-Quittungen können kumulative ECT(0)-, ECT(1)- und CE-Zähler melden. Nach der Validierung der ECN-Funktion auf dem Pfad behandelt der Sender einen erneuten Anstieg des CE-Zählers als Überlastungsereignis, ohne dass ein Paket verworfen werden muss.

Pacing verteilt Übertragungen über die Zeit. Ein vorgeschlagener Ansatz ist eine Rate von etwa dem 1,25-Fachen von cwnd dividiert durch die geglättete RTT; Begrenzungen von Verkehrsschüben können denselben Zweck erfüllen. Das Senden eines ganzen Fensters auf einmal erzeugt einen Verkehrsschub, selbst wenn die durchschnittliche Rate akzeptabel ist. Die Bereitstellung im Benutzerraum erleichtert die Auslieferung neuer Überlastkontrollen, aber jeder Protokollstapel muss die Bandbreite weiterhin verantwortungsvoll teilen.

Wichtige Erkenntnisse

  • Eindeutige Paketnummern identifizieren Übertragungen; empfangene Bereiche zeigen Lücken.
  • Die Anpassung um die Quittungsverzögerung folgt Validierungs- und Handshake-Regeln.
  • Paket- und Zeitschwellenwerte erkennen Verluste; PTO-Testpakete lösen Rückmeldungen aus.
  • Die standardmäßige Überlastkontrolle halbiert einmal pro Wiederherstellungsphase und hält ein Minimum von zwei Datagrammen ein.
  • Anhaltende Überlastung erfordert ein maßgebliches Verlustintervall, das länger als der Zeitschwellenwert ist.
  • Validierte ECN-Zähler können Überlastung ohne verworfene Pakete signalisieren.
  • Pacing oder die Begrenzung von Verkehrsschüben verhindert, dass das gesamte Fenster in einem Schub gesendet wird.

Überlastkontrolle in Netzen: Beispiele

6 Interaktive Lektionen

1

Verfolge Verkehr durch einen Engpass

13 Schritte
Verfolge eine wachsende Warteschlange, berechne verschwendete Kapazität und erkenne, wie eine Überlastrückmeldung einen Sender erreicht.
  1. 1
    EinführungEine Verbindung kann ausgelastet bleiben, während eine Anwendung wartet

    Mehrere schnelle Eingänge speisen einen langsameren Ausgang, einen Engpass. Der Router muss den Überschuss zwischenspeichern, sodass derselbe Datenstrom einen hohen Durchsatz und eine lange Wartezeit erfahren kann.

    Verfolge zunächst die Warteschlange und berücksichtige dann Arbeit, die keine neuen Daten zustellt (Nutzdatendurchsatz und Überlastkollaps). Entscheide schließlich, welche Art von Rückmeldung dem Sender mitteilen könnte, dass er sein Verhalten ändern soll. Diese drei Sichtweisen erklären, warum Aktivität allein ein schlechtes Maß für den Zustand des Netzes ist.

  2. 2
    ErklärungVergleiche Ankünfte und Abgänge

    Der Engpass ist die Verbindung auf dem Pfad mit der geringsten für den Verkehr verfügbaren Kapazität. Übersteigt die Ankunftsrate dauerhaft ihre Ausgangsrate, sammelt sich der Überschuss in der Ausgangswarteschlange.

    Unterhalb der Ausgangsrate leert freie Kapazität die Warteschlange. Entspricht die Ankunftsrate genau der Ausgangsrate, bleibt eine bestehende Warteschlange bei gleichbleibenden Raten unverändert: Jedes abgehende Paket wird durch ein ankommendes ersetzt. Eine kurze Überlast kann aufgefangen werden, wenn eine ruhigere Phase folgt.

  3. 3
    BeispielBestimme, wie schnell die Warteschlange wächst

    Ein leerer Routerpuffer empfängt 15 Mbps, während sein Ausgang 11 Mbps sendet. Bestimme zunächst den Überschuss:

    15−11=4 Mbps.

    Rechne den Überschuss in Byte pro Sekunde um:

    4.000.000/8=500.000 Byte/s.

    Mit dieser Rate sammeln sich wartende Daten an. Würdest du die volle Ankunftsrate verwenden, würdest du Daten mitzählen, die die Ausgangsverbindung bereits übertragen hat.

  4. 4
    BeispielRechne wartende Daten in Wartezeit um

    Behalte denselben Ausgang mit 11 Mbps bei. Ein Puffer mit 1.000.000 Byte füllt sich nach 2 s bei einem Überschuss von 500.000 Byte/s.

    Im vollen Zustand enthält er 8.000.000 Bit vor einem neu eintreffenden Paket. Dessen ungefähre Wartezeit beträgt:

    8.000.000/11.000.000≈0,727 s.

    Die Ausgangsrate bestimmt, wie lange bereits wartende Daten bis zum Abgang brauchen. Der Eingangsüberschuss bestimmt, wie schnell dieser Rückstau entstanden ist.

  5. 5
    HerausforderungSage die Entwicklung einer Warteschlange nach sinkender Last voraus

    Eine Warteschlange enthält 300.000 Byte. Ihr Ausgang überträgt 12 Mbps und die gleichbleibende Ankunftsrate fällt auf 8 Mbps. Wie lange dauert es, bis sich die bestehende Warteschlange leert?

    ---reveal---

    Die Nettoabbaurate beträgt 4 Mbps oder 500.000 Byte/s. Daher:

    300.000/500.000=0,6 s.

    Eine Division durch die volle Ausgangsrate würde neue Pakete ignorieren, die weiterhin eintreffen, während der alte Rückstau abgebaut wird.

  6. 6
    ErklärungVerfolge, was eine Übertragungswiederholung ersetzt

    Der Nutzdatendurchsatz zählt neue Nutzdaten der Anwendung einmal. Der Durchsatz zählt zugestellten Verkehr, während die angebotene Last alles umfasst, was in das Netz eingespeist wird.

    Ein zuverlässiger Sender ersetzt verlorene Daten, aber diese Wiederholungen verbrauchen Übertragungszeit auf der Verbindung. Läuft ein Zeitgeber ab, während ein Original nur verzögert ist, können zwei Kopien den Pfad durchlaufen und erfolgreich eintreffen. Die Anwendung erhält dieses Datenstück trotzdem nur einmal.

  7. 7
    BeispielBerücksichtige später verlorene Arbeit

    Ein Paket durchläuft die Verbindungen A und B und wird dann in der Warteschlange vor C verworfen. Beide vorgelagerten Übertragungen haben bereits Kapazität verbraucht, doch das Paket erreicht sein Ziel nie.

    Geht mehr Verkehr erst spät verloren, können vorgelagerte Verbindungen einen wachsenden Teil ihrer Zeit für Pakete aufwenden, die ihr Ziel nicht erreichen. Die Ende-zu-Ende-Zustellung kann sinken, während diese Verbindungen ausgelastet bleiben. Das ist ein möglicher Weg zum Überlastkollaps, nicht lediglich eine volle Warteschlange an einem Router.

  8. 8
    HerausforderungUnterscheide belegte Kapazität und nützlichen Fortschritt

    Eine Verbindung mit 16 Mbps ist ausgelastet. Von ihren gleich großen Paketen wiederholen 25 % Daten, die sie bereits übertragen hat. Wie hoch ist die größtmögliche Rate neuer Daten, wenn du Header und Verluste auf nachgelagerten Verbindungen außer Acht lässt?

    ---reveal---

    Nur drei Viertel sind neu:

    16×0,75=12 Mbps.

    Die übrigen 4 Mbps können für die Wiederherstellung der Zuverlässigkeit nützlich sein, fügen der hier gezählten Rate aber keine neuen Daten hinzu.

  9. 9
    KernaussageErkenne die Änderungen am Kniepunkt und an der Klippe

    Jenseits des Kniepunkts bringt eine größere angebotene Last wenig zusätzlichen Durchsatz, während die Verzögerung stark steigt. Jenseits der Klippe fällt der Durchsatz, weil Verluste und verschwendete Arbeit überwiegen.

    Dies sind unterschiedliche Probleme: Ineffiziente Wartezeiten können auftreten, bevor die Zustellung von Nutzdaten zusammenbricht. Eine Überlastkontrolle sollte den Engpass produktiv auslasten und zugleich den Betriebspunkt mit hoher Verzögerung vermeiden, den ein großer Puffer verbergen kann.

  10. 10
    ErklärungBestimme den Ursprung der Warnung

    Bei der Ende-zu-Ende-Überlastkontrolle schließt der Sender aus Verlust-, RTT- oder Zustellmessungen auf Überlastung. Ein Router liefert keine ausdrückliche Überlastmeldung.

    Bei der netzgestützten Überlastkontrolle sendet der Router eine Warnung. Bei ECN markiert er ein Paket auf dem Weg zum Empfänger, der diese Markierung zurückmeldet. Die Meldung zählt weiterhin als netzgestützt, obwohl sie in einer Quittung des Endpunkts zurückkehrt.

  11. 11
    VerbindungUnterscheide Signal und Sendesteuerung

    Ein Verlust kann durch einen Warteschlangenüberlauf oder durch Beschädigung auf einer Funkverbindung entstehen. Eine steigende RTT kann von einer Warteschlange oder einer Routenänderung herrühren. Eine Markierung meldet Überlastung ausdrücklich, benötigt aber passende Unterstützung auf dem Pfad.

    Nachdem der Sender das Signal gedeutet hat, kann er ein Fenster begrenzen oder eine Rate für das Pacing wählen. Diese Steuerungsentscheidungen sind unabhängig vom Ursprung des Signals. Die Näherung von einem Fenster pro RTT verbindet die unterwegs befindliche Datenmenge mit der erreichten Rate.

  12. 12
    HerausforderungWähle einen hilfreichen Rückmeldeweg

    Ein Download hält einen großen Routerpuffer gefüllt. Der Empfänger hat reichlich freien Speicher. Der Router beginnt, Überlastung zu markieren, und der Empfänger meldet die Markierungen zurück. Um welche Art der Kontrolle handelt es sich und warum kann sie die Verzögerung beim Download verringern?

    ---reveal---

    Es ist netzgestützte Überlastkontrolle. Der Sender kann den Verkehr auf dem überlasteten Pfad verringern, sodass die Routerwarteschlange schrumpfen kann. Mehr Platz beim Empfänger würde diese Warteschlange nicht leeren, weil die begrenzende Kapazität im Netz liegt.

  13. 13
    ZusammenfassungBetrachte Last, Nutzdatenzustellung und Rückmeldung gemeinsam

    Sage das Wachstum der Warteschlange anhand von Ankünften minus Abgängen voraus; bestimme die Wartezeit aus den wartenden Bit dividiert durch die Ausgangsrate. Prüfe dann, wie viel der Arbeit auf der Verbindung neue Anwendungsdaten zustellt.

    Verlust, Verzögerung und ausdrückliche Rückmeldungen teilen einem Sender Unterschiedliches mit. Eine nützliche Überlastkontrolle deutet diese Signale und passt den Verkehr so an, dass der Pfad Daten effizient zustellt, ohne übermäßig lange Warteschlangen aufrechtzuerhalten.

2

Verfolge ein TCP-Fenster vom Start bis zur Wiederherstellung

20 Schritte
Arbeite mit Fenstern in Byte und Segmenten, verfolge die klassischen Regeln für Wachstum und Verluste und schätze anschließend die Rate einer langlebigen Übertragung.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungBetrachte das Fenster vor der Rate
  2. 2
    ErklärungBeachte die Begrenzungen von Sender und Empfänger
  3. 3
    BeispielSchätze eine durch das Fenster begrenzte Rate
  4. 4
    BeispielBerechne die zur Auslastung eines Pfades nötigen Daten
  5. 5
    HerausforderungFinde die tatsächlich wirksame Begrenzung
  6. 6
    ErklärungWarum Slow Start schnell wächst
  7. 7
    BeispielÄndere die Regel an der Schwelle
  8. 8
    TippKennzeichne in jedem Ablauf die Phase
  9. 9
    HerausforderungVerfolge den Wechsel, ohne eine Runde zu überspringen
  10. 10
    ErklärungUnterscheide eine Lücke von einem schweigenden Pfad
  11. 11
    BeispielBeginne Fast Recovery mit vorübergehender Aufblähung
  12. 12
    BeispielBeende die Wiederherstellung bei der Schwelle
  13. 13
    HerausforderungNutze FlightSize und nimm die Aufblähung korrekt zurück
  14. 14
    ErklärungBilde den Durchschnitt des Sägezahnfensters
  15. 15
    BeispielRechne den Durchschnitt in Bit pro Sekunde um
  16. 16
    VerbindungErkenne, warum Verlust und RTT wichtig sind
  17. 17
    HerausforderungÄndere zwei Modelleingaben gemeinsam
  18. 18
    KernaussageEin hohes BDP verstärkt die langsame Wiederherstellung
  19. 19
    HerausforderungVerbinde die Ratenschätzung mit der Flusskontrolle
  20. 20
    ZusammenfassungBetrachte Wachstum, Wiederherstellung und Begrenzungen als getrennte Entscheidungen
3

Verfolge faire Aufteilung vom idealen Paar bis zu realen Nutzern

12 Schritte
Vollziehe die AIMD-Konvergenz nach, berechne Gleichheit und Auslastung und berücksichtige Bedarf und Anzahl der Verbindungen.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungFrag dich, wer die Kapazität erhält
  2. 2
    ErklärungZeichne die beiden Zielgeraden
  3. 3
    BeispielBetrachte Abstand und Verhältnis getrennt
  4. 4
    HerausforderungWähle eine Anpassung, die die relative Aufteilung verändert
  5. 5
    VerbindungErkenne, wann die ideale Konvergenz gilt
  6. 6
    ErklärungNutze den Jain-Fairnessindex für die Gleichheit
  7. 7
    BeispielBerechne einen Indexwert und die Auslastung
  8. 8
    BeispielTeile den Rest nach geringem Bedarf auf
  9. 9
    HerausforderungFinde die richtige Bezugsgruppe für einen Fairnesswert
  10. 10
    KernaussageSender und Warteschlangen bestimmen gemeinsam das Ergebnis
  11. 11
    HerausforderungUnterscheide Gleichheit von effizientem AIMD-Verhalten
  12. 12
    ZusammenfassungUnterscheide eine Aufteilung von ihrer Erklärung
4

Verfolge eine frühzeitige Überlastwarnung

13 Schritte
Vergleiche Tail Drop, RED und CoDel und verfolge dann eine CE-Markierung durch TCP sowie eine proportionale DCTCP-Reaktion.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungWenige Verluste können eine lange Wartezeit verbergen
  2. 2
    BeispielMiss die Wartezeit in einem großen Puffer
  3. 3
    ErklärungRED gibt eine probabilistische Frühwarnung
  4. 4
    ErklärungCoDel prüft, ob die Verzögerung jemals klein wird
  5. 5
    HerausforderungInterpretiere einen Verzögerungsverlauf
  6. 6
    VerbindungUnterscheide die Bedienung von Datenströmen und die Verzögerungskontrolle
  7. 7
    ErklärungMarkiere ein zugestelltes Paket
  8. 8
    BeispielSchließe den klassischen TCP-Rückkopplungskreis
  9. 9
    HerausforderungBehandle wiederholte Rückmeldungen eines Ereignisses
  10. 10
    BeispielPasse eine DCTCP-Reaktion an den markierten Verkehr an
  11. 11
    VerbindungL4S kombiniert das Verhalten von Endpunkten und Warteschlangen
  12. 12
    HerausforderungErkläre die Zustellung ohne Zeitüberschreitung
  13. 13
    ZusammenfassungVerfolge Erkennung, Markierung und Reaktion
5

Vergleiche das CUBIC-Wachstum mit dem Pfadmodell von BBR

14 Schritte
Berechne die Rückkehrkurve von CUBIC, stelle Vegas und BBR gegenüber und unterscheide die Pacing-Rate von den Grenzen für unterwegs befindliche Daten.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungWähle, was die Überlastkontrolle ermitteln soll
  2. 2
    ErklärungBeginne mit einer geringeren gewöhnlichen Verringerung
  3. 3
    BeispielBestimme die kubische Rückkehrzeit
  4. 4
    BeispielBerechne einen Punkt unterhalb des alten Spitzenwerts
  5. 5
    KernaussageDie reine Kurve ist nur eine Möglichkeit
  6. 6
    HerausforderungNutze die zwei unterschiedlichen gespeicherten CUBIC-Werte
  7. 7
    BeispielLass Vegas auf wartende Segmente schließen
  8. 8
    ErklärungErstelle das Bandbreiten-Verzögerungs-Modell von BBR
  9. 9
    BeispielBerechne das Modell vor Anwendung der Faktoren
  10. 10
    VerbindungErkunde die Kapazität und schaffe dann Raum für Messungen
  11. 11
    HerausforderungSetze ein Modell in Steuereinstellungen um
  12. 12
    TippBehalte Version und Rückmelderegeln im Blick
  13. 13
    HerausforderungUnterscheide eine RTT-Warnung von einem Pfadmodell
  14. 14
    ZusammenfassungVergleiche Messungen, Wachstum und Warteschlangenbildung
6

Verfolge QUIC vom Aufbau bis zur Wiederherstellung nach Überlastung

15 Schritte
Verbinde die Bereitstellungsentscheidungen von QUIC mit seinen Datenströmen, Verlustsignalen, Wiederherstellungsregeln und dem zeitlich verteilten Senden.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungVerändere den Transport, ohne seine Aufgabe aufzugeben
  2. 2
    ErklärungVerstehe, warum TCP-Änderungen ins Stocken geraten können
  3. 3
    VerbindungSchütze Details, die sich ändern müssen
  4. 4
    BeispielVergleiche die Zeit bis zur ersten Antwort
  5. 5
    BeispielUnterscheide Datenstromreihenfolge und gemeinsame Verbindung
  6. 6
    HerausforderungKorrigiere eine Aussage über Transport auf UDP-Basis
  7. 7
    ErklärungGib jeder Übertragung eine eigene Kennung
  8. 8
    BeispielErkenne eine Lücke, bevor du Rückmeldungen auslöst
  9. 9
    BeispielBerechne Anfangs- und Mindestfenster
  10. 10
    HerausforderungVerringere einmal für ein Ereignis mit zuvor gesendeten Daten
  11. 11
    BeispielBestimme die Dauer für anhaltende Überlastung
  12. 12
    VerbindungÜbermittle ECN-Zähler in Quittungen
  13. 13
    TippPrüfe nicht nur wie viele Bytes gesendet werden, sondern auch wann
  14. 14
    HerausforderungVerbinde unabhängige Zustellung mit einer gemeinsamen Reaktion
  15. 15
    ZusammenfassungBetrachte Bereitstellungsvorteile und Pflichten zur Überlastkontrolle gemeinsam

Überlastkontrolle in Netzen: Übungsaufgaben

50 Übungsfragen in 5 Sets

Set 1: Lies Überlastsignale und Fensteränderungen10 Übungsfragen

Frage 1 von 10

Ein Router hat bereits eine Warteschlange. Seine gleichbleibende Ankunftsrate entspricht dann genau seiner Ausgangsrate. Was geschieht mit der bestehenden Warteschlange?
  1. Sie leert sich vollständig.
  2. Sie bleibt gleich groß.
  3. Sie wächst stetig weiter.
  4. Sie leert sich halb so schnell.
Antwort zeigenAntwort ausblenden
Antwort: B
Jedes abgehende Paket wird durch ein ankommendes ersetzt, sodass der bestehende Rückstau gleich groß bleibt. Die Übereinstimmung mit der Kapazität stoppt weiteres Wachstum, stellt aber keine freie Kapazität zum Abbau wartender Daten bereit. Die Warteschlange würde nur schrumpfen, wenn Pakete langsamer einträfen, als sie abgehen.

Frage 2 von 10

Ein Paket durchläuft zwei Verbindungen und wird dann am nächsten Router verworfen. Welche Kapazität wurde durch diese fehlgeschlagene Zustellung verschwendet?
  1. Nur die Ausgangskapazität des verwerfenden Routers.
  2. Nur die Eingangskapazität des ersten Routers.
  3. Nur die Kapazität zum Senden eines Ersatzes.
  4. Die Kapazität beider bereits durchlaufener Verbindungen.
Antwort zeigenAntwort ausblenden
Antwort: D
Beide früheren Verbindungen haben Übertragungszeit für ein Paket aufgewendet, das sein Ziel nicht erreicht hat. Das Verwerfen verschwendet daher Arbeit auf vorgelagerten Verbindungen und macht eine Wiederherstellung nötig. Wer nur die Übertragungswiederholung zählt, übersieht die bereits vor dem Verwerfen verbrauchte Kapazität.

Frage 3 von 10

Ein Sender ändert seine Rate anhand gemessener Zustellraten und der minimalen RTT, ohne Markierungen von Routern zu erhalten. Wie wird diese Rückmeldung eingeordnet?
  1. Ende-zu-Ende und modellbasiert.
  2. Netzgestützt und verlustbasiert.
  3. Ende-zu-Ende und mit expliziter Rate.
  4. Netzgestützt und verzögerungsbasiert.
Antwort zeigenAntwort ausblenden
Antwort: A
Die Messungen stammen aus Beobachtungen der Endpunkte, daher ist die Rückmeldung Ende-zu-Ende. Zustellrate und minimale RTT zur Schätzung des Pfades zu kombinieren, ist modellbasierte Steuerung. Eine Verzögerungsmessung allein macht das Verfahren nicht zu einem Verfahren nach Vegas-Art: Die Überlastkontrolle nutzt beide Schätzwerte als Modell.

Frage 4 von 10

Ein Sender hat cwnd=42.000 Byte, rwnd=27.000 Byte und 19.000 unquittierte Byte. Wie viele zusätzliche Bytes darf er jetzt senden?
  1. 23.000 Byte
  2. 27.000 Byte
  3. 8.000 Byte
  4. 42.000 Byte
Antwort zeigenAntwort ausblenden
Antwort: C
Das kleinere Fenster ist rwnd mit 27.000 Byte. Ziehst du die bereits ausstehenden 19.000 Byte ab, bleiben 8.000 Byte für neue Daten. Würdest du die ausstehenden Bytes nur von cwnd abziehen, ergäbe das 23.000, aber damit würde die vom Empfänger bekannt gegebene Begrenzung überschritten.

Frage 5 von 10

Ein Reno-Sender befindet sich bei genügend Daten und einer Quittung pro Segment in der Überlastvermeidung. Um wie viel wächst cwnd ungefähr während einer RTT?
  1. Um insgesamt eine MSS.
  2. Um eine MSS pro Quittung.
  3. Um die Hälfte seiner Größe.
  4. Um seine gesamte Größe.
Antwort zeigenAntwort ausblenden
Antwort: A
Die Überlastvermeidung verteilt ein Wachstum von etwa einer MSS auf alle Quittungen einer Umlaufzeit. Der Zuwachs pro Quittung wird mit wachsendem cwnd kleiner. Eine MSS pro Quittung hinzuzufügen beschreibt den idealen Slow Start, bei dem die Quittungen eines vollen Fensters das nächste Fenster ungefähr verdoppeln können.

Frage 6 von 10

Ein Reno-Sender hat 18 MSS ausstehende Daten, als seine dritte Duplikatquittung eintrifft. Zwei weitere Duplikatquittungen folgen, dann eine Quittung für alle ausstehenden Daten. Welche cwnd-Werte ergeben sich beim Eintritt in die Wiederherstellungsphase, nach den zusätzlichen Duplikaten und beim Verlassen der Phase?
  1. 9, 11, dann 9 MSS.
  2. 12, 14, dann 14 MSS.
  3. 12, 14, dann 7 MSS.
  4. 12, 14, dann 9 MSS.
Antwort zeigenAntwort ausblenden
Antwort: D
Die Hälfte der unterwegs befindlichen Daten setzt ssthresh auf 9 MSS. Reno beginnt die Wiederherstellung bei 12, fügt für jedes zusätzliche Duplikat eine MSS hinzu und erreicht 14. Bei der vollständigen Quittung setzt es das Fenster auf 9 zurück. Wer beim Verlassen 14 beibehält, verwechselt die vorübergehende Fensteraufblähung während der Wiederherstellung mit dem bleibenden Fenster der Überlastvermeidung.

Frage 7 von 10

Zwei synchronisierte AIMD-Datenströme senden mit 9 und 3 Mbps. Jeder erhöht seine Rate um 1 Mbps, dann halbieren beide ihre Rate. Wie groß ist ihre abschließende Ratendifferenz?
  1. 6 Mbps
  2. 3 Mbps
  3. 4 Mbps
  4. 2 Mbps
Antwort zeigenAntwort ausblenden
Antwort: B
Der additive Schritt ergibt 10 und 4 Mbps und lässt den ursprünglichen Abstand von 6 Mbps unverändert. Die Halbierung ergibt 5 und 2 Mbps, sodass der abschließende Abstand 3 Mbps beträgt. Wer die additive Erhöhung vom Abstand abzieht, verwechselt eine Änderung beider Raten mit einer Änderung ihrer Differenz.

Frage 8 von 10

Was misst CoDel, um zu entscheiden, ob eine Warteschlange dauerhaft zu lang ist?
  1. Das vom Sender bekannt gegebene Empfangsfenster.
  2. Den gleitenden Durchschnitt der Warteschlangenlänge.
  3. Die Zeit, die Pakete in der Warteschlange verbringen.
  4. Die Gesamtzahl vorgelagert gesendeter Bytes.
Antwort zeigenAntwort ausblenden
Antwort: C
CoDel misst die Verweilzeit von Paketen und prüft, ob selbst die minimale Verzögerung über ein Intervall hinweg hoch bleibt. Das unterscheidet eine dauerhaft gefüllte Warteschlange von einem Verkehrsschub, der abgebaut wird. Ein gleitender Durchschnitt der Warteschlangenlänge ist das Signal von RED; wer ihn CoDel zuschreibt, verwechselt die beiden AQM-Verfahren.

Frage 9 von 10

CUBIC hat ein vollständig genutztes Fenster von 80 MSS, als ein ECN-Überlastungsereignis ohne Zeitüberschreitung auftritt. Welches Fenster ergibt seine gewöhnliche Verringerung?
  1. 24 MSS
  2. 40 MSS
  3. 1 MSS
  4. 56 MSS
Antwort zeigenAntwort ausblenden
Antwort: D
CUBIC behält nach diesem gewöhnlichen Überlastsignal 70 % bei, sodass aus 80 MSS 56 MSS werden. Die entfernte Menge beträgt 24 MSS, nicht das neue Fenster. Eine Verringerung auf 40 MSS entspricht Renos Halbierungsregel; CUBIC würde nach Ablauf des Wiederholungszeitlimits zu einem Segment zurückkehren.

Frage 10 von 10

Zwei QUIC-Datenströme teilen sich eine Verbindung. Ein verlorenes Paket enthielt nur Daten für Datenstrom A; spätere Pakete mit Daten für Datenstrom B treffen ein. Wie kann der Verlust Datenstrom B beeinflussen?
  1. Seine geordnete Zustellung kann weitergehen, aber die gemeinsame Überlastkontrolle kann seine Rate senken.
  2. Seine geordnete Zustellung muss auf A warten, aber seine Senderate bleibt unabhängig.
  3. Seine Zustellung und seine Senderate bleiben beide vom Verlust der Verbindung unabhängig.
  4. Seine geordnete Zustellung kann erst nach Einrichtung eines eigenen Überlastfensters weitergehen.
Antwort zeigenAntwort ausblenden
Antwort: A
Datenstrom B fehlen durch diesen Verlust keine Bytes, sodass seine empfangenen Daten ohne Warten auf A zugestellt werden können. Beide Datenströme teilen sich weiterhin die Überlastkontrolle der Verbindung, die ihre gemeinsame Senderate senken kann. Eine unabhängige Reihenfolge der Datenströme erzeugt keine unabhängigen Überlastfenster.
Set 2: Stelle Zusammenhänge zwischen Raten, Fairness und Transportrückmeldungen her10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Ein leerer Ausgangspuffer mit 600.000 Byte empfängt gleichbleibend 16 Mbps und sendet 10 Mbps. Wie lange dauert es, bis er voll ist?
  1. 0,30 s
  2. 0,48 s
  3. 0,80 s
  4. 1,25 s
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Ein Pfad hat eine Engpasskapazität von 60 Mbps und eine RTT ohne Warteschlangen von 40 ms. Welche Menge unterwegs befindlicher Daten lastet diesen idealisierten Pfad ohne dauerhaft gefüllte Warteschlange aus?
  1. 300.000 Byte
  2. 2.400.000 Byte
  3. 30.000 Byte
  4. 7.500.000 Byte
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Bei einem idealen Slow Start mit einer Quittung pro Segment beginnt cwnd bei 2 MSS und bleibt unter ssthresh. Wie groß ist cwnd nach drei vollständigen RTTs?
  1. 5 MSS
  2. 16 MSS
  3. 12 MSS
  4. 8 MSS
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Ein Reno-Sägezahn erreicht bei MSS=1.000 Byte und RTT=0,1 s eine Spitze von 40 Segmenten. Welchen durchschnittlichen Durchsatz sagt das einfache Modell voraus?
  1. 3,20 Mbps
  2. 0,30 Mbps
  3. 1,60 Mbps
  4. 2,40 Mbps
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Eine Verbindung mit 15 Mbps bedient drei Datenströme mit einem Bedarf von 3, 5 und 20 Mbps. Wie lautet die Max-Min-faire Aufteilung in dieser Reihenfolge?
  1. 3, 5 und 7 Mbps.
  2. 3, 6 und 6 Mbps.
  3. 5, 5 und 5 Mbps.
  4. 3, 3 und 9 Mbps.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Ein Router setzt ein ECN-fähiges Paket auf CE und leitet es erfolgreich weiter. Was sollte der Empfänger bei klassischem ECN-fähigem TCP melden?
  1. Not-ECT in seinen Quittungen.
  2. CWR in seinen Quittungen.
  3. ECE in seinen Quittungen.
  4. Eine Duplikatquittung für Datenverlust.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Zwei CUBIC-Datenströme haben denselben gespeicherten Spitzenwert und dieselbe gewöhnliche Verringerung, aber unterschiedliche RTTs. Was erklärt, warum sich ihre tatsächlichen Rückkehrzeiten zum alten Spitzenwert unterscheiden können?
  1. Die kubische Funktion nutzt die Quittungszahl, sodass die kürzere RTT ihre Uhr schneller voranschreiten lässt.
  2. Der Verringerungsfaktor wächst mit der RTT, sodass die längere RTT mit einem kleineren Fenster beginnt.
  3. Der gespeicherte Spitzenwert wird durch die RTT dividiert, bevor die kubische Kurve ausgewertet wird.
  4. Eine Reno-freundliche Schätzung kann den gemeinsamen zeitbasierten kubischen Zielwert übersteigen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

BBR schätzt die Bandbreite auf 32 Mbps und die minimale RTT auf 25 ms. Wie hoch ist bei einem Überlastfensterfaktor von 2 seine modellbasierte Fensterobergrenze?
  1. 100.000 Byte
  2. 200.000 Byte
  3. 800.000 Byte
  4. 1.600.000 Byte
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Was identifiziert eine QUIC-Verbindung bei einer unterstützten Änderung der Netzwerkadresse?
  1. Ein festes Portpaar.
  2. Ein Datenstromkredit.
  3. Eine Verbindungs-ID.
  4. Eine Paketnummer.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Eine QUIC-Verbindung verwendet Datagramme von höchstens 1.300 Byte und hat cwnd=10.400 Byte. Ein Überlastungsereignis tritt auf, dann werden mehrere weitere zuvor gesendete Pakete für verloren erklärt, bevor ein während der Wiederherstellung gesendetes Paket quittiert wird. Welches cwnd sollte die standardmäßige Überlastkontrolle beibehalten?
  1. 5.200 Byte
  2. 2.600 Byte
  3. 1.300 Byte
  4. 10.400 Byte
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 3: Analysiere Warteschlangen und Wiederherstellungsphasen10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Eine Verbindung überträgt 24 Mbps an gleich großen Paketen. Ein Viertel wiederholt Daten, die bereits über diese Verbindung übertragen wurden. Was ist die obere Schranke für die Rate neuer Daten vor Berücksichtigung von Headern und anderen Verlusten?
  1. 6 Mbps
  2. 18 Mbps
  3. 20 Mbps
  4. 24 Mbps
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Auf einem Funkpfad gehen Pakete verloren, während die gemessene RTT nahe ihrem Wert ohne Warteschlangen bleibt. Warum kann ein verlustbasierter Sender seine Rate auch ohne wachsende Warteschlange verringern?
  1. Das Empfangsfenster muss bei jedem beschädigten Funkrahmen schrumpfen.
  2. Die Engpassrate wird allein aus der Anzahl der Duplikatquittungen abgeleitet.
  3. Die verlustbasierte Steuerung deutet fehlende Pakete als Überlastrückmeldung.
  4. Der Router sendet nach jedem beschädigten Rahmen einen ausdrücklichen Ratenbefehl.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Bei Beginn der Wiederherstellungsphase hat ein NewReno-Sender 28 MSS unterwegs. Seine erste Quittung, die die kumulative Quittung voranschiebt, lässt einen Teil dieser ursprünglichen Daten unquittiert. Eine zweite Quittung deckt alle ab. Welche Schwelle und welches Wiederherstellungsverhalten passen zu NewReno?
  1. Schwelle 14 MSS; nach der ersten Quittung bleiben und nach der zweiten die Phase verlassen.
  2. Schwelle 14 MSS; nach der ersten Quittung die Phase verlassen und für jede Lücke erneut halbieren.
  3. Schwelle 17 MSS; nach der ersten Quittung bleiben und nach der zweiten die Phase verlassen.
  4. Schwelle 7 MSS; Slow Start neu beginnen, sobald die erste Quittung voranschreitet.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Eine langlebige Übertragung nach Reno-Art hat MSS=1.200 Byte, RTT=80 ms, einen Verlustanteil von 0,0004, rwnd=40.000 Byte und einen Engpass mit 18 Mbps. Welche ungefähre obere Rate ergibt sich aus dem Verlustmodell und diesen Begrenzungen?
  1. 7,32 Mbps
  2. 18,00 Mbps
  3. 0,50 Mbps
  4. 4,00 Mbps
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Zwei Datenströme multiplizieren ihre Raten jeweils mit 0,5. Welche Eigenschaft ihrer Raten bleibt unverändert?
  1. Ihre absolute Differenz.
  2. Ihr Verhältnis zueinander.
  3. Ihr gemeinsamer Durchsatz.
  4. Ihr Abstand zur vollen Kapazität.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Zwei Datenströme auf einer Verbindung mit 20 Mbps liefern jeweils 2 Mbps. Wie hoch sind ihr Jain-Fairnessindex und ihre gemeinsame Auslastung?
  1. J=0,5; Auslastung = 20 %.
  2. J=1; Auslastung = 100 %.
  3. J=1; Auslastung = 20 %.
  4. J=0,2; Auslastung = 100 %.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Ein Tail-Drop-Puffer mit 1.500.000 Byte liegt vor einer Ausgangsverbindung mit 30 Mbps. Ein großer Upload hält ihn nahezu voll, während ein Anruf stockt. Der Empfänger gibt reichlich freien Platz bekannt. Was erklärt die Verzögerung und welche Änderung der Signalisierung ist geeignet?
  1. Etwa 50 ms Verzögerung; das Empfangsfenster vergrößern, um den Router zu leeren.
  2. Etwa 400 ms Verzögerung; AQM ergänzen, um eine dauerhaft gefüllte Warteschlange früher zu signalisieren.
  3. Etwa 50 ms Verzögerung; den Ausgangspuffer vergrößern, um den Upload aufzunehmen.
  4. Etwa 400 ms Verzögerung; überlastungsbedingte Verringerungen abschalten, um die Warteschlange zu leeren.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

Ein DCTCP-Sender hat einen geglätteten markierten Anteil von α=0,4 und cwnd=60 MSS. Welches Fenster ergibt sich nach seiner proportionalen Verringerung?
  1. 24 MSS
  2. 30 MSS
  3. 36 MSS
  4. 48 MSS
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Welcher BBR-Zustand baut hauptsächlich die Warteschlange ab, die bei der anfänglichen Ermittlung der Bandbreite entstand?
  1. Drain.
  2. Startup.
  3. ProbeRTT.
  4. ProbeBW Up.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Nach dem QUIC-Handshake wird Paket 62 quittiert, während Paket 59 im selben Paketnummernraum unquittiert bleibt. Wie wird Paket 59 nach dem empfohlenen Paketschwellenwert behandelt?
  1. Es bleibt ausstehend, bis drei Duplikat-ACK-Frames eintreffen.
  2. Es ist nur verloren, wenn das Feld für die Quittungsverzögerung null ist.
  3. Es wird für verloren erklärt, weil der Nummernabstand drei erreicht.
  4. Es bleibt ausstehend, bis ein Probe Timeout abläuft.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 4: Wende die Regeln bei veränderten Bedingungen an10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Ein anfangs leerer Puffer mit 450.000 Byte empfängt 0,4 s lang 22 Mbps und sendet 16 Mbps. Danach fällt die Ankunftsrate auf 10 Mbps. Wie lange dauert es nach dieser Änderung bei gleichbleibenden Raten, bis die Warteschlange leer ist?
  1. 0,15 s
  2. 0,30 s
  3. 0,40 s
  4. 0,60 s
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Ein Router markiert Überlastung in einem Paket und der Empfänger meldet sie in einer Quittung zurück. Welcher grundlegende Ansatz liefert die Überlastrückmeldung?
  1. Ende-zu-Ende-Schluss aus Verlust.
  2. Ende-zu-Ende-Schluss aus Verzögerung.
  3. Flusskontrolle nur beim Empfänger.
  4. Netzgestützte Überlastkontrolle.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Ein einzelner kontinuierlich sendender Datenstrom durchläuft einen Engpass mit 40 Mbps und einer RTT ohne Warteschlangen von 50 ms. Er hat 400.000 Byte unterwegs; rwnd ist größer und der gesamte Überschuss befindet sich in einer dauerhaft gefüllten FIFO-Warteschlange. Welche Warteschlangenverzögerung und gemessene RTT passen zu diesem Modell?
  1. 30 ms Warteschlangenverzögerung; 80 ms RTT.
  2. 80 ms Warteschlangenverzögerung; 130 ms RTT.
  3. 50 ms Warteschlangenverzögerung; 100 ms RTT.
  4. 30 ms Warteschlangenverzögerung; 50 ms RTT.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Ein Ablaufbeispiel beginnt bei cwnd=2 MSS und ssthresh = 16 MSS. Es verwendet eine Quittung pro Segment und wechselt bei Gleichheit zur Überlastvermeidung. Wie groß ist cwnd nach fünf vollständigen RTTs?
  1. 64 MSS
  2. 18 MSS
  3. 32 MSS
  4. 20 MSS
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Ein Reno-Sender hat cwnd=30 MSS, aber nur 16 MSS ausstehende Daten. Drei Duplikatquittungen treffen ein, gefolgt von zwei weiteren und dann einer Quittung für alle ausstehenden Daten. Welche cwnd-Werte ergeben sich beim Eintritt in die Wiederherstellungsphase, nach den zusätzlichen Duplikaten und beim Verlassen der Phase?
  1. 18, 20, dann 15 MSS.
  2. 11, 13, dann 13 MSS.
  3. 11, 13, dann 8 MSS.
  4. 8, 10, dann 8 MSS.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Eine Verbindung mit 24 Mbps wird vollständig von ähnlichen Verbindungen genutzt, die jeweils mehr Kapazität beanspruchen könnten. Ein Nutzer hat drei Verbindungen und ein anderer eine. Welche Raten pro Nutzer und welcher Jain-Fairnessindex für die beiden Nutzer ergeben sich bei gleicher Aufteilung pro Verbindung?
  1. 12 und 12 Mbps; J=1,00.
  2. 18 und 6 Mbps; J=0,80.
  3. 18 und 6 Mbps; J=1,00.
  4. 6 und 18 Mbps; J=0,50.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Eine Warteschlange überschreitet kurzzeitig 5 ms Wartezeit, leert sich aber innerhalb von 40 ms. Eine andere fällt während 100 ms nie unter 8 ms. Wie sollte CoDel sie anhand seines Standardzielwerts und -intervalls unterscheiden?
  1. Beide signalisieren, weil jede mindestens einmal 5 ms überschreitet.
  2. Nur die erste signalisieren, weil sich ihre Verzögerung schneller ändert.
  3. Keine signalisieren, bis der jeweilige physische Puffer überläuft.
  4. Die zweite als anhaltend erhöhte Verzögerung behandeln, die erste nicht.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

Der vorherige Spitzenwert von CUBIC beträgt 160 Segmente. Ein neuer gewöhnlicher Verlust tritt bei einem vollständig genutzten Fenster von 120 auf, bevor diese Spitze wieder erreicht wird. Wie lauten mit schneller Konvergenz der neue gespeicherte Spitzenwert und das verringerte aktuelle Fenster?
  1. 102 Segmente und 84 Segmente.
  2. 120 Segmente und 84 Segmente.
  3. 102 Segmente und 60 Segmente.
  4. 84 Segmente und 102 Segmente.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Vegas hat cwnd=72 Segmente, eine Basis-RTT=30 ms und eine gemessene RTT=40 ms. Wie viele seiner Segmente warten nach der Schätzung anhand der Ratendifferenz?
  1. 6 Segmente
  2. 12 Segmente
  3. 18 Segmente
  4. 24 Segmente
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Ein QUIC-Client nimmt eine Verbindung wieder auf und sendet beim ersten Paketversand eine dafür geeignete Anfrage über einen Pfad mit 55 ms RTT. Wann können bei vernachlässigbarer Verarbeitung und ohne Verlust die ersten Antwortbytes eintreffen?
  1. Nach etwa 0 ms.
  2. Nach etwa 110 ms.
  3. Nach etwa 165 ms.
  4. Nach etwa 55 ms.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 5: Analysiere Zusammenhänge zwischen Modellen und Transportverhalten10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Eine vorgelagerte Verbindung mit 10 Mbps verwendete zuvor 30 % ihrer Kapazität für später verworfene Pakete und 20 % für unnötige Duplikate; die Kategorien überschneiden sich nicht. Eine Änderung der Steuerung senkt diese Anteile auf 10 % und 5 %; die Verbindung bleibt ausgelastet. Um wie viel steigt die Kapazität für nützliche erste Kopien, die ankommen, wenn Header unberücksichtigt bleiben?
  1. 1,5 Mbps
  2. 2,0 Mbps
  3. 5,0 Mbps
  4. 3,5 Mbps
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Eine Verbindung wird auf einem Pfad mit 120 ms RTT durch ihr Empfangsfenster von 96.000 Byte begrenzt. cwnd und Engpasskapazität sind größer. Welches Empfangsfenster würde bei derselben RTT die doppelte derzeitige Rate unterstützen?
  1. 48.000 Byte
  2. 192.000 Byte
  3. 96.000 Byte
  4. 768.000 Byte
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Ein Sender im Slow Start beginnt eine Runde mit 12 MSS. Ein Empfänger quittiert jeweils zwei volle Segmente und jede Quittung erhöht cwnd um eine MSS. Es gibt keinen Verlust und ssthresh liegt viel höher. Welches Fenster ergibt sich nach zwei idealisierten vollständigen Runden mit derselben Quittungsregel?
  1. 24 MSS
  2. 48 MSS
  3. 27 MSS
  4. 30 MSS
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Bei einem Reno-Sender läuft der Zeitgeber für die Übertragungswiederholung ausstehender Daten ab. Mit welchem Überlastfenster beginnt der daraus folgende Slow Start?
  1. Mit einer SMSS.
  2. Mit zwei SMSS.
  3. Mit der Hälfte von FlightSize.
  4. Mit ssthresh plus drei SMSS.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Bei zwei langlebigen Übertragungen nach Reno-Art mit derselben MSS hat Verbindung B die doppelte RTT von A. Wie muss sich der Verlustanteil von B zum Verlustanteil von A verhalten, damit das Verlustanteilsmodell für B den doppelten Durchsatz von A vorhersagt?
  1. Er muss ein Viertel des Anteils von A betragen.
  2. Er muss ein Achtel des Anteils von A betragen.
  3. Er muss die Hälfte des Anteils von A betragen.
  4. Er muss ein Sechzehntel des Anteils von A betragen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Zwei synchronisierte Datenströme beginnen auf einer Verbindung mit 16 Mbps bei 10 und 2 Mbps. Beide addieren pro Schritt 1 Mbps und halbieren ihre Rate jeweils, sobald ihre Summe erstmals 16 überschreitet. Welche Raten ergeben sich nach der zweiten Halbierung?
  1. 5,25 und 3,25 Mbps.
  2. 4,5 und 3,5 Mbps.
  3. 5,5 und 3,5 Mbps.
  4. 6,5 und 2,5 Mbps.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Ein DCTCP-Datenstrom hat α=0,2, einen neu gemessenen Anteil markierter Bytes von 0,6, g=1/4 und cwnd=80 MSS. Welche Werte für Alpha und das Fenster ergeben sich, nachdem Alpha aktualisiert und anschließend die Verringerung angewendet wurde?
  1. Alpha 0,6; Fenster 56 MSS.
  2. Alpha 0,3; Fenster 68 MSS.
  3. Alpha 0,3; Fenster 56 MSS.
  4. Alpha 0,2; Fenster 72 MSS.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

BBR schätzt einen Engpass auf 80 Mbps und die minimale RTT auf 40 ms. Es beginnt ProbeBW Up mit einem Pacing-Faktor von 1,25 und einem Fensterfaktor von 2. Welche Pacing-Rate und Fensterobergrenze ergeben sich und kann diese Phase eine Warteschlange erzeugen?
  1. 160 Mbps und 800.000 Byte; eine Warteschlange kann nicht entstehen.
  2. 100 Mbps und 400.000 Byte; eine Warteschlange kann nicht entstehen.
  3. 100 Mbps und 800.000 Byte; eine Warteschlange kann entstehen.
  4. 160 Mbps und 400.000 Byte; eine Warteschlange kann entstehen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

QUIC hat eine geglättete RTT=80 ms, eine RTT-Schwankung von 15 ms, eine maximale Quittungsverzögerung von 20 ms und eine Zeitgeberauflösung von 1 ms. Nach einem vorherigen RTT-Messwert erfüllt ein ununterbrochenes Intervall von 510 ms alle übrigen Verlustbedingungen für anhaltende Überlastung. Was sollte die standardmäßige Überlastkontrolle bei Datagrammen von höchstens 1.250 Byte tun?
  1. Das Fenster beibehalten, weil die Schwelle 540 ms beträgt.
  2. Das Fenster nach dem Intervall auf 1.250 Byte setzen.
  3. Für jedes verlorene Datagramm im Intervall erneut halbieren.
  4. Das Fenster auf sein Minimum von 2.500 Byte verringern.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Die Übertragung eines kleinen Objekts endet, während TCP noch im Slow Start ist. Warum sagt eine Sägezahn-Durchsatzschätzung für langlebige Übertragungen seine Abschlusszeit schlecht voraus?
  1. Die Übertragung hat keine wiederholten Wachstums- und Verlustzyklen im stationären Zustand erreicht.
  2. Die Übertragung ist beim Start vom bekannt gegebenen Empfangsfenster ausgenommen.
  3. Die RTT beeinflusst nur die Wiederherstellung nach Verlust, sobald die Überlastvermeidung begonnen hat.
  4. Das Anfangsfenster wird beim Verbindungsaufbau durch das volle BDP des Engpasses ersetzt.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Hängst du bei deiner eigenen Aufgabe fest? Hausaufgabenhilfe

Schlüsselbegriffe

95 Schlüsselbegriffe, jeweils mit Definition

A

Ablauf des Wiederholungszeitlimits (RTO)
Der Ablauf des Wiederholungszeitlimits tritt ein, wenn eine Quittung für ausstehende Daten nicht vor Ablauf des Zeitgebers eintrifft, und löst eine Wiederherstellung und einen vorsichtigen Neustart aus.
Reno kehrt nach Ablauf seines Zeitgebers zu einem Fenster von einem Segment zurück, selbst wenn das alte Überlastfenster groß war.
Additive Erhöhung
Eine additive Erhöhung fügt pro Steuerschritt einen festen Betrag hinzu; bei Renos Überlastvermeidung gewinnt das Fenster etwa eine SMSS pro RTT hinzu.
Zwei gleichartige Reno-Datenströme fügen pro Runde ähnliche Segmentmengen hinzu, selbst wenn einer derzeit ein größeres Fenster hat.
AIMD
AIMD verbindet additive Erhöhung mit multiplikativer Verringerung, erkundet wiederholt die Kapazität und verringert bei Überlastung proportional.
Bei übereinstimmender Rückmeldung erhalten zwei Datenströme ihren Abstand während des Wachstums und verkleinern ihn bei jeder Verringerung.
Aktives Warteschlangenmanagement (AQM)
Aktives Warteschlangenmanagement, AQM, verwirft oder markiert Pakete vor einem Überlauf, um Überlastung zu signalisieren und anhaltende Warteschlangenbildung zu begrenzen.
Ein Router kann einen Sender zur Verringerung seiner Rate auffordern, während im physischen Paketpuffer noch Platz ist.
Anfangsfenster
Das Anfangsfenster ist die Überlastfensterbegrenzung, die ein Sender zu Beginn einer Verbindung nutzt, bevor er die verfügbare Pfadkapazität ermittelt hat.
Ein größeres Anfangsfenster kann eine kleine Übertragung in weniger Startrunden abschließen lassen, wenn der Pfad es unterstützt.
Angebotene Last
Die angebotene Last ist der gesamte Verkehr, den Sender in ein Netz einspeisen, einschließlich neuer Daten, Übertragungswiederholungen und unnötiger Wiederholungen.
Ein erneuter Versuch erhöht die angebotene Last, selbst wenn er Anwendungsdaten trägt, die bereits in einem früheren Paket gesendet wurden.
Anhaltende Überlastung
Anhaltende Überlastung ist ein maßgebliches langes QUIC-Verlustintervall, das seinen RTT-basierten Zeitschwellenwert überschreitet und eine Verringerung auf das Mindestfenster auslöst.
Eine anhaltende Folge verlorener quittierungsauslösender Pakete kann cwnd auf zwei Datagramme maximaler Größe verringern.
Appropriate Byte Counting
Appropriate Byte Counting nutzt die Anzahl neu quittierter Bytes für das Fensterwachstum und verringert dessen Abhängigkeit von der Anzahl der vom Empfänger gesendeten Quittungen.
Eine Quittung für mehrere Segmente enthält mehr Zustellinformationen als eine Quittung für ein Segment.
Ausgangswarteschlange
Eine Ausgangswarteschlange ist ein Routerpuffer für Pakete, die auf die Übertragung über eine bestimmte Ausgangsverbindung warten.
Ein Paket hinter 200.000 Byte wartet, während die Ausgangsverbindung diese vorausgehenden Bytes überträgt.

B

Bandbreiten-Verzögerungs-Produkt (BDP)
Das Bandbreiten-Verzögerungs-Produkt, BDP, ist die Engpassbandbreite mal der RTT ohne Warteschlangen. Es schätzt die Datenmenge, die zur Auslastung dieses Pfades unterwegs sein muss.
Ein Pfad mit 10 Mbps und 80 ms minimaler RTT benötigt etwa 100.000 Byte unterwegs, bevor sich eine dauerhaft gefüllte Warteschlange bildet.
Basis-RTT
Die Basis-RTT ist die kleinste RTT, die als Schätzung für einen Pfad mit geringer oder keiner Warteschlangenbildung dient, und bildet einen Bezugspunkt für verzögerungsbasierte Steuerung.
Vegas vergleicht eine gemessene RTT von 40 ms mit einer Basis-RTT von 30 ms, um die Menge wartender Daten zu schätzen.
BBR
BBR ist eine modellbasierte Überlastkontrolle, die Engpassbandbreite und minimale RTT schätzt und anschließend das Senden durch Pacing und Grenzen für unterwegs befindliche Daten steuert.
Seine Bandbreitenschätzung und minimale RTT bestimmen ein BDP, selbst wenn seine aktuelle gemessene RTT Warteschlangenverzögerung enthält.
Bufferbloat
Bufferbloat ist anhaltend übermäßige Verzögerung durch überdimensionierte, gefüllte Puffer, die häufig durch verlustbasierten Verkehr bei der Kapazitätserkundung aufrechterhalten wird.
Ein Videoanruf wird während eines Uploads träge, weil seine Pakete hinter einem großen Routerrückstau warten.

C

Chiu-Jain-Diagramm
Ein Chiu-Jain-Diagramm trägt zwei Datenstromraten auf, um zu zeigen, wie Steuerungsanpassungen eine Aufteilung zu einer effizienten, gleichen Aufteilung hin oder von ihr weg bewegen.
Eine gleichzeitige Halbierung bewegt den Ratenpunkt entlang eines Strahls zum Ursprung hin und erhält dabei das Ratenverhältnis.
Congestion Experienced (CE)
Congestion Experienced, CE, ist der IP-ECN-Codepunkt 11. Er zeigt an, dass ein Router das Paket als Überlastwarnung markiert hat.
Ein zugestelltes CE-Paket veranlasst den Empfänger, Überlastung zurückzumelden, ohne anzugeben, dass seine Daten fehlen.
Congestion Window Reduced (CWR)
Congestion Window Reduced, CWR, ist das TCP-Flag, das dem Empfänger mitteilt, dass der Sender auf eine klassische ECN-Warnung reagiert hat.
Der Empfänger setzt ECE nicht mehr, nachdem ein neues Datensegment mit dem CWR-Flag des Senders eingetroffen ist.
Controlled Delay (CoDel)
Controlled Delay, CoDel, signalisiert Überlastung, wenn die Wartezeit von Paketen über ein Messintervall hinweg dauerhaft über einem Zielwert bleibt.
Eine minimale Verweilzeit über 5 ms während eines Intervalls von 100 ms zeigt bei Standardeinstellungen eine dauerhaft gefüllte Warteschlange an.
CUBIC
CUBIC ist eine verlustbasierte Überlastkontrolle, deren grundlegender Fensterzielwert eine kubische Funktion der Zeit um einen gespeicherten Überlastungspunkt ist.
Ein Datenstrom mit großem BDP kann sein verringertes Fenster schneller wiedergewinnen, als Renos Wachstum um ein Segment pro RTT erlaubt.
CUBIC-Rückkehrzeit K
Die CUBIC-Rückkehrzeit K ist die verstrichene Zeit, nach der die grundlegende kubische Kurve nach einer gewöhnlichen Verringerung ihr gespeichertes Wmax erreicht.
Bei einem Wmax von 100 Segmenten und den Standardkonstanten kehrt die reine Kurve nach etwa 4,22 s zurück.

D

Data Center TCP (DCTCP)
Data Center TCP, DCTCP, bemisst in einem kompatiblen kontrollierten Netz Fensterverringerungen anhand des geglätteten Anteils markierter Bytes.
Bei einem Alpha von 0,2 behält es 90 % seines Fensters, statt beim Vorliegen einer beliebigen Markierung zu halbieren.
Dauerhaft gefüllte Warteschlange
Eine dauerhaft gefüllte Warteschlange ist ein anhaltender Rückstau, der sich zwischen Verkehrsschüben nicht abbaut und auch bei vollständig ausgelastetem Ausgang Verzögerung hinzufügt.
Während einer großen Übertragung bleibt die kleinste beobachtete Warteschlangenverzögerung hoch, statt nahe null zurückzukehren.
Durchsatz
Der Durchsatz ist die Rate, mit der Pakete oder Bytes zugestellt werden, gemessen an einer angegebenen Stelle und Schicht im Netz.
Der Durchsatz einer stark ausgelasteten Verbindung kann hoch bleiben, während die Anwendung deutlich weniger neue Nutzdaten erhält.

E

ECN-Echo (ECE)
ECN-Echo, ECE, ist das TCP-Flag, mit dem ein Empfänger bei klassischem ECN Überlastmarkierungen meldet, bis der Sender seine Reaktion bestätigt.
Mehrere ECE-Quittungen können dasselbe Ereignis zurückmelden, während das CWR-Segment des Senders noch unterwegs ist.
ECN-fähiger Transport (ECT)
Ein ECN-fähiger Transport erklärt durch einen ECT-Codepunkt, dass sein Paket die Überlastmarkierung eines Routers tragen kann.
Ein AQM kann ECT(0) auf CE ändern, während bei Not-ECT-Verkehr ein Paket verworfen werden muss, wenn Überlastung zu signalisieren ist.
Effizienzgerade
Die Effizienzgerade im Zwei-Datenstrom-Diagramm enthält Ratenpaare, deren Summe der verfügbaren Kapazität des gemeinsam genutzten Engpasses entspricht.
Auf einer Verbindung mit 14 Mbps liegen sowohl das Ratenpaar 7 und 7 Mbps als auch das Ratenpaar 12 und 2 Mbps auf der Effizienzgeraden.
Empfangsfenster (rwnd)
Das Empfangsfenster, rwnd, ist die vom Empfänger bekannt gegebene Begrenzung der TCP-Flusskontrolle für ausstehende Daten, die der Empfänger annehmen kann.
Ein rwnd von 20.000 Byte kann das Senden begrenzen, selbst wenn cwnd 60.000 Byte unterwegs erlauben würde.
Ende-zu-Ende-Überlastkontrolle
Die Ende-zu-Ende-Überlastkontrolle passt Verkehr anhand von Beobachtungen der Endpunkte an, ohne ausdrückliche Überlastrückmeldung von Routern.
Reno wertet ein fehlendes Segment auch ohne ECN-Markierung als Grund, sein Fenster zu verringern.
Engpass
Ein Engpass ist die Verbindung auf einem Pfad, die für einen bestimmten Verkehr die geringste Kapazität bereitstellt und dessen Zustellrate begrenzt.
Ein schnelles lokales Netz speist eine langsamere Zugangsverbindung, an der der ausgehende Verkehr insgesamt zu warten beginnt.
Explizite Überlastbenachrichtigung (ECN)
Die explizite Überlastbenachrichtigung, ECN, ermöglicht einem Router, ein ECN-fähiges Paket zur Signalisierung von Überlastung zu markieren und seine Daten dennoch weiterzuleiten.
Der Empfänger kann eine Warnung des Routers melden, obwohl das markierte Paket erfolgreich angekommen ist.

F

Fair Queuing
Fair Queuing trennt Verkehr in Warteschlangen pro Datenstrom und gibt ihnen Möglichkeiten zur Bedienung, sodass ein Router eine Aufteilung pro Datenstrom durchsetzen kann.
Ein interaktiver Datenstrom muss nicht hinter dem gesamten Rückstau eines umfangreichen Datenstroms warten, wenn jeder eine eigene bediente Warteschlange hat.
Fairnessgerade
Die Fairnessgerade im Zwei-Datenstrom-Diagramm enthält Ratenpaare, bei denen beide Datenströme unabhängig von ihrer Gesamtauslastung dieselbe Rate haben.
Die Raten 2 und 2 Mbps liegen auf der Fairnessgeraden, selbst wenn die gemeinsam genutzte Verbindung weit mehr übertragen kann.
Fast Recovery
Fast Recovery ist Renos Wiederherstellungsverfahren nach Duplikatquittungen, das cwnd vorübergehend aufbläht und es bei einer voranschreitenden Quittung auf ssthresh zurücksetzt.
Eine Schwelle von 10 MSS ergibt ein Eintrittsfenster von 13 MSS, bevor es später auf 10 MSS zurückgesetzt wird.
Fast Retransmit
Fast Retransmit sendet ein Segment erneut, nachdem die dritte Duplikatquittung eine wahrscheinliche Lücke angezeigt hat, und vermeidet so das Warten auf den Zeitgeber für die Übertragungswiederholung.
Spätere Segmente treffen hinter einem fehlenden ein und erzeugen genügend Duplikatquittungen, um eine sofortige Wiederherstellung auszulösen.
Fensteraufblähung
Die Fensteraufblähung fügt Renos Wiederherstellungsfenster vorübergehend Platz für Duplikatquittungen hinzu, die anzeigen, dass spätere Pakete das Netz verlassen haben.
Eine zusätzliche Duplikatquittung während Fast Recovery bei Reno fügt eine SMSS hinzu, bevor das Fenster später zurückgesetzt wird.
Fensterbasierte Steuerung
Eine fensterbasierte Steuerung begrenzt die Menge unquittierter Daten, die unterwegs sind, und erlaubt neue Übertragungen, wenn Quittungen Platz freigeben.
Ein Sender mit vollem Überlastfenster wartet auf zurückkehrende Quittungen, bevor er weitere reguläre Daten hinzufügt.
Fensterfaktor
Ein Fensterfaktor multipliziert das von BBR geschätzte BDP, um eine Obergrenze für unterwegs befindliche Daten festzulegen. Er ist getrennt vom Faktor für die zeitlich gesteuerte Senderate.
Eine Obergrenze von zwei BDPs erlaubt zusätzliche ausstehende Daten, ohne direkt eine Rate von der doppelten Bandbreite anzuordnen.
FlightSize
FlightSize ist die Menge der gesendeten, aber noch nicht quittierten Daten. Sie kann kleiner als das Überlastfenster sein, wenn die Anwendung weniger sendet.
Bei einem cwnd von 30 MSS, aber nur 12 MSS ausstehenden Daten beruht Renos Verlustschwelle auf den 12 MSS unterwegs befindlicher Daten.
Flusskontrolle
Die Flusskontrolle begrenzt das Senden auf die verfügbare Pufferkapazität des Empfängers und schützt diesen Endpunkt vor Daten, die er nicht annehmen kann.
Ein Empfänger gibt ein kleineres Fenster bekannt, wenn seine Anwendung eintreffende Daten nur langsam verarbeitet.

G

Globale Synchronisation
Globale Synchronisation entsteht, wenn viele Datenströme gleichzeitig Verluste erfahren und ihre Fenster verringern, wodurch die gemeinsame Auslastung zurückgeht.
Zufällige frühe Signalisierung kann Überlastreaktionen zeitlich verteilen, statt alle Sender auf einmal halbieren zu lassen.

H

Head-of-Line-Blocking
Head-of-Line-Blocking verzögert spätere geordnete Daten hinter einem fehlenden früheren Teil; der einzelne TCP-Bytestrom kann dies über unabhängige Anfragen hinweg verursachen.
Ein verlorenes TCP-Segment kann eine spätere Bildantwort verzögern, selbst wenn alle Bytes dieser Antwort angekommen sind.

J

Jain-Fairnessindex
Der Jain-Fairnessindex misst die Gleichheit nicht negativer Raten mit einer Summe ungleich null. Er erreicht 1 bei Gleichheit und 1/n, wenn einer von n Datenströmen alles erhält.
Zwei gleich langsame Datenströme erzielen den Wert 1, selbst wenn sie zusammen den größten Teil der Engpasskapazität ungenutzt lassen.

K

Klippe (Cliff)
Die Klippe ist der Bereich, jenseits dessen steigende angebotene Last den Ende-zu-Ende-Durchsatz verringert, weil verworfene Pakete und verschwendete Übertragungen überwiegen.
Nachdem ein weiterer Sender begonnen hat, überträgt das Netz mehr Verkehr, doch der zugestellte Nutzdurchsatz fällt.
Kniepunkt
Der Kniepunkt ist der Bereich einer Last-Leistungs-Kurve, jenseits dessen zusätzliche angebotene Last wenig Durchsatz hinzufügt, aber die Verzögerung stark erhöht.
Ein zusätzlicher Upload erhöht den Gesamtdurchsatz kaum, lässt aber jeden interaktiven Datenstrom länger warten.

L

L4S
L4S ist eine experimentelle Architektur, die skalierbare Überlastkontrolle, ECT(1) und gekoppeltes Warteschlangenmanagement für sehr geringe Warteschlangenverzögerung verbindet.
Häufige Markierungen schon bei geringer Warteschlangenbildung steuern skalierbaren Verkehr, während ein gekoppelter Warteschlangenentwurf klassischen Verkehr berücksichtigt.

M

Mathis-Näherung
Die Mathis-Näherung schätzt den Durchsatz langlebiger Übertragungen nach Reno-Art aus MSS, RTT und Verlustanteil unter vereinfachten Bedingungen des stationären Zustands.
Bei unverändertem Verlust halbiert eine Verdopplung der RTT die vorhergesagte Rate, selbst wenn die physische Verbindung schneller ist.
Max-Min-Fairness
Max-Min-Fairness teilt Kapazität so auf, dass eine Erhöhung für einen Datenstrom die Verringerung eines Datenstroms mit gleichem oder kleinerem Anteil erfordert.
Ein Datenstrom mit geringem Bedarf erhält, was er benötigt; anschließend wird die verbleibende Kapazität unter den Datenströmen mit weiterem Bedarf aufgeteilt.
Maximale Segmentgröße (MSS)
Die maximale Segmentgröße, MSS, ist die größte TCP-Anwendungsdatennutzlast in einem Segment ohne TCP- und IP-Header.
Ein Segment mit 1.460 Byte Nutzlast benötigt auf der Verbindung zusätzliche Bytes für seine TCP- und IP-Header.
Multiplikative Verringerung
Eine multiplikative Verringerung skaliert ein Überlastfenster oder eine Senderate mit einem festen Faktor und entfernt so einen größeren absoluten Betrag von einem größeren Datenstrom.
Die Halbierung der Raten 12 und 4 Mbps ergibt 6 und 2 Mbps und verkleinert den Abstand, während ihr Verhältnis erhalten bleibt.

N

Netzgestützte Überlastkontrolle
Die netzgestützte Überlastkontrolle nutzt ausdrückliche Rückmeldungen von Routern, um einem Sender mitzuteilen, dass er den in den Pfad eintretenden Verkehr anpassen soll.
Ein AQM markiert ein Paket und der Empfänger meldet die Warnung in einer Quittung an den Sender zurück.
NewReno
NewReno verbessert Renos Wiederherstellung, indem es nach einer Teilquittung das nächste fehlende Segment wiederherstellt und bis zur Quittung der ursprünglich unterwegs befindlichen Daten in der Wiederherstellungsphase bleibt.
Zwei Verluste innerhalb derselben unterwegs befindlichen Daten können ohne eine unmittelbare erneute Fensterverringerung nach der ersten Wiederherstellung behoben werden.
Nutzdatendurchsatz
Der Nutzdatendurchsatz ist die Rate der an die empfangende Anwendung zugestellten Nutzdaten, wobei jedes Datenstück einmal gezählt und Protokoll-Overhead ausgeschlossen wird.
Der doppelte Empfang derselben Anwendungsbytes erhöht den Nutzdatendurchsatz nach der ersten nützlichen Zustellung nicht.

P

Pacing
Pacing verteilt Paketübertragungen über die Zeit, um einer Zielrate zu folgen und zu vermeiden, ein ganzes erlaubtes Fenster als einen Verkehrsschub zu senden.
Eine Anwendung verteilt ausgehende Pakete über die Runde, statt sie bei Eingang einer Quittung alle auf einmal freizugeben.
Pacing-Faktor
Ein Pacing-Faktor multipliziert die von BBR geschätzte Engpassbandbreite, um eine Senderate für eine bestimmte Erkundungs- oder Abbauphase zu wählen.
Ein Faktor von 1,25 bei einer Schätzung von 40 Mbps zielt während einer Bandbreitenerkundungsphase auf 50 Mbps.
Paketnummernraum
Ein Paketnummernraum ist ein QUIC-Nummerierungskontext, innerhalb dessen gesendete Paketnummern steigen und nie erneut verwendet werden.
Erneut gesendete Daten eines Datenstroms erhalten eine neue Paketnummer, statt die Nummer der verlorenen Übertragung wiederzuverwenden.
Paketschwellenwert
Der Paketschwellenwert erklärt ein QUIC-Paket für verloren, sobald ein ausreichend späteres Paket quittiert wurde; empfohlen ist ein Nummernabstand von drei.
Eine Quittung für Paket 24 kann den Schwellenwertverlust des noch unquittierten Pakets 21 im selben Paketnummernraum feststellen.
Parallele Verbindungen
Parallele Verbindungen sind mehrere gleichzeitige Transportverbindungen einer Anwendung, die jeweils um einen separaten Anteil pro Datenstrom konkurrieren können.
Ein Nutzer mit vier vergleichbaren Verbindungen kann insgesamt mehr Kapazität erhalten als ein Nutzer mit nur einer.
Probe Timeout (PTO)
Ein Probe Timeout, PTO, veranlasst QUIC bei ausbleibender Rückmeldung, quittierungsauslösenden Verkehr zu senden, ohne selbst das Überlastfenster auf das Minimum fallen zu lassen.
Ein Testpaket kann die Rückmeldung wiederherstellen, bevor der Sender genügend Hinweise hat, um anhaltende Überlastung festzustellen.
ProbeBW
ProbeBW ist der Zustand von BBR zur Bandbreitenerkundung. Er nutzt Phasen, die zusätzliche Kapazität testen und anschließend unterwegs befindlichen Verkehr abbauen oder halten.
Die Up-Phase kann kurzzeitig eine Warteschlange aufbauen, indem sie oberhalb der aktuellen Schätzung sendet, bevor eine langsamere Phase folgt.
ProbeRTT
ProbeRTT verringert die unterwegs befindlichen Daten von BBR, um die Schätzung der minimalen RTT zu erneuern; der Entwurf von Version 3 legt Bedingungen für Dauer und Umlaufzeit fest.
Ein vorübergehend verringerter Rückstau gibt dem Sender die Möglichkeit, den Pfad mit weniger Warteschlangenverzögerung zu beobachten.
Protokollverkrustung
Protokollverkrustung erschwert die Bereitstellung von Änderungen, weil bestehende Netzwerkgeräte oder Implementierungen von der aktuellen Form des Protokolls abhängen.
Eine Middlebox, die unbekannte TCP-Flags zurückweist, kann zwei dazu fähige Endpunkte an der Nutzung einer Erweiterung hindern.

Q

QUIC
QUIC ist ein sicheres Transportprotokoll über UDP, das zuverlässige Datenströme, Flusskontrolle und Überlastkontrolle bietet, üblicherweise über eine Bibliothek im Benutzerraum.
Eine Anwendungsaktualisierung kann eine Verbesserung des QUIC-Transports ausliefern, ohne auf eine Betriebssystemänderung zu warten.
QUIC-Datenstrom
Ein QUIC-Datenstrom ist ein unabhängig geordneter Bytestrom innerhalb einer Verbindung und ermöglicht die Zustellung ohne Warten auf Lücken in unabhängigen Datenströmen.
Ein auf Datenstrom A beschränkter Verlust muss nicht verhindern, dass empfangene Bytes von Datenstrom B dessen Anwendung erreichen.
Quittungsbereich
Ein Quittungsbereich meldet eine zusammenhängende Gruppe empfangener QUIC-Paketnummern, sodass der Sender empfangene Übertragungen und Lücken erkennen kann.
Mehrere empfangene Bereiche können mehrere fehlende Pakete zeigen, ohne sich auf eine einzige kumulative Grenze zu stützen.
Quittungstaktung
Die Quittungstaktung bestimmt den Zeitpunkt neuen Sendens anhand zurückkehrender Quittungen und bindet so Ersatzverkehr an das Zustelltempo des Engpasses.
Wenn ein Segment den Pfad verlässt und seine Quittung zurückkehrt, gewinnt der Sender Platz für einen Ersatz.
Quittungsverzögerung
Die Quittungsverzögerung meldet, wie lange ein QUIC-Empfänger vor dem Quittieren gewartet hat, und unterstützt validierte und begrenzte RTT-Anpassungen nach dem Handshake.
Der Abzug zulässiger Wartezeit des Empfängers hilft, verzögerte Quittung von der auf dem Pfad verbrachten Zeit zu trennen.

R

Random Early Detection (RED)
Random Early Detection, RED, signalisiert Überlastung mit einer Wahrscheinlichkeit, die steigt, wenn die durchschnittliche Warteschlangenlänge eingestellte Schwellen überschreitet.
Ein kurzer Verkehrsschub kann passieren, weil der Durchschnitt der Warteschlangenlänge langsamer als die momentane Spitze steigt.
Ratenbasierte Steuerung
Eine ratenbasierte Steuerung wählt eine Senderate direkt, verteilt Pakete häufig über die Zeit und begrenzt zusätzlich oft die erlaubte Menge unterwegs befindlicher Daten.
Eine Überlastkontrolle strebt 15 Mbps an, obwohl ihre separate Obergrenze für unterwegs befindliche Daten einen kurzen Verkehrsschub erlauben könnte.
Reno-freundlicher Bereich
Der Reno-freundliche Bereich bezeichnet das CUBIC-Verhalten, bei dem eine RTT-abhängige AIMD-Schätzung den kubischen Zielwert übersteigt und das Wachstum bestimmt.
Ein CUBIC-Datenstrom mit kurzer RTT kann sich erholen, bevor die reine zeitbasierte Kurve zu ihrem alten Spitzenwert zurückkehren würde.
RTT-bedingte Unfairness
RTT-bedingte Unfairness ist eine ungleiche Aufteilung aufgrund unterschiedlicher Umlaufzeiten, durch die Datenströme nach Reno-Art mit kürzerer RTT häufiger wachsen können.
Bei gleichem Verlust kann ein Datenstrom mit 25 ms einen höheren modellierten Durchsatz als ein Konkurrent mit 100 ms haben.

S

Sägezahnmodell
Das Sägezahnmodell nähert Renos wiederholtes lineares Fensterwachstum und dessen Halbierung an und ergibt ein durchschnittliches Fenster von drei Vierteln des Spitzenwerts.
Eine Spitze von 20 Segmenten entspricht durchschnittlich etwa 15 Segmenten, wenn die Bedingungen des Modells gelten.
Schnelle Konvergenz
Die schnelle Konvergenz senkt den gespeicherten Spitzenwert von CUBIC, wenn Überlastung unterhalb des vorherigen Spitzenwerts auftritt, und erleichtert so die Anpassung an geringere verfügbare Kapazität.
Ein neuer Datenstrom an einem Engpass kann den alten Datenstrom veranlassen, den Spitzenwert für sein zukünftiges Wachstum anzupassen.
Selektive Quittung (SACK)
Eine selektive Quittung, SACK, meldet empfangene Byteblöcke jenseits der kumulativen Quittung, sodass ein TCP-Sender mehrere Lücken erkennen kann.
Empfangene Blöcke auf beiden Seiten zweier Lücken helfen dem Sender zu wählen, welche Daten noch erneut übertragen werden müssen.
Slow Start
Slow Start erhöht cwnd pro Quittung neuer Daten um bis zu eine SMSS und ergibt ungefähr exponentielles Wachstum, wenn ein vollständig genutztes Fenster quittiert wird.
Bei einer Quittung pro Segment wächst ein Anfangsfenster von 2 MSS nach einer vollen RTT auf etwa 4 MSS.
Slow-Start-Schwelle (ssthresh)
Die Slow-Start-Schwelle, ssthresh, ist ein Zustand des Senders, der darunter Slow Start und darüber Überlastvermeidung auswählt; bei Gleichheit ist beides möglich.
Ein Ablauf, der 8 MSS erreicht, kann zu einem Wachstum von einer MSS pro RTT wechseln, wenn seine Schwelle ebenfalls 8 MSS beträgt.

T

Tail Drop
Tail Drop ist eine FIFO-Warteschlangenregel, die eintreffende Pakete bei vollem Puffer verwirft und damit den tatsächlichen Überlauf als Überlastsignal nutzt.
Mehrere Datenströme können nahezu gleichzeitig Pakete verlieren, wenn sich ihr gemeinsam genutzter Tail-Drop-Puffer füllt.
TCP Vegas
TCP Vegas nutzt die Differenz zwischen erwarteter und gemessener Zustellrate, um wartende Daten zu schätzen und sein Fenster anhand von Verzögerungsrückmeldungen anzupassen.
Eine steigende RTT kann Vegas dazu bringen, seine Rate zu verringern, während ein verlustbasierter Konkurrent die gemeinsame Warteschlange weiter füllt.
TCP-freundlicher Verkehr
TCP-freundlicher Verkehr nutzt unter denselben Netzbedingungen nicht mehr Bandbreite als ein vergleichbarer TCP-Datenstrom und unterstützt so ein faires Zusammenwirken.
Eine Anwendung kann eine TCP-basierte Ratengleichung nutzen, um reagierende TCP-Übertragungen nicht zu verdrängen.
Teilquittung
Eine Teilquittung schiebt die kumulative Quittung voran, lässt aber einen Teil der bei Beginn der Wiederherstellung unterwegs befindlichen Daten ausstehend.
NewReno wertet eine solche Quittung als Hinweis auf eine weitere Lücke und setzt die Wiederherstellung fort, statt sie frühzeitig zu verlassen.

Ü

Überlastfenster (cwnd)
Das Überlastfenster, cwnd, ist ein vom Sender geführter Zustand, der für die Überlastkontrolle die erlaubte Anzahl unquittierter Bytes unterwegs begrenzt.
Der Sender kann cwnd verringern, während der Empfänger weiterhin reichlich freien Pufferplatz bekannt gibt.
Überlastkollaps
Ein Überlastkollaps ist ein Zustand schwerer Überlastung, in dem das Netz ausgelastet bleibt, aber nur sehr wenige neue Nutzdaten zustellt.
Vorgelagerte Verbindungen übertragen viele Pakete, die später verworfen werden, sodass wenig Kapazität für erfolgreiche Zustellung bleibt.
Überlastsignal
Ein Überlastsignal ist Verlust, Verzögerung oder eine ausdrückliche Rückmeldung, die eine Überlastkontrolle bei der Entscheidung über eine Änderung ihres Sendeverhaltens deutet.
Ein Anstieg über die minimale RTT des Pfades kann vor einer Warteschlange warnen, bevor ein Paket verworfen wird.
Überlastung
Überlastung entsteht, wenn anhaltender Verkehr die in einem Teil eines Netzes verfügbare Kapazität übersteigt und dadurch Warteschlangen und schließlich Verluste verursacht.
Mehrere Eingänge überlasten zusammen einen Routerausgang, obwohl jeder Eingang für sich unter dessen Kapazität liegt.
Überlastvermeidung
Die Überlastvermeidung ist Renos Erkundungsphase, in der cwnd um etwa eine SMSS pro RTT wächst, bis eine Überlastrückmeldung sie unterbricht.
Ein Fenster von 25 MSS wächst in einer verlustfreien Runde auf etwa 26 MSS, statt sich auf 50 zu verdoppeln.
Übertragungswiederholung
Eine Übertragungswiederholung ist die erneute Übertragung zuvor gesendeter Daten, mit der ein zuverlässiges Transportprotokoll vermeintlich fehlende Daten wiederherstellt.
Die Wiederherstellung eines verlorenen Segments nutzt Verbindungskapazität, die sonst neue Anwendungsbytes hätte übertragen können.

U

Umlaufzeit (RTT)
Die Umlaufzeit, RTT, ist die Zeit, die eine Übertragung bis zum Kommunikationspartner und ihre Quittung für den Rückweg benötigt, einschließlich relevanter Wartezeiten.
Eine wachsende Routerwarteschlange erhöht die gemessene RTT, obwohl sich der physische Ausbreitungspfad nicht geändert hat.
Unnötige Übertragungswiederholung
Eine unnötige Übertragungswiederholung sendet Daten erneut, obwohl das Original nur verzögert war oder seine Quittung noch nicht zurückgekehrt war.
Eine lange Warteschlange kann den Zeitgeber des Senders ablaufen lassen, sodass ein Ersatz gesendet wird, während das Original noch unterwegs ist.

V

Verbindungsmigration
Verbindungsmigration ermöglicht einer unterstützten QUIC-Verbindung mithilfe von Verbindungs-IDs und Pfadvalidierung, eine Adress- oder Portänderung zu überstehen.
Ein Mobiltelefon kann seine Verbindung beim Wechsel vom WLAN zum Mobilfunk beibehalten, statt eine neue aufzubauen.
Verlustanteil
Der Verlustanteil ist der Anteil verlorener übertragener Segmente, der im Durchsatzmodell als Bruch statt als Prozentsatz dargestellt wird.
Ein Verlustanteil von 0,001 bedeutet ein Segment unter tausend oder 0,1 %, bevor Auswirkungen von Zeitüberschreitungen berücksichtigt werden.
Verweilzeit
Die Verweilzeit eines Pakets ist die Zeit, die es zwischen dem Einreihen in eine Warteschlange und dem Verlassen der Warteschlange zur Übertragung darin verbringt.
CoDel versieht ein Paket bei der Ankunft mit einem Zeitstempel und nutzt seine Wartezeit, um zu entscheiden, ob die Verzögerung anhält.
Verzögerte Quittung
Eine verzögerte Quittung deckt mehr als ein empfangenes Segment ab oder wartet vor dem Senden kurz, wodurch die Anzahl der Quittungspakete verringert wird.
Eine Quittung für jeweils zwei volle Segmente verlangsamt das Wachstum nach der einfachen Slow-Start-Regel mit einer Erhöhung pro Quittung.

W

Wiederherstellungsphase
Eine Wiederherstellungsphase bündelt die QUIC-Überlastreaktion, sodass Verluste zuvor gesendeter Daten cwnd nicht wiederholt verringern, bevor ein während der Wiederherstellung gesendetes Paket quittiert wird.
Zwei weitere Pakete von vor Beginn der Wiederherstellung können verloren gehen, ohne zwei zusätzliche Fensterhalbierungen zu verursachen.
Wiederherstellungsproblem bei hohen Übertragungsraten
Das Wiederherstellungsproblem bei hohen Übertragungsraten bezeichnet Renos langsame Wiederherstellung eines großen verringerten Fensters, weil die Überlastvermeidung pro RTT nur ein Segment hinzufügt.
Die Wiedergewinnung von Tausenden fehlenden Fenstersegmenten kann auf einem Pfad mit langer Umlaufzeit Minuten dauern.
Wmax
Wmax ist das von CUBIC gespeicherte Fenster nahe einem Überlastungsereignis. Es gestaltet die Kurve um einen früheren Betriebspunkt.
Die schnelle Konvergenz kann Wmax senken, wenn ein neuer Verlust auftritt, bevor der frühere Spitzenwert wieder erreicht wird.

Z

Zeitschwellenwert
Der Zeitschwellenwert erkennt QUIC-Verlust anhand der seit dem Senden verstrichenen Zeit, sobald eine spätere Zustellung bekannt ist; empfohlen wird ein RTT-Faktor von 9/8.
Der Sender vergleicht das Alter des Pakets mit dem größeren Wert aus seiner letzten und geglätteten RTT, multipliziert mit diesem Faktor.

#

0-RTT-Frühdaten
0-RTT-Frühdaten ermöglichen einem QUIC-Client bei der Wiederaufnahme, geeignete Anwendungsdaten vor Abschluss des Handshakes zu senden; dabei müssen Risiken des erneuten Abspielens behandelt werden.
Das sofortige Senden einer Anfrage kann Aufbauverzögerung sparen, aber die Antwort benötigt weiterhin eine Umlaufzeit bis zur Ankunft.

Über diese Einheit

Von StudeliFehler melden

Erstelle deine eigenen Lernmaterialien

Mach aus deinen Notizen, Folien und Dokumenten Lernleitfäden, Übungsfragen, Karteikarten und 6 weitere Tools.

Jetzt starten