Введение
Сетевой пакетный стандарт sFlow, сокращенно "sampled flow", является отраслевым стандартом для экспорта пакетов на 2-м уровне модели OSI. sFlow был первоначально разработан компанией InMon Corp. Он предоставляет возможность экспорта усеченных пакетов вместе со счетчиками интерфейсов для целей мониторинга сети. Поддержка протокола осуществляется консорциумом sFlow.org – авторитетным источником спецификаций протокола sFlow. Текущая версия sFlow – v5.
sFlow, short for "sampled flow", is an industry standard for packet export at Layer 2 of the OSI model. sFlow was originally developed by InMon Corp. It provides a means for exporting truncated packets, together with interface counters for the purpose of network monitoring. Maintenance of the protocol is performed by the sFlow. org consortium, the authoritative source of the sFlow protocol specifications. The current version of sFlow is v5.
Операция
sFlow использует обязательную выборку для обеспечения масштабируемости и поэтому применим к высокоскоростным сетям (скорости гигабит в секунду и выше). sFlow поддерживается многими производителями сетевого оборудования и поставщиками программного обеспечения для управления сетями. Система sFlow состоит из нескольких устройств, выполняющих два типа выборки: случайную выборку пакетов или операций на уровне приложений, а также выборку счетчиков на основе времени.
Образцы потоков
На основе заданной частоты дискретизации случайным образом отбирается в среднем 1 из n пакетов/операций. Этот тип дискретизации не обеспечивает 100% точного результата, но позволяет получить результат с определяемой точностью.
Противоуказы
Интервал опроса определяет, с какой частотой сетевое устройство отправляет счетчики интерфейсов. Выборка счетчиков sFlow более эффективна, чем опрос SNMP, при мониторинге большого числа интерфейсов.
sFlow-датаграммы
Образцованные данные отправляются в виде UDP-пакета на указанный хост и порт. Официальный номер порта для sFlow — порт 6343. Отсутствие надежности транспортного механизма UDP не оказывает существенного влияния на точность измерений, полученных от агента sFlow. Если пакеты с данными счетчиков теряются, новые значения будут отправлены при следующем интервале опроса. Потеря пакетов с данными о потоках приводит к незначительному снижению эффективной скорости выборки. Полезная нагрузка UDP содержит sFlow-датаграмму. Каждая датаграмма содержит информацию о версии sFlow, IP-адресе устройства-источника, порядковом номере, количестве содержащихся в ней образцов, а также один или несколько образцов потоков и/или счетчиков.
Версии sFlow
ВерсияCommentv1Первая версияv2(Неизвестно)v3Добавляет поддержку расширенной информации об URL. v4Добавляет поддержку BGP-сообществ. Это текущая версия, поддерживаемая глобально.
Связанные технологии
Известной альтернативой является NetFlow (см. ниже). Более того, в зависимости от доступных ИТ-ресурсов, может быть осуществлен полный захват пакетов с использованием выделенных сетевых TAP-адаптеров (которые впоследствии анализируются).
NetFlow, IPFIX
NetFlow и IPFIX — это протоколы экспорта потоков, предназначенные для агрегирования пакетов в потоки. Затем записи потоков отправляются в пункт сбора для хранения и анализа, а также фрагменты данных пакетов. В то время как экспорт потоков может выполняться с выборкой 1:1 (то есть с учетом каждого пакета), это обычно невозможно с sFlow, поскольку он не был разработан для такой работы. Выборка является неотъемлемой частью sFlow и направлена на обеспечение масштабируемости при мониторинге всей сети.