JP3467750B2 - 分散オブジェクト処理システム - Google Patents

分散オブジェクト処理システム

Info

Publication number
JP3467750B2
JP3467750B2 JP00657697A JP657697A JP3467750B2 JP 3467750 B2 JP3467750 B2 JP 3467750B2 JP 00657697 A JP00657697 A JP 00657697A JP 657697 A JP657697 A JP 657697A JP 3467750 B2 JP3467750 B2 JP 3467750B2
Authority
JP
Japan
Prior art keywords
message
duplicate
execution
node
distributed
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 - Lifetime
Application number
JP00657697A
Other languages
English (en)
Other versions
JPH10207849A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP00657697A priority Critical patent/JP3467750B2/ja
Publication of JPH10207849A publication Critical patent/JPH10207849A/ja
Application granted granted Critical
Publication of JP3467750B2 publication Critical patent/JP3467750B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、分散コンピューテ
ィング環境で動作するオブジェクトにおいて、複数の実
行実体を実行系と待機系に分割することにより高信頼化
と負荷分散とを実現することができる分散システムにお
ける高信頼化と負荷分散方法、ならびにその処理プログ
ラムを記録した記録媒体に関する。
【0002】
【従来の技術】オブジェクト指向システムの動作単位で
あるオブジェクトを高信頼化する方法として、オブジェ
クトを分散コンピューティング環境で動作させる技術が
ある。分散システムで複製を用いて高信頼性を実現する
場合、その複製の間で一貫性を維持する機構のオーバー
ヘッドが大きくなる。例えば、後述のPassiveR
eplicationを用いる方法では、内部状態一貫
性を維持するための特別な処理が必要となり、またAc
tive Replicationを用いる方法でも、
全ての複製が同じ順序で処理を行い、外部への作用は1
つにまとめるという処理が必要になる。また、分散シス
テムでは、故障の検出を効率よく行うことが困難である
ため、多くのシステムでは時計を用いて故障を検出して
いる。しかしながら、故障が生じていないにもかかわら
ず、通信網やノード自体の負荷のために、予想を越える
時間を処理にかけた場合には、この方式では故障とみな
されることがある。従来、実際に研究された例として
は、国際会議“InternationalSympo
sium on Fault−Tolerant Co
mputing”において、“The Delta−4
Approach to Dependability
in Open Distributed Comp
uting System”(1988年)と、“Usin
g Passive Replication in
Delta−4 to Provide Depend
able Distributed Computin
g”(1989年)に発表されたDelta−4というアー
キテクチャがある。これは、PassiveRepli
cation/Active Replication
のいずれの場合についても研究されているが、故障検出
に関する上述の問題は依然として解決されていない。
【0003】また、Active Replicati
onで、外部への作用を1つにまとめる処理を言語処理
系でサポートするアプローチの例として、Fault−
Tolerant Concurrent Cがある。
これも、“International Sympos
ium on Fault−Tolerant Com
puting”に、“Fault−Tolerant
ConcurrentC:A Tool for Wr
iting Fault−TolerantDistr
ibuted Programs”として発表されてい
る。この言語処理系を用いて実行コードを得ると、複数
の複製の外部への作用をカーネルが取りまとめるシステ
ムコールも自動で追加され、Active Repli
cationを実現しているために、アプリケーション
プログラマには複製の存在を意識させない。しかし、実
行時のオーバーヘッドが非常に大きくなるため、Act
ive Replicationを必要としない場合に
は、適用することはできない。さらに、Passive
Replicationを用いる研究としては、“I
EEE Transactions on Softw
are Engineering”(1985年6月号)に掲
載された“Implementing Fault−T
olerant Distributed Objec
ts”がある。これは、基本的にはPassive R
eplicationであって、外部への作用を行わせ
ない機構を考えている。しかし、あるFault−To
lerant Distributed Object
からの作用であることを判別するのに、実行スレッドの
識別子を用いており、これが多段になると検出するため
に高コストとなる。通常、実行時には、実行実体の複製
を作成せずに、必要データのみをノードに複製してお
き、故障時になって実行実体を再生するLasy Fa
ult Toleranceの考えに基づくnORのシ
ステムも研究されている。これについては、『情報処理
学会論文誌』(1995年10月号)の「データ分散化とオブ
ジェクト再構築に基づく分散処理システムの高信頼化方
式」として、発表されている。しかし、この方法であれ
ば、故障回復からの時間が大きくかかるために、実時間
性の要求が厳しいシステムには採用できない。
【0004】
【発明が解決しようとする課題】このように、前述の各
方式では、基本的に故障検出と内部状態の一貫性維持処
理を別個に行っている。これでは、実行実体間等に余分
なメッセージが飛び交い、性能の劣化を招くことにな
る。また、実行実体を複数作成する場合、高信頼化の他
に負荷分散も行うことができるが、負荷分散のためには
各ノードの負荷の情報が必要となる。この情報を集める
ために、新たなメッセージが飛び交い、性能劣化の一原
因となる。結局、下記問題点を解決することが本発明の
課題となる。すなわち、従来の技術では、実行実体を複
数設けて高信頼動作するオブジェクトを分散システム上
に作成する場合に、複製間の内部状態の一貫性維持、故
障検出、実行系の選択・切り替え、高信頼動作するオブ
ジェクトの再起動による外部への作用をなくすことに余
分な実行コストがかかるという点と、実行実体を複数持
つために、それを用いた負荷分散の実現にも、余分な実
行コストがかかるという点である。本発明の目的は、こ
れら従来技術の課題を解決し、故障検出と内部状態一致
と負荷分散を同時に行え、メッセージ数の少ない高信頼
化・負荷分散機構を実現することができ、同時に複数の
高信頼オブジェクトを実行する際にも妨げとならない、
低コストの分散システムにおける高信頼化と負荷分散方
法を提供することにある。
【0005】
【課題を解決するための手段】上記目的を達成するた
め、本発明の分散システムにおける高信頼化と負荷分散
方法では、タイムアウトによる故障検出のための時間測
定開始要求メッセージと、故障時のオブジェクト再起動
のための複製メッセージを共通にし、複製間の内部状態
の一貫性維持のためのメッセージと、故障時には必要に
なるはずであった複製メッセージの破棄要求メッセージ
と、負荷分散に必要になる各ノードの負荷に関する情報
の通知メッセージを共通にし、負荷に関する情報を自律
的に適切なノードに集め、外部には存在が感じられる擬
似管理オブジェクトの時計を用いることにより、複製の
再実行を防ぎ、これにより高信頼実行と負荷分散実行を
得る。また、高信頼実行と負荷分散実行を獲得するため
の処理プログラムを記録した記憶媒体を実現する。
【0006】
【発明の実施の形態】以下、本発明の動作原理および実
施例を、図面により詳細に説明する。 (動作原理)図9は、本発明が適用される複数ノードの
オブジェクトによる交換機制御の図である。近年、社会
経済活動の多様化、高度化に伴って、大量化・複雑化・
広域化されて発生する情報を、より正確に早く処理する
ため、計算機を用いた情報処理システムの重要性が高ま
っている。例えば、公衆データ通信網では、多数の利用
者が多数の相手と通信できるよう交換処理機能が必要と
なる。また、多種多様な計算機や端末が公衆データ通信
網に接続されるため、それらに対応する通信処理機能も
必要となる。図9では、データ交換網内に、複数のノー
ドが通信網(交換機)により接続され、各ノード内でド
ライバオブジェクト、INオブジェクトが設置されてい
る。さらに、各ノード内のオブジェクト相互間でメッセ
ージの送受信が行われる。図10は、分散プラットフォ
ーム(分散システム)の図である。複数のノード25の
オブジェクト108間でメッセージ通信を行っている場
合に、プラットフォーム3000より上の部分では分散
システムを全く意識しないですむ。一方、プラットフォ
ーム3000より下の部分、つまりサーバ類、カーネル
では、分散システムを意識している。カーネル相互間で
は、通信網ハードウェアを介して実際の通信が行われ
る。
【0007】ところで、このような情報処理システムの
高信頼動作を実現するための方法として、一般に実行実
体を複製する手法がある。この複製の実行形態として
は、全ての複製が同時に目的とする機能を実行するAc
tive Replicationと、1つの複製のみ
が目的とする機能を実行し、残りは待機するPassi
ve Replicationとがある。Active
Replicationは超高速な故障の回復が可能
であるが、複製を外部に作用するものを集める必要があ
り、実行コストが高くなる。これに対して、Passi
ve Replicationは超高速な故障の回復は
Active Replicationに比べると困難
であるが、分散システムで実行するのに適しており、か
つ実行コストも低く抑えることができる。分散オブジェ
クト指向実行環境においてPassive Repli
cationで高信頼化を獲得するのに、複製(以下、
複製オブジェクト)の間では内部状態の一貫性を保証す
る必要がある。これを保証しないと、実行実体(以下、
実行系)を切り替えたときに正しい実行を保証すること
ができない。これを保証するため、内部状態を適当なチ
ェックポイントのタイミングで破壊され難い場所に保存
する。この場合の保存場所は、動作しているCPUの近
辺の例えばハードディスクのような場所でも、また遠隔
地にある計算機のメモリ上でも差し支えはない。故障が
起きた場合には、その保存されている時刻の集合から、
関連するオブジェクトの間で最適な地点(ロールバック
ポイント)をそれぞれ決定して、そこから実行を再開す
ることになる。このチェックポイントからロールバック
ポイントを決定することは、オブジェクトが互いにメッ
セージ送信等を介して外部に作用することがあるため一
般に困難である。このことは、例えば情報処理学会誌
『情報処理』(1993年11月号)の真鍋義文、青柳滋己共
著『分散チェックポイント・ロールバックアルゴリズ
ム』に解説がある。
【0008】図7は、メッセージの複製がない場合に故
障が起きた際の状況を示す図であり、図3は、高信頼オ
ブジェクトのメッセージの受信を示す図であり、図5
は、高信頼オブジェクトのメソッドの終了を示す図であ
る。本発明においては、前記の問題を全ての高信頼オブ
ジェクトの実行中の各メソッドの終了時点をチェックポ
イントとし、メッセージ等による外部への影響は再実行
を防ぐ機構とすることにより、解決している。また、オ
ブジェクトの再起動を行う場合には、オブジェクトの実
行の契機となるメッセージが必要となる。図7に示すよ
うな方式、つまり実行系の複製オブジェクト105にの
みメッセージ420を送信する方式であれば、ノード2
0全体が故障した場合には、メッセージ420自体が喪
失され、たとえ実行系が複製オブジェクト105に切り
替わっても再起動は不可能である。すなわち、ノード2
0に実行系複製オブジェクト105があり、ノード21
には待機系複製オブジェクト106が存在するにもかか
わらず、オブジェクト105のみメッセージ420を送
信したため、故障でメッセージ420が喪失され、ノー
ド21に切り替わってもメッセージ420がないため再
実行できない事態になる。そのために、図3に示すよう
なメッセージの複製が必要となる。さらに、故障検出を
分散システムで行うには、時計を用いて一定時間以上が
経過するまでに返答がない時に、故障であると疑うタイ
ムアウト方式を用いるのが一般的である。しかし、この
時に、どの時刻から時間を測定するのか、あるいは何が
起こるまで時間を計測するのか、をそれぞれ決定する必
要がある。
【0009】本発明においては、この問題を前述したメ
ッセージの複製と内部状態の一貫性保証のためのメッセ
ージを組み合わせて解決している。つまり、図3に示す
ように、複製されたメッセージが各ノード(11,1
2,13)に分散され、これにより待機系のノード12
と13で時間の計測を開始し、メソッド終了時に内部状
態の一貫性保証のためのメッセージ(図5の412,4
13)が来るまでの時間を計る。これにより、故障検出
のためだけに必要となる余分なメッセージはノード間に
飛ぶことはない。さらに、擬似的な管理系(図3の擬似
管理オブジェクト1100のあるノード10)のローカ
ルな時刻と擬似管理オブジェクト1100のオブジェク
ト識別子201を用いて、高信頼オブジェクトの中の実
行系の複製オブジェクトの外へメッセージ等を介して行
う作用の識別を行う。これにより、複製オブジェクトの
再起動による同じ高信頼オブジェクトからの同じメッセ
ージが外部に及ぼす影響をなくすことができる。これに
より、故障時に実行系の複製オブジェクトが複数存在す
る瞬間があった場合にも対処することができる。そし
て、内部状態一貫性保証のメッセージ中に実行系のノー
ド(図5のノード11)の負荷状況を待機系のノード
(同じくノード12,13)に通知することにより、待
機系のノードが自律的に判断し、自ノード上の複製オブ
ジェクトが実行系になるべきと判断した場合に、擬似管
理系のノード(同ノード10)に通知し、それにより負
荷分散も同時に実現する。なお、図3、図5について
は、さらに詳述する。
【0010】(実施例) 〔高信頼オブジェクトの構成〕図1は、本発明の一実施
例を示すオブジェクトの高信頼化システムのソフト構成
図である。図1において、実行系の複製オブジェクト1
200と待機系の複製オブジェクト1300,1301
から高信頼オブジェクト1000は構成されている。例
えば、外部のオブジェクト100発のオブジェクト識別
子201、オブジェクトの名前301宛のメッセージ4
00がノード10に到達すると、ノード10の高信頼化
・負荷分散機構(カーネル内のメッセージハンドリング
機能)がそのメッセージを検出して、複製オブジェクト
1200へ転送する。メッセージ400の転送を受けた
複製オブジェクト1200は、メソッドを実行する。こ
の時、外部から観測すると、送信したメッセージは何の
エラーも起こすことなく処理されているので、オブジェ
クト識別子201、オブジェクトの名前301のオブジ
ェクトが存在しているように観測される。しかも、複製
オブジェクトの存在は観測されない。逆に、実行系の複
製オブジェクト1200からのメッセージは、高信頼化
・負荷分散機構の処理によりノード10上のオブジェク
ト識別子201、オブジェクトの名前301のオブジェ
クトから送信されているメッセージ401であるかのよ
うに観測される。この時も、外部からはオブジェクト識
別子201、オブジェクトの名前301のオブジェクト
が存在しているように観測される。つまり、ノード10
と12の高信頼化・負荷分散機構のメッセージの処理機
構により、実際には存在しない擬似管理オブジェクト1
100が存在し、その擬似管理オブジェクト1100が
複製オブジェクト1200,1300,1301の動作
を管理しているものと把握することができる。外部から
のアクセスは、擬似管理オブジェクト1100に対して
行っているように観測される。
【0011】〔高信頼化・負荷分散機構の構成〕図2
は、高信頼化・負荷分散機構のソフト構成図である。な
お、各サーバオブジェクトの詳細は後述する。図2にお
いて、高信頼化・負荷分散機構2010はノード16の
プラットフォーム3001内に格納されており、これが
ノード17,18,19に複製され、転送されて格納さ
れる(それぞれ2011,2012,2013)。カー
ネル2100は、通常の分散OSのカーネルに特定のオ
ブジェクトに関するメッセージの検出機能が付加された
ものである。通常のオブジェクト間通信422は、ノー
ド17とノード18のオブジェクト間で行われている
が、実際にはプラットフォーム3001内に下りてから
目的オブジェクトに振り分けられる(423,424,
425,426)。ノードを跨る場合、例えばノード1
9を跨る場合には、メッセージキュー(2050,20
60)を経由する。そのために、カーネル2100のス
ケジューラ・メッセージハンドラ等に少量の改造を加え
ることにより、この検出機能が実現される。この検出機
能により、擬似管理オブジェクト宛のメッセージと複製
オブジェクトの外部への作用を検出し、高信頼動作・負
荷分散動作に関係する処理を行う。カーネルにより、擬
似管理オブジェクトから実行移の複製オブジェクトへメ
ッセージが送信される時に、そのメッセージの複製が作
られる。この複製されたメッセージは、待機系の複製オ
ブジェクトの存在するノードの複製メッセージ管理サー
バオブジェクト2200によって受信・保存される。ま
た、複製メッセージ管理サーバオブジェクト2200
は、このメッセージ受信から時間を計り、故障検出にも
関係する。
【0012】同じ高信頼オブジェクトの中の異なる複製
オブジェクトからのメッセージ送信等が起きる時に、そ
のメッセージ送信によるメソッド起動を防ぐ機構をオブ
ジェクト実行結果管理サーバオブジェクト2300によ
り実現する。複製オブジェクト識別子管理サーバオブジ
ェクト2400は、カーネルが擬似管理オブジェクトの
オブジェクト識別子等から実行系の複製オブジェクトの
識別子等を得る時に、カーネルが使用するメモリ領域を
小さくするために用いられる。具体的には、カーネル2
100の中の変換テーブルに目的とするエントリがない
場合には、複製オブジェクト識別子管理サーバオブジェ
クト2400に問い合わせる。また、外部から複製オブ
ジェクト識別子管理サーバオブジェクト2400にメッ
セージを送ることにより、カーネルの中の変換テーブル
の内容を変更することもできる。複製オブジェクト実行
管理サーバオブジェクト2500は、そのノード上に存
在している複製オブジェクトの実行状態を管理する。外
部からの問い合わせにより、実行状態を返したり、オブ
ジェクトを末消・再起動する機能も持っている。上記サ
ーバオブジェクト(2200〜2500)は、各ノード
に1つ決まっているので、オブジェクト識別子はノード
番号から容易に分かる識別子を割り当てる。こうするこ
とにより、後述の高信頼動作・負荷分散動作を行う時
に、オブジェクトの名前からオブジェクトの識別子を得
る等の操作が不要となる。
【0013】〔高信頼オブジェクトのメッセージ受信〕
図3は、高信頼オブジェクトがメッセージを受信して、
メソッドを起動する状態を示す図である。高信頼オブジ
ェクトは、外部から観測すると、図1に示すように擬似
管理オブジェクトが存在する場所に存在しているように
見える。外部からのメッセージ405は、擬似管理オブ
ジェクト1100が存在するノード10に到着すると、
ノード10の高信頼化・負荷分散機構2000(カーネ
ル内のメッセージハンドリング機構)が擬似管理オブジ
ェクト1100宛であることを検出する。カーネル内に
備えられたテーブルにより、擬似管理オブジェクト11
00から実行系の複製オブジェクト1200と待機系の
複製オブジェクト1300,1301とそれぞれの優先
度を得る。そのテーブル上に求めるデータが存在してい
ない場合には、ノード10の中の高信頼化・負荷分散機
構2000の複製オブジェクト識別子管理サーバオブジ
ェクトに問い合わせて、必要なデータを得る。ここで、
複製オブジェクトの優先度は、任意の順序で付与すれば
本発明の動作を行うことができるが、擬似管理オブジェ
クト1100の存在するノード10とメッセージ通信が
早く行えるノード上の複製オブジェクトに高い優先度を
与えれば、実行効率を高めることができる。ノード間の
メッセージ通信の早さに差が生じるのは、通信路の混み
具合も各ノード間で異なり、ノード自体の負荷も異なる
からである。高信頼化・負荷分散機構2000(カーネ
ル内メッセージハンドリング機能)は、受け取ったメッ
セージ405を実行系の複製オブジェクト1200に送
信する(406)。同時に、待機系の複製オブジェクト
の存在しているノード12,13の高信頼化・負荷分散
機構2002,2003(複製メッセージ管理サーバオ
ブジェクト)に対しても、メッセージを複製して送信す
る(407,408)。後の複製されたメッセージ(4
07,408)には、ノード10のローカルタイマで測
定したメッセージ405の受信の時刻を入れる。この時
刻が高信頼オブジェクト1000のメソッド起動時刻に
なる。なお、この時刻は、実世界の時刻を示す物理的時
刻でも、コンピュータシステム中での論理的時刻でも構
わない。分散システムでの論理的時刻としては、メッセ
ージ中に含み、メッセージ受信時には、自分の論理時刻
とメッセージ中の論理時刻のうち大きい方に1を加えた
ものを新しい論理時刻とするVector Clock
が例として挙げられる。待機系の複製オブジェクトが存
在するノード12,13では、到着したメッセージ40
7,408は高信頼化・負荷分散機構2002,200
3(複製メッセージ管理サーバオブジェクト)が保存す
るので、複製オブジェクト1300,1301は動作し
ない。高信頼化・負荷分散機構2002,2003(複
製メッセージ管理サーバオブジェクト)は、メッセージ
407,408を受信すると、ノードローカルなタイマ
で時間の測定を開始する。これは、後述する故障検出に
用いる。
【0014】〔高信頼オブジェクトのメソッドの実行〕 図4は、高信頼オブジェクトの実行の状態を示す図であ
る。実行系の複製オブジェクト1200は、外部への作
用以外には、複製オブジェクトが通常のオブジェクトと
して動作する。オブジェクト1200がオブジェクト外
部へ作用する場合には、メッセージの送信を用いる。故
障発生時に実行系を切り替え、再実行するのは、メソッ
ドの先頭からとなる。従って、あるメソッド500で、
外部のオブジェクト101へのメッセージ送信410が
あるならば、故障時に、複製オブジェクトの再実行を行
うと、オブジェクト101へメッセージ410と同じ内
容のメッセージの送信を行うことになる。これでは、オ
ブジェクト101の状態が余分なメッセージを受け取る
ことにより、目標とする正しい状態とは離脱することに
なる。例えば、オブジェクト101が内部状態を受けた
メッセージの数で変化する場合や、外部に新しいオブジ
ェクトを生成する場合には、不要なメッセージが故障に
より再送信されることによる副作用は抑えなければなら
ない。すなわち、故障時に高信頼オブジェクト1000
がメソッド500を2回以上実行することがあっても、
外部のオブジェクト101への作用を起こさないような
機構が必要である。高信頼オブジェクト1000の実行
系複製オブジェクト1200からのメッセージ410に
は、高信頼オブジェクトのオブジェクト識別子、擬似管
理オブジェクトでのメッセージ受信時刻、メソッド識別
子、そのメソッド内での外部への作用についての逐次カ
ウンタの値をタグ1500としてつける。
【0015】通常の高信頼動作・負荷分散動作に関係の
ないメッセージにもタグはついているが、メッセージ中
にフィールドとして存在しているだけで、値としては有
効ではない。あるノード15が、自ノードのオブジェク
ト101宛のメッセージ410を受信した場合、その高
信頼に関するタグ1500が有効であるか否かを調べ
る。有効であれば、そのタグ1500と同じ内容のもの
がないか否かを調べる。もしなければ、それを保存し
て、メソッド501の実行を開始する。そして、メソッ
ド501の実行が終了した場合には、その最終結果とタ
グ1500を合わせて保存する。もし、タグ1500が
有効であり、かつタグ1500と同じ内容のものが存在
していた場合には、同じ高信頼オブジェクト1000の
中で、故障により実行系複製オブジェクトが切り替わっ
たものと判断して、メソッド501の実行は行わない。
さらに、保存しておいた最終結果を高信頼オブジェクト
へ返すような返答つきメッセージ送信であった場合に
は、保存してあった最終結果を返答とする。これらの保
存してある情報の無効化を行うべき時には、高信頼オブ
ジェクトのメソッドの実行の終了時であり、これについ
ては後述する。
【0016】〔高信頼オブジェクトのメソッドの実行の
終了〕図5は、高信頼オブジェクトのメソッドの実行の
終了動作を示す図である。実行系複製オブジェクト12
00のメソッド500の実行の終了をそのノードの高信
頼化・負荷分散機構が検出し、高信頼化・負荷分散機構
2001にその終了を通知する。この時点で、外部のア
プリケーションオブジェクトからは、高信頼オブジェク
ト1000のメソッド500の実行は終了しているよう
に見受けられる。その終了通知を受けた高信頼化・負荷
分散機構2001は、メソッド500で行われた外部へ
のメッセージ送信、もしくは実行環境依頼処理の履歴を
調べ、それが存在していたならば、その送信先ノード1
5の高信頼化・負荷分散機構(オブジェクト実行結果管
理サーバオブジェクト)2005に前述のタグ1500
と保持情報の無効化のメッセージ411を送信する。ま
た、待機系の複製オブジェクトの存在するノード12,
13の高信頼化・負荷分散機構2002,2003(複
製メッセージ管理サーバオブジェクト)に、メソッド5
00を起動する契機となったメッセージ(図3の40
7,408)の破棄要求と、ノード10の負荷に関する
情報と、実行系複製オブジェクト1200の内部状態に
関する情報を含むメッセージ412,413を送信す
る。
【0017】ノード15がメッセージ411を受信する
と、それについている高信頼化に関するタグ1500が
有効か否かを調べる。もし、有効であり、かつ内容が保
持情報の無効化であれば、そのタグに対応するメソッド
の実行結果を破棄する。ノード12,13にある高信頼
化・負荷分散機構2002,2003(複製メッセージ
管理サーバオブジェクト)がメッセージ412,413
を受信すると、擬似管理オブジェクト1100の存在す
るノード10の高信頼化・負荷分散機構2000(カー
ネルのメッセージ等のリング機能)から送信されたメッ
セージ(図3の407,408)の中から、メソッド5
00に対応するメッセージを破棄する。さらに、受け取
った内部状態に関する情報で、待機系の複製オブジェク
ト1300,1301の内部状態を更新する。さらに、
実行系複製オブジェクトのノード11に関する負荷の情
報と自分のノードの負荷の情報を比較して、自分のノー
ドの方が負荷が軽ければ、その負荷の情報を擬似管理オ
ブジェクトの存在するノード10の高信頼化・負荷分散
機構2000(複製オブジェクト識別子管理サーバオブ
ジェクト)に通知する。
【0018】〔複製オブジェクトの故障検出〕図6は、
タイムアウトを用いた故障検出を示す図である。外部か
ら高信頼オブジェクト1000へ送信されたメッセージ
405は、実際には擬似管理オブジェクトの高信頼化・
負荷分散機構2000(カーネルのメッセージハンドリ
ング機能)が高信頼オブジェクト1000宛であると検
出し、実行系の複製オブジェクト1200と、待機系の
複製オブジェクト1300,1301の存在するノード
12,13の高信頼化・負荷分散機構2002,200
3(複製メッセージ管理サーバオブジェクト)に送信す
る。ノード12,13の高信頼化・負荷分散機構200
2,2003(複製メッセージ管理サーバオブジェク
ト)は、そのメッセージ407,408を蓄える。同時
に、カーネル内のノードローカルなタイマで時間測定の
開始を行う。実行系複製オブジェクト1200のメソッ
ド500の実行が正しく終了した場合には、ノード1
2,13の高信頼化・負荷分散機構2002,2003
(複製メッセージ管理サーバオブジェクト)にその旨の
メッセージ412,413が返って来るはずである。こ
れが予め決められた時間内に終了しなければ、故障と判
定する。
【0019】〔故障検出による複製オブジェクトの切替
え〕前述のように故障を検出した高信頼化・負荷分散機
構2002,2003(複製メッセージ管理サーバオブ
ジェクト)は、自分のノード上で動作している複製オブ
ジェクト1300,1301の優先順位を調べて、自分
の方が高ければ、自分のノード上で動作している複製オ
ブジェクトが実行系になると判断する。ここでは、複製
オブジェクト1300の方が優先度が高いとする。新た
に実行系になった複製オブジェクト1300は、自分の
ノードの高信頼化・負荷分散機構2002(複製メッセ
ージ管理サーバオブジェクト)から保存されているメッ
セージ407を受け取り、メソッドを実行する。高信頼
化・負荷分散機構2002(複製オブジェクト実行管理
サーバオブジェクト)は、複製オブジェクト1300の
優先度を1つ上げる。次に、高信頼化・負荷分散機構2
002(複製メッセージ管理サーバオブジェクト)は、
擬似管理オブジェクト1100のあるノード10の高信
頼化・負荷分散機構2000(複製オブジェクト識別子
管理サーバオブジェクト)と他の待機系の複製オブジェ
クトのあるノード13の高信頼化・負荷分散機構200
3(複製オブジェクト識別子管理サーバオブジェクト)
に対して、実行系の切り替わりを通知する。高信頼化・
負荷分散機構2003(複製オブジェクト実行管理サー
バオブジェクト)は、自分のノード上の複製オブジェク
ト1301の優先度を1つ上げる。
【0020】さらに、以前実行系の複製オブジェクトが
存在していたノードの高信頼化・負荷分散機構2001
(複製オブジェクト実行管理サーバオブジェクト)に対
して、高信頼化・負荷分散機構2002(複製オブジェ
クト実行管理サーバオブジェクト)が複製オブジェクト
再起動の要求を通知する。このメッセージが通知される
と、ノード11の複製オブジェクト1200が再起動さ
れる。この時に、複製オブジェクト1200がまだ存在
していたならば、抹消の後、再起動される。ノード11
で複製オブジェクトが再起動された場合には、内部状態
は一貫性を保っていない。しかし、あるメソッドの実行
が終了した時には、実行系の複製オブジェクトは待機系
の複製オブジェクトに対して内部状態の一貫性を保証す
るメッセージを送信する。従って、故障時に待機系の複
製オブジェクト再起動が発生しても、内部状態の一貫性
を保証する処理は新たに必要としない。たとえ、ノード
11の負荷が異常に高いこと等により、複製オブジェク
ト1200の反応が遅く、故障していないにもかかわら
ず故障していると判断され、上記の回復処理が進んで元
の実行系の複製オブジェクト1200と新しい実行系の
複製オブジェクト1300が存在しても、オブジェクト
実行結果管理サーバオブジェクトの作用により、外部へ
の影響は出ない。優先順位の低い待機系複製オブジェク
トのあるノード13の高信頼化・負荷分散機構2003
(複製メッセージ管理サーバオブジェクト)が故障を検
出してから、一定時間以内に実行系の切り替わりが生じ
なければ、自分より優先度の高い待機系複製オブジェク
トが全て故障していると判断して、自分が実行系になる
ための上記と同様の処理を行う。これらのテーブルの更
新が行われる時に、カーネル内のテーブルに載せること
ができなくなったデータの内容は、複製オブジェクト識
別子管理サーバオブジェクトへ通知される。
【0021】〔複製オブジェクトの負荷による切替え〕
先に、図5の説明により高信頼オブジェクト1000に
おけるメソッド500の実行の終了の状態を示した。そ
こで、実行系の複製オブジェクトがメソッドを終了した
時に、高信頼化・負荷分散機構2001,2002,2
003の動作により各ノード11,12,13の負荷の
情報が高信頼化・負荷分散機構2000(複製オブジェ
クト識別子管理サーバオブジェクト)に集積する機構に
ついて説明した。これにより、擬似管理オブジェクトの
存在するノード10の高信頼化・負荷分散機構2000
(複製オブジェクト識別子管理サーバオブジェクト)
は、どの複製オブジェクトが、負荷が軽いノードで実行
されているのかを判別し、次回以降にどの複製オブジェ
クトを実行系とすべきかを決定する。これにより、高信
頼化と負荷分散を同時に実現することができる。
【0022】〔複製オブジェクトの外部情報による切替
え〕前述のように、前回のメソッドの実行時のノードの
負荷情報だけでなく、高信頼化・負荷分散機構2000
(複製オブジェクト識別子管理サーバオブジェクト)に
ノード選択の情報を外部から直接与えることにより、実
行系の選択方法を変更することができる。具体的には、
高信頼化・負荷分散機構2000の中のカーネル内の複
製オブジェクトに関するテーブルと複製オブジェクト識
別子管理サーバオブジェクトの持つテーブルを、複製オ
ブジェクト識別子管理サーバオブジェクトにメッセージ
を送信することにより、変更する。これにより、メソッ
ドの実行ということを用いなくても、より柔軟な実行系
の選択を行うことができる。
【0023】〔オブジェクトの移動が可能な場合の負荷
分散〕 図8は、オブジェクト指向分散システムにおいて、オブ
ジェクトを移動する場合の負荷分散システムの構成図で
ある。図8においては、擬似管理オブジェクト1100
と実行系複製オブジェクト1200と待機系複製オブジ
ェクト1300,1301で1つの高信頼オブジェクト
を構成しており、同時に、擬似管理オブジェクト110
1と実行系複製オブジェクト1201と待機系複製オブ
ジェクト1302,1303で1つの高信頼オブジェク
トを構成している。ノード10の高信頼化・負荷分散機
構2000(複製オブジェクト識別子管理サーバオブジ
ェクト)には、ノード11,12,13の負荷の情報
と、ノード22,23,24の負荷の情報が集積されて
いる。本発明における外部情報を与える負荷分散方式に
おいては、その外部情報をこの集積された負荷に関する
情報とする。例えば、ノード22,23,24の負荷が
高くなり、故障がなくても実行系複製オブジェクト12
01の処理が遅くなり、ノード23,24等により故障
と診断された場合に、ノード11,12,13の負荷が
低い時には、複製オブジェクト1201,1302,1
303をノード11,12,13に移動して、全体のス
ループットを上げることも可能である。
【0024】〔集積された負荷情報の利用方法〕本発明
により、擬似管理オブジェクトの存在するノードには、
特にノードの負荷を集めるためだけのメッセージ通信を
行うことなく、周辺ノードの負荷に関する情報が集積さ
れていくので、高信頼オブジェクトを生成する時に、複
製オブジェクトをどこのノードに生成すべきか、また複
製オブジェクトの優先度はいかにするか、という判断に
適用することが可能である。
【0025】〔Call Managerへの適用〕 この他に、分散システムにおける呼処理プログラム中に
存在するCall Managerと呼ばれるオブジェ
クトも適用対象である。Call Managerは、
ある加入者の発呼を検出すると、実際に呼処理を行うC
allerや受け側の呼処理を行うCalleeを生成
する。実行実体を複数持ち、適切に負荷の軽いところに
処理を依頼できるので、全体のスループットは上がる。
負荷分散の例では、実行系の選択にノードの負荷による
方式と、外部情報による方式を共用することにより、以
下のことが可能となる。すなわち、広域分散システム
で、例えば、人間世界の時差により特定の地理的な場所
におけるノードの負荷が高まるような場合、それは経験
的に予測できるので、オペレーションシステムが高信頼
オブジェクトに向ってその情報を与えればよい。このよ
うにすれば、ある地域で時間的に暇なノードのCPU資
源を借りることができ、全体のスループットを上げるこ
とが可能である。
【0026】〔名前サーバの高信頼化・負荷分散への適
用〕他の適用対象としては、分散システムにおける名前
サーバ(オブジェクトの名前とオブジェクトの識別子を
管理するサーバ)の高信頼化・負荷分散がある。名前サ
ーバは、分散システム上でオブジェクトが通信するのに
は必須なサーバである。本発明により、名前サーバを構
成すれば、名前に関する問い合わせに来るクライアント
は実際にはどこの複製オブジェクトに依頼しているのか
は完全に隠蔽され、また、高信頼化・負荷分散性も実現
されているので、運用面でも問題がない。
【0027】〔分散システムの高信頼化と負荷分散方法
の処理プログラムを記録する記録媒体〕以上に述べたオ
ブジェクト指向に基づく高信頼化と負荷分散方法は、高
信頼化及び負荷分散を行うための処理プログラムとして
実現可能であり、その処理プログラムは記録媒体に記録
して提供することができる。
【0028】
【発明の効果】以上説明したように、本発明によれば、
故障検出と内部状態一致と負荷分散を同時に行うメッセ
ージ数の少ない高信頼化・負荷分散機構の実現が可能と
なる。そして、本来ならば、通常のオブジェクトの実行
と並行して故障検出のメッセージが飛び交うが、別のノ
ードでのメッセージ保存と内部状態一致のためのメッセ
ージにより、故障検出を行う。また、内部状態一致のた
めのメッセージ数に負荷情報を加え、負荷分散を行うこ
とも可能である。これらにより、メッセージ数を大きく
削減することができる。また、本発明では、高信頼化・
負荷分散機構を複数サーバで実現するので、同時に複数
の高信頼オブジェクトを実行する際にも妨げとならな
い。さらに、本発明によれば、故障検出と回復の機構に
ついても、高信頼オブジェクトの外部への作用を抑える
機構により、不要な待ち合わせを削除することができ
る。つまり、通常のタイムアウトによる故障検出であれ
ば、一定時間内に返答がなければ故障と疑い、本当に故
障であるか否かの確認の処理が必要となる。本発明で
は、一定時間内に返答がなければ、直ちに別の実行系を
起動することができ、前の実行系の削除を依頼する。削
除が行われる前に、前の実行系が同時に何か外部に作用
を行っていても、それは影響がない。
【図面の簡単な説明】
【図1】本発明の一実施例を示すオブジェクト複製を予
備系とする高信頼オブジェクトの図である。
【図2】本発明における高信頼化・負荷分散機構をカー
ネルとサーバオブジェクトで実現した構成図である。
【図3】本発明における高信頼オブジェクトのメッセー
ジの受信を示す図である。
【図4】本発明における高信頼オブジェクトのメソッド
の実行を示す図である。
【図5】本発明における高信頼オブジェクトのメソッド
の終了を示す図である。
【図6】本発明における複製オブジェクトの故障検出を
示す図である。
【図7】従来における故障の発生状態と回復不能状況を
示す図である。
【図8】本発明におけるオブジェクト移動による負荷分
散の説明図である。
【図9】本発明が適用される複数ノードのオブジェクト
による交換機制御の図である。
【図10】本発明が適用される分散プラットフォームの
図である。
【符号の説明】
10,11,12,13,14,15,16,17,18,1
9,20,21,22,23,24…ノード、100,10
1,102,103,105,106…オブジェクト(一
般)、201…オブジェクト識別子、301…オブジェ
クトの名前、400,401,422,423,424,4
25,426,405,406,407,408,410,4
11,412,413,414,415,420…メッセー
ジ、500,501…メソッド、1000…高信頼オブ
ジェクト、1100,1101…擬似管理オブジェク
ト、1200,1201…実行系複製オブジェクト、 1300,1301,1302,1303…待機系複製
オブジェクト、1500…タグ、2000,2001,2
002,2003,2004,2005,2006,201
0,2011,2012,2013…高信頼化・負荷分散
機構、2050,2060…メッセージキュー、210
0…カーネル内メッセージハンドリング機構、2200
…複製メッセージ管理サーバオブジェクト、2300…
オブジェクト実行結果管理サーバオブジェクト、240
0…複製オブジェクト識別子管理サーバオブジェクト、
3001…プラットフォーム。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−235159(JP,A) 特開 平7−219913(JP,A) 特開 平8−83257(JP,A) 特開 平7−73061(JP,A) 特開 平6−75929(JP,A) 関俊文外,オブジェクト指向分散シス テムにおける放送待機冗長処理方式,電 気学会論文誌D,社団法人電気学会, 1994年 3月20日,第114−D巻,第3 号,p.240−248 武本充治,通信網ワイド分散オブジェ クト指向システムにおける高信頼化,電 子情報通信学会技術研究報告,社団法人 電子情報通信学会,1996年 3月15日, 第95巻,第577号,p.7−14 (58)調査した分野(Int.Cl.7,DB名) G06F 15/16 - 15/177 G06F 9/46

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のノードを通信網で接続してなる分
    散コンピューティング環境でオブジェクトを動作させる
    と共に、オブジェクトを複数のノードに複製し1つの実
    行系と残りの待機系の各複製オブジェクトからなる高信
    頼オブジェクトとして動作させる分散オブジェクト処理
    システムであって、 同じ高信頼オブジェクトを構成する各ノードのプラット
    フォーム毎に高信頼化・負荷分散機構を設け、 高信頼化・負荷分散機構は、 上記高信頼オブジェクトの名前および識別子宛のメッセ
    ージを実行系の複製オブジェクト宛に転送すると共に、
    当該メッセージを複製して待機系の複製オブジェクト宛
    に転送する手段と、 実行系の複製オブジェクトからのメッセージを上記高信
    頼オブジェクトからのメッセージとして外部に送信する
    手段と、 自ノード内の実行系の複製オブジェクト宛のメッセージ
    を受信すると当該メッセージを転送して当該複製オブジ
    ェクトのメソッドを起動させる手段と、 自ノード内の待機系の複製オブジェクト宛のメッセージ
    を受信すると当該メッセージを保存する手段と、 自ノード内の実行系の複製オブジェクトのメソッドの実
    行が終了すると該実行系の複製オブジェクトの内部状態
    を示す情報を上記メソッドの実行終了通知と共に、対応
    する待機系の複製オブジェクトに送信する手段と、 実行系の複製オブジェクトからの上記内部状態を示す情
    および上記メソッドの実行終了通知が自ノード内の待
    機系の複製オブジェクト宛に送信されてくると、上記受信して保存したメッセージの中から上記実行終了
    通知されたメソッドに対応する メッセージを破棄し、上
    記内部状態を示す情報で、自ノード内の待機系の複製オ
    ブジェクトの内部状態を更新する手段と、上記メッセージの保存を契機として、ノードローカルな
    タイマで時間の測定を開始し、予め定められた時間内に
    上記実行系の複製オブジェクトからの上記内部状態を示
    す情報が到着しない場合に、当該実行系の複製オブジェ
    クトの故障判定する手段とを有し、 上記実行系の複製オブジェクトの故障を判定すると、待
    機系の複製オブジェクトの1つを実行系の複製オブジェ
    クトとして選択して、該複製オブジェクトのメソッドを
    起動することを特徴とする分散オブジェクト処理システ
    ム。
  2. 【請求項2】 請求項1に記載の分散オブジェクト処理
    システムであって、実行系の複製オブジェクトとして選
    択された複製オブジェクトを有するノードの高信頼化・
    負荷分散機構から、各ノードの高信頼化・負荷分散機構
    に、実行系の切り替えを通知することを特徴とする分散
    オブジェクト処理システム。
  3. 【請求項3】 請求項1もしくは請求項2のいずれかに
    記載の分散オブジェクト処理システムであって、 上記故障の回復を行うために、上記高信頼化・負荷分散
    機構は、 各待機系の複製オブジェクトに対応付けられた優先度を
    比較し、最も優先度の高い待機系の複製オブジェクトを
    上記実行系の複製オブジェクトとして選択することを特
    徴とする分散オブジェクト処理システム。
  4. 【請求項4】 請求項1から請求項3のいずれかに記載
    の分散オブジェクト処理システムであって、 上記高信頼化・負荷分散機構は、 上記内部状態を示す情報を含む各複製オブジェクト間で
    送受信されるメッセージを用いて、自ノードの負荷情報
    を通知する手段を有することを特徴とする分散オブジェ
    クト処理システム。
  5. 【請求項5】 請求項1から請求項4のいずれかに記載
    の分散オブジェクト処理システムであって、 上記高信頼化・負荷分散機構は、転送されてきたメッセ
    ージを上記実行系の複製オブジェクトでメソッド実行し
    て自高信頼オブジェクト外のオブジェクトへ送信するメ
    ッセージに対して、上記転送されてきたメッセージを受
    信した時刻と自高信頼オブジェクトの識別子を少なくと
    も含むタグ情報を付与する手段を有し、 上位自高信頼オブジェクト外のオブジェクトにおいて、
    上記タグ情報に基づき、 上記故障回復で実行系に選択された複製オブジェクトの
    メソッド実行で送信されてきたメッセージと、当該故障
    前の実行系の複製オブジェクトのメソッド実行で送信さ
    れてきたメッセージとの重複を検出することを特徴とす
    る分散オブジェクト処理システム。
JP00657697A 1997-01-17 1997-01-17 分散オブジェクト処理システム Expired - Lifetime JP3467750B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00657697A JP3467750B2 (ja) 1997-01-17 1997-01-17 分散オブジェクト処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00657697A JP3467750B2 (ja) 1997-01-17 1997-01-17 分散オブジェクト処理システム

Publications (2)

Publication Number Publication Date
JPH10207849A JPH10207849A (ja) 1998-08-07
JP3467750B2 true JP3467750B2 (ja) 2003-11-17

Family

ID=11642163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00657697A Expired - Lifetime JP3467750B2 (ja) 1997-01-17 1997-01-17 分散オブジェクト処理システム

Country Status (1)

Country Link
JP (1) JP3467750B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3857259B2 (ja) 2002-08-14 2006-12-13 日本電信電話株式会社 オブジェクト状態転送方法,オブジェクト状態転送装置およびオブジェクト状態転送プログラム並びにそのプログラムの記録媒体
JP4123440B2 (ja) * 2004-03-15 2008-07-23 日本電気株式会社 オブジェクト指向のネットワーク分散型コンピューティングシステム、その負荷分散装置及びサーバ
TWI370979B (en) * 2004-05-14 2012-08-21 Ibm Grid computing system, information processing unit, job execution request generation unit, control method, program, and recording medium
JP4517923B2 (ja) * 2005-03-31 2010-08-04 沖電気工業株式会社 オブジェクト救済システム及び方法
JP4790518B2 (ja) 2006-07-12 2011-10-12 富士通株式会社 半導体記憶装置及び半導体記憶装置を備えた情報処理装置
JP5262171B2 (ja) 2008-02-19 2013-08-14 富士通株式会社 符号化装置、符号化方法および符号化プログラム
JP5079561B2 (ja) * 2008-03-21 2012-11-21 株式会社野村総合研究所 データベースシステム及びデータベースシステムにおけるレプリカデータの更新方法
WO2017006384A1 (ja) 2015-07-03 2017-01-12 富士通株式会社 仮想マシン管理プログラム,仮想マシン管理装置および仮想マシン管理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2785992B2 (ja) * 1990-02-13 1998-08-13 富士通株式会社 サーバプログラムの管理処理方式
JPH0675929A (ja) * 1992-08-26 1994-03-18 Hitachi Ltd 並列プロセッサ
JPH0773061A (ja) * 1993-09-02 1995-03-17 Nec Corp ホットスタンバイシステムにおける待機系配置ホスト決 定方式
JPH07219913A (ja) * 1994-01-28 1995-08-18 Fujitsu Ltd マルチプロセッサシステムの制御方法及び装置
JPH0883257A (ja) * 1994-09-13 1996-03-26 Hitachi Ltd 並列コンピュータシステムのプロセス実行最適化方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
武本充治,通信網ワイド分散オブジェクト指向システムにおける高信頼化,電子情報通信学会技術研究報告,社団法人電子情報通信学会,1996年 3月15日,第95巻,第577号,p.7−14
関俊文外,オブジェクト指向分散システムにおける放送待機冗長処理方式,電気学会論文誌D,社団法人電気学会,1994年 3月20日,第114−D巻,第3号,p.240−248

Also Published As

Publication number Publication date
JPH10207849A (ja) 1998-08-07

Similar Documents

Publication Publication Date Title
Silva et al. Fault-tolerant execution of mobile agents
Powell et al. Publishing: A reliable broadcast communication mechanism
US7188273B2 (en) System and method for failover
CA2344311C (en) Protocol for replicated servers
JP5689106B2 (ja) フォールトトレラント動作をする金融取引所用突き合わせサーバ
US5590277A (en) Progressive retry method and apparatus for software failure recovery in multi-process message-passing applications
US5440726A (en) Progressive retry method and apparatus having reusable software modules for software failure recovery in multi-process message-passing applications
US7219260B1 (en) Fault tolerant system shared system resource with state machine logging
US7568131B2 (en) Non-intrusive method for logging external events related to an application process, and a system implementing said method
US6629260B1 (en) Automatic reconnection of partner software processes in a fault-tolerant computer system
Speirs et al. Using passive replicates in delta-4 to provide dependable distributed computing
JP3467750B2 (ja) 分散オブジェクト処理システム
Sultan et al. Recovering internet service sessions from operating system failures
Takemoto Fault-tolerant object on network-wide distributed object-oriented systems for future telecommunications applications
Pears et al. A dynamic shadow approach for mobile agents to survive crash failures
Jin et al. A fault-tolerant protocol for mobile agent
Xu et al. A dynamic shadow approach to fault-tolerant mobile agents in an autonomic environment
Sens et al. The star fault manager for distributed operating environments. design, implementation and performance
Singhal et al. A New Hierarchical Fault Management System (HFMS) of Mobile-Multi Agents
Li et al. Middleware for Dependable Computing
Hans et al. A Review of Fault Tolerance Techniques in Mobile Agents
Boldyreff A Dynamic Shadow Approach for Mobile Agents to Survive Crash Failures
Pertet et al. Proactive Fault-Recovery in Distributed Systems
Computing Recovering Internet Service Sessions from Operating System Failures
Mukai et al. A networkwide backup system with inter‐memory autonomic copy mechanism

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100905

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100905

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120905

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130905

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term