フォールトトレラントシステム
障害が発生すると、それがシステム全体に伝播していき、システム全体が障害となることがある。例えば、通信関係で障害が発生すると、不正なパケットが大量に発生してネットワーク全体の回線容量を消費し、結果としてサービス不能となる場合がある。このような場合に障害箇所を隔離して、システム全体に影響が及ばないようにする必要がある。
二重化(多重化、冗長化)によるフォールトトレラント性は三つに分類される。
レプリケーション:同じシステムの複製を複数用意し、それら全部に同じ処理を並列に実行させ、定足数を満足した結果を正しい結果として採用する。
冗長性:同じシステムの複製を複数用意し、障害が発生したら予備のシステムに切り替える。
多様性:同じ仕様の異なる実装のシステムを複数用意し、レプリケーションのようにそれを運用する。この場合、各システムが同じ障害を発生することがないと考えられる。
RAIDは冗長性を活用したフォールトトレラントな記憶装置の例である。
ロックステップ方式のフォールトトレラントマシンは各部分を多重化して並列して動作させる。多重化された各部分はどの時点で見ても全く同じ状態でなければならない。同じ入力を与えた場合に同じ出力が得られることが期待される。多重化部分の出力は多数決回路に集められ比較される。各部品を二重化したマシンはdual modular redundant(DMR)と呼ばれる。この場合、多数決回路は結果が異なっているということしか分からないので、復旧は別の方法で行う必要がある。各部品を三重化したマシンはtriple modular redundant(TMR)と呼ばれる。