2015-08-06 42 views
7

Potrzebuję wygenerować bardzo wysoki poziom aktywności Wi-Fi w badaniu, aby sprawdzić, czy bardzo bliskie sąsiedztwo transceivera może mieć negatywny wpływ na rozwój kolonii pszczół.Generowanie maksymalnej aktywności Wi-Fi za pomocą 1 komputera

Próbowałem napisać aplikację, która spawnuje kilka par serwer-serwer-serwer, aby nieprzerwanie przenosić pliki o średnich rozmiarach (to podejście osiągnęło> 100 MB). Chcemy jednak uruchomić to na pojedynczym komputerze podłączonym do routera Wi-Fi, tak więc pakiety niezmiennie kończą się routingiem za pośrednictwem interfejsu pętli zwrotnej, a nie sieci WLAN.

Alternatywnie próbowałem użyć prostej powodzi i zwijania routera, ale nie zapewnia to prawie maksymalnej przepustowości routera.

Czy istnieje szybka naprawa systemu Linux, która wymusza ruch w sieci? Komputer, którego używamy, ma zarówno interfejs Ethernet, jak i bezprzewodowy, i znalazłem jeden wątek online, który sugerował konfigurację iptables, aby wymusić ruch między tymi dwoma interfejsami i uniknąć sprzężenia zwrotnego.

Odpowiedz

1

Powinno działać proste wysyłanie pakietów tak szybko, jak to możliwe do losowego miejsca docelowego (to nie jest localhost).

Będziesz musiał użyć udp (w przeciwnym razie potrzebujesz potwierdzenia połączenia, zanim będziesz mógł wysłać dane).

cat /dev/urandom | pv | nc -u 1.1.1.1 9123

pv jest opcjonalne (ale ładne).

Można również użyć /dev/zero, ale może wystąpić ryzyko kompresji na poziomie łącza.

Oczywiście, upewnij się, że router nie jest faktycznie podłączony do Internetu (nie chcesz gdzieś zalać serwera!), A twój komputer ma router jako domyślną trasę.

+0

dzięki za sugestię, nigdy wcześniej nie widziałem pv. dam mu szansę i zgłoś się. – Evan

+0

to nasyca transmisję z komputera, czy istnieje sposób, aby zmaksymalizować również odbiornik? Powoduje to bardzo wysokie prędkości transmisji, ale czy możliwe jest również zwiększenie poziomu RX? – Evan

+0

@Nie pozwól, aby ktoś wysłał Ci pakiety. Możesz ustawić serwer WWW i pobrać nieskończony plik za pomocą 'wget' – goncalopp