{{indexmenu_n>18}}
======Rating group, Tethering, Volume Qoutas======
DPI помечает каждый новый flow протоколом из [[dpi:dpi_options:protocols|списка]]. Протоколы группируются в [[dpi:dpi_options:opt_bandwidth_mgmt|классы трафика]] для применения полисинга и разметки DCSP.
Также применяется группировка протоколов в Rating group с учетом тетеринга или без. Тетеринг определяется на основе TTL в исходящем трафике (от абонента). С участием Rating group содаются профили услуг, в которых описываются квоты по объему с указанием действия при исчерпании квоты (block, report) и полисинг.
18 услуга описывает группировку протоколов по классам трафика (cs) и рейтинг группам (rg).
20 услуга описывает полисинг, квоты по объему, действия для рейтинг групп (rg).
Профили 18 и 20 услуги далее назначаются на IP, Login (IMSI).
===== Настройка =====
* Создание 18 и 20 профилей **требует дополнительной оперативной памяти** по сравнению со стандартными требованиями, которая резервируется настройкой в ''/etc/dpi/fastdpi.conf'': support_service_18=1 ''0'' (по умолчанию) — разметка через 18 профиль отключена
* ''max_profiles_serv18'' — настройка максимального количества профилей 18 услуги.\\ Значение по умолчанию: ''16''
* Указать количество рейтинг групп (rg), которые будут описываться. rating_group_count=10 \\ Значение по умолчанию: ''0'' — RG отключены
* ''max_profiles_serv20'' — настройка максимального количества уникальных профилей. Один профиль может быть назначен множетсву абонентов. \\ Значение по умолчанию: ''32''
* В параметре ''tethering_ttl_allowed = 128:64'' указывается список допустимых значений TTL для трафика от абонента, которые не считаются тетерингом. Значения перечисляются через ':'. Количество значений — до 256 (0-255). Данный параметр определяется глобально на DPI. Профилирование на абонента в road map.
Для применения конфигурации необходимо выполнить рестарт сервиса:
service fastdpi restart
=====Настройка классов трафика, рейтинг групп с учетом тетеринга (18 услуга)=====
[[dpi:dpi_options:opt_shaping:shaping_session|Подробное описание 18 услуги]]
- Подготовить текстовый файл ''example.txt'': http cs0 teth1 rg1
https cs0 teth1 rg1
http cs0 teth2 rg2
https cs0 teth2 rg2
dns cs1 teth1 rg1
dns cs1 teth2 rg2
default cs7 teth0 rg3 Описание параметров:
* teth0 — нет контроля tethering (default)
* teth1 — есть контроль tethering: tethering присутствует
* teth2 — есть контроль tethering: tethering отсутствует\\ \\ rgN, задает номер рейтинг группы:
* rg0 default (rg не установлена)
* rg1 установлена rg=1\\ ..
* rg65535, максимальное количество рейтинг групп \\ \\ :!: **В данном примере по http, https протоколам отслеживается тетеринг и в зависимости от этого назначается соответствующая rg. Отметим, что класс полисинга cs один и тот же, но rg разные в зависимости от TTL. Аналогично по dns протоколу. По ВСЕМ остальным протоколам (default) нет контроля тетеринга и указана отдельная rg.**
- Конвертировать во внутренний формат: cat example.txt|lst2dscp /tmp/example.bin Обратная конвертация для проверки: dscp2lst /tmp/example.bin
- Создать профиль 18 услуги и назначить абоненту: fdpi_ctrl load profile --service 18 --profile.name test_dscp --profile.json '{ "dscp" : "/tmp/example.bin" }'
fdpi_ctrl load --service 18 --profile.name test_dscp --login test_subs
- Проверить назначение услуги: fdpi_ctrl list --service 18 --login test_subs
В трассировке ''trace_ip'' добавлено поле ''rg=N'' для определения поведения DPI для конкретного flow.
===== Настройка полисинга, квоты по объему и действия для рейтинг групп (rg) (20 услуга)=====
- Подготовить текстовый файл, в котором для каждой рейтинг-группы прописать TBF-полисинг, квоту и действие по достижении квоты: rg1 tbf rate 1Mbit burst 1Mbit inbound.rate 8Mbit inbound.burst 1Mbit quota 100MB report
rg2 tbf rate 8Mbit burst 1Mbit inbound.rate 8Mbit inbound.burst 1Mbit quota 1GB block :!: **В данном примере описаны две рейтинг группы. rg1 имеет upload 1Mbps / download 8Mbps и квоту на 100MB с действием по истечением квоты report. rg2 имеет upload 1Mbps / download 8Mbps и квоту на 1GB с действием по истечением квоты block.**\\ \\ ''report'' и ''block'' — это доступные действия по достижении квоты:
* ''report'' — сообщить о достижении квоты, но пропускать трафик далее;
* ''block'' — сообщить о достижении квоты и блокировать трафик по данной рейтинг-группе
- Конвертировать тектовый файл в бинарный формат: cat rg.txt | lst2rg /var/lib/dpi/rg.bin Обратная конвертация для проверки: rg2lst rg.bin > rg.txt
- Создать профиль 20 услуги и назначить абоненту: fdpi_ctrl load profile --service 20 --profile.name rg1 --profile.json '{ "rg_list" : "/var/lib/dpi/rg.bin" }'
fdpi_ctrl load --service 20 --profile.name rg1 --login test_subs