Назад в библиотеку

Источник: Бредихин С. В., Щербакова Н. Г. Две компоненты анализа сетевого трафика // Вестник НГУ. Серия: Информационные технологии. 2008. №1. С.10-14

УДК 004.415.532

Две компоненты анализа сетевого трафика

С.В.Бредихин, Н.Г.Щербакова.

Институт вычислительной математики и математической геофизики СО РАН

E-mail: bred@nsc.ru, nata@nsc.ru

В статье представлена информация о разработке двух новых компонент для высокопроизводительной системы анализа сетевого трафика региональной сети Интернет СО РАН. Они предназначены для наблюдения динамики использования протоколов и выявления «активных» сетевых устройств. Обе компоненты включены в состав инструментария робота «Анализатор» «сетевой погоды» и расширяют его возможности в области качественного анализа сетевого трафика.

Ключевые слова: экспресс анализ сетевого трафика, визуализация состава трафика по протоколам, аномальное поведение сетевых устройств, база данных Round Robin Database, пакет Fusion Charts.

Введение

Эффективное управление распределенной информационно–вычислительной системой (ИВС) требует постоянного наблюдения за множеством параметров ее сетевой инфраструктуры. Значения этих параметров составляют базу данных для анализа работы системы в целом, что крайне необходимо на этапе сопровождения ИВС, а также для своевременного обнаружения возникающих проблем и локализации их источников. Один из возможных подходов к решению подобных задач базируется на качественном анализе сетевого трафика.

Объектом исследования является сеть передачи данных Сибирского отделения РАН [СПД СО РАН, 2005], а анализируемым материалом – трафик AS5387. Используется схема пассивно го сетевого мониторинга, которая выполняется без нарушения целостности сети. В режиме постоянной эксплуатации находится служба наблюдения за загрузкой сети, ведется ежедневный количественный учет трафика, генерируются отчеты по внешним каналам связи и абонентам. Робот «Анализатор «сетевой погоды» (АСП) круглосуточно проводит экспресс анализ сетевого трафика – строит его распределения по абонентам и протоколам передачи данных [Бредихин и др., 2005].

Настоящая работа является развитием АСП, в ней представлены две новые компоненты робота, предназначенные для качественного анализа сетевого трафика. Первая компонента визуализирует трафик по протоколам, вторая – анализирует активность сетевых устройств (хостов). Далее под словом «протокол» будем понимать протоколы прикладного уровня, которые определяются номерами портов из перечня (IANA port numbers. http://www.iana.org/ assignments/port-numbers.)

Визуализация трафика по протоколам

Для наблюдения за использованием протоколов на внешних каналах сети разработан визуализатор – Vis/Dyn. Он предназначен для визуализации состава трафика по множеству заранее определенных протоколов. Входящий и исходящий трафик для каждого канала представлен на отдельных рисунках, похожих на графики mrtg (Oetiker mrtg. The Multi Router Traffic Grapher. http://oss.oetiker.ch/mrtg/). Исходные данные для визуализатора поставляет робот, который собирает, хранит и обрабатывает записи формата (NetFlow. http://www.cisco.com/en/US/ docs/net_mgmt/netflow_collection_engine/3.0/user/guide/nfcform.html). Визуализатор работает круглосуточно и доступен по веб-интерфейсу.

В качестве объектов наблюдения выбраны протоколы, отвечающие наиболее распространенным сервисам СПД. Образуем множество M1, содержащее следующие протоколы:

M1 = {ftp (20,21), ssh (22), telnet (23), smtp (25), tcp-dns (53), http (80), nntp (119), pop3(110), https (443), edonkey (4660–4665), bittorent (6881–6889), tcp-others, udp-dns (53), udp-others, others}.

Здесь tcp-others и udp-others означают все остальные tcp и udp протоколы списка, others – IP-протоколы, отличные от TCP / UDP из перечня (IANA protocol numbers. http://www.iana. org/assignments/protocol-numbers). Визуализатор генерирует два типа гра- фических отчетов. Отчет Vis отражает состав трафика по всем протоколам M1, а отчет Dyn дает детальную картину по любому протоколу из этого множества.

Отчет Vis содержит три группы изображений. Каждая группа состоит из двух графиков, которые отражают динамику входящего и исходящего трафика. По оси абсцисс откладывается время наблюдения T(n), разбитое на интервалы I(n). Это обеспечивает различные ретроспективы наблюдения R(n) и масштабирует изображения (табл. 1).

Таблица 1 - Периоды наблюдений, число интервалов и ретроспектива для каждой группы
Группа n T (n) I (n) R (n)
1 30 мин 100 50 ч
2 2 ч 108 9 сут.
3 12 ч 35 5 нед.

По оси ординат указывается суммарное число появлений каждого протокола из множества M1. На рис. 1 приведен пример отчета Vis, который иллюстрирует содержание протоколов во входящем и исходящем трафике на выбранном канале: дата – 2007/11/26, время – 13:50, период наблюдения T (n) = 30 мин.

Отчет Dyn отражает частоту использования интересующего протокола P из множества M1. Для любой пары {канал, протокол} строится график утилизации этого протокола по параметрам первой группы изображений. Входящий и исходящий трафик выводятся на одном графике. На рис. 2 приведен пример отчета Dyn по протоколу tcp-www на выбранном канале: дата – 2007/11/26, время – 13:50.

Несколько слов о реализации визуализатора. Для каждого наблюдаемого канала СПД построена своя база данных в формате Round Robin Database (RRDB). Все базы устроены одинаково: в качестве источников данных выступают протоколы множества M1, а в качестве правил архивирования заданы усреднения, соответствующие наборам T(n) и R(n) из табл. 1. Данные для этих баз генерирует робот АСП, модуль обработки протоколов которого – TopProts, дополнен возможностью работы c RRDB. Программный инструментарий RRDTool обеспечивает их хранение, консолидацию и извлечение. Следует отметить, что объем храни- мых данных не увеличивается со временем, так как память используется циклически. Графи- ка визуализатора выполнена на базе графического пакета FusionCharts (http://monitor.nsc.ru/fusion/). Информацию для HTML-отчетов Vis и Dyn генерирует специальный Perl-скрипт. Он извлекает из баз RRDB данные, относящиеся к протоколам множества M1, и строит xml-файлы формата, обусловленного графическим пакетом.

Анализ активности хостов

Изучаются «активные» устройства (хосты) СПД. Исследуется вопрос, какими tcp / udp портами они пользуются и как часто. Разработанный программный модуль в режиме реального времени определяет «активные» сетевые устройства, для каждого такого устройства строит профиль его активности и заносит его в базу данных. Дальнейший анализ профилей позволяет давать заключение о характере активности. Например, фиксировать аномальные явления, находить «больные» хосты, выявлять p2p-сеансы и в некоторых случаях определять популярные программы файлообмена.

Исходные данные для анализа активности сетевых устройств СПД поставляет робот АСП, который на основе трафика AS5387 формирует записи следующего формата:

start|end|src_addr|src_org_num|dst_addr|dst_org_num|input_int|output_int|src_port|dst_port| service|packets|octets|

Содержимое полей записи определено в табл. 2.

Определение активного хоста

Пусть N – snmp-индекс интерфейса одного из внешних каналов сети, на котором ведется мо-ниторинг трафика СПД. Обозначим через all_entrs количество записей, относящихся к посылке информации через канал N вовне, т. е. тех, для которых поле output_int=N. Пусть entrs_num (ip) – число всех записей, в которых хост c адресом ip выступал в качестве источника (src_addr = ip).

Зафиксируем два условия. Условие 1: будем рассматривать только те записи, в которых адрес источника (поле src_addr) принадлежит AS5387. Условие 2: будем считать хост с адре-сом ip кандидатом для дальнейшего рассмотрения, если (entrs_num (ip)*100)/all_entrs >= 1, иными словами, если entrs_num (ip), составляет более 1 % от all_entrs.

Обозначим через dest_num (ip) количество различных ip-адресов получателей (поле dst_addr), для хоста ip, выступающего в качестве источника и удовлетворяющего условиям 1 и 2. Будем считать хост ip активным, если ((dest_num (ip)*100)/entrs_num (ip) >= 60) и dest_num > min_dest_num. Иными словами, хост с адресом ip считается активным, если dest_num (ip) составляет не менее 60 % от entrs_num (ip) и величина dest_num больше некоторой константы.

Рис. 1. Пример отчета Vis

Рис. 1. Пример отчета Vis

Рис. 2. Пример отчета Dyn

Рис. 2. Пример отчета Dyn

Скрипт, определяющий активные хосты, запускается диспетчером робота АСП по мере готовности файлов с записями и при наличии свободных вычислителей кластера. Параметрами скрипта являются имя файла и snmp-индекс интерфейса внешнего канала N.

Таблица профилей активности

Для активных хостов строится таблица профилей. В эту таблицу заносится информация о активных сетевых устройствах, обнаруженных в каждом периоде наблюдения. Каждая стро-ка таблицы профилей имеет следующий вид:

channel i |date|time|src_addr|p1 |h1|…|pn|hn|dest_num (ip)

Содержимое полей профиля активности определено в табл. 3.

Таблица 2 - Формат записи файла с исходными данными
Название поля Определение поля Пример
start Время (в мс от начала суток) получения первого пакета, вошедшего в эту запись 43030925
end Время (в мс от начала суток) получения послед- него пакета, вошедшего в эту запись 43030925
src_addr Ip-адрес источника 64.76.23.46
src_org_num * Номер организации, которой принадлежит src_addr (0 – не наша) 68
dst_addr IP-адрес получателя 213.180.204.36
dst_org_num * Номер организации получателя, которой при- надлежит dst_addr (0 – не наша) 0
input_int Snmp-индекс интерфейса, с которого был при- нят трафик 17
output_int Snmp-индекс интерфейса, на который был от- правлен трафик 2
src_port Номер порта источника 59910
dst_port Номер порта получателя 80
service * Используемый сервис tcp-www
packets Количество пакетов, содержащихся в данной записи 6
octets Количество октетов, содержащихся в данной записи 866

* Эти поля добавляются роботом при обработке файлов, сформированных коллектором.

Таблица 3 - Профиль хоста с IP-адресом src_addr
Название поля Определение поля Пример
channel i Имя канала nsc-1
date Дата: год-месяц-число 2007-02-01
time Время: час:минута:секунда 16:30:00
src_addr ip-адрес хоста-источника 212.192.184.242
p1 Номер порта получателя 445
h1 Число хостов, получивших данные от хоста с адресом src_addr на порт с номером p1 4786
… и так далее
pn Номер порта получателя 1755
hn Число хостов, получивших данные от хоста с адресом src_addr на порт с номером pn 43
dest_num (ip) Суммарное число ip-адресов, по которым за период наблюдения обращался хост-источник 5072

В этой таблице строки с номерами портов – получателей данных упорядочены по неубы-ванию значений hi.

Заключение

В статье сообщается о разработке двух новых компонент для on-line системы анализа сетевого трафика региональной СПД СО РАН. Они предназначены для наблюдения динамики использования протоколов и выявления активных сетевых устройств. Обе компоненты включены в состав инструментария робота АСП и расширяют его возможности в области качественного анализа сетевого трафика. Например, с помощью визуализатора можно обнаружить аномалии в графике распределения протоколов, которые зачастую указывают на несанкционированную деятельность. Дальнейшее исследование может быть осуществлено с помощью модуля АСП TopEntrs, который фиксирует «самые разговорчивые» пары клиентов. Анализ активности хостов позволяет выявить угрозы, идентифицирующиеся по номерам TCP/UDP-портов.

Пример обнаружения «больных» хостов. Образуем множество М2, содержащее следующие протоколы:

М2 = {loc-srv (135), netbios-ns (137), netbios-ssn (139), mrosoft-ds (445), ms-sql-s (1443), ms-sql-m (1444)}.

Из таблицы профилей активных устройств выбираем те профили , значение поля pi которых совпадает с одним из номеров портов множества М2. Определим два условия: либо i = 1, либо h1 / h2 > 100. Все выбранные профили проверяем на выполнение этих условий. Хост, чей профиль удовлетворяет этому из этих условий, будем считать «больным» (или «зомбированным»). Информацию о таких хостах почтовый автомат посылает системному администратору СПД.

Литература

  1. Бредихин С. В., Ляпунов В. М., Щербакова Н. Г. Анализатор «сетевой погоды» // Вестн. Новосиб. гос. ун-та. Серия: Информационные технологии. 2005. Т. 2, вып. 1. С. 62–67.
  2. СПД СО РАН. Сеть передачи данных Сибирского отделения РАН. Сеть Интернет Сибирского отделения РАН // Информационные материалы научно-координационного совета целевой программы «Информационно-телекоммуникационные ресурсы СО РАН» / Ин-т вычислительных технологий СО РАН. Новосибирск, 2005. 79 с.

Назад в библиотеку