Информация
На главную Главная

Мой t-cards.ru
Войти Войти
Зарегистрироваться Регистрация

Разное
Форум Форум
Вернуться Форумы на t-cards.ru> Hard"n"Soft
Логин
Пароль
Регистрация Участники Поиск >> FAQ


Сообщения в теме: "Linux - управление шириной канала..."
01.08.2005 09:35
Admin

Регистрация: 05.10.2005
Проживание: Москва
Сообщения: 284
По умолчаниюLinux - управление шириной канала

Решается с помощью утилит, управляющих шейперами - виртуальными устройствами, управляющими трафиком на основе QoS. По сути дела, все эти утилиты - скрипты, использующие команду "tc qdisc". Для удобства имеют конфиги и т.д.

emerge cbqinit

В ядре включить поддержку QoS (в меню Networking options). Я все вкомпилил в ядро, почти все галки там поставил.
Конфиг этого дела - /etc/cbqinit/. В этой папке надо создавать файлы, на каждый шейпер свой файл.
Имя файла - "cbq-1000.smtp" например. начинаться должен с "cbq-". Потом любое число, которое будет определять класс, точка и потом комментарий.

#/etc/cbqinit/cbq-1000.smtp
DEVICE=eth1,100Mbit,10Mbit
RATE=10Kbit
WEIGHT=1Kbit
PRIO=5
RULE=:25
RULE=:25,

Формат записи в RULE - [src ip]:[src port], [dst ip]:[dst port]. ":25" означает "исходящие пакеты на 25 порт", ":25," - входящие пакеты на 25 порт.
RATE - желаемая ширина канала.
WEIGHT - RATE/10 обычно надо указать.

Если опци вкомпилены в ядро, тогда в скрипте /usr/sbin/cbqinit надо закомментировать блок
### Probe QoS modules (start only)
#for module in $CBQ_PROBE; do
# modprobe $module || cbq_failure "failed to load module $module"
#done

Запускать/останаливать:
cbqinit start|stop

Для eth-интерфейсов работает, для ppp что-то не захотел...