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

кандидата технических наук
Ермаков, Артем Александрович
город
Москва
год
2008
специальность ВАК РФ
05.13.01
Диссертация по информатике, вычислительной технике и управлению на тему «Комплексное обеспечение надежности кластерных систем на основе математического моделирования»

Автореферат диссертации по теме "Комплексное обеспечение надежности кластерных систем на основе математического моделирования"

На правах рукописи

Ермаков Артем Александрович

КОМПЛЕКСНОЕ ОБЕСПЕЧЕНИЕ НАДЕЖНОСТИ КЛАСТЕРНЫХ СИСТЕМ НА ОСНОВЕ МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ

05 13 01 Системный анализ, управление и обработка информации (технические системы)

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

Москва 2008

003445653

Работа выполнена на кафедре «Информационные системы» ГОУ ВПО Московского государственного технологического университета «Станкин»

Научный руководитель доктор технических наук,

профессор Вячеслав Петрович Кпиманов

Официальные оппоненты доктор технических наук,

профессор Геннадий Федорович Филаретов кандидат технических наук, профессор Игорь Иванович Ладыгин

Ведущая организация ФГУ ГНИИ ИТТ "Ннформика"

Защита состоится « 2008 года ъ'" на заседании

диссертационного совета Д 212 142 03 в Московском государственном

технологическом университете «Станкин» по адресу 127055, Москва, Вадковский пер , д За

С диссертацией можно ознакомиться в библиотеке ГОУ ВПО Московского государственного технологического университета «Станкин»

Автореферат разослан 2008 года

Ученый секретарь диссертационного совета Д 212 142 03,

к т н , доцент £ Г Семячкова

ОБЩИЕ ХАРАКТЕРИСТИКИ

Актуальность темы.

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

Одним из основных методов повышения надежности технических средств АИС является резервирование серверов Резервироваться могут как отдельные элементы сервера (процессор, жесткий диск, блок питания и т п ), так и сервер целиком — за счет использования кластерных технологий Помимо этого, немаловажную роль играет надежность используемого программного обеспечения

Общим вопросам кластеризации и надежности программного обеспечения посвящено значительное количество работ Существуют типовые схемы кластеризации, но практически не используется такая технология как сетевая кластеризация — это направление только начало зарождаться Эффективное применение сетевых кластерных технологий позволяет обеспечить не только повышение надежности функционирования АИС, но и повысить их катастрофоустойчивость, за счет применения сетевых (распределенных территориально) кластерных систем В этой связи важнейшую роль играет надежность программного обеспечения, используемого как для управления кластером, так и для решения конкретных прикладных задач

Составной частью надежности является катастрофоустойчивость, что подразумевает способность АИС противостоять природным и техногенным катастрофам, террористическим актам и другим экстремальным воздействиям

В настоящее время практически отсутствуют работы по созданию методов и математических моделей для оценки надежности и катастрофоустойчивости современных технологических схем кластеризации серверов на стадии проектирования АИС, что и определяет актуальность настоящей диссертации

Цель построение методики комплексной оценки надежности корпоративных вычислительных сетей на основе кластерной технологии.

Для достижения данной цели в работе необходимо решить следующие задачи:

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

2 Построить математическую модель надежности аппаратного обеспечения кластерной вычислительной системы

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

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

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

6 Определить границы применимости разработанных моделей на основе результатов модельного экспериментирования

Методы исследования.

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

информации, теории катастроф, аппарат теории структурной надежности и методы математического анализа

Научная новизна работы.

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

2 Разработана математическая модель надежности аппаратного обеспечения кластерной вычислительной системы

3 Разработана математическая модель оценки надежности программного обеспечения кластерной вычислительной системы

4 Построена комплексная математическая модель (аппаратного и программного обеспечения) надежности кластерной вычислительной системы

Практическая значимость работы.

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

2 Предложенная оригинальная схема организации сетевого кластера обеспечивает высокий уровень надежности и катастрофоустойчивости хранения и обработки информации техническими средствами АИС различного назначения

Достоверность научных положений, рекомендаций и выводов.

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

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

Апробация и использование результатов исследования.

Основные положения диссертационной работы докладывались и обсуждались на научных конференциях молодых ученых и студентов 11-й Международной научно-технической конференции «Информационные средства и технологии» в 2003 г (Москва, МЭИ), Ш-й Международной научно-технической конференции «Информационные технологии в науке, образовании и производстве» в 2008 г (Орел, ОрелГТУ), Ш-й Международной конференции ВерСоЗ-ЯЕЬСОМЕХ в 2008 г (Вроцлав, Польша) и получили положительные отзывы

Основные результаты работы внедрены в ООО «Транспортные системы связи» и при выполнении международного научно-технического проекта «Создание и наполнение современного инструментария - межотраслевой Интернет-системы поиска и синтеза физических принципов действия преобразователей энергии и разработка с ее использованием новых конкурентоспособных принципов действия преобразователей энергии», что подтверждено соответствующими актами Результаты диссертационного исследования используются в учебном процессе ГОУ ВПО МГТУ «Станкин» при преподавании дисциплины «Надежность информационных систем»

Публикации.

По материалам диссертации опубликовано 4 печатные работы

Структура и объем работы.

Диссертация состоит из введения, пяти глав и заключения Основная часть работы изложена на 100 страницах, содержит 14 таблиц и 23 рисунка

ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ Во введении обосновывается актуальность решаемой проблемы, формулируются цели и задачи исследования, определена научная новизна и практическая ценность работы

В первой главе проведен анализ и предложена классификация методов повышения надежности функционирования информационных систем

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

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

В настоящее время интенсивно развиваются цифровые сети интегрального обслуживания (ISDN - Integrated Services Digital Network) Под ISDN понимается сеть связи, в которой одни и те же устройства цифровой коммутации и цифровые тракты передачи используются для осуществления более чем одного вида связи, например, телефонии, передачи данных и др

ISDN содержит следующие элементы 1 Пользователи (абоненты) - источники и потребители информации, создающие и принимающие потоки сообщений

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

3 Каналы связи, через которые производится передача информации в пространстве между пунктами

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

В зависимости от способа передачи сообщений сети связи подразделяются на сети с коммутацией каналов, сети с коммутацией сообщений и сети с коммутацией пакетов

Для определения надежности сети необходимо выявить факторы, влияющие на надежность сетей связи

Анализ процессов функционирования сетей связи позволяет отнести к числу таких факторов следующие потоки

1 Отказов и восстановлений технических средств,

2 Заявок на использование сети связи,

3 Естественных помех,

4 Искусственных помех,

5 Разрушающих искусственных воздействий,

6 Ошибок программного обеспечения сети связи,

7 Отказов, вызванных деятельностью человека,

8 Отказов, вызванных природными явлениями

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

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

исследований в этой сфере Данная работа посвящена исследованиям этих двух факторов

Таблица 1 Распредепение отказов в корпоративных сетях

Группа факторов Факторы Доля от общего количества отказов, % Общая доля отказав, %

Отказы техническом среды Отказы дисков 27 72

Отказы сервера или его ядра 24

Отказы в каналах передачи данных 10

Ошазы в коммуникационном оборудовании и

01казы в ПО Ожазы в НО 22 22

Ошибки персонала Отказы из-за ошибок персонала 6 6

Сложности подстерегают исследователя при попытке оценить надежность

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

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

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

Для моделирования предлагается использовать следующую схему организации кластера (рис 1)

Рис 1 Сетевой кластер высокой надежности на базе двух магистралей ГОБ1 В основу аналитического моделирования положены следующие принципы

• марковские случайные процессы,

• уравнения Колмогорова

Для решения уравнений используется классический метод Гаусса Разработана методика построения аналитических моделей (систем дифференциальных уравнений) надежности систем при различных вариантах эксплуатации и сопровождения

Методика позволяет строить модели надежности с учетом количества бригад восстановления

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

Для предложенной схемы организации сетевого кластера (рис 1) на основе разработанной методики была разработана модель оценки надежности (Кг), которая базируется на изложенных ниже положениях

Исходный поток отказов — простейший с интенсивностью X Время восстановления имеет экспоненциальную плотность распределения вероятностей с параметром 1/ц

Используется 4 ремонтные бригады, контроль непрерывный

В начальный момент времени разрыв может произойти в любой из 4 точек. При повреждении НЖ1 магистрали система перейдет в одно из состояний 2, 3, 4, 5, которые будут характеризоваться тем, что бригада восстановления сразу займется ремонтом повреждения. В этих состояниях повреждения либо могут быть исправлены, тогда система возвращается в состояние 1. либо появиться новое повреждение, тогда система переходит в новое состояние, при котором существуют 2 повреждения в ПЖ1 магистралях, причем бригады восстановления занимаются ремонтом обоих повреждений (состояния с 6 по II). В случае успешного ремонта система вернется в состояния 2-5, а в случае еще одного повреждения - перейдет в состояния 12-16, когда будут одновременно

исправляться все три повреждения . В случае успешного восстановления система

вернется в одно из состояний 6-1 1, иначе примет состояние 17, при котором

исправляются все 4 повреждения. Таблица 2. Описание состоянии системы.

.....ШШ*

1 0000

2 2000

3 0200

4 0020

5 0002

6 2200

7 2020

8 2002

9 0220

10 0202

i 1 0022

12 2220

13 2202

14 2022

15 0222

16 2222

Сведем возможные состояния в таблицу (см. табл. 2). Будем использовать

следующие коды для обозначения состояний: «0» - отсутствие повреждения в

точке, «1» - точка повреждена, не восстанавливается, «2» - точка повреждена, восстанавливается

На основе приведенных рассуждений построим граф переходов (рис 2) Вершина 16 на графе характеризует состояние, при котором система теряет работоспособность Коэффициент готовности поэтому равен Кг=1-Р1б

общем виде имеют вид

¿Р. ДО V-«< к*]

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

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

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

Существует два подхода к изучению надежности программного обеспечения Первый подход основан на методе «черного ящика», т е мы исследуем программу как объект, имеющий вход и выход, но внутренняя структура объекта нам нсизвсстна Второй подход заключается в моделировании структуры программы

Покажем, как влияет на построение модели принятие предположения о независимости версий

Предположим, что существует три версии программы, управляющей неким критически-важным процессом Тогда в случае * отказа ' версии происходит

событие Е'1, а р,к - вероятность этого события. Мы считаем, что эта вероятность неизменна Система не отказывает, если в разных версиях нет одинаковых ошибок, т е если две или более версии не выдают неправильных ответов на одни и те же исходные данные Вероятность того, что две или более версии откажут при * запуске, и, соответственно, краха системы вычисляется по формуле

рп,1=р((Е\1<-'Е11) или (£ип£и) или (Е2кглЕ}к) или (£,, п £, к п £,,)) ^

Используя свойство сложения вероятностей, имеем

р.„,1 = Р(.Е1кпЕ2к) + Р(Е,кпЕ,к) + Р(.Е2кпЕ)к)-2Р(Е11:пЕ2кг,Е}к)

Если версии программы независимы, то

Р,„к = Р(.Е1к)Р{Е2к) + Р(,Е1к)Р(Еп) + Р(Е2к)Р(Езк)-2Р(Е1к)Р(Е2к)Р(Е>к) (3)

Из этой формулы видно, почему так важно предположение о

Р(Ек) = КГ6

независимости версии если вероятность 11 , то вероятность отказа системы из-за двух или более совместных ошибок равна з х 1 о 11

Формула (3) может быть использована для подсчета вероятности отказа системы за т часов работы Пусть ~р для всех • и > Тогда

ртк 3/> 2Р Зр ( и> используя преобразование 1 '' , имеем

Р (Т) ~ 1 — (1 — Р ^ = 1 — П — Зо2)*7

'у1' у , где а- - число запусков программы в час Для

р (ТЛ ~ 1 — ^^ « Зг>"КТ малых Я можно записать ** ^ Обычно г =' и к =збоо (те

программа запускается раз в секунду), и тогда мы получим

Р„(Т) - 3 р-ГГ = 3(10^)(10")(3600) = 1,08x10"® Таким образом осуществляется

оценка надежности программного обеспечения Но все наши построения основаны на предположении о независимости Если разные версии не выдают ошибки независимо друг от друга, то для вычисления вероятности отказа системы необходимо использовать формулу (1), и тогда вероятность отказа будет лежать в диапазоне значений ото дои' (те от 0 до э р*т)

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

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

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

Соответственно, количество найденных ошибок необходимо взвесить соответствующими коэффициентами, определенными на основе экспертных оценок

Таким образом количество ошибок можно подсчитать по следующей формуле

=11 *** **-- (4)

Здесь - это количество ошибок определенной критичности

определенного модуля, кк1 - коэффициент критичности, - коэффициент использования модуля, коэффициент ц - общее число ошибок в определенном модуле, коэффициент , - общее число модулей

Известно, что по мере тестирования вероятность обнаружения ошибки уменьшается Для того, чтобы мы могли спрогнозировать количество оставшихся ошибок, нам надо получить аппроксимирующую функцию Практический опыт прогноза количества оставшихся ошибок показал, что наиболее приемлемой для аппроксимации является следующая функция Ы = С0 + С,еС1 (5)

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

Для определения значений коэффициентов С,, <7, С можно воспользоваться методом наименьших квадратов Как известно, суть его заключается в минимизации суммы квадратов разницы теоретического и фактического значений функции в известных точках

Таким образом, исследуемая функция имеет вид

<2 = ±[С0 + С1еС1'-М,]

(6)

Для того, чтобы найти ее минимум, нужно приравнять к нулю ее частные производные по переменным^,

«о

= С.е1с'' +2С/4 -2ЛГ/«"| = 0

эс, ^ 1 -1

э С,

= ¿[2/,С,Vе' +2С0С/,гс' -2С,/Д<>с'] = 0

(7)

Для переменных с;, С, аналитические выражения выглядят следующим образом

С,=-Щ-

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

Для проведения исследования был выбран релиз М продукта N одного из ведущих российских разработчиков Данные по росту количества обнаруженных ошибок представлены в Приложении 1 к диссертации

Если теперь построить график (см рис 3), то мы получим следующую картину

С0 = 2008,64 С, =-1649,87 С2 =-0,0023

Из полученного результата видно, что остались необнаруженными порядка 350 ошибок Это отнюдь не означает, что все они проявят себя на этапе эксплуатации, часть их никогда не будет обнаружена по причине очень значительных трудозатрат или весьма экзотических сценариев проявления Для более точного прогноза обратимся к графику

Если мы продлим его до окончания жизненного цикла релиза, то получим результат, отраженный на графике 4 (считаем, что продукт эксплуатируется 2 года, при этом не стоит забывать, что внедрение начинается еще до завершения этапа комплексного тестирования)

Время тестирования, дни

Рис 3 Количество найденных ошибок в релизе М от времени тестирования

Таким образом, в 2007 году может быть обнаружено около 200 ошибок (в сумме, взвешенных коэффициентами) Между тем, эффективность тестирования как отношение количества найденных ошибок к общему количеству составляет

Eff = 1655 х 100% =82 4% 2008,64

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

2000 - --

200 '---------

0 • ,

0 200 400 600 800 1000 1200

Время тестирования, дни

Рис 4 Количество найденных ошибок в релизе М от времени тестирования (прогноз)

Итак, мы вычислили количество оставшихся ошибок в продукте, теперь нам надо вычислить, как меняется коэффициент готовности ПО на протяжении тестирования и эксплуатации

Для этого вспомним, что в начале мы определяли, что фатальным образом на работе системы сказываются лишь критичные и максимально-критичные ошибки Таким образом, доля таких ошибок соответствует вероятности отказа системы Отношение доли этих ошибок к общему количеству поэтому равно вероятности отказа системы График зависимости показан на рис 5

Итак, к концу жизненного цикла надежность протестированного программного обеспечения составит 0,965, или, иначе, среднее время простоя составит 12 дней в год

в 8 а о ь о

Е ¥

Я1 5

-е--е-

ич О X

0,1

0--------------------------

0 200 400 600 800 1000 1200

Время тестирования (эксплуатации), дни

Рис 5 Рост коэффициента готовности от времени тестирования (прогноз на 2007 г)

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

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

Для примера выберем следующую аппаратную конфигурацию кластер без чередования, программное обеспечение было установлено в январе 2007 г, когда его надежность составляла 0,82

С течением времени надежность аппаратуры падает По мнению аналитиков компании Intel, оптимальный срок эксплуатации серверного и сетевого оборудования составляет 3 года

В данной работе мы уже приводили статистику, что процент отказов, возникающих при передаче данных, составляет 21%, процент отказов в программах составляет 22 %, процент отказов дисков составляет 27%, процент

отказов сервера или его ядра составляет 24% и процент ошибок персонала составляет 6%

Мы не будем учитывать отказы сервера, так как мы их минимизируем за счет дублирования, и ошибки персонала как выходящие за рамки данной работы После перенормировки мы получаем следующие коэффициенты 38,6% для дисковой подсистемы, 31,4% для программного обеспечения и 30% для сетевого оборудования.

Зависимость коэффициента готовности сетевого оборудования от времени вычисляется из уравнений Колмогорова, составленных во 2-й главе Аналогичным образом вычисляется и надежность дисковой подсистемы

Для учета совместного воздействия этих составляющих на работу системы на каждую составляющую модели в соответствии со статистикой введем весовые коэффициенты 0,386 для дисковой подсистемы, 0,3 для сетевого оборудования и 0,314 для программного обеспечения

Ка>1 = 0,386/^ +0,314К, +0.3А", (7)

Здесь к - коэффициент готовности системы, Кл - коэффициент готовности дисковой подсистемы, Кг коэффициент готовности программного обеспечения и к,- коэффициент готовности сетевого оборудования

Прежде всего проследим, как будет меняться на протяжении 3-х лет надежность программного обеспечения (рис 6) Как видно, к концу жизненного цикла она составит 98,4% Промоделируем теперь надежность системы в целом

Результаты моделирования иллюстрирует рис 7

0,8-------------

0 200 400 600 800 1000 1200

Время эксплуатации, дни

Рис 6 Изменение коэффициента готовности программного обеспечения исследуемой системы на протяжении 3-х лет

Бремя эксплуатации, дни

Рис 7 Изменение коэффициента готовности исследуемой системы в целом на протяжении жизненного цикла

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

• в начале жизненного цикла, когда программное обеспечение активно тестируется, (из него быстро удаляются ошибки) и его надежность резко растет, а надежность аппаратуры еще высока, общая надежность системы - возрастает,

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

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

• наиболее высокие показатели надежности для рассматриваемого сетевого кластера находятся в интервале от 100 до 500 дней интенсивной эксплуатации

Отметим, что на протяжении жизненного цикла модель непрерывно корректируется по мере поступления новой информации возможно пересчитывать коэффициенты С„ С для более точной аппроксимации Отметим также, что погрешность полученных исходных данных (порядка 5%) совпадает с долей ошибок персонала(6%), что делает данную модель достаточно точной

В приложениях представлены статистические данные по росту количества найденных ошибок в ПО, приведено описание технологии КШ1 и марковских процессов, описаны принципы аппроксимации функций и дано теоретическое обоснование использования метода наименьших квадратов

ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ РАБОТЫ

1 В результате выполнения данной диссертационной работы решена задача,

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

2 Проведен анализ основных угроз надежности вычислительных систем,

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

3 Построена математическая модель оценки надежности аппаратного

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

4 Построена математическая модель оценки надежности программного

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

5 На основе построенных моделей, разработана программная среда для

комплексной оценки надежности кластерной вычислительной системы

6 На основе результатов реального программного эксперимента

определены границы применимости разработанных моделей

7 Результаты работы внедрены в технологический процесс ООО

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

используются в учебном процессе ГОУ ВПО МГТУ «Станкин» при преподавании дисциплины «Надежность информационных систем»

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

1 Климанов В П , Сутягин М В , Родионов А Э , Ермаков А А "Модели оценки надежности кластерной системы специального назначения" Электронный журнал «Вычислительные сети Теория и практика» Москва, 2003

2 Ермаков А А «Модель оценки эффективности тестирования программного обеспечения» Журнал «Экономика и производство», №1, 2008,стр 39-42

3 Климанов В П, Ермаков А А «Комплексная оценка надежности сетевого кластера» Журнал «Известия ОрелГТУ», №1-4/269, 2008 г, т 3, стр. 201-207

4 Klimanov V Р, Yermakov A A "Complex network cluster reliability evolution". Third International Conference on Dependability of Computer Systems DepCoS-RELCOMEX 2008

Оглавление автор диссертации — кандидата технических наук Ермаков, Артем Александрович

1. Анализ рисков в корпоративных вычислительных сетях

1.1. Структура сетей связи и особенности их функционирования

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

Выводы по первой главе

2. Вопросы надежности аппаратного обеспечения

2.1. Методы контроля работы вычислительной системы

2.1.1. Использование аппаратного контроля

2.1.2. Использование программного контроля

2.2. Создание математических моделей кластеров

2.3. Выбор метода определения надежности сложных систем

2.4. Разработка математических моделей функционирования кластеров при расположении серверов и накопителей без чередования

2.4.1. Математическая модель при восстановлении повреждений одной бригадой

2.4.2. Математическая модель при восстановлении повреждений двумя бригадами

2.4.3. Математическая модель при восстановлении повреждений тремя бригадами

2.4.2. Математическая модель при восстановлении повреждений четырьмя бригадами

2.5. Разработка математических моделей функционирования кластеров при расположении серверов и накопителей с чередованием

Выводы по второй главе

3. Обзор существующих методов оценки надежности программного обеспечения

3.1. Основы анализа надежности программного обеспечения

3.2. Классическая модель надежности ПО

3.3. Отказоустойчивость программного обеспечения

3.4. Анализ существующих методов оценки надежности ПО как «черного ящика»

3.5. Обзор моделей роста надежности»

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

3.7. Применение моделей роста надежности для ускоренное тестирование

Выводы по третьей главе

4. Разработка математической модели оценки надежности программного обеспечения на этапе тестирования

4.1. Исходные данные

4.2. Время тестирования

4.3. Надежность программного обеспечения

Выводы по четвертой главе

5. Комплексная оценка надежности исследуемой кластерной системы

5.1. Восстановление системы

5.2. Надёжность системы в целом

5.3. Результаты моделирования

Выводы по пятой главе

Введение 2008 год, диссертация по информатике, вычислительной технике и управлению, Ермаков, Артем Александрович

Происходящие в мире процессы развертывания глобальных сетей связи стали объективным фактором движения мирового сообщества к созданию глобального информационного общества. Фактически речь идет о развертывании очередной промышленной революции, получившей название «информационной». Международная интеграция информационных ресурсов и развитой инфраструктуры компьютерных сетей позволяет осуществлять взаимодействие любых пользователей для получения любого вида информации в реальном масштабе времени вне зависимости от расстояния и используемых средств вычислительной техники [38].Информационные технологии становятся одним из основных ресурсов развития ведущих стран мира в наступившем столетии. Впервые появляется возможность преодоления информационного неравенства как между отдельными странами, так и внутри стран. Особенно важно это для Российской Федерации, на обширной территории которой наряду с информационно развитыми городами и регионами имеются территории со слабой телекоммуникационной инфраструктурой (в первую очередь это касается сельских районов). Развитие цифровых информационных технологий и широкополосных беспроводных сетей передачи информации — один из перспективных путей решения этой проблемы.В начале 60-х годов академик А. А. Харкевич высказал гипотезу о том, что количество информации, которую надо собирать, обрабатывать и доставлять в нужное место, «растет по меньшей мере пропорционально квадрату промышленного потенциала». Анализ подтверждает, что в передовых в техническом отношении странах такой рост действительно имеет место примерно со степенью 1,7-2,0. Это приводит к существенному росту значимости деятельности, связанной с производством, передачей и переработкой информации.По данным ЮНЕСКО, в настоящее время более половины трудоспособного населения развитых стран прямо или косвенно принимает участие в процессе производства и распределения информации. Три ведущие отрасли информационного сектора общественного производства (вычислительная техника, промышленная электроника и связь) играют сейчас для этих стран ту же роль, которую на этапе их индустриализации играла тяжелая промышленность.Появление глобальной «сети сетей» Internet и растущее громадными темпами количество ее пользователей становится планетарным явлением, которое может привести даже к социальным изменениям.Другими словами, мировое сообщество приближается к такой степени зависимости своего существования от функционирования информационных сетей, которая сравнима с зависимостью от систем обеспечения электроэнергией. Это кроме очевидных достоинств имеет и обратную сторону. Отказ сети связи может иметь последствия, превосходящие последствия аварий энергосистемы. В связи с этим проблема оценки и обеспечения надежности сетей является актуальной.Надежность - это свойство объекта (системы), заключающееся в его способности выполнять заданные функции при определенных условиях эксплуатации. Количественно надежность характеризуется рядом показателей, состав и способ определения которых зависят от типа анализируемой системы.Целью настоящей диссертационной работы является построение методики комплексной оценки надеэ/сности корпоративных вычислительных сетей.Основные задачи диссертации: 1. Анализ основных угроз надежности вычислительных систем и существующих методов оценки надежности аппаратного и программного обеспечения.2. На основе анализа методов контроля вычислительных систем и особенностей использования кластерной технологии построить комплексную математическую модель надежности кластерной вычислительной системы.3. На основе анализа поведения программного обеспечения на различных этапах жизненного цикла построить комплексную математическую модель оценки надежности программного обеспечения на этапе тестирования и эксплуатации, показать границы ее применимости.4. На основе разработанных моделей построить комплексную математическую модель надежности кластерной вычислительной системы на протяжении жизненного цикла.5. Программная реализация построенных моделей.Основная часть диссертации состоит из 5 глав.В первой главе дан анализ существующих методик построения вычислительных сетей и описаны особенности их функционирования.Во второй главе построена математическая модель оценки надежности вычислительной системы, созданной по кластерной технологии.В третьей главе дан анализ существующих методик оценки надежности программного обеспечения.В четвертой главе построена математическая модель изменения надежности программного обеспечения во время тестирования, доказана адекватность данной модели на примере тестирования реально работающего программного комплекса.В пятой главе разработана комплексная модель оценки надежности вычислительной системы, созданной на основе кластерной технологии, показаны способы применения данной модели для анализа реально существующих систем.

Заключение диссертация на тему "Комплексное обеспечение надежности кластерных систем на основе математического моделирования"

7. Результаты работы внедрены в технологический процесс ООО «Транспортные системы связи» и использовались при выполнении международного научно-технического проекта «Создание и наполнение современного инструментария — межотраслевой Интернет-системы поиска и синтеза физических принципов действия преобразователей энергии и разработка с ее использованием новых конкурентоспособных принципов действия преобразователей энергии», что подтверждено соответствующими актами. Результаты диссертационного исследования используются в учебном процессе ГОУ ВПО МГТУ «Станкин» при преподавании дисциплины «Надежность информационных систем».

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

Заключение

В результате проведенной работы были получены следующие результаты:

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

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

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

4. Построена математическая модель оценки надежности программного обеспечения на этапе тестирования, доказана ее адекватность, приведен пример ее использования на конкретном программном комплексе и ее связь с бизнес-процессами организации-разработчика.

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

6. На основе результатов реального программного эксперимента определены границы применимости разработанных моделей.

Библиография Ермаков, Артем Александрович, диссертация по теме Системный анализ, управление и обработка информации (по отраслям)

1. Шварц М. Сети ЭВМ. Анализ и проектирование. Пер. с англ./Под ред. В.А. Жожикашвили. -М.: Радио и связь, 1981.-336 с.

2. Прангишвили И.В. Микропроцессоры и локальные сети микро-ЭВМ в распределенных системах управления.-М.: Энергоатомиздат, 1985.-272с., ил.

3. Климанов В.П. Методология анализа вероятностно-временных характеристик ЛВС составных топологий на основе аналитического моделирования. Диссертация на соискание ученой степени доктора технических наук. МЭИ.-М.: 1992.-388., ил.

4. Klein.M., Hipper G., Tavangarian D. Parallel Computing in Workstation Clusters using Concurrent Network Architecture. Proc. Int. Conf. intelligent Information Management Systems, Washington. D.C., 1994.

5. H. Alexeeva, G. Hipper, H. Unger, D. Tavangarian: (University Of Rostock,Fachbereich Informatik). W.P. Klimanow ( Moscow Power Ingineering Institute). "Stochastic Perfomance Evaluation of Concurrent Network Workstation Cluster Architectures".

6. Климанов В.П., Демин K.B. Многоканальная локальная сеть обмена данными «Трехмерная квадратная решетка» и ее аналитическая модель. Доклады международной конференции «Информационные средства и технологии». Том 1. —М.,1997.с.84-91.

7. Klimanov V., Diomin К. Multichannel Local Network "Three-Dimensional Lattice" And Its Analytical Model. В кн. 4*. p.84-91.

8. Богуславский Л.Б., Дрожжинов В.И. Основы построения вычислительных сетей для автоматизированных систем. -М.: Энергоатомиздат, 1990. 256 е., ил.

9. Нанс Б. Программирование в локальных сетях: Пер. с англ. Под ред. В.М.Беленковича.-Пермь: Изд-во Перм.Ун-та., 1992. — 756 с.

10. Захаров Г.П. Методы исследования сетей передачи данных. М.:Радио и связь, 1982.-208 с.

11. Альянах И.Н. Моделирование вычислительных систем. — Л.Машиностроение, 1988. 224 с.

12. Феррари А. Оценка производительности вычислительных систем. — М.: Мир. 1981.-576 с.

13. Бусуленко Н.П. Моделирование сложных систем. — М.: Наука, 1978.-400 с.

14. Рыбинцев В.О. Разработка декомпозиционного метода расчета характеристик эффективности функционирования диалоговых ЛВС. Диссертация на соискание ученой степени кандидата технических наук МЭИ.-М.: 1985

15. Чжан С. Анализ, разработка и реализация в виде экспертной системы средств выбора структуры локальных вычислительных сетей. Диссертация на соискание ученой степени кандидата технических наук. МЭИ.-М: 1993

16. Шеннон Р. Имитационное моделирование систем: искусство и наука. -М.: Наука, 1978.-400 с.

17. Coyle Е.,Liu D. Amstrix representation of CSMA/CD networks/IEEE Transact. On Commun. 1985.-Vol. COM - 33, N1, - p. 63-64.

18. Колосков M.C. Время доставки пакета и пропускная способность локальной вычислительной сети. -1990. с. 53-59.

19. Buerman S.L., Coyle Е. The delay characteristics of CSMA/CD networks/ЛЕЕЕ Transact on Commun. -1988. Vol. COM 36, N5, -p. 553563.

20. Гершуни Д.С., Касрашвили И.С. Исследование характеристик одного алгоритма конфигурирования локальной вычислительной сети жесткого реального времени. -Вычислительная техника в управлении. М.:1992.

21. Башарин Г.П., Богуславский Л.Б., Самуйлов К.Е. О методах расчета пропускной способности сетей связи ЭВМ. в кн.: Итоги науки и техники. Электросвязь. ВИНИТИ, - 1983, - т.13, с. 36-102.

22. Митрофанов Ю.И., Беляков В.Г., Курбангулов В.Х. Методы и программные средства аналитического моделирования сетевых систем. М.: АН СССР, 1083,- с.68.

23. Орлов В.А., Бондарев В.Н., Соловьев В.П. и др. Система моделирования GPSS/PC на ПЭВМ. И.: 1990

24. Хомичков И.И. Расчет характеристик модели ЛВС с 1-настойчивостью протоколом CSMA/CD. В кн. 2* , ч.1,с 260-265.

25. Климанов В.П. Анализ вероятностно-временных характеристик многоканальной локальной вычислительной сети матричного типа. В кн. 2*,ч.1,с. 208-204.

26. Климанов В.П. Математическая модель распределения нагрузки в многоканальной локальной вычислительной сети матричного типа. В кн. 1*, 4.1, с. 216-220.

27. Рыбинцев В.О. Оценка среднего времени доставки файла в ЛВС со случайным доступом. В кн. 2*, ч.1, с. 234-242.

28. Рыбинцев В.О. Аналитическая модель ЛВС со случайным доступом на подуровне управления средой передачи данных. В кн. 1*, ч,1,с. 257-262.

29. Жожикашвили В.А., Вишневский В.М. Сети массового обслуживания . Теория и применение к сетям ЭВМ. — М.: Радио и связь, 1988, с. 192: ил.

30. Абросимов Л.И. Расчет характеристик вычислительных систем сложной конфигурации с помощью контуров. Известия АН СССР, Техническая кибернетика, 1983, №2, с. 56-61.

31. Абросимов Л.И., Краюшкии В.А. Определение функциональных характеристик локальных вычислительных сетей с методом доступа CSMA/CD. Сб.Научных Трудов №195. -М.: МЭИ, 1989, с. 88-92.

32. Бутрименко А.В. Разработка и эксплуатация сетей ЭВМ. — М.: Финансы и статистика, 1981, с.256.

33. Абросимов Л.И., Краюшкин В.А. Метод анализа ЛВС сложной структуры. В кн. 3*, 4.1, с. 93-96.

34. Бусленко В.Н. Автоматизация имитационного моделирования сложных систем. М Наука, 1977, с. 240.

35. Клейнрок Л. Вычислительные системы с очередями. М.: Мир, 1979.- с. 600, ил.

36. Рыбенцев В.О., Дмитриев В.И.Оценка эффективности функционирования диалоговых вычислительных систем методом полной декомпозиции. — Межвед. Сб.№42, МЭИ, 1984

37. Вишневский В.М. Теоретические основы проектирования компьютерных сетей. -М.: Техносфера, 2003.- с.512.

38. Климанов В.П. Разработка математических моделей и анализ эффективности вычислительных систем. М.: издательство МЭИ, 1992.

39. В.П. Климанов, М.В. Сутягин, В.А. Быстрикова Задачи катастрофоустойчивости кластерных вычислительных систем. Новости искусственного интеллекта. 2002 г.43. www.cboss.ru44. www.msdn.com45. www.encarta.msn.com46. www.borland.com47. www.unix.org.ua

40. Michael R. Lyu. "The need for reliable software", AT&T Bell Laboratories

41. Ricky W. Butler and George B. Finelli, "The Infeasibility of Quantifying the Reliability of Life-Critical Real-Time Software", NASA Research Center, 1993.

42. D. Miller, "Making statistical inferences about software reliability", NASA Contractor Report 4197, Nov. 1988.

43. P. A. Keiller and D. R. Miller, "On the use and the performance of software reliability growth models", Reliability Engineering and System Safety, pp. 95117, 1991.

44. В. Тоценко. «Проблемы надежности сетей». Компьютерра, №14, 1998 г.

45. J. Newman и D. Willis. «ISDN Connectivity», www.networkcomputing.com

46. А. Александров. «Обеспечение устойчивости функционирования корпоративных сетей». Компьютерра, №14, 1998 г.

47. Е. Aboelela и С. Douligeris «Fuzzy optimization model for routing in B-ISDN», University of Miamy.

48. P. A. Keiller and D. R. Miller, "On the use and the performance of software reliability growth models," Reliability Engineering and System Safety, pp. 95117, 1991.

49. Z. Wang и J. Crowcroft. «Quality-of-service routing for supporting multimedia applications». IEEE Journal on selected areas in communications, т. 14, №7, сентябрь 1996 г.

50. W.C. Lee, M.G. Hluchyi и P.A. Humblet. «Routing subject to quality of service constraints in integrated communication networks». IEEE Network, t.9, №4, июль/август 1995 г.

51. R. Vogel, R.G. Herrtwich, W. Kalfa, H. Witting и L.C. Wolf. «QoS-based routing of multimedia streams in computer networks». IEEE Journal on selected areas in communications, т. 14, №7, сентябрь 1996 г.

52. В. Gavish и I. Neuman. «А system for routing and capacity assignment in computer communication networks». IEEE Transactions on communications, т. 37, №4, апрель 1989 г.

53. Шельгов В.И. Катастрофоустойчивые корпоративные информационные системы. Сети и системы связи № 13(77), 30 ноября 2001 г. С. 20-22.

54. Липаев В.В., Колин К.К., Серебровский А.А. Математическое обеспечение управляющих ЦВМ. — М.: Сов. Радио, 1972. — 528 с.

55. Григелионис Б.И. Предельные теоремы для сумм процессов восстановления. Кибернетику — на службу коммунизму. — Т.2 .— М.: Энергия, 1964. С. 87-93.

56. Сакелларидис С. Архитектура систем высокой отказоустойчивости. Windows & .NET Magazine/RE. http://www.osp.ru/win2000/worknt/31 nt09.htm.

57. Фатуев В.А. Надежность автоматизированных информационных систем: Учеб. пособие /Фатуев В.А., Высоцкий В.И., Бушинский В.И. -Тула, 1998. 103 е.: ил.

58. Материалы web-сайта компании «Открытые технологии», http://www.ot.ru.

59. Материалы web-сайта компании Computel, http://www.computel.ru/solutions/clusters/clusters.htm.

60. Кунтыш А.О. Еще раз о кластерах. Компьютер-Информ, №12(105), 2001 г., http://www.ci.ru/inform 12 0l/p089cl.htm.

61. Климанов В.П. Разработка математических моделей и анализ эффективности вычислительных систем: Учебное пособие по курсу:

62. Методы анализа вычислительных систем». Москва: «МЭИ», 1992. -108с.

63. Сутягин М.В. «Обеспечение надежности автоматизированных информационных систем на основе сетевой кластеризации серверов». — Москва, МГТУ «Станкин», 2004 186 стр.

64. В. Littlewood, "Predicting software reliability," Philosophical Transactions of the Royal Society (London), pp. 513-526, 1989.

65. P. M. Nagel and J. A. Skrivan, "Software reliability: Repetitive run experimentation and modeling," NASA Contractor Report 165836, Feb. 1982.

66. Климанов В.П., Сутягин M.B., Родионов А.Э., Ермаков А.А. "Модели оценки надежности кластерной системы специального назначения". Электронный журнал «Вычислительные сети. Теория и практика.» Москва, 2003.

67. Ермаков А.А. «Модель оценки эффективности тестирования программного обеспечения». Журнал «Экономика и производство», №1, 2008, стр. 39-42

68. Климанов В.П., Ермаков А.А. «Комплексная оценка надежности сетевого кластера». Журнал «Известия ОрелГТУ», №1-4/269, 2008 г., т.З, стр. 201207.

69. Klimanov V.P., Yermakov А.А. "Complex network cluster reliability evolution". Third International Conference on Dependability of Computer Systems DepCoS-RELCOMEX 2008.