Принципы организации, работы и моделирования web-узлов

Терещенко В.В.

ДонНТУ, кафедра АСУ.

mailto:tereschenkoVV@rambler.ru

 

            Abstract

Tereschenko V.V. Modeling the work of Internet network node.

Annotation

Basic methods of testing websites and analysis of technology of mathematical modeling the work of Internet network node are represented in this article.

 

 

Интернет можно определить как множество локальных сетей, называемых web-узлами и дающих доступ в Интернет конечному пользователю, объединенных между собой. С точки зрения физических соединений, они могут иметь самую разную природу. Начиная от модемных соединений по телефонной линии (до 50 кбит/с) и заканчивая связью через спутники.

Для оценки качества работы web-узлов используется интегральный критерий - время реакции web-узла. Такой выбор очевиден. Если web-узел работает медленно или неустойчиво, это может негативно на количестве клиентов, пользующихся его услугами. По результатам исследования компании Zona Research (USA), 30% посетителей не ждут окончания загрузки web-страницы, если это время превышает 8 секунд, а 70% посетителей "уходят раздраженными", если это время превышает 12 секунд.

Кроме времени реакции web-узла используется еще множество тестов и параметров, характеризующих работу как web-узла в целом, так и отдельных его составляющих. Условно их можно разбить на следующие группы: общая  производительность web-узла, производительность Интернет-каналов, производительность серверов, производительность сетевого оборудования.

Термин Web-узел(Web-сервер) имеет несколько трактовок. С одной стороны, это набор документов, связанных гиперссылками (при этом у Web-узла имеется основная страница, через которую за один или несколько шагов доступны все остальные), с другой стороны, термин Web-сервер может означать компьютер или локальную сеть, на где размещен набор документов, доступный через локальную или глобальную сеть и обеспечивающий доступ в Интернет подключенных пользователей. Наконец, последнее значение этого термина — программное обеспечение, предназначенное для доступа к набору документов через локальную или глобальную сеть. Везде в дальнейшем будет использоваться второе значение термина Web-узел.

Web-узел должен выдерживать очень большие нагрузки, не замедляя своей работы. Поскольку число запросов к типичному Web-узлу ежемесячно возрастает в 2-10 раз (а иногда за 3-6 месяцев оно может увеличиться и в 100 раз), узел может начинать работать нестабильно и необходимо моделировать и прогнозировать эти изменения.

В связи с возрастающей нагрузкой администраторы узлов применяют различные методы, позволяющие поддержать работоспособность системы. Для этого можно использовать настраиваемые очереди и различные параметры; можно также проводить недорогие и несложные модернизации оборудования, а также применять специализированные продукты, которые позволяют распределить возросшую нагрузку между несколькими компьютерами,например LocalDirector компании Cisco, Net Dispatcher фирмы IBM(ранее называвшийся ShockAbsorber) и другие.

Рассмотрим подробнее основные приемы поддержания работоспособности web- узла

1) Настройка и "отсечение" лишнего.

Размер очереди Listen Queue определяет максимальное число запросов на соединение, которое будет хранить в памяти операционная система, прежде чем программа Web-сервера будет готова к их обработке. По заполнении очереди все последующие запросы будут игнорироваться.

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

2) Стратегическая модернизация.

          Выборочная модернизация оборудования в зависимости от запасов его системных ресурсов.

3) Повышайте мощность лишь там, где это необходимо.

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

4) Правило избыточности.

Доступность Web-узла определяется качеством и количеством его каналов связи с Internet.

5) Распределение нагрузки

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

6) Помощь со стороны пользователей.

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

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

На различных стадиях жизненного цикла ЛВС могут использоваться различные методы оценки ее эффективности и оптимизации.

В процессе проектирования локальной сети могут применяться экспериментальные методы исследования, аналитическое и имитационное моделирование.

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

Моделирование - один из наиболее распространенных методов исследования. Модель ЛВС - это такое ее представление, которое состоит из определенного количества организованной информации о ней и построено с целью ее изучения. Другими словами, модель физическая или абстрактная система, представляющая объект исследования. При исследовании локальной сети, как правило, используются абстрактные модели, представляющие собой описания сети на некотором языке. Абстрактная модель, представленная на языке математических отношений, называется математической моделью. Математическая модель М имеет форму функциональной зависимости

Поскольку при исследовании локальной сети возникает много различных вопросов, для решения тех или иных задач может быть разработан ряд моделей

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

Использование аналитических методов связано с необходимостью построения математических моделей локальных сетей в строгих математических терминах. Аналитические модели сетей носят обычно вероятностный характер и строятся на основе понятий аппарата теорий массового обслуживания, вероятностей и Марковских процессов, а также методов диффузной аппроксимации. Могут также применяться дифференциальные и алгебраические уравнения. Но несмотря на все достоинства использования аналитических методов эти модели зачастую громоздки; возникает сложность аналитического описания вычислительных процессов сети; недостаточная развитость аналитического аппарата в ряде случаев не позволяет в аналитических моделях выбирать для исследования наиболее важные характеристики (показатели эффективности) локальной сети.

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

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

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

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

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

Системы массового обслуживания классифицируются по следующим признакам: закону распределения входного потока заявок; числу обслуживающих приборов; закону распределения времени обслуживания в обслуживающих приборах; числу мест в очереди; дисциплине обслуживания.

Для моделирования ЛВС наиболее часто используются следующие типы СМО:

            1) одноканальные СМО с ожиданием представляют собой один обслуживающий прибор с бесконечной очередью

            2) одноканальные СМО с потерями - представляют собой один обслуживающий прибор с конечным числом мест в очереди. Этот тип СМО может быть использован при моделировании каналов передачи в сетях;

            3) многоканальные СМО с ожиданием представляют собой несколько параллельно работающих обслуживающих приборов с общей бесконечной очередью. Данный тип СМО часто используется при моделировании групп абонентских терминалов сети, работающих в диалоговом режиме;

            4) многоканальные СМО с потерями - представляют собой несколько параллельно работающих обслуживающих приборов с общей очередью, число мест в которой ограничено. Эти СМО, как и одноканальные с потерями, часто используются для моделирования каналов связи в сетях;

            5) одноканальные СМО с групповым поступлением заявок представляют собой один обслуживающий прибор с бесконечной очередью. Перед обслуживанием заявки группируются в пакеты по определенному правилу;

            6) одноканальные СМО с групповым обслуживанием заявок представляют собой один обслуживающий прибор с бесконечной очередью.

            Заявки обслуживаются пакетами, составляемыми по определенному правилу. Последние два типа СМО могут использоваться для моделирования таких узлов ЛВС, как центры (узлы) коммутации.    Локальная вычислительная сеть в целом может быть представлена в виде сети массового обслуживания. Различают открытые, замкнутые и смешанные сети.

            Проанализировав все вышеперечисленные методы мтематического моделированя можно сделать вывод, что наиболее приемлемым является имитационное моделирование с использованием систем массового обслуживания.

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

Другой важной характеристикой входящего потока заявок является статическая картина поступления заявок во времени. Самую простую статическую картину даёт регулярный входящий поток, когда заявки поступают в равноотстоящие друг от друга моменты времени. Если интервал времени между поступлениями заявок равен D, то интенсивность поступления заявок есть l=1/D.

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

Говоря о совершенно случайной картине поступления заявок, имелось ввиду следующее свойство: события, заключающиеся в поступлении заявки на интервале времени времени длины h, статистически независимы для любых двух непересекающихся интервалов.


Число поступивших заявок x(t) на интервале времени (0, t) имеет распределение вероятности которое называется распределением Пуассона. Математическое ожидание и дисперсия случайной величины x(t) совпадают и равны lt. Отсюда вытекает, что математическое ожидание M[x(t)/t]=l, тогда как дисперсия D[x(t)/t]= l/t®0 при t®¥.

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

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

Чтобы задать механизм обслуживания полностью, помимо распределения длин заявок, необходимо также задать быстродействие обслуживающего устройства. Обозначим величину быстродействия через c, единица измерения быстродействия зависит от типа обслуживания. Если обслуживающее устройство центральный процессор, то быстродействие измеряется в операциях в секунду, если обслуживающее устройство – канал или линия передачи данных, то быстродействие, т.е. скорость передачи данных, измеряется в битах в секунду.

Если длина заявки равна S [единиц обслуживания], и она обслуживается устройством с быстродействием с [единиц обслуживания], то отношение S/c [секунд] называется длительностью обслуживания заявки. Его среднее значение называется средней длительностью обслуживания, а обратная к ней величина m называется интенсивностью обслуживания.

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


Использованные материалы.

1. http://www.prolan.ru  сайт компании ProLan.

2. 'http://grishanin.temator.ru/cont/855/ - Корпоративные ЛВС Гришанин Л.В.

3. Введение в IP-сети Виктор и Наталья Олифер, информационно-аналитические материалы

4. Межсетевой обмен с помощью TCP/IP Дуглас КОМЕР

5. Некоторые секреты IP-протокола. Бред Тернер, Журнал "Сети"

6. Системы балансировки нагрузки Web-серверов Тао Чжоу, Журнал "Windows 2000 Magazine".

7. http://masters.donntu.ru/2000/fvti/sugonyak/magistr/ Математические методы и модели, обеспечивающие оценку производительности ЭВМ

8. Д. Феррари. Оценка производительности вычислительных систем. Москва "Мир" 1981 г.

9. Максименков А. В., Селезнев М. Л. Основы проектирования информационно-вычислительных систем и сетей ЭВМ. Москва "Радио и связь" 1991

10. Ижевский государственный технический университет. Кафедра программного обеспечения. Методические указания к выполнению заданий по курсу «Архитектура вычислительных систем и сетей» для студентов 3-го курса спец. 22.04.