Назад | Перейти на главную страницу

Настройка маршрутизатора для отбрасывания пакетов, задержки и повреждения данных

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

  1. периодически сбрасывать пакеты
  2. периодически вводить задержку в пакетах
  3. поврежденные данные в пакетах (это не требуется, так как это потребует открытия пакета, изменения данных и обновления контрольной суммы, поскольку уровень TCP может уловить этот тип проблемы)

Если это невозможно на маршрутизаторе, можно ли настроить компьютер для работы в качестве маршрутизатора и сделать это?

Большое спасибо!

Если вы используете Linux в качестве маршрутизатора, у netfilter есть несколько способов испортить ваш пакетный трафик.

В random модуль может использоваться для случайного отбрасывания пакетов. Например, это:

iptables -A FORWARD -m random --average 10 -j DROP

приведет к тому, что маршрутизатор будет случайным образом отбрасывать пакеты со средней скоростью 10%.

Вы также можете повредить случайные пакеты с помощью цели XOR, например

iptables -A FORWARD -m random --average 1 -j XOR --key "junktoxortomypacket"

повредит 1% пересылаемых пакетов, выполняя XOR с ключом, полученным из данной строки.

Я успешно использовал WANem для моделирования условий сети WAN между Германией и Индией. WANem поставляется как загрузочный компакт-диск или виртуальное устройство. Вы просто загружаете его, настраиваете нужные сетевые свойства и затем маршрутизируете через него свой трафик. Цитата из официального описания:

WANem - это эмулятор глобальной сети, предназначенный для обеспечения реального опыта работы в глобальной сети / Интернете во время разработки / тестирования приложений в среде локальной сети. Обычно разработчики приложений разрабатывают приложения в локальной сети, хотя предполагаемой целью для этого может быть доступ клиентов к ним через глобальную сеть или даже Интернет. Таким образом, WANem позволяет команде разработчиков приложений настроить прозрачный шлюз приложений, который можно использовать для моделирования таких характеристик WAN, как задержка сети, потеря пакетов, повреждение пакетов, разъединения, изменение порядка пакетов, джиттер и т. Д. WANem может использоваться для моделирования глобальной сети Сетевые условия для трафика данных / голоса и распространяется под широко приемлемой лицензией GPL v2.

Установите порт восходящего канала на 10 Мбит / с и полудуплекс, если можете. Затем воспользуйтесь хостом в сети, чтобы избавиться от соплей. Это должно вас прилично стерилизовать: D