УДК 681.3
В. А. Богатырев, С. В. Богатырев, А. В. Богатырев
ФУНКЦИОНАЛЬНАЯ НАДЕЖНОСТЬ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ С ПЕРЕРАСПРЕДЕЛЕНИЕМ ЗАПРОСОВ
Предложен метод оценки функциональной надежности вычислительных систем по вероятности выполнения запроса в системе за время, не превышающее предельно допустимого значения. Предлагаемый подход к оценке позволяет учитывать возможность адаптации системы к отказам и изменениям потока запроса путем перераспределения запросов между вычислительными узлами через сеть.
Ключевые слова: отказоустойчивость, распределенные вычислительные системы, перераспределение запросов, кластер, оптимизация, режим реального времени.
Введение. Высокая функциональная надежность и отказоустойчивость распределенных вычислительных систем, объединяющих ресурсы нескольких кластеров, достигаются за счет перераспределения запросов между узлами кластеров [1—2]. Перераспределение запросов через сеть вносит дополнительную задержку, но увеличивает возможности адаптации системы к изменению потока запросов, к отказам и отключениям узлов, что определяет актуальность задачи анализа и оптимизации процесса распределения запросов, особенно для систем, работающих в режиме реального времени с жесткими ограничениями на время выполнения запросов.
Постановка задачи оптимизации распределения запросов. Рассмотрим распределенную компьютерную систему (рис. 1), содержащую локальные (отдельные) кластеры 51, на каждый из которых поступает отдельный поток запросов, и доступный через сеть общий кластер 53, обеспечивающий возможность адаптации системы к отказам и перегруженности серверов путем перераспределения запросов через сеть.
Для компьютерных систем, функционирующих в режиме реального времени, в качестве критерия оптимизации выберем максимум функциональной надежности, определяемой как вероятность выполнения заданий (функциональных запросов) за время, не превышающее предельно допустимого значения Указанный критерий имеет две составляющие:
— вероятность сохранения работоспособности системы при отказах;
— вероятность выполнения запроса в системе за время, не превышающее предельно допустимого значения, с учетом деградации вычислительных возможностей системы по мере накопления отказов.
Локальные кластеры ^ Общий кластер
Рассмотрим возможности увеличения функциональной надежности систем с разделением потока запросов к каждому локальному кластеру, достигаемого перераспределением
запросов (нагрузки) между кластерами с учетом отказов ресурсов кластеров и возможной неравномерности потока запросов к ним [2—5].
Для такой системы, предусматривающей перераспределение запросов через магистрали 52 между кластерами, задача включает оптимизацию структуры системы (при проектировании) и процесса распределения запросов (при эксплуатации) в системе [6—10].
Задача оптимизации структуры является статической (выполняется до начала функционирования системы — изменение структуры функционирующей системы возможно только в результате отказов), а задача распределения запросов — динамической, решаемой в процессе функционирования системы на основе мониторинга текущей загруженности узлов системы и характеристик потока запросов.
При оптимизации структуры для заданных ограничений на стоимость реализации системы требуется найти число (кратность резервирования) магистралей Я (узлов коммутации) и серверов в локальных кластерах N и в общем кластере М, обеспечивающих наибольшую вероятность выполнения запросов за время '0.
Для локального кластера определяется доля потока запросов, перераспределяемых через сеть в общий кластер, при которой достигается максимум вероятности выполнения запросов за время '0.
Оценка функциональной надежности. В исследуемой системе запросы, поступающие в локальный кластер 51(а) с интенсивностью Х=аЛ (Л — интенсивность входного потока запросов в системе), с вероятностью g обслуживаются внутри него и с вероятностью (1—§) перераспределяются через сеть (резервированные магистрали) 52 в общий кластер 53. Число узлов в системах 51, 52, 53 в исходном состоянии (без отказов) соответственно равно N, Я, М.
Интенсивность поступления запросов в общий кластер 53 через сеть 52, равна Л3= =Л((1—§)а+1). Поскольку каждый запрос, направляемый в общий кластер, сопровождается возвратом результатов, интенсивность передачи через сеть 52 запросов будем считать равной Л2=2Л((1^)а+1).
Представим каждый узел системы (серверы и магистрали) в виде одноканальной системы массового обслуживания типа М/М/1 [11].
Для локальных кластеров, не предусматривающих перераспределения запросов через сеть, вероятность своевременного выполнения запросов (непревышения значения '0) [12], с учетом того что на каждый из N серверов кластера поступает часть (1/Ж) потока запросов, определяется как
р = 1 ] д1 - =!_ГЛ^ ] д v-ж)'0,
где V — среднее время выполнения запроса сервером.
При абсолютной надежности узлов кластера, если g-я доля запросов выполняется в соответствующем локальном кластере, а (1—§)-я их доля перераспределяется через сеть в общий кластер, то
Р = g
1 _Г ) е V)
+(1 _ ^
А Л г л Л ,Л П Т)
1 ^ Д V--М-)('0_ Т2}
М
(1)
где Т2 — среднее время пребывания запросов в сети 52:
Т2 = 2
1 _2Лv2[а(1 _g) +1]/Я ' здесь v2 — среднее время передачи запросов и результатов их выполнения через сеть.
С учетом отказов вычислительной системы вероятность своевременного выполнения запросов определим как:
Р = р Р2 Р3
ё
1 -
ё Аау4
1_^X
V п )
п
+(1 - я ){1 -(Л[а(1 - я)+1]
^ т
+Р1 (1 - Р2 Р3)
1 Л[а(1-я )+1] ^
0 1 2Лу2[а(1-я )+1]
!> +
1 -
(1 Ла^|
Лаv 1 Р0
- е
п )
+ (1 - Р1 )Р2 Р,
, -(Ма +1] 1 е
1 Л[а+1]
V т
2Лу2[а+1]
т
(2)
где Р1Р2 Р3 — вероятность одновременной работоспособности рассматриваемого локального кластера, магистрали и общего кластера; Р1 (1 - Р Р3) — вероятность исправности рассматриваемого кластера при отказе остального оборудования системы; (1 - Р1) Р2 Р, — вероятность
отказа рассматриваемого кластера при сохранении функционирования системы за счет перераспределения запросов через сеть на общедоступный кластер,
Р1 = 1 - (1 - к^ , Р, = 1 - (1 - к2)К , Р, = 1 - (1 - к1)М ,
здесь к1, к2 — коэффициенты готовности сервера и магистрали;
к1 = 1М/ (^1 + М1), к2 = М2/ (^2 + М 2 ), Х1, Х2, ц1, ц2 — интенсивность отказов и восстановлений серверов и магистралей.
Математические ожидания числа исправных серверов в рассматриваемом локальном кластере п, в общедоступном кластере т и числа г магистралей определим как:
N
М
Я
-.Я-г
п = £С^к{(1 -к^-г, т = £С'мк{(1 -к\)М-г, г = ^С1як\(1 -к2)Я
г=1 г=1 г=1
Результаты расчетов. Расчеты значения вероятности Р проведем при М=20, N=5, Я=1, v=1, v2 =0,01 с для средней интенсивности запросов Л=10 1/с (рис. 2; 1 — ^ =1,5, 2 — 2, 3 — 5, 4 — 10 с).
Р
0,6
0,4
2 \ 1
3 \
4 \ ■ 1
0
0,2
0,8
ё
0,4 0,6
Рис. 2
Из представленных графиков видно, что существует оптимальное значение доли запросов, перераспределяемых через сеть для выполнения в общедоступном сервере, при котором
достигается максимальное значение вероятности (надежности) выполнения запросов за время, не превышающее предельно допустимого значения времени ожидания.
Для заданных параметров на основе целевой функции (1), (2) с использованием МаШСаё 15 определяется оптимальное значение доли запросов, перераспределяемых через сеть на выполнение в общедоступный кластер 53. Так, при Л=6 с-1, ¿0= 2 и 4 с оптимальному процессу перераспределения запросов соответствуют значения £=0,44 и 0,47. Результаты расчета вероятности Р при ¿0=2 и 4 представлены на рис 3, здесь кривые 1 и 2 соответствуют случаю перераспределения запросов через сеть при £=0,47; ¿0=4 с и £=0,44; ¿0=2 с; кривые 3 и 4 — системы без перераспределения запросов через сеть для ¿0=4 и 2 с соответственно.
Р
0,8
0,6 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.
* *
2
4 > 3
Задачи синтеза систем с потерями
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: [email protected] „АЙТИ ХАУС", Санкт-Петербург; главный инженер; E-mail: [email protected]
аспирант; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: [email protected]
Поступила в редакцию 08.02.12 г.
УДК 681.2
Т. И. Алиев ЗАДАЧИ СИНТЕЗА СИСТЕМ С ПОТЕРЯМИ
Формулируются задачи синтеза систем с потерями при наличии различных ограничений на характеристики их функционирования. В процессе синтеза определяются емкость накопителя и производительность устройства, обеспечивающие минимальную стоимость системы.
Ключевые слова: система с потерями, накопитель ограниченной емкости, производительность, вероятность потери, время пребывания, стоимость системы.
Введение. Проектирование дискретных систем со стохастическим характером функционирования, примерами которых могут служить информационно-управляющие системы, серверы локальных вычислительных сетей, сетевое оборудование (маршрутизаторы, коммутаторы) и т.п., осуществляется с использованием различных моделей и методов в зависимости от класса проектируемой системы, ее особенностей и требований, предъявляемых к качеству ее функционирования. При проектировании технических систем в качестве моделей целесообразно использовать системы и сети массового обслуживания с потерями, которые имеют накопители ограниченной емкости [1]. При некоторых предположениях могут быть получены аналитические зависимости для расчета характеристик дискретных систем со стохастическим характером функционирования, что позволяет эффективно решать задачи оптимального синтеза.
Владимир Анатольевич Богатырев —
Станислав Владимирович Богатырев — Анатолий Владимирович Богатырев —
Рекомендована кафедрой вычислительной техники