JP3930743B2 - 耐故障性プラットフォームにおいてネットワーク接続を提供する方法 - Google Patents
耐故障性プラットフォームにおいてネットワーク接続を提供する方法 Download PDFInfo
- Publication number
- JP3930743B2 JP3930743B2 JP2002020221A JP2002020221A JP3930743B2 JP 3930743 B2 JP3930743 B2 JP 3930743B2 JP 2002020221 A JP2002020221 A JP 2002020221A JP 2002020221 A JP2002020221 A JP 2002020221A JP 3930743 B2 JP3930743 B2 JP 3930743B2
- Authority
- JP
- Japan
- Prior art keywords
- connection
- standby
- state
- active
- network
- 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
Links
Images
Classifications
-
- 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 Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Hardware Redundancy (AREA)
- Small-Scale Networks (AREA)
Description
【発明の属する技術分野】
本発明は耐故障性コンピューティングに関し、より具体的には、たとえばインターネットプロトコル(IP)ネットワークにおいて、耐故障性プラットフォームによって確立されるネットワーク接続を維持する耐故障性コンピューティングに関する。
【0002】
【従来の技術】
インターネットがさらに普及し、一般的になってくると、それに応じて、毎日、終日稼動し続けなければならないミッション・クリティカルなアプリケーションに対応するために高い可用性を提供するインターネット装置の必要性も増す。ネットワーク内の1つの故障箇所、すなわちゲートウエイおよびファイアウォールのような構成要素は、高い信頼性をもって構成される必要があり、冗長な装置および種々のタイプのクラスタ化システムで強化されている。しかしながら、耐故障性のTCP/IPベースのシステムでは、効率的なフェイルオーバ処理が実施されないと、メッセージトラフィックの損失、およびネットワークセッションの再初期化といった問題が生じる。
【0003】
たとえば、H.323ゲートキーパーのハードウエア故障に対処するために、同じソフトウエアを動作させる2つの冗長ゲートキーパーを採用することができる。それらのゲートキーパーはいずれも、全く同じように、IPネットワークに接続され、同じデータを受信し、同じデータを生成する。
【0004】
ゲートキーパーの一方に故障が生じた場合、故障の直前にはいずれのゲートキーパーにおいてもソフトウエア状態が同じであるので、何ら切り換えの問題を生じさせることなく、他方のゲートキーパーが単独で作業を継続する。しかしながら、このような装置はコストがかかり、いずれのシステムにおいてもソフトウエアが全く同じように動作するため、その解決策は完全に満足できるものではない。すなわち、ゲートキーパーの一方に現れたソフトウエア障害は、他方のゲートキーパーにも現れる。
【0005】
米国特許第6,078,957号は、それぞれが自身の特定の接続を持つ1組のクラスタメンバを備えたクラスタアセンブリを提案する。各クラスタメンバは、別のクラスタメンバが動作不能になっていることを認識する手段と、動作不能となったクラスタメンバによって実施されていたタスクのうちのいくつかを再びバランスするための手段とを備える。動作不能になったクラスタメンバがクラスタマスターである場合には、他のクラスタメンバは直ちに、クラスタマスターのタスクを、別のクラスタメンバに再度割当てる。
【0006】
【発明が解決しようとする課題】
あるクラスタメンバが故障した場合にその接続を移すために、各クラスタメンバは、他の各クラスタメンバに、そのクラスタメンバが責任を担っていた接続に関する、記憶された不可欠な状態情報を転送する。しかしながら、このシステムは、IPネットワークと直接通信するアプリケーションを提供する耐故障性プロセスの問題には対処しない。したがって、上記特許は、クラスタ要素から他のクラスタ要素に接続が移るとき、接続される端末から見て、そのようなアプリケーションが依然として同じ段階のままであることを保証するための手段を提供しない。
【0007】
本発明は主に、IPエンドポイントとの接続を有するシステム、およびそのような接続を処理するための方法を提供することを目的とする。それにもかかわらず、ここに記載される技術は、たとえばTCP(伝送制御プロトコル)接続、OSI TP(トランザクション処理)接続、またはSCTP(ストリーム制御伝送プロトコル)を用いるシステムにおける、任意のタイプの通信ネットワークまたは通信プロトコルに適用されることができることは理解されよう。
【0008】
【課題を解決するための手段】
簡単に言うと、本発明は、アクティブ状態のプロセス、スタンバイ状態のプロセス、およびスタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え能力とを有する耐故障性プラットフォームにおいて、ネットワーク接続を提供する方法を提供する。この方法は、アクティブプロセスからスタンバイプロセスに、アクティブプロセスのネットワーク接続の状態データを複製するステップと、スタンバイプロセスについて、該複製されたデータで更新された対応するスタンバイネットワーク接続を維持するステップと、スタンバイプロセスからアクティブ状態への移行中、ネットワーク上の接続を閉じる(クローズする)ことなく、アクティブシステムのネットワーク接続を非活動化するステップと、ネットワークアドレスをスタンバイプロセスに転送するステップと、該ネットワークアドレスで対応するスタンバイ接続をアクティブ状態にするステップとを含み、それにより、移行したスタンバイプロセスが、ネットワーク上の接続を再開する必要性をなくす。
【0009】
このようにしてスタンバイ接続を維持することにより、ネットワーク接続のリモートエンドに対して高いトランスペアレンシー(透過性)を保持しつつ、フェイルオーバの達成を可能にする。
【0010】
スタンバイプロセスのネットワークアドレスを活動化するステップは、スタンバイ接続が活動化される前に実行される。アクティブプロセスの接続を監視し、状態データの複製を起動するステップは、その接続のアイドル状態中に実行される。
【0011】
接続の状態データを複製するステップは、アクティブプロセスがその接続を使用することができる間に実行されることができるようにするのが有利である。
【0012】
第2の態様によれば、本発明は、アクティブ状態のプロセス、スタンバイ状態のプロセス、およびスタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え手段とを有する耐故障性プラットフォームを提供する。このプラットフォームは、アクティブ状態に関連付けられた接続から状態データを抽出する第1の接続マネージャと、アクティブプロセスに関連付けられたネットワーク接続の状態データをスタンバイプロセスに複製する複製マネージャと、スタンバイプロセスについて、該複製されたデータで更新された対応するスタンバイネットワーク接続を維持する第2の接続マネージャとを備える。最後に、切り換え手段が、スタンバイプロセスのアクティブ状態への移行の一部として、ネットワーク上の接続を閉じることなくアクティブシステムのネットワーク接続を非活動化し、ネットワークアドレスをスタンバイプロセスに転送し、該ネットワークアドレスで対応するスタンバイ接続を活動化するように構成され、それにより、移行したスタンバイプロセスが、ネットワーク上で接続を再開する必要性をなくす。
【0013】
好ましい実施形態では、複製マネージャ、および/または第1および/または第2の接続マネージャは、個別のソフトウエアモジュールの形態をとる。
【0014】
本発明の第3の態様は、上記の汎用タイプの耐故障性プラットフォームを提供し、そのプラットフォームでは、ネットワーク接続は、関連するプロセスがその接続を閉じるか、またはそのプロセスが終わる度に、ネットワーク上でそれらの接続が閉じられる第1の状態と、関連するプロセスがその接続を閉じるか、またはそのプロセスが終了するときに、ネットワーク上でそれらの接続が閉じられない第2の状態とを有する。このプラットフォームは、プログラムの制御下で、接続が第1の状態と第2の状態との間で切り換えられるようにし、さらに、接続状態情報を抽出して、該接続状態情報の設定を可能にするアプリケーションプログラミングインターフェースを有する。接続状態情報は、ネットワークアドレスをそのスタンバイ接続に転送することにより、ネットワーク上で接続を再開することを必要とすることなく、アクティブプロセスから複製された状態情報で更新された、維持されるスタンバイネットワーク接続が、移行したスタンバイプロセスによって用いられることを可能にするような情報である。
【0015】
【発明の実施の形態】
本発明の他の特徴、目的および利点は、本発明の好ましい実施形態の以下に記載される説明を通して、および図面を通して、当業者には明らかになるであろう。
【0016】
図1を参照すると、接続110および210を介していずれもIPネットワーク300に接続されることができる2つのハードウエア装置100および200を含む耐故障性コンピュータシステムが示される。耐故障性システムはたとえば、米国特許第5,978,933号に記載されるタイプの耐故障性プラットフォーム、またはヒューレット・パッカード社によって市販されるOpenCallINプラットフォームに基づくことができる。そのようなシステムでは、故障検出のためのアプリケーション監視および故障に起因するアクションは、構成要素、詳細には、当業者によく知られている高可用性(HA)コントローラ101、201によって管理される。図2は、HAコントローラ101、201によって用いられる状態機械と、HP OpenCall INプラットフォームによって用いられるHAプロセスとを示す。
【0017】
図2では、図示される状態のうちのいくつか、すなわちブート状態300と、同期状態310と、活動化状態320と、停止状態330は、過渡(非常駐)状態である。そのプロセスは、最終的な安定状態に達する前の中間ステップとしてのみ、それらの状態を通過する。安定状態は、アクティブ状態340、ホットスタンバイ状態350、およびコールドスタンバイ状態360である。そのプロセスは、任意の状態でダウンすることがあるが、簡略化するために、ダウンへの状態遷移は図2には示されない。1つの装置上のOpenCall耐故障性コントローラは、ピア装置200上の対応するプロセスの状態を考慮に入れて、装置100上で実行されるHAプロセスの状態遷移を調整する。
【0018】
図1の装置100および200は、ローカルエリアネットワーク(LAN)400によって互いにリンクされ、それぞれ、その接続に最も近い層からその接続から最も離れた層への少なく4つのソフトウエア層、120〜150および220〜250、すなわちインターネットプロトコル(IP)層120、220、伝送制御プロトコル(TCP)層130、230、オペレーティングシステム層140、240、およびアプリケーション層150、250を含む。
【0019】
アプリケーション層150、250は、関連する特定用途のアプリケーションにしたがって種々のアプリケーションレベルのサービスを実行する。たとえば、1つのアプリケーションレベルの機能は、プリペイド通信に対するアプリケーションにおいて、通信時間のプリペイド度数を更新することができる。各装置100および200において、プロセスはアクティブ状態またはスタンバイ状態のいずれかであることができる。アクティブプロセスは、任意の特定の時間においてアプリケーションサービスを提供するプロセスである。スタンバイプロセスは、アクティブプロセスに障害が生じた場合に引き継ぎの役割を果たす。アクティブ装置100のアプリケーション150はデータを処理し、一方、スタンバイ装置200のアプリケーション250の状態は、それ自体がよく知られているやり方で、ローカルネットワーク400を通して耐故障性コントローラによって更新される。
【0020】
本システムでは、システムのうちの1つのシステムのTCP接続のみ、たとえば、装置100のTCP接続110のみが任意のある時点でアクティブ状態にある。他のシステム上のTCP接続、たとえば210のTCP接続は、その接続がデータを全く受信も送信もできないように構成されるという意味で、スタンバイ接続である。したがって、スタンバイ装置200は、物理的にはネットワークには接続されるが、インターネットプロトコルネットワーク300からは見えない。
【0021】
ここで、2つの装置間でのアプリケーション切り換え中に、確立されたTCP接続を保持するための技術について説明する。用いられる一般的なアプローチは、その接続を同期した状態にしておくために、アクティブ接続とスタンバイ接続との間でデータおよび状態情報を伝達するための複製機構をアクティブアプリケーション150に設けることである。言い換えると、アプリケーション150は、TCPコンテキストを、アクティブ装置100からスタンバイ装置200に移動させる。
【0022】
以下の説明では、リモート側、すなわちエンドポイントが、装置100と装置200との間の切り換え後にその接続を再開する必要がなければ、TCP接続は保持されるものと見なされる。ここで用いられる用語「アクティブTCP接続」、ここでは接続110は、パケットを送受信することのできる接続のことを指す。用語「スタンバイTCP接続」、ここでは接続210は、活動化されるまでパケットを全く送受信することができない接続のことを指す。詳細には、これは、その接続が開始または終了されるときに、この接続を提供しているTCPスタック130、230によって、アプリケーションのためにパケットが送信されることはなく、そのTCP接続のリモートエンドに、生存しているパケットが全く送信されないことを意味する。
【0023】
図3は、複製マネージャモジュール160、260および接続マネージャモジュール170、270を用いて、接続管理および複製機能を、アプリケーションコア150、250から分離する好ましい構造を示す。当然、他の実施形態では、接続マネージャ機能および複製マネージャ機能がアプリケーション自体に、またはオペレーティングシステムに組み込まれることができることは理解されよう。
【0024】
接続マネージャ170、270は、接続110、210を開始し、構成し、その状態を抽出し、その状態を更新し、かつその接続を終了するために、アプリケーション150、250によって用いられる単一インターフェースである。その際、接続マネージャ170、270は、アプリケーション150、250のコアから接続保持の実施の細部を隠すことができ、ここに記載される接続保持機能を使用することを望む他のアプリケーションによって再使用されることができる。
【0025】
また接続マネージャ170、270は、1つのアプリケーションのすべての保持される接続を管理するのに好ましい場所でもある。例として、接続マネージャは、すべてのアプリケーションコアモジュール150、250の内部の詳細に影響を及ぼすことなく、かつそれを知る必要なく、ある時点におけるすべての接続の終了、非活動化、または活動化を容易にする。
【0026】
複製マネージャ160、260は、スタンバイにどのようにデータが送信されるかの詳細と、そのようなデータの肯定応答受信の複雑な手順とを隠すようにして、アプリケーションのための抽象複製サービスを提供することができる。
【0027】
図4は、1つの接続が有することができる種々の状態と、アクティブ側100およびスタンバイ側200の両方において取り得る状態遷移とを示す状態図である。図4に示される状態および遷移は、アプリケーション150の視点からのTCP接続を表す。
【0028】
その接続の各状態は、その状態に付随した以下の特性を有することができる。
【0029】
P:ある状態において“P”があるとき、これは、その接続が保持された接続(TCP接続保持拡張のうちのいずれにも対応しない標準的なTCP接続とは対照的に)であること示す。図4の3つのすべての状態は保持された状態であり、他のタイプの接続は示されていない。
【0030】
A:ある状態において“A”があるとき、これは、その状態がアクティブな(活動中の)接続であることを示す。アクティブ状態はデータ転送を実行することができ、F/NFフラグによって示されるように終了動作中に特定の挙動を持つ。
【0031】
S:ある状態において“S”があるとき、これは、その状態がスタンバイ接続であることを示す。接続が閉じられるときであっても、そのような接続上ではパケットは送信されない。
【0032】
F:ある状態において“F”があるとき、これは、TCP接続がローカル的に閉じられるときには必ず、該TCP接続はそのネットワーク上においてTCPピアで終了されることを示す。状態370の場合のように、Aインジケータと組み合わせられるときには、その接続は標準的なTCP接続のように動作する。
【0033】
NF:ある状態において“NF”があるとき、これは、アプリケーションによって明示的に要求される際、またはプロセス終了時に、TCP接続がローカル的に閉じられるときには、該TCP接続がピアTCPで終了されないことを示す。そのローカルソケットは、暗黙のうちにパージされる。このオプションは、リモートTCPピアが接続の終了を起動する場合には機能しない。その場合には、現在のオプション値が何であろうと、その接続は有効に終了される。状態390の場合のように、Aインジケータと組み合わせられるときには、その接続は、同期した対応するスタンバイ接続を有するアクティブ接続である。
【0034】
アクティブアプリケーション150が開始し、スタンバイアプリケーション250が開始され同期する前に、そのアプリケーションが開いた(開始した)すべての保持された接続がアクティブ状態(状態370)になる。アクティブアプリケーション150が終わった場合には、TCPは、ネットワーク上のリモート側への接続を閉じる。この挙動によって、TCPスタックは、リモート側への接続を閉じることができる。なぜなら、接続処理を引き継ぐためのスタンバイアプリケーションが存在しないためである。
【0035】
以下により詳細に記載されることになる同期段階中に、スタンバイアプリケーションは、保持されたスタンバイ接続を形成し、アクティブ側から接続状態情報を複製する。同期段階が正常に完了すると、アクティブアプリケーションは、そのすべての保持された接続を状態390に移し、保持されたTCP接続が処理終了時に閉じられないようにする。これにより、切り換え後に、スタンバイアプリケーションがその接続処理を引き継ぐことができるようになる。アプリケーションが接続を閉じることを欲した場合には、そのアプリケーションはその接続を状態370に戻さなければならない。
【0036】
スタンバイ接続は状態380にある。そのような接続が活動化されると、その接続は状態370に移される。新しいスタンバイシステムが再開され同期すると、そのような接続は状態390に移されることができる。
【0037】
アクティブアプリケーションでは、socket()、connect()、bind()、listen()、accept()コールを含む標準的なソケットコールを用いて、ソケットが形成される。これが図5(a)に示される。アクティブアプリケーション150はアクティブ接続110を管理する。2つの装置間で複製される必要がある情報の大部分は、両方の装置100および200上に設けられるTCPスタックモジュール130、230によって保持される。
【0038】
その後、アクティブ側の接続に生じている変化は、その接続の持続時間にわたって、スタンバイ側に繰返し複製される。複製は、パケットが受信または送信される度に行われる必要はない。むしろ、その状態が安定している接続持続時間中の選択された時点においてのみ、この情報を複製することがより効率的である。その接続によってトラフィックが処理されていない(すなわち、その接続がアイドル状態である)とき、接続状態は安定している。待ち状態のアウトバウンドデータが存在せず、アプリケーションによって読み取られるのを待っている受信データが存在しない場合には、TCP接続110はアイドル状態であると見なされる。そのようなアイドル接続は、ここに記載される技術を用いて保持されることができる。
【0039】
アプリケーション150が、その接続状態が安定している(すなわち、その接続がアイドル状態である)と判断したとき、該アプリケーションは、TCPスタック130から各接続の状態を抽出し、それをスタンバイアプリケーション250に送信することにより、対応するスタンバイ接続に接続110を複製することを決定することができる。スタンバイアプリケーション250はソケットを形成し、それをスタンバイソケットに構成し、そのソケットを、アクティブアプリケーションから受信された接続状態情報で更新する。最後に、スタンバイアプリケーションは、アクティブアプリケーションに肯定応答ACKを送信する。このプロセスが図5(b)に示される。接続状態データは、アクティブ装置100のアプリケーション層150によって、OS層140を介してTCPスタック130から取得され、その後、LAN400を介して、スタンバイ装置200のアプリケーション層250に送信される。
【0040】
この期間中、アクティブアプリケーションは、スタンバイシステムからACKを受信するのを待つことはなく、接続は単に状態370においてアクティブ状態のままであることが好ましいことに留意されたい。ACKが受信されると、アクティブアプリケーションはソケットを構成し、それを図4の状態390に設定することにより、決してネットワーク上の接続を閉じないようにする。スタンバイ200において接続の複製が失敗した場合に、これがアクティブ接続110に影響を及ぼさないことが許容可能とされる。その場合、アプリケーションは、スタンバイ肯定応答を待って妨害されることがないので、複製が非常に速く行われる。他の状況では、確立された接続110の保持を促進し、その接続がスタンバイシステム200上で保持されることができた場合でもその接続が該アプリケーションによってのみ用いられることを確実にするために、ACKを待つことが好ましい場合がある。
【0041】
アクティブアプリケーション150が接続110を閉じることを決めたとき、最初に、その接続を状態370に設定することにより、ネットワーク上においてその接続をピアで終了するようにその接続を構成し、その後に該接続を閉じなければならない。その後、この終了動作は、そのスタンバイ接続210を閉じるスタンバイアプリケーション250に複製される。このプロセスが図5(c)に示される。
【0042】
その接続がリモート側によって閉じられる場合には、TCPスタック130は、標準的な接続の場合と同様に動作する。アクティブアプリケーション150は終了動作をスタンバイアプリケーション250に複製し、その後、その接続を閉じる。これが図5(d)に示される。
【0043】
アクティブアプリケーション150が終わる場合には、スタンバイアプリケーション250がアクティブ状態になる前に、該アクティブアプリケーションに割り当てられたIPアドレスがスタンバイホストに移される。装置110は、1つのIPアドレスのみを有することが可能である。しかしながら、各アクティブアプリケーション150は、そのアプリケーションのプロセスによって用いられる、自身に専用のIPアドレスを有することが好ましい。そのアプリケーションのIPアドレスは、アクティブアプリケーション150を提供するアクティブ装置100上でのみ有効である。切り換え中に、IPアドレスは、古いアクティブ装置100から新しいアクティブ装置200に移される(すなわち、そのIPアドレスは古いアクティブ装置上で非活動化され、新しい装置上で活動化される)。そのIPアドレスは、任意の時点で1つの装置においてのみアクティブ状態である。
【0044】
1つのMACアドレスから別のMACアドレスにIPアドレスを転送するための技術は当業者にはよく知られており、HP Opencall製品は、これを行うためのIPアドレスマネージャ構成要素を含む。そのような技術の記載は、たとえば、米国特許第6,049,825号に見いだすことができる。
【0045】
HAプロセス状態機械は、切り換え中に、IPアドレスが装置上でアクティブ状態になった後にのみ、スタンバイプロセスがアクティブ状態になり、IPアドレスが装置上で非活動化された後にのみ、アクティブプロセスがスタンバイ状態になるように、IPアドレスの移動と同期する。これは、IPアドレスマネージャとアプリケーションとの間で通信を行うことによって、または任意のスタンバイ接続を活動化する前にアプリケーション200にIPアドレス状態を検査させることによって、確実に実行されることができる。標準的なAPIコールを、IPアドレス状態を検査するために利用することができることは理解されよう。
【0046】
プロセス終了時に、カーネルは、すべてのそのファイル記述子を閉じる。すべての複製されたアクティブ接続が、ピアで接続を終了しないように設定されたので(状態390)、TCPスタック130は、その接続が閉じられていることを該接続のリモート側に示さない。
【0047】
同時に、高可用性コントローラによって障害を通知されているスタンバイシステムは、その装置上でIPアドレスが活動化されるまで待機する。その後、その装置は、そのスタンバイ接続を活動化し、そのリスン(listen)接続を開始する。活動化の後、新しいスタンバイシステムが再開され同期するまで、その接続は状態370に留まらなければならない場合があることに留意されたい。これらのプロセスが図6(a)に示されており、好ましい実施形態では、それらのプロセスは、図2に示される活動化状態320中に行われる。
【0048】
スタンバイソケットがアクティブ状態になると、TCP接続は、そのTCPピアと依然として同期しているか否かを判断する。最後の同期点以来アクティブTCP接続がデータを受信していた場合には、スタンバイTCPは同期から外れるであろう。その場合、該TCP接続は閉じられ、スタンバイアプリケーションによって再形成される。
【0049】
手動切り換え(すなわち、プロセス終了によって引き起こされない切り換え)の場合、たとえば予防保守の場合、または、ソフトウエアあるいはハードウエアアップグレードを可能にするために、アクティブアプリケーション100はそのすべての接続を非活動化し、スタンバイ状態になる。一方、スタンバイアプリケーション200はすべての接続を活動化し、アクティブ状態になる。この手動切り換えは図6(b)に示されており、好ましい実施形態では、そのプロセスは、図2に示される「停止」状態330において行われる。
【0050】
リスン(listen)するために用いられるソケットは、それらが接続の一部を形成しないので保持される必要がないことに留意されたい。アクティブプロセスによって確立されるリスンソケットを処理するために、スタンバイプロセスは2つの方策のうちの1つの採用することができる。第1に、スタンバイプロセスは、アクティブプロセス状態に切り替わるときに、リスンソケットを再形成することができる。これは、ソケット機能シーケンス、socket()、connect()、bind()、listen()、accept()を実行することにより行うことができる。一般に、このアプローチは、最も安全で、かつ最も簡単であると考えられる。しかしながら、代替的に、スタンバイプロセスがリスンソケットを形成し、そのリスンソケットを任意のIPアドレス(IPアドレス=INADDR_ANY)および指定されたポート番号にバインドすることができる。これは、リスンソケットを再形成するステップを節約することになるが、スタンバイプロセスは、依然としてスタンバイモードにあるとき(その装置上でアクティブ状態にあるIPアドレスについて)、接続要求の可能性を制御しなければならないであろう。
【0051】
TCP接続110が、切り換えが生じた時点でアイドル状態でない場合には、その接続110は終了され、スタンバイアプリケーションによって再形成される必要がある。
【0052】
以下により詳細に記載されるように、好ましい実施形態では、アプリケーションが接続特性を制御し、アクティブ側の状態を抽出し、スタンバイ側の状態を更新できるようにするために、拡張されたソケットアプリケーション・プログラミング・インターフェース(API)が設けられる。このAPIはたとえば、アプリケーションとは個別の、アプリケーションによってコールされる接続マネージャ170、270および複製マネージャ160、260のようなモジュールの形で、都合のいいように実装されることができる。図1に示されるIP層120、220またはTCP層130、230を基点としたソフトウエア階層を参照すると、このAPIは、アプリケーション150、250とオペレーティングシステム140、240との間に配置されることができる。各接続110の状態は、具体的にはTCPデータとOSデータとを含む。
【0053】
好ましい実施形態は、標準のHP−UXソケットおよび関連するコールへの追加からなる。具体的には、getsockopt()コールは、同様の接続/確立されたソケットを構築するのに必要とされるTCP状態情報を戻すために拡張される。これは、アクティブまたはスタンバイソケット上で実行されることができ、そのソケットにもその接続にも影響を及ぼさない読出し専用動作である。状態370から390への、または状態390から370へのソケットを設定するのに同じコールが用いられる。
【0054】
状態情報の特質は、プラットフォームに応じて変化し、ネットワーク上で接続を再開することを必要とせずに、活動化されるスタンバイプロセスによって用いられるべき情報で、スタンバイソケットが更新されることを可能にするように選択される。
【0055】
setsockopt()コールは、アクティブソケットから取得されるTCP状態情報でスタンバイソケットを再同期できるようにするために拡張される。これは、スタンバイソケットにおいてのみ行われることができ、すべての必要とされる層に影響を及ぼす。setsockopt()コールは、socket()後にスタンバイソケット接続を形成するために実行される。これは、アクティブ接続をスタンバイ状態にする(非活動化する)ために、アクティブ接続上でコールされる。これは、スタンバイ接続をアクティブ状態にするために、スタンバイ接続上でコールされる。
【0056】
図3に戻ると、好ましい実施形態では、接続マネージャ170は、1つの場所で、すべての開始している接続110と、その状態とを追跡する。接続マネージャ170は、同時に複数の接続110上で動作を実行することができ、たとえば、すべての接続を閉じ、すべての接続を複製し、すべての接続を活動化/非活動化することができる。接続マネージャ170は、それが複製されているか否かを示すために、接続110において特定のフラグを設定することができ、その際、接続テーブル上をただ単にループすることにより、未だ複製されていない接続を複製する。接続マネージャ170は、アプリケーション150によって用いられている接続の複製、活動化、抽出、または状態取得の間の長い期間の間に、アプリケーション150を妨害するのを避けるために、マルチスレッドであるのが好ましい。
【0057】
アプリケーション150はTCP接続状態を抽出し、それを、スタンバイアプリケーション250に送信する。その後、スタンバイアプリケーション250は、状態データを、スタンバイ装置200のTCP層230に送信する。
【0058】
ここに記載されるソフトウエア障害フェイルオーバ技術は、個別のスタンバイ装置を用いて実装することに制限されない。むしろ、記載される方法は、同じ装置上のスタンバイアプリケーションに対するアプリケーションソフトウエアのフェイルオーバにも同様に適用することができる。アプリケーションモニタが、そのアプリケーション自体に障害があるものと判断することができる場合には、ローカルにフェイルオーバを行うことを選択することができる。
【0059】
2つのプロセスを含み、各プロセスが同様のサービスアプリケーション命令セットを提供し、各プロセスがIPアドレスを有し、各プロセスがインターネットプロトコルエンドポイントを有する一連のアクティブ接続を提供することができるシステムが記載される。このシステムは、他のプロセスにおいてアクティブ接続を提供しない間に、1つのアクティブプロセスの一連のアクティブ接続を提供するための手段を備える。このシステムは、そのアクティブプロセスから他のアクティブプロセスに、アクティブ接続の状態データを含むデータと、アクティブプロセスのサービスアプリケーションの命令セットの状態データを含むデータとを複製するための手段を備える。アクティブ接続の状態データを含むデータは、更新されたスタンバイ接続を該他のプロセスが維持できるようにするためのものであり、アクティブプロセスのサービスアプリケーションの命令セットの状態データを含むデータは、該他のプロセスの命令セットが更新された状態に維持されるようにするためのものである。このシステムは、該アクティブプロセスが利用できなくなったとき、アクティブプロセスのIPアドレスを非活動化し、他のプロセスのIPアドレスを活動化するための手段を備える。
【0060】
本発明の特定の実施形態が記載されてきたが、本発明は、そのような記載される特定の構成に限定されるべきではない。本発明は、特許請求の範囲によってのみ制限される。特許請求の範囲自体は、請求される本発明の周辺を指示することを意図しており、本明細書によって開示される例示的な実施形態のみを請求するものと解釈されるのではなく、言語そのものが許容するのと同じ広さで解釈されることを意図している。
【0061】
本発明は、以下の実施態様を含む。
【0062】
(1)アクティブ状態のプロセス、スタンバイ状態のプロセス、および前記スタンバイ状態のプロセスをアクティブ状態に移行させる切り換え能力を有する耐故障性プラットフォームにおいてネットワーク接続を提供する方法であって、
アクティブプロセスからスタンバイプロセスに、該アクティブプロセスのネットワーク接続の状態データを複製するステップと、
前記スタンバイプロセスについて、前記複製されたデータで更新された対応するスタンバイネットワーク接続を維持するステップと、
前記アクティブ状態への前記スタンバイプロセスの移行中に、前記アクティブシステム内の前記ネットワーク接続を、該ネットワーク上の該接続を閉じることなく非活動化し、前記スタンバイプロセスにネットワークアドレスを転送し、該ネットワークアドレスで前記対応するスタンバイ接続を活動化するステップと、を含み、
前記移行したスタンバイプロセスが前記ネットワーク接続を再開する必要がないようにする、耐故障性プラットフォームにおいてネットワーク接続を提供する方法。
【0063】
(2)前記スタンバイプロセスの前記ネットワークアドレスを活動化するステップは、前記スタンバイ接続が活動化される前に実行される、上記(1)に記載の方法。
(3)前記アクティブプロセスの前記接続を監視するステップと、該接続のアイドル状態が識別されたことに応答して前記状態データの複製を起動するステップと、を含む、上記(1)または(2)に記載の方法。
(4)接続の状態データを複製する前記ステップは、前記アクティブプロセスが前記接続を用いることができる間に実行される、上記(3)に記載の方法。
(5)それぞれ異なるネットワークアドレスを有するアクティブプロセスおよびスタンバイプロセスの複数の対を維持するステップを含む、上記(1)から(4)のいずれかに記載の方法。
(6)前記ネットワークアドレスはIPアドレスである、上記(1)から(5)のいずれかに記載の方法。
【0064】
(7)アクティブ状態のプロセス、スタンバイ状態のプロセス、および該スタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え手段を有する耐故障性プラットフォームであって、
アクティブプロセスに関連付けられた接続から状態データを抽出する第1の接続マネージャと、
前記アクティブプロセスに関連付けられたネットワーク接続の状態データをスタンバイプロセスに複製する複製マネージャと、
前記スタンバイプロセスについて、前記複製されたデータで更新された対応するスタンバイネットワーク接続を維持する第2の接続マネージャとを備え、
前記切り換え手段は、前記スタンバイプロセスのアクティブ状態への移行の一部として、前記アクティブシステム内の前記ネットワーク接続を、該ネットワーク上の該接続を閉じることなく非活動化し、ネットワークアドレスを前記スタンバイプロセスに転送し、該ネットワークアドレスで前記対応するスタンバイ接続を活動化するように構成されており、
前記移行したスタンバイプロセスが前記ネットワーク上で前記接続を再開する必要がないようにするプラットフォーム。
【0065】
(8)前記複製マネージャは、個別のソフトウエアモジュールの形をとる、上記(7)に記載のプラットフォーム。
(9)前記第1および/または第2の接続マネージャは、個別のソフトウエアモジュールの形をとる、上記(7)または(8)に記載のプラットフォーム。
(10)各プロセスは、命令セットを形成するアプリケーションソフトウエア層と、オペレーティングシステムソフトウエア層と、伝送制御プロトコルを適用することができるソフトウエア層とを提供し、
前記システムは、前記アクティブ接続の前記状態データを複製することができるプロセスを提供し、該プロセスは、少なくとも部分的に、前記アクティブプロセスの前記アプリケーション層によって実行される、上記(7)から(9)のいずれかに記載のプラットフォーム。
(11)それぞれ異なるネットワークアドレスを有する、アクティブプロセスおよびスタンバイプロセスの複数の対を維持することを含む、上記(7)から(10)のいずれかに記載のプラットフォーム。
(12)前記ネットワークアドレスはIPアドレスである、上記(7)から(11)のいずれかに記載のプラットフォーム。
【0066】
(13)アクティブ状態のプロセスをサポートする手段、スタンバイ状態のプロセスをサポートする手段、および該スタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え能力を有する耐故障性プラットフォームであって、ネットワーク接続は、関連付けられたプロセスが前記ネットワーク接続を閉じるか、または該関連付けられたプロセスが終わる度に、該ネットワーク接続が前記ネットワーク上で閉じられる第1の状態と、関連付けられたプロセスが前記ネットワーク接続を閉じるか、または該関連付けられたプロセスが終わるときに、該ネットワーク接続が該ネットワーク上で閉じられない第2の状態とをとることができ、
前記プラットフォームは、プログラム制御下で前記接続を前記第1の状態と前記第2の状態との間で切り換え、接続状態情報を抽出し、該接続状態情報を設定することを可能にするアプリケーションプログラミングインターフェースを含み、前記接続状態情報は、ネットワークアドレスを前記スタンバイ接続に転送することにより、前記ネットワーク上で接続が再開されることを必要とすることなく、アクティブプロセスから複製された前記状態情報で更新され維持されたスタンバイネットワーク接続が、移行したスタンバイプロセスによって用いられることを可能にするような情報である耐故障性プラットフォーム。
【0067】
(14)アクティブ状態のプロセス、スタンバイ状態のプロセス、および該スタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え能力とを有する耐故障性プラットフォームにおいてネットワーク接続を提供するための方法であって、
アクティブプロセスからスタンバイプロセスに、該アクティブプロセスのネットワーク接続の状態データを複製するステップと、
前記スタンバイプロセスについて、前記複製されたデータで更新された対応するスタンバイネットワーク接続を維持するステップと、
前記スタンバイ状態のプロセスをアクティブ状態に移行させるステップとを含み、
前記スタンバイ状態のアクティブ状態への移行中に、前記アクティブシステム内の前記ネットワーク接続を、該ネットワーク上の該接続を閉じることなく非活動化し、ネットワークアドレスを前記スタンバイプロセスに転送し、該ネットワークアドレスで前記対応するスタンバイネットワーク接続を活動化し、該移行したスタンバイプロセスが前記ネットワーク上で前記接続を再開する必要がないようにする、方法。
【0068】
(15)アクティブ状態のプロセス、スタンバイ状態のプロセス、および該スタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え能力とを有する耐故障性プラットフォームにおいてインターネットプロトコル(IP)ネットワーク接続を提供する方法であって、
アクティブプロセスからスタンバイプロセスに、該アクティブプロセスのネットワーク接続の状態データを複製するステップと、
前記スタンバイプロセスについて、前記複製されたデータで更新された対応するスタンバイネットワーク接続を維持するステップと、
前記スタンバイ状態のプロセスをアクティブ状態に移行させるステップとを含み、
前記スタンバイ状態のアクティブ状態への移行中に、前記アクティブシステム内の前記ネットワーク接続を、該ネットワーク上の該接続を閉じることなく非活動化し、IPネットワークアドレスを前記スタンバイプロセスに転送し、該IPネットワークアドレスで前記対応するスタンバイネットワーク接続を活動化し、前記移行したスタンバイプロセスが前記ネットワーク上で前記接続を再開する必要がないようにし、
前記スタンバイプロセスの前記ネットワークアドレスを活動化するステップは、前記スタンバイ接続が活動化される前に実行される、方法。
【0069】
【発明の効果】
本発明によれば、ネットワーク接続のリモートエンドに対して高いトランスペアレンシー(透過性)が保持され、フェイルオーバが達成される。
【図面の簡単な説明】
【図1】本発明の一実施形態に従う、システムのアーキテクチャの概略図。
【図2】本発明の一実施形態に従う、システムにおける1つの装置の種々の状態を示す状態図。
【図3】本発明の一実施形態に従う、複製マネージャモジュールおよび接続マネージャモジュールを含むシステムの概略図。
【図4】本発明の一実施形態に従う、システム内の接続の種々の状態を示す状態図。
【図5】本発明の一実施形態に従う、アクティブ接続およびスタンバイ接続を設定するために用いられるプロセス、および閉じるために用いられるプロセスを示す図。
【図6】本発明の一実施形態に従う、プロセス終了時、またはアクティブシステムからスタンバイシステムへの接続の手動による移動時のプロセスを示す図。
【符号の説明】
100、200 ハードウェア装置
110、210 接続
300 ネットワーク
160、260 複製マネージャ
170、270 接続マネージャ
Claims (16)
- アクティブ状態のプロセス、スタンバイ状態のプロセス、スタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え能力を有する耐故障性プラットフォームにおいてネットワーク接続を提供する方法であって、
該アクティブ状態のプロセスは、ネットワークアドレスを有し、該方法は、
該スタンバイ状態のプロセスをアクティブ状態へ移行させ、該スタンバイ状態のプロセスの移行中に該ネットワークアドレスを該スタンバイ状態のプロセスに転送し、
該スタンバイ状態のプロセスのアクティブ状態への移行に先立って、
該スタンバイ状態のプロセスに、該アクティブ状態のプロセスのネットワーク接続の状態データを複製するステップと、
該スタンバイ状態のプロセスについて、複製されたデータで更新された対応するスタンバイネットワーク接続を維持するステップと、
アクティブ状態への該スタンバイ状態のプロセスの移行中に、該アクティブ状態のプロセス内の該ネットワーク接続を、該ネットワーク上の該接続を閉じることなく非活動化し、該スタンバイ状態のプロセスにネットワークアドレスが転送されたら、該ネットワークアドレスで該対応するスタンバイネットワーク接続を活動化するステップと、を含み、
該移行したスタンバイ状態のプロセスが該ネットワークにおける接続を再開する必要がないようにする、耐故障性プラットフォームにおいてネットワーク接続を提供する方法。 - 前記ネットワーク接続が伝送制御プロトコル(TCP)接続、トランザクション処理(OSI TP)接続またはストリーム制御伝送プロトコル(SCTP)接続のいずれかである請求項1に記載の方法。
- 前記アクティブプロセスの前記接続を監視するステップと、該接続のアイドル状態が識別されたことに応答して前記状態データの複製を起動するステップと、を含む、請求項1または2に記載の方法。
- 接続の状態データを複製する前記ステップは、前記アクティブプロセスが前記接続を用いることができる間に実行される、請求項1から3のいずれか1項に記載の方法。
- それぞれ異なるネットワークアドレスを有するアクティブプロセスおよびスタンバイプロセスの複数の対を維持するステップを含む、請求項1から4のいずれかに記載の方法。
- 前記ネットワークアドレスはIPアドレスである、請求項1から5のいずれかに記載の方法。
- 前記ネットワーク接続がTCP接続である場合に、状態データを複製するステップは、TCP状態情報を複製することを含む請求項2から6のいずれかに記載の方法。
- アクティブ状態のプロセス、スタンバイ状態のプロセス、および該スタンバイ状態のプロセスをアクティブ状態に移行させるための切り換え手段を有する耐故障性プラットフォームであって、
該アクティブ状態のプロセスは、ネットワークアドレスを有し、該切り換え手段は、スタンバイ状態のプロセスのアクティブ状態のプロセスへの移行の一部として、該ネットワークアドレスをスタンバイ状態のプロセスへ転送するように構成され、該プラットフォームは、
該アクティブ状態のプロセスに関連付けられた接続から状態データを抽出する第1の接続マネージャと、
該アクティブ状態のプロセスに関連付けられたネットワーク接続の状態データを該スタンバイ状態のプロセスに複製する複製マネージャと、
該スタンバイ状態のプロセスについて、複製されたデータで更新された対応するスタンバイネットワーク接続を維持する第2の接続マネージャとを備え、
該切り換え手段は、該スタンバイ状態のプロセスのアクティブ状態への移行に先立って、該アクティブ状態のプロセス内の該ネットワーク接続を、該ネットワーク上の該接続を閉じることなく非活動化するように構成され、ネットワークアドレスが該スタンバイ状態のプロセスに転送されたら、該ネットワークアドレスで該対応するスタンバイネットワーク接続を活動化するように構成されており、
該移行したスタンバイ状態のプロセスが該ネットワーク上で接続を再開する必要がないようにするプラットフォーム。 - 前記ネットワーク接続が伝送制御プロトコル(TCP)接続、トランザクション処理(OSI TP)接続またはストリーム制御伝送プロトコル(SCTP)接続のいずれかである請求項8に記載のプラットフォーム。
- 前記複製マネージャは、個別のソフトウエアモジュールの形をとる、請求項8または9に記載のプラットフォーム。
- 前記第1および/または第2の接続マネージャは、個別のソフトウエアモジュールの形をとる、請求項8から10のいずれかに記載のプラットフォーム。
- 各プロセスは、命令セットを形成するアプリケーションソフトウエア層と、オペレーティングシステムソフトウエア層と、伝送制御プロトコルを適用することができるソフトウエア層とを提供し、
前記システムは、前記アクティブ接続の前記状態データを複製することができるプロセスを提供し、該プロセスは、少なくとも部分的に、前記アクティブプロセスの前記アプリケーション層によって実行される、請求項8から11のいずれかに記載のプラットフォーム。 - それぞれ異なるネットワークアドレスを有する、アクティブプロセスおよびスタンバイプロセスの複数の対を維持することを含む、請求項8から12のいずれかに記載のプラットフォーム。
- 前記ネットワークアドレスはIPアドレスである、請求項8から13のいずれかに記載のプラットフォーム。
r - 前記ネットワーク接続がTCP接続である場合に、前記複製マネージャは、TCP状態情報を含む状態データを複製するように構成されている請求項8から14のいずれかに記載のプラットフォーム。
- 請求項8から15のいずれかに記載の耐故障性プラットフォームであって、
ネットワーク接続は、関連付けられたプロセスが前記ネットワーク接続を閉じるか、または該関連付けられたプロセスが終わる度に、該ネットワーク接続が前記ネットワーク上で閉じられる第1の状態と、関連付けられたプロセスが前記ネットワーク接続を閉じるか、または該関連付けられたプロセスが終わるときに、該ネットワーク接続が該ネットワーク上で閉じられない第2の状態とをとることができ、
前記プラットフォームは、プログラム制御下で前記接続を前記第1の状態と前記第2の状態との間で切り換え、接続状態情報を抽出し、該接続状態情報を設定することを可能にするアプリケーションプログラミングインターフェースを含み、
前記接続状態情報は、ネットワークアドレスを前記スタンバイ接続に転送することにより、前記ネットワーク上で接続が再開されることを必要とすることなく、アクティブ状態のプロセスから複製された前記状態情報で更新され維持されたスタンバイネットワーク接続が、移行したスタンバイ状態のプロセスによって用いられることを可能にするような情報である耐故障性プラットフォーム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/777,609 US20020107966A1 (en) | 2001-02-06 | 2001-02-06 | Method and system for maintaining connections in a network |
US09/777,609 | 2001-02-06 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002319963A JP2002319963A (ja) | 2002-10-31 |
JP2002319963A5 JP2002319963A5 (ja) | 2005-07-14 |
JP3930743B2 true JP3930743B2 (ja) | 2007-06-13 |
Family
ID=25110725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002020221A Expired - Fee Related JP3930743B2 (ja) | 2001-02-06 | 2002-01-29 | 耐故障性プラットフォームにおいてネットワーク接続を提供する方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20020107966A1 (ja) |
EP (1) | EP1231756A3 (ja) |
JP (1) | JP3930743B2 (ja) |
Families Citing this family (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6850987B1 (en) * | 1999-06-01 | 2005-02-01 | Fastforward Networks, Inc. | System for multipoint infrastructure transport in a computer network |
US6664779B2 (en) * | 2000-11-16 | 2003-12-16 | Texas Instruments Incorporated | Package with environmental control material carrier |
US20020129146A1 (en) * | 2001-02-06 | 2002-09-12 | Eyal Aronoff | Highly available database clusters that move client connections between hosts |
US7543067B2 (en) * | 2001-08-01 | 2009-06-02 | Canon Kabushiki Kaisha | Flexible secure network data transfer and messaging |
DE60129022T2 (de) * | 2001-10-30 | 2008-05-08 | Hewlett-Packard Development Co., L.P., Houston | Kommunikationssystem und -verfahren |
EP1309220B1 (en) * | 2001-10-31 | 2009-08-05 | Hewlett-Packard Company, A Delaware Corporation | Data processing system and method |
EP1311102A1 (en) * | 2001-11-08 | 2003-05-14 | Hewlett-Packard Company | Streaming audio under voice control |
US7111035B2 (en) * | 2001-12-26 | 2006-09-19 | Hewlett-Packard Development Company, L.P. | Fault tolerance associations for IP transport protocols |
US7978598B1 (en) * | 2002-03-01 | 2011-07-12 | Cisco Technology, Inc. | Connection replication |
US20030212802A1 (en) * | 2002-05-09 | 2003-11-13 | Gateway, Inc. | Proximity network encryption and setup |
US7275081B1 (en) | 2002-06-10 | 2007-09-25 | Juniper Networks, Inc. | Managing state information in a computing environment |
US7197660B1 (en) * | 2002-06-26 | 2007-03-27 | Juniper Networks, Inc. | High availability network security systems |
US20040054943A1 (en) * | 2002-08-08 | 2004-03-18 | International Business Machines Corporation | Method and system for improving the availability of software processes utilizing configurable finite state tables |
AU2003275118A1 (en) * | 2002-09-20 | 2004-04-08 | Tekelec | Methods and systems for locating redundant telephony call processing hosts in geographically separate locations |
EP1406171A1 (en) * | 2002-10-04 | 2004-04-07 | Hewlett-Packard Company | Data processing system and method |
US7389411B2 (en) * | 2003-08-29 | 2008-06-17 | Sun Microsystems, Inc. | Secure transfer of host identities |
US7739403B1 (en) | 2003-10-03 | 2010-06-15 | Juniper Networks, Inc. | Synchronizing state information between control units |
US7929424B2 (en) * | 2003-10-31 | 2011-04-19 | Ericsson Ab | Switchover for broadband subscriber sessions |
GB2408891A (en) * | 2003-12-05 | 2005-06-08 | Stephen Casey | Network device |
US7433368B2 (en) * | 2003-12-11 | 2008-10-07 | Nokia Corporation | Signaling transport converter |
US20050149753A1 (en) * | 2003-12-30 | 2005-07-07 | Cromer Daryl C. | Apparatus, system, and method for validating interface addresses |
US7870602B2 (en) | 2005-09-14 | 2011-01-11 | At&T Intellectual Property I, L.P. | System and method for reducing data stream interruption during failure of a firewall device |
US7518986B1 (en) | 2005-11-16 | 2009-04-14 | Juniper Networks, Inc. | Push-based hierarchical state propagation within a multi-chassis network device |
US8488447B2 (en) | 2006-06-30 | 2013-07-16 | Centurylink Intellectual Property Llc | System and method for adjusting code speed in a transmission path during call set-up due to reduced transmission performance |
US7948909B2 (en) | 2006-06-30 | 2011-05-24 | Embarq Holdings Company, Llc | System and method for resetting counters counting network performance information at network communications devices on a packet network |
US8717911B2 (en) | 2006-06-30 | 2014-05-06 | Centurylink Intellectual Property Llc | System and method for collecting network performance information |
US8477614B2 (en) | 2006-06-30 | 2013-07-02 | Centurylink Intellectual Property Llc | System and method for routing calls if potential call paths are impaired or congested |
US8000318B2 (en) | 2006-06-30 | 2011-08-16 | Embarq Holdings Company, Llc | System and method for call routing based on transmission performance of a packet network |
US8194643B2 (en) | 2006-10-19 | 2012-06-05 | Embarq Holdings Company, Llc | System and method for monitoring the connection of an end-user to a remote network |
US9094257B2 (en) | 2006-06-30 | 2015-07-28 | Centurylink Intellectual Property Llc | System and method for selecting a content delivery network |
US8289965B2 (en) | 2006-10-19 | 2012-10-16 | Embarq Holdings Company, Llc | System and method for establishing a communications session with an end-user based on the state of a network connection |
US8102770B2 (en) | 2006-08-22 | 2012-01-24 | Embarq Holdings Company, LP | System and method for monitoring and optimizing network performance with vector performance tables and engines |
US8537695B2 (en) | 2006-08-22 | 2013-09-17 | Centurylink Intellectual Property Llc | System and method for establishing a call being received by a trunk on a packet network |
US8307065B2 (en) | 2006-08-22 | 2012-11-06 | Centurylink Intellectual Property Llc | System and method for remotely controlling network operators |
US8098579B2 (en) | 2006-08-22 | 2012-01-17 | Embarq Holdings Company, LP | System and method for adjusting the window size of a TCP packet through remote network elements |
US8531954B2 (en) | 2006-08-22 | 2013-09-10 | Centurylink Intellectual Property Llc | System and method for handling reservation requests with a connection admission control engine |
US7843831B2 (en) | 2006-08-22 | 2010-11-30 | Embarq Holdings Company Llc | System and method for routing data on a packet network |
US8223655B2 (en) | 2006-08-22 | 2012-07-17 | Embarq Holdings Company, Llc | System and method for provisioning resources of a packet network based on collected network performance information |
US8107366B2 (en) | 2006-08-22 | 2012-01-31 | Embarq Holdings Company, LP | System and method for using centralized network performance tables to manage network communications |
US7808918B2 (en) * | 2006-08-22 | 2010-10-05 | Embarq Holdings Company, Llc | System and method for dynamically shaping network traffic |
US8619600B2 (en) | 2006-08-22 | 2013-12-31 | Centurylink Intellectual Property Llc | System and method for establishing calls over a call path having best path metrics |
US8125897B2 (en) | 2006-08-22 | 2012-02-28 | Embarq Holdings Company Lp | System and method for monitoring and optimizing network performance with user datagram protocol network performance information packets |
US8238253B2 (en) | 2006-08-22 | 2012-08-07 | Embarq Holdings Company, Llc | System and method for monitoring interlayer devices and optimizing network performance |
US8040811B2 (en) | 2006-08-22 | 2011-10-18 | Embarq Holdings Company, Llc | System and method for collecting and managing network performance information |
US8224255B2 (en) | 2006-08-22 | 2012-07-17 | Embarq Holdings Company, Llc | System and method for managing radio frequency windows |
US8144586B2 (en) | 2006-08-22 | 2012-03-27 | Embarq Holdings Company, Llc | System and method for controlling network bandwidth with a connection admission control engine |
US8130793B2 (en) | 2006-08-22 | 2012-03-06 | Embarq Holdings Company, Llc | System and method for enabling reciprocal billing for different types of communications over a packet network |
US8194555B2 (en) | 2006-08-22 | 2012-06-05 | Embarq Holdings Company, Llc | System and method for using distributed network performance information tables to manage network communications |
US8743703B2 (en) | 2006-08-22 | 2014-06-03 | Centurylink Intellectual Property Llc | System and method for tracking application resource usage |
US8750158B2 (en) | 2006-08-22 | 2014-06-10 | Centurylink Intellectual Property Llc | System and method for differentiated billing |
US8189468B2 (en) | 2006-10-25 | 2012-05-29 | Embarq Holdings, Company, LLC | System and method for regulating messages between networks |
US8549405B2 (en) | 2006-08-22 | 2013-10-01 | Centurylink Intellectual Property Llc | System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally |
US7940735B2 (en) | 2006-08-22 | 2011-05-10 | Embarq Holdings Company, Llc | System and method for selecting an access point |
US8015294B2 (en) | 2006-08-22 | 2011-09-06 | Embarq Holdings Company, LP | Pin-hole firewall for communicating data packets on a packet network |
US8144587B2 (en) | 2006-08-22 | 2012-03-27 | Embarq Holdings Company, Llc | System and method for load balancing network resources using a connection admission control engine |
US8407765B2 (en) | 2006-08-22 | 2013-03-26 | Centurylink Intellectual Property Llc | System and method for restricting access to network performance information tables |
US7889660B2 (en) * | 2006-08-22 | 2011-02-15 | Embarq Holdings Company, Llc | System and method for synchronizing counters on an asynchronous packet communications network |
US8274905B2 (en) | 2006-08-22 | 2012-09-25 | Embarq Holdings Company, Llc | System and method for displaying a graph representative of network performance over a time period |
US8199653B2 (en) | 2006-08-22 | 2012-06-12 | Embarq Holdings Company, Llc | System and method for communicating network performance information over a packet network |
US8228791B2 (en) | 2006-08-22 | 2012-07-24 | Embarq Holdings Company, Llc | System and method for routing communications between packet networks based on intercarrier agreements |
US8576722B2 (en) | 2006-08-22 | 2013-11-05 | Centurylink Intellectual Property Llc | System and method for modifying connectivity fault management packets |
US9479341B2 (en) | 2006-08-22 | 2016-10-25 | Centurylink Intellectual Property Llc | System and method for initiating diagnostics on a packet network node |
US8064391B2 (en) | 2006-08-22 | 2011-11-22 | Embarq Holdings Company, Llc | System and method for monitoring and optimizing network performance to a wireless device |
US7684332B2 (en) | 2006-08-22 | 2010-03-23 | Embarq Holdings Company, Llc | System and method for adjusting the window size of a TCP packet through network elements |
US8051326B2 (en) * | 2006-12-29 | 2011-11-01 | Futurewei Technologies, Inc. | System and method for completeness of TCP data in TCP HA |
US9648147B2 (en) * | 2006-12-29 | 2017-05-09 | Futurewei Technologies, Inc. | System and method for TCP high availability |
US20080285436A1 (en) * | 2007-05-15 | 2008-11-20 | Tekelec | Methods, systems, and computer program products for providing site redundancy in a geo-diverse communications network |
US8111692B2 (en) | 2007-05-31 | 2012-02-07 | Embarq Holdings Company Llc | System and method for modifying network traffic |
US7890662B2 (en) * | 2007-08-14 | 2011-02-15 | Cisco Technology, Inc. | System and method for providing unified IP presence |
US20090067435A1 (en) * | 2007-09-11 | 2009-03-12 | International Business Machines Corporation | Systems, methods and computer products for a tcp/ip stack to notify an application of a state change made to all routes over a single ipv4 interface |
US7971099B2 (en) * | 2008-04-02 | 2011-06-28 | International Business Machines Corporation | Method for enabling faster recovery of client applications in the event of server failure |
US8068425B2 (en) | 2008-04-09 | 2011-11-29 | Embarq Holdings Company, Llc | System and method for using network performance information to determine improved measures of path states |
JP5088281B2 (ja) * | 2008-09-19 | 2012-12-05 | 沖電気工業株式会社 | パケット同期切替方法及びゲートウェイ装置 |
FR2939596A1 (fr) * | 2008-12-08 | 2010-06-11 | Alcatel Lucent | Procede de delegation de traitement de donnees |
US8751627B2 (en) | 2009-05-05 | 2014-06-10 | Accenture Global Services Limited | Method and system for application migration in a cloud |
US8363549B1 (en) | 2009-09-02 | 2013-01-29 | Juniper Networks, Inc. | Adaptively maintaining sequence numbers on high availability peers |
US8614941B2 (en) * | 2011-05-09 | 2013-12-24 | Telefonaktiebolaget L M Ericsson (Publ) | Hitless switchover from active TCP application to standby TCP application |
EP2525292A1 (en) * | 2011-05-20 | 2012-11-21 | ABB Technology AG | System and method for using redundancy of controller operation |
GB2485866B (en) * | 2011-08-26 | 2012-10-10 | Metaswitch Networks Ltd | Data replication for a backup entity |
WO2012149750A1 (zh) | 2011-09-19 | 2012-11-08 | 华为技术有限公司 | 一种对用户服务进行迁移的方法、装置及系统 |
KR20180091107A (ko) * | 2012-02-17 | 2018-08-14 | 어펌드 네트웍스, 인크. | 가상화된 개방형 무선 서비스 소프트웨어 아키텍처 |
JP6129526B2 (ja) * | 2012-11-20 | 2017-05-17 | 株式会社東芝 | 通信装置、通信方法およびプログラム |
JP6256904B2 (ja) | 2013-04-18 | 2018-01-10 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 処理の要求を振り分ける装置及び方法 |
JP6403976B2 (ja) * | 2014-04-09 | 2018-10-10 | アルパイン株式会社 | コンピュータプログラム、情報処理装置及び処理実行方法 |
US10855645B2 (en) | 2015-01-09 | 2020-12-01 | Microsoft Technology Licensing, Llc | EPC node selection using custom service types |
EP3292707A4 (en) | 2015-05-07 | 2019-04-17 | Affirmed Networks, Inc. | METHODS AND SYSTEMS FOR PROVIDING DETAILED CALL RECORDING FOR CHARGING SYSTEMS |
US10924520B2 (en) | 2016-12-13 | 2021-02-16 | Microsoft Technology Licensing, Llc | Online charging mechanisms during OCS non-responsiveness |
EP3958646A3 (en) | 2016-12-13 | 2022-06-22 | Microsoft Technology Licensing, LLC | Machine-to-machine network optimization and online charging |
US10548140B2 (en) | 2017-05-02 | 2020-01-28 | Affirmed Networks, Inc. | Flexible load distribution and management in an MME pool |
JP7178365B2 (ja) | 2017-05-05 | 2022-11-25 | マイクロソフト テクノロジー ライセンシング,エルエルシー | サービス能力公開機能(scef)ベースのインターネットオブシングス(iot)通信の方法とシステム |
CN110800275B (zh) | 2017-05-31 | 2022-09-23 | 微软技术许可有限责任公司 | Ipsec地理冗余的解耦控制和数据平面同步 |
US10856134B2 (en) | 2017-09-19 | 2020-12-01 | Microsoft Technolgy Licensing, LLC | SMS messaging using a service capability exposure function |
US11051201B2 (en) | 2018-02-20 | 2021-06-29 | Microsoft Technology Licensing, Llc | Dynamic selection of network elements |
BR112020018950A2 (pt) | 2018-03-20 | 2020-12-29 | Affirmed Networks, Inc. | Sistemas e métodos para fatiamento de rede |
EP3827577B1 (en) | 2018-07-23 | 2023-09-13 | Microsoft Technology Licensing, LLC | System and method for intelligently managing sessions in a mobile network |
US10862978B2 (en) * | 2018-09-19 | 2020-12-08 | Citrix Systems, Inc. | Systems and methods for maintaining and transferring SaaS session state |
US11442652B1 (en) | 2020-07-23 | 2022-09-13 | Pure Storage, Inc. | Replication handling during storage system transportation |
US11349917B2 (en) | 2020-07-23 | 2022-05-31 | Pure Storage, Inc. | Replication handling among distinct networks |
US12113837B2 (en) * | 2020-10-26 | 2024-10-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Interactive calling for internet-of-things |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0816422A (ja) * | 1994-07-04 | 1996-01-19 | Fujitsu Ltd | バス通信方法及びバス通信システム |
US5978933A (en) * | 1996-01-11 | 1999-11-02 | Hewlett-Packard Company | Generic fault tolerant platform |
US6049825A (en) * | 1997-03-19 | 2000-04-11 | Fujitsu Limited | Method and system for switching between duplicated network interface adapters for host computer communications |
US5948108A (en) * | 1997-06-12 | 1999-09-07 | Tandem Computers, Incorporated | Method and system for providing fault tolerant access between clients and a server |
US6148410A (en) * | 1997-09-15 | 2000-11-14 | International Business Machines Corporation | Fault tolerant recoverable TCP/IP connection router |
US6360331B2 (en) * | 1998-04-17 | 2002-03-19 | Microsoft Corporation | Method and system for transparently failing over application configuration information in a server cluster |
US6195705B1 (en) * | 1998-06-30 | 2001-02-27 | Cisco Technology, Inc. | Mobile IP mobility agent standby protocol |
US6229538B1 (en) * | 1998-09-11 | 2001-05-08 | Compaq Computer Corporation | Port-centric graphic representations of network controllers |
US6078957A (en) * | 1998-11-20 | 2000-06-20 | Network Alchemy, Inc. | Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system |
US6389550B1 (en) * | 1998-12-23 | 2002-05-14 | Ncr Corporation | High availability protocol computing and method |
WO2000060472A1 (en) * | 1999-04-06 | 2000-10-12 | Lipstream Networks, Inc. | Facilitating real-time, multi-point communications over the internet |
US20030055967A1 (en) * | 1999-05-17 | 2003-03-20 | David Dewitt Worley | Encapsulating local application environments in a cluster within a computer network |
-
2001
- 2001-02-06 US US09/777,609 patent/US20020107966A1/en not_active Abandoned
-
2002
- 2002-01-29 JP JP2002020221A patent/JP3930743B2/ja not_active Expired - Fee Related
- 2002-01-31 EP EP02354021A patent/EP1231756A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US20020107966A1 (en) | 2002-08-08 |
JP2002319963A (ja) | 2002-10-31 |
EP1231756A2 (en) | 2002-08-14 |
EP1231756A3 (en) | 2005-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3930743B2 (ja) | 耐故障性プラットフォームにおいてネットワーク接続を提供する方法 | |
US6760859B1 (en) | Fault tolerant local area network connectivity | |
EP1309142B1 (en) | Communication system and method | |
CN101136900B (zh) | 一种面向服务的快速透明故障转移装置及实现方法 | |
US7107481B2 (en) | Server takeover system and method | |
KR101099822B1 (ko) | 액티브 라우팅 컴포넌트 장애 처리 방법 및 장치 | |
US9141502B2 (en) | Method and system for providing high availability to computer applications | |
US9378005B2 (en) | Hitless software upgrades | |
US7304940B2 (en) | Network switch assembly, network switching device, and method | |
US8462767B2 (en) | Internet protocol compliant private branch electronic exchange and a method for redundantly configuring terminal interfaces | |
JP2005535241A (ja) | マルチコンピュータ・アーキテクチャにおけるアプリケーション・ソフトウェアの移動方法、前記移動方法を用いて作動の連続性を実現するマルチコンピュータ方法および装置 | |
JP2002319963A5 (ja) | ||
JPH0926891A (ja) | アプリケーション間のネットワーク接続を維持するための方法およびデータ処理システム | |
WO2021185169A1 (zh) | 一种切换方法、装置、设备和存储介质 | |
JPH1185644A (ja) | 冗長構成システムの系切替制御方法 | |
CN108282346B (zh) | 软件升级方法及装置 | |
JP2005136690A (ja) | 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム | |
GB2455075A (en) | A network controller for mirroring server applications | |
KR101401006B1 (ko) | 고가용성 시스템에서 소프트웨어 업데이트를 수행하기 위한 방법 및 장치 | |
KR100587531B1 (ko) | 클러스터 시스템에서 통신 프로토콜의 처리를 이관하는방법 및 그 시스템 | |
KR100456461B1 (ko) | 네트워크계층 및 전송계층 프로토콜 이중화를 위한 패킷전달방법 | |
JPH1093617A (ja) | 通信処理装置の予備切り替えシステム | |
JPH0432953A (ja) | 複合計算機システムおよびその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041115 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060711 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20061005 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20061011 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070109 |
|
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: 20070220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070309 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070109 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100316 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110316 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120316 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130316 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130316 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130316 Year of fee payment: 6 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130316 Year of fee payment: 6 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130316 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140316 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |