Скорость в зависимости от времени суток

Технические вопросы по UTM 5.0
Ответить
Ursadon
Сообщения: 5
Зарегистрирован: Пн фев 15, 2010 12:30

Скорость в зависимости от времени суток

Сообщение Ursadon »

Добрый день.
Имеется UTM 5.2.1-007, на базе CentOS 5; MySQL 5
Шейпирование средствами tc и iptables MARK

Необходимо изменять скорость клиентов в зависимости от времени суток. Единственное что придумал - по кронтабу запускать скрипт, который вытаскивает из MySQL связки ID пользователя - ID нужного тарифа, и потом в tc изменить скорость всех классов с userID+5000.

Есть у кого-нить готовый SQL запрос для таких целей? Или альтернативное решение.

Заранее спасибо всем откликнувшимся.

UPD: SQL запрос оформил:

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

SELECT account_id FROM account_tariff_link WHERE tariff_id=6 AND is_deleted=0
Соответственно, есть ли ещё альтернативные решения?

nma
Сообщения: 8
Зарегистрирован: Пн июл 16, 2007 16:37

Сообщение nma »

Я на постгресе вытаскиваю так для этих целей. Поле tarif_month - сколько месяцев подключен ТП.

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

select users.id+5000 as user_id, dialup_service_links.login as
    ppp_login, services_data.tariff_id ,
        extract(month from age(now(),bigint_to_datetime(account_tariff_link.link_date) + interval ' 6 hour' )) as tarif_month
        from users
    join users_accounts on
    users_accounts.uid=users.id join service_links on service_links.account_id = users_accounts.account_id
    join services_data on services_data.id = service_links.service_id JOIN account_tariff_link ON
     account_tariff_link.id=service_links.tariff_link_id JOIN tariffs
    ON tariffs.id=account_tariff_link.tariff_id JOIN tariffs AS next_tariffs ON next_tariffs.id=account_tariff_link.next_tariff_id
    left join dialup_service_links
    on dialup_service_links.id=service_links.id where users.is_deleted=0 and service_links.is_deleted=0 and services_data.id in
    (1380, 1382, 1384)
    order by users.id

Ответить