Zum Inhalt springen

„Random early detection“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][ungesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Änderungen von 89.0.202.97 (Diskussion) wurden auf die letzte Version von 95.112.175.69 zurückgesetzt (HG)
AZ: Die Seite wurde geleert.
Zeile 1: Zeile 1:
[[Datei:Random Early Detection algorithm en.svg|right|thumb|upright=1.5]]
{{lang|en|'''Random early detection'''}} (RED), auch bekannt als {{lang|en|'''Random early discard'''}} oder {{lang|en|'''Random early drop'''}} ist ein Algorithmus für einen [[Netzwerk-Scheduler]] zur Vermeidung von Staus ''(siehe [[Network congestion avoidance|Überlastvermeidungsalgorithmus]])''.

Im herkömmlichen [[Taildrop-Algorithmus]] puffert ein [[Router]] oder eine andere [[Netzwerkkomponente]] so viele Pakete wie möglich und verwirft diejenigen, die nicht mehr in die Warteschlange passen. Wenn die Warteschlange voll ist, nennt man das Netzwerk [[Fair-Queuing|überlastet]]. Der Taildrop-Algorithmus verteilt den Warteschlangenplatz nicht gerecht zwischen den Strömen der Netzwerkteilnehmer. Taildrop kann auch zur {{lang|en|[[TCP Global Synchronization]]}} führen wobei alle TCP-Verbindungen gleichzeitig warten und nach Ablauf ihrer [[Timeout]]s gleichzeitig wieder zu senden beginnen. Die Netzwerke sind dementsprechend entweder nicht optimal ausgelastet oder überlastet.

Hier kommt RED ins Spiel. Es beobachtet die mittlere Warteschlangenlänge und verwirft (oder markiert, wenn es in Verbindung mit [[Explicit Congestion Notification|ECN]] benutzt wird) Pakete anhand statistischer [[Wahrscheinlichkeit]]en. Wenn die Warteschlange fast leer ist, werden alle ankommenden Pakete akzeptiert. Beim Anwachsen der Warteschlange wächst auch die Wahrscheinlichkeit des Verwerfens ankommender Pakete. Wenn sie (annähernd – siehe maximale Obergrenze) voll ist, ist die Wahrscheinlichkeit des Verwerfens 1 und dementsprechend werden auch alle Pakete verworfen.

RED bietet eine größere [[Fairness]] als der Taildrop-Algorithmus. Je mehr ein Host kommuniziert, desto wahrscheinlicher ist es, dass seine Pakete verworfen werden. {{lang|en|Early Detection}} trägt zur Vermeidung von {{lang|en|[[TCP Global Synchronization]]}} bei.

RED nimmt keine Rücksicht auf Verkehrsklassen bei {{lang|en|[[Quality of Service]]}} (QoS). {{lang|en|[[Weighted RED]]}} (WRED) und {{lang|en|Red In/Out}} (RIO) stellen {{lang|en|Early Detection}} in Hinsicht auf QoS bereit.

RED stellt eine Möglichkeit dar, um Netzüberlastung zu vermeiden. RED-fähige Netzwerkkomponenten verwenden eine Portwarteschlange. Sind mehrere dieser Puffer pro Port verfügbar, kann WRED ({{lang|en|Weighted Random Early Detection}}, gewichtete zufällige Früherkennung) verwendet werden. RED informiert Sender und Empfänger lediglich indirekt über den Stau, indem es einige zufällig ausgewählte Pakete (meist 1–2 %) aus der Warteschlange löscht, wenn diese einen gewissen Füllstand (z. B. 50 %) erreicht hat. Mit wachsender Länge des Puffers werden exponentiell mehr Pakete gelöscht, je stärker sich die durchschnittliche Warteschlangenlänge der 100 %-Marke nähert. Der durchschnittliche Füllstand wird üblicherweise über die Dauer von einer Sekunde berechnet. Durch das zufallsgesteuerte Vorgehen von RED kommt es automatisch zu einer fairen Aufteilung der Bandbreite.

==Andere Varianten==
Weighted RED (WRED) kann verschiedene Wahrscheinlichkeiten für verschiedene Prioritäten und Warteschlangen vergeben.

Adaptive/Active RED (ARED) betrachtet die durchschnittliche Warteschlangenlänge und entscheidet daraufhin, wie aggressiv RED vorzugehen hat. Wenn die durchschnittliche Warteschlangenlänge um die Untergrenze variiert, dann ist das Early Detection Verfahren zu aggressiv. Wenn die durchschnittliche Warteschlangenlänge um die Obergrenze variiert, dann ist Early Detection zu konservativ. Der Algorithmus verändert die Wahrscheinlichkeit, indem er Bezug nimmt auf seine Fähigkeit, die Aggressivität des Verwerfens von Traffic zu "spüren".

==Weblinks==
* [http://www.icir.org/floyd/red.html Die RED-Website]
* [http://code.google.com/p/guduz/ Guduz Project]

[[Kategorie:Netzwerktheorie]]

[[da:Undgåelse af datanet-trafikforstoppelse#RED og WRED]]
[[en:Random early detection]]
[[fa:تشخیص زودهنگام تصادفی ازدحام]]
[[fi:Random early detection]]
[[it:Rilevazione casuale anticipata]]
[[ja:ランダム初期検知]]
[[pl:Random early detection]]
[[ru:Random early detection]]
[[sk:Random early detection]]
[[uk:Random early detection]]

Version vom 23. Januar 2013, 15:40 Uhr