====== Полисинг по сессии и переопределение классов трафика ======
{{indexmenu_n>4}}
[[dpi:dpi_components:dpiui:user_guide:ssg_control_section:services:session_policing|Настройка сессионного полисинга через GUI]]
Полисинг по сессии и переопределение классов трафика реализуется с помощью подключения 18 услуги для Абонента и Виртуального канала (vChannel).
Услуга расширяет возможности полисинга путем определения скорости трафика для конкретной сессии. Так же возможно переопределение класса трафика для конкретного Абонента или Виртуального канала.
Напомним, что глобальная разметка классов трафика описана в разделе [[dpi:dpi_options:opt_priority|]]. \\
Важно: Приоритет по направлению переопределяет приоритет по протоколу, таким образом если трафик уже имеет [[dpi:dpi_options:opt_priority:priority_config_as|]], то данная услуга не переопределит класс трафика.
===== Конфигурация СКАТ =====
Услуга **требует дополнительной оперативной памяти** (по сравнению со стандартными требованиями), которая резервируется настройкой в **/etc/dpi/fastdpi.conf**:
support_service_18=1
Для применения настроек необходимо выполнить рестарт сервиса: **service fastdpi restart**
**СКАТ 12.4+** Для виртуальных каналов DSCP определяется **только** если установлен параметр ''support_service_18''!
===== Настройка и управление услугой =====
==== Настройка полисинга по сессии ====
Необходимо создать файл с описанием скорости для конкретного протокола и конвертировать с помощью утилиты lst2tbf.
* rate - скорость полисинга по сессии для исходящего трафика
* inbound.rate - скорость полисинга по сессии для входящего трафика
* burst - кратковременное превышение rate
* inbound.burst - кратковременное превышение inbound.rate
speedtest tbf rate 16mbit inbound.rate 16mbit
bittorrent tbf rate 8Mbit
TCP Unknown tbf rate 8Mbit burst 1Mbit inbound.rate 8Mbit inbound.burst 1Mbit
cat tbf_prof_1.txt|lst2tbf /tmp/tbf_prof_1.tbf
**[СКАТ v13+]** во входных файлах утилиты lst2tbf появилась возможность добавлять комментарии (#) и пустые линии.
Обратное конвертирование tbf2lst /tmp/tbf_prof_1.tbf
==== Настройка переопределение классов трафика ====
Необходимо создать файл с описанием классов трафика с помощью утилиты lst2dscp.
[[dpi:dpi_options:opt_statistics:statistics_info|Полный список протоколов.]]\\
Значение DSCP задается [[dpi:dpi_options:opt_priority:dscp_table|в числовом (10-,16- или 8-ричном) формате или с помощью текстовой аббревиатуры.]]
Ключевое слово означает:
* drop - пакеты дальше передавать не нужно (их нужно отбрасывать)\\
* keep - значение приоритета изменять не нужно, т.е. сохранить его текущее значение (обычно 0)\\
* default - означает "для всех остальных протоколов" и его позволяет существенно упростить и сократить процесс создания конфигурационного файла
Процедура создания файла ''dscp_prof_1.dscp'':
speedtest cs1
default keep
cat dscp_prof_1.txt|lst2dscp /tmp/dscp_prof_1.dscp
Обратное конвертирование: ''dscp2lst /tmp/dscp_prof_1.dscp''
==== Создание профиля услуги ====
fdpi_ctrl load profile --service 18 --profile.name test_dscp --profile.json '{ "dscp" : "/tmp/dscp_prof_1.dscp", "tbf" : "/tmp/tbf_prof_1.tbf" }'
Всегда необходимо указывать путь к обоим файлам, даже в случае если необходимо только задать полисинг по сессии или сделать только переопределение классов трафика. Указывайте пустой файл, если настройка не требуется.
==== Подключение профиля услуги ====
Для абонента:
fdpi_ctrl load --service 18 --profile.name test_dscp --ip 10.10.10.10
fdpi_ctrl load --service 18 --profile.name test_dscp --login DEMO
Для виртуального канала (vChannel):
fdpi_ctrl load --service 18 --profile.name test_dscp --vchannel 1
==== Удаление профиля услуги ====
Для абонента:
fdpi_ctrl del --service 18 --profile.name test_dscp --ip 10.10.10.10
fdpi_ctrl del --service 18 --profile.name test_dscp --login DEMO
Для виртуального канала (vChannel):
fdpi_ctrl del --service 18 --profile.name test_dscp --vchannel 1
==== Вывод информации по профилям услуги ====
Получить список IP-адресов, подключенных к 18 услуге
fdpi_ctrl list all --service 18
Получить информацию по конкретному IP/LOGIN/vChannel
fdpi_ctrl list --service 18 --ip 192.168.0.1
fdpi_ctrl list --service 18 --login DEMO
fdpi_ctrl list --service 18 --vchannel 1
Получить список всех профилей услуги 18
fdpi_ctrl list all profile --service 18
==== Увеличение количества профилей ====
При достижении ограничения по количеству профилей возникает ошибка:
ierr_code=5 (too many profiles) : 'service_18' : too many records, num_allocs=16, max_num_profies=16/16
Для увеличения количества доступных профилей необходимо установить в конфигурации DPI следующий параметр:
max_profiles_serv18=<необходимое кол-во профилей>