Co to jest małe opóźnienie?

Niskie opóźnienie to mniejsze opóźnienie w systemie komputerowym lub sieci komunikacyjnej. Jest on najczęściej używany w odniesieniu do czasu, jaki zajmuje pakietowi sieciowemu podróż w obie strony od komputera wysyłającego do komputera odbierającego za pośrednictwem połączenia sieciowego. W innych przypadkach może odnosić się do czasu potrzebnego na skierowanie danych do iz pamięci o dostępie swobodnym (RAM) komputera.

Korzystanie z testu ping jest najbardziej niezawodną metodą obliczania opóźnień w komunikacji sieciowej. Obliczanie opóźnienia w sieci komputerowej polega na rejestrowaniu czasu potrzebnego na dotarcie pingu do miejsca docelowego i powrót. Może się to różnić w zależności od wielu zmiennych, w tym pory dnia, rodzaju sieci, odległości do miejsca docelowego i innych. Zazwyczaj wysyłana jest pewna liczba pingów, a opóźnienie jest średnią opartą na zliczeniu czasu podróży w obie strony każdego pingu.

Niskie opóźnienie jest bardzo przydatne w wielu scenariuszach, ale nie ma nic wspólnego z masową transmisją danych. Połączenie może wystarczyć tylko raz nawiązać połączenie z hostem, aby pobrać duży plik, którego prędkość nie zależy od opóźnienia czasowego w komunikacji tam iz powrotem ze źródłem. Bardziej pożądanymi scenariuszami dla małych opóźnień są zatem sytuacje, w których wymagana jest wielokrotna, powtarzająca się komunikacja z miejscem docelowym.

W komunikacji głosowej przez Internet (VoIP) tak małe opóźnienie jest korzystne, ponieważ dane głosowe muszą być przesyłane tam iz powrotem z bardzo dużą szybkością, aby uniknąć opóźnień w rozmowie. Odnosi się to również do niektórych rodzajów aplikacji sieciowych, takich jak gry online dla wielu graczy (MMO) oraz handel na rynkach w czasie rzeczywistym. W grach klient grający w grę musi mieć możliwość ciągłego aktualizowania swojej lokalizacji w grze przez cały czas gry. Wyższe opóźnienie powoduje opóźnienie w wydajności gry dla gracza, ponieważ serwer hostujący grę nie jest w stanie aktualizować pozycji gracza tak szybko. Inne aplikacje sieciowe, takie jak te używane przez handlowców jednodniowych, uznają za pożądane niskie opóźnienia, aby móc aktualizować i modyfikować portfel handlowy tak szybko, jak to możliwe, aby nadążyć za niektórymi rynkami o wysokiej częstotliwości.

Chociaż większość dyskusji na temat opóźnień dotyczy sieci komputerowych, określony sprzęt wewnątrz komputera może również skorzystać na niskim opóźnieniu. Pamięć RAM komputera to jeden z przykładów, w którym czas potrzebny na dodanie danych lub usunięcie z kolumny pamięci może poprawić wydajność. Jest to określane jako opóźnienie strobowania adresu kolumny (CAS), w którym urządzenie w komputerze zwane kontrolerem pamięci kieruje dane do i z określonych kolumn w pamięci RAM. Niektóre kontrolery pamięci znajdują się na płycie głównej komputera, podczas gdy inne poprawiły opóźnienia, implementując je w jednostce centralnej (CPU).

Inną implementacją sprzętu komputerowego, która poprawia opóźnienia, są niektóre peryferyjne urządzenia audio. Niektórzy producenci używają specjalnych sterowników urządzeń dla swoich kart rozszerzeń, które omijają system operacyjny. Oprogramowanie audio, które jest bardziej zgodne z tymi specjalnymi sterownikami urządzeń, osiąga wtedy mniejsze opóźnienia w dostarczaniu dźwięku z programu przez urządzenie do uszu użytkownika.