Структура файла статистики в InJoy Firewall25 февраля 2006 16:15, 8 комментариев

InJoy Firewall, Разработки

В продолжение предыдущей статьи разберем структуру ASCII-файла статистики InJoy Firewall, что необходимо для дальнейшей обработки статистики.

Как я уже писал, каждый месяц файрвол создает новый файл с расширением, соответствующим трехбуквенному сокращению текущего месяца, основываясь на языке системы. Разберем файл статистики за декабрь 2003 года. Файл начинается с записи, указывающей расчетный период:

[Firewall accounting log - Period: Dec, 2003]

Вторая строка файла указывает время и дату последней записи в файл:

[Last revised 03.01.2004 - 03:19:47]

Далее, файл разбит на несколько блоков, количество которых соответствует количеству дней в месяце. Каждый блок начинается строкой вида:

[DATE: 01.12.2003]

Далее, после пустой строки в табличной форме построчно приводится количество трафика в обе стороны для каждого IP-адреса внутри сети (на самом деле IP-адреса, которые попадают в файл статистики зависят от параметров управляющего ими правила файрвола) для каждого часа текущих суток. Каждая строка завершается итоговой суммой трафика для IP-адреса текущей строки. В конце каждого блока находится специальная итоговая строка, в которой указаны итоговые суммы каждого часа для всех IP-адресов. В конце итоговой строки, в последней ячейке, приводится общая сумма трафика, прошедшего через интерфейс файрвола за текущие сутки.

Необходимо указать, что в каждый блок суточной статистики попадает информация только о тех IP-адресах, которые были активны в данные сутки. Таким образом, возможна ситуация когда определенные IP-адреса будут встречаться не в каждом суточном блоке файла статистики.

В конце файла статистики записывается еще один блок - итоговый, куда попадает информация обо всех IP-адресах, которые хоть раз встречались в файле. Начинается блок строкой вида:

[MONTHLY TOTAL]

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

Для дальнейшей обработки сумм статистики необходимо иметь в виду два важных момента:

Соглашения о представлении данных

Вся информация о трафике рассчитывается и хранится внутри файрвола в байтах. В файле же статистики суммы отображаются в разных величинах. То есть, если какая-либо сумма превысила килобайт, то данная сумма будет пересчитана в килобайты и будет отображаться в килобайтах. То же самое справедливо для мегабайта и гигабайта. Пересчет происходит, как и положено, по 1024. Исходя из пересчета сумм, мы имеем следующий момент:

Округление сумм

Поскольку все суммы отображаются и хранятся в файле только в одной единице измерения каждая, мы неминуемо сталкиваемся с округлением сумм при переводе из одной единицы измерения в другую. При относительно малом трафике (порядка нескольких гигабайт в месяц) погрешность при округлении составляет порядка нескольких килобайт, но при большом трафике (сотни гигабайт в месяц) погрешность будет более значительна. Соответственно, надо отдавать себе отчет о целях, для которых мы собираем статистику трафика. Если перед вами стоит задача подсчета статистики локальной сети размером в несколько десятков машин, то, скорее всего, эти погрешности вы и не заметите, но если вы являетесь провайдером с несколькими тысячами клиентов, вам необходимо использовать другой метод обработки статистики, например, снимать статистику прямо с интерфейса.

Итоги

Какие же данные мы можем получить из файла статистики? А не так уж мало:

  • Месячная итоговая статистика для всей сети
  • Месячная итоговая статистика для каждого компьютера внутри сети
  • Месячная суммарная почасовая статистика для каждого компьютера внутри сети
  • Месячная суммарная почасовая статистика для всей сети
  • Суточная суммарная статистика для каждого компьютера внутри сети
  • Суточная суммарная статистика для всей сети
  • Почасовая статистика для каждого компьютера внутри сети
  • Почасовая статистика для всей сети

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

Продолжение следует

Добавьте свой комментарий

К этой статье в настоящий момент 8 комментариев. Если вам есть, что добавить, вы можете оставить здесь и свой комментарий. Поля имя и почтовый адрес обязательны для заполнения. Адрес на сайте не публикуется.

Цитаты оформляются так: /* Цитируемый текст */.