Например, Бобцов

ФУНКЦИОНАЛЬНАЯ НАДЕЖНОСТЬ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ С ПЕРЕРАСПРЕДЕЛЕНИЕМ ЗАПРОСОВ

Функциональная надежность вычислительных систем

53
УДК 681.3

В. А. БОГАТЫРЕВ, С. В. БОГАТЫРЕВ, А. В. БОГАТЫРЕВ
ФУНКЦИОНАЛЬНАЯ НАДЕЖНОСТЬ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ С ПЕРЕРАСПРЕДЕЛЕНИЕМ ЗАПРОСОВ

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

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

Введение. Высокая функциональная надежность и отказоустойчивость распределенных

вычислительных систем, объединяющих ресурсы нескольких кластеров, достигаются за счет

перераспределения запросов между узлами кластеров [1—2]. Перераспределение запросов че-

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

изменению потока запросов, к отказам и отключениям узлов, что определяет актуальность за-

дачи анализа и оптимизации процесса распределения запросов, особенно для систем, работаю-

щих в режиме реального времени с жесткими ограничениями на время выполнения запросов.

Постановка задачи оптимизации распределения запросов. Рассмотрим распределен-

ную компьютерную систему (рис. 1), содержащую локальные (отдельные) кластеры S1, на ка-

ждый из которых поступает отдельный поток запросов, и доступный через сеть общий кла-

стер S3, обеспечивающий возможность адаптации системы к отказам и перегруженности сер-

веров путем перераспределения запросов через сеть.

Для компьютерных систем, функционирующих в режиме реального времени, в качестве

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

вероятность выполнения заданий (функциональных запросов) за время, не превышающее

предельно допустимого значения t0. Указанный критерий имеет две составляющие:

— вероятность сохранения работоспособности системы при отказах;

— вероятность выполнения запроса в системе за время, не превышающее предельно до-

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

накопления отказов.

Локальные кластеры S1

Общий кластер S3

S2 Рис. 1
Рассмотрим возможности увеличения функциональной надежности систем с разделением потока запросов к каждому локальному кластеру, достигаемого перераспределением
ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2012. Т. 55, № 10

54 В. А. Богатырев, С. В. Богатырев, А. В. Богатырев

запросов (нагрузки) между кластерами с учетом отказов ресурсов кластеров и возможной неравномерности потока запросов к ним [2—5].
Для такой системы, предусматривающей перераспределение запросов через магистрали S2 между кластерами, задача включает оптимизацию структуры системы (при проектировании) и процесса распределения запросов (при эксплуатации) в системе [6—10].
Задача оптимизации структуры является статической (выполняется до начала функционирования системы — изменение структуры функционирующей системы возможно только в результате отказов), а задача распределения запросов — динамической, решаемой в процессе функционирования системы на основе мониторинга текущей загруженности узлов системы и характеристик потока запросов.
При оптимизации структуры для заданных ограничений на стоимость реализации системы требуется найти число (кратность резервирования) магистралей R (узлов коммутации) и серверов в локальных кластерах N и в общем кластере M, обеспечивающих наибольшую вероятность выполнения запросов за время t0.
Для локального кластера определяется доля потока запросов, перераспределяемых через сеть в общий кластер, при которой достигается максимум вероятности выполнения запросов за время t0.
Оценка функциональной надежности. В исследуемой системе запросы, поступающие

в локальный кластер S1(α) с интенсивностью λ=αΛ (Λ — интенсивность входного потока запросов в системе), с вероятностью g обслуживаются внутри него и с вероятностью (1–g) пе-
рераспределяются через сеть (резервированные магистрали) S2 в общий кластер S3. Число узлов в системах S1, S2, S3 в исходном состоянии (без отказов) соответственно равно N, R, M.
Интенсивность поступления запросов в общий кластер S3 через сеть S2, равна Λ3=
=Λ((1–g)α+1). Поскольку каждый запрос, направляемый в общий кластер, сопровождается
возвратом результатов, интенсивность передачи через сеть S2 запросов будем считать равной
Λ2=2Λ((1–g)α+1). Представим каждый узел системы (серверы и магистрали) в виде одноканальной систе-
мы массового обслуживания типа М/М/1 [11].
Для локальных кластеров, не предусматривающих перераспределения запросов через
сеть, вероятность своевременного выполнения запросов (непревышения значения t0) [12], с учетом того что на каждый из N серверов кластера поступает часть (1/N) потока запросов, оп-
ределяется как

P

=

1



⎛ ⎝⎜

λv N

⎞ ⎠⎟

e−⎜⎝⎛

1 v



λ N

⎞⎟⎠t0

=

1



⎛ ⎝⎜

Λαv N

⎞ ⎠⎟

e−⎝⎛⎜

1 v



Λα N

⎠⎞⎟t0

,

где v — среднее время выполнения запроса сервером.

При абсолютной надежности узлов кластера, если g-я доля запросов выполняется в со-

ответствующем локальном кластере, а (1–g)-я их доля перераспределяется через сеть в общий

кластер, то

P

=

g

⎡ ⎢1 − ⎢ ⎣

⎛ ⎜⎝

g Λαv N

⎞ ⎠⎟

e−⎝⎛⎜

1 v



g

Λα N

⎠⎟⎞t0

⎤ ⎥ ⎥ ⎦

+

(1 −

g)

⎡ ⎢1 − ⎢ ⎣

⎛ ⎝⎜

Λv[α(1 − M

g)

+ 1]

⎞ ⎠⎟

e−⎜⎛⎝

1 v



Λ[α(1− M

g

)+1]

⎟⎞⎠(t0

−T2

)

⎤ ⎥ ⎥ ⎦

,

(1)

где Т2 — среднее время пребывания запросов в сети S2:

T2

=

1−

v2 2Λv2[α(1 −

g) + 1] /

R

,

здесь v2 — среднее время передачи запросов и результатов их выполнения через сеть. С учетом отказов вычислительной системы вероятность своевременного выполнения

запросов определим как:

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2012. Т. 55, № 10

Функциональная надежность вычислительных систем

55

P

=

P1P2 P3

⎨⎪⎧ g ⎩⎪

⎡ ⎢1 ⎣⎢



⎛ ⎝⎜

g Λαv n

⎞ ⎟⎠

e−⎜⎝⎛

1 v



gΛα n

⎠⎟⎞t0

⎤ ⎥ ⎦⎥

+

⎛ ⎞⎫

( )+

1− g

{1



⎛ ⎝⎜

Λv[α(1 − m

g)

+ 1]

⎞ ⎠⎟

−⎛⎜⎝
e

1 v



Λ[α(1− m

g

)+1]

⎞⎠⎟⎜⎜⎜⎜⎝

t0

− 1−

v2 2Λv2[α(1−
r

g

)+1]

⎟ ⎟ ⎟⎟⎠

⎪⎪ ⎬ ⎪ ⎭⎪

+

+ P1

(1



P2

P3

)

⎡ ⎢1 ⎢ ⎣



⎛ ⎝⎜

Λαv n

⎞ ⎟⎠

e−⎛⎝⎜

1 v



Λα n

⎞⎟⎠t0

⎤ ⎥ ⎥ ⎦

+

⎡ ⎛ ⎞⎤

( )+ 1 − P1

P2

P3

⎢ ⎢ ⎢1 ⎢⎣



⎛ ⎜⎝

Λv[α + m

1]

⎞ ⎠⎟

−⎝⎜⎛
e

1 v



Λ[α+1] m

⎟⎠⎞⎜⎝⎜⎜⎜

t0

− 1−

v2 2Λv2[α+1]
r

⎟ ⎟ ⎟⎟⎠

⎥ ⎥ ⎥ ⎦⎥

,

(2)

где P1P2 P3 — вероятность одновременной работоспособности рассматриваемого локального

кластера, магистрали и общего кластера; P1 (1 − P2 P3 ) — вероятность исправности рассматри-

ваемого кластера при отказе остального оборудования системы; (1 − P1 ) P2 P3 — вероятность

отказа рассматриваемого кластера при сохранении функционирования системы за счет пере-

распределения запросов через сеть на общедоступный кластер,

P1 = 1 − (1 − k1)N , P2 = 1 − (1 − k2 )R , P3 = 1 − (1 − k1)M ,

здесь k1, k2 — коэффициенты готовности сервера и магистрали;
k1 = µ1 (λ1 + µ1 ) , k2 = µ2 (λ2 + µ2 ) ,

λ1, λ2, µ1, µ2 — интенсивность отказов и восстановлений серверов и магистралей. Математические ожидания числа исправных серверов в рассматриваемом локальном

кластере n, в общедоступном кластере m и числа r магистралей определим как:

NM R
∑ ∑ ∑n = CNi k1i (1 − k1)N −i , m = CMi k1i (1 − k1)M −i , r = CRi k2i (1 − k2 )R−i . i=1 i=1 i=1
Результаты расчетов. Расчеты значения вероятности Р проведем при M=20, N=5, R=1,

v=1, v2 =0,01 c для средней интенсивности запросов Λ=10 1/с (рис. 2; 1 — t0 =1,5, 2 — 2, 3 — 5, 4 — 10 с).

Р

0,8 2 1

3

0,6

4

0,4 0

0,2 0,4 0,6 0,8

g

Рис. 2
Из представленных графиков видно, что существует оптимальное значение доли запросов, перераспределяемых через сеть для выполнения в общедоступном сервере, при котором

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2012. Т. 55, № 10

56 В. А. Богатырев, С. В. Богатырев, А. В. Богатырев
достигается максимальное значение вероятности (надежности) выполнения запросов за время, не превышающее предельно допустимого значения времени ожидания.
Для заданных параметров на основе целевой функции (1), (2) с использованием MathCad 15 определяется оптимальное значение доли запросов, перераспределяемых через сеть на выполнение в общедоступный кластер S3. Так, при Λ=6 с–1, t0= 2 и 4 с оптимальному процессу перераспределения запросов соответствуют значения g=0,44 и 0,47. Результаты расчета вероятности Р при t0=2 и 4 представлены на рис 3, здесь кривые 1 и 2 соответствуют случаю перераспределения запросов через сеть при g=0,47; t0=4 с и g=0,44; t0=2 с; кривые 3 и 4 — системы без перераспределения запросов через сеть для t0=4 и 2 с соответственно.
Р
1
0,8 2

0,6 43

0,4 2

4

6 8 Λ, с–1

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

СПИСОК ЛИТЕРАТУРЫ
1. Таненбаум Э., Ван Стеен М. Распределенные системы. Принципы и парадигмы. СПб: Питер, 2003. 877 с.
2. Богатырев В. А. К повышению надежности вычислительных систем на основе динамического распределения функций // Изв. вузов. Приборостроение. 1981. № 8. С. 62—65.
3. Богатырев В. А. Распределение заданий в многомашинных вычислительных системах // Изв. вузов. Приборостроение. 1986. № 5. С. 43—47.
4. Богатырев В. А. Интервально-сигнальный метод динамического распределения запросов с балансировкой нагрузки системы // Автоматика и вычислительная техника. 2000. № 6. С. 73—81.
5. Богатырев В. А., Богатырев С. В. К анализу и оптимизации серверных систем кластерной архитектуры с балансировкой нагрузки // Приборы и системы. Управление, контроль, диагностика. 2010. № 2. С. 4—9.
6. Богатырев В. А., Богатырев С. В. Объединение резервированных серверов в кластеры высоконадежной компьютерной системы // Информационные технологии. 2009. № 6. С. 41—47.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2012. Т. 55, № 10

Задачи синтеза систем с потерями

57

7. Богатырев В. А., Богатырев С. В., Голубев И. Ю. Оптимизация структуры и процесса перераспределения заданий между кластерами вычислительной системы // Автоматика и вычислительная техника. 2012. № 3. С. 73—81.

8. Богатырев В. А. Мультипроцессорные системы с динамическим перераспределением запросов через общую магистраль // Изв. вузов Приборостроение. 1985. № 3. С. 33—38.

9. Богатырев В. А. Надежность функционально-распределенных резервированных структур с иерархической конфигурацией узлов // Изв. вузов. Приборостроение. 2000. № 4. С. 67—70.

10. Богатырев В. А. Оптимальное резервирование системы разнородных серверов // Приборы и системы. Управление, контроль, диагностика. 2007. № 12. С. 30—36.

11. Клейнрок Л. Теория массового обслуживания. М.: Машиностроение, 1979.

12. Кофман А., Крюон Р. Массовое обслуживание. М.: Мир, 1965.

Владимир Анатольевич Богатырев
Станислав Владимирович Богатырев Анатолий Владимирович Богатырев

Сведения об авторах — д-р техн. наук, профессор; Санкт-Петербургский национальный
исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: Vladimir.bogatyrev@gmail.com — „АЙТИ ХАУС“, Санкт-Петербург; главный инженер; E-mail: realloc@gmail.com — аспирант; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: ganglion@gmail.com

Рекомендована кафедрой вычислительной техники

Поступила в редакцию 08.02.12 г.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2012. Т. 55, № 10