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