[sisyphus] Q: etcnet qos question

sergey ivanov =?iso-8859-1?q?seriv_=CE=C1_parkheights=2Edyndns=2Eorg?=
Чт Дек 1 06:10:52 MSK 2005


В community@ Michael Shigorin посоветовал мне самому эту проблему
решать. Спасибо.
Стал я пытаться смотреть внимательнее, и обнаружил, что всё что нужно
для правильной фильтрации паетов по маркам, выставленным через iptables
" -j MARK --set-mark ... " есть.
Однако оказалось, фильтры для qos-htb все должны приклепляться к
коревому классу. (См. раздел 9.6 в latrc). После того, как я туда их
попытался переместить, service network restart перестал ругаться. Однако
работать он не стал, и # tc filter show dev eth0 показывает отсутствие
фильтров.
Сравнив с работающими iproute-htb, я обнаружил разницу в фильтрах.
Работающие выглядят так:
--- from /var/cache/htb.init ---
...
tc filter add dev comcast parent 1:0 protocol ip prio 200 handle 21 fw
classid 1:21
...
а неработающие из etcnet (вставил туда отладочное echo):
...
/sbin/tc filter add dev comcast parent 1:1  protocol ip prio 1 handle 21
fw flowid 1:21

Мне кажется что главная разница в том, что для того, чтобы фильтр
работал, его parent должен быть типа 1:0 или 1:
Я это даже проверил, вколотив в /etc/net/scripts/config-qos " parent 1:0
" вместо $PARENTNODE.
Заработало! Однако аккуратно сделать, я думаю, мне слабо. Это сильно
менять всю логику обработки и(или) расположения файлов filter надо.
-- 
    С уважением,
       Сергей.






Подробная информация о списке рассылки Sisyphus