Emuluj utratę ramek Ethernet do celów testowych [zamknięte]

23

Może brakuje mi czegoś raczej podstawowego, ale nie wiem, więc pomyślałem, że zapytam.

Jeśli chodzi o testowanie, jak wrażliwe są różne TDMoE na BER i opóźnienie pakietu, zastanawiam się, jak symulować opóźnienie i losowe upuszczanie pakietów na poziomie sieci Ethernet. Do tych testów prawdopodobnie po prostu uruchomię iptables, jak udokumentowano w podobnym pytaniu StackOverflow. Jednak chociaż to zadziała tutaj, nie jestem pewien, czy zadziała w bardziej ogólnym przypadku (być może testowanie tolerancji BER między serwerami Windows i tym podobnymi). Więc to mnie zastanowiło.

Czy istnieją niedrogie urządzenia do testowania sieci, które pozwalają sztucznie opóźniać lub upuszczać pakiety w celu przetestowania protokołów testów warunków skrajnych i oceny wrażliwości na opóźnienia i utratę pakietów?

Moje wymagania są w stanie to zrobić na poziomie ethernetowym. Nie szukam tak bardzo konkretnych urządzeń, marek itp., Ale „czy są to rzeczy, które to robią?” a jeśli tak, może jakieś ogólne wyobrażenia o tym, jakie są. W tym celu głównie buduję prosty most z systemem Linux i iptables. Zastanawiam się tylko, czy jest to właściwa droga.

Chris Travers
źródło
„Czy są jakieś niedrogie urządzenia do testowania sieci” - Uważaj, to w zasadzie pytanie „zakupowe”, które jest niedozwolone. Zastanów się nad przejrzeniem czegoś w rodzaju „Porady dotyczące znajdowania skutecznego testera utraty sieci” lub podobnego.
jwbensley
Kiedy powiesz, że chcesz to zasymulować na poziomie Ethernet, jak to sprawdzisz? Ethernet nie ma TTL, numerów sekwencji, uzgadniania, opcji ani innych funkcji śledzenia połączeń, śledzenie tego zależy od protokołów wyższych warstw.
jwbensley

Odpowiedzi:

26

Istnieją narzędzia takie jak WANem, które pozwalają symulować łącza WAN poprzez sztuczne powodowanie arbitralnych opóźnień i strat na łączach. WANem działa na stosunkowo wysokim poziomie; nie zobaczysz fizycznych błędów na łączu, ale pakiety zostaną odrzucone. Można go wdrożyć na sprzęcie towarowym.

Wiem, że istnieje kilka innych narzędzi, które służą podobnym celom, ale w tej chwili nie pamiętam żadnych nazw.

Jeremy Stretch
źródło
1
Miałem też szczęście z WANem. Zainstalowałem go na laboratoryjnym serwerze VMWare ESX, aby szybka zmiana konfiguracji vSwitcha mogła przenosić go między różnymi segmentami laboratorium.
vitisimus
1
możesz to również zrobić z losowym linux-boxem i iptables. Przykład: code.nomad-labs.com/2010/03/11/…
Oluf Lorenzen
2
Do waszej uwagi, WANem jest po prostu ładnym interfejsem GUI dookoła netemmodułu Linux w tc( t raffic c ontrol , narzędziu administracyjnym podsystemu Linux QoS.) Sprawdź linki w odpowiedzi @petrus.
Will Dennis
5

WANem jest świetny, jak powiedział Jeremy. Inne interesujące narzędzia to netem lub dummynet .

Zobacz następujące przykłady z netem:

# tc qdisc change dev eth0 root netem loss 0.1%
# tc qdisc change dev eth0 root netem delay 100ms 10ms 25%

Możesz pobrać więcej informacji na stronie Netem lub na tej doskonałej odpowiedzi SO .

petrus
źródło