Analiza wydajności sieci

W jaki sposób analizować wygenerowany ruch?

W przypadku sprzętowych generatorów bardzo często otrzymujemy też zintegrowany analizator i rejestrator przeprowadzanych testów. Czasami będziemy jednak potrzebowali rozwiązania, które pozwoli na przeprowadzenie szczegółowej analizy w różnych punktach sieci. Może wystąpić także sytuacja, w której będziemy chcieli analizować dane z różnych rozwiązań za pomocą jednej, zewnętrznej aplikacji.

Polecamy Analizatory sieci - sposób na problemy

Generatory programowe najczęściej nie oferują analizy ruchu/wydajności. W takich przypadkach analizę wydajności sieci najczęściej umożliwiają mechanizmy SNMP oraz przepływy (Flows). Za ich pomocą możemy najczęściej zebrać dane o ruchu w formie akceptowalnej dla aplikacji analizujących. Mechanizmy SNMP (Simple Network Management Protocol) są od lat powszechnie znane. Zapewniają dość prostą formę przekazywania danych, bez tworzenia powiązań.

Analiza wydajności sieci

Architektura NetFlow – sensory i kolektory

Warto zatrzymać się na chwilę przy przepływach. Gdy przeglądamy strony WWW, wysyłamy pocztę elektroniczną, oglądamy strumienie wideo - zawsze generujemy ruch. Ruch ten to strumień przesyłanych pakietów o indywidualnych cechach, takie jak miejsce przeznaczenia czy zawartość. Załóżmy, że strumień pakietów jest przesyłany z komputera osobistego do serwera, a następnie serwer odpowiada komputerowi. Ten proces komunikacji tworzy sesję. Sesja zawiera dwa przepływy - jeden z komputera do serwera oraz kolejny od serwera do komputera. Każda sieć generuje wiele przepływów, które mogą zostać zmagazynowane przez administratora, a następnie wykorzystywane do analizy różnych problemów sieciowych, m.in. wydajności sieci czy dostępnej przepustowości.

Polecamy NGFW - firewalle następnej generacji

Przepływy mogą zostać wygenerowane w każdej części sieci. Warunkiem koniecznym jest istnienie urządzenia, które będzie potrafiło generować takie dane. Centralna lokalizacji działająca jak kolektor przepływów, może generować raporty pochodzące z różnych źródeł danych. Pozwoli to w łatwy sposób obserwować i korelować całość zjawisk zachodzących w sieci.

Popularną implementacją przepływów jest NetFlow, który definiuje przepływ jako serię pakietów przesyłanych pomiędzy dwoma różnymi adresami IP z wykorzystaniem określonego protokołu. Przykładem takiego przepływu może być zapis: 192.168.0.1:24455->192.168.0.10:8080 TCP. Poprawna korelacja zapisanych przepływów pozwala na dogłębną analizę zachowań sieci. Obecnie najczęściej wykorzystywaną wersją NetFlow jest wersja 5. Alternatywne mechanizmy, np. JFlow, IPFIX czy CFlow, pracują podobnie.

Polecamy Centrum danych: wszystko pod kontrolą

Zupełnie inaczej działa sFlow, który tworzy próbki kilku pakietów z danego strumienia ruchu. W przypadku analizy strumieni głosowych czy wideo metoda ta będzie znacznie bardziej wydajna. Wykorzystanie sFlow może jednak prowadzić do sytuacji, gdy część ruchu nie zostanie wykryta i najzwyczajniej pominięta w analizie. Możliwe jest jednak zwiększenie częstotliwości próbkowania.

Jakie rozwiązanie będzie najlepsze? Mechanizmy SNMP realizują dość prosty schemat przekazywania danych, który może nie sprawdzić się przy badaniu sieci o wysokiej wydajności. Wykorzystywanie NetFlow i pochodnych będzie uzasadnione jedynie w przypadku, gdy stosowany sprzęt sieciowy będzie miał odpowiednią wydajność. Na ogół NetFlow lepiej niż w analizie wydajności, sprawdzi się w analizie bezpieczeństwa. Do szacowania wydajności sieci mniej kosztownym i łatwiejszym w obróbce i zarządzaniu będzie sFlow.

Polecamy 7 przydatnych narzędzi dla centrów danych

Prezentacja wyników SNMP będzie dość statyczna i sprowadzi się do określenia zmian parametrów w czasie. Sprawdzą się tu znakomicie darmowe i znane aplikacje, takie jak MRTG, CACTI, NAGIOS. W przypadku mechanizmów przepływów istnieje wiele mniej i bardziej zaawansowanych aplikacji. Do bezpłatnych aplikacji należy popularny NTOP.


TOP 200