Cel slajdu: Slajd opisuje mechanizm przeciążenia sieci oraz zjawisko synchronizacji globalnej sesji TCP.
Tail Drop, synchronizacja globalna i AQM
- Congestion (przeciążenie) – popyt > podaż; rosną kolejki, potem tail drop.
- Tail drop – odrzut z końca kolejki; TCP tnie congestion window i ostro hamuje.
- Global synchronization – wiele TCP traci naraz, zwalnia naraz, wraca naraz – fale zamiast płynności.
- AQM (Active Queue Management) – inteligentne zrzuty przed przepełnieniem.
- Efekt AQM: wczesny sygnał dla TCP, stabilniejsze wykorzystanie łącza.
- QoS + AQM – razem: priorytety i wygładzenie, nie same większe bufory.
- Większy bufor ≠ lekarstwo – często to bufferbloat i większy latency.
Przeciążenie i aktywne zarządzanie kolejkami AQM (ang. congestion, Active Queue Management): Przeciążenie występuje, gdy chwilowe zapotrzebowanie przekracza pojemność łącza albo urządzenia, co napełnia bufory i kończy się odrzucaniem z końca kolejki. Przeciwdziałaniem jest wczesne sygnalizowanie przeciążenia przez losowe odrzucanie opisane w zaleceniach
RFC 2309 oraz jawne powiadamianie ECN opisane w
RFC 3168, co zapobiega jednoczesnemu zwalnianiu wielu sesji TCP, czyli synchronizacji globalnej.
Uzupełnienie (przeniesione z sekcji głównej): Przeciążenie występuje, gdy sumaryczne zapotrzebowanie na transmisję przekracza dostępną przepustowość łącza lub wydajność urządzenia. Skutkuje to zapełnieniem buforów, co prowadzi do wzrostu opóźnień kolejkowania i ostatecznie do odrzucania pakietów z końca kolejki (ang. tail drop). W przypadku protokołu TCP odrzucenie pakietu powoduje drastyczne zmniejszenie okna przeciążeniowego (ang. congestion window), co gwałtownie obniża przepustowość. Zjawisko synchronizacji globalnej (ang. global synchronization) występuje, gdy wiele sesji TCP jednocześnie traci pakiety i jednocześnie zwalnia, po czym jednocześnie próbuje przyspieszyć – prowadzi to do falowego, nieefektywnego wykorzystania łącza. Rozwiązaniem są algorytmy aktywnego zarządzania kolejkami (AQM, ang. Active Queue Management, na przykład RED, WRED), które odrzucają pakiety w sposób planowy, zanim bufor się przepełni.
Przeciążenie sieci występuje w momencie, gdy suma żądań transmisji przekracza dostępną przepustowość łącza lub wydajność przetwarzania urządzenia sieciowego, prowadząc do zapełnienia buforów i wzrostu opóźnień kolejkowania. Mechanizm odrzucania z końca kolejki (ang. tail drop), polegający na odrzucaniu wszystkich nowo przybywających pakietów po zapełnieniu bufora, jest najprostszym, ale jednocześnie najmniej efektywnym sposobem radzenia sobie z przeciążeniem.
Synchronizacja globalna (ang. global synchronization) to zjawisko, w którym wiele sesji TCP jednocześnie traci pakiety na skutek odrzucania z końca kolejki, co powoduje jednoczesne zmniejszenie okien transmisyjnych i gwałtowny spadek przepustowości, a następnie równie gwałtowny wzrost po odzyskaniu transmisji, prowadzący do oscylacyjnego wykorzystania łącza. Algorytmy AQM, w tym RED i jego bardziej zaawansowane warianty, zapobiegają temu zjawisku przez losowe odrzucanie pakietów, zanim bufor osiągnie stan krytycznego zapełnienia.
Prawidłowe skonfigurowanie mechanizmów AQM na routerach brzegowych wymaga zrozumienia charakterystyki ruchu w danej sieci oraz umiejętności dostrojenia parametrów takich jak minimalny i maksymalny próg zapełnienia bufora czy prawdopodobieństwo odrzucenia pakietu.
Wyjaśnienie skrótów i pojęć:
Congestion - przeciążenie, nadmiar żądań względem pojemności.
Tail drop - odrzucanie z końca kolejki po jej zapełnieniu.
Congestion window - okno przeciążeniowe TCP, limit danych bez potwierdzenia.
Global synchronization - synchronizacja globalna, jednoczesne zwalnianie wielu sesji TCP.
AQM (Active Queue Management) - aktywne zarządzanie kolejkami.
RED, WRED (Random Early Detection, Weighted RED) - algorytmy wczesnego losowego odrzucania, wersja zwykła i ważona priorytetami.