Nagle-Algorithmus

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Der Nagle-Algorithmus ist benannt nach John Nagle. Er wird in der Regel im TCP-Teil eines Netzwerkprotokolls eingesetzt.

Der Nagle-Algorithmus soll zu kleine Pakete verhindern, da viele kleine Pakete den Durchsatz der Verbindung verringern. Dies resultiert daraus, dass für jedes Paket ein Header mit fester Größe erstellt wird. Auf diese Art und Weise fällt bei vielen kleinen Paketen der Header stärker ins Gewicht.

Der Nagle-Algorithmus funktioniert folgendermaßen:

  • Ist ein Paket voll, sende es.
  • Ist ein Paket nicht voll, dann sende es, wenn keine unbestätigten Pakete mehr unterwegs sind.

Ist dieses Verhalten nicht gewünscht, so lässt sich der Nagle-Algorithmus unter POSIX-kompatiblen Betriebssystemen mit der setsockopt-Option TCP_NODELAY abschalten. In der Praxis wird das zum Beispiel bei interaktiven Sitzungsprotokollen wie Telnet oder SSH getan, um die Reaktionszeit der Gegenseite auf Tastatureingaben oder bei Bildschirmausgaben zu verkürzen.

Die genaue Definition findet sich auch in RFC 896 und RFC 1122.