URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 86050
[ Назад ]

Исходное сообщение
"Шейпер - интерфейс ifb и падение скорости"

Отправлено mew , 22-Июл-09 16:14 
Есть роутер, который дает локалке выход в инет. Локалка подключена к eth0. Трафик с eth0 заворачивается на интерфейс ifb0 (исходящий от сервера, входящий для клиентов) и ifb1(исходящий от клиентов, входящий для сервера). Столкнулся с такой проблемой, что как только заворачиваю трафик на ifb (даже только на ifb0) - транзитная скорость (из инета к клиенту) нормальная, как была до заворота, а вот скорость от именно с этого роутера к абоненту (например если тяну с фтп роутера файл) - резко падает (становится около 512кбит). На роутере Debian Lenny, ядро 2.6.26-2-amd64. Пример разворота:

TC="/sbin/tc"
$TC qdisc del dev eth0 root
$TC qdisc del dev eth0 ingress
$TC qdisc del dev ifb0 root
$TC qdisc add dev eth0 root handle 1: prio
$TC filter add dev eth0 parent 1: protocol ip prio 10 u32 match u32 0 0 action mirred egress redirect dev ifb0

Как видно, никаких классов и фильтров ни на eth0, ни на ifb0 нет, т.ч. все пакеты должны пролетать с максимальной скоростью, нигде не задерживаясь, как и происходит для транзитного трафика. Только вот почему трафик именно с этого роутера на машину клиента начинает тормозить??? Машина не слабая, Core2DuoE8400. С шейпером htb и ingress на eth0 - проблем нет, кучу клиентов шейпит без проблем. Сейчас встала необходимость сделать разные вланы на eth0, и для удобства хочу с этих вланов вх/исх трафик направлять в ifb0/ifb1, и там шейпить. Все работает, и если бы не вышеописанные тормоза с трафиком с/на сам роутер от клиентов - я был бы очень счастлив... Помогите!!!


Содержание

Сообщения в этом обсуждении
"Шейпер - интерфейс ifb и падение скорости"
Отправлено mew , 23-Июл-09 10:00 
Ни у кого не было подобной ситуации?

"Шейпер - интерфейс ifb и падение скорости"
Отправлено mew , 27-Июл-09 10:15 
Вопрос все еще актуален... Помогите пожалуйста!

"Шейпер - интерфейс ifb и падение скорости"
Отправлено cyclope , 27-Июл-09 10:20 
>Вопрос все еще актуален... Помогите пожалуйста!

наверное правильнее ентот вопрос на лоре задать - там нашего пингвинчатого брата больше


"Шейпер - интерфейс ifb и падение скорости"
Отправлено sonkilla , 27-Июл-09 13:51 
как вариант попробуйте cbq я например им режу нагрузка на сервер большая куча вланов пока проблем небыло.

"Шейпер - интерфейс ifb и падение скорости"
Отправлено mew , 27-Июл-09 14:36 
>как вариант попробуйте cbq я например им режу нагрузка на сервер большая
>куча вланов пока проблем небыло.

cbq насколько я понимаю - это очередь... привязанная к интерфейсу. Т.е. нужно на каждый интерфейс (влан) привязывать cbq. А я хочу сделать более универсально - весь трафик со всех vlan'ов (eth0, eth0.1, eth0.2... - в каждом влане есть разные абоненты, у которых разные скорости должны быть) завернуть на интерфейс ifb, а там уже шейпить каждый IP своей скоростью. Но на всякий случай киньте пример, как у вас шейпится, может что-нибудь почерпну...


"Шейпер - интерфейс ifb и падение скорости"
Отправлено sonkilla , 27-Июл-09 15:15 
>>как вариант попробуйте cbq я например им режу нагрузка на сервер большая
>>куча вланов пока проблем небыло.
>
>cbq насколько я понимаю - это очередь... привязанная к интерфейсу. Т.е. нужно
>на каждый интерфейс (влан) привязывать cbq. А я хочу сделать более
>универсально - весь трафик со всех vlan'ов (eth0, eth0.1, eth0.2... -
>в каждом влане есть разные абоненты, у которых разные скорости должны
>быть) завернуть на интерфейс ifb, а там уже шейпить каждый IP
>своей скоростью. Но на всякий случай киньте пример, как у вас
>шейпится, может что-нибудь почерпну...

да вы правы в каждом правиле для абонента нужно указывать его влан вот например
cat cbq-1000.xxxDOWN
DEVICE=vlan3012,10Mbit,1Mbit
RATE=512Kbit
WEIGHT=64Kbit
PEAK=512Kbit
PRIO=5
RULE=192.168.101.54/32

это для резки на скачку если нужно на исходяший резать то нужно я например маркирую айпишники вот так.создаю файл rc.mark туда пишу всех клиентов что то типа вот этого

iptables -t mangle -A FORWARD -s 192.168.101.54 -j MARK --set-mark 1001

и вот само правило cbq
cat cbq-1001.xxxUP
DEVICE=vlan3012,10Mbit,1Mbit
RATE=512Kbit
WEIGHT=64Kbit
PEAK=512Kbit
PRIO=5
MARK=1001

вроде все)
ps в принцыпе я думаю что если вы заварачиваете все на один интерфейс то может есть смысл промаркировать адреса до этого а патом уже резать по маркировкам но нужно пробывать.


"Шейпер - интерфейс ifb и падение скорости"
Отправлено mew , 29-Июл-09 10:20 
Но все равно хотелось-бы разобраться с проблемой IFB...

"Шейпер - интерфейс ifb и падение скорости"
Отправлено eugenesoft , 19-Янв-11 10:47 
Аналогичная проблема, помогите, пожалуйста, разобраться.



"Шейпер - интерфейс ifb и падение скорости"
Отправлено legion , 27-Сен-11 15:37 
> Аналогичная проблема, помогите, пожалуйста, разобраться.

tc filter add dev ${ETH_LOCAL_NET} parent 1: protocol ip prio 1 handle ::1 u32 match ip src ${LOCAL_NET} match ip dst !${LOCAL_NET} action mirred egress redirect
dev ifb0