BC/NW 2010; №2 (17):2.1

 

 

ПРОБЛЕМЫ ОПРЕДЕЛЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ ВЫЧИСЛИТЕЛЬНОЙ СЕТИ

Абросимов Л.И., Крамаренко М. Д.

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

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

В словаре английскому слову “network”(далее компьютерная сеть) дается следующее определение: компьютерная сеть (network) – это система, содержащая любое сочетание компьютеров, компьютерных терминалов, аудио устройств, устройств визуального отображения или телефонов, соединенных телекоммуникационным оборудованием или линиями связи, и используемая для приема или передачи информации[1].

Данное определение имеет недостаток: в определении не учитывается классификация сетей по назначению. Наиболее распространенная классификация по назначению разделяет сети на:

·     вычислительные - ВС предназначенные для решения заданий пользователей с обменом данными между их абонентами;

·     информационные - информационные сети ориентированы на предоставление информационных услуг пользователям;

·     cмешанные – сети, предоставляющие комплексные услуги [2].

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

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

Сетевыми устройствами (СУ) будем называть компьютеры и устройства, работающие на третьем уровне и выше модели взаимодействия открытых систем (ВОС, OSI). 

Каналом связи (КС) будем называть линию связи, аппаратуру передачи данных и устройства, работающие на втором уровне и ниже модели ВОС.

Учитывая изложенное, дадим определение вычислительной сети.

Вычислительная сеть (ВС) – это система, содержащая СУ, соединенные КС, предназначенная для обработки принимаемых данных.

Определим понятие производительности ВС.

Производительность — внесистемная величина, равная отношению объема проделанной работы к времени, за которое она была совершена[2].

Тогда производительность ВС – внесистемная величина, равная отношению объема проделанной работы по обработке и передаче данных ВС к интервалу времени, за который она была совершена.

Джев Хюстон своей статье «Измерение производительности IP сети» пишет следующее.

«Функциональное описание производительности сети включает описание скорости, мощности и информации об искажениях транзакций, которые передаются по сети. Такое неформальное описание того, что составляет производительность сети, несомненно, идет по правильному пути; если бы были известны латентность, доли потерянных и искаженных пакетов, вероятности пересылки пакетов как характеристики производительности сети между двумя конечными точками сети, а также характеристики сетевых транзакций, то можно было бы сделать разумное предсказание, касающееся производительности транзакции [3].»

Автор использует термин транзакция, но не дает его точного определения. Этот термин используется им в качестве определения логической единицы работы по пересылке данных от одного СУ другому.

Также в современной литературе рассматриваются следующие факторы, влияющие на производительность сетей.

·     Латентность:  для доставки пакета по сети может потребоваться долгое время.  При использовании протоколов с подтверждением приема каждой части данных возможно измерение данной величины, как времени доставки  части данных туда и обратно[2, 3].

·     Доля потерь пакетов:  в  некоторых случаях промежуточные устройства в сети могут терять пакеты. Это может происходить в случае ошибок, при перегрузке промежуточных устройств или в случае интенсивного сброса трафика для поддержания особого уровня обслуживания [2, 3].

·     Доля повторных передач:  когда пакет потерян в сети с надежной передачей данных, то пакеты передаются повторно.  Здесь возникают две задержки: первая задержка из-за повторной пересылки данных; вторая задержка из-за ожидания, пока данные будут получены в правильном порядке, перед  их отправкой в стек протоколов [2, 3].

·     Пропускная способность:  количество трафика, которое может передать сеть, обычно измеряется в килобитах в секунду [2, 3].

Большинство авторов сходятся во мнении, что производительность ВС описывается набором числовых значений факторов, приведенных выше. Рассмотрим два наиболее популярных способа измерения производительности. Первый способ – это изучение трафика, проходящего по сети. При использовании данного способа производительность ВС измеряется в битах в секунду и показывает максимальное количество трафика, которое может обработать ВС. Данный способ активно использует в своих исследованиях корпорация Cisco. Однако данный способ ориентирован на исследование производительности КС. Второй способ – это измерение производительности с помощью системы тестов. При использовании данного метода производительность ВС измеряется в сессиях в секунду. Данный способ отражает производительность ЭВМ в качестве СУ. Этот способ широко используется корпорацией SPEC. Недостатками обоих методов является ориентация на одну из составных частей ВС. Решением данной проблемы является определение единицы работы ВС, отражающей в равной степени производительности СУ и КС, входящих в состав ВС. Такой единицей может выступать транзакция.

Транзакция в нашем понимании единица работы ВС, которая определяется двумя параметрами: объемом данных и количеством вычислительных операций, необходимыми для обработки этих данных. При этом подходе производительность будет измеряться в транзакциях в секунду. Далее, принимая, что в качестве СУ выступает универсальная ЭВМ, рассмотрим проблемы измерения производительности.

Наиболее сложной проблемой оценки производительности в транзакциях является определение количества вычислительных операций. Если в качестве СУ выступает универсальная ЭВМ, тогда следует определить, что понимается под вычислительными операциями. Универсальная ЭВМ предназначена для решения широкого класса задач и может выполнять множество различных операций, таких как сложение, умножение, сдвиг и прочие. Также операции универсальной ЭВМ можно разделить на классы, такие как целочисленные операции, операции с плавающей точкой. На текущий момент существует тенденция измерять производительность ЭВМ количеством операций с плавающей точкой в секунду. Однако измерение производительности универсальной ЭВМ в качестве СУ в операциях с плавающей запятой сравнимо с представлением ЭВМ в виде черного ящика.

«Чёрный ящик» – термин, используемый в различных точных науках (в частности, системотехнике, кибернетике и физике) для обозначения системы, механизм работы которой очень сложен, неизвестен или неважен в рамках данной задачи. Такие системы обычно имеют некий «вход» для ввода информации и «выход» для отображения результатов работы. Состояние выходов обычно функционально зависит от состояния входов [2].

Измерение производительности универсальной ЭВМ по принципу «черный ящик» имеет существенные недостатки. В силу своей универсальности производительность ЭВМ может меняться в широком диапазоне в зависимости от класса задач. Класс задач состоит из задач определенного типа, например, задачу выделения оперативной памяти можно отнести к классу системных задач. Задачи характеризуется типами операций и количеством операций каждого типа. Вычисление типов операций и их количество для каждой задачи представляется чрезвычайно сложной задачей, поэтому наиболее простым было бы измерять производительность ЭВМ в задачах. Измерив времена выполнения каждой из задач, можно определить пригодность конкретной ЭВМ для решения определенного класса задач. А исследование влияния аппаратной реализации универсальной ЭВМ на времена выполнения рассматриваемого класса задач делает возможным создание модели универсальной ЭВМ для расчета производительности. Еще одним плюсом выбора задачи в качестве единицы работы универсальной ЭВМ является то, что в качестве задачи может выступать программная функция.

При измерении производительности универсальной ЭВМ количеством решенных задач в единицу времени, отдельной проблемой является выделение классов задач универсальной ЭВМ. В статье [6] был выделен сетевой класс задач и были предложены методы измерения времен выполнения задач, реализованных программными функциями. В качестве достоинств предложенного подхода можно отметить следующее.

1) Данный метод может применяться не только для исследования работы операционной системы, но также и для исследования работы прикладных программ.

2) Работоспособность разработанного программного комплекса обоснована в статье [6].

3) Наиболее перспективным направлением является исследование стека протоколов Internet, реализованного ОС.

ЛИТЕРАТУРА

1.     Словарь, http://dictionary.reference.com/browse/network

2.     Свободная энциклопедия, http://ru.wikipedia.org/

3.     Measuring IP Network Performance, Geoff Huston, http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_6-1/measuring_ip.html

4.     Network Management Case Study: How Cisco IT Uses
NetFlow to Improve Network Capacity Planning, http://www.cisco.com/web/about/ciscoitatwork/network_systems/network_capacity_planning_web.html

5.     SPEC OSG SPECmail2009 Benchmark Workload Characterization for SPECmail_Ent2009 Metric, Mike Abbott, Yun-seng Chao, http://www.spec.org/mail2009/docs/Workload_Enterprise-SM2009.html

6.     Абросимов Л.И., Лебедь А.А., Крамаренко М.Д. Анализ механизмов реализации средствами ОС UNIX служб сетевого и транспортного уровней модели OSI, http://network-journal.mpei.ac.ru/cgi-bin/main.pl?l=ru&n=15&pa=5&ar=2