JP2002032269A - 通信エラー回復方法及びその装置 - Google Patents

通信エラー回復方法及びその装置

Info

Publication number
JP2002032269A
JP2002032269A JP2000214491A JP2000214491A JP2002032269A JP 2002032269 A JP2002032269 A JP 2002032269A JP 2000214491 A JP2000214491 A JP 2000214491A JP 2000214491 A JP2000214491 A JP 2000214491A JP 2002032269 A JP2002032269 A JP 2002032269A
Authority
JP
Japan
Prior art keywords
memory
update information
node
memory update
communication error
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.)
Pending
Application number
JP2000214491A
Other languages
English (en)
Inventor
Makoto Mukai
良 向井
Satoshi Tanaka
聡 田中
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 JP2000214491A priority Critical patent/JP2002032269A/ja
Publication of JP2002032269A publication Critical patent/JP2002032269A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 伝送遅延の影響を受けないようにACKを待
つことなくメモリ更新情報を順次転送しつつ、かつメモ
リ更新情報の時間的な逆転を起こすことのない通信エラ
ー回復方法及びその装置を提供すること。 【解決手段】 現用ノード10ではMM12の書き替え
が行われる(11)と、そのアドレスAをシーケンシャ
ル番号Sとともに再送バッファ132に登録した(1
2,13)上でメモリ更新情報を予備ノード20に転送
する(14)。誤り検出装置232でメモリ更新情報の
エラーを検出すると、予備ノード20はそのシーケンシ
ャル番号Seを添付した再送要求を現用ノード10に送
信する(15)。現用ノード10では再送バッファ13
2を検索してシーケンシャル番号Seに対応するアドレ
ス値AeをMPU11に通知し(16)、そのリード及
びライトを行わせる(17)ことにより、最新の値をメ
モリ更新情報に反映させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワークで接
続されたノードによるアクト/スタンバイ型フォールト
トレラントシステムにおける通信エラー回復方法及びそ
の装置に関するものである。
【0002】
【従来の技術】フォールトトレラントシステムの一つの
形態として、現用ノードと予備ノードを用いて現用ノー
ドがダウンした際、予備ノードが処理を継続するという
システムがある。
【0003】現用ノードのメモリ上にある情報を分散共
有メモリ(分散メモリカップラ)によるコピー機構を用
いて予備ノード上に逐次コピーし、現用ノードがダウン
した場合に予備ノードに切り替えることで現用ノードで
行っていた処理を継続する方式(ネットワークワイド予
備方式)としては、特開2000−163276号公報
に記載された発明がある。
【0004】前記ネットワークワイド予備方式では、現
用ノード上におけるメモリ書き替えに関する情報(メモ
リ更新情報)を予備ノードに逐次転送し、予備ノード側
では一定のタイミング(チェックポイント)毎にメモリ
更新情報をメインメモリ上に反映させることによって、
両系のメモリ内容の二重化を実現している。
【0005】メモリ更新情報の転送において、エラーが
発生した時の回復方法として、一般に再送を用いる。こ
の方法は、受信側(予備ノード)でエラーチェックを行
い、エラーが検出された場合は送信側(現用ノード)に
再送を要求し、送信側はエラーが発生したメモリ更新情
報を再送するというものである。
【0006】
【発明が解決しようとする課題】ところで、前述した方
式ではノード間の距離が大きく、伝送遅延が無視できな
いような場合、予備ノード側で正常にデータが受信でき
たことを現用ノード側に示すためのACKを、次のメモ
リ更新情報送信まで現用ノード側が待っていると、通信
速度が著しく低下する。このため、現用ノード側はAC
Kを待つことなく、自ノード上のメモリ書き替えが発生
した時点で順次、メモリ更新情報を送信している。
【0007】一方、前述した方式においてメモリ更新情
報の送信時にエラーが発生し、予備ノード側からの再送
要求を現用ノード側が受信した場合を考えると、エラー
となったメモリ更新情報を送信した時点から再送要求を
受信するまでの間に現用ノード側では同じアドレスのメ
モリ書き替えが行われ、そのメモリ更新情報が既に予備
ノード側へ送信されている可能性もあり、この際、前記
再送要求に対応するメモリ更新情報を再送したのではメ
モリ更新情報に時間的な順序の逆転が発生し、予備ノー
ド上のメモリに時間的に古いメモリ更新情報が上書きさ
れてしまう恐れがあった。
【0008】本発明の目的は、伝送遅延の影響を受けな
いようにACKを待つことなくメモリ更新情報を順次転
送しつつ、かつメモリ更新情報の時間的な逆転を起こす
ことのない通信エラー回復方法及びその装置を提供する
ことにある。
【0009】
【課題を解決するための手段】ノード間のネットワーク
でのパケット落ちや訂正不能な誤りのために、メモリ更
新情報を正しく送信できなかった場合、エラー回復のた
めの処理が必要となる。ここで、エラー部分のみを再送
する方法と、それを補完するための、メモリ領域全体を
再送する方法とについて示す。
【0010】(1)メモリ更新情報の再送 送信に失敗したメモリ更新情報を選択的に再送するため
に、メモリ更新情報にはシーケンシャル番号を付与し、
再送するメモリ更新情報を特定できるようにしておく。
また、現用ノード側では再送に備えて送信したメモリ更
新情報を一定時間バッファリングしておく。
【0011】図1に、通信エラーが発生した時の処理の
ようすを示す。図中、砂目の施された部分はメモリ更新
情報の転送または吐き出し(可能な)期間、ハッチング
の施された部分はチェックポイント情報の転送期間(タ
イミング)をそれぞれ表している。
【0012】時刻T1に送信されたメモリ更新情報にエ
ラーが発生したとする。予備ノードではエラー検出コー
ドやシーケンシャル番号の前後関係によってパケット落
ちや訂正不能な誤りを検出し、現用ノードに対してメモ
リ更新情報の再送要求を行う。
【0013】時刻T2に再送要求を受けとった現用ノー
ドはメモリ更新情報の再送を行うのであるが、時刻T1
からT2の間に、メモリの該当するアドレスが書き替え
られている可能性があるため、バッファリングしておい
た古いメモリ更新情報をそのまま再送するのではなく、
再送すべきメモリ更新情報のアドレスに対応するメモリ
上の最新の値を送信する。
【0014】一方、予備ノード側では、現用ノード側か
ら送られてくるメモリ更新情報を順次バッファに格納し
ておき、一定のチェックポイント毎に同じく現用ノード
側から送られてくる情報(チェックポイント情報)を受
信した時、バッファに格納されたメモリ更新情報を吐き
出す、即ちバッファに格納されたメモリ更新情報に従っ
て予備ノード上のメモリを更新するが、前述した如くエ
ラーを検出して再送要求を行った際は、再送されたメモ
リ更新情報の受信が完了するまで、バッファの吐き出し
を停止しておく。
【0015】予備ノード側でエラーを検出したメモリ更
新情報のシーケンシャル番号を特定できなかったり、
(バッファから吐き出された等の理由により)現用ノー
ド側で再送すべき更新情報のアドレスが特定できない場
合には、以下に述べるようなメモリ領域全体の再送を行
う。
【0016】(2)メモリ領域全体の再送 メモリ領域全体の再送のためには、上述の選択的再送の
ために用いたシーケンシャル番号や、現用ノード側での
一定時間のバッファリングは不要である。
【0017】予備ノード側でネットワークエラーを検出
すると、現用ノードに対してエラーが起きたことを通知
する。現用ノードではこれを受けて、カーネルレベルで
走行するバックグラウンド処理としてメモリ全領域に対
しリードとライトを繰り返す。これにより、現用ノード
のメモリ上の情報はメモリ更新情報として予備ノードに
送信される。
【0018】この方法は、処理に時間かかかること、回
復処理中にネットワークトラフィックが増加するという
欠点がある。また、アプリケーションの処理性能に影響
を与えないようにするため、十分なタイミングをとりな
がら行う必要がある。しかしながら、実装が容易である
ため、ネットワーク容量が十分大きく、かつエラーレー
トが十分小さい場合(例えば、数日に一度程度)には、
ネットワークエラーからの回復手段として有効である。
【0019】また、この処理をネットワークエラー発生
時だけでなく、深夜等の通常処理の負荷の小さな時間帯
に定期的に実行することにより、ネットワークエラーの
検出漏れによるメモリ状態の不一致からの回復も可能と
することができる。
【0020】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照しながら説明する。
【0021】図2は本発明のシステム構成の一例を示す
もので、図中、10は現用ノード、20は予備ノード、
30はネットワークである。現用ノード10及び予備ノ
ード20はそれぞれ、MPU11及び21、メインメモ
リ(MM)12及び22、分散メモリカップラ(DM
C)13及び23を備えており、それらはバス14及び
24によって接続されている。
【0022】ここで、送信側(現用ノード側)のDMC
13は、バスモニタ(BM)131、再送バッファ13
2及びネットワークインタフェース(NI)133を備
えている。また、受信側(予備ノード側)のDMC23
は、バストランザクションバッファ(BTB)231、
誤り検出装置232及びネットワークインタフェース
(NI)233を備えている。
【0023】図3は通常時の動作のようすを示すもので
ある。以下、(1)〜(6)は図中の(1)〜(6)に
対応する。
【0024】(1)現用ノード10のMPU11がメイ
ンメモリ12のアドレスAに対してデータDを書き込
む。
【0025】(2)バス14を監視しているバスモニタ
131は、(1)の書き込みを検知する。
【0026】(3)再送バッファ132にシーケンシャ
ル番号SとアドレスAの組を登録する。
【0027】(4)(S,A,D)の値の組はネットワ
ークインタフェース133を経由して、メモリ更新情報
として送信される。この時、メモリ更新情報には、CR
Cコード等のエラー検出符号を付加しておく。
【0028】(5)ネットワーク30を介し、予備ノー
ド20のネットワークインタフェース233を経由して
受信されたメモリ更新情報は誤り検出装置232によっ
て誤りがチェックされ、誤りが無いことが確認される
と、BTB231にアドレスと書き込みデータの組
(A,D)が登録される。
【0029】(6)予備ノード20のMPU21は一定
のチェックポイント毎に、BTB231に蓄えられてい
たメモリ更新情報に従い、予備ノード20上のメインメ
モリ22を更新する。
【0030】次に、上記の(4)において通信エラーが
発生した時の回復の手順について説明する。図4は、通
信エラーが発生した時の動作のようすを示すものであ
る。以下、(11)〜(17)は図中の(11)〜(1
7)に対応する。
【0031】(11)現用ノード10のMPU11がメ
インメモリ12のアドレスAに対してデータDを書き込
む。
【0032】(12)バス14を監視しているバスモニ
タ131は、(11)の書き込みを検知する。
【0033】(13)再送バッファ132にシーケンシ
ャル番号SとアドレスAの組を登録する。
【0034】(14)(S,A,D)の値の組はネット
ワークインタフェース133を経由して、メモリ更新情
報として送信される。この時、メモリ更新情報には、C
RCコード等のエラー検出符号を付加しておく。
【0035】ここで、(14)において、通信エラーに
より(S,A,D)に誤りが発生したものとする。
【0036】(15)ネットワーク30を介し、予備ノ
ード20のネットワークインタフェース233を経由し
て受信されたメモリ更新情報は誤り検出装置232によ
って誤りがチェックされるが、ここでは誤り有りと確認
される。誤り検出装置232は、誤り検出符号及びそれ
までに受信したシーケンシャル番号から、誤りの発生し
たメモリ更新情報のシーケンシャル番号を特定し、この
番号Seを添付した再送要求を現用ノード10に送信す
る。
【0037】(16)現用ノード10では、再送バッフ
ァ132に登録されている情報からシーケンシャル番号
Seを検索し、それと組になっているアドレス値Aeを
MPU11に通知する。
【0038】(17)MPU11は、メインメモリ12
のアドレスAe上の値をリードし、該リードした値を同
じアドレスAe上に上書き(ライト)する。
【0039】以降、前述した通常のメモリライト時の動
作(1)〜(6)により、予備ノード20のメインメモ
リ22上には現用ノード10のメインメモリ12と同じ
状態が復元される。
【0040】また、(15)において、シーケンシャル
番号Seが特定できず、この番号を再送要求に添付でき
なかった場合、もしくは(16)において、再送バッフ
ァ132からあふれ出た等の理由により、シーケンシャ
ル番号SeからアドレスAeが特定できなかった場合
は、MPU11に対し、メモリ全領域のリード及びライ
トを行うことを指示することにより、予備ノード20に
現用ノード10上のメモリ情報をコピーすることができ
る。
【0041】図5に現用ノード側でのメモリ更新情報の
転送処理の流れ、図6に予備ノード側でのメモリ更新情
報の受信処理の流れ、図7に現用ノード側でのメモリ更
新情報の再送処理の流れをそれぞれ示す。
【0042】
【発明の効果】以上説明したように、本発明によれば、
ネットワークワイド予備方式において、メモリ更新情報
転送時にACKを待たないことによって伝送遅延の影響
を受けないようにしながら、かつメモリ更新情報の時間
的な逆転を起こさないようにすることができる。
【図面の簡単な説明】
【図1】本発明における通信エラー発生時の処理のよう
すを示すタイムチャート
【図2】本発明によるシステム構成の一例を示すブロッ
ク図
【図3】通常時の動作のようすを示す説明図
【図4】通信エラー発生時の動作のようすを示す説明図
【図5】現用ノード側でのメモリ更新情報の転送処理の
流れ図
【図6】予備ノード側でのメモリ更新情報の受信処理の
流れ図
【図7】現用ノード側でのメモリ更新情報の再送処理の
流れ図
【符号の説明】
10:現用ノード、20:予備ノード、30:ネットワ
ーク、11,21:MPU、12,22:メインメモリ
(MM)、13,23:分散メモリカップラ(DM
C)、14,24:バス、131:バスモニタ(B
M)、132:再送バッファ、133,233:ネット
ワークインタフェース(NI)、231:バストランザ
クションバッファ(BTB)、232:誤り検出装置。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B018 GA06 HA04 KA03 KA22 5B034 AA01 BB17 CC02 DD01 DD07 5B089 GB02 JB17 JB22 KA12 KB04 ME02 ME08 ME09

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 通常時に処理を実行する現用ノードと、
    障害時に現用ノードの処理を代行する予備ノードとを備
    え、現用ノード上におけるメモリ書き替えに関するメモ
    リ更新情報を予備ノードに逐次転送して予備ノードのメ
    モリ上に複製として格納する冗長システムの通信エラー
    回復方法であって、 現用ノードから予備ノードへのメモリ更新情報の転送時
    にエラーが発生した場合、エラーが発生したメモリ更新
    情報に対応するアドレスのメモリ上の最新の値を再送す
    ることを特徴とする通信エラー回復方法。
  2. 【請求項2】 請求項1に記載の通信エラー回復方法に
    おいて、 エラーが発生したメモリ更新情報から該当するアドレス
    を特定できない場合、メモリ上の全領域に対応する値を
    再送することを特徴とする通信エラー回復方法。
  3. 【請求項3】 請求項1または2に記載の通信エラー回
    復方法において、 メモリ更新情報の再送は該当するアドレスまたは全アド
    レスに対するメモリリードとライトを実行することによ
    り行うことを特徴とする通信エラー回復方法。
  4. 【請求項4】 通常時に処理を実行する現用ノードと、
    障害時に現用ノードの処理を代行する予備ノードとを備
    え、現用ノード上におけるメモリ書き替えに関するメモ
    リ更新情報を予備ノードに逐次転送して予備ノードのメ
    モリ上に複製として格納する冗長システムの通信エラー
    回復装置であって、 現用ノードに、 予備ノードに転送するメモリ更新情報をシーケンシャル
    番号及びメモリ上のアドレスとともに一時的にバッファ
    する手段と、 予備ノードからメモリ更新情報の再送要求を受信した
    時、要求中のシーケンシャル番号より該当するアドレス
    を特定し、該アドレスに対応するメモリ上の最新の値を
    予備ノードに再送する手段とを具備し、 予備ノードに、 受信したメモリ更新情報中のエラーを検出する手段と、 エラーが発生したメモリ更新情報に対応するシーケンシ
    ャル番号を特定し、該番号とともにメモリ更新情報の再
    送を現用ノードに要求する手段とを具備したことを特徴
    とする通信エラー回復装置。
  5. 【請求項5】 請求項4に記載の通信エラー回復装置に
    おいて、 エラーが発生したメモリ更新情報に対応するシーケンシ
    ャル番号を特定できない場合もしくは該シーケンシャル
    番号に該当するアドレスを特定できない場合、メモリ上
    の全領域に対応する値を予備ノードに再送する手段を具
    備したことを特徴とする通信エラー回復装置。
  6. 【請求項6】 請求項4または5に記載の通信エラー回
    復装置において、 メモリ更新情報の再送は該当するアドレスまたは全アド
    レスに対するメモリリードとライトを実行することによ
    り行うことを特徴とする通信エラー回復装置。
JP2000214491A 2000-07-14 2000-07-14 通信エラー回復方法及びその装置 Pending JP2002032269A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000214491A JP2002032269A (ja) 2000-07-14 2000-07-14 通信エラー回復方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000214491A JP2002032269A (ja) 2000-07-14 2000-07-14 通信エラー回復方法及びその装置

Publications (1)

Publication Number Publication Date
JP2002032269A true JP2002032269A (ja) 2002-01-31

Family

ID=18710059

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000214491A Pending JP2002032269A (ja) 2000-07-14 2000-07-14 通信エラー回復方法及びその装置

Country Status (1)

Country Link
JP (1) JP2002032269A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006260160A (ja) * 2005-03-17 2006-09-28 Fujitsu Ltd 二重化記憶装置及び二重化記憶装置の制御方法
JP2012043230A (ja) * 2010-08-19 2012-03-01 Toshiba Corp 冗長化制御システム、及びその演算データの伝送方法
JP2015170226A (ja) * 2014-03-07 2015-09-28 富士通株式会社 データ転送システム及び方法
CN111983382A (zh) * 2020-08-11 2020-11-24 广州番禺电缆集团有限公司 一种基于多节点的智能电缆监控平台及方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006260160A (ja) * 2005-03-17 2006-09-28 Fujitsu Ltd 二重化記憶装置及び二重化記憶装置の制御方法
JP4667093B2 (ja) * 2005-03-17 2011-04-06 富士通株式会社 二重化記憶装置及び二重化記憶装置の制御方法
JP2012043230A (ja) * 2010-08-19 2012-03-01 Toshiba Corp 冗長化制御システム、及びその演算データの伝送方法
JP2015170226A (ja) * 2014-03-07 2015-09-28 富士通株式会社 データ転送システム及び方法
CN111983382A (zh) * 2020-08-11 2020-11-24 广州番禺电缆集团有限公司 一种基于多节点的智能电缆监控平台及方法

Similar Documents

Publication Publication Date Title
JP4481498B2 (ja) 複製サーバのためのプロトコル
JP3290052B2 (ja) ソフトウエア故障回復のための再使用可能なソフトウエアモジュールを持つプログレッシブ再試行法及び装置
Alvisi et al. Wrapping server-side TCP to mask connection failures
US7343514B2 (en) Data copying system, relaying device, data transfer/reception system and program for copying of data in storage unit
US8924665B2 (en) Virtual ordered writes transfer log
JP4074072B2 (ja) データの完全性を備えるリモートコピーシステム
US6470391B2 (en) Method for transmitting data via a network in a form of divided sub-packets
US8078813B2 (en) Triangular asynchronous replication
US5590277A (en) Progressive retry method and apparatus for software failure recovery in multi-process message-passing applications
US5958064A (en) Multiple node dual level error recovery system and method
US20030177321A1 (en) Data synchronization of multiple remote storage after remote copy suspension
JP2003288283A (ja) 静的エンドツーエンド再送装置および方法
US20050193179A1 (en) Daisy-chained device-mirroring architecture
JPH11502658A (ja) 故障許容処理方法
WO2000072159A1 (en) Reliable datagram
KR101200453B1 (ko) 통신 네트워크를 통한 데이터 세트 업데이트 시스템, 방법및 장치
US20030172335A1 (en) Dynamic end to end retransmit apparatus and method
US5539875A (en) Error windowing for storage subsystem recovery
JP4214832B2 (ja) 記憶装置システム
JP2002032269A (ja) 通信エラー回復方法及びその装置
US6182166B1 (en) Method/apparatus for interfacing two remotely disposed devices coupled via transmission medium with first and second commands transmitted without first checking receiving device for readiness
US8707003B1 (en) Rate control for asynchronous data replication
WO2003090089A1 (fr) Dispositif de memoire cache
US7975064B2 (en) Envelope packet architecture for broadband engine
JP3284823B2 (ja) データ通信装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060523