Accounting — учет трафика (услуга 9) [Документация VAS Experts]

Различия

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

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

Следующая версия
Предыдущая версия
dpi:bras_bng:radius_integration:radius_accounting [2024/09/26 15:29] – создано - внешнее изменение 127.0.0.1dpi:bras_bng:radius_integration:radius_accounting [2024/12/08 14:43] (текущий) elena.krasnobryzh
Строка 1: Строка 1:
-====== Accounting — учет трафика ======+{{tag>Услуги "Услуга 9" "RADIUS accounting" "Сбор Netflow для биллинга"}} 
 +====== Accounting — учет трафика (услуга 9)======
 {{indexmenu_n>3}} {{indexmenu_n>3}}
  
-FastPCRF поддерживает Radius accounting. FastDPI пропускает абонентский трафик и генерирует статистику по Netflow в сторону PCRF, который в свою очередь меняет формат и отправляет на Radius.   +FastPCRF поддерживает RADIUS accounting. FastDPI пропускает абонентский трафик и генерирует статистику по Netflow в сторону PCRF, который в свою очередь меняет формат и отправляет на RADIUS.   
-Для активации Radius accounting в **''/etc/dpi/fastdpi.conf''** необходимо добавить следующие параметры:+Для активации RADIUS accounting в **''/etc/dpi/fastdpi.conf''** необходимо добавить следующие параметры:
   * Разрешение аккаунтинга: <code bash>enable_acct=1</code>   * Разрешение аккаунтинга: <code bash>enable_acct=1</code>
  
-<note important>В этом случае данные для биллинга по объему потребляемого трафика пользователя будут передаваться по протоколу Radius Accounting через fastPCRF, а не через Netflow.</note>+<note important>В этом случае данные для биллинга по объему потребляемого трафика пользователя будут передаваться по протоколу RADIUS Accounting через fastPCRF, а не через Netflow.</note>
  
   * Необходимо активировать [[dpi:dpi_options:opt_statistics:statistics_settings#общие_настройки_экспрота_статистики|Netflow-статистику]] для биллинга, например: <code bash>   * Необходимо активировать [[dpi:dpi_options:opt_statistics:statistics_settings#общие_настройки_экспрота_статистики|Netflow-статистику]] для биллинга, например: <code bash>
Строка 21: Строка 22:
   * Пользователю должна быть подключена [[dpi:dpi_components:platform:dpi_billing|услуга 9]] — экспорт статистики для биллинга. Это значит, что [[dpi:bras_bng:radius_integration:radius_auth_server_integration:radius_auth_response|ответ на Access-Request]] должен содержать атрибут ''VasExperts-Enable-Service="9:on"''   * Пользователю должна быть подключена [[dpi:dpi_components:platform:dpi_billing|услуга 9]] — экспорт статистики для биллинга. Это значит, что [[dpi:bras_bng:radius_integration:radius_auth_server_integration:radius_auth_response|ответ на Access-Request]] должен содержать атрибут ''VasExperts-Enable-Service="9:on"''
  
-<note important>**Для авторизации по DHCP:** Accounting по IPv4 и IPv6-адресам абонента передается в разных сессиях. Если абоненту выдан IPv4-адрес и IPv6-подсеть, то accounting по IPv4 будет передаваться в одной сессии, а по IPv6 (включая PD-префикс) — в другой.\\ **Для PPPoE авторизации**, при условии, что выдача IPv4 и IPv6 была сделана через один Radius запрос accounting будет передаваться в одной сессии.</note>+<note important>**Для авторизации по DHCP:** Accounting по IPv4 и IPv6-адресам абонента передается в разных сессиях. Если абоненту выдан IPv4-адрес и IPv6-подсеть, то accounting по IPv4 будет передаваться в одной сессии, а по IPv6 (включая PD-префикс) — в другой.\\ **Для PPPoE авторизации**, при условии, что выдача IPv4 и IPv6 была сделана через один RADIUS запрос accounting будет передаваться в одной сессии.</note>
  
 ===== Дополнительные настройки ===== ===== Дополнительные настройки =====
-**[СКАТ 8.1+]** При старте fastPCRF шлет Radius-серверу запрос Accounting-Request с атрибутом ''Acct-Status-Type=Accounting-On'', при завершении — Accounting-Request с атрибутом ''Acct-Status-Type=Accounting-Off''. В этих запросах также передаются NAS-атрибуты, идентифицирующие NAS-сервер, и атрибут ''Acct-Session-Id=0''. Accounting-On передается также в случае переключения на резервный Radius-сервер.+**[СКАТ 8.1+]** При старте fastPCRF шлет RADIUS-серверу запрос Accounting-Request с атрибутом ''Acct-Status-Type=Accounting-On'', при завершении — Accounting-Request с атрибутом ''Acct-Status-Type=Accounting-Off''. В этих запросах также передаются NAS-атрибуты, идентифицирующие NAS-сервер, и атрибут ''Acct-Session-Id=0''. Accounting-On передается также в случае переключения на резервный RADIUS-сервер.
  
 **[CKAT 8.1+]** Некоторые биллинговые системы (например, ЛанБиллинг) требуют, чтобы запросы авторизации и аккаунтинг были синхронизированы: прежде чем послать Access-Request нужно, чтобы текущая сессия аккаунтинга была закрыта. СКАТ по умолчанию не синхронизирует аккаунтинг и авторизацию. Чтобы включить синхронизацию, установите в fastpcrf.conf параметр ''acct_auth_sync=1''. **[CKAT 8.1+]** Некоторые биллинговые системы (например, ЛанБиллинг) требуют, чтобы запросы авторизации и аккаунтинг были синхронизированы: прежде чем послать Access-Request нужно, чтобы текущая сессия аккаунтинга была закрыта. СКАТ по умолчанию не синхронизирует аккаунтинг и авторизацию. Чтобы включить синхронизацию, установите в fastpcrf.conf параметр ''acct_auth_sync=1''.
  
-**[СКАТ 9.5.3+]** Задержка в секундах при синхронизации acct и auth (ЛанБиллинг) При включенном режиме acct_auth_sync СКАТ, получив подтверждение от Радиуса (биллинга), что Acct-Stop принят, немедленно шлет Access-Request. В некоторых случаях между подтверждением Acct-Stop и отправкой Access-Request необходимо вставить небольшую задержку, чтобы все переходные процессы в биллинге прошли и Access-Request был успешно обработан и получен Access-Accept. Данный параметр определяет величину этой задержки в секундах. **По умолчанию = 0 (нет задержки).** +**[СКАТ 9.5.3+]** Задержка в секундах при синхронизации acct и auth (ЛанБиллинг) При включенном режиме acct_auth_sync СКАТ, получив подтверждение от RADIUS (биллинга), что Acct-Stop принят, немедленно шлет Access-Request. В некоторых случаях между подтверждением Acct-Stop и отправкой Access-Request необходимо вставить небольшую задержку, чтобы все переходные процессы в биллинге прошли и Access-Request был успешно обработан и получен Access-Accept. Данный параметр определяет величину этой задержки в секундах. **По умолчанию = 0 (нет задержки).** 
 <code bash> <code bash>
 acct_auth_sync_delay=0 acct_auth_sync_delay=0
Строка 44: Строка 45:
  
 {{anchor:acct-pending-queue}} {{anchor:acct-pending-queue}}
-Инициатором начала/завершения аккаунтинг-сессии в подавляющем числе случаев является fastDPI, но внутренняя БД аккаунтинга ведется в fastPCRF: fastDPI поставляет в эту БД сырые данные по потреблению трафика абонентом, тогда как fastPCRF ведет агрегацию этих данных и преобразует их в формат Radius Accounting'а. Взаимодействие между fastDPI и fastPCRF ведется посредством обмена внутренними сообщениями по сети (закрытый протокол). Потеря внутренних сообщений в случае аккаунтинга может приводить, например, к бесконечной аккаунтинг-сессии (потерян stop), или к тому, что аккаунтинг-сессии не будет, хотя абонент активно потребляет трафик (потерян start).+Инициатором начала/завершения аккаунтинг-сессии в подавляющем числе случаев является fastDPI, но внутренняя БД аккаунтинга ведется в fastPCRF: fastDPI поставляет в эту БД сырые данные по потреблению трафика абонентом, тогда как fastPCRF ведет агрегацию этих данных и преобразует их в формат RADIUS Accounting'а. Взаимодействие между fastDPI и fastPCRF ведется посредством обмена внутренними сообщениями по сети (закрытый протокол). Потеря внутренних сообщений в случае аккаунтинга может приводить, например, к бесконечной аккаунтинг-сессии (потерян stop), или к тому, что аккаунтинг-сессии не будет, хотя абонент активно потребляет трафик (потерян start).
 Для предотвращения потери сообщений старта/завершения аккаунтинга, посылаемых от fastDPI к fastPCRF, в fastDPI предусмотрена очередь, призванная сгладить кратковременную потерю связи между fastDPI и fastPCRF.  Для предотвращения потери сообщений старта/завершения аккаунтинга, посылаемых от fastDPI к fastPCRF, в fastDPI предусмотрена очередь, призванная сгладить кратковременную потерю связи между fastDPI и fastPCRF. 
 Данная очередь регулируется следующими параметрами в fastdpi.conf: Данная очередь регулируется следующими параметрами в fastdpi.conf:
Строка 74: Строка 75:
 <note important>При рестарте или остановке fastPCRF все текущие аккаунтинг-сессии пропадают.</note> <note important>При рестарте или остановке fastPCRF все текущие аккаунтинг-сессии пропадают.</note>
  
-<note important>При рестарте fastDPI также обнуляются все счетчики трафика. При старте fastDPI на Радиус посылается сообщение Accounting-On с NAS-атрибутами, идентифицирующими этот fastDPI; при штатной остановке fastDPI на Радиус посылается сообщение Accounting-Off с NAS-атрибутами fastDPI.</note>+<note important>При рестарте fastDPI также обнуляются все счетчики трафика. При старте fastDPI на RADIUS посылается сообщение Accounting-On с NAS-атрибутами, идентифицирующими этот fastDPI; при штатной остановке fastDPI на RADIUS посылается сообщение Accounting-Off с NAS-атрибутами fastDPI.</note>
  
 ===== Рестарт fastDPI ===== ===== Рестарт fastDPI =====
Строка 82: Строка 83:
  
 В **СКАТ 9.5.3+** возможны две стратегии обработки, регулируемые параметром fastpcrf.conf: В **СКАТ 9.5.3+** возможны две стратегии обработки, регулируемые параметром fastpcrf.conf:
-  * 0 — при стопе/старте fastDPI на Радиус слать только Accounting-Off/Accounting-On с указанием NAS-атрибутов fastDPI-сервера, сессии для данного fastDPI-сервера останавливаются без отправки Acct-Stop; +  * 0 — при стопе/старте fastDPI на RADIUS слать только Accounting-Off/Accounting-On с указанием NAS-атрибутов fastDPI-сервера, сессии для данного fastDPI-сервера останавливаются без отправки Acct-Stop; 
-  * 1 — при стопе/старте fastDPI на Радиус слать Acct-Stop для всех сессий от этого fastDPI. Accounting-Off/Accounting-On для этого fastDPI не слать.\\ **Значение по умолчанию: 1.**+  * 1 — при стопе/старте fastDPI на RADIUS слать Acct-Stop для всех сессий от этого fastDPI. Accounting-Off/Accounting-On для этого fastDPI не слать.\\ **Значение по умолчанию: 1.**
 <code bash> <code bash>
 acct_fastdpi_session_stop=1 acct_fastdpi_session_stop=1
 </code> </code>
  
-По умолчанию (''acct_fastdpi_session_stop=1''), при старте/стопе fastDPI для каждой активной сессии отправляется Acct-Stop. Это приводит к большой нагрузке на Radius-сервер. +По умолчанию (''acct_fastdpi_session_stop=1''), при старте/стопе fastDPI для каждой активной сессии отправляется Acct-Stop. Это приводит к большой нагрузке на RADIUS-сервер. 
-Поэтому добавлена вторая стратегия (''acct_fastdpi_session_stop=0''): посылать только Accounting-On при старте fastDPI и Accounting-Off при стопе fastDPI. Тонким местом данной стратегии является идентификация источника сообщения Acct-On/Acct-Off: Radius-сервер должен понять, какие сессии следует закрывать по Acct-On/Acct-Off, а какие оставить (актуально для конфигураций, когда есть один fastPCRF и несколько fastDPI). Это регулируется параметрами:+Поэтому добавлена вторая стратегия (''acct_fastdpi_session_stop=0''): посылать только Accounting-On при старте fastDPI и Accounting-Off при стопе fastDPI. Тонким местом данной стратегии является идентификация источника сообщения Acct-On/Acct-Off: RADIUS-сервер должен понять, какие сессии следует закрывать по Acct-On/Acct-Off, а какие оставить (актуально для конфигураций, когда есть один fastPCRF и несколько fastDPI). Это регулируется параметрами:
  
 ✔ для каждого fastDPI-сервера (опция [[dpi:bras_bng:radius_integration:radius_auth_fastpcrf_setup|fdpi_server]] в fastpcrf.conf) должны быть указаны уникальные ''attr_nas_ip'' и ''attr_nas_id''; ✔ для каждого fastDPI-сервера (опция [[dpi:bras_bng:radius_integration:radius_auth_fastpcrf_setup|fdpi_server]] в fastpcrf.conf) должны быть указаны уникальные ''attr_nas_ip'' и ''attr_nas_id'';
Строка 95: Строка 96:
 ✔ для идентификации fastPCRF (который при старте/стопе также шлет Acct-On/Acct-Off) следует использовать параметры ''radius_attr_nas_ip_address'' и ''radius_attr_nas_id'' конфигурационного файла fastpcrf.conf. ✔ для идентификации fastPCRF (который при старте/стопе также шлет Acct-On/Acct-Off) следует использовать параметры ''radius_attr_nas_ip_address'' и ''radius_attr_nas_id'' конфигурационного файла fastpcrf.conf.
  
-Действия Radius-сервера при приеме Acct-On/Acct-Off:+Действия RADIUS-сервера при приеме Acct-On/Acct-Off:
   * если NAS-атрибуты (NAS-Identifier и/или NAS-IP-Address) относятся к fastDPI — следует закрыть все acct-сессии, инициированные данным fastDPI;   * если NAS-атрибуты (NAS-Identifier и/или NAS-IP-Address) относятся к fastDPI — следует закрыть все acct-сессии, инициированные данным fastDPI;
   * если NAS-атрибуты идентифицируют fastPCRF — надо закрыть все активные acct-сессии (все сессии от fastDPI, которые обслуживаются данным fastPCRF).   * если NAS-атрибуты идентифицируют fastPCRF — надо закрыть все активные acct-сессии (все сессии от fastDPI, которые обслуживаются данным fastPCRF).
Строка 119: Строка 120:
 ''acct_stop_reason_transfer_session_id'' — передача sessionId другому IP\\ ''acct_stop_reason_transfer_session_id'' — передача sessionId другому IP\\
 ''acct_stop_reason_fastdpi_acct_on'' — fastDPI прислал Acct-On/Acct-Off\\ ''acct_stop_reason_fastdpi_acct_on'' — fastDPI прислал Acct-On/Acct-Off\\
-''acct_stop_reason_suspended'' — сессия переведена в состояние suspended по отваливанию Радиуса\\+''acct_stop_reason_suspended'' — сессия переведена в состояние suspended по отваливанию RADIUS\\
  
 ''acct_stop_reason_ppp_changed_IPv6_prefix'' — ppp Pool DHCPv6 Renew вернул другой префикс\\ ''acct_stop_reason_ppp_changed_IPv6_prefix'' — ppp Pool DHCPv6 Renew вернул другой префикс\\
 ''acct_stop_reason_ppp_missing_IPv6_prefix'' — ppp Pool DHCPv6 Renew вообще не вернул префикс\\ ''acct_stop_reason_ppp_missing_IPv6_prefix'' — ppp Pool DHCPv6 Renew вообще не вернул префикс\\