Настройка [Документация VAS Experts]

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_conf [2020/02/05 15:43] – ↷ Страница перемещена из dpi:dpi_options:base_functionality:opt_bandwidth_mgmt:bandwidth_conf в dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_conf lexx26dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_conf [2024/09/26 15:29] (текущий) – внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 ====== Настройка ====== ====== Настройка ======
 +{{indexmenu_n>2}}
 +<note tip>Установка расписания для тарифных планов: {{youtube>NcFYd_e_8UY?}}</note>
 +Варианты подключения абонентского полисинга:
 +  - Индивидуальный профиль полисинга: подключается без указания профиля, создается индивидуальный профиль для каждого абонента.
 +  - [[dpi:dpi_components:platform:subscriber_management:subsman_profiles|Именованный профиль полисинга: подключается с указанием имени профиля]]
 +  - [[dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_json|Профиль полисинга в формате JSON]]
 +<note important>Для BRAS необходимо использовать именованные профили **имя, которых указывается в атрибутах Radius-Accept.**</note>
 +Включаем работу внутренней базы данных пользователей в **///etc/dpi/fastdpi.conf//** 
 +<code>
 +udr=1
 +</code>
 +Для применения изменений необходимо сделать рестарт сервиса: **service fastdpi restart**
 +===== Индивидуальный профиль полисинга =====
 +Для каждой из политик управления полосой создается конфигурационный файл, в котором задаются ограничения на доступную полосу в зависимости от класса полисинга. 
  
 +Применение настроенных политик по отношению к абонентам осуществляется с помощью утилиты [[dpi:dpi_components:platform:subscriber_management|fdpi_ctrl]].
 +
 +Формат команды:
 +<code>
 +fdpi_ctrl команда --policing файл_описания_полисинга [список_IP]
 +</code>
 +Подробнее синтаксис команд и способы задания IP адресов описаны в разделе  [[dpi:dpi_components:platform:subscriber_management:subsman_cmd|Команды управления]]\\
 +
 +==== Пример 1: Ограничение торрент ====
 +
 +<note tip>Для продвинутых пользователей: Рекомендуем ознакомиться с разделом [[dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_conf|Управление исходящим трафиком через обратную связь]].</note>
 +
 +Планируем предложить абонентам тарифный план на 10 Mbps, в котором торренты ограничены скоростью 3 Mbps.
 +
 +Для этого торренты должны быть выделены в отдельный класc, как описано в разделе [[dpi:dpi_options:opt_priority:priority_config|]]. 
 +<code>
 +default      cs0
 +bittorrent   cs1         
 +</code>
 +В данном примере разделим трафик по протоколам всего на 2 класса, где
 +  * cs0 - соответствует DSCP=0 QOS(IPP)=0 Best Effort
 +  * cs1 - соответствует DSCP=8 QOS(IPP)=1 Priority
 +
 +Создадим файл конфигурации rateplan_1.cfg, в котором для каждого из 8 доступных классов (групп) протоколов задаем ограничение на доступную им полосу. Используем HTB (дисциплина с заимствованием свободной полосы) и для торрентов указываем, что размер полосы ограничен 3mbit, но не меньше чем 1mbit. В отличие от торрентов прочий трафик может занимать всю доступную полосу. 
 +<note warning>Сумма скорости по классам должна быть меньше, чем root rate.</note>
 +<code ini>
 +htb_inbound_root=rate 10mbit 
 +htb_inbound_class0=rate 8bit ceil 10mbit
 +htb_inbound_class1=rate 1mbit ceil 3mbit 
 +htb_inbound_class2=rate 8bit ceil 10mbit
 +htb_inbound_class3=rate 8bit ceil 10mbit
 +htb_inbound_class4=rate 8bit ceil 10mbit
 +htb_inbound_class5=rate 8bit ceil 10mbit
 +htb_inbound_class6=rate 8bit ceil 10mbit
 +htb_inbound_class7=rate 8bit ceil 10mbit
 +htb_root=rate 10mbit 
 +htb_class0=rate 8bit ceil 10mbit
 +htb_class1=rate 1mbit ceil 3mbit 
 +htb_class2=rate 8bit ceil 10mbit
 +htb_class3=rate 8bit ceil 10mbit
 +htb_class4=rate 8bit ceil 10mbit
 +htb_class5=rate 8bit ceil 10mbit
 +htb_class6=rate 8bit ceil 10mbit
 +htb_class7=rate 8bit ceil 10mbit
 +</code>
 +  * htb_inbound_root, htb_root - корневые классы, в которых указан общий размер полосы для входящего и исходящего трафика и в рамках которых проводится перераспределение полосы  
 +  * rate - минимальный размер полосы 
 +  * ceil - максимальный размер полосы, который можно заимствовать из корневого класса если полоса свободна 
 +  * class2-7 фактически не будут использоваться, так как у нас в конфигурации определено только 2 класса 0 и 1
 +
 +
 +
 +Теперь абонентам с данным тарифом назначаем сконфигурированную политику.\\
 +К IP адресам из файла:
 +<code>
 +fdpi_ctrl load --policing rateplan_1.cfg --file subscribers_with_rateplan_1.txt
 +</code>
 +
 +К абонентам из всего диапазона по CIDR:
 +<code>
 +fdpi_ctrl load --policing rateplan_1.cfg --cidr 10.10.10.0/24
 +</code>
 +К абоненту по IP адресу:
 +<code>
 +fdpi_ctrl load --policing rateplan_1.cfg --ip 10.10.10.10
 +</code>
 +К абоненту с созданным Login:
 +<code>
 +fdpi_ctrl load --policing rateplan_1.cfg --login DEMO
 +</code>
 +
 +==== Пример 2: Максимальная скорость для пиринга ====
 +Выделение полосы для некоторых классов (например, содержащих пиринговый трафик) можно вывести из HTB иерархии, если в описании указать для них ключевое слово **static**. В этом случае ограничение для данного класса будет действовать независимо, без привязки к htb_root. 
 +Например, в примере выше зададим отдельное ограничение в 100 Мбит/c для класса 6. 
 +<code ini>
 +htb_inbound_root=rate 10mbit 
 +htb_inbound_class0=rate 8bit ceil 10mbit
 +htb_inbound_class1=rate 1mbit ceil 3mbit 
 +htb_inbound_class2=rate 8bit ceil 10mbit
 +htb_inbound_class3=rate 8bit ceil 10mbit
 +htb_inbound_class4=rate 8bit ceil 10mbit
 +htb_inbound_class5=rate 8bit ceil 10mbit
 +htb_inbound_class6=rate 100mbit static
 +htb_inbound_class7=rate 8bit ceil 10mbit
 +htb_root=rate 10mbit 
 +htb_class0=rate 8bit ceil 10mbit
 +htb_class1=rate 1mbit ceil 3mbit 
 +htb_class2=rate 8bit ceil 10mbit
 +htb_class3=rate 8bit ceil 10mbit
 +htb_class4=rate 8bit ceil 10mbit
 +htb_class5=rate 8bit ceil 10mbit
 +htb_class6=rate 100mbit static
 +htb_class7=rate 8bit ceil 10mbit
 +</code>
 +
 +==== Пример 3: Назначение полисинга для мультипользователя ====
 +
 +Назначим тарифный план из примера 1 абоненту с несколькими IP 
 +
 +
 +Закрепляем за корпоративным абонентом все его IP
 +<code>
 +fdpi_ctrl load --bind_multi --user OOO_PizzaJohnes:192.168.0.1-192.168.0.5,192.168.1.10-192.168.1.25
 +</code>
 +Списком IP абонента можно управлять [[dpi:dpi_components:platform:subscriber_management:dpi_ipmulti|динамически]] (т.е. добавлять новые или удалять IP)
 +
 +Назначаем ему ограничение полосы в соответствии с тарифным планом
 +<code>
 +fdpi_ctrl load --policing rateplan_1.cfg --login OOO_PizzaJohnes
 +</code>