hostprofi.ru
Подобрать хостинг
Термин·буква N

NetFlow / sFlow

краткое определение

NetFlow и sFlow — протоколы мониторинга сетевого трафика. NetFlow (Cisco, 1996) экспортирует агрегированные данные о потоках пакетов. sFlow — открытый стандарт, использующий выборку пакетов. Применяются для анализа трафика, выявления DDoS и планирования пропускной способности.

NetFlow и sFlow — протоколы сбора и анализа данных о сетевом трафике, применяемые для мониторинга, планирования пропускной способности, обнаружения атак и биллинга по трафику в дата-центрах и у провайдеров. Оба протокола работают на сетевом оборудовании (маршрутизаторах, коммутаторах) и экспортируют статистику в коллектор для анализа.

NetFlow

NetFlow разработан Cisco в 1996 году. Поток (flow) в NetFlow — группа пакетов с одинаковым набором ключевых атрибутов: source IP, destination IP, source port, destination port, протокол, ToS, входной интерфейс. Каждый поток описывается записью: количество пакетов, байт, timestamp начала/конца, флаги TCP.

Архитектура NetFlow:

  • Flow exporter — маршрутизатор/коммутатор, агрегирующий пакеты в потоки и экспортирующий записи на коллектор.
  • Flow collector — сервер, принимающий, хранящий и обрабатывающий записи о потоках (ntopng, Elastiflow, Grafana с InfluxDB).
  • Analysis application — интерфейс для визуализации и алертинга (Zabbix, Kibana).

Версии NetFlow: v1 (1996), v5 (наиболее распространённая), v9 (гибкий формат, 2004, RFC 3954), IPFIX (IP Flow Information Export, 2013, RFC 7011) — стандартизированная версия, поддерживаемая оборудованием не-Cisco.

sFlow

sFlow (sampled flow) — открытый стандарт (RFC 3176, 2001) для мониторинга трафика через выборку пакетов. Вместо анализа каждого пакета sFlow копирует каждый N-й пакет (обычно каждый 1/512 или 1/2048) и передаёт полный заголовок коллектору. Это снижает нагрузку на оборудование по сравнению с NetFlow, но даёт статистическое приближение.

NetFlow vs sFlow

ПараметрNetFlowsFlow
Тип данныхАгрегированные потокиОбразцы пакетов
Точность100% всего трафикаСтатистическая выборка
Нагрузка на устройствоВышеНиже
VendorCisco (+ IPFIX)Открытый стандарт
Задержка данныхДо 1 минутыНесколько секунд

Применение в хостинге и ЦОД

NetFlow/sFlow используются провайдерами и дата-центрами для: биллинга трафика клиентов по фактическому потреблению, обнаружения DDoS-атак (аномальный рост трафика на конкретный IP), планирования пропускной способности каналов, отладки маршрутизации и BGP-политик. Zabbix поддерживает приём данных NetFlow для мониторинга пропускной способности.

История

NetFlow создан инженерами Cisco Дарреном Кером и Барри Тулли в 1996 году как внутренняя функция IOS. В 2004 году Cisco опубликовала NetFlow v9 как RFC 3954, открыв формат. На основе v9 в 2013 году разработан IPFIX (RFC 7011) как независимый стандарт IETF. sFlow появился в 2001 году (RFC 3176) как open-source альтернатива.

На что обращать внимание

Для анализа NetFlow-данных на Linux-сервере используйте nfdump/nfcapd (хранение и анализ), ntopng (веб-интерфейс) или Elastiflow (ElasticSearch + Kibana). При высоком объёме трафика коллектор требует быстрых NVMe-дисков — записи NetFlow генерируются интенсивно. IPFIX совместим с большинством анализаторов NetFlow v9.

NetFlow в хостинге

NetFlow экспорт настраивается на пограничных маршрутизаторах и коммутаторах: Cisco, Juniper, MikroTik. Коллекторы: ntopng, nfdump, ElastiFlow (Elasticsearch), Pmacct. Zabbix поддерживает SNMP-опрос трафика, но не полноценный NetFlow — для NetFlow нужен отдельный коллектор. DDoS-атаки выявляются по аномальному росту пропускной способности от конкретного источника — NetFlow показывает top talkers за секунды. VPS-провайдеры могут предоставлять NetFlow-данные по запросу для анализа нападений. sFlow — семплированный протокол (каждый N-й пакет): менее точный, но не нагружает процессор коммутатора.

Другие термины