Отказоустойчивость

Отказоустойчивость — свойство технической системы сохранять свою работоспособность после отказа одной или нескольких её составных частей[1].

Концепция отказоустойчивости в техникеПравить

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

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

Характеристики отказоустойчивостиПравить

Свойство отказоустойчивость связано со следующими техническими характеристиками:

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

Отказоустойчивая архитектура с точки зрения инженерии — это способ построения отказоустойчивых систем, которые сохраняют работоспособность (возможно, с понижением эффективности) при отказах элементов[3]. Термин часто используется в создании компьютерных систем, продолжающих работать с возможным уменьшением пропускной способности или увеличением времени отклика в случае отказа части элементов системы (проблем с аппаратной или программной частью). Отказоустойчивая архитектура в компьютерах применяется, например, в процессе репликации.

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

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

ИзбыточностьПравить

Избыточностью называют функциональность, в которой нет необходимости при безотказной работе системы[4].

Примерами могут служить запасные части, автоматически включающиеся в работу, если основная ломается. В частности, большие грузовики могут потерять шину без серьёзных последствий. На них установлено много шин, и потеря одной не является критичной (за исключением передней пары, которая служит для поворотов). Впервые идея включения избыточных частей для увеличения надежности системы была высказана Джоном фон Нейманом в 1950-х годах[5].

Существует два типа избыточности[6]: пространственная и временна́я. Избыточность пространства реализуется путём введения дополнительных компонентов, функций или данных, которые не нужны при безотказном функционировании. Дополнительные (избыточные) компоненты могут быть аппаратными, программными и информационными. Временна́я избыточность реализуется путём повторных вычислений или отправки данных, после чего результат сравнивается с сохранённой копией предыдущего.

Критерии решений в области отказоустойчивостиПравить

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

  • Насколько важен элемент? К примеру, в личном автомобиле радио не является важной для езды частью, поэтому оно не нуждается в отказоустойчивости.
  • Насколько велика вероятность отказа элемента? Некоторые элементы конструкции, например, карданный вал автомобиля, ломаются крайне редко, следовательно, не нуждаются в отказоустойчивости.
  • Насколько дорогим будет обеспечение отказоустойчивости? Например, обеспечение отказоустойчивости систем двигателя легкового автомобиля не оправданно по затратам на создание и эксплуатацию (размер, масса, средства контроля, цена, проверки и осмотры на стадии эксплуатации).

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

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

Недостатки отказоустойчивых системПравить

Достоинства отказоустойчивых технических решений очевидны, но также у них существуют и недостатки.

  • Сложности в обнаружении скрытых отказов резервированных элементов. Например, водитель автомобиля может не заметить, что шина проколота, если используется любая отказоустойчивая система. Проблема может быть решена путём добавления специальной системы для обнаружения отказов (в случае шины, система следит за давлением в камерах и предупреждает водителя, если оно падает). Альтернативой может служить назначение осмотров и проверок для выявления и предупреждения скрытых отказов и повреждений, например осмотр водителем шин на каждой остановке автотранспорта.
  • Сложности в контроле множественных отказов. Отказоустойчивость одного элемента может мешать обнаружению отказов в другом. Например, если часть B выполняет некую операцию на основе данных из части A, то работающая часть В может скрыть проблему, возникшую в А. Если в дальнейшем часть В будет заменена на менее надёжную, то система может внезапно отказать, при этом будет казаться, что проблема заключается в новой части В. И только после тщательной проверки системы станет ясно, что проблема была в части А.
  • Повышение рисков игнорирования известных отказов. Даже если оператор знает о наличии отказа резервированного элемента отказоустойчивой системы, он может медлить с его устранением, так как система работает. Это в итоге приведёт к полному отказу системы, когда откажут все элементы избыточности.
  • Сложность проверки. Для некоторых крайне важных отказоустойчивых систем, таких как ядерный реактор, нет простого пути, чтобы удостовериться, что резервированные элементы находятся в рабочем состоянии. Печально известным примером служит Чернобыльская авария, когда операторы проверяли аварийную систему охлаждения путём отключения основной и вспомогательной систем. Аварийная система не выдержала, что вылилось в перегрев ядра и большой выброс радиации.
  • Рост затрат. Меры в области отказоустойчивости увеличивают стоимость жизненного цикла системы вследствие роста затрат на разработку и испытания, роста массы и материалоемкости, цены системы, затрат на дополнительное техническое обслуживание и ремонт и др. Например, пилотируемые космические корабли имеют больше резервированных систем и элементов, что увеличивает их вес по сравнению с беспилотными аппаратами, которые не требуют такого уровня отказобезопасности.
  • Риск применения элементов низкого качества. Отказоустойчивая архитектура может позволить использование некачественных составных частей, которые в противном случае сделали бы систему неработающей. Хотя эта практика может использоваться для ограничения роста расходов, использование нескольких таких частей может понизить надёжность системы и вызвать рост неплановых затрат на стадии.

См. такжеПравить

ПримечанияПравить

  1. ГОСТ Р 56111-2014 Интегрированная логистическая поддержка экспортируемой продукции военного назначения. Номенклатура показателей эксплуатационно-технических характеристик. Стандартинформ (2015).
  2. Егор Сергеевич Согомонян. Самопроверяемые устройства и отказоустойчивые системы. — Радио и связь, 1989. — 207 с. — ISBN 9785256003081.
  3. Johnson, B. W. «Fault-Tolerant Microprocessor-Based Systems», IEEE Micro (1984), vol. 4, no. 6, pp. 6-21
  4. Laprie, J. C. (1985). «Dependable Computing and Fault Tolerance: Concepts and Terminology», Proceedings of 15th International Symposium on Fault-Tolerant Computing (FTSC-15), pp. 2-11
  5. von Neumann, J. (1956). «Probabilistic Logics and Synthesis of Reliable Organisms from Unreliable Components», in Automata Studies, eds. C. Shannon and J. McCarthy, Princeton University Press, pp. 43-98
  6. Avizienis, A. (1976). «Fault-Tolerant Systems», IEEE Transactions on Computers, vol. 25, no. 12, pp. 1304—1312
  7. Dubrova, E. (2013). «Fault-Tolerant Design», Springer, 2013, ISBN 978-1-4614-2112-2

СсылкиПравить

ЛитератураПравить

  • Словарь по кибернетике / Под редакцией академика В. С. Михалевича. — 2-е. — Киев: Главная редакция Украинской Советской Энциклопедии имени М. П. Бажана, 1989. — 751 с. — (С48). — 50 000 экз. — ISBN 5-88500-008-5.