Технологія "захват даних". Рябець Максим
АДМИНИСТРАТОР ПОТОКОВ ДАННЫХ (DATA STREAM MANAGER) ОТ ENDACE Основанный на лидирующей на рынке технологии захвата и генерации данных (DAG) компании Endace, администратор потоков данных (АПД) от Endace обеспечивает программируемую фильтрацию пакетных данных в режиме реального времени, а также распределение данных между приложениями и/или центральными процессорами. Многочисленные фильтры заголовков пакетов, совместно с хэш-функциями и определяемой пользователем булевой логикой, позволяют выборочно исключать или захватывать пакеты данных и направлять их на два независимых буфера памяти. Это позволяет двум приложениям или центральным процессорам обрабатывать полученные данные. При помощи фильтрации нежелательных данных на интерфейсной плате в память хоста передаются только требуемые данные. Это освобождает систему от фильтрации с использованием программных средств и улучшает производительность приложений для анализа. Возможность модифицировать эти параметры в режиме реального времени позволяет совместимым приложениям по обработке нисходящего потока данных регулировать поток поступающих данных на основании их анализа. Программное обеспечение, использующее платы DAG с АПД может распознавать и обнаруживать сетевой трафик, намеренно исключать не представляющие интереса пакеты, обеспечивая тем самым более глубокий уровень анализа. Пример: Мониторинг сети В системах сетевого мониторинга, где загрузка обычно превышает мощность центрального процессора, интерфейсные платы DAG могут использовать АПД для захвата трафика на два независимых буфера памяти, каждый из которых связан с соответствующим центральным процессором. Это позволяет распределять нагрузку, требуемую для анализа, без необходимости фильтрации хост-процессора. Балансирование нагрузки центрального процессора может быть запрограммировано на основе диапазона IP-адресов или типа протокола, либо может быть произвольно распределено между центральными процессорами, использующими хэш-функцию. Пример: Законный перехват Фильтрация потока целевых данных в существующих системах основывается на работе хост-процессора, что существенно снижает производительность центрального процессора во время анализа данных. Путем программирования параметров фильтрации плата DAG с АПД захватывает только необходимые данные, обеспечивая высокую производительность центрального процессора при анализе данных. Безопасные динамические изменения параметров фильтрации означают, что отсутствует необходимость в применении параметров фильтрации в режиме офлайн, что позволяет избежать потенциальных потерь данных даже при сборе пакетов данных, поступающих от многочисленных источников. [1]
Система АПД состоит из трех основных модулей - Гребенка фильтров | Стабилизатор случайных данных | Блок булевой функции.[2]
К каждому из полученных пакетов применяется гребенка из 7 параллельных фильтров. Эти фильтры программируются с помощью параметров фильтрации. • Каждый параметр фильтрации охватывает первые 64 смежные байта полученного фрейма • Описания фильтров имеют трехзначный формат {1|0|X} на уровне битов • Фреймы сети Ethernet определяются как стартовые после преамбулы • Фреймы системы PoS определяются как стартовые с первым байтом заголовка HDLC-протокола Индивидуальные фильтры могут быть: • Активированы/заблокированы • Предварительно запрограммированы в режиме «на лету» без каких-либо потерь пакетов • В заблокированном состоянии действием по умолчанию будет подача сигнала о несоответствии Выходные данные из фильтров поступают в блок булевой функции (см. ниже). Стабилизатор случайных данных Этот модуль применяет к поступающим пакетам две различные функции и представляет результаты в блоке булевой функции. Эти функции заключаются в следующем: • Контроль четности статистически отобранного 64-битного слова в первых 64 байтах пакета • Однобитная хэш-функция применительно к статистически отобранной части фрейма Как правило, хэш-функция применяется к частям IP-адреса пакета IPv4, что обеспечивает стабилизацию нагрузки посредством srclP/dstlP. Блок булевой функции[3] Стабилизатор случайных данных, номер физического интерфейса и результаты фильтрации могут быть объединены в блоке булевой функции для контроля за управлением потоками. Для каждого буфера памяти назначается специальное булево выражение, с тем чтобы пакеты можно было захватывать одним, обоими или ни одним из процессоров/приложений без каких-либо затрат системы на тиражирование данных или отмену передачи пакета. Это осуществляется в виде поисковой таблицы всех входных данных, допуская неограниченные булевы выражения. Конфигурация «на лету» Конфигурация программного интерфейса приложения обеспечивает возможность программирования параметров фильтрации с использованием значений первичных байтов, а также более сложное программирование заголовков параметров фильтрации с использованием стандартных параметров, включая: • Исходный IP-адрес и IP-адрес назначения, подсеть и сетевую маску • Исходный MAC-адрес и MAC-адрес назначения и маску • Тип протокола (UDP | TCP | ICMP) • Номера портов исходного адреса и адреса назначения • Тип сети Ethernet Изменения в параметры фильтрации и булевы выражения могут быть внесены «на лету», в промежуточных пакетах. Это позволяет приложениям динамически изменять поток данных без необходимости блокировать какие-либо фильтры или принимать во внимание исчезновение или переполнение пакетов при изменении параметров. Счетчики статистики • Каждый фильтр снабжен счетчиком совпадений для ведения статистики по прореживанию данных • Каждое булево выражение имеет счетчик захваченных пакетов