The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Динамическое распределение пропускной способности"
Отправлено DeadLoco, 12-Май-06 17:44 
>это конечно все хорошо, а вот решения проблемы... получается нет? .. а
>очень бы хотелось бы.
Решение есть, реализуется через внешний ACL. Но систему придется писать самому.

1. По cron раз в 5-10 минут подбиваем статистику по каждому юзеру на основании логов сквида.
2. На основании скачанных объемов проставляем каждому юзеру рейтинг в рейтинговом файле.
3. При обращении к сквиду тот делает запрос ко внешнему ACL-процессу, который читает рейтинговый файл и возвращает Ok/Err.

    external_acl_type RATE1 "%SRC" /usr/local/squid/rate1
    external_acl_type RATE2 "%SRC" /usr/local/squid/rate2
    external_acl_type RATE3 "%SRC" /usr/local/squid/rate3
    external_acl_type RATE4 "%SRC" /usr/local/squid/rate4

4. Делаем шкалу делей-пулов с ацлями вида:

    delay_access    1       allow           ALL RATE1
    delay_access    1       deny            all

    delay_access    2       allow           ALL RATE2
    delay_access    2       deny            all

    delay_access    3       allow           ALL RATE3
    delay_access    3       deny            all

    delay_access    4       allow           ALL RATE4
    delay_access    4       deny            all


Из подводных камней подобной реализации: в хелперах необходимо отключать буферизацию stdin/stdout, а также предусматривать возможность управления хелперами через прерывания - для перечитывания рейтингового файла по тому же крону.

Я решал родственную задачу на перле - вполне сносно работало.

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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