JP3867047B2 - フォールト・トレラント計算機配列およびその作動方法 - Google Patents

フォールト・トレラント計算機配列およびその作動方法 Download PDF

Info

Publication number
JP3867047B2
JP3867047B2 JP2002570079A JP2002570079A JP3867047B2 JP 3867047 B2 JP3867047 B2 JP 3867047B2 JP 2002570079 A JP2002570079 A JP 2002570079A JP 2002570079 A JP2002570079 A JP 2002570079A JP 3867047 B2 JP3867047 B2 JP 3867047B2
Authority
JP
Japan
Prior art keywords
processing
computer
request data
computers
exchange
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002570079A
Other languages
English (en)
Other versions
JP2004527829A (ja
Inventor
カイザー、オリファー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of JP2004527829A publication Critical patent/JP2004527829A/ja
Application granted granted Critical
Publication of JP3867047B2 publication Critical patent/JP3867047B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1691Temporal synchronisation or re-synchronisation of redundant processing components using a quantum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • G06F11/184Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality

Description

本発明は、互いにハードウェア的およびソフトウェア的、又はそのいずれか一方の方式で結び付けられた複数の計算機を含む計算機配列であって、計算機配列の外界に対する機能が計算機の1つまたは複数の故障により損なわれないように、または非本質的にしか損なわれない計算機配列(フォールト・トレラント計算機配列)に関する。
さらに本発明はこのような計算機配列を作動させるための方法に関する。
最近の社会では既に今日サービス、通信接続、監視課題などの多くがディジタル計算機を使用して実現される。例えばインターネットを介しての物品の注文が、少し前までは通常であった郵便による注文にとってかわりつつある。
このような注文過程ではカスタマはインターネットと接続されているカスタマのコンピュータを提供会社のサーバーを選ぶために利用し、そこに存在する注文ソフトウェアを注文契約に利用する。
カスタマは注文過程で、どのように多くの種々の計算機によりその注文過程が同時にまたは次々と処理されるかに気付かない。注文過程の間に誤りが生じないかぎり、注文状況はカスタマに対して、あたかもカスタマがただ1つの計算機と“会話のパートナー”として通信するかのように現れる。
しかし注文過程のステップが誤って行われると、このことをカスタマはしばしば、誤りのゆえに注文システムの計算機のどれか1つが情報を失っているので、カスタマが既に入力した情報をもう一度入力しなければならないことにより気付く。
インターネットを介して取扱可能なこのような注文システムは知られており、毎日数百万の利用者により取り扱われる。
このようなシステムの欠点は、たといこれらのシステムが通常のように複数の計算機から成っているとしても、これらの計算機の1つの故障が全計算機システムの故障または少なくとも1つの部分機能の喪失、またそれによって情報および処理時間の喪失に通ずることにある。この欠点は、このような計算機配列(クラスタ)の使用が本質的に、同時に処理可能な過程の速度および数を高めるために、計算機システムに課せられた要求を複数の計算機に分配する(負荷分配)という課題を解決することに起因している。このような計算機配列においては、処理すべき要求が所望の負荷分配のゆえに同時に複数の計算機に導かれるのではなく、この計算機配列の計算機が同期化されていないことにより、計算機配列の1つの計算機の故障が必然的に少なくとも部分機能の喪失および情報の喪失又はそのいずれか一方に通ずる。
複数のサーバを有する計算機配列はたとえばヨーロッパ特許出願公開第0 942 363 A2号明細書に示されている。その計算機配列においては、到来する要求データはサービスクラスに分割され、それらが次いでそれぞれ特定の数のサーバにより処理される。今、その瞬間に利用できる計算機容量におけるリソースが十分でないために、特定のサービスが処理され得ないならば、サーバはなお計算リソースを利用できる他のサービスクラスから解決され、要求されるサービスに対応付けられる。
すなわち上記の特許出願公開明細書には、サービスのリソース不足の際に、サーバがなお利用できる計算容量を有する他のサービスのサーバが代理をするように、サーバへの要求データの負荷分配が行われる計算機クラスタが記載されている。
その際の欠点は、故障発生の場合に対する解決策が講じられていないので、サービスの故障が確かに全体として当該のサービスの喪失に通じないが、計算機クラスタに与える要求データが故障発生の場合に保たれており、可能なかぎり中断なしに引き続き処理され得ることが保証されていないことである。
従って、このような計算機配列は、人間および環境の危険を排除するために、データ喪失および(または)処理遅れが生じてはならない危険な応用には適していない。従って、たとえば原子力発電所の監視システムとして、危険なたとえば電気プロセスまたは化学プロセスにおける保護システムとして、または時間臨界的な進行の操作システムとしてこのような計算機配列を使用することは不可能である。
独国特許出願第 198 14 096 A1号明細書には、冗長性をもって接続された同形式の構成要素を切換えるための方法が記載されている。
これらの同形式の構成要素のうち、1つは自動化プロセスを操作するマスター構成要素として機能する。第2の同形式の構成要素はマスター構成要素の故障の際にその機能を引き受け得るように、いわゆるスレーブモード(リザーブ)に位置している。
同形式の両構成要素は同期して等しい要求データを上位の装置から与えられる。
マスター構成要素の故障発生の場合に、スレーブモードの構成要素が、マスター構成要素の機能を引き受けるために、上位の装置を迂回して直接能動化される。こうして、故障発生の場合に故障した構成要素から機能可能な構成要素への迅速な切換が保証されている。
しかし、故障発生の場合にどのように、要求データが失われず、また故障発生の場合に機能を引き受ける構成要素が正しい出力データを供給することが保証され得るかは見分けがつかない。
さらに、従来の技術によるこの方法では、構成要素が等しい形式でなければならないことが欠点である。それにより等しい機能の互いに異なる構成要素の使用はこの問題の解決のためには除かれ、このことはこのような冗長性の計算機配列の実現の際に高いコストにつながる。たとえば主計算機(マスタ)を非常に高能力の計算機として、またリザーブ計算機(スレーブ)を若干低能力の計算機として構成することができよう。正常な場合には高能力の計算機が計算機配列の機能を引き受け、故障発生の場合にのみ、リザーブ計算機が機能を引き受けるときには計算能力の若干の低下が生ずる。しかし、このような、従来の技術に比較してコスト的に望ましい計算機配列は、説明されている方法によってはフォールト・トレラントに作動し得ない。
国際特許出願第98/44416号明細書にはフォールト・トレラント計算機システムが記載されている。
これはクロック同期して動作するたとえば4つまたはそれ以上のCPUを含んでいる。
到来するデータはすべてのCPUにより同時にクロック同期して処理される。
CPUはそれらの計算結果を、これらの結果の妥当性を確かめかつ妥当な結果を出力する評価ユニットに伝達する。
このシステムではフォールト・トレランスが実際上専らハードウェアで実現される。このことは、互いに完全に同形式のユニット(CPU)が絶対的に同時に(クロック同期)等しい入力データを処理し、所属する結果を供給することを意味する。すなわちユニットの故障は全システムの機能不能にはならない。
その際の欠点は、このようなクロック同期して動作する解決策は、クロック同期作動が使用されるハードウェアに高い要求を課し、またさらにハードウエアは互いに完全に同形式でなければならないので、非常にコストがかかることである。その場合トレランスは実際上認められない。さらに、使用されるユニットの同期化は、並列に接続されているユニットが要求データの処理の際に1クロックさえ離れ離れに進行してはならないので、非常にコストがかかる。さらに、互いに異なる形式のハードウェアを、この従来の技術で冗長性を実現するために、使用することが不可能である。
冗長性を専らハードウェアで実現するこのような冗長性システムに対する従来の技術からの別の例はシーメンスのジーマチック(SIMATIC)自動化ファミリ(たとえばS5-155H;S7-400H)のいわゆるHシステム(高利用可能システム)である。このシステムにおいては、それぞれ等しい要求データをクロック同期して並列に処理するそれぞれ2つの互いに完全に同一の特殊な中央ユニットが使用される。中央ユニットの同期化および故障の監視は非常にコストがかかる。さらに仕入れ費が非常に高い。
従って本発明の課題は、前記の欠点を克服し、フレキシブルに種々の構成要素からも組み合わせ可能であり、またコスト面で有利に製作可能なフォールト・トレラント計算機配列を提供することである。
この課題は、本発明によれば、交換レベルおよび処理レベルを有するフォールト・トレラント計算機配列において、
−交換レベルが、到来する要求データにタイムマークを対応付けるべく構成されている少なくとも1つの交換計算機により形成され、
−処理レベルが、並列に交換レベルから要求データを供給されている少なくとも2つの処理計算機により形成され、
−処理計算機がそれぞれ、タイムマークの現在の値がそれぞれ有効値範囲に属するとき要求データをすぐ次の処理ステップで処理すべく構成されている
ことを特徴とするフォールト・トレラント計算機配列により解決される。
このような本発明による計算機配列では、計算機配列により結果に処理すべき要求データは交換レベル(ブローカ)の1つ又は複数の計算機に向けられる。
交換レベルは、到来する要求データにタイムマークを与え、このタイムマークは、例えばクロックモジュールの現在の時間信号、または交換レベルにおける要求データの到来の時点を含む通し番号であってよい。
要求データは場合によっては交換レベルにより前処理され、付属のタイムマークと一緒に並列に処理レベルの処理計算機に伝達される。処理レベルが複数の処理部分レベル(処理サブレベル)から成り、処理部分レベルがそれぞれ少なくとも2つの計算機から形成され、それぞれ特定の要求形式の処理に特殊化されている場合には、要求データはそれらの形式に応じて交換レベルから所属の処理サブレベルの当該の計算機に伝達される。
交換レベルの主要な課題は、本発明による計算機配列により1つの結果に処理すべき要求データに入力タイムスタンプを付け、結果への要求データの処理を行う処理レベルの計算機に伝達することにある。
処理計算機の1つの計算機の故障に対する本発明による計算機配列のフォールト・トレランスは、要求データが従来の技術の多くの解決策(いわゆるクラスタ解決策)の際のように処理レベルの1つの計算機に伝達されるだけでなく、処理レベルのすべての計算機に伝達されることにより実現されている。
こうして、処理レベルの1つの計算機が故障のときに、その処理レベルにおける要求データが失われないことが保証されている。
処理計算機は次いで、それぞれ要求データに付けられているタイムマークの現在の値を手がかりにして、要求データが各処理計算機によりすぐ次の処理ステップで処理されるか否かを確かめる。
それにより、処理レベルへの同期化されていない並列な情報伝達が、相異なる回答を要求データの結果として処理計算機が確かめることになるのが防止される。
処理計算機はタイムマークの現在の値を評価し、タイムマークの現在の値がそれぞれ有効値範囲に属するか否かを処理計算機が確かめる。
処理レベルの計算機は要求データを典型的な仕方で、サイクリックに次々と続き得る複数の処理ステップで処理する。このことはたとえば、すべて100msの間に新しい処理ステップが通り抜けられることを意味する。本発明によれば、処理計算機により特定の処理サイクルにおいて、タイムマークの現在の値が有効値範囲に属するようなデータのみが処理される。即ち後者はたとえば、データを交換レベルから処理レベルの計算機へ転送するためにたかだか必要な最大のれ時間を差し引いたすぐ次の処理サイクルの開始時点よりも古い時点から成り得る。
このようにして、処理レベルの計算機が少なくとも処理ステップの開始の時点で要求データを同期して処理することが保証されている。こうしてさらに、処理計算機が要求データを交換レベルからの伝達の際の時間遅れの故に互いに無関係に、すなわち非同期に、処理し、こうして要求データに関して異なる結果を計算することが防止される。
この説明された本発明による同期化の形式は“暗示的同期化”と呼ばれる。この同期化においては、個々の計算機が互いに絶対的にクロック同期して動作することは必要でない。むしろ、処理計算機がそれぞれすぐ次の処理ステップの開始時点までに交換レベルから処理レベルのすべての計算機への伝達時間に関してなお確実に伝達され得る要求データのみを処理するかぎり、処理計算機が同期化されていることだけが決定的に重要である。
たとえば処理計算機による検査の際に、要求データがすぐ次の処理ステップの開始時点に関して遅過ぎて交換レベルに生じていることが判明すると(これはタイムマークの評価により確認することができる)、すなわち要求データがすぐ次の処理ステップの開始の時点までに処理レベルのすべての計算機に確実に伝達されないと、要求データは処理計算機により最初にその1つおいて次の処理ステップにより処理される。このようにして、本発明による計算機配列の冗長性が、処理レベルのすべての計算機が要求データを処理し、これらの計算機の1つがデータまたは結果の喪失を生じないかぎり、保証されている。
本発明の有利な構成では、外界への本発明による計算機配列のインタフェースが、到来する要求データを外界から受け取り、所属の計算された結果を外界に伝達する交換レベルにより形成されている。
外界から要求を計算機配列に与え、結果を受け取りたい利用者に対して、このようにして計算機配列は単一の計算機のように振る舞う。入力データも出力データもただ1つのインタフェースから転送される。
本発明の別の有利な構成では、交換レベルが、処理計算機により要求データに関して計算された結果を予め定められた妥当性規則に基づいて評価し、この評価から出発して結果から1つの結果を選択し、外界に伝達するべく構成されている。
本発明による計算機配列では、要求データは冗長性の理由から複数の処理計算機により処理される。しかし要求データの結果としてこれらの結果のただ1つが外界に伝達されるべきである。利用者は1つの一義的な結果を受け取るべきであり、なかんずく異なる結果から1つを選び出さなければならない立場におかれるべきではない。
それ故予め定められた妥当性規則の助けをかりて交換レベルは、前記の結果のどれが外界に伝達されるかを判断する。
妥当性規則はたとえば、交換レベルが処理計算機により要求データに関して求められた結果を互いに比較し、これらの結果のどれだけ多くが合致するかを確かめることにある。合致する結果の数が合致しない結果の数よりも大きいならば、合致する結果の群からの結果の1つが妥当な結果として外界に伝達される。
妥当性規則はなお、たとえば、処理計算機のすべての結果が合致するときにのみ、1つの妥当な結果が外界に伝達されることにより、より鋭くされ得る。こうして結果が正しいことの確実性は最大である。
交換レベルが少なくとも2つの交換計算機により形成されており、これらの交換計算機の各々が、少なくとも1つの他の交換計算機の誤機能を検出し、その機能を引き受けるべく構成されていると有利である。
このようにして本発明による計算機配列の冗長性が交換レベルの機能に関しても実現される。交換レベルの計算機の1つの故障の際に、このことを交換レベルの少なくとも1つの他の計算機が認識する。この計算機がそれに基づいて欠陥のある交換計算機の機能を引き受け、到来する要求データを処理する。
交換レベルにおける前記の欠陥認識はたとえば、交換計算機が互いに、不断の存在を検査する周期的な信号を交換すること(ハートビート、ウォッチドッグ)により実現されていてよい。いまこのような信号が交換レベルの計算機の1つに対してたとえば少なくとも1つのクロックサイクルの間に生じないと、当該の計算機が欠陥ありとしてマークされ、その機能が交換レベルの他の計算機により引き受けられる。交換計算機が、要求データが伝達されている通信バスを経て接続されていることは有利である。このようにして、交換レベルの計算機の各々が要求データにアクセスし、その結果計算機の1つの欠陥の場合に他の計算機にジャンプし得る。
本発明の別の有利な構成では、処理レベルが少なくとも2つの処理サブレベルに分割され、この処理サブレベルはそれぞれ少なくとも2つの計算機により形成されており、またそれぞれ特定の要求を処理するために設けられている。この本発明の有利な構成では、各処理サブレベルが要求データのそれぞれ特定の形式の処理に特殊化されている。各処理サブレベルは少なくともそれぞれ2つの計算機から形成されているので、これらの計算機の1つの欠陥が当該の機能の喪失にならない。
処理サブレベルの形成は処理計算機に要求データを負荷分配することをもたらし、その結果利用可能な計算機能力が良好に利用しつくされる。
各処理レベルには、交換計算機の少なくとも1つがその要求交換計算機として所属するのが有利である。
本発明のこの有利な構成では、交換計算機も課題固有に使用されているので、計算機配列内の負荷分配が一層改善されている。いま各課題(要求データの形式)に対して少なくとも2つの計算機が要求交換計算機として設けられているならば、冗長性が交換レベルにおいても各課題に対して実現されている。
本発明はさらに、交換レベルおよび処理レベルを有するフォールト・トレラント計算機配列を作動させるための方法において、
1.到来する要求データが交換レベルの少なくとも1つの交換計算機により読み込まれ、タイムマークを設けられるステップと、
2.タイムマークを設けられた要求データが交換計算機により並列に処理レベルの少なくとも2つの処理計算機に伝達されるステップと、
3.タイムマークの現在の値がそれぞれ有効値範囲に属するとき、要求データが処理計算機によりそれぞれすぐ次の処理ステップで処理されるステップと
を含んでいることを特徴とする方法に導く。
本発明の有利な構成では、処理計算機によりステップ3で計算され要求データに所属の結果が交換計算機により予め定められた妥当性規則に基づいて評価され、この評価に基づいてこれらの結果の1つが選択される。
本発明の別の有利な構成では、要求データが少なくとも2つの交換計算機により並列に読み込まれる。
以下には本発明の3つの実施例が詳細に示される。
図1は交換レベル10及び処理レベル30を有する計算機配列1を示す。
交換レベル10は交換計算機11、12、1nを含んでおり、それらに要求データ7が交換モジュール8により向けられている。交換レベルのすべての計算機は並列に等しい要求データを受ける。
交換計算機11、12、1nは互いに通信接続2により接続されている。これらの通信接続2のそれぞれ1つに各処理サブレベル20の少なくともそれぞれ1つの処理計算機が通信接続3a、3b、3cにより接続されている。
複数の処理計算機201、202、20x、211、212、21y、221、222、22zにより形成されている各処理サブレベル20は、それぞれ1つの特定の形式の要求データ7を処理するために用いられる。すなわち各処理サブレベル20はそのかぎりでは特定の課題の処理に特殊化されている。
通信接続2、3a、3b、3cの実施の形式により、これらの通信接続2、3のどれか1つの不作動がデータの喪失及び処理サブレベル20により与えられる機能の喪失又はそのいずれか一方に通ずることが防止される。たとえば通信接続3aが故障すると、処理サブレベル20は通信接続3bにより要求データを与えられ得る。
さらに、交換レベルまたは処理レベルの計算機のどれか1つの故障も、これらがそれぞれ多重に構成されているので、情報および機能又はそのいずれか一方の喪失にならない。
処理サブレベル20の1つで処理される各課題はそこでは複数の処理計算機により処理され、その結果これらの計算機の1つの故障が各処理サブレベルの機能の喪失になることはない。
さらに、交換計算機11、12、1nの1つの故障は、要求データ7が交換モジュール8により交換レベルのすべての計算機に伝達され、交換計算機11、12、1nの各々が通信接続2、3a、3b、3cの特別な構成の故に処理レベル30のすべての処理計算機へのデータアクセスを持つので、交換レベル10の機能の喪失にならない。すなわち交換レベル10の交換計算機の1つの機能の喪失は、他の交換計算機によるその機能の受け継ぎにより帳消しになる。
交換レベル10において、また処理レベル30の各処理サブレベル20において、その結果として、それぞれすべての計算機が、それぞれ故障した計算機あるいは欠陥のある計算機を除いて、本発明による計算機配列1の全機能が失われることなしに、動作し得る。
各処理サブレベル20の計算機は、タイムマークを付けられている得られた要求データを処理し、タイムマークの値が有効値範囲に属するならば、すぐ次の処理ステップで処理する。そうでない場合には、計算機は処理をまず1つおいて次の処理ステップまで中止する。処理ステップは円筒状に次々と続き得る(動作ステップの特殊な場合としての処理サイクル)。
処理計算機の処理ステップがそれぞれ等しい時点で開始することは有利であり、その結果処理計算機は確かにクロック同期化されていないが、少なくともそれらの処理ステップの共通の開始に関して同期化されている(このことは用語“暗示的な同期化”に含まれている)。
交換レベル10の計算機11、12、…1nは互いに、処理計算機の説明された暗示的な同期化に類似して、同じく暗示的に同期化されていてよい。
図2は、交換計算機40により形成される交換レベル200と、2つの処理計算機51、52を含む処理レベル300とを有する本発明による計算機配列を示す。
要求データ42は入力モジュール43aに読み込まれる。時間信号発生器44がタイムマーク46を入力モジュール43aに伝達する。
入力モジュール43aにおいて、要求データ42はタイムマーク46を付けられ、タイムマークを付けられた要求データ48として両処理計算機51、52に並列に送られる。処理計算機51、52において処理モジュール511がタイムマーク46を要求データ42から分離し、要求データ42をアプリケーションプログラムモジュール61に伝達する。
分離されたタイムマーク46は処理モジュール511から処理モジュール53に伝達される。この処理モジュール53においてタイムマーク46が、その値が有効値範囲に属するかどうかが検査される。これはたとえば、処理計算機のすぐ次の処理ステップが開始する前に、要求データ42が交換レベル200において、それらが交換レベル200を通って処理計算機51、52への伝達−そのためにはたかだか最大の伝達送れ時間が必要−の後に、すべての処理計算機に到来するように、早い時点で故障している場合であり得る。その場合処理計算機の各々のそれぞれすぐ次の処理ステップの開始のための各時点はすべての処理計算機において等しいことは有利である。
このようにして、“暗示的な同期化”が実現され、こうして処理計算機51、52が“別れ別れになる”こと、すなわち処理ステップの開始の時点で相異なるデータを処理し、こうして相異なる結果を与えることが防止される。
タイムマーク46の現在の値が−たとえば上記のような−有効値範囲に属するならば、処理モジュール53は制御信号55をアプリケーションプログラムモジュール61に与え、その結果これが要求データ42の処理を行い、その結果としての結果データ54を交換計算機40の出力モジュール43bに送る。いま処理モジュール53がタイムマーク46の評価の際に、その現在の値が有効値範囲に落ちないことを確認すると、すなわちたとえば要求データが確実に処理計算機のすぐ次の処理ステップの開始までにすべての処理計算機に伝達され得ないことを確認すると、処理モジュール53がまずすぐ次の処理サイクルのために制御信号55を作り、その結果アプリケーションプログラムモジュール61は要求データ42を1つおいて次の処理サイクルで初めて処理する。このことはすべての関与する処理計算機51、52に対して当てはまるので、これらはこの観点で同期化されている。
処理計算機51、52はそれらにより計算された結果データ54を交換計算機40の出力モジュール43bに伝達する。出力モジュール43bにおいて結果データ54が評価され、そこから結果41が出力される。
出力モジュール43bにおける評価はたとえば処理計算機51、52から与えられる結果データ54の比較にあり得る。両方の結果が等しいならば、出力モジュール43bからこれらの結果のどれか1つが結果41として出力される。
いま両方の結果が合致しないならば、結果41はたとえば欠陥報知であり得る。処理計算機51、52の1つが欠陥でそもそも結果データ54を与え得ない場合には、出力モジュール43bは機能し得る処理計算機の結果データ41を結果として選ぶ。
図3には時間ビームIに要求データ70、80、90の発生の時間的経過が示されており、これらの要求データは交換レベルによりそれぞれタイムマークをデータ発生の時点に相応して付けられ、処理レベルのすべての処理計算機に伝達される。要求データ70、80、90は互いに特定の時間間隔をおいて交換レベルで生じる。
時間ビームII、III、VI、Vは処理レベルの計算機に対応付けられており、時間ビームII、III、VIは要求データ70、80、90の到来の時点をタイムマークを付けられた要求データ75、85または95として3つの処理計算機に示す。
時間ビームVは、元の要求データ70、80または90が処理計算機によりその後に処理される処理時点t70、t80、t90を示す。時点t0、t1、t2、t3 は処理計算機の処理ステップC0、C1、C2、C3に対する開始時点である。処理ステップはサイクリックに次々と続き得る。たとえば100msは処理サイクルの継続時間に対する典型的な大きさである。しかし他の特にそれよりも短いサイクル継続時間も可能である。
最大の伝達送れ時間tsは、たとい処理計算機と交換レベルとの間の通信接続および処理計算機又はそのいずれか一方が互いに等しい形式ではない、特に相異なる速さである、としても、要求データ70、80、90を確実に処理レベルのすべての計算機に送るために最大必要な時間間隔である。最も望ましくない伝送挙動のもとでも交換レベルから処理レベルへのデータ伝送が最大の伝達送れ時間tsよりも長く継続しないように、最大の伝達送れ時間tsが時間余裕を含んでいることは有利である。
要求データ70は交換レベルからタイムマークを付けられ、要求データ75として処理レベルに伝達される。図3から明らかなように、要求データ75は処理レベルの3つの計算機に相異なる時点で入来する。時間ビームIII、VIは、要求データ75が3つの処理計算機の2つに適時にすぐ次の処理ステップC0の開始の時点t0に入来せず、要求データ75のタイムマークが有効値範囲に位置しないことを示す。この理由から処理レベルの計算機は要求データ75の処理を、1つおいて次の処理ステップC1に相当する時点t70で初めて開始する。このようにして、要求データ75が冗長性をもって複数の、特にすべての、処理計算機により処理されることが保証されている。
要求データ80は、処理レベルのすべての計算機がタイムマークを付けられた要求データ85の処理をデータ80の発生の後に既にすぐ次の処理ステップC2の開始の時点t80で開始するように、処理ステップC2の開始前に適時に処理レベルのすべての計算機に送られる。こうして最後にあげた場合には要求データ85のタイムマークは有効値範囲に落ち、従って処理計算機による処理が既にすぐ次の、要求データのデータ発生の時点に続く処理ステップC2で行われる。
要求データ90は同じく交換レベルによりタイムマークを付けられ、処理レベルの計算機に導かれ、そこにそれらは処理計算機の2つにすぐ次の処理ステップの開始前に適時に到達する。しかし処理レベルの第3の計算機には欠陥が生じ、その結果要求データ95はこれにより処理され得ない。しかし要求データ95のタイムマークは有効値範囲に属する。なぜならば、それらは処理レベルの機能し得る計算機において適時にすぐ次の処理ステップの開始の前に入力されており、従ってこれらが要求データ95の処理をすぐ次の処理ステップC3の開始の時点t90で引き受けるからである。処理レベルの1つまたは複数の計算機の欠陥にもかかわらず要求データ95は処理レベルの機能し得る計算機により処理される。すなわち欠陥がデータまたは計算された結果の喪失にならない。
複数の交換計算機と複数の処理サブレベルに分けられている処理レベルとを有する本発明による計算機配列。 交換計算機と2つの処理計算機とを有し、暗示的な同期化が一層詳細に示されている本発明による計算機クラスタ。 交換レベルから処理レベルに伝達される要求データの時間的経過を示すためのタイムダイアグラム。
符号の説明
1 計算機クラスタ
2 通信接続
3a、3b、3c 通信接続
7 要求データ
8 交換モジュール
10 交換レベル
11、12、1n 交換計算機
20 処理サブレベル
201、202、20x、211、212、21y、221、222、22z 処理計算機
30 処理レベル
40 交換計算機
41 結果
42 要求データ
43a 入力モジュール
43b 出力モジュール
44 時間信号発生器
46 タイムマーク
48 要求データ
51 処理計算機
52 処理計算機
53 処理モジュール
54 結果データ
55 制御信号
511 処理モジュール
61 アプリケーションプログラムモジュール
200 交換レベル
300 処理レベル
70 要求データ
75 要求データ
80 要求データ
85 要求データ
90 要求データ
95 要求データ

Claims (9)

  1. 交換レベル(10)および処理レベル(30)を有するフォールト・トレラント計算機配列(1)において、
    −交換レベル(10)が、到来する要求データ(7)にタイムマーク(46)を対応付けるべく構成されている少なくとも1つの交換計算機(11、12、1n)により形成され、
    −処理レベル(30)が、交換レベル(10)から並列に要求データ(7)を供給されている少なくとも2つの処理計算機(201、202、20x、211、212、21y、221、222、22z)により形成され、
    −処理計算機(201、202、20x、211、212、21y、221、222、22z)は、それぞれ、タイムマーク(46)の現在の値がある値範囲に属するとき、要求データ(7)がすぐ次の処理ステップ(C0、C1、C2)において処理されるべく構成されており、それにより、要求データ(7)は、処理計算機(201、202、20x、211、212、21y、221、222、22z)の前記次の処理ステップの開始までに安全に、すべての処理計算機(201、202、20x、211、212、21y、221、222、22z)に伝送されることができ
    −処理計算機(201、202、20x、211、212、21y、221、222、22z)は、それぞれ、タイムマーク(46)の現在の値が前記の値範囲に属さないとき、要求データ(7)が1つおいて次の処理ステップ(C 0 、C 1 、C 2 )において初めて処理されるべく構成されており、それにより、処理計算機(201、202、20x、211、212、21y、221、222、22z)は、要求データ(7)の処理の同期をとる
    ことを特徴とする計算機配列。
  2. 外界へのインタフェースが、到来する要求データ(7)を外界から受け取り、所属の計算された結果(41)を外界に伝達する交換レベル(10)により形成されることを特徴とする請求項1記載の計算機配列。
  3. 交換レベル(10)が、処理計算機(201、202、20x、211、212、21y、221、222、22z)により要求データ(7)に関して計算された結果(54)を予め定められた妥当性規則に基づいて評価し、この結果(54)の評価から出発して1つの結果(41)を選択し、外界に伝達すべく構成さていることを特徴とする請求項2記載の計算機配列。
  4. 交換レベル(10)が少なくとも2つの交換計算機(11、12、1n)により形成され、これらの交換計算機(11、12、1n)の各々が少なくとも1つの他の交換計算機(11、12、1n)の故障機能を検出し、その機能を引き受けるべく構成されていることを特徴とする請求項1ないし3のいずれか1つに記載の計算機配列。
  5. 処理レベル(30)が少なくとも2つの処理サブレベル(20)に分割され、処理サブレベルはそれぞれ少なくとも2つの計算機により形成され、それぞれ特定の要求データ(7)を処理するために設けられていることを特徴とする請求項1ないし4のいずれか1つに記載の計算機配列。
  6. 各処理サブレベル(20)がそれらの要求交換計算機としての交換計算機(11、12、1n)の少なくとも1つに対応付けられ、この交換計算機が特定の要求データ(7)の交換に特殊化されていることを特徴とする請求項5記載の計算機配列。
  7. 交換レベル(10)および処理レベル(30)を有するフォールト・トレラント計算機配列(1)を作動させるための方法において、
    a)到来する要求データ(7)が交換レベル(10)の少なくとも1つの交換計算機(11、12、1n)により読み込まれ、タイムマーク(46)を設けられるステップと、
    b)タイムマーク(46)を設けられた要求データ(7)が交換計算機(11、12、1n)により並列に処理レベル(30)の少なくとも2つの処理計算機(201、202、20x、211、212、21y、221、222、22z)に伝達されるステップと、
    c)タイムマーク(46)の現在の値がある値範囲に属するとき、要求データ(7)が処理計算機(201、202、20x、211、212、21y、221、222、22z)によりそれぞれすぐ次の処理ステップ(C0、C1、C2)において処理され、それにより、要求データ(7)は、処理計算機(201、202、20x、211、212、21y、221、222、22z)の前記次の処理ステップの開始までに安全に、すべての処理計算機(201、202、20x、211、212、21y、221、222、22z)に伝送されることができ、タイムマーク(46)の現在の値が前記の値範囲に属さないとき、要求データ(7)が処理計算機(201、202、20x、211、212、21y、221、222、22z)によりそれぞれ1つおいて次の処理ステップ(C 0 、C 1 、C 2 )において初めて処理され、それにより、処理計算機(201、202、20x、211、212、21y、221、222、22z)は、要求データ(7)の処理の同期をとるステップ
    を含んでいることを特徴とするフォールト・トレラント計算機配列の作動方法。
  8. 処理計算機(201、202、20x、211、212、21y、221、222、22z)によりステップc)で計算され要求データ(7)に所属の結果(54)が交換計算機(11、12、1n)により予め定められた妥当性規則に基づいて評価され、この評価に基づいて結果(54)の群から1つの結果(41)が選択されることを特徴とする請求項7記載の方法。
  9. 到来する要求データ(7)が少なくとも2つの交換計算機(11、12、1n)により並列に読み込まれることを特徴とする請求項7または8記載の方法。
JP2002570079A 2001-03-07 2002-02-28 フォールト・トレラント計算機配列およびその作動方法 Expired - Fee Related JP3867047B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01105702A EP1239369A1 (de) 2001-03-07 2001-03-07 Fehlertolerante Rechneranordnung und Verfahren zum Betrieb einer derartigen Anordnung
PCT/EP2002/002181 WO2002071223A1 (de) 2001-03-07 2002-02-28 Fehlertolerante rechneranordnung und verfahren zum betrieb einer derartigen anordnung

Publications (2)

Publication Number Publication Date
JP2004527829A JP2004527829A (ja) 2004-09-09
JP3867047B2 true JP3867047B2 (ja) 2007-01-10

Family

ID=8176710

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002570079A Expired - Fee Related JP3867047B2 (ja) 2001-03-07 2002-02-28 フォールト・トレラント計算機配列およびその作動方法

Country Status (11)

Country Link
US (1) US7260740B2 (ja)
EP (2) EP1239369A1 (ja)
JP (1) JP3867047B2 (ja)
CN (1) CN1262924C (ja)
AT (1) ATE282855T1 (ja)
DE (1) DE50201568D1 (ja)
ES (1) ES2231677T3 (ja)
MX (1) MXPA03008017A (ja)
RU (1) RU2279707C2 (ja)
WO (1) WO2002071223A1 (ja)
ZA (1) ZA200304933B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2408355B (en) * 2003-11-18 2007-02-14 Ibm A system for verifying a state of an environment
JP4101251B2 (ja) * 2005-05-24 2008-06-18 富士通株式会社 負荷分散プログラム、負荷分散方法、及び負荷分散装置
US7644308B2 (en) * 2006-03-06 2010-01-05 Hewlett-Packard Development Company, L.P. Hierarchical timestamps
US9237034B2 (en) 2008-10-21 2016-01-12 Iii Holdings 1, Llc Methods and systems for providing network access redundancy
RU2543316C2 (ru) * 2012-12-25 2015-02-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ отказоустойчивого выполнения задач по расписанию в распределенных средах
WO2016067420A1 (ja) * 2014-10-30 2016-05-06 三菱電機株式会社 計算機及びデータ処理方法及びプログラム
CN104461793A (zh) * 2014-12-05 2015-03-25 中国航空工业集团公司第六三一研究所 一种高可靠多节点容错计算机系统及同步方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4979108A (en) * 1985-12-20 1990-12-18 Ag Communication Systems Corporation Task synchronization arrangement and method for remote duplex processors
US4937741A (en) * 1988-04-28 1990-06-26 The Charles Stark Draper Laboratory, Inc. Synchronization of fault-tolerant parallel processing systems
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
US5339404A (en) * 1991-05-28 1994-08-16 International Business Machines Corporation Asynchronous TMR processing system
FR2700401B1 (fr) * 1993-01-08 1995-02-24 Cegelec Système de synchronisation de tâches répondantes.
JP3501305B2 (ja) * 1993-08-04 2004-03-02 サン・マイクロシステムズ・インコーポレイテッド 相互接続制御装置及び方法
JP3274058B2 (ja) * 1996-03-22 2002-04-15 富士通株式会社 光ディバイス
US5790397A (en) * 1996-09-17 1998-08-04 Marathon Technologies Corporation Fault resilient/fault tolerant computing
US5903717A (en) 1997-04-02 1999-05-11 General Dynamics Information Systems, Inc. Fault tolerant computer system
US5896523A (en) * 1997-06-04 1999-04-20 Marathon Technologies Corporation Loosely-coupled, synchronized execution
AU753120B2 (en) * 1997-11-14 2002-10-10 Marathon Technologies Corporation Fault resilient/fault tolerant computing
US6230183B1 (en) 1998-03-11 2001-05-08 International Business Machines Corporation Method and apparatus for controlling the number of servers in a multisystem cluster
DE19814096B4 (de) 1998-03-30 2007-07-19 Abb Patent Gmbh Verfahren zur Umschaltung redundant geschalteter, gleichartiger Baugruppen
JP2000172624A (ja) * 1998-12-07 2000-06-23 Hitachi Ltd 入出力処理システム
GB2390442B (en) * 2002-03-19 2004-08-25 Sun Microsystems Inc Fault tolerant computer system

Also Published As

Publication number Publication date
AU2002246102B2 (en) 2005-04-14
US20040158770A1 (en) 2004-08-12
DE50201568D1 (de) 2004-12-23
ZA200304933B (en) 2004-04-23
ATE282855T1 (de) 2004-12-15
RU2279707C2 (ru) 2006-07-10
JP2004527829A (ja) 2004-09-09
EP1239369A1 (de) 2002-09-11
CN1488100A (zh) 2004-04-07
EP1366416B1 (de) 2004-11-17
WO2002071223A1 (de) 2002-09-12
CN1262924C (zh) 2006-07-05
US7260740B2 (en) 2007-08-21
MXPA03008017A (es) 2004-05-24
EP1366416A1 (de) 2003-12-03
AU2002246102B9 (en) 2005-04-21
ES2231677T3 (es) 2005-05-16
RU2003129648A (ru) 2005-04-10

Similar Documents

Publication Publication Date Title
EP1110148B1 (en) Fault tolerant computer system
US5694542A (en) Time-triggered communication control unit and communication method
EP2085839B1 (en) Apparatus for unidirectionally interconnecting modules
EP1675004A2 (en) Fault tolerant system and controller, access control method, and control program used in the fault tolerant system
US5210871A (en) Interprocessor communication for a fault-tolerant, mixed redundancy distributed information processing system
JP2002517819A (ja) 耐障害性演算用の冗長コンピュータ・ベース・システムを管理するための方法及び装置
US20080313426A1 (en) Information Processing Apparatus and Information Processing Method
US6574744B1 (en) Method of determining a uniform global view of the system status of a distributed computer network
CN112650048B (zh) 一种工业网关冗余系统和控制方法
JPH04364562A (ja) プロセス制御システムにおいて一次データベース及び二次データベースに格納されているデータを保証する方法
JP3867047B2 (ja) フォールト・トレラント計算機配列およびその作動方法
KR20040078113A (ko) 고장에 대처할 수 있는 시간동기 기술
Elmenreich et al. Introduction to ttp/c and ttp/a
JPH0326936B2 (ja)
JP3884643B2 (ja) プロセス制御装置
CN107608483B (zh) 一种控制服务器风扇的方法及装置
Pimentel et al. A fault management protocol for TTP/C
US6857121B1 (en) Responsive system for digital signal processing and method for operation of a responsive system
JP3706332B2 (ja) プロセス制御装置
US7213167B1 (en) Redundant state machines in network elements
Dieterle et al. Communication architectures for distributed computer control systems
Silva et al. Master replication and bus error detection in FTT-CAN with multiple buses
US20030158972A1 (en) Device and method for the synchronization of a system of networked computers
US5519385A (en) Circuit for switching signal processing circuits
WO2021250652A1 (en) Highly-available cluster leader election in a distributed routing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060301

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060601

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060907

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061006

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091013

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121013

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees