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

ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ ЗАПРОСОВ В СИСТЕМЕ КЛАСТЕРОВ ПРИ СОЧЕТАНИИ АНАЛИТИЧЕСКОГО И ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

И.Ю. Голубев, В.А. Богатырев

УДК 004.75
ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ ЗАПРОСОВ В СИСТЕМЕ КЛАСТЕРОВ ПРИ СОЧЕТАНИИ АНАЛИТИЧЕСКОГО И ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ
И.Ю. Голубев, В.А. Богатырев

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

Введение

Основными требованиями, предъявляемыми к распределенным вычислительным системам, явля-

ются их надежность, отказоустойчивость и производительность [1]. Высокая отказоустойчивость и про-

изводительность распределенных систем достигается в результате эффективного распределения запросов

(нагрузки) между их узлами [2–8]. В распределенных вычислительных системах, объединяющих множе-

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

личных кластеров, соединенных через сеть. Во втором случае увеличиваются издержки на межмашин-

ный обмен, но возрастают возможности балансировки загрузки и сохранения работоспособности при

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

ления запросов и разработки соответствующих процедур оптимизации.



Постановка задачи

Цель представленной работы – разработка процедуры оптимизации распределения запросов между кластерами вычислительной системы при различных законах распределения интервалов между поступающими в систему запросами и времени их обслуживания.
Структура исследуемой распределенной вычислительной системы кластеров представлена на рис. 1.

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

Д 1 2 …m

Сеть
Локальный кластер
 (1-g)
Д 1 2 …n
g 1


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

Рис. 1. Структура распределенной вычислительной системы

Научно-технический вестник информационных технологий, механики и оптики, 2012, № 5 (81)

79

ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ ЗАПРОСОВ В СИСТЕМЕ КЛАСТЕРОВ...

В системе имеется M локальных кластеров (по n серверов в каждом) и группа из m общедоступных серверов (общий кластер), обеспечивающая возможность адаптации системы к перегрузкам отдельных локальных кластеров в случае отказов входящих в их состав серверов или к возрастанию потока запросов к локальным кластерам. Компьютеры кластеров связывает сеть, включающая N резервированных коммутационных узлов (маршрутизаторов или коммутаторов). Распределение потока запросов осуществляется диспетчерами (Д), направляющими запросы на выполнение внутри кластера или через сеть в общий кластер.
Ставится задача оптимизации процесса распределения потока запросов между кластерами при различных законах распределения интервалов между поступающими в систему запросами и времени их обслуживания. В результате оптимизации распределения запросов для заданной структуры системы требуется найти их долю gi, перераспределяемую через сеть в общий кластер, при которой достигается минимум времени пребывания запросов T в системе кластеров. Поиск проводится для заданных вариантов значений интенсивностей запросов (λi) и их вероятностей (bi).

Оптимизация процесса распределения запросов

При проектировании вычислительных систем применяется как аналитическое, так и имитационное моделирование. Результаты аналитического моделирования при законах распределения интервалов между поступающими в систему запросами и времени их обслуживания общего вида могут иметь существенную погрешность, а имитационное моделирование не ориентировано на решение оптимизационных задач и требует значительного времени и ресурсов компьютера для проведения имитационных экспериментов [9].
Для решения оптимизационной задачи, если законы распределения интервалов между поступающими в систему запросами и времени их обслуживания – не экспоненциальные, предлагается комбинированный подход, предполагающий совместное применение аналитических и имитационных моделей.
В рамках комбинированного подхода разработана процедура оптимизации распределения запросов, включающая следующие этапы:
 предварительное определение оптимальной доли перераспределяемых через сеть запросов в предположении простейшего потока запросов и экспоненциального распределения времени обслуживания с использованием аналитического моделирования;
 уточнение результатов оптимизации на основе проведения имитационных экспериментов в области значений, полученных в ходе аналитического моделирования. Если законы распределения интервалов между поступающими в систему запросами и времени их
обслуживания известны, то эксперименты проводятся в условиях соответствующих законов распределения; в противном случае эксперименты проводятся при варьировании законов распределения нагрузочных параметров; решение определяется по среднему результату или по известным критериям принятия решений.

Аналитическая модель системы с перераспределением запросов

При оптимизации на основе аналитического моделирования воспользуемся результатами работы [4], в которой показана эффективность динамической оптимизации процесса перераспределения запросов между кластерами вычислительной системы.
Критерий оптимальности определен как

h

T



min
gi 

biT (gi , λi ) ,
i0

   T

(gi

,

λi

)



gi



 

1



v0 gi λi v0

/

n

  



1 

gi


 

1

2v1
1 gi   β

 2λiv1 / N 1 

v2
1 gi   β

 λiv2 / m  .

Здесь h – число возможных значений интенсивности входного потока; v0 , v1, v2 – средние времена
выполнения запросов в серверах локального кластера, в коммутационных узлах и в серверах общего кластера. Нагрузка общедоступного кластера от множества локальных кластеров моделировалась потоком запросов с интенсивностью Λi=βλi, N – число (кратность резервирования) коммутационных узлов в сети, через которые возможно перераспределение запросов.
Оптимизация проводилась для i = 0, 1,…, h и при условии стационарности:

    giλiv0 / n  1  1 gi   β 2λiv1 / N  1  1 gi   β λiv2 / m  1 .

В предположении простейшего потока запросов и экспоненциального распределения времени обслуживания определяется зависимость значений доли перераспределяемых через сеть запросов gi от интенсивности запросов λi, при которой среднее время пребывания запросов в системе минимально [4].
В результате оптимизации на аналитической модели найден [4] вектор значений доли перераспределяемых запросов (0,721; 0,494; 0,456; 0,446; 0,446; 0,451).

80 Научно-технический вестник информационных технологий, механики и оптики,
2012, № 5 (81)

И.Ю. Голубев, В.А. Богатырев
Построение имитационной модели На втором этапе оптимизации в среде AnyLogic 6 построена имитационная модель рассматриваемой системы, изображенная на рис. 2.

Рис. 2. Создание имитационной модели
Серия оптимизационных экспериментов проведена в области значений, полученных в результате аналитического моделирования, при следующих законах распределения интервалов между поступающими в систему запросами: экспоненциальный закон; равномерный закон; закон Эрланга 2-го порядка; гиперэкспоненциальный закон (с коэффициентом вариации 1,202).
Оптимизация проведена для n = 10 шт., N = 5 шт., m = 30 шт.; v0 = 10 c, v1 = 1 c, v2 = 10 c, β = 1. Варианты возможных значений интенсивностей запросов и их вероятности представлены векторами (0,1; 0,3; 0,5; 0,7; 0,9; 1,1) и (0,1; 0,1; 0,15; 0,15; 0,2; 0,3), а вероятности соответствия закона распределения интервалов между поступающими в систему запросами моделируемым законам – (0,2; 0,25; 0,25; 0,3).
Сравнение аналитической и имитационной моделей
Результаты анализа моделей при экспоненциальном распределении интервалов между поступающими в систему запросами и времени их обслуживания представлены на рис. 3, а, б. Кривые 1 соответствуют интенсивности входного потока 0,1 с–1, кривые 2 – 0,3 с–1, кривые 3 – 0,5 с–1, кривые 4 – 0,7 с–1, кривые 5 – 0,8 с–1. Из представленных графиков видно, что существует оптимальное значение доли запросов (g), перераспределяемых через сеть на выполнение в общий кластер, и для построенных моделей оно совпадает.

аб Рис. 3. Среднее время пребывания запроса в системе: аналитическая модель (а) и имитационная модель
(б). Кривые 1–5 соответствуют интенсивности входного потока 0,1; 0,3; 0,5; 0,7; 0,8 с–1.

Научно-технический вестник информационных технологий, механики и оптики, 2012, № 5 (81)

81

ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ ЗАПРОСОВ В СИСТЕМЕ КЛАСТЕРОВ...

Результаты второго этапа оптимизации представлены в таблице. Согласно критерию Гермейера, оптимальным является решение в строке 4.

Вектор значений доли № перераспределяемых
запросов (gi)

1

(0,716; 0,508; 0,454; 0,453; 0,447; 0,464)

2

(0,72; 0,484; 0,464; 0,47; 0,445; 0,458)

3

(0,738; 0,576; 0,452; 0,455; 0,457; 0,459)

4

(0,724; 0,505; 0,485; 0,467; 0,468; 0,475)

Среднее время пребывания запросов в системе T, c

Закон распределения интервалов между поступающими

в систему запросами

Экспонен- Равномерный Эрланга Гиперэкспо-

циальный

ненциальный

Результат (критерий Гермейера)

20,985

20,748

20,786

21,433

6,4299

21,101

20,722

20,917

21,378

6,4134

21,013

20,807

20,76

21,369

6,4107

21,052

20,739

20,883

21,367

6,4101

Таблица. Результаты второго этапа оптимизации

На рис. 4 показаны отклонения ε результатов, полученных в ходе имитационных экспериментов, от результатов аналитического моделирования: кривая 1 соответствует серии экспериментов для экспоненциального закона распределения интервалов между поступающими в систему запросами; кривая 2 – для равномерного закона; кривая 3 – для закона Эрланга, кривая 4 – для гиперэкспоненциального закона.
Максимальное отклонение результатов аналитического и имитационного моделирования при рассмотренных законах распределения интервалов между поступающими в систему запросами на всей рассматриваемой области значений интенсивности входящего потока запросов составило 16,6%, а среднее отклонение – 2,9% (0,082 и 0,015 в абсолютных значениях соответственно). Сужение области поиска оптимального значения до двух максимальных отклонений (0,164) на этапе уточнения результатов позволило сократить время, затраченное на имитационное моделирование, в 6 раз.

Рис. 4. Отклонения результатов имитационного моделирования. Кривые 1–4 соответствуют экспоненциальному, равномерному, эрланговскому, гиперэкспоненциальному законам распределения
интервалов между поступающими в систему запросами
Заключение
Предложена процедура оптимизации процесса распределения потока запросов между кластерами вычислительной системы при различных законах распределения интервалов между поступающими в систему запросами и времени их обслуживания.
Предложенная процедура оптимизации предусматривает выполнение этапа оптимизации на основе аналитического моделирования для простейшего входного потока и экспоненциального распределения времени обслуживания и уточнение результатов моделирования на основе имитационных экспериментов при реальных законах распределения интервалов между поступающими в систему запросами и длительности их обслуживания.
Литература
1. Таненбаум Э., Ван Стеен М. Распределенные системы. Принципы и парадигмы. – СПб: Питер. – 2003. – 877 с.
2. Gaeta M., Konovalov M., Shorgin S. Development of mathematical models and methods of task distribution in distributed computing system // Reliability: Theory & Applications. – 2006. – V. 1. – № 4. – P. 16–21.
82 Научно-технический вестник информационных технологий, механики и оптики,
2012, № 5 (81)

О.А. Кузнецова

3. Богатырев В.А., Богатырев С.В. К анализу и оптимизации серверных систем кластерной архитектуры с балансировкой нагрузки // Приборы и системы. Управление, контроль, диагностика. – 2010. – № 2. – С. 4–9.
4. Bogatyrev V.A., Bogatyrev S.V., Golubev I.Yu. Optimization and the Process of Task Distribution between Computer System Clusters // Automatic Control and Computer Sciences. – 2012. – V. 46. – № 3. – P. 103–111.
5. Богатырев В.А. К повышению надежности вычислительных систем на основе динамического распределения функций // Изв. вузов. Приборостроение. – 1981. – С. 62–64.
6. Богатырев В.А. Децентрализованное динамическое распределение запросов в многомашинных вычислительных системах // Электронное моделирование. – 1994. – Т. 16. – № 3. – С. 38.
7. Богатырев В.А., Богатырев С.В. Критерии оптимальности многоустойчивых отказоустойчивых компьютерных систем // Научно-технический вестник СПбГУ ИТМО. – 2009. – № 5 (63). – С. 92–97.
8. Богатырев В.А. Оптимальное резервирование системы разнородных серверов // Приборы и системы. Управление, контроль, диагностика. – 2007. – № 12. – С. 30–36.
9. Алиев Т.И. Основы моделирования дискретных систем: Учебное пособие. – СПб: СПбГУ ИТМО. – 2009. – 363 с.

Голубев Иван Юрьевич Богатырев Владимир Анатольевич

– Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, аспирант, www.golubev@mail.ru
– Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, доктор технических наук, профессор, Vladimir.bogatyrev@gmail.com

Научно-технический вестник информационных технологий, механики и оптики, 2012, № 5 (81)

83