Я пытаюсь найти утилиту, которая позволит мне генерировать постоянный поток случайного сетевого трафика с указанной скоростью между двумя хостами. Утилита должна работать в Windows и OS X. Я пробовал iperf, но, похоже, он больше ориентирован на краткосрочное тестирование / статистику и действительно нагружает процессор даже на более низких скоростях. Я хочу что-то, что будет генерировать трафик в течение нескольких недель со скоростью, скажем, 10 Мбит / с, в то время как я использую другие инструменты для отслеживания влияния этого уровня трафика на сеть.
Пойдите для простоты, попробуйте netcat.
Если вы хотите выкрутить ограниченное количество, вы можете создать файл и передать его в NC
nc 192.168.0.1 3333 > file.dat
В качестве альтернативы, если вы хотите насыщать свою сеть, вы можете настроить соединение, которое будет переполнять A и B между собой
на компьютере А
yes AAAAAAAAAAAAAAAAAAAAAA | nc -v -v -l -p 2222 > /dev/null
на другом компьютере (мы назовем B)
yes BBBBBBBBBBBBBBBBBBBBBB | nc othermachine 2222 > /dev/null
Существует множество ссылок на то, что вы можете делать с помощью netcat, я настоятельно рекомендую вам когда-нибудь заглянуть в Google.
Используйте пинг. Вы можете создать сценарий для запуска случайных потоков и делать разные интересные вещи. Я не эксперт по MacOS, но уверен, что он очень похож на параметры Linux CLI ...
Итак, чтобы подтолкнуть порты к пределу скорости соединения, запустите флуд-пинг (для этого необходимо иметь root-доступ, здесь я использую свой для 100000 пакетов):
$ping -f -c 100000 <destination IP>
Сразу хочу сказать, что Ostinato работает как в Mac OS X, так и в Windows.
На моем Core2Duo 2,2 ГГц под управлением Windows XP Ostinato занимает около 50% ЦП. Говоря только о Остинато - причина, по которой требуется так много ЦП даже при низких скоростях, заключается в поддержании точной (считывание постоянной задержки между пакетами) скорости передачи в присутствии других конкурирующих приложений.
Вы также можете попробовать tcpreplay
Раскрытие информации: я разработчик Ostinato
Остинато может подойти для Windows. Я не тратил на это много времени, но выглядит интересно.
К сожалению, у меня нет личного опыта с этим, но MGEN могло бы поместиться. PackETH это хорошо, но это в основном Linux (плюс порт Windows), так что, наверное, не может быть и речи.
Если это вам не подходит, список в D-ITG сайт может быть полезным.
Просто запустите этот скрипт ...
#!/bin/bash
while true;
do
t=$(($RANDOM%2500 + 500))
b=$(($RANDOM%150 + 50))
ping -c 1 -s $b $1
sleep $(($t/1000))
done