The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Эх, давно не брал я в руки шашек... "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Учет трафика, статистика)
Изначальное сообщение [ Отслеживать ]

"Эх, давно не брал я в руки шашек... "  +/
Сообщение от pavlinux (ok) on 31-Окт-11, 23:34 
Чём нонче модно трафик балансировать?

Бяда!!! Есть штук 100 VPN каналов на tap_ках, от tap0 до tap100, tap0 служебный.
Внутри каждой VPN, помимо прочего, работает некое подобие tftp - сервер раздачи апдейтов, 2 файла по 15 мегов.

Так вот, каналы у народа разные, от 512к до 10M, наш исходящий тоже 10M.
Естественно народ с жирным каналом забивает весь трафик на время скачивания.

Как бы всё это дело сбалансировать?  
  

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Эх, давно не брал я в руки шашек... "  –1 +/
Сообщение от pavlinux (ok) on 01-Ноя-11, 01:28 
У VPN порты от 2000 до 3000. Между ними и надо равномерно раскидывать данные в зависимости от нагрузки.
Не обрезая максимальную скорость. То есть, если никого, кроме одного линка нет, то выдавать ему по максимальной.

---

htb rate $MIN ceil $MAX;  

так чтоля?!


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Эх, давно не брал я в руки шашек... "  +/
Сообщение от rusadmin (ok) on 01-Ноя-11, 06:34 
Deleted....


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Эх, давно не брал я в руки шашек... "  +/
Сообщение от тень_pavel_simple on 01-Ноя-11, 07:33 
> У VPN порты от 2000 до 3000. Между ними и надо равномерно
> раскидывать данные в зависимости от нагрузки.
> Не обрезая максимальную скорость. То есть, если никого, кроме одного линка нет,
> то выдавать ему по максимальной.
> ---
> htb rate $MIN ceil $MAX;
> так чтоля?!

http://forum.nag.ru/forum/index.php?showtopic=61755


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Эх, давно не брал я в руки шашек... "  –1 +/
Сообщение от pavlinux (ok) on 01-Ноя-11, 07:42 
>> У VPN порты от 2000 до 3000. Между ними и надо равномерно
>> раскидывать данные в зависимости от нагрузки.
>> Не обрезая максимальную скорость. То есть, если никого, кроме одного линка нет,
>> то выдавать ему по максимальной.
>> ---
>> htb rate $MIN ceil $MAX;
>> так чтоля?!
> http://forum.nag.ru/forum/index.php?showtopic=61755

Спасибо, но уже ... :)


#!/bin/sh
TC="tc"
MAINDEV="br65545"
ALLSPEED="100000kbit"
BURST="15k"
GRANT="2kbit"
MAXSPEED="6144kbit"

function mainsetup() {
    $TC qdisc add dev $MAINDEV root handle 1: htb default 20;
    $TC class add dev $MAINDEV parent  1: classid 1:1 htb rate $ALLSPEED burst $BURST;
    $TC class add dev $MAINDEV parent 1:1 classid 1:10 htb rate $GRANT ceil $MAXSPEED burst $BURST prio 1;
    $TC class add dev $MAINDEV parent 1:1 classid 1:20 htb rate $MAXSPEED ceil 9900kbit burst $BURST prio 0;
    $TC qdisc add dev $MAINDEV parent 1:10 handle 10: sfq perturb 10;
    $TC qdisc add dev $MAINDEV parent 1:20 handle 20: sfq perturb 10;
}
function mainclass() {
    VPNPORTS="1 2 3 4 5 6"
    TCP32="tc filter add dev $MAINDEV protocol ip parent 1:0 prio 1 u32"
    for i in $VPNPORTS;
    do
    $TCP32 match ip sport $i 0xffff flowid 1:10;
    done
}

function clean() {
    $TC qdisc del dev $MAINDEV root;
}

case $1 in
        start)
            mainsetup;
            mainclass;
        ;;
        stop)
            clean
        ;;
        *)
        exit 1;
esac

exit 0;


Единственное я так и не в курил про HTB burst  


Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Эх, давно не брал я в руки шашек... "  +/
Сообщение от Аноним (??) on 01-Ноя-11, 20:22 
>[оверквотинг удален]
>      ;;
>      stop)
>       clean
>      ;;
>      *)
>   exit 1;
> esac
> exit 0;
>
> Единственное я так и не в курил про HTB burst

И как шейпит? Пакеты не теряет, гарантированный канал есть?

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Эх, давно не брал я в руки шашек... "  –1 +/
Сообщение от pavlinux (ok) on 01-Ноя-11, 20:25 
>[оверквотинг удален]
>>      stop)
>>       clean
>>      ;;
>>      *)
>>   exit 1;
>> esac
>> exit 0;
>>
>> Единственное я так и не в курил про HTB burst
> И как шейпит? Пакеты не теряет, гарантированный канал есть?

Гарантированный 32kbit

# tc -s qdisc ls dev eth0


qdisc htb 1: root refcnt 2 r2q 10 default 20 direct_packets_stat 2
Sent 888758703 bytes 1311732 pkt (dropped 0, overlimits 256316 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0

qdisc sfq 10: parent 1:10 limit 127p quantum 1514b perturb 10sec
Sent 873558743 bytes 1286395 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0

qdisc sfq 20: parent 1:20 limit 127p quantum 1514b perturb 10sec
Sent 15198301 bytes 25335 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0


Мне это нужно только с целью распределения нагрузки на время скачивания апдейтов.
Так как помимо скачивания работают сами приложения, а от них трафик мизерный - от 2 до 25k раз в 10 секунд.

Но надо экспериментальным путём подбирать константы по вашу сеть.

сейчас вот так

ALLSPEED="15Mbit"
BURST="19k"
GRANT="32kbit"
MAXSPEED="256kbit"

---

Кстати, что такое overlimits у HTB ? :)
И вопрос про правильный burst так и не решён.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Эх, давно не брал я в руки шашек... "  +/
Сообщение от тень_pavel_simple on 02-Ноя-11, 14:52 

> Кстати, что такое overlimits у HTB ? :)
> И вопрос про правильный burst так и не решён.

павлин тебе не стыдно -- мануал-жеж исчерпывающий

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Эх, давно не брал я в руки шашек... "  +/
Сообщение от pavlinux (ok) on 02-Ноя-11, 23:19 
>> Кстати, что такое overlimits у HTB ? :)
>> И вопрос про правильный burst так и не решён.
> павлин тебе не стыдно -- мануал-жеж исчерпывающий

Нет чтоб напомнить, заставляешь дедушку по мануалам лазить... :-Ж

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру