В многоуровневом приложении мне нужно смоделировать различные ошибки TCP/IP для проверки некоторого кода повторного подключения. Кто-нибудь знает какие-либо инструменты (на основе Windows), которые я могу использовать для этой цели? Спасибо.
Как я могу имитировать ошибки TCP/IP?
Ответ 1
Попробуйте netwox (ранее lcrzoex.) Если это не будет сделано, это невозможно. Он содержит > 200 инструментов.
Ответ 2
Scapy позволяет вам контролировать каждый аспект пакетов и произвольно изменять ( "путать" ) те, которые вы не используете хочу контролировать. Если вы парень из командной строки, это отличный инструмент.
Ответ 3
Clumsy - хороший инструмент для моделирования ошибок TCP в Windows. Он может имитировать (скопировать-вставить из ссылки выше):
- Отложите, удерживайте пакеты в течение короткого периода времени, чтобы эмулировать сеть отстающих.
- Drop, случайным образом отбрасывать пакеты.
- Дроссельная заслонка, блокируйте трафик за определенный период времени, затем отправляйте их в одну партию.
- Дублировать, отправлять клонированные пакеты сразу после оригинала.
- Не удалось изменить порядок пакетов.
- Нарушение, перетаскивание битов содержимого пакета.
Ответ 4
Нет инструментов, о которых я знаю, но большинство ошибок TCP можно эмулировать с помощью настраиваемого фильтра LSP. Эта статья может помочь вам начать писать один
Ответ 5
В FreeBSD лучшим инструментом, безусловно, является dummynet, инструмент, первоначально разработанный для тестирования сетевых протоколов, и поскольку затем используется для различных приложений, включая управление пропускной способностью. Он имитирует/применяет ограничения очереди и полосы пропускания, задержки, потери пакетов и эффекты многолучевого распространения.
В Linux вам придется использовать netem. (Кажется, теперь есть порт dummynet, но я никогда не пробовал его.)
Подробнее (на французском языке) в в моей статье.