Турбо режим разрешает пользователю на определённое время поднять скорость интернета. При этом провайдер может списывать дополнительные деньги за использование данной услуги.

Для включения этой функции нужно установить модуль Turbo и указать необходимые параметры в config.pl.

После включения модуля,  в пользовательском интерфейсе появляется меню TURBO Режим. В этом меню пользователь может выбрать необходимый тариф (скорость/время на которое предоставляется данный режим). Система сразу открывает доступ пользователю на запрошенной скорости. По истечению времени система понижает скорость до скорости тарифного плана.

Поддерживается:

На данный момент турбо режим поддерживается серверами доступа на базе FreeBSD, Cisco ISG и MikroTik.


Приоритет установки скорости:

Установка модуля:

cp Turbo.pm /usr/abills/Abills/mysql/


Параметры:

$conf{INTERNET_TURBO_CMD}=' ';

Внешняя команда для включения турбо режима. Запускаться после нажатия пользователем кнопки активации.

$conf{INTERNET_TURBO_MODE}=" ";Режим(мы) турбо скорости. Настраиваются в конфигурационном файле системы:

При использовании удалённых серверов доступа обязательно установите на них модуль Turbo.pm и укажите в параметрах конфигурационного файла опцию $conf{INTERNET_TURBO_MODE}.


Пример использования:

$conf{INTERNET_TURBO_MODE}="1024:3600:0:Турбо режим 1Мб. на 1 час;1024:7200:2:Турбо режим 1Мб. на 2 часа;";

Описание турбо режима (можно указывать несколько):

1024Предоставляемая скорость. Только фиксированная.
3600 (7200)Время работы в турбо режиме. Задаётся в секундах.
0 (2)Сумма, которую нужно снять за предоставление данного режима. Сумма снимается с аккаунта пользователя в момент активации режима.
Турбо режим 1Мб. на 1 час (Турбо режим 1Мб. на 2 часа)Описание сервиса.



Пример для linux/freebsd NAS

$conf{INTERNET_TURBO_CMD}='/usr/local/bin/sudo /usr/abills/libexec/linkupdown down getif %LOGIN% %IP%; /usr/local/bin/sudo /usr/abills/libexec/linkupdown up getif %LOGIN% %IP%';


Пример для MikroTik

$conf{INTERNET_TURBO_CMD}='/usr/abills/libexec/linkupdown down getif %LOGIN% %IP% NAS_MNG_IP_PORT=%NAS_MNG_IP_PORT% NAS_MNG_USER=%NAS_MNG_USER%; /usr/abills/libexec/linkupdown up getif %LOGIN% %IP% NAS_MNG_IP_PORT=%NAS_MNG_IP_PORT% NAS_MNG_USER=%NAS_MNG_USER%';


Возврат к основной скорости производится путем переподключения абонента, после завершения времени турбо режима. Для этого необходимо в crontab прописать запуск autozh.pl со следующими параметрами (рекомендуется не чаще чем каждые 15 минут):

*/15 * * * * root  /usr/abills/misc/autozh.pl TURBO=1 HANGUP=1


альтернативный контроля версии
Turbo controller

/usr/abills/libexec/billd internet_turbo


Отображение в портале абонента и администратора:
Интерфейс «Turbo Режим» отображается в пунктах меню Информация о пользователе и Интернет+.

1Выберите режим
2Активируйте выбранный режим

Окно с информацией об активированном «Turbo Режим» 


Дополнительно для MikroTik:

При использовании MikroTik с Simple Queue (dynamic), изменение скорости "на лету" приводит к изменению очереди на static (очередь test_net).

При отключении PPP Interface, очередь остается в списке (как invalid) с target=unknow и PPPoE соединение не сможет установиться повторно, т.к. не нельзя добавить очередь с таким названием (Ошибка: could not add queue: already have such name (6)).

Для решения данной проблемы необходимо удалить данную очередь из списка. В автоматическом режиме можно использовать скрипт, указав его в Scheduler c интервалом равным минимальному времени турбо режима:

{
:local qname;
:local qtarget;

:foreach i in=[/queue simple find where name  ~"<pp.*>"] do={
    :set qname ([/queue simple get $i name])
    :set qtarget ([/queue simple get $i target])
    if ("$qname" = "$qtarget") do={
        } else={
            [/queue simple remove $qname];
            [/log info "=== QUEUE $qname has been removed ==="];
    }
  }
}

Начиная с версии ROS 6.33rc7, появилась возможность менять скорость "на лету" посредством COA

пример с командной строки linux, где окончание строки именно такое coa и после указывается пароль от радиуса на микротике

/bin/echo "User-Name=test_user,Acct-Session-Id=a1b2c3,Framed-IP-Address=xxx.xxx.xxx.xxx,Mikrotik-Rate-Limit=30M" | /usr/bin/radclient -q NAS_IP:PORT coa [password]

/bin/echo "User-Name=test_user,Acct-Session-Id=a1b2c3,Framed-IP-Address=172.16.105.108,Mikrotik-Rate-Limit=30M" | /usr/bin/radclient -q 10.0.0.1:1700 coa [password]
Можно просто по Session-Id
/bin/echo "Acct-Session-Id=81100004,Mikrotik-Rate-Limit=500M" | /usr/bin/radclient -q 10.0.0.1:1700 coa [password]
  • Нет меток