Системы с повышенными требованиями к надежности: основные понятия, спецификации.

Презентация:



Advertisements
Похожие презентации
Основы построения телекоммуникационных систем и сетей Лекция 16 «Методы оценки надежности» профессор Соколов Н.А.
Advertisements

Защищенность и отказоустойчивость ОС Повторение модуля, основные понятия и вопросы для повторения.
Лекция 5. Модели надежности программного обеспечения Учебные вопросы: 1. Классификация моделей надежности 2. Аналитические модели надежности 3. Эмпирические.
Тема 3. Статические и динамические характеристики измерительных каналов Содержание 1 Принципы выбора и нормирования метрологических характеристик средств.
Мониторинг внедрения ИТ и ИС. Критерии эффективности ИР использование по времени; использование по мощности. В основе любой ИС лежит совокупность приложений,
Эвристический анализ. Слово "эвристика" происходит от греческого глагола "находить". Суть эвристических методов состоит в том, что решение проблемы основывается.
Tarkvara kvaliteed ja standardid Качество и стандарты программного обеспечения.
1 Понятие о необходимости встроенных средств защиты на уровне ОС Подготовила: Студентка гр.И-411 Сартакова Е.Л.
Выполнила студентка группы ТУ-501 Полозова Ю.О. База данных (БД) представляет собой совокупность структурированных данных, хранимых в памяти вычислительной.
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В ЭКОНОМИКЕ Тема 2. ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ ОБРАБОТКИ ДАННЫХ Подготовил Иванов А.Н.
Стандарты по оценке защитных систем. стандарты и спецификации двух разных видов: оценочные стандартов, направленные на классификацию информационных систем.
1.2.2 Надёжность восстанавливаемых объектов. Восстановление – событие, заключающееся в повышении уровня работоспособности объекта или относительного уровня.
Требования к доверенной третьей стороне в интегрированной информационной системе Евразийского экономического союза.
Надежность информации Надежность систем. Надежность является одной из важных характеристик качества объекта - совокупности свойств, определяющих пригодность.
Системный аудит и оценка рисков информационной безопасности.
Государственное образовательное учреждение среднего профессионального образования. «Прокопьевский политехнический техникум» Причины сбоев и технология.
Для каждого из свойств установлены показатели, по которым они могут оцениваться (измеряться). Такие показатели называются единичными, то есть характеризующими.
Когнитивное Моделирование Проблем и Анализ Ситуаций.
Мониторинг Модуль 1 Ознакомление с инструментом мониторинга Ознакомление с инструментом мониторинга.
«Как обеспечить комплексный подход к реализации проектов по обеспечению ИБ». Курило Андрей Петрович Банк России "Информационная безопасность бизнеса и.
Транксрипт:

Системы с повышенными требованиями к надежности: основные понятия, спецификации

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

Концепция надежности Для критических систем надежность является самым важным свойством системы Надежность системы отражает степень доверия пользователя к системе. Применимость системы и ее надежность – не одно и то же. Система не обязана быть удобной и практичной.

Параметры надежности Надежность Работоспособность Безотказность Безопасность Защищенность

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

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

Стоимость и надежность Coost L wwMediiuummHiighVery h gh Ultra- h gh Dependability

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

Надежность vs производительность Не заслуживающие доверия системы могут быть отвергнуты пользователем (Не заслуживает доверия => Непригодна) Стоимость отказа системы может быть очень высока Очень трудно отладить систему так, чтобы она стала более надежной («модификация надежности», к сожалению, невозможна) Плохую производительность можно компенсировать (надежность - нельзя) Ненадежные системы могут привести к потере важной информации

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

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

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

Терминология безотказности

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

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

Достижение надежности Предотвращение сбоев Средства разработки, которые снижают возможность ошибок или выявляют ошибки до того, как они приведут к отказу системы Определение отказов и устранение их Verification & validation увеличивают возможность обнаружения и исправления ошибок до ввода системы в эксплуатацию Обеспечение отказоустойчивости Технологии, которые позволяют убедиться в том, что сбои системы не приводят к ошибкам и/или ошибки системы не приводят к сбоям системы

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

Карта ввода-вывода

Представление отказоустойчивости

Совершенствование отказоустойчивости Исправление X% отказов в системе не обязательно исправляет отказоустойчивость системы на X%. Исследования IBM показали, что 60% исправленных дефектов системы приводят лишь к 3% увеличения отказоустойчивости Дефекты программы могут быть в редко используемых разделах кода так, что они никогда не будут получены при обычной работе. Исправление таких дефектов никак не отразится на отказоустойчивости системы Программа с известными заранее отказами может рассматриваться, как достаточно надежная для ее пользователей.

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

Первичные критически-безопасные системы – Встроенные системы ПО, отказ которых может вызывать отказ связанного с ним оборудования и непосредственно воздействовать на людей. Вторичные критически-безопасные системы – Системы, чьи отказы приводят к отказам других систем, что может привести к воздействию на людей (база данных лекарств) Критическая безопасность

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

Ошибки спецификации Если спецификация неверна, то система может вести себя, как предполагалось, но все равно привести к инцидентам Отказы оборудования могут генерировать ложные входные данные Это сложно отразить в спецификации Контекстно-зависимые команды могут быть неправильно поняты в определенное время Часто результат операторской ошибки Небезопасные отказоустойчивые системы

Терминология безопасности

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

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

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

Фундаментальные положения защищенности Если система является сетевой и не является защищенной, то положения о ее отказоустойчивости и ее безопасности недостоверны Эти положения зависят от выполняющейся системы и разработанной системы, которая является той же самой системой. Однако, вторжение может изменить и систему и/или данные системы

Терминология защищенности

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

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

Спецификация надежной системы Процессы и средства создания спецификации для безопасности, защищенности, работоспособности и безотказности системы

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

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

Построение отказоустойчивой системы Существует дисциплина в системной инженерии, которая связана с оценкой отказоустойчивости системы Она принимает во внимание возможности отказов различных компонентов системы и их комбинаций Для системы с 2–мя компонентами A и B, где возможности отказа А - P (A) и возможности отказа B - P (B).

Возможности отказов Так как компонентов 2 и работа системы зависит от обоих из них, то возможность отказа всей системы составляет P (S) = P (A) * P (B) Если число компонентов растет, то растет и вероятность отказа системы Если компоненты дублируются, то возможность отказа составит P (S) = P (A) n (могут отказать все компоненты)

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

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

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

Метрики отказоустойчивости (2)

Работоспособность Измерение интервала времени, в течение которого система остается в рабочем состоянии Учитывает время на восстановление и рестарт системы Работоспособность на означает, что ПО находится в рабочем состоянии в течение 998 из 1000 временных интервалов Подходит для систем, работающих без останова Телефонные станции, станции слежения на транспорте

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

Частота возникновения отказа (ROCOF) Отражает частоту возникновения отказов системы ROCOF означает 2 отказа на протяжении 1000 временных единиц работы, т.е. 2 отказа на 1000 часов работы Используется для операционных систем и систем, использующих транзакции, в которых должнл производить большое число похожих запросов с достаточно большой частотой. Система обработки кредитных карт, система заказов билетов

Время до отказа (MTTF) Время между замеченными сбоями системы. Это значение, обратное ROCOF для стабильных систем MTTF 500 означает, что время между отказами – 500 временных единиц Используется для систем с длительными транзакциями, т.е. Там, где действие системы продолжительны по времени. MTTF должна быть больше, чем время транзакции

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

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

Классификация отказов

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

Банковская система Каждая машина в сети используется 300 раз в день У банка всего 1000 машин Время жизни ПО 2 года Каждая машина производит около транзакций Всего транзакций в день

Пример спецификации отказоустойчивости

Валидация спецификации Невозможна эмпирическая валидация спецификаций с высокой отказоустойчивостью Отсутствие повреждений в базе данных означает POFOD менее, чем 1 на 200 миллионов Если транзакция занимает 1 секунду, то симуляция транзакций машин в течении дня займет 3.5 дня