forum.bitel.ru
http://forum.bitel.ru/

Шейпер manad
http://forum.bitel.ru/viewtopic.php?f=7&t=3629
Страница 1 из 1

Автор:  crez [ 20 фев 2010, 14:55 ]
Заголовок сообщения:  Шейпер manad

Здравствуйте! Помогите разобраться с шейпером.

Шлюз организован на сервере (Centos 5.4) с двумя сетевыми картами. eth0 - внешняя, eth1 - внутренняя.
В биллинге (4.6) конфигурация шлюза:
Код:
user_rule.editor.class=bitel.billing.module.services.ipn.editor.ManadContractRuleEditor
gate_manager.class=bitel.billing.server.ipn.ManadGateWorker

Команды:
Код:
[DEFAULT]

[OPEN]

<LOOP>
iptables -A FORWARD -t filter -s {A} -j ACCEPT
</LOOP>

/sbin/tc class add dev eth1 parent 1:0 classid 1:[N1] htb rate ${speed} burst 4k prio 1
/sbin/tc qdisc add dev eth1 parent 1:[N1] handle [N1]: sfq perturb 10 quantum 1500

/sbin/tc class add dev eth1 parent 1:0 classid 1:[N2] htb rate ${speed} burst 4k prio 1
/sbin/tc qdisc add dev eth1 parent 1:[N2] handle [N2]: sfq perturb 10 quantum 1500

<LOOP>
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio [N1] u32 match ip dst {A}  flowid 1:[N1]
</LOOP>

<LOOP>
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio [N2] u32 match ip src {A} flowid 1:[N2]
</LOOP>

[/OPEN]
[CLOSE]
<LOOP>
/sbin/iptables -D FORWARD -t filter -s {A} -j ACCEPT
</LOOP>
/sbin/tc filter del dev eth1 parent 1:0 protocol ip prio [N1]
/sbin/tc filter del dev eth1 parent 1:0 protocol ip prio [N2]

/sbin/tc class del dev eth1 parent 1:0 classid 1:[N1] htb rate ${speed} burst 4k prio 1
/sbin/tc class del dev eth1 parent 1:0 classid 1:[N2] htb rate ${speed} burst 4k prio 1

[/CLOSE]

[/DEFAULT]

В типах правил - скорости.

На шлюзе установлен manad_linux.pl (от 08.04.08).
В init_shaping.sh:
Код:
#!/bin/sh

INDEV="eth1"

/sbin/tc qdisc del dev $INDEV root 2> /dev/null

##### speed server->client(downstream)

/sbin/tc qdisc add dev $INDEV root handle 1: htb default ffff r2q 1

#default
/sbin/tc class add dev $INDEV parent 1:0 classid 1:ffff htb rate 100mbit burst 4k prio 3
/sbin/tc qdisc add dev $INDEV parent 1:ffff handle ffff: sfq perturb 10 quantum 1500


tc monitor показывает, что фильтры добавляются.
Код:
class htb 1:7 dev eth1 root prio 1 rate 8192Kbit ceil 8192Kbit burst 4Kb cburst 2623b
qdisc sfq 7: dev eth1 parent 1:7 limit 128p quantum 1500b perturb 10sec
class htb 1:8 dev eth1 root prio 1 rate 8192Kbit ceil 8192Kbit burst 4Kb cburst 2623b
qdisc sfq 8: dev eth1 parent 1:8 limit 128p quantum 1500b perturb 10sec
filter dev eth1 parent 1: protocol ip pref 7 u32 fh 810::800 order 2048 key ht 810 bkt 0 flowid 1:7
  match 0a31403e/ffffffff at 16
filter dev eth1 parent 1: protocol ip pref 8 u32 fh 811::800 order 2048 key ht 811 bkt 0 flowid 1:8
  match 0a31403e/ffffffff at 12

При закрытии шлюза - удаляются:
Код:
deleted filter dev eth1 parent 1: protocol ip pref 7 u32
deleted filter dev eth1 parent 1: protocol ip pref 8 u32
deleted class htb 1:7 dev eth1 root leaf 7: prio 1 rate 8192Kbit ceil 8192Kbit burst 4Kb cburst 2623b
deleted class htb 1:8 dev eth1 root leaf 8: prio 1 rate 8192Kbit ceil 8192Kbit burst 4Kb cburst 2623b

Мало того, они работают! Но работают только в одну сторону. Входящий траффик ограничивается, а вот исходящий не желает!

В командах шлюза вроде присутствует строчка и для аплоада, а не работает. Третий день парюсь с этим - отупел. :) Натолкните на мысль, где я сделал не так.

Автор:  stark [ 24 фев 2010, 12:05 ]
Заголовок сообщения:  Re: Шейпер manad

на одном интерфейсе нельзя ограничить сразу входящий и исходящий трафик .Вообще можно ограничивать только исходящий . Т.е нужно на обоих интрфейсах ограничивать исходящий трафик , но один из этих исходящих считается входящим

Автор:  ok-2004 [ 24 фев 2010, 18:00 ]
Заголовок сообщения:  Re: Шейпер manad

Именно поэтому ,уважаемый crez, в случае nata на eth0 или vlan-ов на eth1 вот уже который год все форумы типа NAGa полны томных рассуждений о всяких там ifb или imq...

Автор:  ok-2004 [ 24 фев 2010, 18:06 ]
Заголовок сообщения:  Re: Шейпер manad

хотя конечно всё относительно.. ( адепты freebsd надменно ухмыляются со своим ng_car или dummynetom над этим тредом )

Автор:  crez [ 04 мар 2010, 12:53 ]
Заголовок сообщения:  Re: Шейпер manad

Да уж... Я уже понял, что это из-за ната, но... блин, столько этих всяких "но"! :)

Вобщем-то я добился, чтоб шейпер работал более-менее сносно. Хотя, он все равно живет какой-то своей жизнью :) Хочет - режет скорость, хочет - не режет. Плюнул я на него пока :) Он ПРИМЕРНО (на глазок) режет и ладно.

У меня возник другой вопрос, но для него - отдельная тема.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/