Страница 4 из 6

Re: Ограничение скорости

Добавлено: Пн фев 01, 2010 7:00 am
vitaliych
antonmayko писал(а): Скажите пожалуйста, а чего в Вашем скрипте не работает ограничение исходящей скорости клиента?
NiTr0 писал(а):Оно работает. А вот почему у вас не работает - смотрите в опции ядра ;)
Позволю себе вмешаться в тему. Оно не работает. И работать не будет с вышеприведенными решениями.
По одной простой причине: tc работает на ВЫХОДЕ интерфейса. Для входящего соединения это ррр, и все решения, привязанные ТОЛЬКО К РРР работают на ура. А вот для исходящего соединения ИСХОДЯЩИМ ИНТЕРФЕЙСОМ БУДЕТ ВНЕШНИЙ ИНТЕРФЕЙС сервера, и все потуги шейпить исходящий траффик на ррр ни к чему не приведут. ingress просто канал убивает на нет, без всякой привязки к параметру UPSPEED.
Потому шейпить надо на внешнем интерфейсе, только учесть, что tc работает еще и после NAT, так что если используется SNAT на внешнем интерфейсе, то фильтры по IP-адресу работать НЕ БУДУТ. Я вижу только одно решение - маркировать пакеты на ррр (iptables), а на внешнем шейпить на основе марков.

P.S. Сразу оговорюсь - я не рассматриваю варианты с псевдо-интерфейсами и патчингом ядра и iptables. Я говорю о решении с использованием стандартного HTB, который есть всегда под рукой.

Re: Ограничение скорости

Добавлено: Пн фев 01, 2010 8:35 am
NiTr0
Вполне себе сносно работает ingress. Возможно, для 1 потока шейпит и некорректно (вместо положенных 12 мбит выдает эдак 8-10), но для, скажем, торрента - работает на ура.
А по поводу виртуальных интерфейсов - уже давно ничего никуда не надо патчить, IFB давно в vanilla kernel...

Re: Ограничение скорости

Добавлено: Пн фев 01, 2010 10:11 am
vitaliych
NiTr0 писал(а):Вполне себе сносно работает ingress. Возможно, для 1 потока шейпит и некорректно (вместо положенных 12 мбит выдает эдак 8-10), но для, скажем, торрента - работает на ура.
А по поводу виртуальных интерфейсов - уже давно ничего никуда не надо патчить, IFB давно в vanilla kernel...
Насчет IFB - да, погорячился, ничего компилить может и не надо.
А вот как работает ingress - извините, так и не понял, независимо от указанной скорости режет где-то до 28КБ.
Ну и еще - все варианты имеют право на жизнь - и IFB, и HTB. Я просто попытался объяснить, почему не работает исходящий шейпинг при использовании только HTB.

Re: Ограничение скорости

Добавлено: Вт фев 23, 2010 9:49 am
ponomar
у меня откуда то взялась проблемка с шейпером, под дебианом 5,0 было все хорошо, под убунтой 9,10 стало фестивалить.

из лога ip-up.d видно что скрипт при коннекте запускает примерно так т.е. верно

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

/usr/abills/libexec/linkupdown ipn up ppp7 login 192.168.100.139 OS=Linux
смотрю

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

 tc class show dev ppp7
пусто

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

tc filter show dev ppp7
пусто
при выполнении вручную

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

/usr/abills/libexec/linkupdown ipn up ppp7 login 192.168.100.139 OS=Linux
ответ

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

RTNETLINK answers: Invalid argument
We have an error talking to the kernel
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
причём такое не постоянно
на данный момент скорость не зарезана на трёх из семи интерфейсах.

вот как дело при зупуске комманд вручную из линкапдаун

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

root@server:~# /sbin/tc class add dev ppp7 parent 1: classid 1:bec htb rate 300Kibit
RTNETLINK answers: No such file or directory
root@server:~# /sbin/tc filter add dev ppp7 protocol ip parent 1: prio 3052 u32 match ip src 0.0.0.0/0 match ip dst 192.168.100.139 flowid 1:bec
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
root@server:~# /sbin/tc filter add dev ppp7 protocol ip parent ffff: prio 3051 u32 match ip src 192.168.100.139 match ip dst 0.0.0.0/0 police rate 50Kibit burst 12k drop flowid 1:
root@server:~#
подскажите в чем может быть причина.

Re: Ограничение скорости

Добавлено: Пн сен 06, 2010 8:13 am
morfair

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

#!/bin/sh

TC="/sbin/tc"
TCQA="$TC qdisc add dev $IFNAME"
TCQD="$TC qdisc del dev $IFNAME"

$TCQD root &>/dev/null
$TCQD ingress &>/dev/null

$TCQA root handle 1: htb
$TCQA handle ffff: ingress

/usr/abills/libexec/linkupdown ipn up $IFNAME $PEERNAME $IPREMOTE OS=Linux
А на NAS-сервере это будет работать? Там ведь нет файла /usr/abills/libexec/linkupdown, поэтому строчка

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

/usr/abills/libexec/linkupdown ipn up $IFNAME $PEERNAME $IPREMOTE OS=Linux
не отработает.
Как же мне на NAS сервере траф шейпить?

И вот еще что нашел. На новом NAS-сервер /var/run/radattr.ppp0 выглядит так:

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

MS-CHAP2-Success \217S=3E745DF182834066809F3D6AF18FF2EA885060B0
MS-MPPE-Recv-Key \201t\\240gC\233\342\251"\272j\277\201\2518u\216s\310\203I\365,a[\312\225,c\223Y\204\226
MS-MPPE-Send-Key \215\311h\232\351\021\377\377\333\001 e\205\277\201\325\345?\303\323\004W5E\330}\361\264M\003+\203\272\034
MS-MPPE-Encryption-Policy
MS-MPPE-Encryption-Types
Acct-Interim-Interval 60
Session-Timeout 65535
Octets-Direction Sum
Framed-IP-Address 192.168.93.105
Session-Octets-Limit 2146435072
Framed-IP-Netmask 255.255.255.255
, т.е. нет аттрибутов

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

PPPD-Upstream-Speed-Limit 512
PPPD-Downstream-Speed-Limit 512
Без них то тоже никак. Почему они тогда не передаются? На первом NAS'е с ними все в порядке.

Re: Ограничение скорости

Добавлено: Пн сен 06, 2010 2:51 pm
NiTr0
morfair писал(а):Почему они тогда не передаются? На первом NAS'е с ними все в порядке.
словари, тип наса...

Re: Ограничение скорости

Добавлено: Пн сен 06, 2010 2:54 pm
morfair
NiTr0 писал(а):
morfair писал(а):Почему они тогда не передаются? На первом NAS'е с ними все в порядке.
словари, тип наса...
Да, нашел касяк. На новом NAS-сервере словари были немного не те, вот и не все работало.

Re: Ограничение скорости

Добавлено: Вт мар 29, 2011 6:35 pm
fet4
Привет всем!
Помогите пожалуйста, решить проблему!
Использую pppoe вставил скрипт ip-pre-up что в первом посте. Но увы скорость не ограничивается через интервалы. Если задать скорость клиенту вручную то все окей.
Вот вывод
/var/run/radattr.ppp3

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

Framed-Protocol PPP
Framed-Compression Van-Jacobson-TCP-IP
Acct-Interim-Interval 60
Session-Timeout 182685
Octets-Direction 0
Framed-IP-Address 10.10.1.171
Session-Octets-Limit 0
Framed-IP-Netmask 255.255.255.255
MS-CHAP2-Success uS=4207F5CD6A1A6BE35F65B887FDA6A21B82DC4922
MS-MPPE-Recv-Key \302w^\335`?\303\003Y\[C\033\027\032\025py\236\316\300\370\253\262\2533\352f\350\236\223\203\354\015
MS-MPPE-Send-Key \312\273\263k]{DP\361(v{\012\312\264D!\226|\027\3048a`\325\303\242\254\254)\346\350\225y
MS-MPPE-Encryption-Policy
MS-MPPE-Encryption-Types
Куда копать подскажите?

Re: Ограничение скорости

Добавлено: Чт мар 31, 2011 1:13 pm
lessless
я ось також додав трафік-інтервал з ua-ix мережами. чому він не обмежується ? :mrgreen:

Re: Ограничение скорости

Добавлено: Вт апр 19, 2011 9:50 pm
~AsmodeuS~
lessless писал(а):я ось також додав трафік-інтервал з ua-ix мережами. чому він не обмежується ? :mrgreen:
щас переделывается шейпер линукс, на днях будет новая версия проверете опять

Re: Ограничение скорости

Добавлено: Пн июн 20, 2011 1:50 pm
lessless
Улучшен шейпер для Linux. Добавлена поддержка хешей
как им пользоваться? в какой форме поддерживаются хеши??

Re: Ограничение скорости

Добавлено: Пн июн 20, 2011 5:07 pm
zakachkin
lessless писал(а):
Улучшен шейпер для Linux. Добавлена поддержка хешей
как им пользоваться? в какой форме поддерживаются хеши??
Автор сказал только для комков...

Re: Ограничение скорости

Добавлено: Вт июн 21, 2011 7:01 am
lessless
ну так если нету денег, может кто-то разжалобиться и выложит документацию

Re: Ограничение скорости

Добавлено: Ср июн 22, 2011 12:41 pm
Dmitrii
а мое сообщения удалили )))) видимо хозяин против того чтобы мы перекупали друг у друга примочки

Re: Ограничение скорости

Добавлено: Ср июн 22, 2011 12:44 pm
~AsmodeuS~
Dmitrii писал(а):а мое сообщения удалили )))) видимо хозяин против того чтобы мы перекупали друг у друга примочки
А Вы будете не против если Вашу зарплату будут платить мне ?