Д.ф-м.н. Байманкулов
А.Т., магистрант Бегов А.Ж.
Костанайский государственный университет им. А.Байтурсынова, Казахстан
Методики
измерения параметров нагрузки в информационных системах
Измерение
параметров трафика сетей передачи данных. В качестве
стандартного протокола, как для глобальных, так и для корпоративных сетей на
сетевом уровне используется протокол IP. Данный протокол поддерживается всеми
без исключения сетевыми операционными системами и является стандартом для
взаимодействия с серверами баз данных. Идеология, заложенная в основу сети Internet, ориентирована, прежде всего, на возможность
масштабирования и в последнюю очередь на мониторинг за параметрами трафика и
контроль качества услуг. Те же недостатки по наследству достались intranet-сетям, которые так же базируются на протоколе IP.
Для IP сетей можно выделить три
метода сбора информации о сетевом трафике.
Пассивный метод
измерений: при использовании этого
метода ведётся запись сетевой активности в каком-либо сегменте сети.
Активный метод измерений:
при использовании этого метода через сеть посылается контрольная
информация и измеряется время прохождения этой информации. Измерение времени
позволяет с некоторой степенью достоверности говорить о других параметрах
функционирования сети.
Контрольный мониторинг: при использовании этого метода анализируется информация,
собираемая с различных элементов сети (например, информация, собираемая SNMP
агентами).
Каждый
из методов имеет достоинства и недостатки. Пассивный метод позволяет получить
полную картину сетевого трафика в определённой точке сети, однако использование
этого метода дает лишь косвенную оценку параметров функционирования сети в
целом. Для проведения измерений пассивным методом можно использовать один из
следующих продуктов: tcpdump - стандартная для
большинства Unix операционных систем утилита,
позволяющая делать полную или частичную копию (dump)
трафика на данном участке сети (на определённом интерфейсе). Утилита имеет
командно-строковое управление и выдает результаты на стандартный вывод. NetXRay - система сетевого мониторинга для ОС Windows. Система имеет удобный графический интерфейс и
ориентирована на сбор информации в сетях Ethernet. MS
Network Monitor -
распределённая система сетевого мониторинга от корпорации Microsoft.
К сожалению, ни один из перечисленных пакетов не имеет средств анализа
собранных данных. Результатом работы этих программ является файл, содержащий
заголовки пакетов, передаваемых по сети в точки мониторинга, время появления
пакета и его длина. Обладая этой информацией, несложно рассчитать интенсивность
трафика (мат. ожидание и дисперсию) и коэффициент использования данного
сегмента сети. Кроме того, на основе этой информации можно выдвинуть гипотезу о
характере закона распределения поступающей в сеть нагрузки.
Активный метод позволяет измерить
время задержки пакета при его прохождении от точки до точки сети. Недостатком
данного метода является то, что во время измерения в сеть вносится
дополнительный сетевой трафик, что может повлиять на параметры сети, для которой
производится измерение. Говоря об этом методе, прежде всего, имеют в виду
использование протокола ICMP - Internet Control Message Protocol. В задачу этого протокола входит передача отклика
на эхо-пакет. Для посылки эхо-пакетов используется утилита ping,
имеющаяся в любой операционной системе, поддерживающей протокольный стек
TCP/IP. Для каждого эхо-пакета, посланного в сеть, ping
выводит время задержки при обращении информации по сети (round-trip
time RTT). Кроме утилиты ping
могут быть использованы другие, в том числе и графические утилиты, выполняющие
аналогичные функции.
Контрольный
мониторинг позволяет вести запись параметров, описывающих состояние канала или
узла сети: объём информации, передаваемый по каналу, количество ошибок в
канале, состояние и динамика изменения таблиц маршрутизации. Для сбора этой
информации в IP сетях используется протокол SNMP - Simple
Network Management Protocol. При использовании этого протокола станция
управления периодически опрашивает модули сбора - SNMP агенты считывают
информацию из переменных в соответствии с базой управления (MIB). Агенты SNMP
могут быть запущены на любом узле сети, маршрутизаторе, рабочей станции или
сервере. Станция мониторинга периодически запрашивает у агента значение
определённых переменных. Считывая значение переменных, можно по разности
значений определить средний коэффициент использования сети, причём интервал
усреднения равен как минимум периоду считывания значений. Запрос информации и
получение ответа от агента создаёт дополнительный сетевой трафик, что может
влиять на измеряемые характеристики. SNMP агенты поставляются разработчиками
сетевых устройств и операционных систем. Среди продуктов, предназначенных для
SNMP мониторинга, можно назвать свободно распространяемые утилиты scotty и mrtg, способные работать
на большинстве Unix систем. Широкое распространение
также получило ПО WhatsUP, HP Open
View, IBM Enterprise Manager и ряд других коммерческих продуктов. Все
перечисленные продукты позволяют осуществлять мониторинг за состоянием
переменных на агентах и изображать результаты в виде графиков, в том числе
могут быть построены графики загрузки сетевых интерфейсов. Кроме того, значение
переменных MIB может быть записано в журнальный файл для последующего анализа.
Таким образом, ни один из
перечисленных методов не даёт полной картины о производительности сети, для
которой проводятся измерения. Поэтому оптимальным является сочетать все эти
методы с аналитическим расчётом.
Мониторинг
производительности серверов СУБД. При анализе
производительности информационных систем наряду с параметрами сети передачи
данных немаловажную роль играют параметры производительности серверов СУБД.
Задержка при обслуживании серверами СУБД заявок пользователей зависит (как и в
случае других систем массового обслуживания) от параметров потока заявок на
обслуживания - запросов пользователей и интенсивности их обслуживания севером СУБД.
Однако, в отличие от сетей передачи данных, интенсивность входящей нагрузки
может быть оценена исходя их знания логики приложения. Для оценки параметров
обслуживания запросов можно рассматривать две методики: измерение параметров
потока обслуживания на стороне клиента и измерение на стороне сервера.
В первом случае клиентское
программное обеспечение информационной системы должно поддерживать режим
отладки, при котором есть возможность журналировать
время начала и окончания выполнения запросов. Проводя тестовые испытания
системы в монопольном режиме, можно получить оценку для среднего времени
обработки запроса и выдвинуть гипотезу о характере распределения потока
обслуживания. При этом измерения необходимо осуществлять, подключив рабочее
место напрямую к серверу СУБД, чтобы исключить влияние сети передачи данных.
Однако полностью исключить влияние конечной производительности сети и рабочей
станции всё равно не удаётся, в результате чего измерения получаются
недостаточно достоверными. Преимущество данной методики в том, что она может
быть использован для любых серверов СУБД.
Второй подход предполагает анализ
журнала транзакций собираемого на стороне сервера. К сожалению, не все сервера
СУБД имеют возможность вести подобные журналы.
Подвергая
статистическому анализу данные трассировки, можно определить: интенсивность
обслуживания запросов сервером в целом, интенсивность обслуживания запросов
процессором сервера, найти среднее количество записей, обрабатываемых одним
запросом. Полученные данные (интенсивность обслуживания запросов) могут быть
использованы при поиске решений с помощью моделей.
Кроме того, анализируя эти данные, как и в случае анализа трафика сетей
передачи данных, можно выдвигать гипотезы о соответствии распределения потока
обслуживания заявок сервером какому-либо теоретическому распределению.
Литература:
1. Денисов А.А. Современные проблемы системного анализа:
Информационные основы: Учебное пособие. -
СПб.: Изд-во СПбГТУ, 2005.
2. Качала В.В. Основы теории систем и системного анализа. Учебное
пособие для вузов. - М.: Горячая линия - Телеком, 2007. - 216 с.
3. Nilsson.
.NET Enterprise Design withVisual Basic .NET and SQL
Server2000. — Sams, 2002.
4. Душин
В.К. Теоретические основы информационных процессов и систем: учебник. -
М.: Издат.-торг. Корпорация «Дашков и К», 2009.
5. Кельтон В., Лоу А. Имитационное моделирование. Классика CS. -СПб.: Питер, 2004. - 847 с.