Rozwiązywanie problemów z pakietami aktualizacji całkowitego okna TCP wysyłanymi przez węzeł PowerScale
Summary: W tym artykule opisano przyczynę zerowych liczników okien z polecenia netstat. Omówiono również możliwe interesujące miejsca, badając i badając, dlaczego te wartości rosną.
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Instructions
Dane wyjściowe
Przykład:
W większości przypadków pakiety aktualizacji zerowego okna TCP wysyłane przez węzeł wskazują, że odbierająca aplikacja (proces) w węźle (NFS, SMB itp.) wolno pobiera dane z bufora odbiorczego. Można to wskazać za pomocą spójnej wartości niezerowej widocznej w kolumnie Recv-Q dla połączenia na wyjściu
Przykład:
Podsumowując, jeśli wartość Recv-Q pozostaje podwyższona dla połączenia, podczas gdy pakiety aktualizacji zerowego okna TCP są wysyłane dla połączenia, należy przeprowadzić badanie wąskich gardeł w aplikacji odbierającej, procesorze, dyskach itp.
Jeśli wartość Recv-Q pozostaje na poziomie zerowym dla połączenia, pakiety aktualizacji zerowego okna TCP wysyłane przez węzeł mogą również wskazywać, że okno odbioru TCP po stronie węzła połączenia jest zbyt niskie, aby rozpocząć dla produktu opóźnienia przepustowości (BDP) połączenia między węzłem a zdalnym miejscem docelowym, a niektóre strojenia TCP węzła mogą wymagać rozważenia.
'netstat -anT -p tcp'polecenie z węzła pokazuje liczbę pakietów zerowego okna TCP (kolumna 0-win). Wartości w kolumnie 0-win wskazują, ile razy węzeł połączenia TCP (adres lokalny) do urządzenia zdalnego (adres obcy) wysłał pakiet aktualizacji okna zerowego TCP. Dzieje się tak, gdy okno odbioru TCP węzła zostało zredukowane do zera lub do rozmiaru zbyt małego, aby zmieścić pełnowymiarowy segment danych.
Przykład:
Cluster-1# netstat -anT -p tcp Active Internet connections (including servers) Proto Rexmit OOORcv 0-win maxswnd maxseg srtt srtvar rexmt sndwnd sncwnd rcvwnd delack SR SS ND AS Local Address Foreign Address tcp4 0 0 1001 2097920 1460 47ms 23ms 342ms 2097664 190488 131400 99ms X X X X 100.89.53.100.445 100.90.164.11.52765 ...W rezultacie zdalne urządzenie nie będzie w stanie przesyłać danych, wprowadzając opóźnienia, które powodują zwiększone opóźnienie (zapisu), dopóki węzeł nie wyśle aktualizacji okna TCP wskazującej, ile danych może teraz odebrać.
W większości przypadków pakiety aktualizacji zerowego okna TCP wysyłane przez węzeł wskazują, że odbierająca aplikacja (proces) w węźle (NFS, SMB itp.) wolno pobiera dane z bufora odbiorczego. Można to wskazać za pomocą spójnej wartości niezerowej widocznej w kolumnie Recv-Q dla połączenia na wyjściu
'netstat -an tcp'. Na przykład uruchomienie następującego polecenia kilka razy, aby sprawdzić, czy Recv-Q jest stale pełne.
Przykład:
Cluster-1# netstat -an tcp
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 131400 0 100.89.53.100.445 100.90.164.11.52765 ESTABLISHED
... Jest to licznik w czasie rzeczywistym, więc to polecenie będzie musiało zostać uruchomione, gdy pakiety aktualizacji zerowego okna TCP są wysyłane przez węzeł dla połączenia. Poniżej znajduje się przykładowy skrypt do pobierania statystyk na żywo z:
- Recv
- Wyślij Q
- Braki w kolejności (OOO)
- Zero okien (0-win)
- Retransmisje
# mkdir /ifs/data/Isilon_Support/$(date +%d-%m-%Y)/
echo; while sleep 10 ; do echo "######### Live Send Rec Queue Q: #########"; date ; netstat -an4x -p tcp | awk '{ if (( $2 != 0 ) || ($3 != 0)) print $0 }'; echo; sleep 1; echo "######### Live OoO / 0-win / Retrans: #########" ; date; netstat -an4T -p tcp | awk '{ if (( $2 != 0 ) || ($3 != 0) || ($4 != 0)) print $0 }'; done >> `hostname`.TCP_specs.out Stale podwyższony poziom Recv-Q oznacza, że dane zostały umieszczone w buforze odbiorczym, ale aplikacja nie wywołała recv() w celu skopiowania ich z bufora odbioru do bufora aplikacji. Oznacza to, że aplikacja jest przeciążona lub w inny sposób nie jest w stanie terminowo przetworzyć przychodzących danych. Gdy tylko dane dotrą do kolejki odbioru, powinny zostać natychmiast przetworzone, jeśli aplikacja tego nie robi, jest proszona o wykonanie większej ilości pracy, niż jest w stanie obsłużyć.
Podsumowując, jeśli wartość Recv-Q pozostaje podwyższona dla połączenia, podczas gdy pakiety aktualizacji zerowego okna TCP są wysyłane dla połączenia, należy przeprowadzić badanie wąskich gardeł w aplikacji odbierającej, procesorze, dyskach itp.
Jeśli wartość Recv-Q pozostaje na poziomie zerowym dla połączenia, pakiety aktualizacji zerowego okna TCP wysyłane przez węzeł mogą również wskazywać, że okno odbioru TCP po stronie węzła połączenia jest zbyt niskie, aby rozpocząć dla produktu opóźnienia przepustowości (BDP) połączenia między węzłem a zdalnym miejscem docelowym, a niektóre strojenia TCP węzła mogą wymagać rozważenia.
Additional Information
Więcej informacji można znaleźć w sekcji "Opóźnienia, przepustowość i przepływność" poniższego przewodnika https://www.delltechnologies.com/asset/en-us/products/storage/industry-market/h16463-isilon-advanced-networking-fundamentals.pdf
Affected Products
PowerScale OneFSArticle Properties
Article Number: 000221738
Article Type: How To
Last Modified: 19 Apr 2024
Version: 2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.