JP2006014310A - 冗長接続サービスの提供方法および装置 - Google Patents
冗長接続サービスの提供方法および装置 Download PDFInfo
- Publication number
- JP2006014310A JP2006014310A JP2005177225A JP2005177225A JP2006014310A JP 2006014310 A JP2006014310 A JP 2006014310A JP 2005177225 A JP2005177225 A JP 2005177225A JP 2005177225 A JP2005177225 A JP 2005177225A JP 2006014310 A JP2006014310 A JP 2006014310A
- Authority
- JP
- Japan
- Prior art keywords
- connection
- processor
- client
- server
- primary
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【解決手段】 本発明にかかる方法は、プライマリプロトコルスタックを使用して、クライアントからプライマリサーバへネットワーク接続を確立する(5)ことと、前記プライマリプロトコルスタックによって保持された接続状態情報を伝達する(10)ことと、前記プライマリサーバの健全性を監視する(15)ことと、前記プライマリサーバが不健全である場合に、前記伝達した接続状態情報によるクロスオーバメッセージを、前記確立したネットワーク接続を使用して前記クライアントにディスパッチする(20)こととを含む。
【選択図】図1
Description
あるコンピュータが別のコンピュータとデータを共有することを可能にするために、各コンピュータは、通常、コンピュータネットワークによって他のコンピュータと接続されている。
例えば、インターネットは、大量の計算プラットフォームが接続された広域コンピュータネットワークである。
あるコンピュータの別のコンピュータへの物理接続は、あるコンピュータが別のコンピュータによって提供されたデータにアクセスできる極めて複雑な構造の一部にすぎない。
あるコンピュータに記憶されたデータの別のコンピュータによるアクセスも、データの共有を統制するさまざまなパラダイムを必要とする。
あるコンピュータに記憶されたデータを、ネットワークに取り付けられた他のコンピュータと共有するのに使用される共通のパラダイムは、「クライアント−サーバ」モデルとして知られている。
クライアント−サーバモデルは、ネットワークに取り付けられたあるコンピュータを、クライアントから受信した要求に応答して情報を提供できるサーバと定義する。
通信プロトコルは、各コンピュータで実行されるアクティブなプロセス間のインターラクションを定義する。
例えば、あるコンピュータシステムで実行されるサーバプロセスは、通常、別のコンピュータシステムで実行されるクライアントプロセスとの通信を可能にするために、共通の通信プロトコルに準拠する。
現在広く普及して使用されている通信プロトコルの一例は、伝送制御プロトコル/インターネットプロトコル(TCP/IP)である。
プロトコルスタックは、通常、第1のコンピュータのプロセッサが実行可能なさまざまな命令シーケンスを含む。
プロセッサは、プロトコルスタックを実行すると、第2のコンピュータとの通信セッションに関与する。
通常、第2のコンピュータのプロセッサもプロトコルスタックを実行し、これによって、当該第2のコンピュータのプロセッサは第1のコンピュータとの通信セッションに関与することが可能になる。
各コンピュータのプロトコルスタックは、共通のプロトコル定義に従って形成しなければならないことを理解することができる。
プロトコルスタックという用語は、一般的なプロトコル定義が記述する階層化構造に由来する。
例えば、ほとんどのプロトコル定義は、さまざまな精巧レベルで通信サービスを定義する。
最もプリミティブなレイヤでは、プロトコル定義は、通常、データを実際に搬送する物理媒体を定義する。
プロトコル定義に含まれるよりプリミティブな通信サービスは、通常、接続レイヤサービス等のより高いレベルのサービスをサポートするのに使用される。
例えば、データの配信の保証といった、さらに高いレベルのサービスは、多くの場合、プロトコル定義に記述される。
これらのサービスのレイヤのそれぞれは、通常、プロトコルスタックに含まれる命令シーケンスモジュールの「スタック」のレイヤに対応する。
例えば、あるコンピュータで実行される第1のプロセスは、一般に、第2のプロセスとの接続を確立するためにプロトコルスタックを利用する。
通常、第2のプロセスは異なるコンピュータで実行される。
しかしながら、一般的なプロトコルスタックは、プロセスの実行現場を区別しない。
したがって、プロトコルスタックは、同じコンピュータで実行される2つのプロセス間の接続を確立するのに使用することができる。
このタイプの情報は、通常、プロトコルスタック状態変数テーブルに含まれる。
プロトコルスタック状態変数テーブルは、通常、プロトコルスタックを実行中のプロセッサによってアクセス可能なコンピュータ可読媒体に記憶される。
通信接続が確立されている場合、プロトコルスタックは、プロセッサによって実行されると、プロセッサに、数組の状態変数を使用して接続の状態を追跡させる。
各組の状態変数は、プロトコルスタックの特定のレイヤに対応する。
高可用性の要求をサポートするために、クライアント−サーバシステムでサーバとして動作するコンピュータシステムは、クラスタとして知られている単位で複製される。
このようなクラスタ内では、あるコンピュータが、通常、プライマリサーバとして指定される。
クラスタ内の残りの1つまたは2つ以上のコンピュータは、スタンバイサーバとして指定される。
通常動作時には、クライアントコンピュータで実行されるクライアントプロセスは、プライマリサーバで実行されるサーバプロセスと接続を確立しようとする。
この通信接続が確立されると、プライマリサーバで実行されるプロトコルスタックは、接続の状態を追跡する。
クライアントコンピュータで実行される対応したプロトコルスタックも、接続の状態を追跡する。
クライアントコンピュータで実行されるクライアントプロセスの見地からすると、プライマリサーバが故障したことを示す唯一の表示は、プライマリサーバで実行されるプロトコルスタックが維持する接続が応答しなくなることである。
理想的には、クライアントコンピュータは、接続が切断されたと判断すると、その接続の再確立を試みるべきである。
接続が再確立されると、クライアントは、通常、クラスタのスタンバイサーバがクライアント−サーバ関係におけるサーバの役割を引き継いだことに気付かない。
したがって、プライマリサーバからスタンバイサーバへの移行は、クライアントコンピュータには実質的にトランスペアレントである。
サーバコンピュータおよびクライアントコンピュータの双方において、接続の状態を追跡することに伴う複雑さのために、プライマリサーバが実際に故障した時点と、クライアントコンピュータが、接続の状態を勤勉に追跡することを通じて、クライアントプロセスとサーバプロセスとの間の接続が切断されたと判断する時点との間には、かなりの待ち時間が存在することがある。
スタンバイサーバへの本質的にシームレスな移行を行うことができるのは、クライアントコンピュータが、接続が切断されたと判断できる時だけである。
したがって、クライアントコンピュータがスタンバイサーバとの接続の再確立をさらに試みる前には、受け入れられないぐらい長い期間が終了することがある。
この長い遅延の結果、ユーザはフラストレーションを受ける可能性があり、プライマリコンピュータからスタンバイコンピュータへのサーバの役割の優雅な移行が無効にされる可能性がある。
プライマリサーバの健全性が監視される。
プライマリサーバが不健全になると、クロスオーバメッセージが、伝達された状態情報に従ってクライアントに送信される。
これらの図面および図において、同じ数字は同じ要素を示す。
この例の方法によると、冗長接続サービスは、ネットワーク接続がクライアントからプライマリサーバへ確立された時に提供される(ステップ5)。
この接続が存続する間は、プライマリプロトコルスタックによって保持されたこの接続に関する状態情報が伝達される(ステップ10)。
本方法の一変形によると、接続に関する状態情報は、高可用性サーバクラスタに含まれるスタンバイサーバに伝達されることが理解されるべきである。
また、本方法のさらに別の変形によると、接続に関する状態情報は、任意の監視デバイスに伝達されることも理解されるべきである。
プライマリサーバが不健全になった場合(ステップ15)、または、プライマリサーバが、それ以外で、高可用性サーバクラスタにおいてプライマリサーバの役割を行うことができない場合には、クロスオーバメッセージが既存の接続を使用してクライアントにディスパッチされる(ステップ20)。
本方法の一変形によると、クロスオーバメッセージのクライアントへのディスパッチは、前に受信した接続に関する状態情報に関連した接続識別子を使用することによって行われることに留意すべきである。
この代替的な方法によると、状態情報は、転送制御プロトコル/インターネットプロトコルの下で確立された接続の状態情報を伝達することによって伝達される(ステップ25)。
一代替例の方法によると、接続状態情報は、送信元アドレスを伝達することによって伝達される(ステップ30)。
さらに別の代替例の方法によると、送信元ポート番号が伝達される(ステップ35)。
さらに別の代替例の方法によると、宛先アドレスが伝達される(ステップ40)。
さらに別の代替例の方法によると、宛先ポート番号が伝達される(ステップ45)。
さらに別の例の代替的な方法によると、パケットシーケンス番号が伝達される(ステップ50)。
一例示の使用事例によると、本方法は、転送制御プロトコル/インターネットプロトコルに従って形成された接続に適用される。
この例示の使用事例によると、接続状態情報の伝達は、送信元アドレス、送信元ポート番号、宛先アドレス、宛先ポート番号、およびシーケンス番号のほぼ同時の伝達を含む。
本説明は、本方法をTCP/IPプロトコルと共に適用することを例示するが、本明細書に添付した特許請求の範囲は、例示の目的で本明細書に提示したどの例示の使用事例にもその範囲を限定するためのものではないことに留意すべきである。
一説明例の方法によると、クロスオーバメッセージは、転送制御プロトコルのリセットパケットとして実施される。
さらに別の説明例の方法によると、転送制御プロトコルのリセットパケットは、送信元アドレスに従ってリセットパケットをアドレス指定することによってクライアントにディスパッチされる(ステップ60)。
さらに別の例示の代替的な方法によると、転送制御プロトコルのリセットパケットは、送信元ポート番号に従ってリセットパケットをアドレス指定することによってクライアントにディスパッチされる(ステップ65)。
さらに別の代替的な例示の方法によると、転送制御プロトコルのリセットパケットは、宛先アドレスに従ってリセットパケットをアドレス指定することによってクライアントにディスパッチされる(ステップ70)。
さらに別の代替的な例示の方法によると、転送制御プロトコルのリセットパケットは、宛先ポート番号に従ってリセットパケットをアドレス指定することによってクライアントにディスパッチされる(ステップ75)。
さらに別の代替的な例示の方法によると、転送制御プロトコルのリセットパケットは、シーケンス番号を含むように形成される(ステップ80)。
本方法のこの変形は、TCP/IPプロトコルの下で確立された接続に直接適用可能であるが、本明細書に添付した特許請求の範囲は、その範囲を限定するためのものではない。
したがって、本方法は、接続を確立するのに使用される通信プロトコルのタイプにかかわらず適用することができ、本明細書に添付した特許請求の範囲はこの観点で解釈される。
この代替的な例示の方法によると、クロスオーバメッセージに含められたシーケンス番号は、クライアントが予想した次のシーケンス番号に等しくなるように設定される。
これは、プライマリプロトコルスタックからの接続状態情報の一部として受信されたシーケンス番号を基礎として使用することによって行われる。
接続状態情報の一部として受信したシーケンス番号は、通常、クライアントが予想した次のデータパケットを反映するようにインクリメントされる。
本明細書に提示した説明は、TCP/IPプロトコルと共に本方法を使用することを示すが、他の多くのプロトコルが、データパケットがある形のシーケンス識別子を含んだメカニズムを含む。
したがって、本明細書に添付した特許請求の範囲は、例えばTCP/IPといった、単なる例示の目的で本明細書に提示したどの特定のプロトコルにもその範囲または適用を限定するためのものではない。
本方法は、一例示の使用事例によると、サーバクラスタ90に適用される。
一般的なサーバクラスタ90には、少なくとも1つのプライマリサーバ95および1つまたは2つ以上のスタンバイサーバ100が存在する。
動作時において、プライマリサーバ95は、一般的なクライアント−サーバ関係におけるサーバの役割を実行する。
この一例示の使用事例によると、プライマリサーバ95および1つまたは2つ以上のスタンバイサーバ100はネットワーク110に接続している。
ネットワーク110には、クライアントコンピュータ105も接続されている。
一般的なクライアント−サーバ関係では、クライアントコンピュータ105は、ネットワーク110を使用して、プライマリサーバ95との接続を確立する。
図からは省略されているが、例えばルータといった、クラスタ内のサーバのすべてが単一のネットワークアドレスに対応することを可能にする他の補助機器がサーバクラスタに含まれる。
したがって、クライアントコンピュータ105は、サーバクラスタ90との接続を確立する必要がある場合に、クラスタ90における各コンピュータの個別のネットワークアドレスを知る必要はない。
クライアントコンピュータ105は、その内部に、プロセッサ、プロトコルスタック、およびクライアントプロセスを含んでいる。
クラスタ90の各サーバも、その内部に、プロセッサ、プロトコルスタック、およびサーバプロセスを含んでいる。
動作時に、クライアントコンピュータ105のプロセッサはクライアントプロセスを実行する。
クライアントプロセスは、通常、クライアントコンピュータ105に含まれるプロトコルスタックを実行することによって、クライアントコンピュータ105のプロセッサに、サーバクラスタ90に含まれるサーバコンピュータの1つで実行されるサーバプロセスとの接続を確立させる。
サーバコンピュータの1つにおけるプロセッサは、クライアントプロセスとサーバプロセスとの間のデータの転送を円滑にする対応したプロトコルスタックを実行することによって、その接続にサービスを提供する。
また、サーバプロセスも、サーバクラスタ90に含まれるサーバコンピュータの1つにおけるプロセッサによって実行される。
この例の実施の形態によると、プライマリサーバ201は、1つまたは2つ以上のプロセッサ200と、ネットワーク210へのデータ通信およびネットワーク210からのデータ通信を円滑にするネットワークインターフェース205とを備える。
また、プライマリサーバ201のこの例の実施の形態には、メモリ215も含まれる。
この例の実施の形態によると、スタンバイサーバ301は、1つまたは2つ以上のプロセッサ300と、ネットワーク210へのデータ通信およびネットワーク210からのデータ通信を円滑にするネットワークインターフェース305とを備える。
これらの機能モジュールのそれぞれは、プロセッサが実行できる命令シーケンスを備える。
機能モジュールを実施する命令シーケンスは、代替的な一実施の形態によると、プライマリサーバ201のそれぞれのメモリ(215)およびスタンバイサーバ301のメモリ(315)に記憶される。
「最低限、プロセッサに〜を実行させる」という用語およびその変形体は、プロセッサが特定の機能モジュール(すなわち命令シーケンス)を実行すると、プロセッサによって実行される機能をオープンエンドに列挙したものとしての機能を果たすように意図されたものであるとのアドバイスが読み手には与えられる。
したがって、特定の機能モジュールが、添付した特許請求の範囲で画定された機能に加え、更なる機能をプロセッサに実行させる一実施の形態は、本明細書に添付した特許請求の範囲に含まれることになる。
一例の実施の形態によると、プライマリサーバ201のプロセッサ200は、サーバモジュール225を実行する。
サーバモジュール225は、プロセッサ200によって実行されると、最低限、プロセッサ200に、クライアント要求(例えば、ネットワークから受信されたクライアント要求から)に応答させる。
プライマリサーバ201に含まれるプロトコルスタック220は、プロセッサ200によって実行されると、最低限、プロセッサ220に、プライマリサーバ201のこの例の実施の形態に含まれるネットワークインターフェース205を使用してクライアントとのネットワーク接続を確立させる。
この接続は、通常、クライアントコンピュータで実行されるクライアントプロセスと確立される。
なお、クライアントコンピュータおよびクライアントプロセスのいずれも図には示されていない。
通常、接続の確立を要求するのはクライアントプロセスである。
また、プロセッサ200は、接続モニタモジュール230も実行する。
接続モニタモジュール230は、プロセッサ200によって実行されると、最低限、プロセッサ200に、クライアント接続のステータスを伝達させる。
代替的な一実施の形態によると、接続モニタモジュール230は、最低限、プロセッサ200に、プロトコルスタック220を使用して接続リセットモジュール330への独立した接続を確立させる。
その後、この独立した接続は、接続リセットモジュール330への接続の状態に関する情報を伝達するのに使用される。
代替的な一実施の形態によると、プロトコルスタック220は、プロセッサ200によって実行させると、最低限、プロセッサ200に、接続の状態を記述した状態変数をプロトコルスタック状態変数テーブル221に記憶させる。
代替的な一実施の形態によると、プロトコル状態変数テーブル221は、プライマリサーバ201のこの例の実施の形態に含まれるメモリ215に記憶される。
したがって、接続モニタモジュール230は、プロセッサ200によって実行されると、さらに、最低限、プロセッサに、プロトコルスタック状態変数テーブル221から接続の状態に関する情報を抽出させる。
一例の代替的な実施の形態によると、接続モニタモジュール230は、最低限、プロセッサに、転送制御プロトコル状態情報を伝達させる。
さらに別の代替的な実施の形態によると、接続モニタモジュール230は、プロセッサ200によって実行されると、プロセッサ200に、接続に関するシーケンス番号を抽出させる。
したがって、接続モニタモジュール230は、さらに、最低限、プロセッサ200に、送信元アドレス、送信元ポート番号、宛先アドレス、宛先ポート番号、およびシーケンス番号の少なくとも1つを伝達させる。
なお、これらのすべては接続に関するものである。
接続モニタモジュール230の代替的な一実施の形態によると、最低限、プロセッサ200に、スタンバイサーバ301で実行される接続リセットモジュール330へこの情報を伝達させることが行われる。
さらに別の代替的な実施の形態によると、プロセッサ200が接続モニタモジュール230の実行を継続するので、この情報の伝達は、プロセッサ200が確立した、独立した通信接続によって行われる。
このような接続を促進する際に、プロセッサ200は、接続モニタモジュール230と、スタンバイサーバ301で動作している接続リセットモジュール330との間に接続を確立するためにプロトコルスタック220を実行する。
スタンバイサーバ301で実行される対応したプロトコルスタック320は、最低限、スタンバイサーバ301のプロセッサ300に、接続リセットモジュール330との接続をサポートさせる。
代替的な一実施の形態によると、オープン接続リスト331は、スタンバイサーバ301のこの例の実施の形態に含まれるメモリ315に保持される。
オープン接続リスト331は、接続状態情報を記憶するのに使用される。
代替的な一実施の形態によると、接続リセットモジュール330は、プロセッサ300によって実行されると、最低限、プロセッサ300に、送信元アドレス、送信元ポート番号、宛先アドレス、宛先ポート番号、およびシーケンス番号の少なくとも1つを接続状態情報として受信させる。
代替的な一実施の形態によると、このようにして受信された接続状態情報は、接続リセットモジュール330が認識しているあらゆる接続についての単一のレコード内のオープン接続リスト331に記憶される。
これは、一例の実施の形態によると、プライマリサーバ201で実行される接続モニタモジュール230から確立された接続を監視することによって行われる。
したがって、接続リセットモジュール330は、最低限、プロセッサ300に、接続モニタモジュール230から確立された接続を経由して受信した健全性メッセージに従ってプライマリサーバ201の健全性を判断させる。
この接続は、接続モニタモジュール230から接続リセットモジュール330へ接続状態情報を伝達するのに使用されたのと同じ接続とすることができる。
代替的な一実施の形態によると、クロスオーバメッセージは、転送制御プロトコルのリセットパケットを含む。
このリセットパケットは、送信元アドレス、送信元ポート番号、宛先アドレス、および宛先ポート番号の少なくとも1つに従ってクライアントにアドレス指定される。
通常、リセットパケットはシーケンス番号をさらに含む。
このシーケンス番号は、オープン接続リスト331に記憶された情報に従ってクライアントが予想した次のシーケンス番号を反映するように調整されたものである。
複数のオープン接続がオープン接続リスト331で特定された場合、接続リセットモジュール330は、プロセッサ300によって実行されると、さらに、最低限、プロセッサ300に、1つまたは2つ以上のクライアントプロセスにクロスオーバメッセージをディスパッチさせることが理解されるべきである。
このディスパッチは、プロセッサ300が接続リセットモジュール330を実行した時に、プロセッサ300が先に受信した状態情報によって特定された接続であって、オープン接続リスト331に記憶された接続を使用して行われる。
このような媒体の例には、ランダムアクセスメモリ、読み出し専用メモリ(ROM)、コンパクトディスク(CD)ROM、デジタル多用途ディスク(DVD)、フロッピィディスク、ハードディスクドライブ、および磁気テープが含まれるが、これらに限定されるものではない。
このコンピュータ可読媒体は、単独でまたは組み合わせて、スタンドアロン製品を構成することができ、汎用的な計算の少なくとも1つを、本明細書に提示した技法および教示に従って、冗長接続サービスを与えるデバイスに変換するのに使用される。
したがって、本明細書に添付した特許請求の範囲は、本明細書で説明した本方法および教示のすべての実行を可能にするこのような命令シーケンスで与えられたこのようなコンピュータ可読媒体を含むものである。
したがって、本明細書に添付した特許請求の範囲の真の趣旨および範囲は、このようなすべての代替的なもの、変更したもの、変形したもの、および均等なものを含むことが意図されている。
110・・・ネットワーク,
200・・・プロセッサ,
205・・・ネットワークインターフェース,
210・・・ネットワーク,
215・・・メモリ,
225・・・サーバ,
230・・・接続モニタ,
300・・・プロセッサ,
305・・・ネットワークインターフェース,
315・・・メモリ,
325・・・サーバ,
Claims (11)
- プライマリプロトコルスタックを使用して、クライアントからプライマリサーバへネットワーク接続を確立する(5)ことと、
前記プライマリプロトコルスタックによって保持された接続状態情報を伝達する(10)ことと、
前記プライマリサーバの健全性を監視する(15)ことと、
前記プライマリサーバが不健全である場合に、前記伝達した接続状態情報によるクロスオーバメッセージを、前記確立したネットワーク接続を使用して前記クライアントにディスパッチする(20)ことと
を含む冗長接続サービスを提供する方法。 - 前記接続状態情報を伝達することは、
転送制御プロトコルの状態情報を伝達する(25)こと
を含む
請求項1に記載の冗長接続サービスを提供する方法。 - 前記転送制御プロトコルの状態情報を伝達することは、
送信元アドレス(30)、送信元ポート番号(35)、宛先アドレス(40)、宛先ポート番号(45)および転送制御プロトコルのシーケンス番号(50)の少なくとも1つを伝達すること
を含む
請求項2に記載の冗長接続サービスを提供する方法。 - 前記クロスオーバメッセージをディスパッチすることは、
送信元アドレス(60)、送信元ポート番号(65)、宛先アドレス(70)、宛先ポート番号(75)および転送制御プロトコルのシーケンス番号(80)の少なくとも1つを含む、プライマリプロトコルスタックによって保持された接続状態情報に従ってアドレス指定されたクライアントに、転送制御プロトコルのリセットパケットをディスパッチすること
を含む
請求項1に記載の冗長接続サービスを提供する方法。 - 前記クロスオーバメッセージをディスパッチすることは、
プライマリプロトコルスタックによって保持された接続状態情報の一部として受信したシーケンス番号を基準として次のシーケンス番号(85)を含むクロスオーバメッセージをディスパッチすること
を含む
請求項1に記載の冗長接続サービスを提供する方法。 - 命令シーケンスを実行することができるプロセッサ(200)と、
1つまたは2つ以上の命令シーケンスを記憶することができるメモリ(215)と、
データネットワークと通信することができるネットワークインターフェース(205)と、
メモリ(215)に記憶された1つまたは2つ以上の命令シーケンスであって、
前記プロセッサ(200)によって実行されると、最低限、前記プロセッサ(200)に、クライアント要求に応答させるサーバモジュール(225)と、
前記プロセッサ(200)によって実行されると、最低限、前記プロセッサ(200)に、前記ネットワークインターフェースを使用してクライアントとのネットワーク接続を確立させ、さらに、最低限、前記プロセッサ(200)に、確立された接続を介して受信されたクライアント要求を前記サーバモジュールに転送させるプロトコルスタックモジュール(220)と、
前記プロセッサ(200)によって実行されると、最低限、前記プロセッサ(200)に、クライアント接続のステータスを伝達させる接続モニタモジュール(230)と
を含む1つまたは2つ以上の命令シーケンスと、
を備えるプライマリサーバ。 - 前記接続モニタモジュールは、最低限、前記プロセッサ(200)に、転送制御プロトコル状態情報(221)を伝達させることによって、前記プロセッサにクライアント接続のステータスを伝達させる
請求項6に記載のプライマリサーバ。 - 前記接続モニタモジュールは、送信元アドレス(30)、送信元ポート番号(35)、宛先アドレス(40)、宛先ポート番号(45)および転送制御プロトコルのシーケンス番号(50)の少なくとも1つを含む転送制御プロトコルの状態情報を、前記プロセッサ(200)に伝達させる
請求項7に記載のプライマリサーバ。 - 命令シーケンスを実行することができるプロセッサ(300)と、
1つまたは2つ以上の命令シーケンスを記憶することができるメモリ(315)と、
データネットワークと通信することができるネットワークインターフェース(305)と、
メモリ(315)に記憶された1つまたは2つ以上の命令シーケンスであって、
前記プロセッサ(300)によって実行されると、最低限、前記プロセッサ(300)に、クライアント要求に応答させるサーバモジュール(325)と、
前記プロセッサ(300)によって実行されると、最低限、前記プロセッサ(300)に、前記ネットワークインターフェースを使用してクライアントとのネットワーク接続を確立させ、さらに、最低限、前記プロセッサ(300)に、確立された接続を介して受信されたクライアント要求を前記サーバモジュールに転送させるプロトコルスタックモジュール(320)と、
前記プロセッサによって実行されると、最低限、前記プロセッサ(300)に、
プライマリプロトコルスタックによって保持された接続状態情報を受信させ、
前記受信された接続状態情報によって特定される接続を使用してクライアントにクロスオーバメッセージを伝達させる、
接続リセットモジュール(330)と
を含む1つまたは2つ以上の命令シーケンスと
を備えるスタンバイサーバ。 - 前記接続リセットモジュールは、最低限、前記プロセッサ(300)に、プライマリプロトコルスタックによって保持された、送信元アドレス(60)、送信元ポート番号(65)、宛先アドレス(70)、宛先ポート番号(75)および転送制御プロトコルのシーケンス番号(80)の少なくとも1つを含む受信された接続状態情報に従ってアドレス指定されたクライアントへ転送制御プロトコルのリセットパケットを伝達させることによって、前記プロセッサ(300)にクロスオーバメッセージを伝達させる
請求項9に記載のスタンバイサーバ。 - 前記接続リセットモジュールは、最低限、前記プロセッサ(300)に、プライマリプロトコルスタックによって保持された接続状態情報の一部として受信されたシーケンス番号を基準として次のシーケンス番号(85)を含むクロスオーバメッセージを伝達させることによって、前記プロセッサ(300)にクロスオーバメッセージを伝達させる
請求項9に記載のスタンバイサーバ。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/874,665 US20050283529A1 (en) | 2004-06-22 | 2004-06-22 | Method and apparatus for providing redundant connection services |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006014310A true JP2006014310A (ja) | 2006-01-12 |
Family
ID=35481869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005177225A Pending JP2006014310A (ja) | 2004-06-22 | 2005-06-17 | 冗長接続サービスの提供方法および装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20050283529A1 (ja) |
JP (1) | JP2006014310A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011518486A (ja) * | 2008-04-02 | 2011-06-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7376078B1 (en) | 2004-03-24 | 2008-05-20 | Juniper Networks, Inc. | Selective replay of a state information within a computing device |
US7417947B1 (en) | 2005-01-05 | 2008-08-26 | Juniper Networks, Inc. | Routing protocol failover between control units within a network router |
US8036105B2 (en) * | 2005-08-08 | 2011-10-11 | International Business Machines Corporation | Monitoring a problem condition in a communications system |
US20070030813A1 (en) * | 2005-08-08 | 2007-02-08 | International Business Machines Corporation | Monitoring a problem condition in a communications protocol implementation |
US8135006B2 (en) * | 2005-12-22 | 2012-03-13 | At&T Intellectual Property I, L.P. | Last mile high availability broadband (method for sending network content over a last-mile broadband connection) |
CN101022451B (zh) * | 2006-02-14 | 2014-07-23 | 杭州华三通信技术有限公司 | 数据通信中连接状态的同步方法及其应用的通信节点 |
TW200743355A (en) * | 2006-05-05 | 2007-11-16 | Hon Hai Prec Ind Co Ltd | Network device and time synchronizing method thereof |
CN101262369B (zh) * | 2008-03-28 | 2011-05-11 | 华为技术有限公司 | 调度服务器的主备实现方法及调度服务器 |
JP6575318B2 (ja) * | 2015-11-18 | 2019-09-18 | 富士通株式会社 | ネットワーク制御装置、クラスタシステムおよび制御プログラム |
CN105553879A (zh) * | 2015-12-18 | 2016-05-04 | 湖南大学 | 一种基于服务器的流调度方法 |
CN108572976A (zh) * | 2017-03-10 | 2018-09-25 | 华为软件技术有限公司 | 一种分布式数据库中数据恢复方法、相关设备和*** |
US10642657B2 (en) * | 2018-06-27 | 2020-05-05 | The Hong Kong Polytechnic University | Client-server architecture for multicore computer system to realize single-core-equivalent view |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5027269A (en) * | 1989-04-27 | 1991-06-25 | International Business Machines Corporation | Method and apparatus for providing continuous availability of applications in a computer network |
CA2167634A1 (en) * | 1995-01-23 | 1996-07-24 | Michael E. Fisher | Method and apparatus for maintaining network connections across a voluntary process switchover |
US5774668A (en) * | 1995-06-07 | 1998-06-30 | Microsoft Corporation | System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing |
US5754752A (en) * | 1996-03-28 | 1998-05-19 | Tandem Computers Incorporated | End-to-end session recovery |
US6272522B1 (en) * | 1998-11-17 | 2001-08-07 | Sun Microsystems, Incorporated | Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture |
US6377996B1 (en) * | 1999-02-18 | 2002-04-23 | International Business Machines Corporation | System for seamless streaming of data stored on a network of distributed primary and target servers using segmentation information exchanged among all servers during streaming |
US6539494B1 (en) * | 1999-06-17 | 2003-03-25 | Art Technology Group, Inc. | Internet server session backup apparatus |
US6941384B1 (en) * | 2000-08-17 | 2005-09-06 | International Business Machines Corporation | Methods, systems and computer program products for failure recovery for routed virtual internet protocol addresses |
US7076555B1 (en) * | 2002-01-23 | 2006-07-11 | Novell, Inc. | System and method for transparent takeover of TCP connections between servers |
US7251745B2 (en) * | 2003-06-11 | 2007-07-31 | Availigent, Inc. | Transparent TCP connection failover |
-
2004
- 2004-06-22 US US10/874,665 patent/US20050283529A1/en not_active Abandoned
-
2005
- 2005-06-17 JP JP2005177225A patent/JP2006014310A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011518486A (ja) * | 2008-04-02 | 2011-06-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法 |
Also Published As
Publication number | Publication date |
---|---|
US20050283529A1 (en) | 2005-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006014310A (ja) | 冗長接続サービスの提供方法および装置 | |
US11223690B2 (en) | Service management modes of operation in distributed node service management | |
US7225356B2 (en) | System for managing operational failure occurrences in processing devices | |
US7898941B2 (en) | Method and system for assigning a plurality of MACs to a plurality of processors | |
US9749415B2 (en) | Service management roles of processor nodes in distributed node service management | |
JP4900982B2 (ja) | サーバ・クラスタにおいてフェイルオーバを管理するための方法、フェイルオーバ・サーバ及びコンピュータ・プログラム | |
RU2380746C2 (ru) | Выравнивание сетевой нагрузки с помощью информации статуса хоста | |
US6918051B2 (en) | Node shutdown in clustered computer system | |
US6535990B1 (en) | Method and apparatus for providing fault-tolerant addresses for nodes in a clustered system | |
US20040199804A1 (en) | Method and apparatus for high availability distributed processing across independent networked computer fault groups | |
JP2004519024A (ja) | 多数のノードを含むクラスタを管理するためのシステム及び方法 | |
US20060221815A1 (en) | Failure-monitoring program and load-balancing device | |
JP2000293497A (ja) | クラスタ・ノード救援信号発生システム | |
JP2006209487A (ja) | 計算機システム、計算機、ストレージ装置及び管理端末 | |
US7734948B2 (en) | Recovery of a redundant node controller in a computer system | |
US7134046B2 (en) | Method and apparatus for high availability distributed processing across independent networked computer fault groups | |
JPH1185644A (ja) | 冗長構成システムの系切替制御方法 | |
EP1304840A2 (en) | Managing network connections in a system | |
JP2011203941A (ja) | 情報処理装置、監視方法、および監視プログラム | |
US7149918B2 (en) | Method and apparatus for high availability distributed processing across independent networked computer fault groups | |
RU2387002C2 (ru) | Выравнивание сетевой нагрузки с помощью управления соединением | |
JP2002344450A (ja) | 高可用性処理方法及びその実施システム並びにその処理プログラム | |
US7127637B2 (en) | Method and apparatus for high availability distributed processing across independent networked computer fault groups | |
JP2004248228A (ja) | サービス切替え装置、サービス提供ノード、通信システム、プログラムおよび該プログラムを格納した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070712 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071009 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071012 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071017 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080331 |