.jpg/500px-PC-Netzteil_(redundant).jpg)


工学およびシステム理論において、冗長性とは、システムの信頼性を高めることを目的として、通常はバックアップやフェイルセーフの形で、またはGNSS受信機やマルチスレッドコンピュータ処理の場合などの実際のシステム パフォーマンスを向上させることを目的として、システムの重要なコンポーネントまたは機能を意図的に複製することです。
航空機のフライ・バイ・ワイヤや油圧システムなど、多くのセーフティクリティカルシステムでは、制御システムの一部が3重化されている場合があり、[1]正式には三重モジュール冗長化(TMR)と呼ばれています。1つのコンポーネントのエラーは、他の2つのエラーによって上回られる可能性があります。三重冗長システムでは、システムには3つのサブコンポーネントがあり、システムが故障する前に3つすべてが故障する必要があります。各サブコンポーネントが故障することはめったになく、サブコンポーネントは一般的な故障モード(独立した故障としてモデル化できる)を排除するように設計されているため、3つすべてが故障する確率は非常に小さいと計算されます。多くの場合、人為的エラーなどの他のリスク要因の方が重要です。落雷によって発生する電気サージは、コンポーネントが独立した電源バスから電力供給され、相互接続に直接の電気経路がない限り(投票には何らかの方法による通信が必要)、完全に分離するのが難しい故障モードの例です。冗長性は「多数決システム」[2]または「投票ロジック」[3]と呼ばれることもあります。

冗長性は、信頼性を高めるどころか、むしろ信頼性を低下させることがあります。冗長性によって、さまざまな問題が発生しやすい複雑なシステムが構築され、人間の職務怠慢につながる可能性があり、生産要求が高まり、システムに過度の負荷がかかって安全性が低下する可能性があります。[4]
冗長性は、コンピュータ サイエンスで実践されている堅牢性の 1 つの形式です。
データセンター業界では、自然災害や政情不安からデータを守るために、地理的な冗長性が重要になっています(下記参照)。
冗長性の形態
コンピュータサイエンスでは、冗長性には4つの主要な形式があります。[5]
- デュアルモジュラー冗長性やトリプルモジュラー冗長性などのハードウェア冗長性
- エラー検出や訂正方法などの情報の冗長性
- 時間冗長性、プログラムの複数回の実行や送信されたデータの複数コピーなど、同じ操作を複数回実行すること
- Nバージョンプログラミングなどのソフトウェア冗長性
ハードウェアに適用されるソフトウェア冗長性の修正形式は次のようになります。
- 車の機械式ブレーキと油圧式ブレーキのような、明確な機能冗長性。ソフトウェアの場合に適用され、独立して記述され、明確に異なるが、同じ入力に対して同じ結果を生成するコード。
構造物は通常、冗長部品も備えて設計されており、1 つの部品が破損しても構造全体が崩壊することはありません。冗長性のない構造物は破壊危険構造と呼ばれ、1 つの部品が破損すると構造全体が崩壊する可能性があります。冗長性の欠如により崩壊した橋には、シルバー ブリッジやスカジット川にかかる州間高速道路 5 号線の橋などがあります。
並列システムと複合システムは異なるレベルの冗長性を示します。これらのモデルは信頼性と安全工学の研究対象となっています。[6]
異なる冗長性
同じものを複数使用する従来の冗長性とは異なり、異種冗長性では異なるものを使用します。異なるものに同一の欠陥が含まれる可能性は低いという考え方です。2 つのものにかかる時間が異なる場合、投票方式はさらに複雑になる可能性があります。異種冗長性はソフトウェアでよく使用されます。同一のソフトウェアには同一の欠陥が含まれるためです。
以下のそれぞれ少なくとも2つの異なるタイプを使用することで、失敗の可能性が減ります。
- プロセッサ、
- オペレーティングシステム、
- ソフトウェア、
- センサー、
- アクチュエータの種類(電動、油圧、空気圧、手動機械など)
- 通信プロトコル、
- 通信ハードウェア、
- 通信ネットワーク、
- 通信経路[7] [8] [9]
地理的冗長性
地理的冗長性は、バックアップ デバイスを地理的に分離することで、配備された冗長デバイスの脆弱性を修正します。地理的冗長性により、停電、洪水、HVAC の故障、落雷、竜巻、建物火災、山火事、銃乱射事件などのイベントによって、システム全体ではないにせよ大部分が使用不能になる可能性が減ります。
地理的な冗長性の場所は
- 621マイル(999 km)以上の大陸、[10]
- 62マイル以上93マイル(150km)未満離れている、[10]
- 62マイル以内の距離だが、同じキャンパスではない、または
- 同じキャンパス内で 300 フィート (91 メートル) 以上離れた異なる建物。
以下の方法により、火災による被害のリスクを軽減できます。
- 大きな建物は少なくとも80フィート(24メートル)から110フィート(34メートル)離れているが、場合によっては最低210フィート(64メートル)離れている。[11] [12] :9
- 高層ビルは少なくとも82フィート(25メートル)離して設置する[12] : 12 [13]
- 物体の両側200フィート(61メートル)以内に可燃性の植物のない空き地があること[14]
- 同じ建物内の異なる棟にあり、部屋間の距離が 300 フィート (91 メートル) 以上離れている
- 建物の同じ棟の異なる階にある部屋は、水平方向に最低 70 フィート (21 メートル) 離れており、異なる階にある部屋の間には防火壁が設置されている
- 2つの部屋が別の部屋で区切られており、2つの部屋の間には少なくとも70フィートの隙間がある
- 少なくとも2つの独立した防火壁があり、廊下の反対側にあるべきである[10]
地理的冗長性は、Amazon Web Services(AWS)、Google Cloud Platform(GCP)、Microsoft Azure、Netflix、Dropbox、Salesforce、LinkedIn、PayPal、Twitter、Facebook、Apple iCloud、Cisco Merakiなど多くの企業で、地理的冗長性、高可用性、フォールトトレランスを提供し、クラウドサービスの可用性と信頼性を確保するために使用されています。[15]
別の例として、激しい暴風や水害による被害のリスクを最小限に抑えるために、建物は海岸から少なくとも2マイル(3.2 km)離れた場所、海抜5フィート(1.5 m)以上の場所に建てることができます。さらに保護するために、建物は洪水氾濫原から少なくとも100フィート(30 m)離れた場所に建てることができます。[16] [17]
冗長性の機能
冗長性には、パッシブ冗長性とアクティブ冗長性の 2 つの機能があります。どちらの機能も、追加容量を使用して、人間の介入なしに仕様制限を超えるパフォーマンスの低下を防ぎます。
パッシブ冗長性は、余剰容量を使用してコンポーネント障害の影響を軽減します。パッシブ冗長性の一般的な形態の 1 つは、橋梁で使用されるケーブルと支柱の強度を高めることです。この強度を高めることで、一部の構造コンポーネントが故障しても橋が崩壊することはありません。設計で使用される強度を高めることは、安全余裕と呼ばれます。
目と耳は、受動的冗長性の実例です。片方の目の視力低下は失明にはなりませんが、奥行き知覚が損なわれます。片方の耳の聴力低下は難聴にはなりませんが、方向感覚が失われます。限られた数の障害が発生した場合、パフォーマンスの低下は一般に受動的冗長性と関連しています。
アクティブ冗長性は、個々のデバイスのパフォーマンスを監視することでパフォーマンスの低下をなくし、この監視は投票ロジックで使用されます。投票ロジックは、コンポーネントを自動的に再構成するスイッチングにリンクされています。エラー検出と修正、および全地球測位システム(GPS) は、アクティブ冗長性の 2 つの例です。
電力配電は、アクティブ冗長性の一例として挙げられます。複数の電力線が各発電施設と顧客を接続します。各電力線には、過負荷を検出するモニターが含まれています。各電力線には回路ブレーカーも含まれています。電力線を組み合わせることで、余剰容量が確保されます。モニターが過負荷を検出すると、回路ブレーカーが電力線を切断します。電力は残りの線に再分配されます。[要出典] トロント空港には、4 本の冗長電力線があります。4 本の線はそれぞれ、空港全体に十分な電力を供給します。スポット ネットワーク変電所は、逆電流リレーを使用して、故障した線へのブレーカーを開きますが、空港への電力は引き続き流れます。
電力システムは、電力スケジュールを使用してアクティブな冗長性を再構成します。コンピューティング システムは、他の発電施設が突然失われた場合に、各発電施設の生産出力を調整します。これにより、地震などの大災害時に停電状態が回避されます。
デメリット
『Normal Accidents 』の著者チャールズ・ペローは、冗長性は時には裏目に出て、信頼性を高めるどころか低下させると述べている。これは3つの場合に起こる可能性がある。第一に、安全装置の冗長性によってシステムが複雑化し、エラーや事故が発生しやすくなる。第二に、冗長性によって労働者の責任回避につながる可能性がある。第三に、冗長性によって生産圧力が高まり、システムが高速で稼働するが安全性が低下する可能性がある。[4]
投票ロジック
投票ロジックは、パフォーマンス監視を使用して、システム全体の仕様制限に違反することなく操作を継続できるように、個々のコンポーネントを再構成する方法を決定します。投票ロジックにはコンピューターが関係することがよくありますが、コンピューター以外のアイテムで構成されたシステムも、投票ロジックを使用して再構成できます。サーキットブレーカーは、コンピューター以外の投票ロジックの一例です。
コンピューティング システムにおける最も単純な投票ロジックには、プライマリと代替の 2 つのコンポーネントが含まれます。どちらも同様のソフトウェアを実行しますが、代替からの出力は通常の動作中は非アクティブのままです。プライマリは自身を監視し、すべてが正常である限り、定期的にアクティビティ メッセージを代替に送信します。プライマリが障害を検出すると、アクティビティ メッセージを含むプライマリからのすべての出力が停止します。アクティビティ メッセージが停止すると、代替は出力をアクティブ化し、少し遅れてプライマリから引き継ぎます。投票ロジックのエラーにより、両方の出力が同時にアクティブまたは非アクティブになったり、出力がオンとオフを交互に繰り返したりすることがあります。
より信頼性の高い投票ロジックには、奇数の 3 台以上のデバイスが含まれます。すべてのデバイスが同一の機能を実行し、その出力が投票ロジックによって比較されます。投票ロジックは、意見の不一致がある場合に多数決を確立し、多数決は、意見の不一致がある他のデバイスからの出力を非アクティブ化するように動作します。単一の障害では、通常の動作が中断されることはありません。この手法は、スペース シャトルの運用を担う航空電子工学システムなどで使用されています。
システム障害の確率を計算する
システムに重複コンポーネントを追加すると、次の式に従ってシステム障害の確率が低下します。
どこ:
- – コンポーネントの数
- – コンポーネント i が故障する確率
- – すべてのコンポーネントが故障する確率(システム障害)
この式は、障害イベントの独立性を前提としています。つまり、コンポーネント A がすでに障害を起こしている場合にコンポーネント B が障害を起こす確率は、コンポーネント A が障害を起こしていない場合にコンポーネント B が障害を起こす確率と同じです。ただし、同じソケットに 2 つの電源装置を接続し、一方の電源装置が障害を起こすともう一方も障害を起こすような状況では、この式は不合理です。
また、システムを稼働させるために必要なコンポーネントは 1 つだけであると想定しています。
冗長性と高可用性
冗長性によって、より高い可用性を実現できます。3 つの冗長コンポーネント (A、B、C) があるとします。システム全体の 可用性を計算するには、次の式を使用できます。
冗長コンポーネントの可用性 = 1 - (1 - コンポーネントAの可用性) X (1 - コンポーネントBの可用性) X (1 - コンポーネントCの可用性) [18] [19]
同様に、それぞれが X 個の可用性を持つ N 個の並列コンポーネントがある場合、次のようになります。
並列コンポーネントの可用性 = 1 - (1 - X)^ N

冗長コンポーネントを使用すると、システム全体の可用性が飛躍的に向上します。[19] たとえば、各ホストの可用性が50%しかない場合、10台のホストを並列に使用すると、99.9023%の可用性を達成できます。
冗長性は必ずしも可用性の向上につながるわけではないことに注意してください。実際、冗長性は複雑さを増し、可用性を低下させます。Marc Brookerによると、冗長性を活用するには、次の点を確認してください。[20]
- システム全体の可用性が正味で向上します
- 冗長コンポーネントが独立して故障する
- システムは正常な冗長コンポーネントを確実に検出できます
- システムは、冗長コンポーネントを確実にスケールアウトおよびスケールインできます。
参照
- エアギャップ(ネットワーク) – ネットワークセキュリティ対策
- 共通原因と特殊原因(統計) – 統計の概念
- データの冗長性 – 実際のデータに加えて、保存または送信されたデータのエラーを修正できる追加データの存在
- ダブルスイッチング - 多極スイッチを使用して回路の両側を閉じたり開いたりする
- フォールトトレランス – コンポーネントの障害やエラーに対するシステムの耐性
- 放射線耐性強化 – 電子機器を電離放射線に対して耐性を持たせるために使用されるプロセスと技術
- 安全率 – 想定される負荷を超えるシステム強度
- 信頼性工学 – 信頼性を重視するシステム工学のサブ分野
- 老化と寿命の信頼性理論 – 生物物理学理論
- 安全工学 – 設計されたシステムが許容できるレベルの安全性を提供することを保証する工学分野
- 信頼性(コンピュータネットワーク) - プロトコル確認機能
- MTBF – 動作中のシステム固有の故障間の予測経過時間
- N+1冗長性 – 独立したバックアップコンポーネントによる回復力の形式
- フォールトトレラントコンピュータシステム – コンポーネントの障害やエラーに対するシステムの耐性
- ZFS – ファイルシステム
- ビザンチン障害 – 観察者によって症状が異なるコンピュータシステムの障害
- ビザンチン・パクソス – 合意形成のためのプロトコル群
- 量子ビザンチン合意 – ビザンチン合意プロトコルの量子バージョン
- 二人の将軍の問題 – 思考実験
- 退化 – 生物学におけるプロセス
参考文献
- ^ スペースシャトルコンピュータの冗長管理技術 (PDF)、IBM Research
- ^ R. Jayapal (2003-12-04). 「アナログ投票回路はデジタル版よりも柔軟」. elecdesign.com. 2007-03-03 にオリジナルからアーカイブ。2014-06-01に取得。
- ^ 「The Aerospace Corporation | Assuring Space Mission Success」Aero.org、2014年5月20日。 2014年6月1日閲覧。
- ^ ab Scott D. Sagan (2004 年 3 月)。「通常の事故から学ぶ」(PDF)。Organization & Environment。2004年 7 月 14 日のオリジナル(PDF)からアーカイブ。
- ^ コレン、イスラエル;クリシュナ、C. マニ (2007)。フォールトトレラント システム。カリフォルニア州サンフランシスコ:モーガン・カウフマン。 p. 3.ISBN 978-0-12-088525-1。
- ^ [1] スミソニアン協会 | 安全・健康・環境管理局 | 防火・生命安全設計マニュアル独立した水源 | 火災による最大損失額が5000万ドルを超える施設には、独立した防火水源が2つ必要です。
- ^ [2] DAL Aに異なる冗長アーキテクチャが必要な理由 | Curtis Wright Defense Systems ]
- ^ [3] 火災警報回路 | クラスX回路は、冗長パスを使用することで、単一の開放回路または単一の短絡回路でも動作し続けます。
- ^ [4] 雷の力に対する保護 | 直接の雷撃ではなく誘導サージから保護する。2005年2月1日ツイストペア
- ^ abc [5] データセンターサイトの冗長性 | HM BrothertonとJ. Eric Dietz | コンピュータ情報技術、パデュー大学
- ^ [6] ファクトリー・ミューチュアル保険会社 | 1-20 外部火災暴露に対する保護
- ^ ab [7] 国立研究会議 | カナダ | 建築研究部門 | 建物の空間的分離 | 1959年11月
- ^ [8] 高層ビル設計ガイドライン | トロント市 | 2013年3月 | 52ページ | 同じ敷地内のタワー間の距離は25メートル以上
- ^ [9] 山火事から住宅を守る | ハワード・E・ムーア著(一般技術報告書PSW-50) | 30ページ、項目10。
- ^ [10] オンプレミスクラウドは失敗だ。Google が解決策を提示 | エリアス・クナセル | 2023 年 5 月 17 日
- ^ https://www.archives.gov/files/records-mgmt/storage-standards-toolkit/file3.pdf 記録保管施設の施設基準
- ^ https://www.archives.gov/preservation/storage/presidential-library-standards.html 永久記録保管と大統領図書館の基準
- ^ システムサステナビリティ:クリティカルシステムとレガシーシステムのサステナビリティのための取得およびエンジニアリングプロセス。2022年。ISBN 9789811256868。
- ^ ab 信頼性と可用性エンジニアリング:モデリング、分析、およびアプリケーション。2017年。ISBN 978-1107099500。
- ^分散システムの理解、 第2 版: 大規模分散アプリケーションについてすべての開発者が知っておくべきこと。ISBN 978-1838430214。
