Настройка экспорта Full NetFlow в формате IPFIX [Документация VAS Experts]

Различия

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

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

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
dpi:dpi_options:opt_statistics:statistics_ipfix [2026/03/12 08:01] – [Настройка Full NetFlow] atereschenkodpi:dpi_options:opt_statistics:statistics_ipfix [2026/03/19 07:06] (текущий) – [Шаблон экспорта в формате IPFIX (Netflow v10) для протокола IPv4] atereschenko
Строка 26: Строка 26:
  
 Для сбора информации в формате IPFIX подойдет любой универсальных IPFIX коллектор, понимающий шаблоны, или утилита [[dpi:dpi_components:utilities:ipfixreceiver2|IPFIX Receiver]].</note> Для сбора информации в формате IPFIX подойдет любой универсальных IPFIX коллектор, понимающий шаблоны, или утилита [[dpi:dpi_components:utilities:ipfixreceiver2|IPFIX Receiver]].</note>
 +
 +==== Пример конфигурации ====
 +[[dpi:qoe_analytics:implementation_administration:configuration_setup:dpi|Пример настройки описан в разделе QoE Stor: Конфигурация DPI]] 
 +
 ===== Общие дополнительные настройки отправки NetFlow===== ===== Общие дополнительные настройки отправки NetFlow=====
 Периодичность экспорта данных (в секундах): Периодичность экспорта данных (в секундах):
 <code>netflow_timeout=10</code> <code>netflow_timeout=10</code>
 +Значение по умолчанию — 30 секунд.
  
 Время ожидания сессии: Время ожидания сессии:
-  * ''netflow_passive_timeout'' — время ожидания активности в сессии после которого, если не было активности, сессия считается завершенной и  происходит передача по ней информации +  * ''netflow_passive_timeout'' — время ожидания (в секундах) активности в сессии после которого, если не было активности, сессия считается завершенной и  происходит передача по ней информации. Значение по умолчанию — 30 секунд. 
-  * ''netflow_active_timeout'' — время, через которое сообщается информация по длинным сессиям (т.е. фактически длинные сессии разбиваются на фрагменты данной продолжительности) +  * ''netflow_active_timeout'' — время (в секундах), через которое сообщается информация по длинным сессиям (т.е. фактически длинные сессии разбиваются на фрагменты данной продолжительности). Значение по умолчанию — 300 секунд.
- +
-Чтобы сгладить пики и равномернее распределить нагрузку на коллектор установите настроечный параметр <code>netflow_rate_limit=60</code> где 60 это максимальный поток netflow в Мбит/c<note important>Значение параметра следует устанавливать исходя из расчета: 6 Мбит/c на каждый 1G внешнего канала.\\ Установка недостаточной величины приведет к отбрасыванию данных уже на стороне DPI.\\ Информация об этом событии будет зафиксирована в логе **/var/log/dpi/fastdpi_alert.log**.</note>+
  
 +Чтобы сгладить пики и равномернее распределить нагрузку на коллектор установите настроечный параметр <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===== =====Настройка Full NetFlow=====
 Указать IP адрес и номер порта коллектора **Full NetFlow**, нужно выделить отдельный коллектор для каждого FastDPI, чтобы данные не смешивались с другой статистикой: Указать IP адрес и номер порта коллектора **Full NetFlow**, нужно выделить отдельный коллектор для каждого FastDPI, чтобы данные не смешивались с другой статистикой:
Строка 47: Строка 55:
   * ''**2**'' - экспорт IPFIX на TCP коллектор.   * ''**2**'' - экспорт IPFIX на TCP коллектор.
 <note>**Рекомендуем использовать передачу Full NetFlow в формате IPFIX через TCP (значение параметра ''2'').**\\ <note>**Рекомендуем использовать передачу Full NetFlow в формате IPFIX через TCP (значение параметра ''2'').**\\
-Протокол NetFlow не гарантирует доставку пакетов (т.к. работает поверх UDP) и если коллектор не справляется с приемом данных, то часть пакетов просто теряется. Передача **Full NetFlow** для трафика на DPI в 10G требует от коллектора возможности принимать данные со скоростью не менее 60 Мбит/c.\\ Проверьте возможности вашего коллектора перед направлением на него **Full NetFlow** статистики. В тоже время при передаче **Full NetFlow** из DPI могут кратковременно возникать пики до 100 Мбит/при всплесках количества сессий.</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==== ====Дополнительные параметры Full NetFlow====
Строка 105: Строка 118:
 | 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 =====
Строка 121: Строка 134:
  
  
- +===== Настройка Netflow v5 ===== 
-В формате netflow5 в полной статистике сохранены оригинальные номера портов, а информация о детектированных протоколах передается в обычно неиспользуемых байтах 46-47. Если требуется проанализировать используемые протоколы, то можно установить настройку, по которой информация о протоколах будет передаваться в номере порта:+В формате Netflow v5 в полной статистике сохранены оригинальные номера портов, а информация о детектированных протоколах передается в обычно неиспользуемых байтах 46-47. Если требуется проанализировать используемые протоколы, то можно установить настройку, по которой информация о протоколах будет передаваться в номере порта:
 <code>netflow_full_port_swap=1</code> <code>netflow_full_port_swap=1</code>
 Для совместимости со старыми коллекторами эта настройка действует и для формата IPFIX, но использовать ее совместно с IPFIX не рекомендуется, т.к. информация о протоколе передается в IPFIX в отдельном специальном поле.  Для совместимости со старыми коллекторами эта настройка действует и для формата IPFIX, но использовать ее совместно с IPFIX не рекомендуется, т.к. информация о протоколе передается в IPFIX в отдельном специальном поле.