Научная статья на тему 'Длительность миграции виртуальных серверов в распределенной системе'

Длительность миграции виртуальных серверов в распределенной системе Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
91
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАСПРЕДЕЛЕННАЯ СИСТЕМА / МИГРАЦИЯ / ВИРТУАЛЬНЫЙ СЕРВЕР / N-K СХЕМА ХРАНЕНИЯ ФАЙЛОВ / ПОИСК ЧАСТЕЙ ФАЙЛА / ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / ЭМПИРИЧЕСКАЯ ФУНКЦИЯ РАСПРЕДЕЛЕНИЯ / ВЕРОЯТНОСТНОЕ ПРОСТРАНСТВО / DIJKSTRA'S ALGORITHM / VIRTUAL SERVER / N-K SCHEMA / FILE ASSEMBLE / SEARCH QUERY / SEARCH DEPTH / SIMULATION / PROBABILISTIC MODEL / SAMPLE / SEARCH AREA / RANDOM VECTOR / EVENT ALGEBRA / PROBABILITY MEASURE / REFERENCE SET / AVERAGE OF DISTRIBUTION / BINOMIAL COEFFICIENT

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Петров Виктор Анатольевич, Тормасов Александр Геннадьевич, Миркин Андрей Леонидович

В статье рассмотрена задача о длительности миграции виртуального сервера в распределенной системе. Представлено решение этой задачи в рамках двух математических моделей. Модели реализованы программно. Результаты продемонстрированы на конкретном примере.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Петров Виктор Анатольевич, Тормасов Александр Геннадьевич, Миркин Андрей Леонидович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Virtual servers migration duration in distributed systems

A problem of virtual server migration duration in distributed systems is resolved in the article. Solution is made on the base of two models. Models are implemented programmatically. Results are demonstrated at the concrete example.

Текст научной работы на тему «Длительность миграции виртуальных серверов в распределенной системе»

УДК 517.9

В. А. Петров, А. Г. Тормасов, А. Л. Миркин

Московский физико-технический институт Институтский переулок, 9, Долгопрудный, 141700, Россия.

Email: vipet@newmail.ru

ДЛИТЕЛЬНОСТЬ МИГРАЦИИ ВИРТУАЛЬНЫХ СЕРВЕРОВ В РАСПРЕДЕЛЕННОЙ СИСТЕМЕ

В статье рассмотрена задача о длительности миграции виртуального сервера в распределенной системе. Представлено решение этой задачи в рамках двух математических моделей. Модели реализованы программно. Результаты продемонстрированы на конкретном примере.

Ключевые слова: распределенная система, миграция, виртуальный сервер, N-k схема хранения файлов, поиск частей файла, имитационное моделирование, эмпирическая функция распределения, вероятностное пространство.

Задача о миграции

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

Нередко требуется смигрировать виртуальный сервер с одной машины распределенной системы на другую, т. е. скопировать его данные, необходимые для запуска. Такая потребность возникает, когда требуется освободить компьютер для обновления ее программного или аппаратного обеспечения. Для виртуального сервера, выполняющего сетевые задачи, может потребоваться миграция на машину, более «близкую» (в сетевом смысле) к клиентам для улучшения доступа к нему. Подробнее о виртуальных серверах и их миграции см. в [Pin-heiro, 2002].

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

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

Схема хранения файлов. Файлы в распределенной системе хранятся особым образом: каждый файл разбивается на блоки стандартного размера. Каждый блок разбивается на порции по так называемой N-k схеме. N и k - параметры этой схемы. Блок разбивается на N порций, причем так, что из любых k порций можно собрать весь блок целиком! (N всегда больше или равно k).

Таким образом, один файл хранится в системе, хоть это и несколько избыточно, для того, чтобы повысить надежность и скорость сборки файла - процедуры сбора каждого блока файла из порций и самого файла из этих блоков. Подробнее об N-k схеме см. в [Хасин, 2001; Castro et al., 2004].

Процедура сборки файла. Сборка файла производится в предположении полной неопределенности расположения его порций. Пусть процедура сборки запущена на некотором цен-

ISSN 1818-7900. Вестник НГУ. Серия: Информационные технологии. 2009. Том 7, выпуск 1 © В. А. Петров, А. Г. Тормасов, А. Л. Миркин, 2009

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

• если он содержит требуемую порцию, отсылает обратно сообщение об этом;

• рассылает запрос всем своим соседям, кроме общих с узлом, пославшим ему запрос.

Каждый запрос имеет характеристику TTL (time-to-live) - максимальное количество узлов,

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

1. Получив запрос повторно (от другого соседа), узел рассылает его лишь в том случае, если пакет способен пройти дальше остальных: его TTL меньше, чем у всех ранее проходивших через компьютер пакетов этого запроса [Петров, Тормасов, 2006; 2007].

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

• делает слепок (snapshot) сервера - файл, хранящий состояние виртуальной машины на текущий момент времени t°;

• записывает слепок в сеть;

• удаляет слепок для предыдущего момента времени t—.

Для миграции такого виртуального сервера в некоторый момент t будет достаточно:

• собрать на новой машине его слепок по последний момент времени t°;

• скопировать с прежней машины на новую файл с разницей состояний виртуального сервера в моменты t° и t.

Оценка длительности миграции

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

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

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

• ©П - время пересылки сетевого пакета узлом n;

• ©2 - время обработки запроса (на сборку файла) на узле n;

• Vnm - пропускная способность соединения между узлами n и m;

• Qn - количество требуемых порций на машине n;

1, если посылка пакета от n до m была

=

успешной, 0, если при посылке пакета от п до т произошла ошибка (пакет не дошел до т). Заметим, пт = 1} = 0 означает, что узлы пит просто не соединены. Длительность миграции также представляется в модели случайной величиной, зависящей от вышеописанных.

Остальные параметры при оценке длительности миграции считаются заданными постоянными величинами:

• структура распределенной системы: множество узлов и схема связей между ними;

• Tj - сетевая задержка (latency) при передаче данных между узлами i и j, фактически

определяется физическим расстоянием между узлами, поэтому меняться не может;

• d - глубина поиска (максимальное количество узлов, которое может пройти запрос с поиском).

В работе требуется найти функцию распределения длительности процесса миграции. Передача данных между соседями. Стандартное представление времени передачи данных объема V по соединению между узлами i и j (обозначим его за ©j (V)) с пропускной способностью Vj и задержкой тр таково:

©j (V) = f+Tj,

j

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

После введения ©j (V) следует уточнить роль Vj - она моделирует среднюю пропускную

способность соединения между i и j за период передачи данных.

Пусть теперь узлы i и j не являются соседними. Рассмотрим множество путей из i в j

Pj = {lr: lr = (l0 = i, l1,..., lr-1, lr = j)}, состоящее из цепочек узлов, являющихся соседями lr . Определим ©jj. (V) следующим образом:

©j (V)=p?®©^)+©U. (1)

'r eP4 k=0

Утверждение 1: минимум в (1) достигается на элементе множества Pj . Доказательство: разделим все множество путей P^ на два подмножества - пути, содержащие циклы (P1) и не содержащие (Pj). Любой путь из P1 длиннее соответствующего ему пути из Pj2 , поэтому:

p?®©3^ (V)+©L)}=pj?©©«+, (V)+©1 J}.

'r P k=0 l'4 k=0

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

S

номеров узлов также конечно (не больше ^C'S • i! для S узлов, поскольку C'S • i! - верхняя

1=0

оценка для количества путей из i узлов). Таким образом, минимум по множеству Pj (а значит, и Pj ) достигается на одном из его элементов.

Пусть минимум из (1) достигается на некоторой цепочке Lr = (L0,..., Lr) (эта цепочка -случайный вектор). Тогда успех / неудачу передачи данных между i и j будет описывать величина

% L) =П ^ .

J LkLk+1 k =0

Длительность миграции. Обозначим искомую длительность миграции за TM . А длительности копирования на новую машину базовой части виртуального сервера из сети и файла с разностью состояний за TB и TD соответственно (индексы от слов Base - базовый и Difference - разница).

Тогда

Гм = шах(7в, Та },

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

Пусть Уа - объем файла с разностью состояний. Его копирование на новую машину займет время:

Тс =®3 V),

где 1 и] - узлы источника и преемника процесса миграции соответственно.

Пусть Ув - объем базовой части виртуального сервера, а п1,п2,...,пы - узлы, хранящие порции базовой части виртуального сервера. Поскольку размер одной порции в N - к схеме

Ув

равен —, то порции с узла ni прибудут на целевой узел миграции с через время: к

Т = ©3 (У ) + ©2

1 сп V а ' п

(-в-), 1 = 1... N .

■Ув. к

(2)

Тогда длительность второго этапа миграции Тв равна к-му по порядку элементу последовательности (71, Т2,..., Тьг).

Вычислять функцию распределения напрямую по формуле (2) чрезвычайно сложно главным образом потому, что величины ©3п (Уа) оказываются зависимыми. Поэтому для решения задачи был выбран метод имитационного моделирования. В нем процесс миграции симулируется в соответствии в описанной моделью:

• сначала порции базовой части виртуального сервера «разбрасываются» по узлам распределенной системы (фактически генерируются значения Qn);

• пересылка данных между соседями выражается в генерации значений Ут и ¥пт;

• значения ©1п и ©П генерируются при пересылке данных или обработке запроса на поиск частей файла соответственно.

Длительность миграции

Выборка значений

п .. Генерация случайных

Заметим, что возможность неудачной пересылки данных (т. е. их потери) позволяет

"п. <й>л, "пт* «л, тлт

всему процессу миграции завершиться неуспешно. Результатом имитационного моделирования будет значение длительности миграции в случае успешного завершения миграции или просто сам факт неудачной миграции. Повторив процесс многократно, получим множество значений длительности (рис. 1) - выборку и процент успешного за- Рис■1 Схема моделировав

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

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

Доказательство: точная имитация процесса миграции в терминах модели распределенной системы гарантирует, что полученный в результате ряд значений действительно реализации длительности. А теорема Гливенко доказывает сходимость по вероятности ее эмпирической функции распределения к истинной.

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

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

©1 ^ = E (©1) = const;

©2 ^92 = E(©2) = const;

V ^ v = E(V ) = const;

nm nm V nm' '

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• пересылка пакета всегда успешна:

• ^nm = 1 V(n, m);

• порции файла равномерно разбрасываются по узлам распределенной системы.

Представления других величин оставим неизменными: случайная величина Qn и константы Ту и d, а также длительности двух этапов миграции TB, TD и объемы VB , Vq и VD . Упрощение модели необходимо для определения распределения длительности ввиду сложностей, описанных выше.

2. Пусть в распределенной системе M узлов. Вероятностный характер новой модели придает разброс порций по узлам сети. Он будет производиться генерацией значений слу-

Ф,

где компоненты (Ф; }i=1 - одинаково распределенные случайные

чайного вектора ФN =

Ф N

величины, принимающие значения 1,..., М с равной вероятностью ( —). Значение величины

М

Ф7 означает номер узла, на котором лежит 7-я порция файла. Определим конкретнее вероятностное пространство вектора Фы [Чернова; Гнеденко, 1988]:

• множество элементарных исходов О - всевозможные векторы с целыми компонентами из [1, М] ;

• алгебра событий - все подмножества О;

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

Расчет длительности миграции. Длительности пересылки сетевого пакета объема V между узлами п и т впт также будут постоянными величинами в новой модели:

еПт V) = щ*® ^^ + +1)>.

'Г " к=0

Поскольку ТМ = шах{Тв, Тв} , а Тв = е3 (Ус) - постоянная величина, то функция распределения ТМ :

3 Го, I <е?(^),

*мМ = р{шах{Тв,е; )}} ^ 1>е;,Го). <3)

Найдем функцию распределения Тв - ЕТ (х). Благодаря постоянству ©П, ©2 и Vnm длительность сборки порций базовой части Тв здесь может принимать только дискретные значения, равные

Т =е3 (V)+е2+е3

п оп\ ц' п пеУ к ' '

где п = 1,..., М, а е - целевой узел миграции.

Перенумеруем М узлов распределенной системы по возрастанию Т п:

Т < Т < < Т < < Т

-М — 2 —•••— 1 7 —■■■— 1М ^

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

а,...,а, г<м:

а={ /\т = т'},

У7 = 1..М -1, У/ е , У/2 е : ТЛ < Тк.

Тогда вероятность для длительности сборки порций базовой части Тв принять значение Т , Р{Тв = Т- } [=1, будет равна вероятности найти последнюю из необходимых, к-ю порцию файла на одном из узлов из множеств Q¡ соответственно.

Итак, в новой модели Тв - случайная величина, принимающая дискретный ряд значений Т с вероятностями Р{Тв = Т } . Их совокупность и представляет собой распределение Тв. Найдем Р{Тв = Т[}.

Обозначим за S¡ область поиска, покрываемую за Ti : Si = ^Qj, - = 1... г . Пусть также,

1

для общности, Q0 = S0 = 0 (пустое множество). Рассмотрим набор событий

к-1

А = и ({В ^ содержится у порций}^ {Q¡ содержит > к - у порций}).

Докажем ряд утверждений относительно этих событий. Утверждение 3: Все события А1, А^..., Аг - независимы.

Доказательство: покажем, что V- Уд : д > - Ai п Ад = 0. Действительно, во всех элемен-

ч-1

тарных исходах из множества Ад, д > -, узлы из S1 = содержат не более к - 1 порции.

1

Поскольку д > -, то S¡ с Sg-1. Но множество А{ содержит только такие элементарные исходы, для которых S¡ = S¡-1 и Qi содержит не менее к порций. Поэтому А{ и Ад никак не могут

иметь общих элементарных исходов, т. е. не пересекаются.

Утверждение 4: А1 и А и... и Аг = 0 (О - пространство всех элементарных исходов). Доказательство: для любого элементарного исхода из О (разброса N порций среди всех узлов) рассмотрим количество порций на узлах из множеств S¡. Поскольку Si-1 с S¡ V- = 2,...,г , то S¡ содержит не меньше порций, чем ^ . Самое крупное множество узлов содержит все N порций. Поэтому всегда найдется такой номер 2 < - < г, для которого содержит все еще не более к -1 порций, а S¡ содержит уже не менее к порций. Это как раз и означает, что выбранный нами элементарный исход принадлежит А. Иными словами,

Ую еО 3-': юе А,

что и требовалось доказать.

Утверждение 5: длительность сборки порций базовой части Тв может быть равна Т1 в том и только том случае, если в S¡-1 содержатся у < к -1 порций искомого файла и Qi содержит не менее к - у порций, т. е. идентичны события {Тв = Т{} = А{ .

Доказательство: поскольку для сборки файла необходимо не менее к порций, то условие «в S¡-1 содержится у < к -1 порций искомого файла» гарантирует, что поиск не закончится

раньше Т-1, при этом « Qi содержит не менее к - у порций» обязывает его закончиться на одном из узлов множества Qi. Длительность в этом случае будет равна Т-1 . И наоборот, Тв = Т-1 означает, что поиск завершился на одном из узлов Qi, не раньше. Утверждение 6: вероятности Р(А) определяются формулами

Р(А) = £^(1^(1 - , (4)

3=к

Р( А) = УСу [У С1 (^У (Щу-г ](1 - ^-1| + ^-1)- у, 2 < - < г -1, (5)

у=к 1=0 у м м м

р( л)=е с1м (1Ш) ^. (6)

1=0 М М

Здесь СN - биномиальный коэффициент.

Доказательство: покажем, откуда берется формула (5). Формулы (4) и (6) лишь ее частные случаи, расписывающие неопределенности типа О0: ведь | 501= (1 - 1 5г-1 1 +1 |) = 0 . Они

М

получатся из (5), если считать, что О0 = 1.

В формуле (5) для Р() по ] суммируются вероятности разбить все множество узлов на две группы: Si = и Qi и остальные узлы так, чтобы Si содержало ] > к порций. Причем эти ] порций должны быть распределены следующим образом: I < к -1 порций в множестве и остальные ] -1 порций в множестве Qi, за что и отвечает внутреннее суммирование по 1. Итак распределение порций в случае события Лi выглядит следующим образом:

(е,а -ем)а1а+1-

3

Таким образом, утверждения 3-5 позволяют нам искать Р(Л{) вместо Р{ТВ = Ti}, а утверждение 6 дает численные выражения для них. Кратчайшие времена достижения узлов

(V) вычислим по алгоритму Дейкстры. Распределение длительности миграции ТМ полностью определяется формулами (3)-(6).

Пример

Выбор распределений. Расположение порций базовой части по узлам распределенной системы при расчете по обеим моделях считается в примере равномерным. На одном компьютере при этом могут располагаться хоть все N порций (с вероятностью (—)N). Мы исходим из

М

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

Распределения времени обработки (®2п) и пересылки (©п) запроса узлом п принимаются нормальными (е N(1 ООО мс, 100 мс)). Такой вид распределения - самый распространенный в природе, так что выбор представляется естественным. Значения математического ожидания и дисперсии было взято из опытных данных по обработке сетевых запросов.

Пропускная способность Vlml соединения между п и т в имитационной модели распределена равномерно на отрезке [1, Vnmx ], чтобы подчеркнуть спонтанный, случайный характер сети. Параметр VnImax был выбран равным очень распространенному в современных локаль-

мбит байт

ных сетях значению пропускной способности в 100- или 13107,2-. В теоретиче-

с мс

тах пт

V

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

Вероятность успешной передачи данных между соседними узлами была принята равной 0,95, т. е. величина ¥пт е В095.

Распределенная система. Структура распределенной системы, на которой производились все расчеты, представлена на рис. 2. Для хранения файлов используется N - к-схема с N = 10, к = 5 . Исследуется миграция с узла № 19 на узел № 5. При этом на узле 5 собирается базовая часть мигрируемого виртуального сервера. Одновременно файл с разницей состояний переносится по выделенному пути. Глубина поиска порций базовой части равна 3.

14

Объяснение отличий. На рис. 3 представлены функции плотности (слева) и распределения (справа) длительности миграции в описанных выше условиях моделирования. Для теоретической модели множество всех точек плотности вероятности различимо разделено на три группы. Первая (до 2,2 • 104 мс) соответствует расположению к порций базовой части на узле 5 и его ближайших соседях (узлах 3, 4, 10, 11). Вторая (3,5 -104 - 4,0 -104 мс), самая вероятная, - расположению к порций на соседях «второго порядка» узла 5 (узлах 1, 2, 7, 8, 13, 15, 16). И третья (более 5,3 • 104 мс) - на самых дальних узлах.

В имитационной модели за счет учета дополнительных случайных параметров нет различий между группами. Более того, наблюдается интересный феномен: она дает большую в среднем длительность поиска (математические ожидания равны 3,8 -104 мс для теоретической модели и 5,2 • 104 мс для имитационной). Он возникает из-за того, что длительность передачи данных ©3 (V) обратно пропорциональна случайной пропускной способности .

Например, рассмотрим две последовательные пересылки данных от узла А через В к С. Пусть

3 V для простоты ©.. (V) = —.

1 V-1

1. Если пропускная способность при обеих пересылках постоянна V. = V , то

3 V V V ©3АС (V) =-+-= 2-*.

АСУ ' V V V

г АВ у ВС у

2. Если пропускная способность равномерно распределена на некотором отрезке (как в

то

V 3V

нашей имитационной модели) и равна сначала VAB = —, а потом VBC =

V

©Ас (V) =

V

V V

АВ ВС

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

= 2

2 V

'3 У^

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

Сводимость имитационной модели к теоретической. Покажем, что при изменении отрезка распределения пропускной способности V.:

[1, Ктах] ^ [

I- ' пт J V.

1

1

1 - - ] V

г

тах пт

Имитационная модель Теоретическая модель

Рис. 4. Средняя длительность миграции

средняя длительность поиска имитационной модели приближается к теоретической при г ^ 2 (рис. 4).

Графики функций плотности и распределения длительности миграции в конечной точке, при г = 2, показаны на рис. 5. Нетрудно заметить, что четкое разделение трех описанных выше групп точек появилось и в имитационной модели.

Заметим, что полное совпадение распределений невозможно из-за коренных различий моделей: длительность миграции в теоретической модели дискретна. Ее распределение есть набор значений с вероятностями их принимать. Количество значений равно числу узлов системы (20). В имитационной модели строится эмпирическая функция распределения, которая может быть непрерывной. Причем подробность деталей распределения определяется количеством точек (100 для графиков на рис. 5).

Вероятность

Имитационная модель-/

. Теоретическая модель- 1 .

—*-1-йбйАпппОПППйПШ/ Й .к

Теоретическая модель Имитационная модель

Длительность миграции, мс

Длительность миграции, мс

Рис. 5. Распределение длительности миграции при постоянной пропускной способности в имитационной модели

Вклад миграции разницы состояний, %

Имитационная модель Теоретическая модель

Размер файла с разницей состояний, МБ

Проще говоря, график теоретического распределения должен быть более грубым, усредненным, что мы и наблюдаем на рис. 5.

Преимущества двухэтапной миграции. Длительность миграции определяется двумя величинами: длительностью сборки базовой части и временем переноса файла с разностью состояний. В приведенных выше результатах размер файла с разностью состояний был равен 10 Мб, против 500 Мб базовой части. Поэтому вторая величина вносила в длительность миграции слабый вклад. На рис. 6 показано измене -ние этого вклада при изменении размера файла с разностью состояний. По оси Y отложен процент точек, в которых max{TB, TD } = TD .

При размерах файла с разницей состояний, больших 180 Мб, его копирование на целевую машину вносит основной вклад в длительность всего

и £Xt чи OU OU IUU I ¿U !*»U ICU IOU

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

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

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

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

2. Функция распределения позволяет спрогнозировать длительности миграции с любой заданной вероятностью. И, наоборот, для любой целевой длительности миграции можно оценить вероятность, с которой она будет превышена.

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

Заключение

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

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

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

Список литературы

Хасин М. А. Модель распределенного хранилища в глобальной сети: Работа на соискание степени канд. физ.-мат. наук. М.: МФТИ, 2001.

Castro M., Druschel P., Kermarrec A., Nandi A., Rowstron A., Singh A. SplitStream: High-Bandwidth Multicast in Cooperative Environments. Microsoft Research, Rice University, 2004 [Электронный ресурс]. Режим доступа: http://research.microsoft.com/~antr/PAST/SplitStream-sosp.pdf.

Петров В. А., Тормасов А. Г. Доставка информации пользователю в распределенных системах // Проблемы вычислительной математики, математического моделирования и информатики: Сб. науч. тр. М.: МФТИ, 2006.

Петров В. А., Тормасов А. Г. Влияние пропускной способности соединений на длительность поиска в регулярных графах // Моделирование процессов обработки информации: Сб. науч. тр. М.: МФТИ, 2007.

Чернова Н. И. Теория вероятностей: Курс лекций. [Электронный ресурс]. Режим доступа: http://www.nsu.ru/mmf/tvims/chernova/tv/portr.pdf.

ГнеденкоБ. В. Курс теории вероятностей. М.: Наука, 1988.

Pinheiro E. Truly-Transparent Checkpointing of Parallel Applications // Federal University of Rio de Janeiro, UFRJ., 2002 [Электронный ресурс]. Режим доступа: ftp://ftp.inria.fr/INRIA/ publication/publi-ps-gz/RR/RR-5755.ps.gz.

Материал поступил в редколлегию 21.08.2008

V. A. Petrov, A. G. Tormasov, A. L. Mirkin VIRTUAL SERVERS MIGRATION DURATION IN DISTRIBUTED SYSTEMS

A problem of virtual server migration duration in distributed systems is resolved in the article. Solution is made on the base of two models. Models are implemented programmatically. Results are demonstrated at the concrete example.

Keywords: virtual server, N-k schema, file assemble, search query, search depth, simulation, probabilistic model, sample, search area, random vector, event algebra, probability measure, reference set, average of distribution, binomial coefficient, Dijkstra's algorithm.

i Надоели баннеры? Вы всегда можете отключить рекламу.