Menu

Polska

GRANDMETRIC Sp. z o.o.
ul. Metalowa 5, 60-118 Poznań, Poland
NIP 7792433527
+48 61 271 04 43
info@grandmetric.com

Szwecja

Drottninggatan 86
111 36 Sztokholm
+46 762 041 514
info@grandmetric.com

UK

Grandmetric LTD
Office 584b
182-184 High Street North
London
E6 2JA
+44 20 3321 5276
info@grandmetric.com

US Region

Grandmetric LLC
Lewes DE 19958
16192 Coastal Hwy USA
EIN: 98-1615498
+1 302 691 94 10
info@grandmetric.com

  • en
  • pl
  • se
  • Generatory ruchu

    Generatory ruchu

    Date: 19.12.2024



    Generatory ruchu

    Generatory ruchu mogą wspomóc pracę administratorów pod względem testowania oraz poznawania własnej sieci. Generatory ruchu pozwalają znaleźć wąskie gardła w sieci, przetestować nowy sprzęt pod kątem wydajności oraz przetestować systemy monitoringu. Generatory ruchu pozwalają także sprawdzić zachowania urządzeń sieciowych pod kątem obsługi nietypowych / zepsutych pakietów czy ramek. Dodatkowo, monitorowanie i analizowanie połączeń sieciowych, w tym adresów IP, jest kluczowe dla administratorów.

    Generatory ruchu dzielą się na dwa główne typy:

    Generatory bezstanowe – te narzędzia jedynie wysyłają pakiety, nie oczekując odpowiedzi. Dzięki temu są idealne do testowania obciążenia sieci (np. symulacji ataków DDoS w warstwach 3, 4 i 7). Generatory tego typu świetnie sprawdzają się podczas badania zachowania urządzeń sieciowych w warunkach dużego ruchu, ale nie analizują danych zwrotnych. W kontekście testowania prędkości połączeń internetowych, generatory te mogą być używane do testów ADSL.

    Generatory klient-serwer – działają w trybie interaktywnym, co oznacza, że zarówno wysyłają pakiety, jak i odbierają odpowiedzi, umożliwiając szczegółową analizę. Narzędzia te są wykorzystywane do pomiarów opóźnień, strat pakietów, jitteru oraz innych parametrów sieciowych. W takich przypadkach klient odpowiada za inicjowanie ruchu, podczas gdy serwer zbiera i analizuje dane. Funkcjonalność tych narzędzi pozwala na kompleksowe testowanie i analizowanie sieci.

    Przykładami generatorów ruchu jednostronnych są:

    • hping3 => opensource
    • scapy => opensource
    • Raven-Storm  => opensource
    • httpflood => opensource
    • PacketSender => darmowy
    • Nping => darmowy

    W kontekście diagnostyki sieci, narzędzia te mogą być używane do analizy hostów.

    Zazwyczaj są to proste programy, działające pod Linuxem obsługiwane z linii poleceń.

    Przykładami generatorów ruchu w trybie klient-serwer są:

    • Spirent => płatny
    • Ostinato => płatny
    • Trex => opensource

    Generatory ruchu mogą być używane zarówno na komputerze, jak i na serwerze, co pozwala na monitorowanie i analizowanie konfiguracji sieci na różnych urządzeniach. W kontekście testowania połączeń sieciowych, ważne jest podanie odpowiedniej nazwy hosta lub komputera.

    Generatory ruchu są kluczowe w pomiarze przepustowości sieci, co pozwala na ocenę wydajności połączeń. W przypadku specyficznych scenariuszy, takich jak testowanie nowych konfiguracji, generatory ruchu są niezastąpione.

    Diagnostyka serwera i testowanie połączeń z serwerem są istotne dla oceny stabilności i wydajności sieci. Monitorowanie sieci lokalnej pozwala na zbieranie informacji o dostępnych urządzeniach i ich parametrach.

    Generatory ruchu umożliwiają przeprowadzanie różnorodnych testów sieciowych, co jest niezbędne dla administratorów. Uruchomienie narzędzi do testowania sieci jest kluczowym krokiem w diagnostyce i analizie.

    Narzędzia takie jak whois są używane do analizy i diagnostyki sieci, dostarczając szczegółowych informacji o adresach IP i operatorach sieci.

    Szczegółowe przykłady zastosowania narzędzi

    Hping3 – instalacja i uruchomienie

    Hping3 jest narzędziem dedykowanym administratorom systemów Linux do zarządzania i monitorowania sieci. Instalacja odbywa się przez menedżer pakietów, np.: apt install hping3

    Dzięki Hping3 można monitorować i analizować połączenia sieciowe, w tym adres IP oraz adresu IP.

    Polecenie wywołujące pomoc: hping3 –help

    Hping3 pozwala na testowanie prędkości połączeń internetowych, w tym ADSL.

    Hping3 oferuje szeroką funkcjonalność, umożliwiając generowanie ruchu sieciowego z różnymi parametrami.

    W kontekście diagnostyki sieci, Hping3 może być używany do analizy hostów.

    Hping3 jest użyteczny zarówno dla administratorów, jak i zwykłych użytkowników komputerów, umożliwiając monitorowanie i konfigurację sieci na komputerze.

    Programy takie jak Hping3 mogą wymagać podania nazwy hosta lub komputera do testowania połączenia w sieci.

    Hping3 pozwala na pomiar przepustowości sieci, co jest kluczowe dla oceny wydajności połączeń.

    W przypadku specyficznych scenariuszy, Hping3 może być używany do generowania ruchu sieciowego.

    Hping3 umożliwia diagnostykę i testowanie serwera oraz komunikację z serwerem w celu oceny stabilności sieci.

    Hping3 może również monitorować urządzenia w sieci lokalnej.

    Hping3 umożliwiają wykonywanie różnych testów sieciowych, co pozwala na analizowanie tras przesyłania pakietów.

    Uruchomienie Hping3 jest kluczowym krokiem w diagnostyce i testowaniu sieci.

    Hping3 wykorzystuje funkcję whois do analizy i diagnostyki sieci, dostarczając szczegółowych danych o adresach IP.

    Przykład użycia hping3, do generowania pakietów.

    Możliwość wykorzystania przełącznika pozwalającego na generację pakietów z różnym adresem źródłowym pozawala na generowania symulowanych ataków DDoS na infrastrukturę, co jest niezwykle przydatne dla administratorów, którzy nadzorują złożone infrastruktury IT. Zwyczajny komputer lub już mały domowy serwer z kartą sieciową 1gb/10gb pozwala na przeprowadzanie testów pozwalających sprawdzić większość sieci korporacyjnych.

    Dodatkowo, monitorowanie i analizowanie połączeń sieciowych wymaga znajomości adresu IP oraz możliwości śledzenia ruchu sieciowego w celu identyfikacji problemów.

    Przykład użycia hping3, do generowania pakietów.

    Testowanie prędkości połączeń internetowych, w tym ADSL, jest kluczowe dla oceny wydajności sieci.

    Funkcjonalność generatorów ruchu, takich jak Hping3, pozwala na szeroki zakres testów, które mogą symulować różne scenariusze sieciowe.

    W kontekście diagnostyki sieci, host jest często używany do analizy tras pakietów i identyfikacji problemów.

    Konfiguracja i monitorowanie sieci na komputerze jest istotne zarówno dla administratorów, jak i zwykłych użytkowników komputerów. Różne aplikacje mogą śledzić ruch sieciowy oraz zbierać dane dotyczące parametrów połączeń na komputerze.

    Podczas testowania połączeń sieciowych, ważne jest podanie odpowiedniej nazwy hosta lub komputera. Na przykład, w programie TraceRouteOK wystarczy wpisać nazwę domeny lub adres IP.

    Pomiar przepustowości sieci jest kluczowy dla oceny jej wydajności. Narzędzia takie jak Bandwidth Meter umożliwiają generowanie raportów oraz identyfikację problemów w sieci.

    W przypadku specyficznych scenariuszy, generatory ruchu mogą być używane do symulacji różnych warunków sieciowych.

    Diagnostyka i testowanie serwera, w tym ocena czasu reakcji i prędkości połączenia, są kluczowe dla zapewnienia stabilności sieci. Komunikacja z serwerem pozwala na ocenę wydajności połączenia.

    Monitorowanie sieci lokalnej umożliwia zbieranie informacji o dostępnych maszynach oraz otwartych portach w obrębie tej samej sieci.

    Generatory ruchu umożliwiają wykonywanie różnych testów, co pozwala użytkownikom na emulowanie działań w sieci oraz analizowanie tras przesyłania pakietów.

    Uruchomienie narzędzi do testowania sieci, takich jak iPerf, jest kluczowym krokiem w diagnostyce i ocenie wydajności połączeń.

    Narzędzia do analizy i diagnostyki sieci, takie jak whois, są użyteczne w określaniu informacji o adresach IP oraz lokalizowaniu problemów w połączeniach sieciowych.

    Scapy: analiza

    Narzędzie, które możemy uruchomić jako moduł / paczkę python. Pozwala na generowanie dowolnych pakietów w postaci skryptów python, co jest niezwykle przydatne dla administratorów sieci, którzy nadzorują złożone infrastruktury IT. Za jego pomocą możemy testować np. odporność naszej sieci na złośliwe wstrzykiwanie informacji routingowych lub przepełnianie tablic mac, arp czy sąsiedztwa dla protokołów routingu.

    Atak wstrzykiwania złośliwych informacji routingowych

    Źródło: https://github.com/davidbombal

    Za pomocą prostego skryptu można wykonać atak wstrzykiwania złośliwych informacji routingowych czy zalewania urządzenia nieprawdziwymi informacjami na temat sąsiedztwa. Dodatkowo, narzędzie to umożliwia monitorowanie i analizowanie połączeń sieciowych poprzez wprowadzenie adresu IP, co jest kluczowe dla administratorów.

    Tworzenie wymyślonych sąsiadów z kolejnymi adresami IP dla routera uczestniczącego w EIGRP.

    Scapy oferuje szeroką funkcjonalność, która pozwala na testowanie prędkości połączeń internetowych, w tym ADSL, oraz na generowanie ruchu sieciowego w różnych scenariuszach. Narzędzie to umożliwia również diagnozowanie sieci poprzez wprowadzenie hosta do analizy.

    Scapy jest użyteczne zarówno dla administratorów, jak i dla zwykłych użytkowników komputerów, umożliwiając im lepsze zrozumienie i zarządzanie konfiguracją sieci na komputerze. Można również definiować nazwę hosta lub komputera do testowania połączenia w sieci.

    Narzędzie to pozwala na dokładne pomiary przepustowości sieci, co jest kluczowe dla optymalizacji wydajności połączeń. W przypadku specyficznych scenariuszy, takich jak testowanie odporności na ataki, Scapy jest niezastąpione.

    Scapy umożliwia również diagnostykę serwera oraz testowanie połączeń z serwerem, co pozwala na ocenę wydajności i stabilności sieci. Dodatkowo, narzędzie to jest przydatne w monitorowaniu sieci lokalnej, zbierając informacje o dostępnych maszynach i otwartych portach.

    Scapy umożliwia wykonywanie różnych testów sieciowych, co pozwala użytkownikom na emulowanie działań w sieci oraz analizowanie tras przesyłania pakietów. Uruchomienie narzędzia jest kluczowym krokiem w diagnostyce i testowaniu sieci.

    Scapy oferuje również funkcję whois, która jest użyteczna w analizie i diagnostyce sieci, dostarczając szczegółowych danych o operatorach sieci i lokalizacji geograficznej adresów IP.

    Raven-storm:

    Raven-Storm jest rozwiązaniem dedykowanym do prowadzenia stress-test, które jest niezwykle przydatne dla administratorów sieci do zarządzania i monitorowania złożonych infrastruktur IT. Posiada on predefiniowane opcje, które ułatwiają wybranie typu testów i przeprowadzenie je w sposób nieskomplikowany z poziomu linii poleceń.

    Raven-Storm zapewnia także wsparcie dla testów WiFi, Bluetooth oraz arp-spoofing.

    Program umożliwia monitorowanie i analizowanie połączeń sieciowych, w tym adresów IP, co jest kluczowe dla administratorów.

    W intuicyjny sposób program prowadzi nas przez dostępne opcje i pozwala zdefiniować parametry początkowe naszych testów, w tym testy prędkości połączeń ADSL. Intensywność testów zależy od zasobów fizycznych, na których zainstalowany jest Raven-Storm, a także dostępnego łącza sieciowego.

    Raven-Storm oferuje szeroką funkcjonalność, umożliwiającą generowanie ruchu sieciowego o różnych parametrach.

    Generator ruchu Raven-storm i generowanie ruchu sieciowego

    Dodatkowo, program pozwala na diagnostykę sieci poprzez wprowadzenie adresu hosta do analizy.

    Raven-Storm jest użyteczny zarówno dla administratorów, jak i zwykłych użytkowników komputerów, umożliwiając im lepsze zrozumienie i zarządzanie konfiguracją sieci na komputerze.

    Program wymaga podania nazwy hosta lub komputera do testowania połączenia w sieci, co ułatwia precyzyjne monitorowanie.

    Raven-Storm pozwala na dokładne pomiary przepustowości sieci, co jest kluczowe dla optymalizacji wydajności połączeń.

    W przypadku specyficznych scenariuszy, takich jak testowanie różnych typów połączeń, program oferuje elastyczne opcje konfiguracji.

    Raven-Storm umożliwia diagnostykę i testowanie serwera, co jest istotne dla oceny wydajności i stabilności sieci.

    Dodatkowo, program może monitorować urządzenia w sieci lokalnej, zbierając informacje o dostępnych maszynach i otwartych portach.

    Raven-Storm umożliwia wykonywanie różnych testów sieciowych, co pozwala użytkownikom na emulowanie działań w sieci oraz analizowanie tras przesyłania pakietów.

    Uruchomienie narzędzia jest proste i intuicyjne, co jest kluczowe dla skutecznej diagnostyki sieci.

    Raven-Storm wykorzystuje funkcję whois do analizy i diagnostyki sieci, dostarczając szczegółowych danych o operatorach sieci i lokalizacji geograficznej adresów IP.

    PacketSender:

    PacketSender w przeciwieństwie do wyżej wymienionych programów jest dostępny na każdą platformę => Windows, Linux, Mac. Jest to prosty program graficzny, który pozwala na generowanie pakietów z predefiniowanymi filtrami.

    Generator ruchu PacketSender Intuicyjna obsługa programu z poziomu GUI.

    Intuicyjna obsługa programu z poziomu GUI pozwala w szybki sposób na utworzenie pożądanych pakietów. Częściowo może on działać w trybie klient-serwer i sprawdzać odpowiedzi na zapytania np. http, mierzyć czas pakietów. Niestety nie posiada on jako tako części serwerowej, tylko aplikacja kliencka.

    Trex: przepustowość

    Trex jest to open-source projekt od Cisco, który w pełni działa jako generator ruchu w postaci klient serwer. Dzięki temu możemy zainstalować go w dwóch różnych częściach naszej sieci i kompleksowo sprawdzić jej parametry. Do jego użycia potrzebujemy dwóch maszyn wirtualnych na, których zostanie uruchomione oprogramowanie. Jest to kompleksowe rozwiązanie, które pozwala na testowanie sieci pod kątem rozmaitego ruchu aplikacyjnego.

    Schemat działania TRex

    Oprogramowanie używane jest z poziomu linii poleceń, lecz dostępna jest też przystwka GUI, która ułatwia zarządzanie i analizowanie zebranych wyników.

    Dashboard TRex

    Trex obsługuje generowanie pakietów dla protokołów takich jak VxLAN, GRE czy NSH. Narzędzie to może pracować w trybie ciągłym lub impulsowym, umożliwiając elastyczne dopasowanie do wymagań testów.

    Dodatkowo oferuje funkcję importu plików .pcap, które mogą być przesyłane przez sieć w celu odzwierciedlenia rzeczywistego ruchu.

    Dzięki swojej zaawansowanej architekturze, Trex stanowi idealne narzędzie do testowania rozwiązań takich jak NAT, DPI, load balancer czy firewalle. Analiza wyników pozwala łatwo zweryfikować, czy urządzenie spełnia parametry techniczne określone w specyfikacji producenta.

    Generator ruchu TRex

    Generator ruchu TRex

    Dzięki wskazanemu oprogramowaniu jesteśmy w stanie przeprowadzić kompleksowe testy wydajnościowe sieci

    Generator ruchu TRex i testowanie wydajności sieci

    Trex zaawansowane modele do generowania ruchu

    Jak wykazała część testów do tej pory urządzenia sieciowe mają problemy wydajnościowe podczas obsługi nietypowego ruchu np. generowanie bardzo dużej ilości mały pakietów UDP potrafi doprowadzić do restartu urządzeń lub jego zawieszenia. Problemem nie jest sama ilość pakietów a problem z obsługą dużej ilości przerwań z karty sieciowej do CPU.  

    Spirent:

    Panel kontrolny Spirent:

    Spirent panel konfiguracyjny - konfiguracja ogólna

    Panel kontrolny Spirent

    Panel kontrolny Spirent - ustawienia testowe

    Wyniki testów obciążenia przykładowych firewalli:

    Wyniki testów obciążenia przykładowych firewalli Sophos

    Wyniki testów obciążenia przykładowych firewalli Sophos

    Wyniki testów obciążenia przykładowych firewalli Sophos

    Wyniki testów obciążenia przykładowych firewalli

    Wyniki testów obciążenia przykładowych firewalli

    Przykładowy raport końcowy testów przeprowadzonych za pomocą Spirent:

    Przykładowy raport końcowy testów przeprowadzonych za pomocą Spirent

    Opis procedury testowej:

    Spirent to zaawansowane narzędzie płatne, wykorzystywane do testowania wydajności sieci. Umożliwia ono szczegółową konfigurację testów dla protokołów takich jak HTTP, HTTPS, FTP, SMTP czy POP3. Testy przeprowadzane są w środowisku z portami 10Gbase-SR, z których zbierane są dane dotyczące wydajności urządzeń sieciowych.

    1.1.   Środowisko testowe.

    Środowisko testowe dla generatora ruchu Spirent

    1.2.   Do podłączenia urządzenia testowanego do środowiska testowego będą przygotowane dwa porty 10Gbase-SR. Przygotowany również zostanie komputer przenośny służący do zarządzania testowanym urządzeniem

    1.3.   Na testerze ruchem TCP (C100) parametry testu będą skonfigurowane następująco:

    1.3.1.      Konfiguracja ogólna

    Konfiguracja generatora Spirent

    1.3.2.      Konfiguracja protokołu HTTP1.1

    Konfiguracja protokołu HTTP1.1

    1.3.3.      Konfiguracja protokołu HTTPS1.1

    Konfiguracja protokołu HTTPS1.1

    1.3.4.      Konfiguracja protokołu POP3

    Konfiguracja protokołu POP3

    1.3.5.      Konfiguracja protokołu SMTP

    Konfiguracja protokołu SMTP

    1.3.6.      Konfiguracja protokołu FTP

    Konfiguracja protokołu FTP

    1.1.   Polityka filtrowania ruchu na zaporze

    Nr RegŹródłoCelProtokółAkcja
    1.Any10.11.0.0/2410.12.0.0/24HTTP, HTTPS,DNS, FTP, POP3, SMTP, IMAP, LDAP,SMTPS, SNMP, SSH, TELNET, UDP/1-65535Allow
    2.AnyAnyHTTP, HTTPS, SSH, TELNETAllow
    3.AnyAnyAnyDeny

    1.2.   Test będzie składał się z testu ruchem UDP i TCP uruchomionym jednocześnie. Testowany firewall będzie obciążany ruchem TCP i UDP o łącznym natężeniu 5,8+4 = 9,8Gb/s

    Wyniki:

    • Urządzenia sieciowe mogą mieć trudności z obsługą nietypowego ruchu, np. dużej ilości małych pakietów UDP, co może prowadzić do ich restartu.
    • Problemy często wynikają z dużej liczby przerwań generowanych przez karty sieciowe do CPU.

    Podsumowanie

    Generatory ruchu są niezbędnym narzędziem w arsenale każdego administratora sieci. Ich zastosowanie pozwala nie tylko na lepsze zrozumienie i kontrolę przepustowości sieci, ale także na szybkie wykrywanie potencjalnych zagrożeń i słabych punktów. Regularne testy przy użyciu tych narzędzi pomagają zidentyfikować problemy, zanim wpłyną one na użytkowników końcowych, minimalizując ryzyko przestojów i strat biznesowych. Dzięki wszechstronności narzędzi takich jak Hping3, Scapy, Trex czy Spirent, administratorzy mogą tworzyć scenariusze testowe dostosowane do specyficznych potrzeb swojej infrastruktury, zapewniając jej stabilność i bezpieczeństwo w dłuższej perspektywie.

    Pamiętaj: Regularne testowanie sieci i monitorowanie jej wydajności to klucz do minimalizowania przestojów oraz problemów związanych z obsługą ruchu sieciowego.

    Autor

    Jakub Grzelski

    Senior Systems Engineer | Network&Security • Delivery & Maintenance

    Komentarze są niedostępne
    Grandmetric: Network & Security