FreeBSD: Эмуляция проблемных каналов

В файрволе FreeBSD (IPFW) есть довольно редкая встроенная фича — возможность эмуляции потери пакетов, задержки, полосы пропускания и др. параметров связи.

Эта поддержка включена в подсистему TRAFFIC SHAPER (DUMMYNET).

Настраивается следующим образом:

1. Создаем «канал» (pipe) с необходимыми характеристиками:
ipfw pipe config plr <от 0 до 1> delay <в миллисекундах> bw 300Kbit/s queue 128Kbytes [red] [noerror]

2. Дальше выбираем трафик, который в этот канал будет попадать:
ipfw add pipe

3. Просмотр конфигурации канала: ipfw pipe show

Пример (эмуляция 30% потерь всех пакетов от 192.168.11.40):
ipfw pipe 10 config plr 0.3
ipfw add 10 pipe 10 ip from 192.168.11.40 to any
ipfw pipe show
ipfw show

Подробнее в man ipfw

Область применения данной технологии: шейпер (ограничение скорости по ip-адресам, протоколам), тестирование сетевых решения и программных продуктов в условиях, приближенных к реальным проблемным (или забитым) каналам.

Leave a comment

Please be polite and on topic. Your e-mail will never be published.

You must be logged in to post a comment.