JP2011518486A - サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法 - Google Patents

サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法 Download PDF

Info

Publication number
JP2011518486A
JP2011518486A JP2011502320A JP2011502320A JP2011518486A JP 2011518486 A JP2011518486 A JP 2011518486A JP 2011502320 A JP2011502320 A JP 2011502320A JP 2011502320 A JP2011502320 A JP 2011502320A JP 2011518486 A JP2011518486 A JP 2011518486A
Authority
JP
Japan
Prior art keywords
node
client
server
fallover
notification
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.)
Granted
Application number
JP2011502320A
Other languages
English (en)
Other versions
JP5695558B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2011518486A publication Critical patent/JP2011518486A/ja
Application granted granted Critical
Publication of JP5695558B2 publication Critical patent/JP5695558B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • 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/2023Failover techniques
    • G06F11/203Failover techniques using migration

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

【課題】 サーバ故障が発生した場合の回復時間を改善するためのシステム及び方法を提供する。
【解決手段】 クライアント・ノード上で稼働するクライアント・アプリケーションのためのサーバとして機能しているサーバ・ノードの故障の通知をクライアント・アプリケーションに送信することによって、マルチノード・データ処理システムにおけるフォールオーバー状態の回復時間を改善するためのシステム及び方法が提供される。本発明においては、この通知は、サーバ・ノードのためのバックアップとして機能するフォールオーバー・ノードによって提供される。クライアント・アプリケーションは、サーバからの応答を長時間受信しないときには、サーバが故障したと見なし、再接続を開始する。本発明は、サーバ故障についてクライアント・アプリケーションに積極的に通知するシステム・レベル・ソフトウェアを有することにより、クライアント・アプリケーションによって開始された再接続を早める。これにより、クライアント・アプリケーションのためのより速い回復がもたらされる。
【選択図】 図1

Description

本発明は、一般に、マルチノード・データ処理システム及び方法を対象とする。より具体的には、本発明は、サーバ故障時における回復時間を改善するためのシステム及び方法を対象とする。さらにより具体的には、本発明は、故障ノードによる性能不足に基づく故障の判定を待つのではなく、フォールオーバー・ノードが故障通知を提供するシステムを対象とする。本明細書及び特許請求の範囲において用いられる場合、「ノード」及び「サーバ」という用語は同じ意味で用いられるが、サーバは幾つかのノードを含む場合があることを理解されたい。
HACMP(高可用性クラスタ管理プログラム)のようなクラスタウェア・アプリケーションの中には、一次サーバが故障したときにバックアップ・サーバに自動的に再接続するほどインテリジェントなクライアント・アプリケーションが多数存在する。これは、クライアントが対話していた一次サーバのIP(インターネット・プロトコル)アドレスをバックアップ・サーバに動的に移動させることによって可能になる。従って、サーバ故障に応答してクライアント・アプリケーションを打ち切る及び/又は再起動する必要はない。クラスタウェアのこの能力は、本明細書では「フォールオーバー」と呼ぶ。しかしながら、問題は、一次サーバが故障した直後、クライアントとサーバとの間に存在するTCP(伝送制御プロトコル)接続が終了するまでに、ある程度時間がかかることである。これは、主に、クライアント・アプリケーションがサーバ故障に気付かず、そのため、クライアント・アプリケーションは、TCP再送カウンタが満了するまで再送し続け、最後にTCP接続を終了させるからである。従って、クライアント・アプリケーションが、バックアップ・サーバへの再接続を試みる前に、サーバ故障イベントを認識するのにかなり時間がかかることがわかる。
従って、上記から、当技術分野において、本明細書の上記で説明された欠点及び制約を克服する必要性が存在することがわかる。
上述された遅延は、クライアントに対して適切な時期に故障イベントを通知することによって回避される。クライアントは、サーバ故障についてのこの通知を受信するとすぐに、再接続することが好ましい。本発明は、クライアント・アプリケーションによるクラスタ内の1つ又は複数のバックアップ・サーバへの再接続のプロセスを早めるための機構を提供することが好ましい。サーバ(故障したと推定されるノード)とクライアントとの間に存在するTCP接続の全てを迅速に終了するために、クライアントは、サーバが故障するとすぐに、そのTCP接続についてのRST(リセット・パケット)を受信することが好ましい。このRSTパケットが期待されるノードが故障したかどうかにかかわらず、本発明の方法は、このRSTパケットを依然として生成することが好ましい。これを実現するために、フォールオーバーが発生するとすぐに、フォールオーバー・ノード(バックアップ・サーバ)がこのRSTパケットをクライアントに送信することが好ましい。実際には、フォールオーバー・ノードは、クライアントに対して故障ノードであるように見せかける。
本発明の一実施形態によると、フォールオーバー状態の回復を改善するための方法は、クライアント・ノード上で稼働するクライアント・アプリケーションのためのサーバとして機能するサーバ・ノードの故障の通知をクライアント・アプリケーションに送信するステップを含む。この通知は、サーバ・ノードのためのバックアップとして機能するフォールオーバー・ノードによって提供される。
好ましくは、フォールオーバー・ノードは、故障の通知を送信するためにサーバ・ノードになりすます。好ましい実施形態によると、データ・パケットが、クライアント・アプリケーションから受信される。このパケットにアクセスして伝送情報を見つけ出し、この伝送情報を用いて、サーバ・ノードの故障の通知をクライアント・アプリケーションに送信する。
好ましい実施形態によると、データ・パケットは、サーバ・ノードに対するデータ・パケットの最初の伝送の確認応答がクライアント・アプリケーションによって受信されなかったときに、クライアント・アプリケーションによって再送されたものである。一実施形態においては、フォールオーバー・ノードは、フォールオーバー・ノードがサーバ・ノードを引き継いだことをクライアント・ノードに知らせる。
さらなる特徴及び利点が、本発明の技術を通して理解される。本発明の他の実施形態及び態様は、本明細書において詳細に説明され、特許請求の範囲に記載される発明の一部とみなされる。
本明細書における本発明の種々の実施形態によって示される好ましい対象の記述は、これらの対象のいずれか又は全てが、本発明の最も一般的な実施形態又は本発明のより特定的な実施形態のいずれかにおいて、個別に又はまとめて本質的な特徴として提示されることを暗示又は示唆することを意味するものではない。
本発明が用いられる基本的なノード構成環境の間の接続を示すブロック図であり、本発明の好ましい実施形態の動作において生じる一連の事象も示す。 本発明の好ましい実施形態のプロセスにおいて典型的に生じる一連のイベントを示すフロー・チャートである。
本発明の好ましい実施形態を、単なる例として図面を参照しながらここで説明する。
前述した通り、クライアントは、例えばTCPプロトコルを用いてサーバと通信することができる。サーバが故障した場合に、クライアントは、故障が発生したことに気付かない場合がある。クライアントが送出したパケットに対する何らかの確認応答がない場合には、クライアントは、TCP再送カウンタが満了するまで再送し続けることになる。これは、しばらく時間がかかる場合もある。従って、クライアントとサーバとの間の接続を強制的に終了させてリセットすることが望ましい。TCPプロトコルは、RESET(RST)オプションを有する。2つの主体(party)が通信しているときに、第1の主体が、他方の主体が通信を停止したことに気付いた場合には、第1の主体は、RSTを送信して他方の主体に強制的に接続をリセットさせることができる。しかしながら、ここで大事な点は、クライアントは、かなり長い時間、問題が発生していることに気付かない場合があることである。クライアントは、問題が発生していることに最終的に気付いたときに、フォールオーバー・ノードに再接続を試みて、再接続されることになる。
好ましい実施形態によると、本発明は、クライアントが通信しているサーバ・ノードを監視するバックアップ(又はフォールオーバー)サーバを利用する。フォールオーバー・ノードは、サーバ・ノードが故障したことに気付いたときに、サーバ・ノードのアドレスを引き継ぐ。この時点で、バックアップ・サーバは、引き継がれたIPアドレス上の全てのトラフィックを見て、どのトラフィックが、サーバ・ノード上で稼働するように用いられていたがIPアドレスとともにバックアップ・ノード上で再起動されたアプリケーションに向かう(即ち、アドレス指定される)ものであるかを調べる。バックアップ・サーバは、いずれかのトラフィックを見つけた場合には、サーバ・ノードに「なりすます(masquerades)」。
しかしながら、フォールオーバー・ノードは、サーバ・ノードによって維持されていた接続に関する知識を持っていない。フォールオーバー・ノードは、どれがそれらの接続を維持していたのか、又は、それらがどのようなタイプの接続を維持していたのかを知らない。従って、フォールオーバー・ノードは、サーバ・ノードがどれと接続していたのかを推定し、次に、このようなクライアントに、フォールオーバー・ノードに接続するように(RSTオプションを用いて)「促す」ことができる必要がある。当然ながら、これは、サーバ・ノードに再接続されていると思っているこのようなクライアントのいずれにとっても透過的である。
このように機能させるためには、クライアントは、RSTパケットがサーバ・ノードから来ていることを信じる必要がある。TCP接続においては、すべてのパケットは、受信機において伝送の最後にデータが適切に並べられることを保証するシーケンス番号及び「ACK」番号を有する。いずれかの時点で、TCPは、正しくないシーケンス番号又はACK番号を持つパケットを受信した場合には、直ちにそのパケットを廃棄する。従って、いずれかのアプリケーション「A」が、他の2つのアプリケーション「B」と「C」との間に存在するTCP接続上でパケットを送信することができるように、アプリケーション「A」は、クライアントに送信されるTCPシーケンスにおける次のパケットのためのシーケンス番号、ACK番号及びTCPヘッダ情報を見つけ出さなければならない。
同様に、バックアップ・サーバ(フォールオーバー・ノード)は、RST(リセット)パケットをクライアントに送信することができるように、RSTパケットのための適切なTCPヘッダ情報を見つけ出さなければならない。TCP接続においては、通信している主体のいずれかが、FINパケット(これは、TCPにおいて伝送の終了を示すために用いられる)又はRSTパケットを送信することによって接続を終了させることなく停止したときには、他方の主体は、再び古いパケットを再送し始める。
好ましい実施形態においては、フォールオーバー・ノードは、サーバのアドレスを引き継いでいる。従って、フォールオーバー・ノードは、故障ノードからIPアドレスを(有効にすることにより)獲得するとすぐに、幾つかの再送パケットをクライアントから受信する。バックアップ・サーバ(フォールオーバー・ノード)は、クライアントから受信したばかりの再送パケットを用いて、シーケンスにおける次のパケットのTCPヘッダ情報を取得する。このTCPヘッダ情報によって、バックアップ・サーバは、例えば、RSTパケットがどのシーケンス番号を用いるべきか、及びRSTパケットはどこへ送信されるべきかを決定することができる。
生のIPソケットを用いると、いずれのアプリケーションも、パケットを自作して、2つの異なるアプリケーション間に存在するTCP接続上でそれを送信することができる。この新たに作られたパケットは、受信機がそのパケットをピア・アプリケーションによって送信されたものであると考えるので、受信機にとっては本物のパケットのように見える。本発明においては、HACMPのようなクラスタウェアは、生のIPソケットを用いてRSTパケットを自作し、それをクライアントに送信する。このRSTパケットは、古いTCP接続を直ちに中断し、従って、クライアントは、迅速に再接続することができる。
本発明においては、既存のクライアント・アプリケーション又はTCPスタック自体のどちらも変更する必要はない。TCP接続が、TCP接続の時間切れによって終了するか、RSTパケットによって終了するかにかかわりなく、クライアント・アプリケーションは、それを突然の終了と見なし、再接続を試みる。
好ましい実施形態によると、図1は、本発明を用いた場合の一連のイベント又は状況を示す。具体的には、円「1」は、クライアント・ノード100がサーバ・ノード200と通信している初期状態を示す。円「2」は、サーバ・ノード200が故障し、フォールオーバー・ノード300へのフォールオーバーが存在するイベントを示す。円「3」は、フォールオーバー・ノード300が、クライアント・ノード100に、サーバ・ノード200が故障したこと及びフォールオーバー・ノード300が通信機能を引き継いでいることを伝えるイベントを示す。円「4」は、クライアント・ノード100が現在はフォールオーバー・ノード300に接続されている最終状態を示す。例示されたプロセスによって、アプリケーション・レベルのソフトウェアが典型的にはノード故障に気付かないため着信するのに時間がかかる、ノード200に関する故障の表示を、クライアント・ノード100上で稼働するアプリケーションが待つ必要がなくなる。システム・レベルの速さ及び優先度で実行されるフォールオーバー・プロセスは、より高速で行われ、TCP接続のプロトコル構造に伴うこの事実によって、クライアント・ベースのサーバ・アプリケーションに対するより高速の通知が可能になる。
図2は、本発明のプロセスにおいて行われる典型的な一連のイベントを示す。プロセスは、サーバ・ノード200の故障によって開始される(ステップ101)。システム・レベルのソフトウェアは、相対的に高速にこの故障を検出し、フォールオーバー(又は、バックアップ)ノード300へフォールオーバーを行う(ステップ102)。フォールオーバー・ノード300は、次に、クライアント・ノード100に通知を行う(ステップ103)。クライアント・ノード100は、次に、ノード200への接続を終了する(ステップ104)。
本発明はまた、本明細書に記載されたプロセスを実現するための機械可読命令の形態のソフトウェアを含む。さらに、本発明は、記載されたプロセスを実現するためにメモリ内部に配置されたこのような命令を有するデータ処理システムを含む。
本発明は、本発明の特定の好ましい実施形態に従って本明細書において詳細に説明されてきたが、当業者ならば、本発明に多くの修正及び変更をもたらすことができる。従って、特許請求の範囲は、本発明の主旨及び範囲内にあるものとして全てのこうした修正及び変更を含むように意図される。

Claims (42)

  1. フォールオーバー状態の回復を改善するための方法であって、
    クライアント・ノード上で稼働するクライアント・アプリケーションのためのサーバとして機能しているサーバ・ノードの故障の通知を前記クライアント・アプリケーションに送信するステップであって、前記通知は、前記サーバ・ノードのためのバックアップとして機能するフォールオーバー・ノードによって提供される、ステップ、
    を含む方法。
  2. 前記サーバ・ノードへの接続を終了するステップをさらに含む、請求項1に記載の方法。
  3. 最初は前記サーバ・ノードと関連付けられていたIPアドレスを前記フォールオーバー・ノードにおいて有効にするステップをさらに含む、請求項1又は請求項2に記載の方法。
  4. 前記フォールオーバー・ノードにおいて前記クライアント・ノードの再送パケットを受信するステップをさらに含む、請求項3に記載の方法。
  5. 前記フォールオーバー・ノードにおいてTCPヘッダ情報を取得するステップをさらに含む、請求項4に記載の方法。
  6. 前記ヘッダ情報は、パケットのシーケンス番号を含む、請求項5に記載の方法。
  7. 前記フォールオーバー・ノードにおいてリセット・パケットを構成するステップをさらに含む、請求項5又は請求項6に記載の方法。
  8. 前記リセット・パケットの構成は生のソケットを用いる、請求項7に記載の方法。
  9. 前記リセット・パケットを前記クライアント・ノード上で稼働する前記アプリケーションに伝送するステップをさらに含む、請求項7又は請求項8に記載の方法。
  10. 前記クライアント・ノードから前記サーバ・ノードへの接続を終了するステップをさらに含む、請求項7、請求項8又は請求項9に記載の方法。
  11. 前記アプリケーションによって再接続を試みるステップをさらに含む、請求項10に記載の方法。
  12. 前記サーバ・ノード及び前記クライアント・ノードは、伝送制御プロトコルを介して通信する、前記請求項のいずれかに記載の方法。
  13. 前記フォールオーバー・ノードは、前記サーバ・ノードが故障したことを、前記クライアント・ノード上で稼働する前記アプリケーションに知らせる、前記請求項のいずれかに記載の方法。
  14. 前記フォールオーバー・ノードは、前記フォールオーバー・ノードが前記サーバ・ノードを引き継いだことを前記クライアント・ノードに知らせるように動作可能である、請求項13に記載の方法。
  15. 前記サーバ・ノードの故障によって開始される、前記請求項のいずれかに記載の方法。
  16. 前記通知は、伝送制御プロトコル接続を通して提供される通知より早く提供される、前記請求項のいずれかに記載の方法。
  17. 前記フォールオーバー・ノードは、前記故障の通知を送信するために前記サーバ・ノードになりすまし、
    前記クライアント・アプリケーションからデータ・パケットを受信するステップと、
    前記データ・パケットにアクセスして伝送情報を見つけ出すステップと、
    を含み、
    故障の通知を送信する前記ステップは、前記伝送情報を用いて前記サーバ・ノードの故障の通知を前記クライアント・アプリケーションに送信するステップを含む、前記請求項のいずれかに記載の方法。
  18. 前記データ・パケットは、前記サーバ・ノードに対する前記データ・パケットの最初の伝送の確認応答が前記クライアント・アプリケーションによって受信されなかったときに、前記クライアント・アプリケーションによって再送されたものである、請求項17に記載の方法。
  19. クライアント・ノード上で稼働するクライアント・アプリケーションのためのサーバとして機能しているサーバ・ノードの故障の通知を前記クライアント・アプリケーションに送信するためのプログラム命令を、少なくとも3つのノードについてのメモリ内に含む、前記少なくとも3つのノードを含むマルチノード・データ処理システムであって、前記通知は、前記サーバ・ノードのためのバックアップとして機能するフォールオーバー・ノードによって提供される、システム。
  20. 前記サーバ・ノードへの接続を終了するための手段をさらに含む、請求項19に記載のシステム。
  21. 最初は前記サーバ・ノードと関連付けられていたIPアドレスを前記フォールオーバー・ノードにおいて有効にするための手段をさらに含む、請求項19又は請求項20に記載のシステム。
  22. 前記フォールオーバー・ノードにおいて前記クライアント・ノードの再送パケットを受信するための手段をさらに含む、請求項21に記載のシステム。
  23. 前記フォールオーバー・ノードにおいてTCPヘッダ情報を取得するための手段をさらに含む、請求項22に記載のシステム。
  24. 前記ヘッダ情報は、パケットのシーケンス番号を含む、請求項23に記載のシステム。
  25. 前記フォールオーバー・ノードにおいてリセット・パケットを構成するための手段をさらに含む、請求項23又は請求項24に記載のシステム。
  26. 前記リセット・パケットの構成は生のソケットを用いる、請求項25に記載のシステム。
  27. 前記リセット・パケットを前記クライアント・ノード上で稼働する前記アプリケーションに伝送するための手段をさらに含む、請求項25又は請求項26に記載のシステム。
  28. 前記クライアント・ノードから前記サーバ・ノードへの接続を終了するための手段をさらに含む、請求項25、請求項26又は請求項27に記載のシステム。
  29. 前記アプリケーションによって再接続を試みるための手段をさらに含む、請求項28に記載のシステム。
  30. 前記サーバ・ノード及び前記クライアント・ノードは、伝送制御プロトコルを介して通信する、請求項19から請求項29までのいずれかに記載のシステム。
  31. 前記フォールオーバー・ノードは、前記サーバ・ノードが故障したことを、前記クライアント・ノード上で稼働する前記アプリケーションに知らせる、請求項19から請求項29までのいずれかに記載のシステム。
  32. 前記フォールオーバー・ノードは、前記フォールオーバー・ノードが前記サーバ・ノードを引き継いだことを前記クライアント・ノードに知らせるための手段を含む、請求項31に記載のシステム。
  33. 前記方法は、前記サーバ・ノードの故障によって開始される、請求項19から請求項32までのいずれかに記載のシステム。
  34. 前記通知は、伝送制御プロトコル接続を通して提供される通知より早く提供される、請求項19から請求項33までのいずれかに記載のシステム。
  35. 前記フォールオーバー・ノードは、前記故障の通知を送信するために前記サーバ・ノードになりすまし、
    前記クライアント・アプリケーションからデータ・パケットを受信するための手段と、
    前記データ・パケットにアクセスして伝送情報を見つけ出すための手段と、
    を含み、
    故障の通知を送信するための前記手段は、前記伝送情報を用いて前記サーバ・ノードの故障の通知を前記クライアント・アプリケーションに送信するための手段を含む、請求項19から請求項34までのいずれかに記載のシステム。
  36. 前記データ・パケットは、前記サーバ・ノードに対する前記データ・パケットの最初の伝送の確認応答が前記クライアント・アプリケーションによって受信されなかったときに、前記クライアント・アプリケーションによって再送されたものである、請求項35に記載のシステム。
  37. 前記サーバ・ノードと、前記クライアント・ノード上で稼働する前記アプリケーションとは、最初は伝送制御プロトコル接続を通して接続される、請求項19から請求項36までのいずれかに記載のシステム。
  38. クライアント・ノード上で稼働するクライアント・アプリケーションのためのサーバとして機能しているサーバ・ノードの故障の通知を前記クライアント・アプリケーションに送信するための命令を含む機械可読媒体であって、前記通知は、前記サーバ・ノードのためのバックアップとして機能するフォールオーバー・ノードによって提供される、機械可読媒体。
  39. 前記サーバ・ノードと、前記クライアント・ノード上で稼働する前記アプリケーションとは、最初は伝送制御プロトコル接続を通して接続される、請求項38に記載の機械可読媒体。
  40. 前記フォールオーバー・ノードは、前記故障の通知を送信するために前記サーバ・ノードになりすまし、
    前記クライアント・アプリケーションからデータ・パケットを受信するための命令と、
    前記データ・パケットにアクセスして伝送情報を見つけ出すための命令と、
    を含み、
    故障の通知を送信するための前記命令は、前記伝送情報を用いて前記サーバ・ノードの故障の通知を前記クライアント・アプリケーションに送信するための命令を含む、請求項38又は請求項39に記載の機械可読媒体。
  41. 前記データ・パケットは、前記サーバ・ノードに対する前記データ・パケットの最初の伝送の確認応答が前記クライアント・アプリケーションによって受信されなかったときに、前記クライアント・アプリケーションによって再送されたものである、請求項40に記載の機械可読媒体。
  42. コンピュータ上で稼働するときに、請求項1から請求項18までのいずれかに記載の方法を行うように適合されたプログラム・コード手段を含む、コンピュータ・プログラム。
JP2011502320A 2008-04-02 2009-03-10 サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法 Active JP5695558B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/061,185 2008-04-02
US12/061,185 US7971099B2 (en) 2008-04-02 2008-04-02 Method for enabling faster recovery of client applications in the event of server failure
PCT/EP2009/052803 WO2009121689A1 (en) 2008-04-02 2009-03-10 Method for enabling faster recovery of client applications in the event of server failure

Publications (2)

Publication Number Publication Date
JP2011518486A true JP2011518486A (ja) 2011-06-23
JP5695558B2 JP5695558B2 (ja) 2015-04-08

Family

ID=40929637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011502320A Active JP5695558B2 (ja) 2008-04-02 2009-03-10 サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法

Country Status (8)

Country Link
US (1) US7971099B2 (ja)
EP (1) EP2274898B1 (ja)
JP (1) JP5695558B2 (ja)
KR (1) KR101419579B1 (ja)
CN (1) CN102047643B (ja)
BR (1) BRPI0911284B1 (ja)
CA (1) CA2706579C (ja)
WO (1) WO2009121689A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017098606A (ja) * 2015-11-18 2017-06-01 富士通株式会社 ネットワーク制御装置、クラスタシステムおよび制御プログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9450804B2 (en) * 2009-09-03 2016-09-20 At&T Intellectual Property I, L.P. Anycast aware transport for content distribution networks
US8555105B2 (en) * 2010-04-12 2013-10-08 International Business Machines Corporation Fallover policy management in high availability systems
US9591080B2 (en) 2012-09-17 2017-03-07 Tencent Technology (Shenzhen) Company Limited Method of establishing a network socket with a data server
CN103685398B (zh) * 2012-09-17 2015-08-19 腾讯科技(深圳)有限公司 通信连接建立方法及通信系统
CN104426703B (zh) * 2013-09-11 2018-08-31 深圳市东方博雅科技有限公司 一种服务器升级方法及系统
US20150215158A1 (en) * 2014-01-28 2015-07-30 Qualcomm Incorporated Discriminating or prioritizing users during failover in a voip system
CN105808391A (zh) * 2016-04-05 2016-07-27 浪潮电子信息产业股份有限公司 一种热替换cpu节点的方法及装置
CN106357744A (zh) * 2016-08-29 2017-01-25 浪潮(北京)电子信息产业有限公司 Smb客户端重连集群的方法、系统及smb客户端
WO2018176336A1 (zh) * 2017-03-30 2018-10-04 华为技术有限公司 数据传输方法和通信设备
WO2020104992A1 (en) * 2018-11-21 2020-05-28 Telefonaktiebolaget Lm Ericsson (Publ) N+1 redundancy for virtualized services with low latency fail-over

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087912A1 (en) * 2000-12-29 2002-07-04 International Business Machines Corporation Highly available TCP systems with fail over connections
JP2003084996A (ja) * 2001-09-11 2003-03-20 Hitachi Ltd ホストコンピュータの切替方法
JP2004032224A (ja) * 2002-06-25 2004-01-29 Hitachi Ltd サーバ引継システムおよびその方法
JP2006014310A (ja) * 2004-06-22 2006-01-12 Hewlett-Packard Development Co Lp 冗長接続サービスの提供方法および装置
JP2006215635A (ja) * 2005-02-01 2006-08-17 Fujitsu Ltd 中継プログラム、中継方法および中継装置
JP2007312227A (ja) * 2006-05-19 2007-11-29 Canon Inc 情報処理システム及びその制御方法、並びに該制御方法を実行するプログラム
EP1892921A2 (en) * 2000-10-26 2008-02-27 Intel Corporation Method and sytem for managing distributed content and related metadata

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0537903A2 (en) 1991-10-02 1993-04-21 International Business Machines Corporation Distributed control system
US5805785A (en) 1996-02-27 1998-09-08 International Business Machines Corporation Method for monitoring and recovery of subsystems in a distributed/clustered system
US6189111B1 (en) 1997-03-28 2001-02-13 Tandem Computers Incorporated Resource harvesting in scalable, fault tolerant, single system image clusters
US6023706A (en) 1997-07-11 2000-02-08 International Business Machines Corporation Parallel file system and method for multiple node file access
US5963963A (en) 1997-07-11 1999-10-05 International Business Machines Corporation Parallel file system and buffer management arbitration
US6223231B1 (en) * 1998-11-12 2001-04-24 Sun Microsystems, Inc. Method and apparatus for highly-available processing of I/O requests while application processing continues
US6523130B1 (en) 1999-03-11 2003-02-18 Microsoft Corporation Storage system having error detection and recovery
US6651242B1 (en) * 1999-12-14 2003-11-18 Novell, Inc. High performance computing system for distributed applications over a computer
US6675217B1 (en) 2000-07-06 2004-01-06 Microsoft Corporation Recovery of cluster consistency following failover
US20020107966A1 (en) 2001-02-06 2002-08-08 Jacques Baudot Method and system for maintaining connections in a network
US7076555B1 (en) * 2002-01-23 2006-07-11 Novell, Inc. System and method for transparent takeover of TCP connections between servers
US7984157B2 (en) * 2002-02-26 2011-07-19 Citrix Systems, Inc. Persistent and reliable session securely traversing network components using an encapsulating protocol
US7197660B1 (en) 2002-06-26 2007-03-27 Juniper Networks, Inc. High availability network security systems
US7152180B2 (en) * 2002-12-06 2006-12-19 Ntt Docomo, Inc. Configurable reliable messaging system
US20040153700A1 (en) * 2003-01-02 2004-08-05 Nixon Mark J. Redundant application stations for process control systems
US7251745B2 (en) * 2003-06-11 2007-07-31 Availigent, Inc. Transparent TCP connection failover
US20050086342A1 (en) 2003-09-19 2005-04-21 Andrew Burt Techniques for client-transparent TCP migration
US7386624B2 (en) * 2003-10-23 2008-06-10 International Business Machines Corporation Method, system and article for dynamic real-time stream aggregation in a network
US7401256B2 (en) * 2004-04-27 2008-07-15 Hitachi, Ltd. System and method for highly available data processing in cluster system
US20050254508A1 (en) * 2004-05-13 2005-11-17 Nokia Corporation Cooperation between packetized data bit-rate adaptation and data packet re-transmission
US8122280B2 (en) * 2004-08-26 2012-02-21 Open Invention Network, Llc Method and system for providing high availability to computer applications
US20060129666A1 (en) * 2004-12-09 2006-06-15 International Business Machines Corporation Selective device reset method for device sharing with fail-over
US7844691B2 (en) 2004-12-30 2010-11-30 Xstor Systems, Inc. Scalable distributed storage and delivery
US7668962B2 (en) * 2005-02-07 2010-02-23 Symantec Operating Corporation System and method for connection failover using redirection
US9009327B2 (en) * 2007-08-03 2015-04-14 Citrix Systems, Inc. Systems and methods for providing IIP address stickiness in an SSL VPN session failover environment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1892921A2 (en) * 2000-10-26 2008-02-27 Intel Corporation Method and sytem for managing distributed content and related metadata
US20020087912A1 (en) * 2000-12-29 2002-07-04 International Business Machines Corporation Highly available TCP systems with fail over connections
JP2003084996A (ja) * 2001-09-11 2003-03-20 Hitachi Ltd ホストコンピュータの切替方法
JP2004032224A (ja) * 2002-06-25 2004-01-29 Hitachi Ltd サーバ引継システムおよびその方法
JP2006014310A (ja) * 2004-06-22 2006-01-12 Hewlett-Packard Development Co Lp 冗長接続サービスの提供方法および装置
JP2006215635A (ja) * 2005-02-01 2006-08-17 Fujitsu Ltd 中継プログラム、中継方法および中継装置
JP2007312227A (ja) * 2006-05-19 2007-11-29 Canon Inc 情報処理システム及びその制御方法、並びに該制御方法を実行するプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017098606A (ja) * 2015-11-18 2017-06-01 富士通株式会社 ネットワーク制御装置、クラスタシステムおよび制御プログラム
US10122635B2 (en) 2015-11-18 2018-11-06 Fujitsu Limited Network controller, cluster system, and non-transitory computer-readable recording medium having stored therein control program

Also Published As

Publication number Publication date
CN102047643B (zh) 2015-01-28
CN102047643A (zh) 2011-05-04
JP5695558B2 (ja) 2015-04-08
WO2009121689A1 (en) 2009-10-08
KR20100135855A (ko) 2010-12-27
US20090254775A1 (en) 2009-10-08
EP2274898A1 (en) 2011-01-19
US7971099B2 (en) 2011-06-28
BRPI0911284A2 (pt) 2016-07-26
KR101419579B1 (ko) 2014-07-14
CA2706579A1 (en) 2009-10-08
CA2706579C (en) 2016-07-19
EP2274898B1 (en) 2014-04-30
BRPI0911284B1 (pt) 2021-03-02

Similar Documents

Publication Publication Date Title
JP5695558B2 (ja) サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法
US7929422B2 (en) Method of moving a transport connection among network hosts
US6934875B2 (en) Connection cache for highly available TCP systems with fail over connections
US6871296B2 (en) Highly available TCP systems with fail over connections
US7532577B2 (en) Managing transmission control protocol (TCP) connections
JP4851585B2 (ja) クライアント装置と複数のサーバ装置からなるシステムの通信方法、その通信プログラム、クライアント装置及びサーバ装置
US20150222444A1 (en) System and method for reliable multicast data transport
US7797565B1 (en) System and method for maintaining communication protocol connections during failover
EP1859594B1 (en) Server side tftp flow control
US20110134930A1 (en) Packet-based networking system
JP2004032224A (ja) サーバ引継システムおよびその方法
US20070240209A1 (en) Session persistence on a wireless network
US8867375B2 (en) Failback to a primary communications adapter
US20200412600A1 (en) High availability using multiple network elements
EP3276891B1 (en) Techniques for establishing a communication connection between two network entities via different network flows
CN108234087B (zh) 数据传输方法及发送端
WO2008071370A1 (en) Virtualization and high availability of network connections
CN106230747B (zh) 恢复tcp连接序列号的方法、装置及系统
Cisco SNASW
JP7120678B1 (ja) 通信処理装置、通信処理システム、障害通知方法及び障害通知プログラム
Liqing et al. TCP optimization implementation of a small embedded system
CN117640530A (zh) 集群网络的低延迟可靠数据传输方法和装置
CN107306223B (zh) 数据传输系统、方法及装置
CN112019499A (zh) 一种握手过程中对连接请求的优化方法和系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130401

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131107

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140106

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20140124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150206

R150 Certificate of patent or registration of utility model

Ref document number: 5695558

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250