Формирование трафика с помощью tc неточно с высокой пропускной способностью и задержкой

Я использую tcс ядром 2.6.38.8 для трафика формирование. Ограничение пропускной способности работает, добавление задержки работает, но при формировании полосы пропускания с задержкой достигнутая пропускная способность всегда намного ниже предела, если предел >1,5 Мбит/с или около того.

Пример:

tc qdisc del dev usb0 root
tc qdisc add dev usb0 root handle 1: tbf rate 2Mbit burst 100kb latency 300ms
tc qdisc add dev usb0 parent 1:1 handle 10: netem limit 2000 delay 200ms

Выдает задержку (от ping) 201 мс, но пропускную способность всего 1,66 Мбит/с (от iperf). Если убрать задержку, то пропускная способность будет ровно 2 Мбит/с. Если я указываю пропускную способность 1 Мбит/с и RTT 200 мс, все работает. Я также пробовал ipfw + dummynet, что дает аналогичные результаты.

Я пытался использовать пересборку ядра с HZ=1000в Kconfig — это не решило проблему. Другие идеи?

0
задан 23 March 2012 в 18:39
поделиться