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

Распределенное восстановление вышеупомянутого вида зависит от взаимодействия нескольких вершин в Gr.В рассмотренном примере (Рис.1.3 д) вершина d работает как локальный супервизор, так как и отказавшая вершина g и запасная i находятся  в ее соседстве N(d).Для того, чтобы разрешить вершине xi функционировать как локальный супервизор, он должен запоминать соответствующую информацию о системе Gr, а именно : вершины из соседства N(xi), структуру всех связей, текущее состояние всех вершин в N(xi), множество ошибок {Ei(Si)}, относящихся к xi  и периодически обновляемые файлы для возврата, определяющие задачи всех вершин в N(xi).

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

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

          Указанные предположение влияют на общую модель восстановления. Они представлены ниже.

1. Каждая активная вершина xi может обнаружить все ошибки из определенного множества {E(Si)}, появляющиеся в ее соседстве N(xi).

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

2. В ответ на обнаружение некоторой ошибки вершина xi изменяет состояние соседства N(xi) , в соответствии с определенной стратегией восстановления R.

В процессе реконфигурации ошибки не появляются. Вместе с xi автоматически сохраняется вся информация о N(xi), необходимая для выполнения R.

3. Ошибка E(Sj) соответствует удалению состояния Sj из системы из–за сбоя или шагов по восстановлению системы.

4. Множества ошибок, связанных с каждой парой вершин, разделяются.

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

 6. Когда в ответ на некоторую ошибку E(Sj) видоизменяется соседство, локальный супервизор xi назначает состояние Sj избыточной вершине. Если это невозможно, он заменяет собственное состояние на Sj.

7. Соседство N(xi) каждой вершины xi ограничено до порождающего подграфа, включающего xi и все смежные вершины.

          Предположение 1 и 2 определяют локализацию локализацию процесса восстановления, являющегося неделимым в реальных распределенных ВС.

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

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