Абросимов Л. И.
2. МЕТОД КОНТУРОВ ДЛЯ ОЦЕНКИ ПРОИЗВОДИТЕЛЬНОСТИ ВЫЧИСЛИТЕЛЬНЫХ СЕТЕЙ
Вычислительные
сети характеризуются большой сложностью составляющих элементов, связей,
взаимодействий, параметров и характеристик. При построении моделей основное
внимание уделяется тем характеристикам и параметрам, которые интересуют
исследователя - проектировщика.
К основным
понятиям рассматриваемой модели относятся структура и составляющие ее
компоненты.
Под
структурой модели вычислительной сети понимаются условия и средства соединения
компонентов сети ( рис.2).
Компонентами
моделируемых вычислительных сетей обычно являются узлы сетей и каналы передачи
данных, соединяющих компоненты.
Узел
моделируемой сети — это аппаратные и программные средства файл-сервера,
хостмашины, коммуникационного контроллера, терминала (см. рис. 2). Каждый узел
при обработке осуществляет задержку сообщений и поэтому моделируется
одноканальной системой массового обслуживания M/M/1/ (рис. 3).
Основными
параметрами сообщений являются: интенсивность
поступления сообщений и
интенсивность обслуживания сообщений в узле.
Интенсивность
поступления сообщений равна
усредненному количеству сообщений, поступающих на вход узла в единицу времени.
Интенсивность
обслуживания сообщений в узле равна
усредненному количеству сообщений, обслуженных в единицу времени.
Основными
характеристиками узлов, как систем массового обслуживания являются:
время
обслуживания сообщений узлом, где = 1/; (1)
время
задержки t
сообщений в системе i (в узле и очереди на обслуживание) : t= 1/( — ) ; (2)
коэффициент
загрузки узла i : = / ;
(3)
количество сообщений
в системе обслуживания
(в узле и очереди на
обслуживание)
= /( — ) = t (формула Литтла) ;
(4)
количество сообщений в очереди на обслуживание:
= /( —) . (5)
Рассматриваемая
модель учитывает стационарный, установившийся процесс передачи и обслуживания
заявок. Если обслуживающая система содержит несколько узлов с явно выраженными
входом и выходом, то такая система называется открытой системой, а
интенсивность входящих сообщений равна интенсивности выходящих сообщений. (см.
рис.4).
Количество
сообщений в открытой системе определяется по формуле Литтла (6).
Если
обслуживающая система содержит несколько узлов, а поток сообщений с выхода
последнего узла поступает на вход первого узла , то такая система называется
замкнутой системой, а интенсивность потока сообщений является неизвестной
величиной, зависящей от параметров и
структуры соединения узлов. (рис. 6 )
Для замкнутой
системы применение формул (4, 5), выведенных для одноканальной системой
массового обслуживания M/M/1/, приводит
при небольших количествах сообщений (n=
1 — 10) к значительным
погрешностям. Для уменьшения погрешности при расчете характеристик замкнутых
систем необходимо использовать коэффициент ограниченности очереди:
= ( —)/; где = 0 |; = 1|.
Тогда
соотношения (4, 5) преобразуются к следующему виду:
количество сообщений
в замкнутой системе
обслуживания (в узле и в
очереди на обслуживание) :
= /(-- ) = t (формула
Литтла); (6)
количество сообщений в очереди на обслуживание к узлу i в замкнутой системе
обслуживания:
= / (—). (7)
В
вычислительных сетях можно выделить потоки сообщений, каждый из которых в
установившемся режиме имеет свой путь прохождения через узлы сети и свои
параметры обслуживания в узлах. Такой условно выделенный путь движения
сообщений назван контуром , где . Контуры
могут быть разомкнутыми (см. рис. 5, 8) и замкнутыми (см. рис.6, 7).
Разомкнутый
контур — это путь потока идентичных сообщений от входа в сеть через
промежуточные узлы к выходу из сети.
Замкнутый
контур — это путь потока идентичных сообщений от узла-источника до
обслуживающего узла и обратно.
Фаза контура
— это часть контура, в которой каждый узел только один раз обслуживает
сообщение.
Пример 2.1 (см. рис 7) : замкнутый контур содержит
узлы: (A)¾k1¾k2¾k3¾(B)¾k2¾(A).
Пример 2.2 (рис 7) : Фаза =1 содержит узлы: (A)¾k1¾k2¾k3¾(B).
Фаза = 2 содержит узлы: (B)¾k2¾(A).
В реальных сетях в стационарном
режиме сообщения с выхода одного узла могут поступать на входы различных узлов.
При моделировании такие переходы от узла ki к узлу
kj оцениваются вероятностью перехода сообщений
(см. рис 9).
Вероятности перехода позволяют для
разомкнутых контуров выразить интенсивность потока сообщений любого перехода через базовую интенсивность потока сообщений и коэффициент базовой интенсивности.
Базовую интенсивность потока сообщений обычно представляет поток сообщений,
поступающий на вход узла. Коэффициент базисной
интенсивности, показывает, какая часть базисной интенсивности переходит от узла
ki
к узлу kj, т.е.: = . (8)
Пример 2.3 (см. рис 9):
a12 = p12
; a13
= p13 ; a24 = p12× p24 = p12 ;
a34 =
= p13× p34 ; a35 = p13× p35;
a45 =
(a24 + a34)p45 = a24 + a34.
Линейные
уравнения являются одной из составных частей аналитической модели метода
контуров. Составление и последующее их совместное решение позволяет для потоков
каждого контура q определить коэффициенты базовой интенсивности.
В основу
составления линейного уравнения положено условие, что для установившегося
процесса движения сообщений одного контура количество входящих в
узел ki сообщений равно количеству сообщений его
покидающих и поступающих на вход следующего узла kj
(рис 10).
Тогда для каждого контура , каждого узла и для каждой дуги можно записать:
= (9)
Пример 2.4. (см. рис. 9):
Система линейных уравнений имеет вид:
= ; = ; = ;
= ; = ; = ( + ).
Решая системы
линейных уравнений, получаем:
= ; = ; = ; = ; = ; = +
Нелинейные
уравнения также являются частью аналитической модели метода контуров. Каждое
нелинейное уравнение составляется для одного контура. Составление и последующее
их совместное решение позволяет для потоков всех контуров сети определить
базовые интенсивности. . Основу составления
каждого нелинейного уравнения составляет условие, что для установившегося
процесса движения сообщений одного контура количество сообщений в
контуре не изменяется и равно сумме математических ожиданий сообщений
рассматриваемого контура во всех узлах сети.
Тогда для каждого контура можно записать:
= , где . (10)
Пример 2.5 (см.рис.11):
Рассматриваемая
система содержит два замкнутых контура.
контур q = 1 содержит в своем составе узлы: k1¾k3¾k4¾k3¾(k1 ; первая фаза = 1 содержит узлы k1—k3—k4 ; вторая фаза = 2 содержит узел k3 .
контур q= 2
содержит в своем составе узлы: k2¾k3¾k4¾k3¾(k2 ; первая фаза = 1 содержит узлы k2—k3—k4..; вторая фаза = 2 содержит узел k3.
Система
нелинейных уравнений для рис. 11 на основании (6) и (10) может быть записана в
следующем виде:
(11)
где .
Целью решения
системы нелинейных уравнений является вычисление базисных интенсивностей для каждого контура . В
качестве базисной обычно выбирается дуга контура , выходящая из узла ki
с наименьшим номером i.
Анализ
соотношений (6) и (10) показывает, что каждое нелинейное уравнение в области допустимых решений представляет
собой монотонно возрастающую функцию. Вид зависимости () для
первого нелинейного уравнения примера 2.5 представлен на рис 12.
На рис. 12
номера "1", "3", "4" — соответствуют номерам
узлов первого контура, которые описываются слагаемыми в соотношении (11).
Знаком обозначена вся правая часть первого нелинейного уравнения.
Для решения
системы нелинейных уравнений используем
итеративный метод дихотомии, называемый также "метод проб" [9].
Для этого
представим соотношение (10) в канонической форме:
() = -- . (12)
Каноническая
форма нелинейного уравнения (12) изображена на рис 13.
Решению
уравнения соответствует равенство: () = 0.
В основу
процедуры решения нелинейного уравнения положены следующие условия:
1) если
корень уравнения лежит между = и = , то
вычисляют {( + )/2};
2) если {(+)/2}.имеет
тот же знак, что и (), то
присваивают = ( + )/2 , а не изменяют и повторяют процедуру вычисления ();
3) если {(+)/2} имеет
тот же знак, что и (), то
присваивают = ( + )/2 , а не изменяют и повторяют процедуру вычисления ();
4) расчет
продолжается до тех пор, пока на шаге будет достигнуто
условие:
= |( ) — ()| /( ) < , где
— заданная точность вычислений.
Ответственным
является шаг = 0, на котором
назначаются значения граничных величин: и .
Для
рассматриваемого типа нелинейных уравнений
для каждого контура целесообразно принимать:
= 0; и = 1/() , где .
Пример 2.6. (см. рис. 10): для контура = 1, n1=3; m1=1 1/s;
m3=4 1/s; m4=3
1/s , );
для контура = 2 n2=4; m2=2 1/s;
m3=4
1/s; m4=3
1/s (точность вычислений = 6%).
По соотношению (11) вычисляем :
g1=0,67;
g2=0,75;
g3=0,86;
g4=0,86 .
Последовательно
для каждого контура и каждого шага вычисляем:
(q,s), (q,s), f(q,s), (s):
s=0 LB(1,0)=0;
LE(1,0)=1; LB(2,0)=0;
LE(2,0)=2
;
s=1 l1(1)=0,5;
l2(1)=1;
f(1,1)=1,26; f(2,1)=1,22 ;
LB(1,1)=0,5;
LE(1,1)=1;
LB(2,1)=1;
LE(2,1)=2
;
s=2 l1(2)=0,75;
l2(2)=1,5;
f(1,2)= -10,75; f(2,2)= -22,2;
LB(1,2)=0,5;
LE(1,2)=0,75;
LB(2,2)=1;
LE(2,2)=1,5;
s=3 l1(3)=0,62;
l2(3)=1,25;
f(1,3)=-0,09; f(2,3)=-0,94;
LB(1,3)=0,5;
LE(1,3)=0,62;
LB(2,3)=1,0;
LE(2,3)=1,25;
s=4 l1(4)=0,56;
l2(4)=1,13;
f(1,4)=0,72; f(2,4)=0,22;
LB(1,4)=0,56;
LE(1,4)=0,62;
LB(2,4)=1,13;
LE(2,4)=1,25.
С заданной
точностью = 6%
получаем,
l1 = 0,59 1/s,
l2 =
1,19 1/s.
Каждый узел вычислительной сети
характеризуется временем обслуживания
сообщений, которое зависит от объема заданий и производительности
узла: = / . (13)
Если узел
моделирует компьютер, то объем заданий измеряется в
операциях, а производительность узла измеряется в операциях в секунду. Если узел моделирует
аппаратуру связи, то объем заданий измеряется в битах, а производительность узла измеряется в битах в секунду.
После того,
как определены интенсивности потоков сообщений
каждого контура в каждом узле ki
вычислительной сети можно определить основные характеристики вычислительной
сети.
Среднее время
доставки сообщений
контура в разомкнутой сети: = , где . (14)
Среднее время
отклика сообщений замкнутого
контура , содержащего сообщений, каждое из
которых генерируется узлом ki :
= (/) — ( 1/) . (15)
Коэффициент загрузки узла : = .
(16)
Изложенные
основные определения позволяют сформулировать следующие этапы метода контуров:
- описание
структуры вычислительной сети,
- описание
функциональной схемы вычислительной сети,
-
представление графовой модели вычислительной сети,
- составление
линейных уравнений баланса,
- составление
нелинейных уравнений баланса,
- решение
линейных уравнений баланса,
- решение
нелинейных уравнений баланса,
- определение
функциональных характеристик ВС.
Структура
вычислительной сети определяет такие основные характеристики, как количество N
узлов сети и связи между узлами, как показано на рис.2, задаваемые матрицей связей // // .
Переход к
функциональной схеме вычислительной сети отражает требования
проектировщика-исследователя к степени детализации построения модели, т.е.
функциональная схема содержит те элементы сети, которые вносят, по-мнению
проектировщика существенные задержки времени в обработку сообщений. На этой
стадии определяются контуры и фазы поступающих на обслуживание потоков
сообщений, а также интенсивности обслуживания сообщений
в узлах.
Графовая
модель служит для формализорванного представления функциональной модели и
позволяет символьно определить все параметры и характеристики для
математического описания модели. При наличии
узлов, имеющих идентичные интенсивности обслуживания вводятся
типы узлов обслуживания.
Составление
линейных уравнений баланса выполняется в соответствии с пояснениями,
изложенными в параграфе 2.2. и записывается в виде соотношения (9).
Составление
нелинейных уравнений баланса выполняется в соответствии пояснениями,
изложенными в параграфе 2.3. и записывается в виде соотношения (10).
Решение
системы линейных уравнений баланса направлено на определение коэффициентов базисной интенсивности
для чего, в зависимости от размерности сети могут использоваться различные
методы решения (подстановки или итеративные методы [9]).
Решение
системы нелинейных уравнений баланса ставит своей целью вычисление базисных
интенсивностей для замкнутых контуров. Для систем не большой размерности
целесообразно использовать метод дихотомии, изложенный в разделе 2.4. Выбор
метода решения для сетей большой размерности требует дополнительного анализа
специфических особенностей каждой исследуемой сети.
Для определение функциональных
характеристик вычислитель-ных сетей используются соотношения параграфа 2.5.
1. Какие
условия являются главными для рассмотрения компоненты сети в качестве узла?
2. Какие
характеристики трафика являются известными (заданными) для замкнутых и
разомкнутых контуров?
3. Почему для
замкнутых систем обслуживания с узлами M/M/1 и M/G/1 необходимо вводить коэффициент
ограниченности очереди? В каком диапазоне он изменяется?
4. Сколько
фаз может иметь контур?
5. Почему
уравнения (9) называют линейным, а уравнение (10) — нелинейным?
6. Какие
итеративные методы решения нелинейных уравнений Вам известны?
1.
Разомкнутая система обслуживания А
имеет интенсивность входного потока и время обслуживания . Разомкнутая
система обслуживания В состоит из двух
последовательно-соединенных узлов и имеет время обслуживания в каждом узле = /2. Для
одинаковой интенсивности входного потока определите, какая
система имеет большее время обслуживания? Может ли быть
равным ?
2.
Разомкнутая система обслуживания C состоит из двух параллельно соединенных
узлов, входной поток сообщений с равными вероятностями поступает на входы
каждого узла, который имеет время обслуживания = . Определите
время обслуживания и сравните с и (см.
Задание 1).
3. Определите
время пребывания сообщений в системе
(см.
рис.
5.), если =1, а коэффициенты загрузки===0,8.
4. Определите
время пребывания сообщений в системе
(см.
рис.
8 ), если =1, =2, =3, =7, =8. Определите коэффициенты загрузкии . Какое получится решение при =6 и почему?
5. Определите
интенсивность потоков для системы, представленной на рис. 11, если она
обслуживает:
а) только
контур q1,
б) только
контур q2.
Сравните
результаты решения этой задачи с примерами 2.5 и 2.6.