Algorytm Nagle’a – metoda poprawienia efektywności sieci TCP/IP za pomocą zmniejszenia liczby pakietów koniecznych do przesłania.
Dokument Congestion Control in IP/TCP Internetworks () opisuje „problem małych pakietów”, czyli sytuację, w której aplikacja wysyła dane w małych porcjach, często po jednym bajcie. Ponieważ pakiet TCP ma 40-bajtowy nagłówek, w efekcie przesyłany jest 41-bajtowy pakiet z jednym bajtem użytecznej informacji, co jest potężnym narzutem. Taka sytuacja ma miejsce np. w trakcie sesji protokołu Telnet, kiedy każde naciśnięcie klawisza generuje jeden bajt danych, który jest natychmiast wysyłany.
Algorytm Nagle’a polega na łączeniu kilku krótkich komunikatów i wysyłaniu ich w jednym pakiecie. W szczególności, dopóki na ostatnio wysłany pakiet nie otrzymano potwierdzenia, wysyłający powinien buforować wychodzące komunikaty do momentu, aż zbierze się ilość warta wysłania w kolejnym pakiecie.
Algorytm jeśli są nowe dane do wysłania jeśli oczekujące na wysłanie dane i nowe dane >= MSS wyślij pakiet o długości MSS w przeciwnym wypadku jeśli są wysłane dane oczekujące na potwierdzenie odebrania kolejkuj dane aż do otrzymania potwierdzenia w przeciwnym wypadku wyślij natychmiast
gdzie MSS = maksymalna długość segmentu (Maximum Segment Size).