Мониторинг: методики, модели, оценки

contents  previous next

Пакет программ NETFLUTILS для съема, обработки и хранения данных мониторинга компьютерных сетей.

Пакет NETFLUTILS разработан в Центре телекоммуникаций и технологий Интернет Московского государственного университета им. М.В.Ломоносова в 1998-1999 гг. В основе пакета лежит технология NetFlow Switching. Это технология высокопроизводительной коммутации IP- и IP-инкапсулированного трафика, в которой одной из составляющих коммутирующей функции NetFlow Switching является экспорт подробной статистики о трафике через UDP-порт. Данные, передаваемые по протоколу NetFlow Export, содержат информацию об IP-адресах и портах, протоколе, типе обслуживания и некоторые другие детали IP-трафика.

Технология сбора сетевой статистики на базе технологии NetFlow Switching в том или ином виде присутствует во многих известных системах сбора и анализа сетевой статистики и коммерческих биллинговых системах. Однако все известные нам системы не лишены тех или других недостатков, что потребовало написания собственного пакета программ NETFLUTILS с учетом целей и задач мониторинга сетевой статистики в сети Rbnet НСКТ НВШ.

Пакет NETFLUTILS: структура и возможности.

При разработке пакета решалась задача по обеспечению следующих важнейших качеств для пакетов сбора сетевой статистики:

  1. Фильтры.
  2. Ключевым моментом в архитектуре описываемого пакета является понятие фильтра. Фильтры – это произвольные логические выражения над полями записей в датаграмных протоколах NetFlow. Они дают возможность агрегировать поступающие данные в зависимости от хостов, IP-протоколов, портов и т.д. Каждый фильтр имеет уникальное ассоциируемое с ним имя и соответствующее логическое выражение. Синтаксис логических выражений является C-образным. Аргументами в логических выражениях могут являться пер еменные, соответствующие полям записей в датаграммах протокола NetFlow и константы.

  3. Алиасы.
  4. Некоторые логические выражения могут часто встречаться в различных фильтрах. Для того, чтобы избежать их повторного вычисления, существуют алиасы, которые вычисляются ровно один раз для каждой записи в NetFlow-датаграмме.

  5. Распределения.
  6. Часто бывает необходимо знать как агрегированный с помощью фильтров трафик распределяется, скажем, по IP-адресам или портам. Для этого существуют распределения (slices) по произвольным параметрам записи в NetFlow-датаграмме. Распред еления хранятся в виде бинарных деревьев, что обеспечивает их эффективную обработку. Возможны распределения по одному или нескольким параметрам.

  7. Компоненты пакета.

Пакет NETFLUTILS включает:

Netfld

Netfld является основным компонентом описываемого пакета. Этот модуль имеет многопоточную архитектуру, обеспечивающую эффективный сбор, первичную обработку и накопление NetFlow-статистики. Принимающая и обрабатывающая часть программы строго разделены и обмениваются данными через очередь сообщений. Управляющая часть сделана с целью минимизации возможного блокирования потоков. При написании программы были широко использовано группирование потоков исполнени я для оптимизации параллельного исполнения ее частей.

Ниже перечислены основные особенности netfld:

Netflcon

Netflcon – это консоль удаленного администрирования для netfld, обеспечивающая динамическое создание и модификацию фильтров, алиасов и распределений.

Netflget

Netflget – это простая утилита, позволяющая осуществлять удаленную выборку данных с NetFlow-сервера.

В указанной конфигурации пакет прошел апробацию в сети MSUnet в 1998-1999 гг. С конца 1999 до конца 2000 г пакет NETFLUTILS использовался для сбора и хранения данных мониторинга канала Rbnet-Teleglobe в сети Rbnet НСКТ НВШ. Эксплуатация пакета подтвердила его высокую надежность и управляемость. Так же была подтверждена важность гибкой настраиваемости фильтров пакета с учетом необходимости исследования различных аспектов сетевой активности. В настоящее время пакет активно эксплуатируется в сети MSUnet.