Die drei Hauptkomponenten von TCP-Stau-Control-Algorithmen sind:
1. langsamer Start: Dies ist die Anfangsphase der Überlastungskontrolle. Wenn eine TCP -Verbindung hergestellt wird, beginnt der Absender mit der Übertragung von Paketen mit einer kleinen Überlastungsfenstergröße (normalerweise 1 MSS, wobei MSS die maximale Segmentgröße ist). Jedes Mal, wenn eine Bestätigung (ACK) für ein übertragenes Paket empfangen wird, wird die Größe der Überlastungsfenster um 1 MSS erhöht. Dies führt zu einem exponentiellen Wachstum der Übertragungsrate. Slow Start hilft dem Absender, schnell die entsprechende Übertragungsrate zu finden, ohne das Netzwerk zu überwältigen.
2. Vermeidung von Stauung: Sobald das Überlastungsfenster einen bestimmten Schwellenwert erreicht hat (normalerweise die langsame Startschwelle, SSThresh), tritt der Absender in die Phase der Überlastungsvermeidung ein. In dieser Phase wird das Überlastungsfenster langsamer erhöht-um 1 MSS für jede Hin- und Rückfahrt (RTT) der erhaltenen Bestätigungen. Dieser additive Erhöhung zielt darauf ab, die Netzwerkkapazität schrittweise zu untersuchen, ohne eine Überlastung zu verursachen. Der Algorithmus erhöht das Überlastungsfenster weiter, bis die Überlastung erkannt wird.
3. Überlastungserkennung &Erholung: Diese Komponente wird bei der Erkennung von Überlastungen ausgelöst. Diese Erkennung tritt typischerweise auf, wenn Paketverlust auftritt (z. B. aufgrund abgelegter Pakete oder Zeitüberschreitungen). Bei der Erkennung von Staus führt der Algorithmus drastische Maßnahmen aus, um die Übertragungsrate zu senken. Der häufigste Erholungsmechanismus besteht darin, die Größe der Überlastungsfenster zu halbieren (multiplikative Abnahme). Diese plötzliche Reduzierung hilft schnell, die Überlastung zu lindern. Die langsame Startschwelle (SSThresh) wird normalerweise auch auf die Hälfte der Größe des Überlastungsfensters zum Zeitpunkt der Überlastungserkennung aktualisiert, um zu verhindern, dass der Absender seine Übertragungsrate zu schnell aggressiv erhöht.
Es ist wichtig anzumerken, dass in diesen drei Kernkomponenten in verschiedenen TCP -Verbrauchskontrollalgorithmen (z. B. Tahoe, Reno, New Reno, Cubic) viele Variationen und Verfeinerungen bestehen. Diese Variationen konzentrieren sich hauptsächlich auf die Erkennung von Überlastungen, die Anpassung des Überlastungsfensters und wie die langsame Startschwelle aktualisiert wird.