Rozwiązywanie problemów z „wolną” siecią

21

Wszyscy mieliśmy skargę, że „sieć” jest w pewnym momencie „powolna”: może być zlokalizowana w jednym pokoju (przełączniku) lub na jednym komputerze, może być po prostu internetem (DNS? Problem przeglądarki?), Może być tylko jedną aplikacją (długo działające zapytania SQL? uruchomiony skan AV?).

Kiedy wykluczysz oczywiste problemy z systemem i / lub aplikacjami, jak zabierzesz się do testowania sieci pod kątem spowolnienia lub nieprawidłowego działania? Czy wspinasz się po warstwach OSI? Jeśli tak, w jaki sposób możesz sprawdzić każdą warstwę? Co robisz, aby upewnić się, że sieć fizyczna działa poprawnie w nieznanym środowisku? Co powiesz na zbyt wiele transmisji lub burzę nadawców? Warstwa 3 i więcej? traceroute? Wszelkie inne wskazówki, metody, pomysły? Niezbędne funkcje i narzędzia (dublowanie portów, SNMP, monitorowanie itp.) Dla wszystkich rozmiarów sieci?

WuckaChucka
źródło
1
być może, ale pomyślałem, że wiki miałaby nieco dłuższą żywotność i dałaby więcej osób szansę na wniesienie wkładu.
WuckaChucka
Po pierwsze muszę być przekonany, że to „internet”! Częściej niż nie jest to „internet”. Większość luserów, z którymi byłam w pobliżu, mówi, że internety są wyłączone, nawet gdy próbują uzyskać dostęp do lokalnego serwera plików.
Tony Roth,
2
To dlatego, że wszyscy twoi użytkownicy przesyłają teraz strumieniowo filmy wideo z Mistrzostw Świata!
BillN

Odpowiedzi:

9

tcpdump i wireshark są twoimi przyjaciółmi.

Uważam, że oglądanie pakietów w sieci „wolnej” w porównaniu z „dobrą” siecią jest zwykle tym, co wskazuje na problem.

Istnieje wiele rodzajów „powolnych”.

Możesz śledzić opóźnienia w lokalnych i internetowych witrynach za pomocą narzędzia takiego jak SmokePing. (SmokePing można skonfigurować tak, aby śledził opóźnienie ICMP oraz opóźnienie usługi z usług TCP)

Twoje przełączniki powinny śledzić pakiety rozgłoszeniowe vs. pakiety emisji pojedynczej. Wykreślić ten stosunek.

Lubię też monitorować traceroutes (sprawdzanie nazw domen chmielu ISP między „ważnymi” stronami).

Mam nadzieję, że te komentarze pomogą.

Joel K.
źródło
1
Czego szukasz podczas oglądania pakietów lub „znaków ostrzegawczych” wskazujących na problem?
WuckaChucka
3
Poszukaj dużej liczby retransmisji TCP i \ lub resetu TCP. także szukać wysokiego odsetka ruchu rozgłoszeniowego.
joeqwerty
doskonały. Niemal umieściłbym to w osobnej odpowiedzi.
WuckaChucka
jeśli możesz korzystać z Netmon 3+ od MS, przejdź do badania Microsoft i pobierz analizator tcp research.microsoft.com/en-us/downloads/... jest całkiem fajny do debugowania problemów z siecią. w razie potrzeby dostępna jest również wersja 32-bitowa.
Tony Roth
+1 za SmokePing. To, wraz z rzeczami takimi jak IPSLA w routerach i przełącznikach Cisco, może znacznie pomóc w zrozumieniu, czy sieć działa wolno, czy wolno.
Christopher Cashell
6

Trudno jest podać konkretne odpowiedzi, ponieważ 90% tej pracy to doświadczenie, które uczy, gdzie szukać problemu, a pozostałe 90% wie, gdzie szukać w Google, aby uzyskać wskazówki, od czego zacząć.

Zazwyczaj próbuję papierowych toreb, takich jak nakłonienie klienta do zademonstrowania problemu (głównie w celu wykluczenia problemów z palcami i wszelkich problemów, które klient mógł opisać swój problem), a następnie próbę skopiowania problemu na innym komputerze. Takie postępowanie często daje wgląd w to, gdzie szukać.

Nie zapomnij o problemie naprawczym ponownego uruchomienia komputera, szczególnie w systemach Windows, nawet dzisiaj. Kiedyś tak było, że pytałem ludzi „Czy uruchomiłeś się ponownie? Spróbuj tego i daj mi znać, jeśli problem będzie się powtarzał” - to naprawiło bardzo duży procent problemów, o które mnie pytano.

Często występują również problemy z rozwiązywaniem problemów z DNS i podstawową łącznością (listy ACL na routerach, luki w sieci, pingi / traceroutes / mtrs do zdalnych witryn itp.).

W przypadku usług, nad którymi masz bezpośrednią kontrolę, uruchamianie nagios lub coś, aby upewnić się, że usługa faktycznie działa, może często powodować problemy, zanim klienci powiedzą ci o nich. Prawdopodobnie chcesz także zbierać statystyki, albo bezpośrednio przez Munina lub coś, albo przez SNMP do czegoś takiego jak Kaktusy.

Zwykle staram się, aby Kaktusy działały na co najmniej wszystkich moich głównych przełącznikach i zaporach ogniowych; w miarę możliwości uruchamiam kaktusy przeciw wszystkim, co mogę. W takich przypadkach zwykle szukam rzeczy takich jak liczba błędów portów lub nadmierny ruch. Wykresy zapory ogniowej z niektórych urządzeń mogą pokazywać użycie procesora i równoczesne sesje; dowiesz się, na jakich progach urządzenie zaporowe zaczyna mieć problemy.

Zapora może być w stanie zalogować się do urządzenia syslog; jeśli tak, zaloguj wszystko, co możesz i przejrzyj te podpowiedzi. Będzie to łatwiejsze, jeśli uruchomisz coś takiego jak syslog-ng lub rsyslog lub splunk, który pozwala nieco podzielić dzienniki zamiast zajmować się jednym plikiem monolitycznym.

Staram się również uruchamiać nfsen przynajmniej na wewnętrznej stronie mojej zapory ogniowej i, jeśli to możliwe, na łączu do dostawcy Internetu. To pozwala cofnąć się w czasie, aby spojrzeć na sesje i zobaczyć, kto co robi; czasami może to złapać ciekawe zachowania.

David Mackintosh
źródło
5

Oto kilka przydatnych narzędzi do rozwiązywania problemów z opóźnieniami i innymi problemami z siecią:

  • tryb OSI l - zacznij od dołu i swój sposób pracy
  • ping - sprawdź swój RTT (tj. opóźnienie)
  • Ping HTTP - przydatny, jeśli zapora blokuje normalne ICMP
  • ping -r 9 - przydatny do identyfikowania asymetrycznych sytuacji routingu
  • traceroute - jak tam docierają moje pakiety i jak reagują routery po drodze? Należy pamiętać, że routery często przetwarzają te pakiety z niskim priorytetem, więc rzeczywista wydajność może być lepsza.
  • Wireshark - wymaga specjalistycznej wiedzy, ale nie można uzyskać dużo niższego poziomu
  • SpeedGuide.net Analizator TCP / IP - sprawdź ustawienia TCP komputera
  • SG TCP Optimizer - (tylko Windows) sugeruje sposoby optymalizacji ustawień karty sieciowej
  • IP Chicken - jaki jest twój źródłowy (nie NAT) adres IP?
  • http://downforeveryoneorjustme.com/ - może to ty ...
  • Test prędkości pasma - sprawdź prędkości pobierania / wysyłania
  • Narzędzia sieciowe - uruchamiaj narzędzia / testy spoza sieci
  • sprawdź porty sieciowe pod kątem błędów / CRC / etc. -
  • sprawdź swoją sieć pod kątem nadmiernego wykorzystania (monitory przepustowości) i nadaj burze
  • sprawdź zalewanie emisji pojedynczej - użyj Wireshark i monitoruj ruch emisji pojedynczej, który nie jest przeznaczony dla twojej stacji roboczej.
  • sprawdź, czy most główny drzewa opinającego jest prawidłowo umieszczony
Piotr
źródło
Jeśli ping -r przekroczy limit czasu, co to znaczy? Na przykład a ping 8.8.8.8działa, ale ping -r 9 8.8.8.8nie
Michiel van Vaardegem
4

Jeśli korzystasz z sieci bezprzewodowej, jednym z częstych spowolnień są zakłócenia kanałów. Kilka identyfikatorów SSID w jednym obszarze może naprawdę spowolnić ruch sieciowy. (Pomyśl: demo iPhone 4 na WWDC '10).

Rozwiązanie tego problemu jest dość łatwe, jeśli oprogramowanie, które pokazuje wzorce ruchu bezprzewodowego w okolicy. Jest dobry darmowy i oparty na sieci pod adresem : http://meraki.com/tools/stumbler . (ujawnienie: pracuję dla Meraki)

Aby zmniejszyć zakłócenia, najlepiej być na kanałach 1, 6 lub 11. Użycie sprzętu 802.11n z częstotliwością 5 GHz może również pomóc.

joeybaker
źródło
1

Zawsze zaczynam od monitorowania rzeczy warstwy 2 za pomocą kaktusów . To da ci dużą ilość danych, których możesz użyć do wyszukiwania wzorców, i możesz porównać swoje wykresy kaktusów, gdy wszystko działa dobrze, a kiedy użytkownicy zauważają powolność.

Prawdopodobnie nie znajdzie dokładnego problemu, ale da ci dobre miejsce do rozpoczęcia, aby pomóc w zawężeniu problemu.

TonyB
źródło
Czegoś szczególnego szukasz na wykresach kaktusów?
WuckaChucka
1

Zaczynam od najbardziej zewnętrznego routera i schodzę w dół, i mierzę wydajność w najbardziej prymitywny sposób: skorzystaj z witryny do testowania przepustowości lub znanej zewnętrznej strony FTP, która da ci prędkość wysyłania / pobierania i idź w dół aż do znajdź poziom, na którym występuje problem.

Gdy dowiesz się, gdzie jest problem, zainstaluj wymyślne narzędzia i monitory. Ale nie trać czasu na robienie tego na każdej warstwie. To zajmie wieczność.

Satanicpuppy
źródło
A co z wydajnością aplikacji wewnętrznych?
WuckaChucka
@wuckachucka: Zwykle jeśli występuje problem z kodem, pojawia się w dziennikach, więc rozwiązywanie problemów nie jest takie złe. Wiesz także, od czego zacząć (aplikacja). Największym problemem przy rozwiązywaniu problemów z siecią jest znalezienie problemu. Jeśli masz niedopasowania prędkości portu, złe MTU lub inne problemy fizyczne, są to kompletny drań do rozwiązywania problemów za pomocą dzienników, a podejście jaskiniowca ma wiele zalet.
Satanicpuppy
1

Musisz także znać swoje serwery i środowisko pulpitu / klienta, zamiast po prostu zakładać, że użytkownik ma rację, gdy mówi „sieć jest wolna”. Musisz metodycznie rozwiązać każdy problem - jak powiedzieli inni, najpierw powinieneś być w stanie wyświetlić i idealnie odtworzyć błąd, a następnie pracować z niego w sposób, który ma sens dla scenariusza.

Dobre zarządzanie i monitorowanie w sieci i serwerach może jednak zaoszczędzić dużo czasu, ponieważ nie próbujesz wymyślić oprzyrządowania w locie, a być może również próbujesz złagodzić lub naprawić objawy, a także radzić sobie z narzekającymi użytkownikami /klienci.

Odpowiedzi na tcpdump i wireshark nie są błędne, mogą to być kluczowe elementy zestawu narzędzi. Ale jeśli nie jesteś pewien, że to właściwie sieć, nie powinny być pierwszą rzeczą, po którą sięgasz.

mfinni
źródło
0

Powolna sieć jest powszechnym zjawiskiem. Niska prędkość sieci może być spowodowana wieloma czynnikami. rozwiązywanie problemów z wolną siecią jest jedną z najczęstszych i najbardziej kłopotliwych prac w codziennym zarządzaniu siecią.

Według analizy głównymi przyczynami powolnej sieci są:

Loopback
Broadcast/Multicast storm
Virus attack
Server slow response
Too many clients
Application slow response
Error client mask

Jak szybko ustalić przyczynę powolnej sieci? Dobrym pomysłem jest przechwytywanie i analizowanie pakietów za pomocą analizatora sieci (Ax3soft Unicorn, wireshark i tak dalej).

Przeczytałeś także artykuł „Znajdź powody wolnej sieci”, klikając adres URL ( http://www.ids-sax2.com//Unicorn/Tutorials/Find-Reasons-for-Slow-Network-w--xxsoft-Unicorn .htm ), aby go odwiedzić.

Andy.H
źródło