Russian Language English Language

8. Методы исследования сетевых характеристик ВС

8.1 МЕТОДИКА ИССЛЕДОВАНИЯ ПРОИЗВОДИТЕЛЬНОСТИ СЕТЕВЫХ УЗЛОВ.

8.2 РАЗРАБОТКА МУЛЬТИ-АГЕНТНОЙ СИСТЕМЫ ДЛЯ РЕШЕНИЯ ЗАДАЧ ИНТЕЛЛЕКТУАЛЬНОГО АНАЛИЗА ДАННЫХ.


Экспресс информация

Редколлегия журнала

Подписка на новости

Гостевая книга

Предоставление материалов

Письмо в редакцию

На начало


2007, Номер 2 ( 11)



Place for sale
Методика исследования производительности сетевых узлов

BC/NW 2007, №2, (11) :8.1

 

МЕТОДИКА ИССЛЕДОВАНИЯ

ПРОИЗВОДИТЕЛЬНОСТИ СЕТЕВЫХ УЗЛОВ

 

 

        Л.И. Абросимов, А.А. Лебедь

 

 

(Москва, Московский энергетический институт (технический университет), Россия)

 

 

Использование современных информационных технологий предъявляет к создателям корпоративных вычислительных сетей (КВС) все более высокие требования. Разработчики должны выполнить требование – обеспечить доставку пользователю аудио- и видео-информации в реальном времени. Так возникает проблема: «Как оценить и учесть задержки в узлах КВС?». Проблема осложняется тем, что КВС обслуживает большое количество пользователей и предоставляет широкий спектр услуг, используя общие ресурсы сетевых узлов.

Для количественной оценки временных параметров функционирова-ния узлов КВС предложено [1] понятие «производительность узла», под которым понимается количество транзакций (сообщений, заявок), обслу-женных узлом в единицу времени. В качестве узлов КВС рассматривают-ся: серверы, рабочие станции, маршрутизаторы - каждый из которых сос-тоит из ЭВМ и интерфейсной сетевой карты. В процессе функциони-рования, представленном на рисунке 1, ЭВМ отправляет и получает транзакции, для чего использует свои ресурсы. Время tAB обслуживания при передаче и время tCD обслуживания при приеме, являются базовыми параметрами для определения производительности узла.

Таким образом, задача определения производительности узла состоит в определении tAB и tCD , измеренных в режиме сетевого взаимодействия нескольких (на рисунке 1 - двух) узлов.

Чтобы решить поставленную задачу потребовалось выполнить:

1) анализ возможностей измерительных мониторов;

2) разработку схемы (плана) проведения экспериментов;

3) сбор и настройку экспериментального стенда;

4) разработку методики экспериментального определения количествен-ных значений сетевых характеристик узлов;


 

Рис. 1. Процесс обмена информацией

 

5)     разработку комплекса программных средств для измерения базовых параметров функционирования сетевых программ (список, количество функций, частота их вызова и время выполнения);

6)     разработка программных средств для обработки и представления  количественных значений сетевых характеристик на основе предложенной методики;

7)     проверка предложенной методики и комплекса программных средств на основе команды ping.

Апробация предложенной методики проводилась на исследовательском стенде группы вычислительных сетей МЭИ.

Для проведения исследований в качестве сетевого узла был выбран узел, реализованный на базе IBM PC с ОС RedHat Linux 8.0 (Intel Pentium II 233 MHz, ОЗУ 288 Мбайт).

Проведен анализ возможностей измерительных мониторов и установлено, что определить требуемые параметры возможно только при создании программного измерительного комплекса, включающего в свой состав: Kernprof [2], Linux Trace Toolkit (LTT) [3], Dynamic Probes (DProbes) [4]. Схема взаимодействаия измерителей и выполняемые функции представлены на рисунке 2.

План проведения экспериментов предусматривает: получение данных о профайлинге ядра; извлечение списка функций; получение дампа ядра Linux; составление rpn-файла с описанием зондов; вставку зондов в точки вызова функций; фиксацию срабатывания зондов и системных событий; анализ результатов эксперимента.

Для выполнения исследований потребовалось: установить программные средства ( Kernprof, LTT, DProbes); установить соответствующие патчи для ядра ОС Linux; разработать скрипты для проведения экспериментов.

В результате получили список вызываемых функций ядра, их взаимосвязь, доказана возможность одновременной работы LTT и DProbes, получены временные отметки выполнения функций, диаграмма работы


процесса ping, времена отправки и получения тестового пакета ping.

Рис. 2. Схема взаимодействия измерительных и программных средств

 

Разработанные программные средства: mkprobes и AnalysisD2T, - обеспечили обработку и представление количественных значений сетевых характеристик.

После получения списка функций, вызываемых в ядре Linux, и проведения замера времен tAB, tBC и tCD была проведена еще одна серия экспериментов с набором зондов, достаточных для того, чтобы проследить интервалы работы исследуемого процесса ping (т.е. с тремя зондами, установленными в точках вызова функций __switch_to, flush_thread, schedule). По полученной разнице времен было определено время (погрешность), требующееся на срабатывание одного зонда.

Результаты экспериментов (усредненные):

690 зондов

3 зонда

µ=1/t

tAB-690=378 мкс

tBC-690=445 мкс

tCD-690=75 мкс

tAB=200 мкс

tBC=418 мкс

tCD=40 мкс

µAB=5·103 Б/c

 

µCD=25·103 Б/c

Среднее время на срабатывание одного зонда – 6,1 нс.

Если принять, что время на обработку сетевых функций в узле 2 при отправке и приеме равно, соответственно, tAB и tCD, а время обработки сетевой картой одного байта при отправке равно времени приема, то, зная скорость передачи данных в канале (100 Мбит/c), можно вычислить время tKSR и интенсивность µKSR обработки картой одного байта:

tKSR=tBE=tFC=0,2 мкс,           µKSR=µBE=µFC=5·106 Б/c

Из полученных значений видно, что программная часть работает медленнее, чем аппаратная (µAB < µKSR и µCD < µKSR). Представленные результаты получены на основе проведения эксперимента по обработке одиночной команды ping. Поэтому в дальнейшем планируется провести эксперименты по посылке серии команд ping, а также исследовать другие команды, выявить зависимость от ОС (для Linux – от версии ядра), частоты процессора, объема оперативной памяти и определить функции, которые наиболее часто вызываются.

ЗАКЛЮЧЕНИЕ

1.               Количественные результаты, полученные при исследовании функционирования в первую очередь предназначены для подтверждения работоспособности методики.

2.               Предложенная методика позволяет исследовать вероятностно-временные характеристики сетевых узлов программными методами, что обеспечивает гибкость их настройки на широкий класс программных средств, использующих ОС Linux.

 

ЛИТЕРАТУРА

1.      Абросимов Л.И. Основные положения теории производительности вычислительных сетей./ Вестник МЭИ -2001 - №4 – с. 70 – 75

2.      Страница фирмы SGI, посвященная профайлеру Kernprof (Kernel Profiling): http://oss.sgi.com/projects/kernprof/

3.      Информация по продукту Linux Trace Toolkit фирмы OPERSYS INC: http://www.opersys.com/ltt/

4.      Сайт проекта Dynamic Probes – отладчика под Linux, работающего на уровне ядра и пользовательском уровне: http://dprobes.sourceforge.net/