Модель анализа надежности распределенных вычислительных систем


Цитировать

Полный текст

Аннотация

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

Полный текст

Характерной особенностью многих клиент-сервер- нефункциональных системных требований, например, ных приложений (КС-приложений) современных рас- производительности, защищенности, безопасности, пределенных выгаислительнык систем является их надежности [1]. При анализе архитектурных решений разнородность и рассредоточенность. При проектиро- в рамках современных систем существенное значение вании распределенных вычислительных систем име- для разработчика имеет возможность оценки архитекется ряд специфических особенностей. Это, в первую турной надежности КС-приложений как важной соочередь, зависимость архитектурной модели от ряда ставной части системы [2]. * Исследование вытолнено при поддержке Министерства образования и науки Российской Федерации, соглашение 14.B37.21.1872 «Синтез оптимальных катастрофоустойчивыгх распределенных вышислительных систем». 86 Математика, механика, информатика В распределенной вычислительной системе, кроме того, разные системные компоненты могут быть реализованы на разных языках программирования и выполняться на разных типах процессоров. Модели данных, представление информации и протоколы взаимодействия не являются однотипными в распределенных системах, поэтому архитектурная надежность является немаловажным фактором при проектировании [3]. Как правило, промежуточные составляющие формируются из готовых компонентов и не требуют от разработчиков специальных доработок. В архитектуре «клиент-сервер» серверная часть, как правило, устанавливается на отдельном компьютере-сервере, а клиентские части программного обеспечения (ПО) на рабочих местах, причем функциональный состав ПО - на рабочих местах различен. Серверная и клиентские части ПО могут функционировать в различных операционных средах. В связи с этим важной и актуальной является проблема анализа надежностных характеристик распределенных вычислительных систем с клиент-серверной архитектурой. Математическая модель анализа распределенных вычислительных систем клиент-серверной архитектуры. Предполагаем, что рассматриваемая система функционирует в нормальных (не граничных) условиях, поэтому можно допустить независимость отдельных отказов. В предлагаемой модели подсистемы невосстанавливаемые. Под распределенной вычислительной системой (РВС) будем понимать совокупность аппаратных и программных средств, реализующих следующие основные функции [4]: обработку, хранение, передачу и защиту данных. Структура вычислительной системы представлена на рис. 1, где сервер - это элемент, включающий в себя систему хранения данных (СХД) со своими системой передачи даны (СПД) и системой безопасности (СБ), клиент - элемент системы, содержащий систему обработки данных (СОД) со своими СПД и СБ, а концентратор служит для связи клиентов и сервера и состоит из СПД и СБ [5]. Будем рассматривать систему с N клиентами и одним сервером. Рис. 1. Структура распределенной вычислительной системы с радиальной структурой Можно выделить следующие виды отказов системы безопасности: скрытый и ложный [6]. При скрытом отказе СБ не парирует отказы остальных подсистем, при ложном СБ самопроизвольно вырабатывает защитные функции при нормальной работе СХД, СОД и СПД и приводит к останову системы. Основным показателем надежности будем считать вероятность потери данных за определенный интервал времени. Под потерей данных будем понимать реальное уничтожение или утечку данных либо невозможность в течение достаточно длительного интервала времени получить доступ к ним. Описание математической модели. На рис. 2 приведена графическая модель функционирования распределенной вычислительной системы, отражающая отказы ее подсистем и дальнейшее развитие ситуаций. Сплошными линиями обозначены переходы элементов, штриховыми - развитие ситуаций отказов элементов. Рис. 2. Графическая модель функционирования распределенной выгчислительной системы 87 Вестник СибГАУ. № 1(47). 2013 Состояния в графе означают следующее: 1 - нормальная работа СОД; 2 - отказ СОД; 3 - нормальная работа СПД клиента; 4 - отказ СПД клиента; 5 - нормальная работа СБ клиента; 6 - ложный отказ СБ клиента; 7 - скрытый отказ СБ клиента; 8 - нормальная работа СПД порта концентратора, к которому подключен клиент; 9 - отказ СПД порта концентратора, к которому подключен клиент; 10 - нормальная работа порта СБ концентратора, к которому подключен клиент; 11 - ложный отказ СБ порта концентратора, к которому подключен клиент; 12 - скрытый отказ СБ порта концентратора, к которому подключен клиент; 13 - нормальная работа СПД порта концентратора, к которому подключен сервер; 14 - отказ СПД порта концентратора, к которому подключен сервер; 15 -нормальная работа порта СБ концентратора, к которому подключен сервер; 16 - ложный отказ СБ порта концентратора, к которому подключен сервер; 17 -скрытый отказ СБ порта концентратора, к которому подключен сервер; 18 - нормальная работа СХД; 19 -отказ СХД; 20 - нормальная работа СПД сервера; 21 -отказ СПД сервера; 22 - нормальная работа СБ сервера; 23 - ложный отказ СБ сервера; 24 - скрытый отказ СБ сервера; 25 - состояние аварии РВС; 26 - состояние сниженной эффективности РВС; 27 - состояние останова РВС. При отказе СОД или СПД на клиенте либо отказе СПД порта концентратора, к которому подключен клиент, при нормально работающей соответствующей СБ клиент или порт концентратора переходит в состояние останова, а сама система - в состояние сниженной эффективности (как и при ложном отказе СБ клиента или порта концентратора, к которому подключен клиент). При отказе СХД или СПД сервера или СПД порта концентратора, к которому подключен сервер, при нормально работающей соответствующей СБ распределенная вычислительная система переходит в состояние останова, как и при ложном отказе СБ сервера или порта концентратора, к которому он подключен, а также при останове всех клиентов или портов концентратора, к которым подключены клиенты. При отказе любой из подсистем при скрытом отказе отвечающей за ее контроль СБ система переходит в состояние аварии. Будем рассматривать поведение системы на интервале [0, t]. Введем необходимые обозначения. Пусть у - наработка до отказа СОД, имеющая распределение fÿ(t) = Р(у < t); 5 - наработка до отказа СХД, имеющая распределение F5(t) = Р(5 < t); уь у2, у3 - наработки до отказа клиента порта концентратора и сервера соответственно, имеющие распределения Fy1 (t) = Р(у1 < t), Fy2 (t) = Р(у2 < t), Fy3 (t) = P(Y3 < t). Обозначим через р1, p2, и p3 наработки до скрытых, а через Пъ П2 и наработки до ложных отказов СБ клиента, порта концентратора и сервера соответственно с распределениями Fp1(t) = Р(р1 < t), Fp2(t) = Р(р2 < t), Fp3(t) = Р(р3 <t),FTl1 (t) = Р(П1 <t), F„2(t) = P(n, < t), Fn3(t) = P(n3 < t). Показатели надежности. Под показателями надежности подразумеваются вероятности перехода системы в состояния останова и аварии, а также интенсивности этих переходов [7; 8]. Вначале рассмотрим показатели надежности, относящиеся к переходам в состояние останова. Останов распределенной вычислительной системы наступит, если в состояние останова перейдут все клиенты или все порты концентратора, к которым подключены клиенты, сервер или порт концентратора, к которому он подключен. Вероятность того, что на интервале [0, t] произойдет останов, можно записать следующим образом: Po (t) = 1 - M(Рок1 (t)Рок2 (t)Рок3 (t)Рос (t)), где Рок1(0 - вероятность останова всех клиентов к моменту времени t; Рок2(0 - вероятность останова всех портов концентратора, к которым подключены клиенты, к моменту времени t; Рок3(0 - вероятность останова порта концентратора, к которому подключен сервер, к моменту времени t; Рос(0 - вероятность останова сервера к моменту времени t. Введем вспомогательные переменные. Пусть Ç, -время до останова i-го клиента, где i = 1, N . Тогда вероятность того, что на интервале [0, t] произойдет останов верх клиентов, определяется выражением Рж^ ) = Р f V Zi < t j , N где vÇi = max^Z2, ..., Zn) i=1 Используя свойства индикаторов и математического ожидания, получим Pокї(t) = MIn = M П/ç; <t = VZi <t i=1 i=1 = П MIç.<t = Il P(Zi < t) = П (1 - Рок (t)), i=1 i=1 i=1 где Pioк(t) - вероятность того, что останов i-го клиента не произойдет к моменту времени t; h < t - функция-индикатор (I 0 < t = 1 при Zi < t и 1q. < t = 0 при Q > t). Вероятность того, что i-й клиент к моменту времени t не перейдет в состояние останова: Р»к (t) = Р(IP1i .V; луц. Wi Л Y1i л Пи + 1рц. <v,луц. Пи >t)), где Wi л Y1i = mm(yi, Y1i). Проведя ряд аналитических преобразований, получим Рок (t) = Fn, (t)((1 - Fp1i (W )Fp1i (Y1i )) X xFVi. (t)Fy1i (t) + Fpu (Wi )Fpu (Y1i )). (1) Пусть Tj - время до отказа j-го порта концентратора, к которому подключен клиент, где j = 1, N. Вероятность того, что на интервале [0, t] произойдет останов всех портов концентратора, к которым подключены клиенты, определяется выражением 88 Математика, механика, информатика Рок 2 (t ) = P\ V Ti < t I = MIn к J=1 y V t, <t J=1 N N =m П It , <t =П mi t = Fn(t )( F,, j (P2 j ) F2(t )+F»(y 2 j )). P°k3 (t) Fn2(N+1) (t)(FY2(N+1) (P2(N+1) )FY2(N+1) (t) + +Fp P2(N+1) (y 2(N+1))). Вероятность того, что сервер не перешел в состояние останова на интервале [0, t]: рос(t) = P(Ip2 >5ay3 S л Y3 Л П3 + Ip2 <5ay3 П3 >t). Проделав ряд преобразований, получим: Рос (t) = Fn3 (t)((1 - Fp3 (S)Fp3 (Y3 ))Fs (t)F^ (t) + +Fp3 (S) Fp3 (Y3)). Тогда вероятность того, что на интервале [0, t] произойдет останов, можно записать следующим образом: (( N _ \ \ 1 -П (1 - Ргок (t)) V i=1 y Po(t) = 1 - M 1 -П (1 - PJt (t )) J=1 Pокз(t)Pос (t) Поскольку все отказы независимы, то это выражение можно записать так: Po(t ) = 1 - (( N _ \ 1-П (1 - MP^ (t )) V г=1 r л V 1-П (1 - MPjt (t )) J=1 MPокз(tМос (t) (5) Подставив (1), (2), (3) и (4) в (5), получим Po(t) = 1 - 1 -Il (1 - Fn2 , (t)(MFY2 j (P2 J ) x FY2 j (t) + MFP2 , (Y2 J ))) J=1 ( N (1 - F_w (t) x ((1 - MF (y, ) MF (Y« ))FVi (t) +^ 1-П j=1 j=1 =П p(Tj <t)=1! (1 - pjt (t)), j=1 j=1 где Pjt (t) - вероятность того, что останову j-го порта концентратора не произойдет к моменту времени t. PjT (t) можно записать следующим образом: PJT (t) = Р(IP2j -Y2j П2J Л Y2J + IP2j <Y2j ПJ > t) = П1і^ vv- " Р1і VT і' Р1Л '1l" Y/’ г=1 +MFp1i (y, )MFp1i (Y1i ))) XFH2( N +1) (MFY2(N+1) (P2(N+1) )FY2(N+1) (t) + +MFP2(N+1)(Y2(N+1)))Fn3(t) X x((1 -MFp3 (S)MFp3 (Y3 ))Fs (t)Fy3 (t) + MFp3 (S)MFp3 (y3 ))). Теперь найдем зависимость интенсивности остановов от времени, которую обозначим c^t): dPo (t ) / dt °o(t) = - 1 - Po(t ) (2) П2 J v/v 1 Y2 jVF 2 JM Y2 JK4^ 1 P2 jV ^ Аналогично можно записать вероятность того, что на интервале [0, t] не произошел останов порта концентратора, к которому подключен сервер: (3) (4) Таким образом, были получены выфажения для выгаисления вероятности останова и интенсивности остановов распределенной вычислительной системы на интервале времени [0, t]. Теперь рассмотрим показатели надежности, относящиеся к переходам системы в состояние аварии. Авария произойдет, если в аварийное состояние перейдет хотя бы один клиент, порт концентратора или сервер [9]. Подсистема переходит в аварийное состояние, если после скрытого отказа СБ происходит отказ контролируемых ею подсистем. Вероятность того, что на интервале [0, t] произойдет авария, можно записать следующим образом: Рак (t) = 1 - M (Рк1(/)Рк2 (t)Рас (t)), где PaK1(t) - вероятность аварии одного из клиентов к моменту времени t; P3K2(t) - вероятность аварии одного из портов концентратора к моменту времени t; Pac(t) - вероятность аварии сервера к моменту времени t. Введем вспомогательные переменные. Пусть юг -время до перехода і-го клиента в аварийное состояние, где і є 1, N. Тогда вероятность того, что на интервале [0, t] ни один клиент не перейдет в аварийное состояние, определяется выражением P«1(t) = РI гЛ1 Юг > t I. Выполнив ряд аналитических преобразований, получим P3K1(t) = MIn = MП Ію Л ГО, >t i=1 j=1 = ft МІюі>t = П Р(Юг > t) = ft Ракг (t), і=1 і=1 і=1 где Ракі (t) - вероятность того, что авария і-го клиента не произойдет к моменту времени t. Вероятность того, что і-й клиент на интервале [0, t] не перейдет в состояние аварии: Ракг (t ) = 1 - Р(Р1г Л t < У г Л Y1i < t ). Отсюда Ракі (t) = 1 - Ір1і<t (Р(Уг AY1i < t) - Р(юг Л Yu < Р1г )). 89 Вестник СибГАУ. № 1(47). 2013 Пусть є,- - время до отказа j-го порта концентратора, ведущего к аварии РВС, где j є 1, N +1. Тогда вероятность того, что ни один из портов концентратора не перейдет в аварийное состояние на интервале [0, t], определяется выражением f N+1 j (t )=Р| Лe j > T - MIn+1 V j=1 Л S j >t j=1 N+1 N+1 =M п 1 S j >t її Я MI s j >t = j=1 j=1 N+1 N+1 _ = П P(ej >t)=П P* (tX j=1 j=1 где PjS (t) - вероятность того, что j-й порт концентра тора не перейдет в состояние аварии к моменту времени t. PjS (t) можно записать следующим образом: Pjs (t) = 1 - Р(Р2 j Л t < Y2j < t). Проведя ряд аналитических преобразований, получим: j (t) = 1 - (Р(Y2j < t) - Р(Y2j < Р2j Л t)) = = 1 -1 p, j <t (Р(У 2 j < t ) - P(Y 2 j <Р2 j )). Вероятность того, что сервер не перешел в состояние аварии на интервале [0, t]: Pic (t) = 1 - Р(Р3 Л t < S Л Y3 < t). Преобразуем это выражение: Рас (t) = 1 - (Р(5 Л Y3 < t) - Р(5 Л у3 < Р3 Л t)) = = 1 - 1ръ <t (Р(5 Л у3 < t) - Р(5 Л Y3 < Рэ)). Тогда вероятность того, что на интервале [0, t] произойдет авария, можно записать следующим образом: f f N+1 j f N+1 Л j j=1 П Pje (t) ИРак- (t)) V i=1 Ріс (t) В силу статистической независимости отказов запишем выражение так: f N Pi (t) = 1 j=1 f N П MPje (t) x П MpaB (t) V i=1 MPac (t). (6) Опустив промежуточные преобразования, запишем конечные соотношения: ґ MPm (t) = 1 - MFWi ( Y1i ) I FPi (y)dFwi (y) + j Р1і ^ w, J0 +MFy„ (Wi )І0^Р„ «F (y) — г t MPje (t )=1 -K j ( y)dFY 2 j ( y); (7) (8) MF5 ( Y 3) I Fp2( y )dF6 ( y ) + +MFY3(5) LV y) dFY3( y) (9) Подставив (7)-(9) в (6), получим Ра (t ) = 1 f f f F,,,. (y)dFWi (y) + +1 MFwi (Y1i )I n i=1 +MMFY1i (Wi lui (y)dFYi ('Vjj РИ^; Wi t 0 f N+1 / t 4 j X П l1 (y) V v 1 - ( ) Ю (y)dF5 (y ) + ( (5)J0 F,3 ( y)dFy3 ( y) Пусть са(0 - интенсивность аварий. Тогда dPa (t) / dt CTa (t) =■ Таким образом, были получены выражения для вычисления вероятности аварии и интенсивности аварий распределенной вычислительной системы на интервале времени [0, t]. То, что показатели надежности были получены без каких-либо предположений о числе клиентов в системе и о законах распределения наработок на отказ, позволяет говорить о точности результатов. Анализ распределенных вычислительных систем, которые моделируются как набор сервисов, предоставляемых сервером клиентским процессам, является важной задачей. Сбор и хранение данных - дорогостоящие процедуры, поскольку часто данные стоят больше, чем распределенная вычислительная система, на которой они обрабатываются. Предлагаемые процедуры надежностного анализа распределенных вычислительных систем позволяют уже на этапе проектирования предотвратить излишнее дублирование данных (для предотвращения их потери вследствие ненадежности системы) и избежать дополнительных усилий и финансовых затрат. Предлагаемые модели могут быть использованы в современных технологиях разработки распределенных вычислительных систем, критических по обеспечению безопасности. Рассмотренный в работе набор показателей, используемых при анализе архитектурной надежности распределенных вычислительных систем, может корректироваться, так как наиболее подходящие показатели для конкретной системы определяются в зависимости от типа системы и предметной области знаний. Более того, для различных систем могут использоваться разные показатели. В результате можно сделать следующие выводы. 1. Модель анализа распределенных вычислительных систем клиент-серверной архитектуры позволяет, в отличие от существующих моделей и методов оценки надежности, без каких-либо предположений о законах распределения случайных величин и числе эле- 90 Математика, механика, информатика ментов в системе получить соотношения для показателей надежности распределенной вычислительной системы. 2. Данная модель позволяет вместо функций распределения, выраженных в аналитическом виде, воспользоваться их статистическими эквивалентами, найденными экспериментально, что особенно полезно при расчете показателей надежности распределенных вычислительных систем. 3. Надежностный анализ распределенных выгчис-лительных систем архитектуры «клиент-сервер» может использоваться для оценки надежности систем для возможных архитектурных изменений и выбора надежной архитектуры из набора вариантов, так как в зависимости от количества и величины компонентов условные и безусловные вероятности сбоя, доступа, анализа и времени восстановления, а также и времени использования компонентов различны.
×

Об авторах

Р. Ю. Царев

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева

Email: rahatamatahata@mail.ru
г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

А. Н. Пупков

Сибирский федеральный университет

Email: alex007p@vandex.ru
660074, Красноярск, ул. Киренского, 26а

М. А. Огнерубова

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева

Email: rahatamatahata@mail.ru
г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

М. В. Сержантова

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева

Email: rahatamatahata@mail.ru
г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

Н. А. Бесчастная

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева

Email: rahatamatahata@mail.ru
г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

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

  1. Антамошкин О. А. Технология утилизации ресурсов распределенных вычислительных сетей // Системы управления и информационные технологии. 2012. № 2.2. С. 220-224.
  2. Юнусов Р. В. Оценка надежности программного обеспечения клиент-сервер на примере комплексной системы управления предприятием «Галактика» // Вестник НИИ СУВПТ. 2001. Вып. 7. С. 107-112.
  3. Ковалев И. В., Царев Р. Ю., Завьялова О. И. Анализ архитектурной надежности программного обеспечения информационно-управляющих систем // Приборы. 2010. № 11. С. 24-26.
  4. Юнусов Р. В. Анализ надежности аппаратнопрограммного информационно-управляющего комплекса // Вестник НИИ СУВПТ. 2003. Вып. 11. С. 103-106.
  5. Модели и методы оптимизации сбора и обработки информации / И. В. Ковалев, Н. А. Распопин, М. В. Карасева, П. В. Зеленков, Е. В. Каюков // Вестник СибГАУ. 2012. № 2 (42). С. 69-72.
  6. Антамошкин О. А., Нургалеева Ю. А., Усачев А. В. Модели модульной декомпозиции программного обеспечения технологических циклов управления // Вестник СибГАУ. 2009. № 3. С. 66-69.
  7. Практическая реализация надежностного анализа архитектуры программной системы / Е. В. Гражданцев, М. А. Русаков, О. И. Завьялова, Р. Ю. Царев // Вестник СибГАУ. 2008. № 1 (18). С. 37-40.
  8. Русаков М. А., Царев Р. Ю. Методы повышения надежности программного обеспечения // В мире научных открытий. 2011. № 8 (20). С. 32-41.
  9. Оценка транзакционной надежности современных систем управления и обработки информации / Р. Ю. Царев, А. В. Штарик, Е. Н. Штарик, О. И. Завьялова // Приборы и системы. Управление, контроль, диагностика. 2012. № 6. С. 29-32.

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML

© Царев Р.Ю., Пупков А.Н., Огнерубова М.А., Сержантова М.В., Бесчастная Н.А., 2013

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution 4.0 International License.

Данный сайт использует cookie-файлы

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

О куки-файлах