Страница 1 из 1

опять деление канала :)

Добавлено: 10 ноя 2004, 15:51
Denis
теперь уже между vpn клиентами
хочется делить динамически.
моя идея:
есть n клиентов, ссоздать n склассов (root c rate=канал/n и ceil=канал) и потом с помощью фильтра, через ip-up запихивать их в эти классы. или есть решение получше?

Добавлено: 10 ноя 2004, 16:27
Llama
Denis, если интересует равноаерное разделение траффика между клиентами - то можно просто делать траффик исходящий с внешнего интерфейса. Пример - на sky-zebra.net в QoS FAQ. Не тебе ли я его советовал на #unix ?

Добавлено: 10 ноя 2004, 16:40
Denis
мне. но что то я видимо торможу...

Код: Выделить всё

$TC qdisc add dev $DEVB root handle 1: htb default 30
$TC class add dev $DEVB parent 1: classid 1:1 htb rate 100mbit ceil 100mbit burst 15k
$TC class add dev $DEVB parent 1:1 classid 1:10 htb rate 1mbit ceil 100mbit  burst 15k
$TC class add dev $DEVB parent 1:1 classid 1:20 htb rate 1mbit ceil 100mbit burst 15k
$TC class add dev $DEVB parent 1:1 classid 1:30 htb rate 1mbit ceil 100mbit burst 15k
и таких классов например 15 штук
потом:

Код: Выделить всё

$TC qdisc add dev $DEVB parent 1:10 sfq perturb 10
$TC qdisc add dev $DEVB parent 1:20  sfq perturb 10
$TC qdisc add dev $DEVB parent 1:30  sfq perturb 10
и таких тоже 15
потом:

Код: Выделить всё

$TC filter add dev $DEVB protocol ip parent 1:0 prio 1 u32 match ip dst $VPNUSERIP flowid 1:$ipNumber0
или я что то не так понял?
или ты имел ввиду с помощью sfq делить?
хочется все же, что бы у них была хоть какая то гарантированная полоса. хоть 1 кб/с...

Добавлено: 11 ноя 2004, 13:49
Hermit
AFAIK squid delay pools может помочь

Добавлено: 11 ноя 2004, 13:54
invox
Hermit Кхе-кхе... squid delay pools и каналы для VPN-клиентов - это очень уж разные оперы...

Добавлено: 11 ноя 2004, 14:16
Denis
Hermit, squid с ведрами уже делает свое дело. но только для портов 80, 8080, 8081... а надо же что то и с остальными портами делать... :)

Добавлено: 11 ноя 2004, 14:23
Hermit
обычно основной траффик - это web, который сквид хорошо нарезает. У меня пользователи определяют скорость инета по скорости загрузки страниц. Все остальное, чем клиенты пользуются довольно редко (SMTP, POP, FTP) нарезано CBQ.

Добавлено: 11 ноя 2004, 14:39
Llama
пользователи редко пользуют FTP??? Оччень хорошие у тебя пользователи!

Добавлено: 11 ноя 2004, 15:29
Denis
ага, особенно в домашней сети... :)

Добавлено: 11 ноя 2004, 20:50
Denis
блиииннн... вот незадача... придется тогда ж убрать прозрачное проксирование... иначе все ж пакеты будут от адреса сервера...

короче по моему вопросу выше моя идея такая:
ip-up.local:

Код: Выделить всё

tc class add dev $DEV parent 1:1 classid 1:2${1/ppp/} htb rate $[$RATEUP/$VPNS]kbit ceil ${RATEUP}kbps
tc filter add dev $DEV protocol ip parent 1:0 prio 1 u32 match ip src $5 flowid 1:2${1/ppp/}
ip-down.local:

Код: Выделить всё

tc class del dev $DEV parent 1:1 classid 1:2${1/ppp/} htb rate $[$RATEUP/$VPNS]kbit ceil ${RATEUP}kbps
tc filter del dev $DEV protocol ip parent 1:0 prio 1 u32 match ip src $5 flowid 1:2${1/ppp/}
где $DEV интерфейс наружу, $RATEUP исходящий, $VPNS количество возможных одновременых подключений.

может можно сделать более грамотно?

и с входящим как быть? заворачивать его на imq0 и там делить, только по адресу назначения?