| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
| dpi:dpi_options:opt_statistics:statistics_ipfix [2026/02/03 13:54] – elena.krasnobryzh | dpi:dpi_options:opt_statistics:statistics_ipfix [2026/03/19 07:06] (текущий) – [Шаблон экспорта в формате IPFIX (Netflow v10) для протокола IPv4] atereschenko |
|---|
| {{indexmenu_n>2}} | {{indexmenu_n>2}} |
| |
| ===== Общие настройки===== | ===== Общие обязательные настройки отправки NetFlow===== |
| Включение сбора и экспорта статистики:\\ | Включение сбора и экспорта статистики:\\ |
| <code>netflow=1</code> | <code>netflow=1</code> |
| * 0 или не указано - опция отключена\\ | * 0 или не указано - опция отключена\\ |
| * 1 - экспорт статистики по протоколам (номерам портов)\\ | * 1 - экспорт статистики по протоколам (номерам портов), подробнее в разделе [[dpi:dpi_options:opt_statistics:statistics_settings|]]\\ |
| * 2 - экспорт статистики по направлениям (номерам автономных систем)\\ | * 2 - экспорт статистики по направлениям (номерам автономных систем), подробнее в разделе [[dpi:dpi_options:opt_statistics:statistics_settings|]]\\ |
| * 4 - экспорт статистики для биллинга\\ | * 4 - экспорт статистики для биллинга, подробнее в разделе [[dpi:dpi_options:opt_statistics:statistics_settings|]]\\ |
| * 8 - экспорт полной статистики по сессиям\\ | * 8 - экспорт полной статистики по сессиям, Full NetFlow в формате NetFlow v5 или IPFIX\\ |
| <note important>3 = 1 + 2 — одновременный экспорт статистики по протоколам и по направлениям (аналогично для других вариантов)\\ | <note important>Одновременный экспорт Full NetFlow и биллинговой статистики включается через битовую маску netflow=12 (8 + 4). Статистика для биллинга конвертируется в RADIUS Accounting через FastPCRF при включении enable_acct=1. [[dpi:bras_bng:radius_integration:radius_accounting|Настройка RADIUS Accounting]]</note> |
| 12 = 8 + 4 — одновременный экспорт Full NetFlow и биллинговой статистики. В частности используется дла [[dpi:bras_bng:radius_integration:radius_accounting|RADIUS Accounting]]</note> | |
| | <note warning>Нужно выделить отдельный коллектор для каждого типа, чтобы данные не смешивались!</note> |
| |
| Имя сетевого интерфейса, через который будет отправляться netflow со статистикой: | Имя сетевого интерфейса, через который будет отправляться netflow со статистикой: |
| <code>netflow_dev=eth2</code> | <code>netflow_dev=eth2</code> |
| |
| Периодичность экспорта данных (в секундах): | |
| <code>netflow_timeout=10</code> | |
| |
| Время ожидания сессии: | |
| * ''netflow_passive_timeout'' — время ожидания активности в сессии после которого, если не было активности, сессия считается завершенной и происходит передача по ней информации | |
| * ''netflow_active_timeout'' — время, через которое сообщается информация по длинным сессиям (т.е. фактически длинные сессии разбиваются на фрагменты данной продолжительности) | |
| |
| Чтобы сгладить пики и равномернее распределить нагрузку на коллектор установите настроечный параметр <code>netflow_rate_limit=60</code> где 60 это максимальный поток netflow в Мбит/c. <note important>Значение параметра следует устанавливать исходя из расчета: 6 Мбит/c на каждый 1G внешнего канала.\\ Установка недостаточной величины приведет к отбрасыванию данных уже на стороне DPI.\\ Информация об этом событии будет зафиксирована в логе **/var/log/dpi/fastdpi_alert.log**.</note> | |
| |
| <note warning>Нужно выделить отдельный коллектор для каждого типа, чтобы данные не смешивались!</note> | |
| |
| <note tip> | <note tip> |
| </note> | </note> |
| |
| =====Полный Netflow===== | <note tip>Для приема, обработки и хранения IPFIX рекомендуется использовать [[dpi:qoe_analytics|Программный продукт для сбора статистики QoE Store]] и [[dpi:dpi_components:dpiui|Графический интерфейс DPIUI2]].\\ |
| |
| IP адрес и номер порта коллектора **NetFlow с полной статистикой**, нужно выделить отдельный коллектор, чтобы данные не смешивались с другой статистикой: | Для сбора информации в формате IPFIX подойдет любой универсальных IPFIX коллектор, понимающий шаблоны, или утилита [[dpi:dpi_components:utilities:ipfixreceiver2|IPFIX Receiver]].</note> |
| <code>netflow_full_collector=192.168.0.1:9996</code> | |
| |
| \\ | ==== Пример конфигурации ==== |
| | [[dpi:qoe_analytics:implementation_administration:configuration_setup:dpi|Пример настройки описан в разделе QoE Stor: Конфигурация DPI]] |
| |
| В формате netflow5 в полной статистике сохранены оригинальные номера портов, а информация о детектированных протоколах передается в обычно неиспользуемых байтах 46-47. Если требуется проанализировать используемые протоколы, то можно установить настройку, по которой информация о протоколах будет передаваться в номере порта: | ===== Общие дополнительные настройки отправки NetFlow===== |
| <code>netflow_full_port_swap=1</code> | Периодичность экспорта данных (в секундах): |
| Для совместимости со старыми коллекторами эта настройка действует и для формата IPFIX, но использовать ее совместно с IPFIX не рекомендуется, т.к. информация о протоколе передается в IPFIX в отдельном специальном поле. | <code>netflow_timeout=10</code> |
| | Значение по умолчанию — 30 секунд. |
| |
| \\ | Время ожидания сессии: |
| | * ''netflow_passive_timeout'' — время ожидания (в секундах) активности в сессии после которого, если не было активности, сессия считается завершенной и происходит передача по ней информации. Значение по умолчанию — 30 секунд. |
| | * ''netflow_active_timeout'' — время (в секундах), через которое сообщается информация по длинным сессиям (т.е. фактически длинные сессии разбиваются на фрагменты данной продолжительности). Значение по умолчанию — 300 секунд. |
| | |
| | Чтобы сгладить пики и равномернее распределить нагрузку на коллектор установите настроечный параметр <code>netflow_rate_limit=900</code> где 900 это максимальный поток Netflow в Мбит/c.\\ Значение параметра по умолчанию — 0 (не ограничивается). |
| | <note important>Значение параметра следует устанавливать исходя из расчета: что каждый DPI генерирует IPFIX поток на скорости от 0,5% до 1% от скорости реального трафика.\\ Установка недостаточной величины приведет к отбрасыванию данных уже на стороне DPI.\\ Информация об этом событии будет зафиксирована в логе **/var/log/dpi/fastdpi_alert.log**.</note> |
| | ==== Отправка template в IPFIX ==== |
| | - Транспортный протокол TCP.\\ Template отправляется один раз после установления TCP-сессии. |
| | - Транспортный протокол UDP.\\ Template отправляется по умолчанию каждые 20 секунд. Регулируется параметром ''ipfix_udp_template_timer''. |
| | =====Настройка Full NetFlow===== |
| | Указать IP адрес и номер порта коллектора **Full NetFlow**, нужно выделить отдельный коллектор для каждого FastDPI, чтобы данные не смешивались с другой статистикой: |
| | <code>netflow_full_collector=192.168.0.1:9996</code> |
| |
| Также необходимо определить формат экспорта полного NetFlow: | Указать формат экспорта **Full NetFlow**: |
| <code>netflow_full_collector_type=2</code> | <code>netflow_full_collector_type=2</code> |
| Возможные значения: | Возможные значения: |
| * ''**1**'' - экспорт IPFIX на UDP коллектор. | * ''**1**'' - экспорт IPFIX на UDP коллектор. |
| * ''**2**'' - экспорт IPFIX на TCP коллектор. | * ''**2**'' - экспорт IPFIX на TCP коллектор. |
| <note>**Рекомендуем использовать передачу Полного NetFlow в формате IPFIX через TCP (значение параметра ''2'').**\\ | <note>**Рекомендуем использовать передачу Full NetFlow в формате IPFIX через TCP (значение параметра ''2'').**\\ |
| Протокол NetFlow не гарантирует доставку пакетов (т.к. работает поверх UDP) и если коллектор не справляется с приемом данных, то часть пакетов просто теряется. Передача полной статистики netflow для канала 10Gтребует от коллектора возможности принимать данные со скоростью не менее 60 Мбит/c.\\ Проверьте возможности вашего коллектора перед направлением на него netflow трафика. В тоже время при передаче netflow из DPI могут кратковременно возникать пики до 100 Мбит/c. Такой поток данных без потерь способны принять немногие коллекторы, например, nfsen/nfdump.</note> | Протокол NetFlow не гарантирует доставку пакетов (т.к. работает поверх UDP) и если коллектор не справляется с приемом данных, то часть пакетов просто теряется. Передача **Full NetFlow** для трафика на DPI в 10Gbps требует от коллектора возможности принимать данные со скоростью не менее 60 Mbps.\\ Проверьте возможности вашего коллектора перед направлением на него **Full NetFlow** статистики. В тоже время при передаче **Full NetFlow** из DPI могут кратковременно возникать пики до 100 Mbps при всплесках количества сессий.\\ |
| | \\ |
| | При отправке IPFIX по UDP могут возникать ошибки, вызванные некорректными настройками на принимающей стороне, что может привести к потере данных. Примеры таких ошибок:\\ |
| | ''[ERROR ][2026/03/12-11:52:53:559204][0x7fdeba84b400] IPFIX_ClickStream : udp:10.16.20.183:1502 : Error socket send to collector, rc=-1, errno=113 : No route to host'' \\ |
| | ''[ERROR ][2026/03/12-11:52:53:559243][0x7fdeba84b400] IPFIX_ClickStream : udp:10.16.20.183:1502 : Error socket send to collector ( repeat error 2 ), now ok''. |
| | </note> |
| |
| | ====Дополнительные параметры Full NetFlow==== |
| Параметр ''netflow_tos_format'' определяет формат данных поля TOS в IPFIX. Возможные значения:\\ | Параметр ''netflow_tos_format'' определяет формат данных поля TOS в IPFIX. Возможные значения:\\ |
| * ''**0**'' - передается 3 bit (значение по умолчанию). | * ''**0**'' - передается 3 bit (значение по умолчанию). |
| |
| В параметре ''tethering_ttl_allowed = 128:64'' указывается список допустимых значений TTL для трафика от абонента, которые не считаются tethering. Значения перечисляются через ':'. Количество значений до 256 (0-255). | В параметре ''tethering_ttl_allowed = 128:64'' указывается список допустимых значений TTL для трафика от абонента, которые не считаются tethering. Значения перечисляются через ':'. Количество значений до 256 (0-255). |
| |
| <note tip>Для приема, обработки и хранения IPFIX рекомендуется использовать [[dpi:qoe_analytics|Программный продукт для сбора статистики QoE Store]] и [[dpi:dpi_components:dpiui|Графический интерфейс DPIUI2]].\\ | |
| |
| Для сбора информации в формате IPFIX подойдет любой универсальных IPFIX коллектор, понимающий шаблоны, или утилита [[dpi:dpi_components:utilities:ipfixreceiver2|IPFIX Receiver]].</note> | |
| |
| ===== Шаблон экспорта в формате IPFIX (Netflow v10) для протокола IPv4 ===== | ===== Шаблон экспорта в формате IPFIX (Netflow v10) для протокола IPv4 ===== |
| | 132 | 8 | int64 | 0 | DROPPED_BYTES | Дельта-счет сброшенных октетов.\\ //Например: данные сбрасываются на T1 и на T2 минуте. Дельта будет показывать разницу количества октетов между T1 и T2 минутой.// | Используется | | | 132 | 8 | int64 | 0 | DROPPED_BYTES | Дельта-счет сброшенных октетов.\\ //Например: данные сбрасываются на T1 и на T2 минуте. Дельта будет показывать разницу количества октетов между T1 и T2 минутой.// | Используется | |
| | 133 | 8 | int64 | 0 | DROPPED_PACKETS | Дельта-счет сброшенных пакетов.\\ //Например: данные сбрасываются на T1 и на T2 минуте. Дельта будет показывать разницу количества пакетов между T1 и T2 минутой.// | Используется | | | 133 | 8 | int64 | 0 | DROPPED_PACKETS | Дельта-счет сброшенных пакетов.\\ //Например: данные сбрасываются на T1 и на T2 минуте. Дельта будет показывать разницу количества пакетов между T1 и T2 минутой.// | Используется | |
| | 2019 | 1 | int8 | 43823 | originalTOS | Оригинальное значение TOS из IP заголовка | Используется | | | 2019 | 1 | int8 | 43823 | originalTOS | Исходное значение TOS из IP заголовка до классификации DPI | Используется | |
| | 192 | 1 | int8 | 0 | IP_TTL | TTL пакетов | Используется | | | 192 | 1 | int8 | 0 | IP_TTL | TTL пакетов | Используется | |
| | 2020 | 2 | int16 | 43823 | RATING_GROUP | Номер rating group | Используется | | | 2020 | 2 | int16 | 43823 | RATING_GROUP | Номер rating group | Используется | |
| | 2021 | | | | SERVICE_FLAGS | Информация о метках, которые получил flow в DPI. Детектированный tethering сообщается по IPFIX в бите 1 поля ''service_flags''. Доступны 63 бита для дальнейшего использования | Используется | | | 2021 | 8 | int64 | 43823 | SERVICE_FLAGS | Информация о метках, которые получил flow в DPI. Детектированный tethering сообщается по IPFIX в бите 1 поля ''service_flags''. Доступны 63 бита для дальнейшего использования | Используется | |
| | 2022 | | | | DETECTION_FLAGS | Зарезервировано под метод детекции | Используется | | | 2022 | 8 | int64 | 43823 | DETECTION_FLAGS | Зарезервировано под метод детекции | Используется | |
| | 2023 | | | | ACTION_FLAGS | Зарезервировано под передачу информации о действиях с flow | Используется | | | 2023 | 8 | int64 | 43823 | ACTION_FLAGS | Зарезервировано под передачу информации о действиях с flow | Используется | |
| |
| ===== Шаблон экспорта в формате IPFIX (Netflow v10) для протокола IPv6 ===== | ===== Шаблон экспорта в формате IPFIX (Netflow v10) для протокола IPv6 ===== |
| | 27 | 16 | int128 | 0 | SOURCE_IPV6_ADDRESS | Аналог в NetFlow v9 IPV6_SRC_ADDR | | | 27 | 16 | int128 | 0 | SOURCE_IPV6_ADDRESS | Аналог в NetFlow v9 IPV6_SRC_ADDR | |
| | 28 | 16 | int128 | 0 | DESTINATION_IPV6_ADDRESS | Аналог в NetFlow v9 IPV6_DST_ADDR | | | 28 | 16 | int128 | 0 | DESTINATION_IPV6_ADDRESS | Аналог в NetFlow v9 IPV6_DST_ADDR | |
| | |
| | |
| | ===== Настройка Netflow v5 ===== |
| | В формате Netflow v5 в полной статистике сохранены оригинальные номера портов, а информация о детектированных протоколах передается в обычно неиспользуемых байтах 46-47. Если требуется проанализировать используемые протоколы, то можно установить настройку, по которой информация о протоколах будет передаваться в номере порта: |
| | <code>netflow_full_port_swap=1</code> |
| | Для совместимости со старыми коллекторами эта настройка действует и для формата IPFIX, но использовать ее совместно с IPFIX не рекомендуется, т.к. информация о протоколе передается в IPFIX в отдельном специальном поле. |