
Cześć👋
Udanego NSSletterowego wtorku!
Święta, święta i po świętach. Można z pełnym brzuchem usiąść do kolejnego wydania NSSlettera. Dzisiejszy temat to prawdziwa petarda 🧨 -** **wierzymy, że przypadnie Ci do gustu 🙂
Zapraszamy do lektury.

Jak wyłapać microbursts w Wiresharku?
Damian Michalak
Na łamach “Na Styku Sieci” opisywaliśmy już różne problemy w sieci, takie jak routing asymetryczny, unicast flooding, out-of-order packets i micro-bursts. Może kiedyś zetknąłeś się z nimi i zastanawiałeś się zatem jak je wykryć w realnej sytuacji?
Często w programach do monitorowania sieci NMS jak np. Cacti, Grafana itd. nie będziesz w stanie wykryć micro-bursts ze względu na to, że domyślny interwał czasowy to 1 minuta lub 1 sekunda. Czasy te są za duże, aby zaobserwować peak ruchu w milisekundach. I tutaj na pomoc przychodzi niezawodny Wireshark.
Poza pokazaniem przeciążenia portu nie ma żadnych innych danych wyjściowych, których można by użyć do udowodnienia micro-burstu. Jeśli uda nam się przechwycić ruch i pokazać go w programie Wireshark, możemy pokazać micro-bursty na wykresie I/O.
Procedura
Zidentyfikuj interfejs, na którym występują przyrostowe spadki wydajności. Na przykład, zauważono spadki wydajności na łączu 1 Gbps, podczas gdy średnie wykorzystanie łącza wynosi tylko 150 Mbps.
Opcje scenariusza testowania
- W realnej sieci gdzie występuje problem skonfigurować na przełączniku mirror egress w celu przechwycenia ruchu transmitowanego (TX). W celu przechwycenia tego ruchu należy podłączyć komputer PC z programem Wireshark i przechwycić pakiety na porcie docelowym lustrzanego odbicia.
- W sieci testowej, gdzie tylko chcemy pokazać jak można wykrywać i obserwować micro-bursts można do ich symulowania użyć programu do pomiaru parametrów sieci - iperf. W tym poradniku użyję opcji 2 aby tylko pokazać Ci jak to działa, gdyż nie mam dostępu do “produkcyjnej” sieci, w której ten problem występuje.
Do sieci podłączam zatem dwa PC między którymi wygeneruję i przechwycę ruch (np za pomocą SPAN).
Uruchamianie serwera na PC 1:
iperf3 -s
Uruchamianie klienta na PC2, ze specjalnymi opcjami:
- -t1 oznacza czas w sekundach, ustawiony na wartość 1 sekundy
- -i1 oznacza interwał wyjściowy w sekundach, ustawiony na wartość 1 sekundy
- -b oznacza bandwidth ustawiony na wartość 1000M
iperf3 -c [adres IP serwera] -t1 -i1 -b 1000M
Powyżej ustawione parametry dodatkowe nie są niezbędne, lecz pomogą nam później lepiej zobaczyć ruch na wykresie.
Otwórz przechwycony już wcześniej plik .pcap / .pcapng lub zacznij przechwytywanie w czasie rzeczywistym z interfejsu sieciowego w Twoim urządzeniu w programie Wireshark i wyświetl wykres I/O:

Odczytywanie wykresu I/O z menu Statystyka > I/O Graphs
Przy domyślnej skali wydaje się, że nie występuje ruch rozproszony. Jednak jedna sekunda to bardzo duży przedział czasu, jeśli weźmie się pod uwagę szybkość buforowania i przełączania pakietów. W ciągu jednej sekundy łącze o przepustowości 1 Gb/s może przyjąć 1000 Mb ruchu przez interfejs przy minimalnej potrzebie buforowania pakietów.

Ustawianie wartości na bity na osi Y wykresu.
Jeśli jednak większa część tego ruchu próbuje opuścić interfejs w ciągu ułamka sekundy, przełącznik musi szeroko buforować pakiety i porzucać je, gdy bufory są pełne. Jeśli skala będzie bardziej szczegółowa, uzyskamy dokładniejszy obraz rzeczywistego profilu ruchu. Zmień oś Y na bity, ponieważ interfejsy pokazują szybkość transmisji w bitach/sek.
Szybkość łącza wynosi 1 Gb/s = 1 000 000 000 bitów/s = 1 000 000 bitów/0,001 s
Przelicz skale na osiach X i Y. Zmień interwał zaznaczania na oś X=0,001 s, a skalę na oś Y=bity.

Ustawianie interwału przechwytywania na 1 ms aby można było zidentyfikować microbursty.
Przewiń wykres w celu zidentyfikowania nagłych wzrostów ruchu. W tym przykładzie widać, że natężenie ruchu przekroczyło 1 000 000 bitów w skali 0,001 sekundy. Potwierdza to, że ruch jest gwałtowny na poziomie poniżej sekundy i oczekuje się, że zostanie porzucony przez przełącznik, gdy bufory zostaną zapełnione w celu obsłużenia takich impulsów:

Zaobserwowane bursty, wraz z ich czasem trwania i skalą w bitach / 1 ms.
Kliknij peak ruchu na wykresie, aby wyświetlić ten pakiet w przechwycie Wireshark. Analiza przechwytywania jest użytecznym sposobem odkrywania, jaki ruch składa się na dane skoki:

Odczytanie informacji z konkretnego skoku wraz z odnośnikiem czasowym, alby zidentyfikować co jest źródłem danego ruchu.
Dzięki odczytanym informacjom takim jak protokół, host źródłowy i docelowy będziesz mógł opracować dalszy plan działania na rozwiązanie problemu.
I jak - spodobało Ci się to? Jeśli tak to podziel się tym newsletterem ze znajomymi wysyłając im link: https://preview.mailerlite.io/preview/44784/emails/117412528751904604
To mały gest z Twojej strony, a bardzo nam pomoże 🙂 Z góry dzięki!

Budowa wyrażeń regularnych (REGEX) przyprawia Cię o zawrót głowy? Regex Vis to proste i przydatne narzędzie pozwalające rozpracować temat wizualnie. Bardzo poprawia zrozumienie najczęściej wykorzystywanych wyrażeń.
Analiza pakietów to kluczowe narzędzie dla inżynierów sieci. Wybór punktu i metody przechwytywania pakietów zależą jednak od indywidualnych potrzeb. Wśród dostępnych możliwości są takie jak TAP, narzędzia wbudowane w urządzenia czy programy typu tcpdump.
Więcej tego typu znalezisk znajdziesz na naszym Twitterze (X).

Źródło: Instagram nastykusieci
Relacja między Administratorami Sieci oraz SysAdminami to klasyczna definicja "love/hate relationship". Nie mogą żyć bez siebie, ale to zawsze ten drugi jest winny 😂
![]()
Do zobaczenia za tydzień 👋
Pozdrawiam,
Damian Michalak