FAST TCP

FAST TCP ist ein Überlastungskontrollalgorithmus für TCP, die von den Forschern entwickelt, bei der "Californian Institute of Technology" und geben diese Diskussion in letzter Zeit durch die Fähigkeit dieses Algorithmus würde Übertragungsgeschwindigkeiten im Internet zu erhöhen, ohne Veränderung der Strom-Infrastruktur.

Kurz gesagt, betreibt Internet derzeit im TCP Reno, 1988 und 1500 übertragenen Byte-Pakete entwickelt, wartet auf Bestätigung Empfänger. Wenn es keine Antwort gibt, wird ein Paket mit einer niedrigeren Geschwindigkeit übertragen, bevor es vollständig erreicht. Im Gegensatz dazu misst FAST TCP stets die Zeit, die zu übertragenden Pakete bekommen, Analyse und Vorhersage von Verzögerungen die Ablösesumme, die die Verbindung zu nicht Verluste produzieren unterstützen kann. Mit diesem System haben sie fortgefahren, Internet-Geschwindigkeiten von 100 Gb / s in den transatlantischen Verbindungen zu erreichen.

Bezeichnung

Die wichtigsten Merkmale, die diesen Algorithmus zu unterscheiden im Vergleich zu TCP Reno sind drei:

  • Es ist ein Algorithmus auf der Grundlage von Gleichungen und somit eliminiert die Schwankungen bei der Paket
  • Queuing als primäre Maßnahme der Verkehrsüberlastung, der, wie wir sehen werden verwendet, Verzögerung, ist zuverlässiger als die Messung der Fehlerwahrscheinlichkeit.
  • Es verfügt über eine dynamische Verhalten und stetigen Strom erreicht einen fairen Ausgleich, die langen Fließ nicht zu bestrafen ist, wie der Strom-Regelalgorithmus. Es ist daher asymptotisch stabil.

Wir sagen, dass die Verwendung der Verzögerungsleitung ist vorteilhaft in Bezug auf die Paketverlustwahrscheinlichkeit aus zwei Hauptgründen:

Zunächst ist die erste Abschätzung genauer als in der zweiten, für Breitbandsysteme, der Paketverlust ein relativ seltenes Ereignis, und ist daher schwierig, einen korrekten Wert zu schätzen. Und selbst wenn es tat, ist das Ausmaß, oder Probenahme von Paketverlust viel rauer, weniger gut, die Klebe Verzögerungen, obwohl beide Maßnahmen gleich laut. Darüber hinaus hat jeder Paketverlustmessung liefert ein einziges Bit an Informationen zum Filtern von Rauschen, während die Verzögerungsmessung liefert Multi-Bit-Information.

Zweitens, basierend auf dem Modell des TCP / AQM ist der dynamische Warteschlangen skalierbar bezüglich der Netzkapazität. Die Sache, die Stabilität auf den Algorithmus gegen künftige Kapazitätssteigerungen auf den Verbindungen gibt.

Es sollte sagen, dass TCP Reno, seit seiner Gründung, hat eine Zunahme der Internet sechs Größenordnungen in Bezug auf Größe, Drehzahl, Last und Konnektivität unterstützt. Aber es ist bekannt, dass, wie die Bandbreite erhöht, TCP Reno wird schließlich zu einem Engpass für sich selbst geworden.

Es gibt zwei Möglichkeiten, um das Design eines Staus Kontrolle Algorithmus Ansatz: ein Flusspegel und Paketebene. TCP Reno näherte sich das Problem auf Paketebene entwickelt, und die erhaltenen Durchsatz Ergebnisse waren eine Folge, nicht ein Ziel. In FAST TCP, bezogen auf das Level-Design-Flow, wir bekommen einige Ergebnisse auf Paketebene.

Architektur

Diese Staus Kontrollmechanismus besteht aus vier Komponenten: Datensteuerfenstersteuerburstiness Steuer- und Schätz. Alle sind funktional unabhängig, so dass können separat ausgebildet sein und sogar separat verstärkt. Kurz gesagt, bestimmt die Datenkomponente Steuer "was" Pakete übertragen, ermittelt die Steuerung, Fenster "paar" Burstiness und die Steuerung bestimmt, "wann". Diese Entscheidungen werden auf der in der Schätzung enthalten Informationen. Die Komponente Fenstersteuerung arbeitet auf einem Niveau der Zeit die Größe der RTT, während die Burstiness Kontrolle funktioniert in kleineren Maßstäben.

Das Folgende beschreibt im Detail die einzelnen Komponenten:

  • Schätzung: Übertragung jedes Pakets erhält Informationen "Feedback" aus zwei Komponenten: einer auf der Verzögerungswarteschlange und ein anderer, der angibt, ob das Paket verlor. Wenn eine positive ACK empfangen wird, die RTT FAST für das entsprechende Datenpaket berechnet und sofort berechnet die minimale RTT und RTT EMA, die in der Komponente "Fenstersteuerung" verwendet werden soll. Wenn ein negatives ACK recebe erzeugt einen Hinweis auf Verlust dieses Datenpaket zu dem "data control"


  • Fenster Kontrolle: wie bereits erwähnt, wird das Fast-TCP die Warteschlangenverzögerung als Hauptparameter bei der Einstellung des Fensters. Unter normalen Netzwerkbedingungen, FAST aktualisiert regelmäßig die Staus Fenster w nach:


wobei γ eine Konstante zwischen 0 und 1 ist RTT der aktuelle durchschnittliche Roundtrip-Zeit ist baseRTT der Minimalwert der RTT so weit und ist ein Parameter, der die Fairness des Protokolls steuert.

Obwohl die Fenstergrößen sind unterschiedlich in FAST TCP Vegas und seine Strömungsdynamik gesetzt ist sehr ähnlich mathematisch. Für FAST, passen Sie die Größe des Fensters ,, schlagartig, als die Anzahl der Pakete in dem Puffer ist zu weit entfernt, um sein Ziel, und auf der anderen Seite, Feineinstellung, wenn die Anzahl der Pakete in einem Puffer und Sein Ziel ist es nicht viel anders. In diesem Sinne FAST ist ein High-Speed-Version von TCP Vegas.

Das Problem bei diesem Protokoll ist im Fall von Netzwerken, in denen es zu Verzögerungen bei der Daten "Feedback". In einem Netz ohne solche Verzögerungen ist zu erwarten, lokal stabile Protokoll sein. Falls es Verzögerungen gibt, wird es lokal stabil sein, wenn es wenig Vielzahl von Strömungsverzögerungen.


  • Data Control: Diese Komponente auswählt, was das nächste Paket gesendet werden soll, und es zwischen den drei möglichen Kandidaten Gruppen tut:
  • Neue Pakete
  • Pakete, die auf jeden Fall verloren gehen
  • Pakete, die nicht erhalten haben, bestätigt.

Wenn kein Verlust, werden die neuen Pakete nacheinander gesendet, wie die alten Pakete bestätigt. Dies wird als "Selbsttaktung" oder "ACK-Taktung". Im Falle von Verlusten, muss es zwischen Broadcast-Pakete entscheiden, weiterhin neue oder auch ältere Retransmit-Pakete, die als fehlend deklariert wurden zu senden. Die "Data Control" wird, um zu entscheiden, wie diese Pakete zu mischen, wenn übertragene verantwortlich sein. Diese Entscheidung wird als Bandbreitenverhältnis sogar noch wichtiger - Verzögerungen zu erhöhen.


  • Burstiness Steuerung: Diese Komponente verfolgt Paketübertragungen reibungslos um herauszufinden, was die verfügbare Bandbreite. Dies ist in einer großen Netzwerkbandbreite Vorhandensein von Paketverzögerung, wo der Verkehr kann bursty sein besonders wichtig aufgrund von Ereignissen im Netz sowohl als Gastgeber. Manchmal ist eine Sende CPU beschäftigt für eine lange Unterbrechungen Teilnahme eingehenden Pakete, so dass ausgehende Pakete in einer Ausgabewarteschlange angesammelt, so dass in einem Burst übertragen wird, wenn die CPU frei werden. Eine Übertragung dieser Art zu schaffen langen Linien und erhöht die Wahrscheinlichkeit, massive Verluste.

Das Tempo ist ein üblicher Weg, um das Problem der Burst im Sender zu lösen. Eine einfache Implementierung der Stimulation können die Sender TCP Paket-Scheduling-Übertragungen in konstanten Zeitintervallen durch Teilen des Überlastungsfenster zwischen RTT erhalten. In der Praxis würde dies eine hochauflösende Takt erfordern und dazu führen, Überlast. Um den Overhead zu reduzieren, können wir eine Planung in kurzen Bursts von Paketen anstelle der Einzelpackungen zu machen. Allerdings ist die Verwendung von Schrittmacher das ganze Problem der Burst nicht lösen.

Zwei Mechanismen steuern Burstiness, eines verwendet, um die Selbsttaktung zu ergänzen und eine andere für die Größe des Fensters wesentlich zu erhöhen in kleinen Ausbrüchen.

Begrenztheit

Hier sind einige FAST TCP Probleme und mögliche Lösungen vorgestellt, aber es erfordert weitere Versuche, um die Wirksamkeit der vorgeschlagenen Lösungen in realen Netzwerken und Anwendungen zu schließen.

Laufzeitmessung

Die Ausbreitungsverzögerung in dem Steueralgorithmus Fenster verwendet. In Netzwerken, in denen es fließt FAST verzögern Endstück, von dem Protokoll auferlegt werden, können als Teil der Ausbreitungsverzögerung des neuen Ströme, die später anschließen verwechselt werden. Durch diese Maßnahme wird die Ausbreitungsverzögerung kann auch durch eine Änderung der Route von einem kürzesten Weg zu einer längeren Route während der Lebensdauer einer Verbindung beeinflusst werden, so dass eine Lösung wird vorgeschlagen, um die Verzögerung durch die minimale RTT beobachtet über eine Abschätzung bestimmten Zeitraum nicht von dem Beginn der Verbindung, weil der Weg ändern kann.

Laufzeitmessung von Warteschlangen

Diese Maßnahme kann durch die Burstiness der gleichen Ströme FAST betroffen sein, wobei diese Situation für nicht Fairness zwischen den verschiedenen Strömungen mit unterschiedlichen RTTs verringern. Dieser Fehler kann durch ein Steueralgorithmus im Sender Burst deutlich reduziert werden.

α abgestimmt

Der Parameter α in der Gleichung Fenster steuert die Anzahl von Paketen, die jeweils Strömung auf den Link-Engpass, wenn diese Anzahl die Kapazität des Puffers überschreitet, kann der Fluss nicht das Gleichgewicht zu erreichen, bevor sie Verlust zu beobachten Pakete und der Algorithmus wird zu oszillieren.

Heterogene Protokolle

Das Problem der Maximierung Anwendungen impliziert, dass es nur eine einzige Gleichgewichtspunkt auf Netzwerke unter milden Bedingungen. Aber es ist eine heterogene Netzwerkprotokollen, die zu verschiedenen Stauungszeichen reagieren kann in einer komplexeren Art und Weise verhalten.

Schlussfolgerungen

Im Gegensatz zu TCP Reno und seine Varianten, ist FAST TCP auf Verzögerungen basiert. Dies ermöglicht Ihnen, eine hohe Auslastung, ohne den Puffer zu füllen, was zu einer beträchtlichen Verzögerung Warteschlange zu erreichen, so oft es zu Verlusten basierte Algorithmen passiert. Dies bietet Fairness und fließt mit großer RTTs nicht zu bestrafen.

  0   0
Vorherige Artikel Plastic Ono Band
Nächster Artikel Hannover-Insel

Kommentare - 0

Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha