Эмулировать потерю кадров Ethernet для целей тестирования

Возможно, мне не хватает чего-то довольно элементарного, но я не знаю, поэтому я решил, что спрошу.

С точки зрения тестирования, насколько чувствительны различные TDMoE к BER и задержке пакетов, я изучаю, как имитировать задержку и случайное падение пакетов на уровне ethernet. Для этих тестов я, вероятно, просто запустил iptables, как описано в аналогичном вопросе StackOverflow. Однако, хотя это будет работать здесь, я не уверен, что он будет работать в более общем случае (возможно, тестирование BER-переносимости между серверами Windows и т. П.). Так что это заставило меня задуматься.

Существуют ли недорогие устройства для тестирования сети, которые позволяют искусственно задерживать или удалять пакеты, чтобы стресс-тесты протоколов и оценить чувствительность к задержкам и потерям пакетов?

Мои требования - это сделать это на уровне ethernet. Я не так много отношусь к конкретным устройствам, брендам и т. Д., Так как «это их вещи, которые это делают?» и если да, возможно, некоторые общие идеи о том, что они собой представляют. Я в основном смотрю на создание простого моста под Linux и iptables для этого. Просто интересно, правильно ли это сделать.

23 голоса | спросил Chris Travers 9 Maypm13 2013, 17:11:17

2 ответа


25

Существуют такие инструменты, как WANem , которые позволяют имитировать ссылки WAN, искусственно вызывая произвольные задержки и потери по ссылке. WANem работает на относительно высоком уровне; вы не увидите физических ошибок в ссылке, но пакеты будут удалены. Он может быть развернут на товарном оборудовании.

Я знаю, что есть несколько других инструментов, которые служат для подобных целей, но я не могу вспомнить имена каких-либо на данный момент.

ответил Jeremy Stretch 9 Maypm13 2013, 17:30:27
5

WANem отлично, как сказал Джереми. Другими интересными инструментами являются netem или dummynet .

См. следующие примеры с netem:

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

Вы можете получить дополнительную информацию на странице netem или на этот отличный ответ SO .

ответил petrus 19 Maypm13 2013, 13:58:10

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132