JP6096795B2 - 中間プライマリバックアップ複製のための方法及び装置 - Google Patents

中間プライマリバックアップ複製のための方法及び装置 Download PDF

Info

Publication number
JP6096795B2
JP6096795B2 JP2014542320A JP2014542320A JP6096795B2 JP 6096795 B2 JP6096795 B2 JP 6096795B2 JP 2014542320 A JP2014542320 A JP 2014542320A JP 2014542320 A JP2014542320 A JP 2014542320A JP 6096795 B2 JP6096795 B2 JP 6096795B2
Authority
JP
Japan
Prior art keywords
primary
processor
message
state
messages
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
JP2014542320A
Other languages
English (en)
Other versions
JP2014533413A (ja
Inventor
ナムジョシ,ケダー
コッポール,プラモド
スタソポウロス,アサナシオス
ウィルフォング,ゴードン・ティー
Original Assignee
アルカテル−ルーセント
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 アルカテル−ルーセント filed Critical アルカテル−ルーセント
Publication of JP2014533413A publication Critical patent/JP2014533413A/ja
Application granted granted Critical
Publication of JP6096795B2 publication Critical patent/JP6096795B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • 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/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • 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/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • 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/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2048Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は包括的にはプライマリバックアップ複製を提供するための方法及び装置に関する。
本節は、本発明を理解するのをより容易にする一助となるような態様を紹介する。したがって、本節において述べられることは、この観点から読まれるべきであり、何が従来技術であるか、又は何が従来技術でないかを認めるものと理解されるべきではない。
幾つかの知られている非同期仮想マシン(VM)複製システムにおいて、プライマリバックアップ方法は、プライマリからのメッセージが環境に送信される前に、プライマリの状態をバックアップと同期させなければならない。これらの実施形態では、プライマリは出力メッセージをバッファリングし、バックアップに状態情報を送信し、バックアップからの肯定応答メッセージを待ち、その後、バッファリングされたメッセージを環境に送出する。メッセージが環境に直ちに送出される場合には、環境とバックアップでは、プライマリ状態のビューが異なるので、プライマリはメッセージをバッファリングする。この不整合の結果、アプリケーションエラーが生じる場合がある。したがって、これらのバックアップ方法は、プライマリから環境への通信時に、プライマリ−バックアップ同期を起因とする遅延を生じさせる場合がある。幾つかの知られているシステムでは、十分なネットワーク性能を得るために、プライマリ−バックアップ通信は、待ち時間が短く設定される。待ち時間を短く設定すると、費用がかかる高速の相互接続が必要になるか、プライマリとバックアップを物理的に近接配置することで耐障害性が犠牲になる場合がある。
種々の実施形態は、高耐障害性及び高可用性を提供しながら、ネットワーク性能を改善する中間バックアップ式プライマリ−バックアップ構成を提供する方法及び装置を提供する。中間バックアップ式プライマリ−バックアップ構成は、バッファリングされた出力を送出する際の同期遅延を減少させる。プライマリと、メッセージの意図した1つ又は複数の受信相手(すなわち、環境)との間のルーティング経路内に中間バックアップ式フォワーダを配置することによって、同期遅延が減少する。中間バックアップ式フォワーダは、要求された状態情報を受信し、プライマリから環境に送信される出力メッセージを途中で受信する。中間バックアップ式フォワーダは、プライマリ状態情報のコピーを更新することによって、プライマリをバックアップし、そのメッセージを環境に転送する。
有利には、中間バックアップ式フォワーダは、プライマリから受信されたメッセージに肯定応答する必要がないので、プライマリがバックアップから肯定応答を待つことに起因する同期遅延を解消することができる。更に、プライマリとバックアップとの間の同期遅延が解消されるので、プライマリ及びバックアップを互いに遠隔させることができ、信頼性(例えば、耐障害性)を改善することができる。
一実施形態では、プライマリ−バックアップサービスを提供するための方法が提供される。その方法は、プライマリから入力メッセージ及び状態情報を受信することと、状態情報に基づいて、格納されたプライマリ状態を同期させることと、転送されるメッセージを環境に送信することとを含み、転送されるメッセージは入力メッセージに基づく。
幾つかの実施形態では、その方法は、フェイルオーバ指示を受信することであって、フェイルオーバ指示は、プライマリが少なくとも1つのプライマリタスクの制御を放棄していることを指示する、受信することと、格納されたプライマリ状態に基づいて、少なくとも1つのプライマリタスクを実行することとを更に含む。
幾つかの実施形態では、環境から1つ又は複数の環境メッセージを受信することと、1つ又は複数の環境メッセージをデジタルデータ記憶装置に記録することと、状態情報及び1つ又は複数の記録された環境メッセージに基づいて、更新されたプライマリ状態を同期させることとを更に含む。
別の実施形態では、プライマリ−バックアップサービスを提供するための装置が提供される。その装置は、デジタルデータ記憶装置と、デジタルデータ記憶装置に通信可能に結合されるプロセッサとを含む。プロセッサは、プライマリから入力メッセージを受信し、プライマリから状態情報を受信し、状態情報に基づいて、記憶されたプライマリ状態を同期させ、入力メッセージに基づいて、出力メッセージを環境に送信するように構成される。
幾つかの実施形態では、プロセッサは、プライマリが少なくとも1つのプライマリタスクに関する制御を放棄していることを指示するフェイルオーバ指示を受信し、記憶されたプライマリ状態に基づいて、少なくとも1つのプライマリタスクを実行するように更に構成される。
幾つかの実施形態では、プロセッサは、環境から1つ又は複数の環境メッセージを受信し、1つ又は複数の環境メッセージをデジタルデータ記憶装置に記録し、状態情報及び1つ又は複数の記録された環境メッセージに基づいて、更新されたプライマリ状態を同期させるように更に構成される。
幾つかの実施形態では、その装置は、プロセッサに通信可能に結合されるI/Oインターフェースを更に含み、I/Oインターフェースは入力メッセージ及び状態情報を受信するように構成される。
幾つかの実施形態では、I/Oインターフェースは、複数の通信プロトコルをサポートすることができる。
幾つかの実施形態では、I/Oインターフェースは、少なくとも1つのパケットインターフェースと、少なくとも1つの無線インターフェースとを備える。
幾つかの実施形態では、入力メッセージはパケットである。
幾つかの実施形態では、その装置は、プライマリから遠隔して位置することができる。
幾つかの実施形態では、状態情報は入力メッセージに対応する。
幾つかの実施形態では、転送されるメッセージを送信するステップは、対応する状態情報を受信するステップの後に行われる。
添付の図面において種々の実施形態が示される。
中間バックアップ式プライマリ−バックアップ構成の一実施形態を示す機能ブロック図である。 図1の中間バックアップ式フォワーダ120を用いてプライマリ−バックアップサービスを提供するための方法の実施形態を示す流れ図である。 図1の中間バックアップ式フォワーダ120を用いて決定性プライマリ−バックアップ回復を提供するための方法の実施形態を示す流れ図である。 図1の中間バックアップ式ルータ120の一実施形態の概略的なブロック図である。
理解するのを容易にするために、同一の参照番号を用いて、実質的に同じ、若しくは類似の構造、及び/又は実質的に同じ、若しくは類似の機能を有する素子を示している。
プライマリと環境との間のルーティング経路内に中間バックアップ式フォワーダを配置することによって、中間バックアップ式プライマリ−バックアップ構成が作り出される。中間バックアップ式フォワーダは、プライマリによって環境に送信される出力メッセージを途中で受信し、プライマリがフォワーダ自体に送信する状態情報も取得する。中間バックアップ式フォワーダは、その状態情報を更新することによってプライマリをバックアップし、出力パケットを環境に転送する。
プライマリがメッセージを送信する前にバックアップからの肯定応答を待つ必要がないので、中間バックアップ式フォワーダはプライマリとバックアップとの間の同期遅延を解消することができるという効果がある。更に、プライマリとバックアップとの間の同期遅延が解消されるので、プライマリ及びバックアップは互いに遠隔させることができ、信頼性(例えば、耐障害性)を改善することができる。
しかしながら、中間バックアップ式プライマリ−バックアップ構成システムは同期遅延を解消するが、中間バックアップ式プライマリ−バックアップ構成システムは、任意のバックアップ方式が存在しなければメッセージが受けることになっていた遅延を超える送信遅延を引き起こす場合があることを理解されたい。例えば、中間バックアップ式フォワーダは、パケットをバッファリングし、転送するときに、状態情報パケットを読み込むときに、及び/又は状態情報パケットを失った場合の任意の再送中に、遅延を引き起こす場合がある。
図1は、中間バックアップ式プライマリ−バックアップ構成システム100の一実施形態を示す機能ブロック図を示す。中間バックアップ式プライマリ−バックアップ構成システム100は、プライマリ110から環境130まで送信される入力メッセージ110m−1及び110m−2が中間バックアップ式フォワーダ120を通り抜けるように、プライマリ110と環境130との間に配置される中間バックアップ式フォワーダ120を含む。
プライマリ110は、中間バックアップ式フォワーダ120を介して、環境130に向けられる入力メッセージ110m−1及び110m−2を送信する。また、プライマリ110は、中間バックアップ式フォワーダ120によって用いられる状態情報110s−1及び110s−2も送信し、その動作状態とプライマリとを同期させる。
入力メッセージ110m−1及び110m−2(まとめて、入力メッセージ110m)は一連のメッセージとすることができる。例えば、メッセージは、宛先ノードにおいて実行するために「環境130内の」宛先ノードにルーティングされることになるタスクとすることができる。幾つかの実施形態では、メッセージはIP又はTCPパケットである。
転送されるメッセージ120m−1及び120m−2(まとめて、転送されるメッセージ120m)はそれぞれ入力メッセージ110m−1及び110m−2に対応する。転送されるメッセージ120mは入力メッセージ110mに対応するが、中間バックアップ式フォワーダ120は、転送されるメッセージ120mのヘッダ又はペイロードを変更できることを理解されたい。
状態情報110s−1及び110s−2(まとめて、状態情報110s)は、プライマリの状態の格納されたバージョンをプライマリ110の状態と同期させるために中間バックアップ式フォワーダ120によって用いられる情報である。例えば、状態情報110sは、チェックポイント状態(例えば、メモリ及びディスク)を提供することができる。バックアップがプライマリと同期していない場合には、バックアップが故障したプライマリを引き継ぐときに、システムエラーが生じる恐れがあることを理解されたい。
中間バックアップ式フォワーダ120は、プライマリ110からの入力メッセージ110m−1及び110m−2を、対応する状態情報、例えば、それぞれ状態情報110s−1及び110s−2を受信するまでバッファリングする。それに応じて、中間バックアップ式フォワーダ120がその状態を更新すると、中間バックアップ式フォワーダ120は、メッセージ120m−1及び120m−2を環境130に向かって転送する。中間バックアップ式フォワーダ120は、受信されたメッセージ110m−1及び110m−2を転送する前に、プライマリとの同期に肯定応答する必要はないので、110m−1及び110m−2のような順次的なメッセージ間で同期遅延は生じないことを理解されたい。また、中間バックアップ式フォワーダ120は、環境130からメッセージ(すなわち、環境メッセージ)を受信し(明確にするために示されない)、それらのメッセージをプライマリ110に転送することもできる。中間バックアップ式フォワーダ120は、環境130からプライマリ110に向けられるメッセージをそのまま(例えば、セーブされた状態情報を更新することなく)転送できることを理解されたい。
環境130は、中間バックアップ式フォワーダ120から、転送されるメッセージ120mを受信する。環境130内の宛先ノードが、転送されるメッセージ130を実行する。また、環境130内のノードがプライマリ110にメッセージを直接、又は中間バックアップ式フォワーダ120を介して、送信することもできる。
入力メッセージ110m、転送されるメッセージ120m及び状態情報110sは時間的に簡略化されて示されており、任意の適切な方法で順序付けることができることを理解されたい。詳細には、ネットワーク遅延によって、中間バックアップ式フォワーダ120が最初に送信された入力メッセージ110mに対応する状態情報を受信する前に、複数の入力メッセージ110mが中間バックアップ式フォワーダ120によって受信される場合がある。例えば、図1において、状態情報110s−1が受信される前に、中間バックアップ式フォワーダ120によって、入力メッセージ110m−1及び110m−2が受信される場合がある。更に、入力メッセージ110mに対応する転送されるメッセージ120mが、任意の数の入力メッセージ110m及び/又は状態情報110sの後に送信される場合がある。例えば、図1において、転送されるメッセージ120m−1が中間バックアップ式フォワーダ120によって転送される前に、入力メッセージ110m−1及び110m−2並びに状態情報110s−1がプライマリ110によって送信される場合がある。
幾つかの実施形態では、中間バックアップ式フォワーダ120をプライマリ110と同期させるために、状態情報110sは、対応するメッセージを用いることなく送信することができる。例えば、状態情報110s−1は、ルーティングテーブルを更新することに関連する場合があり、それゆえ、対応するメッセージ110m−1を有しない場合がある。
幾つかの実施形態では、状態情報110sチェックポイントが、複数の入力メッセージ110mに対応する場合がある。例えば、図1を参照すると、プライマリ110は、入力メッセージ110m−1及び110m−2を送信することができ、その後、両方の入力メッセージが送信された後に、プライマリ状態を表す状態情報110s−2を送信することができる。この例では、状態情報110s−2が両方の入力メッセージ110m−1及び110m−2に対応するので、状態情報110s−1は送信される必要はない。
幾つかの実施形態では、中間バックアップ式フォワーダ120が入手可能な情報に基づくプライマリ状態が決定性のものである場合には、中間バックアップ式フォワーダ120は、対応する状態情報110s−1を受信することなく、110m−1のような入力メッセージを転送することができる。有利には、中間バックアップ式フォワーダ120は、対応する状態情報110sを待つことなく、プライマリ110から受信された入力メッセージ110mを転送できることになる。
その実施形態の更なる実施形態では、プライマリ110の状態は、プライマリ110を宛先とする受信された環境メッセージに基づく決定性のものである。例えば、プライマリ110における更新された状態情報の計算が、プライマリ110を宛先とする環境メッセージに基づいていた場合には、中間バックアップ式フォワーダ120は、環境メッセージを記録することができる。この実施形態において、プライマリ110が故障する場合には、中間バックアップ式フォワーダ120が、例えば、110s−1のような最後に受信された状態情報を使用することによって、プライマリ110の状態に同期し、最後に受信された状態情報110s−1内に表されない記録された一連の受信された環境メッセージを「再生する」ことができる。更に、中間バックアップ式フォワーダ120が、環境130への入力メッセージ110mを記録する場合には、中間バックアップ式フォワーダ120は、必要に応じて、その再生中に、これらの入力メッセージ110mの再送を阻止することができる。
幾つかの実施形態では、プライマリ110は、計算、ルーティング、中継及び転送を実行し、高い可用性及び高性能を必要とするネットワーク集約的な仮想マシンとすることができる。これらの実施形態では、プライマリ110は、ローカルタスクからのメッセージ、及び/又は環境内のノードからの遠隔要求を受信することができる。その際、プライマリ110は、中間バックアップ式フォワーダ120を介して環境130に送信するために、入力メッセージ110mを形成することができる。幾つかの実施形態では、メッセージは、TCP/IP、SIP及び/又はRTPパケットを用いて送信される。
図2は、図1の中間バックアップ式フォワーダ120を用いてプライマリ−バックアップサービスを提供するための方法の一実施形態を示す流れ図を示す。図1及び図2を参照すると、中間バックアップ式フォワーダ120は、プライマリ110から入力メッセージ110m−1を受信する(例えば、方法200のステップ210)。また、中間バックアップ式フォワーダ120は、プライマリ110から状態情報110s−1も受信する(例えば、方法200のステップ220)。中間バックアップ式フォワーダ120は、プライマリの格納された状態を同期させ(例えば、方法200のステップ230)、転送されるメッセージ120m−1を環境130に送信する(方法200のステップ240)。
方法200において、ステップ210は、図1において説明されたように、プライマリ(例えば、図1のプライマリ110)から入力メッセージ(例えば、図1のメッセージ110m−1)を受信することを含む。
方法200において、ステップ220は、図1において説明されたように、プライマリ(例えば、図1のプライマリ110)から状態情報(例えば、図1の状態情報110s−1)を受信することを含む。
方法200において、ステップ230は、図1において説明されたように、プライマリの格納された状態を同期させることを含む。
方法200において、ステップ240は、図1において説明されたように、転送されるメッセージ(図1のメッセージ120m−1)を環境(例えば、図1の環境130)に送信することを含む。
ステップ240後に、方法200は、ステップ210に戻り、プライマリ(例えば、プライマリ110)から受信された入力メッセージ(例えば、入力メッセージ110m)を転送するプロセスを繰り返す。
方法200の幾つかの実施形態では、ステップ210においてプライマリから受信された入力メッセージは、ステップ220において対応する状態情報が受信されるまで、ステップ240において送信されない。
方法200の他の実施形態では、ステップ210においてプライマリから受信された入力メッセージは、ステップ220において対応する状態情報を受信することなく、ステップ240において送信される場合がある。例えば、プライマリの状態が図1において説明されたように決定性のものであるとき、ステップ220において状態情報を受信する前に、又は受信した後に、ステップ210において、1つ又は複数の入力メッセージが受信される場合があり、ステップ240において送信される場合がある。
方法200の幾つかの実施形態では、中間バックアップ式フォワーダ120は、格納されたプライマリ状態を用いてプライマリ−バックアップ回復を提供することができる。例えば、中間バックアップ式フォワーダ120がプライマリ110を引き継ぐことになるフェイルオーバ指示時に、中間バックアップ式フォワーダ120は、プライマリ状態を用いて、環境との通信を再開することができる。中間バックアップ式フォワーダ120は、プライマリによって実行される全てのタスク、又はプライマリタスクのサブセットを引き継ぐことができることを理解されたい。例えば、幾つかの仮想マシンを提供するプライマリの場合、それらの仮想マシンのうちの1つ又は複数からのリソースが障害を受けており、それらのタスクのサブセットのためのフェイルオーバ指示を必要とする場合がある。
図3は、図1の中間バックアップ式フォワーダ120を用いて決定性プライマリ−バックアップ回復を提供するための方法の一実施形態を示す流れ図を示す。図1及び図3を参照すると、中間バックアップ式フォワーダ120は、状態情報を受信したか否かを判定し(例えば、方法300のステップ310)、受信した場合には、格納されたプライマリ状態を受信された状態情報と同期させ、記録された受信環境メッセージのログをリセットする(例えば、方法300のステップ320)。また、中間バックアップ式フォワーダ120は、環境300から環境メッセージを受信したか否かを判定し(例えば、方法300のステップ330)、受信した場合には、受信環境メッセージのログ内に受信環境メッセージを記録する(例えば、方法300のステップ340)。また、中間バックアップ式フォワーダ120は、バックアップフェイルオーバを開始すべきであるか否かも判定し(例えば、方法300のステップ350)、開始すべきである場合には、格納されたプライマリ状態及び記録された環境メッセージのログに基づいて、プライマリ状態を同期させる(例えば、方法300のステップ360)。
方法300において、ステップ310は、図1において説明されたように、プライマリ(例えば、図1のプライマリ110)から状態情報(例えば、図1の状態情報110s−1)が受信されたか否かを判定することを含む。
方法300において、ステップ310において判定されたように、状態情報が受信された場合には、ステップ320は、格納されたプライマリ状態を更新し、記録された環境メッセージのログをリセットすることを含む。例えば、バックアップをプライマリ状態に同期させるのに、更新されたプライマリ状態内に既に表されている記録された環境メッセージはもはや不要であり、任意の適切な方法で削除されるか、又はマークを付される。
方法300において、ステップ330は、図1において説明されたように、環境(例えば、図1の環境130)から環境メッセージ(例えば、明確にするために図1には示されない)が受信されたか否かを判定することを含む。
方法300において、ステップ330において判定されたように、環境メッセージが受信された場合には、ステップ340は、ログ内に環境メッセージを記録することを含む。
方法300において、ステップ350は、中間バックアップ式フォワーダ120がプライマリ(例えば、プライマリ110)のための動作を引き継ぐべきであるか否かを判定することを含む。中間バックアップ式フォワーダ120は、ネットワークノードのステータスを監視する装置からメッセージを受信すること、プライマリ自体からメッセージを受信すること、プライマリがもはや動作できないと判定すること、及び/又は任意の適切な手段のような、任意の適切な手段によって、プライマリとして引き継ぐことを決定することができる。中間バックアップ式フォワーダ120は、ハートビートメッセージ、ステータスメッセージ及び/又は任意の他の適切な監視技法を用いることによって、プライマリがもはや動作できないと判定することができる。
方法300において、ステップ330において判定されたように、中間バックアップ式フォワーダ120がプライマリに関する動作を引き継ぐべきであると判定した場合には、ステップ340は、プライマリ状態を作り出すことを含む。中間バックアップ式フォワーダ120は、格納されたプライマリ状態と、実効的な格納されたプライマリ状態後に受信された記録された環境メッセージのログとに基づいて、プライマリ状態を作り出すことができる。例えば、中間バックアップ式フォワーダ120は、知られている決定性状態挙動を用いて、ログ内の一連の各環境メッセージを解析し、知られている決定性状態挙動に従ってプライマリ状態を更新することができる。
ステップ350の後に、方法300はステップ310に戻り、受信された状態情報(例えば、図1における状態情報110s)と、プライマリ(例えば、図1のプライマリ110)を宛先とする受信された環境メッセージとに基づいて、プライマリ状態を維持するプロセスを繰り返す。
特定のシーケンスにおいて主に図示及び説明されたが、方法200及び方法300に示されるステップは、任意の適切なシーケンスにおいて実行できることを理解されたい。更に、1つの枠によって特定されるステップは、そのシーケンス内の2つ以上の場所において実行することもできる。
種々の上記の方法のステップはプログラミングされたコンピュータによって実行できることを理解されたい。また、本明細書において、幾つかの実施形態は、マシン又はコンピュータ可読であり、命令のマシン実行可能又はコンピュータ実行可能プログラムを符号化する、プログラム記憶デバイス、例えば、デジタルデータ記憶媒体を含むことも意図しており、前記命令は、前記上記の方法のステップのうちの幾つか又は全てを実行する。プログラム記憶デバイスは、例えば、デジタルメモリ、磁気ディスク及び磁気テープのような磁気記憶媒体、ハードドライブ、又は光学的に読取り可能なデジタルデータ記憶媒体とすることができる。また、それらの実施形態は、上記の方法の前記ステップを実行するようにプログラミングされたコンピュータを含むことを意図している。
図4は、図1の中間バックアップ式フォワーダ120の一実施形態を概略的に示す。中間バックアップ式フォワーダ400は、例えば、方法200及び/又は300を用いて、本明細書において説明される機能を実行することができる。中間バックアップ式フォワーダ400は、プロセッサ410と、デジタルデータ記憶装置411とを含む。
プロセッサ410は、中間バックアップ式フォワーダ400の動作を制御する。プロセッサ410は、デジタルデータ記憶装置411と連携する。
デジタルデータ記憶装置411は、記憶されたプライマリ状態(例えば、図2のステップ230並びに図3のステップ320及び360)を記憶し、受信及び送信入力メッセージ、状態情報、環境メッセージ及びプライマリステータスメッセージをバッファリングし(例えば、図2のステップ210、220、240及び図3のステップ310、330、350)、記録された環境メッセージを記憶する(図3のステップ340)ことができる。また、デジタルデータ記憶装置411は、プロセッサ410によって実行可能なプログラム420も記憶する。
プロセッサ実行可能プログラム410は、I/Oインターフェースプログラム421及び/又はプライマリ状態プログラム423を含むことができる。プロセッサ410は、プロセッサ実行可能プログラム420と連携して、図1−図3において説明された機能性を実現し、及び/又は方法200及び/又は300のステップを実行する。
I/Oインターフェース430は、任意の適切な数のセッション(例えば、任意の適切な数のIPフロー)をサポートする任意の適切な数のチャネルをサポートするように構成され、それらのチャネルは、中間バックアップ式フォワーダ400と、1つ又は複数のプライマリ(例えば、図1のプライマリ110)及び環境(例えば、図1の環境130)との間で運用される場合がある。I/Oインターフェース430は、1つ又は複数の任意の適切なタイプの通信経路及び通信プロトコルをサポートすることができる。例えば、通信経路は、無線通信(例えば、GSM(登録商標)及びCDMA)、有線通信、パケットネットワーク通信(例えば、IP)、広帯域通信(例えば、DSL)等、及びそれらの種々の組合せを含むことができる。
プロセッサ実行可能プログラム420がプロセッサ410上に実装されるとき、そのプログラムコードセグメントは、プロセッサとの組合せで、特定の論理回路と同じように動作する固有のデバイスを提供する。
例えば、本明細書において、プログラム及びロジックがデジタルデータ記憶装置内に記憶され、メモリがプロセッサに通信可能に接続される実施形態に関して図示及び説明されたが、そのような情報は、任意の他の適切な方法(例えば、任意の適切な数のメモリ、記憶装置又はデータベースを用いること、任意の適切な構成のデバイスに通信可能に結合される任意の適切な構成のメモリ、記憶装置又はデータベースを用いること、任意の適切な組合せの1つ又は複数のメモリ、1つ又は複数の記憶装置及び/又は1つ又は複数の内部若しくは外部データベース内に情報を記憶すること、又は任意の適切な数のアクセス可能外部メモリ、記憶装置又はデータベースを用いること)によって記憶できることを理解されたい。したがって、本明細書において参照されるデジタルデータ記憶装置は、1つ又は複数のメモリ、1つ又は複数の記憶装置及び1つ又は複数のデータベースの全ての適切な組合せを含むことを意図している。
説明及び図面は本発明の原理を示すにすぎない。それゆえ、当業者は、本明細書には明示的に説明又は図示されないが、本発明の原理を具現し、本明細書の精神及び範囲内に含まれる種々の構成を考案できることは理解されよう。更に、本明細書に記載される全ての例が主に、本発明の原理と、当該技術分野を発展させることに本発明者らが貢献する概念とを読者が理解するのを助けるために、教示の目的を果たすことのみを明確に意図しており、そのように具体的に記載される例及び条件に限定されないと解釈されるべきである。更に、本明細書において本発明の原理、態様及び実施形態、並びにその具体例を記載する全ての陳述は、その均等物を含むことを意図している。
「プロセッサ」を付された任意の機能ブロックを含む、図示される種々の要素の機能は、専用ハードウェア、及び適切なソフトウェアとの関連でソフトウェアを実行することができるハードウェアを使用することにより提供することができる。プロセッサによって提供されるとき、それらの機能は、単一の専用プロセッサによって、単一の共有プロセッサによって、又はそのうちの幾つかが共有される場合がある複数の個々のプロセッサによって提供される場合がある。更に、「プロセッサ」又は「コントローラ」という用語を明示的に使用することは、ソフトウェアを実行することができるハードウェアだけを指すように解釈されるべきではなく、限定はしないが、デジタルシグナルプロセッサ(DSP)ハードウェア、ネットワークプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ソフトウェアを記憶するためのリードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、及び不揮発性記憶装置を暗に含む場合がある。他のハードウェア、すなわち、従来の、及び/又はカスタムハードウェアも含まれる場合がある。同様に、図示される任意のスイッチは概念的にすぎない。それらの機能は、プログラムロジックの動作を通して、専用ロジックを通して、プログラム制御及び専用ロジックのやりとりを通して、更には手動で実行することができ、文脈からより具体的に理解されるように開発者によって特定の技法が選択可能である。
本明細書における任意のブロック図は、本発明の原理を具現する例示的な回路の概念図を表すことを理解されたい。同様に、任意のフローチャート、流れ図、状態遷移図、擬似コード等は、コンピュータ可読媒体内に実質的に表現される場合があり、かつ、コンピュータ又はプロセッサが明示されるか否かを問わず、コンピュータ又はプロセッサによって実行することができる種々のプロセスを表すことを理解されたい。

Claims (10)

  1. コンピュータ又は仮想マシンであるプライマリをバックアップするサービスを提供するための方法であって、
    デジタルデータ記憶装置に通信可能に接続されるプロセッサにおいて、プライマリから入力メッセージを受信するステップと、
    前記プロセッサによって、プライマリからプライマリの状態情報を受信するステップと、
    前記プロセッサによって、状態情報に基づいて、記憶されたプライマリ状態を同期させてプライマリをバックアップするステップと、
    前記プロセッサによって、入力メッセージに基づく出力メッセージを、プライマリを介することなく、宛先ノードに送信するステップとを含む、方法。
  2. 対応する状態情報を受信するステップの後に、出力メッセージを送信するステップが行われる、請求項1に記載の方法。
  3. 前記プロセッサによって、フェイルオーバ指示を受信するステップであって、フェイルオーバ指示は、プライマリが少なくとも1つプライマリタスクに関する制御を放棄していることを指示する、受信するステップと、
    前記プロセッサによって、記憶されたプライマリ状態に基づいて、少なくとも1つのプライマリタスクを実行するステップとを更に含む、請求項1に記載の方法。
  4. 前記プロセッサによって、宛先ノードから1つ又は複数のメッセージを受信するステップと、
    前記プロセッサによって、1つ又は複数のメッセージをデジタルデータ記憶装置に記録するステップと、
    前記プロセッサによって、状態情報及び1つ又は複数の記録されたメッセージに基づいて、更新されたプライマリ状態を同期させるステップとを更に含む、請求項1に記載の方法。
  5. デジタルデータ記憶装置と、
    デジタルデータ記憶装置に通信可能に接続されるプロセッサとを備え、コンピュータ又は仮想マシンであるプライマリをバックアップするためのデジタルメッセージ処理装置であって、プロセッサは、
    プライマリから入力メッセージを受信し、
    プライマリからプライマリの状態情報を受信し、
    状態情報に基づいて、記憶されたプライマリ状態を同期させてプライマリをバックアップし
    宛先ノードに入力メッセージに基づく出力メッセージを、プライマリを介することなく、送信するように構成される、デジタルメッセージ処理装置。
  6. 対応する状態情報を受信するステップの後に、出力メッセージを送信するステップが行われる、請求項5に記載の装置。
  7. プロセッサが、
    プライマリが少なくとも1つプライマリタスクに関する制御を放棄していることを指示するフェイルオーバ指示を受信し、
    記憶されたプライマリ状態に基づいて、少なくとも1つのプライマリタスクを実行するように更に構成される、請求項5に記載の装置。
  8. プロセッサが、
    宛先ノードから1つ又は複数のメッセージを受信し、
    1つ又は複数のメッセージをデジタルデータ記憶装置に記録し、
    状態情報及び1つ又は複数の記録されたメッセージに基づいて、更新されたプライマリ状態を同期させるように更に構成される、請求項5に記載の装置。
  9. プロセッサに通信可能に結合されるI/Oインターフェースを更に備え、I/Oインターフェースは入力メッセージ及び状態情報を受信するように構成される、請求項5に記載の装置。
  10. 装置がプライマリから遠隔して位置することができる、請求項5に記載の装置。
JP2014542320A 2011-11-15 2012-10-24 中間プライマリバックアップ複製のための方法及び装置 Expired - Fee Related JP6096795B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/296,464 2011-11-15
US13/296,464 US9723074B2 (en) 2011-11-15 2011-11-15 Method and apparatus for in the middle primary backup replication
PCT/US2012/061545 WO2013074255A1 (en) 2011-11-15 2012-10-24 Method and apparatus for in the middle primary backup replication

Publications (2)

Publication Number Publication Date
JP2014533413A JP2014533413A (ja) 2014-12-11
JP6096795B2 true JP6096795B2 (ja) 2017-03-15

Family

ID=47326299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014542320A Expired - Fee Related JP6096795B2 (ja) 2011-11-15 2012-10-24 中間プライマリバックアップ複製のための方法及び装置

Country Status (6)

Country Link
US (1) US9723074B2 (ja)
EP (1) EP2781075A1 (ja)
JP (1) JP6096795B2 (ja)
KR (1) KR20140075014A (ja)
CN (1) CN103947177B (ja)
WO (1) WO2013074255A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
US8868862B2 (en) 2011-12-29 2014-10-21 Alcatel Lucent Method and apparatus for synchronization in primary-backup replication schemes
US9063721B2 (en) 2012-09-14 2015-06-23 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US9069782B2 (en) 2012-10-01 2015-06-30 The Research Foundation For The State University Of New York System and method for security and privacy aware virtual machine checkpointing
US20150234305A1 (en) * 2014-02-19 2015-08-20 Fuji Xerox Co., Ltd. Polyester resin for toner, toner for electrostatic charge image development, and toner cartridge
JP2016020432A (ja) 2014-07-14 2016-02-04 富士ゼロックス株式会社 トナー用ポリエステル樹脂、静電荷像現像用トナー、静電荷像現像剤、トナーカートリッジ、プロセスカートリッジ、画像形成装置、及び画像形成方法
CN104618153B (zh) * 2015-01-20 2018-08-03 北京大学 分布式并行图处理中基于p2p的动态容错方法及系统
CN112804077B (zh) * 2020-06-05 2022-07-15 中兴通讯股份有限公司 数据保护方法、控制器、控制面设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369757A (en) * 1991-06-18 1994-11-29 Digital Equipment Corporation Recovery logging in the presence of snapshot files by ordering of buffer pool flushing
US5303302A (en) * 1992-06-18 1994-04-12 Digital Equipment Corporation Network packet receiver with buffer logic for reassembling interleaved data packets
JP3649452B2 (ja) 1992-12-28 2005-05-18 富士通テン株式会社 電子機器の制御装置
JPH08106426A (ja) 1994-10-07 1996-04-23 Hitachi Ltd クライアントサーバシステム及びその処理方法
US6421741B1 (en) 1999-10-12 2002-07-16 Nortel Networks Limited Switching between active-replication and active-standby for data synchronization in virtual synchrony
US7158985B1 (en) * 2003-04-09 2007-01-02 Cisco Technology, Inc. Method and apparatus for efficient propagation of large datasets under failure conditions
US7130975B2 (en) 2003-06-27 2006-10-31 Hitachi, Ltd. Data processing system
US8055745B2 (en) 2004-06-01 2011-11-08 Inmage Systems, Inc. Methods and apparatus for accessing data from a primary data storage system for secondary storage
JPWO2008010473A1 (ja) * 2006-07-19 2009-12-17 パナソニック株式会社 分散ファイル管理システム
US8407518B2 (en) 2007-10-26 2013-03-26 Vmware, Inc. Using virtual machine cloning to create a backup virtual machine in a fault tolerant system
EP2274676A1 (en) * 2008-01-31 2011-01-19 Oracle International Corporation System and method for transactional cache
JP5062845B2 (ja) * 2008-06-30 2012-10-31 日本電信電話株式会社 経路切替方法、サーバ装置、境界ノード装置、経路切替システム及び経路切替プログラム
US8108575B2 (en) * 2009-02-03 2012-01-31 International Business Machines Corporation Methods of multi-server application synchronization without stopping I/O

Also Published As

Publication number Publication date
EP2781075A1 (en) 2014-09-24
US9723074B2 (en) 2017-08-01
KR20140075014A (ko) 2014-06-18
WO2013074255A1 (en) 2013-05-23
JP2014533413A (ja) 2014-12-11
CN103947177B (zh) 2017-08-01
CN103947177A (zh) 2014-07-23
US20130124479A1 (en) 2013-05-16

Similar Documents

Publication Publication Date Title
JP6096795B2 (ja) 中間プライマリバックアップ複製のための方法及び装置
JP6569020B2 (ja) ネットワーキング技術
CN107210976B (zh) 用于在网络中转发数据分组的方法及其可编程入口和出口节点
US20070204275A1 (en) Method and system for reliable message delivery
CN106134144A (zh) 可靠性组播数据传送系统以及方法
CN108345617B (zh) 一种数据同步方法、装置以及电子设备
US9710196B2 (en) Method of storing data, storage system, and storage apparatus
CN114844826A (zh) 在网络的节点之间的异步套接字复制
JP2019106697A (ja) 相互接続ネットワークでのメッセージ再送遅延を動的に管理するための方法及びデバイス
US9294342B2 (en) Network node apparatus system, apparatus, and method
US9460182B2 (en) Networking-assisted input/output order preservation for data replication
US20220286350A1 (en) Systems and methods for seamless failover in branch deployments by superimposing clustering solution on vrrp
US11042430B2 (en) Elastic consistency high availability in multiple boards
JP2008129628A (ja) 複数のコンピュータシステムでメッセージをやり取りすることによって所定の業務を処理するシステムでの通信方式、及び、メッセージ中継プログラム
JP2008072521A (ja) 通信装置、通信方法及び通信プログラム
JP6740683B2 (ja) 並列処理装置及び通信制御方法
KR101511841B1 (ko) 가상 머신 기반의 무중단 시스템 및 상기 시스템에서의 패킷 중재 방법
JP2018097435A (ja) 並列処理装置及びノード間通信プログラム
WO2018131550A1 (ja) コネクション管理ユニット、およびコネクション管理方法
JP4478000B2 (ja) データ仲介方法およびデータ仲介装置
JP2013179430A (ja) 装置間同期および切替方法、並びに装置間切替システム
JP5022159B2 (ja) インタフェース装置、通信装置、通信システム、通信制御方法及び通信制御プログラム
US11159617B1 (en) Apparatus, system, and method for synchronizing replicated objects across network nodes in highly scaled environments
JP2010154130A (ja) 経路確認装置、経路確認システム、経路確認方法およびそのプログラム
JP5320571B2 (ja) ノード間データ応答システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150804

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20151030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160920

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: 20170207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170216

R150 Certificate of patent or registration of utility model

Ref document number: 6096795

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees