JP5272263B2 - ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー - Google Patents

ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー Download PDF

Info

Publication number
JP5272263B2
JP5272263B2 JP2008126217A JP2008126217A JP5272263B2 JP 5272263 B2 JP5272263 B2 JP 5272263B2 JP 2008126217 A JP2008126217 A JP 2008126217A JP 2008126217 A JP2008126217 A JP 2008126217A JP 5272263 B2 JP5272263 B2 JP 5272263B2
Authority
JP
Japan
Prior art keywords
nic
connection
network
network connection
computing device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008126217A
Other languages
English (en)
Other versions
JP2009009552A (ja
Inventor
アブドラ アヤツ
ケー. チェン ノーマン
ラジャゴパラン アナンド
ケー. ジャ アシュトシュ
マニカヴァサガム ヘママリニ
ナンダ サミール
Original Assignee
エヌヴィディア コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by エヌヴィディア コーポレイション filed Critical エヌヴィディア コーポレイション
Publication of JP2009009552A publication Critical patent/JP2009009552A/ja
Application granted granted Critical
Publication of JP5272263B2 publication Critical patent/JP5272263B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/2002Error 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 interconnections or communication control functionality are redundant
    • G06F11/2005Error 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 interconnections or communication control functionality are redundant using redundant communication controllers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/85Active fault masking without idle spares
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Description

発明の分野
[0001]本発明の実施形態は、一般的に、ネットワーク通信に係り、より詳細には、ロードバランス型ネットワーク環境においてネットワーク接続を知的にフェイルオーバーするためのシステム及び方法に係る。
関連技術の説明
[0002]性能及び信頼性は、現代のコンピュータネットワークのための重要な必要条件である。コンピューティング装置に関するネットワークインターフェース(「NIC」)の信頼性がなくなるとき、そのNICのネットワーク性能は、可能性として実質的に零にまで低下してしまうことがあるものである。このような状況において、現在の解決策としては、ネットワーク接続を、信頼できないNICから同じコンピューティング装置における他の信頼できるNICへとリダイレクトするものがあり、この技法は、「フェイルオーバー」と称されている。フェイルオーバーは、信頼できないNICの存在によって直ぐに生ずる問題を軽減することができるのであるが、フェイルオーバー接続からのその他の信頼できるNICに対する付加的なネットワークトラフィックにより、その他の信頼できるNICのうちの1つ以上のものが過負荷となってしまうことがあり、それらインターフェースの性能が低減されてしまうことがある。更に又、その他の信頼できるNICに対する付加的なネットワークトラフィックにより、そのコンピューティング装置によって行われるネットワーク処理が実質的に増大してしまい、それにより、そのコンピューティング装置の性能が減ぜられてしまう。
[0003]前述したように、当業分野において必要とされているものは、全体的なシステム性能を悪くしてしまうようなNICの過負荷などの現象が発生する可能性を減少させるように、ネットワーク接続を1つ以上の信頼できるNICへとフェイルオーバーするための技法である。
発明の概要
[0004]本発明の一実施形態によれば、スイッチ独立型ネットワーク環境において、ネットワーク接続を、ホストソフトウエアモジュールからフェイルオーバーネットワークインターフェースカード(NIC)に含まれる第1のハードウエア解放エンジンへと解放するための方法が提供される。この方法は、前記フェイルオーバーNICのアイデンティティを要求するステップと、ハッシュアルゴリズムの出力から前記フェイルオーバーNICのアイデンティティを決定するステップと、前記第1のハードウエア解放エンジンに含まれる第1の候補接続テーブルに、前記ネットワーク接続についての接続状態を含むエントリーを設定するステップと、前記ネットワーク接続に対応する前記ホストソフトウエアモジュールに含まれる接続テーブルに、前記ネットワーク接続が前記第1のハードウエア解放エンジンを通して実行されていることを示すハードウエア識別子を設定するステップと、を含む。
[0005]前述した方法の1つの効果は、ネットワーク接続をフェイルオーバーするときに、ネットワークインターフェースの過負荷の如き問題をより容易に回避でき、従って、従来技術に比べて全体的なシステム性能を改善できることである。
[0006]本発明の前述したような特徴を詳細に理解できるように、概要について簡単に前述したような本発明につき、幾つかを添付図面に例示している実施形態を参照して、以下により特定的に説明する。しかしながら、添付図面は、本発明の典型的な実施形態のみを例示し、従って、本発明の範囲をそれに限定しようとするものではなく、本発明には、他の均等の効果を発揮する実施形態が含まれることに注意されたい。
詳細な説明
[0011]機能しなくなったNICから1つ以上の動作できるNICへのネットワーク接続のインテリジェントフェイルオーバーは、スイッチ独立型ネットワーク環境(即ち、コンピューティング装置100のNICを外部ネットワークへ結合するスイッチが802.3adモードで動作しないようなネットワーク環境)における各NICを通しての接続の数及び送信及び受信トラフィックの量を含むネットワーク統計量を追跡するハッシュエンジンを使用することにより達成される。機能しなくなった又は信頼できないNICが検出されたとき、ハッシュエンジンは、十分に利用されていない代替NIC、又は機能しなくなったNICからそれら接続を別の仕方で受け入れることのできる代替NICについての問い合わせを受ける。このような問い合わせにより、その代替NICの容量を越えずに、1つ以上の付加的ネットワーク接続をその代替NICによって取り扱うことができるようになり、それにより、NICに関連付けられたコンピューティング装置のネットワーク性能を大幅に低下させるフェイルオーバー操作が回避される。機能しなくなったNIC内のハードウエア解放エンジンから接続を強制的に解放し、その後、それら接続を1つ以上のフェイルオーバーNIC内のハードウエア解放エンジンへ解放することにより、付加的なネットワーク性能の利点を実現することができる。
[0012]本発明の別の実施形態では、フェイルオーバーNICの選択は、コンピューティング装置の外部にて、可能性としては、スイッチ依存型ネットワーク環境(即ち、コンピューティング装置100のNICを外部ネットワークへ結合するスイッチが802.3adモードにて動作するようなネットワーク環境)におけるスイッチにより、又は、スイッチ独立型ネットワーク環境における外部コンピューティング装置により、行われる。この実施形態においてフェイルオーバーNICを選択するための処理は、スイッチ独立型環境においてNICを選択する処理とは異なるので、この実施形態は、別に考察される。又、ネットワーク接続をソフトウエアTCP/IP(送信制御プロトコル及びインターネットプロトコル)スタックからハードウエア解放エンジンへと解放することによる利点は当業者にはよく知られているので、これらの問題については、ここでは論じないこととする。
[0013]図1A及び図1Bは、本発明の1つ以上の態様を実施することのできるコンピューティング装置100を例示している。図示されるように、このコンピューティング装置100は、主メモリ102、メモリコントローラ104、マイクロプロセッサ106、入出力コントローラ108及びNIC110、118を含む。NIC110は、マルチキャストリスト116及びハードウエア解放エンジン(「HOE」)112を含み、そのハードウエア解放エンジン112は、候補接続テーブル(「DCT」)114を含む。NIC118は、マルチキャストリスト124及びHOE120を含み、このHOE120は、DCT122を含む。HOE112、120は、NIC110、118へ選択的に解放された1つ以上のリモートネットワークコンピューティング装置(図示していない)とコンピューティング装置100との間のネットワーク接続に関連したネットワークフレームを処理するロジックを含む。従来行われていたようにホストソフトウエアTCP/IPスタックにてそれらの処理機能(ある場合には、「ソフトウエアによる接続の取扱い」と称される)を実施するのではなく、NIC110、118におけるロジックでネットワークフレームを処理すること(ある場合には、「ハードウエアによる接続の取扱い」と称される)により、NIC110、118とマイクロプロセッサ106との間の通信並びにマイクロプロセッサ106によって行われる計算量を実質的に減ずることができる。
[0014]DCT114、122は、複数の候補接続テーブルエントリーを含むように構成され、その各エントリーは、その特定のDCTを含むHOEによりフレームが処理されるネットワーク接続に対応している。本発明の一実施形態では、各DCTエントリーは、各候補接続についての次の状態情報、即ち、送信先(即ち、リモートコンピューティング装置)インターネットプロトコル(「IP」)アドレス、送信先ポート番号、送信元(コンピューティング装置100)ポート番号及びその候補接続をハードウエアにより実行するに必要な特定のTCP/IP接続状態を含む。
[0015]メモリコントローラ104は、主メモリ102及びマイクロプロセッサ106に結合されており、入出力コントローラ108は、マイクロプロセッサ106及びNIC110、118に結合されている。本発明の一実施形態では、マイクロプロセッサ106は、入出力コントローラ108へ命令又はデータを書き込むことにより、命令又はデータをNIC110、118へ送信する。このような命令又はデータが入出力コントローラ108へ書き込まれると、その入出力コントローラ108は、任意的に、ターゲットNICが理解できるようなフォーマットへとそれら命令又はデータを変換し、それら命令又はデータをそのターゲットNICへと通信する。同様に、NIC110、118は、命令又はデータを入出力コントローラ108へ書き込むことにより、命令又はデータをマイクロプロセッサ106へ送信し、入出力コントローラ108は、任意的に、マイクロプロセッサ106が理解できるようなフォーマットへとそれら命令又はデータを変換し、それら命令又はデータをマイクロプロセッサ106へと通信する。前述したような結合は、PCI(商標)バスの如きメモリバス、入出力バス、又はそれらの組合せとして実施することができ、あるいは、別の仕方として、任意の他の技術的に可能な方法で実施することができる。
[0016]図1Bにより詳細に示されるように、主メモリ102は、オペレーティングシステム126及びソフトウエアドライバ128を含む。ソフトウエアドライバ128は、ロードバランシング及びフェイルオーバー(「LBFO」)モジュール130及びTCP/IPスタック134を含む。LBFOモジュール130は、各NICについてのネットワーク状態を追跡し(例えば、各NICのリンク状態、各NICに関する送信エラー及び受信エラーの数及び/又は各NICがキープアライブパケットを送信及び受信しているか、を監視することにより)、機能しなくなったNICからソフトウエアへ、又はソフトウエアからフェイルオーバーNICへネットワークトラフィックが移される時に、TCP/IPスタック134と通信する。LBFOモジュール130は、ハッシュエンジン132を含み、このハッシュエンジン132は、前述したようなネットワーク統計量に基づいて、ネットワーク接続がそのコンピューティング装置100における異なる機能的NICに亘ってどのように分散されるべきかを知能的に決定するものであり、このことについては、2007年5月18日に出願され、代理人管理番号NVDA/P001882を有し、「Intelligent Failback in a Load-Balanced Networking Environment」と題する関連米国特許出願第11/50,914号明細書に記載されているところである。従って、この関連特許出願明細書の記載は、ここに援用される。TCP/IPスタック134は、接続テーブル136を含み、この接続テーブル136は、複数の接続テーブルエントリーを含み、これらの各エントリーは、コンピューティング装置100とリモートコンピューティング装置との間のネットワーク接続に対応している。一実施形態では、各接続テーブルエントリーは、各接続についての次のような状態情報、即ち、送信先IPアドレス、送信先ポート番号、送信元IPアドレス、送信元ポート番号及びその接続についてのハードウエア識別子並びに欠損パケットを取り扱うのに十分なTCP/IP状態等を含む。重要なことは、特定の接続についてのハードウエア識別子は、もしあるならば、どのHOEがハードウエアによりその接続を処理しているかを示していることである。一実施形態では、ハードウエアにより処理されている各接続についての接続状態は、その接続を処理することを課せられているHOE内の候補接続テーブルから接続テーブル136へと定期的にコピーされる。例えば、その状態情報は、繰り返しタイマーを使用してコピーされる。このようにして、各候補接続についての接続状態の更新コピーを、TCP/IPスタック134が使用する接続テーブル136に維持しておくことができる。
[0017]コンピューティング装置100は、デスクトップコンピュータ、サーバー、ラップトップコンピュータ、手のひらサイズコンピュータ、携帯情報端末、タブレットコンピュータ、ゲームコンソール、セルラー電話、又は情報を処理する任意の他のタイプの同様の装置であってよい。
[0018]図2は、本発明の一実施形態による、機能しなくなったNICからソフトウエアへとネットワーク接続を強制的に解放するための方法ステップ200のフローチャートを例示している。この方法はコンピューティング装置100に関して説明されるのであるが、当業者には、これら方法ステップを任意の順序にて行うように構成された任意のシステムも本発明の範囲内に入るものであることは理解されよう。
[0019]図示されるように、ネットワーク接続を強制的に解放するための方法は、ステップ202にて開始され、このステップ202において、LBFOモジュール130は、NICのうちの1つが機能しなくなった又は信頼できないものとなったことを指示するため、各NIC110、118の状態を監視する。一実施形態では、NICは、3つの状態のうちのいずれかが存在するときに、機能しなくなった又は信頼できないものとなったと決定される。その第1の状態は、ネットワークケーブルが切断されたことを示唆するようなそのNICについてのリンク切断があることを、そのNICについてのリンク指示に基づいて、LBFOモジュール130が決定するときである。第2の状態は、そのNICによって送信されたパケットの相当の数又は割合のものが失われたことを、そのNICによって送られたパケットの数と、それらパケットが送信されたリモートコンピューティング装置によって確認されたパケットの数との比較に基づいて、LBFOモジュール130が決定するときである。第3の状態は、コンピューティング装置100においてNIC110、118の間に送信されたキープアライブパケットが失われていると、LBFOモジュール130が決定するときである。2005年12月15日に出願され、代理人管理番号NVDA/P001879を有し、「Technique for Identifying a Failed Network Interface Card Within aTeam of Network Interface Cards」と題する関連米国特許出願第11/303,285号明細書に記載されているように、機能しなくなったNICは、各NICがどのようにしてキープアライブパケットを送信及び/又は受信しているかに基づいて識別される。従って、この関連特許出願明細書の記載は、ここに援用される。これらの指示のタイプについて各NICを監視することにより、LBFOモジュール130は、機能しなくなった又は信頼できないNICを、信頼性良く検出することができる。
[0020]ステップ204にて、LBFOモジュール130は、NICが機能しなくなった又は信頼できないものとなったかを、ステップ202にて監視されている指示に基づいて決定する。もし、障害がなにも起きなかったとLBFOモジュール130が決定した場合には、この方法はステップ202へと戻り、そこで、LBFOモジュール130は、障害についてそれらNIC110、118を監視することを続ける。
[0021]しかしながら、もし、あるNICが機能しなくなった又は信頼できないものとなったことが見出された場合には、この方法は、ステップ206−214の処理へと進み、そこで、そのNICを通して実行されている接続をソフトウエアへ強制的に解放する。説明上、NIC110が機能しなくなったと仮定する。ステップ206にて、LBFOモジュール130は、NIC110が機能しなくなった又は信頼できないものとなったことを知らせる信号を、TCP/IPスタック134に送る。ステップ208にて、LBFOモジュール130は、NIC110が機能しなくなった又は信頼できないものとなったことを知らせる信号を、ハッシュエンジン132に送り、その機能しなくなったNIC110へ新しい接続が割り当てられてしまうのを避けるようにする。このような信号を受信すると、ハッシュエンジン132は、その機能しなくなったNIC110に新しい接続が割り当てられないように、その内部ロードバランシングアルゴリズムを調整する。
[0022]ステップ210にて、機能しなくなったNIC110を通して実行されている各接続について、その機能しなくなったNICに対するHOE(例えば、HOE112)は、その接続に対応するDCT(例えば、DCT114)におけるエントリーを無効とする。一実施形態では、そのDCTエントリーは、TCP/IPスタック134がそのDCTエントリーを無効とする命令をHOE112へ送り、HOE112がその命令を受信してそのDCTエントリーを無効とし、そして、そのHOE112がTCP/IPスタック134に対してこの動作の完了を応答することにより、無効とされる。ステップ212にて、機能しなくなったNIC110から強制的に解放される各接続について、もし、その接続に対するDCT114における接続状態が接続テーブル136における接続状態と整合しない場合には、TCP/IPスタック134は、その接続についての接続状態をDCT114から接続テーブル136へとコピーする。ステップ214にて、機能しなくなったNIC110から強制的に解放される各接続について、TCP/IPスタック134は、接続テーブル136におけるその接続のためのハードウエア識別子を無効とする。このハードウエア識別子を無効とすることは、その接続がTCP/IPスタック134を通して実行されることを示す。重要なことは、ある接続についての接続状態がDCT114にて無効とされ且つその接続についてのハードウエア識別子が接続テーブル136にて無効とされたときには、その接続にて送信され又は受信されるどのパケットも、その後は、HOE112を通してハードウエアにより処理されるのでなく、TCP/IPスタック134を通してソフトウエアにより処理されるということである。機能しなくなったNIC110に関する全ての接続が、このようにしてハードウエアからソフトウエアへと強制的に解放されたとき、この方法は、ステップ216において終了する。
[0023]図3A及び図3Bは、本発明の一実施形態による、スイッチ独立型ネットワーク環境においてネットワーク接続をソフトウエアからフェイルオーバーNICへと解放するための方法ステップのフローチャートを例示している。この方法はコンピューティング装置100に関して説明されるのであるが、当業者には、任意の順序でこれら方法ステップを行うように構成された任意のシステムが本発明の範囲内に入るものであることは理解されよう。重要なことは、スイッチ独立型ネットワーク環境において、LBFOモジュール130が、図2において前述したように、ソフトウエアへと強制的に解放された各接続についてのフェイルオーバーNICを識別するということである。
[0024]図示されるように、単一のネットワーク接続をソフトウエアからフェイルオーバーNICへと解放するための方法は、ステップ302−312に記述されている。これらのステップは、方法200にてソフトウエアへと強制的に解放された各接続に対して繰り返され、強制的に解放された接続のすべてがソフトウエアから1つ以上のフェイルオーバーNICへと最終的に解放されるようにする。ステップ302にて、TCP/IPスタック134は、現在の強制的に解放された接続が解放されるべきNICを識別するようにLBFOモジュール130に要求する。また、ステップ208にて論ぜられたように、ハッシュエンジン132は、コンピューティング装置100における各NICの状態を追跡し、あるNICがフェイルし又は信頼できないものとなるときに、その接続割当てアルゴリズムを調整して、その機能しなくなった又は信頼できないNICへ新しい又は既存の接続が解放されてしまうのを避けるようにする。ステップ304にて、LBFOモジュール130は、現在の接続が解放されるべき適当なNICを識別するようにハッシュエンジン132に問い合わせる。説明のためだけであるが、現在の接続(機能しなくなったNIC110から以前に強制的に解放された接続)が解放されるべきNICとしてフェイルオーバーNIC118を識別すると仮定する。
[0025]ステップ306にて、ソフトウエアドライバ128は、機能しなくなったNIC110のMACアドレスをフェイルオーバーNIC118のマルチキャストリスト124に加え、これにより、フェイルオーバーNIC118は、機能しなくなったNIC110のMACアドレスへ宛てられたパケットを受信できるようになる。ステップ308にて、TCP/IPスタック134は、学習パケットをそのスイッチへ送るようにフェイルオーバーNIC118に指示する。学習パケットは、機能しなくなったNIC110のMACアドレスを含む任意の技術的に可能なパケットタイプであってよい。よく知られるように、フェイルオーバーNIC118からこのようなパケットを送ることにより、そのスイッチは、機能しなくなったNIC110のMACアドレスに行き先指定されたその後に続くパケットをフェイルオーバーNIC118へ伝送するように再構成させられる。従って、フェイルオーバーNIC118へ解放される現在の接続に関連した全てのネットワークトラフィックは、その後は、そのフェイルオーバーNIC118によって受信される。代理人管理番号NVDA/P001882を有する前述の関連特許出願明細書により詳細に記載されているように、このような方法の結果として、特定の機能しなくなったNICからの全ての接続は同じフェイルオーバーNICへ解放されることになる。
[0026]ステップ310にて、HOE120は、解放される現在の接続に対応するDCT122に接続状態を設定する。また、DCTエントリーにおける接続状態の設定は、その送信先IPアドレス、送信先ポート番号、送信元ポート番号及び解放される接続についての特定のTCP/IP状態の設定を含む。一実施形態では、DCTエントリーは、そのTCP/IPスタック134がその接続状態を設定するように命令をHOE120へ送り、HOE120がその命令を受け取りその接続状態を設定し、HOE120がこの動作の完了をTCP/IPスタック134に応答することにより、設定される。ステップ312において、解放される接続について、TCP/IPスタック134は、フェイルオーバーNIC118のHOE120を表すデバイスハンドルに対して接続テーブル136内のハードウエア識別子を設定する。そのハードウエア識別子は、その接続がHOE120を通して実行されることを示している。重要なことは、ある接続についてのハードウエア識別子が特定のHOEのためのデバイスハンドルに対して設定されると、その接続にて送信又は受信されるどのパケットも、その後は、そのHOEを通してハードウエアにより処理されるということである。
[0027]ステップ314にて、TCP/IPスタック134は、機能しなくなったNIC110についての全ての強制的に解放された接続がフェイルオーバーNICへ解放されたかを決定する。もし、強制的に解放された接続のすべてがフェイルオーバーNICへ解放されていない場合には、この方法は、ステップ302−312の処理へ戻り、そこで、解放されていない別の強制的に解放された接続がフェイルオーバーNICへ解放される。しかしながら、もし、全ての強制的に解放された接続がフェイルオーバーNICへ解放されている場合は、この方法はステップ316にて終了する。
[0028]図4は、本発明の一実施例による、ネットワーク接続が外部手段により新しいNICへ移されるときに、そのネットワーク接続をその新しいNICへ解放するための方法ステップのフローチャートを例示している。この方法はコンピューティング装置100に関して説明されるのであるが、当業者には、任意の順序にてこれら方法ステップを行うように構成されたどのようなシステムも本発明の範囲内に入るものであることは理解されよう。
[0029]前述したように、フェイルオーバーは、少なくとも2つの状態において接続が古いNICから新しいNIC(即ち、フェイルオーバーNIC)へと移されるときに起こる。1つの状態は、あるNICが機能しなくなった又は信頼できないものとなったと、スイッチが決定し、従って、その機能しなくなった又は信頼できないNICに関連したいくつかの又は全ての接続を1つ以上のフェイルオーバーNICへと移すようなスイッチ依存型ネットワーク環境にある。もう1つ別の状態は、ある接続についてコンピューティング装置100によって受信されるパケットが古いNIC以外のあるNIC(即ち、新しい/フェイルオーバーNIC)へ宛てられていてそれにより受信されるようなスイッチ独立型ネットワーク環境にある。ここでは、コンピューティング装置100以外のネットワークにおけるいくつかのコンピューティング装置は、その接続に関連したパケットをその新しいNICへ送信するのに主導権を握っている。両状態において、LBFOモジュール130は、ある接続に対するパケットが古いNIC以外のNICにて受信されていることを検出すると、新しいNICがその接続に対して選択されたと認識する。以下により詳細に説明するように、LBFOモジュール130は、入来パケットについてNICを監視し、接続が移されたことを入来パケットが示しているかを決定し、移された接続をその古いNICから強制的に解放し、そして、移された接続を新しいNICに解放する。説明のためだけであるが、NIC110がその古いNICであると仮定する。
[0030]図示されるように、ネットワーク接続を解放するための方法はステップ402で開始され、そこでは、LBFOモジュール130は、前述したように、ネットワークトラフィックについてNICを監視している。ステップ404にて、ある所定の接続について、LBFOモジュール130は、その接続に対するパケットが古いNIC110ではなく新しいNICにて受信されていることを検出する。ここでも又、このようなことは、少なくとも2つ状態において起こる。第1の状態は、スイッチ依存型ネットワーク環境において、スイッチが、機能しなくなった又は信頼できないNICを検出し、その接続をフェイルオーバーNICへ移すような場合である。第2の状態は、スイッチ独立型ネットワーク環境において、コンピューティング装置がある接続に対するパケットを、その接続に対するそれらパケットを当初は受信していた古いNIC以外のあるNICへと送り始めるような場合である。説明のためだけではあるが、ステップ404において識別される新しいNICはNIC118であると仮定する。ステップ406にて、ソフトウエアドライバ128は、図2に関して前述したように、その接続を古いNIC110からソフトウエアへと強制的に解放する。
[0031]ステップ408において、LBFOモジュール130は、新しいNIC118のアイデンティティをハッシュエンジン132へ通信し、それにより、ハッシュエンジン132は、その新しいNIC118におけるその付加的接続のためその内部データ構造を更新する。ステップ410にて、HOE120は、NIC118へ解放される接続に対応するDCT122に接続状態を設定する。ここでも又、DCTエントリーにおけるその接続状態の設定は、その送信先IPアドレス、送信先ポート番号、送信元ポート番号及び解放される接続についての特定のTCP/IP状態の設定を含む。一実施形態では、そのDCTエントリーは、TCP/IPスタック134がその接続状態を設定するように命令をHOE120へ送り、HOE120がその命令を受信してその接続状態を設定し、HOE120がTCP/IPスタック134に対してその動作の完了を応答することにより、設定される。ステップ412にて、解放される接続について、TCP/IPスタック134は、ステップ402へ戻る前に、接続テーブル136内のハードウエア識別子を、新しいNIC118のHOE120を表すデバイスハンドルに設定する。ここでも又、ハードウエア識別子は、そのネットワーク接続がHOE120を通して実行されることを示している。前述したように、ある接続についてのハードウエア識別子が特定のHOEのためのデバイスハンドルへ設定されるとき、その接続にて送信され又は受信されるいずれのパケットも、その後は、そのHOEを通してハードウエアにより取り扱われる。
[0032]ここで注意すべきは、古いNIC110に関連した接続がこの方法200に従ってソフトウエアへ強制的に解放された後であるが、その接続が方法400に従って新しいNICへ解放される前に、コンピューティング装置100は、その接続に対するパケットを、ソフトウエアから、ハッシュエンジン132により一時的に選択されたNICに送信することができるということである。一般的には、一時NICの選択は、付加的接続に関連したパケットの送信によりそのNICにおける既存の接続の送信性能が実質的に低下させられないようなレベルにある送信性能を現在有しているNICについて、LBFOモジュール130がハッシュエンジン132に問い合わせることにより行われる。ソフトウエアの管理下から外された強制的に解放された接続に関連するパケットが前述したように新しいNICにて受信されたことを、LBFOエンジン130が検出すると、その一時NICにおける接続に対するパケットの送信は停止され、その接続は、方法400に従って、送信及び受信パケットのためにその新しいNICへ解放される。
[0033]前述した方法の1つの効果は、スイッチ独立型ネットワーク環境において接続をフェイルオーバーするときに、ハッシュエンジンを使用してコンピューティング装置100における異なる機能的NICの間に亘ってネットワークトラフィックを知能的に分散させることにより、従来技術の解決方法に比べてネットワーク性能を大幅に改善できるということである。前述した方法のもう1つ別の効果は、ネットワーク接続をフェイルオーバーNICへ移すときに、そのネットワーク接続をそのフェイルオーバーNICへ解放することにより、従来技術の解決方法に比べてコンピューティング装置の性能を大幅に改善できるということである。
[0034]本発明の実施形態は上述のとおりであるが、本発明の基本的な範囲から逸脱せずに、本発明の他の更なる実施形態を考えることが可能である。本発明の範囲は、特許請求の範囲の記載によって定められる。
本発明の1つ以上の態様を実施することができるコンピューティング装置を例示している。 本発明の1つ以上の態様を実施することができるコンピューティング装置を例示している。 ネットワーク接続を機能しなくなったNICからソフトウエアへ強制的に解放するための方法ステップのフローチャートを例示している。 スイッチ独立型ネットワーク環境において、ネットワーク接続をソフトウエアからフェイルオーバーNICへと解放するための方法ステップのフローチャートを例示している。 スイッチ独立型ネットワーク環境において、ネットワーク接続をソフトウエアからフェイルオーバーNICへと解放するための方法ステップのフローチャートを例示している。 ネットワーク接続が外部手段により新しいNICへと移されるときに、そのネットワーク接続をその新しいNICへ解放するための方法ステップのフローチャートを例示している。
符号の説明
100・・・コンピューティング装置、102・・・主メモリ、104・・・メモリコントローラ、106・・・マイクロプロセッサ、108・・・入出力コントローラ、110・・・ネットワークインターフェースカード(NIC)、112・・・ハードウエア解放エンジン(HOE)、114・・・候補接続テーブル(DCT)、116・・・マルチキャストリスト、118・・・ネットワークインターフェースカード(NIC)、120・・・ハードウエア解放エンジン(HOE)、122・・・候補接続テーブル(DCT)、124・・・マルチキャストリスト、126・・・オペレーティングシステム、128・・・ソフトウエアドライバ、130・・・ロードバランシング及びフェイルオーバー(LBFO)モジュール、132・・・ハッシュエンジン、134・・・ソフトウエアTCP/IP(送信制御プロトコル及びインターネットプロトコル)スタック、136・・・接続テーブル

Claims (22)

  1. ネットワーク接続をホストソフトウエアモジュールからフェイルオーバーネットワークインターフェースカード(NIC)に含まれる第1のハードウエア解放エンジンへ解放するための方法であって、該第1のハードウエア解放エンジンがネットワークフレームを処理する、該方法において、
    複数の機能的NICによって受信されるパケットを監視するステップであって、前記ネットワーク接続を介して送信されたパケット前記複数の機能的NICにおける第1のNICによって受信される、ステップと、
    前記ネットワーク接続を介して送信されたパケットが前記複数の機能的NICにおける第2のNICによって受信されたことを検出し、前記第2のNICを前記フェイルオーバーNICとして識別するステップと、
    フェイルオーバーNICのアイデンティティを決定するために使用されるハッシュアルゴリズムを実行するハッシュエンジンへ前記フェイルオーバーNICのアイデンティティを通信するステップと、
    前記第1のハードウエア解放エンジンに含まれる第1の候補接続テーブルに、前記ネットワーク接続についての接続状態を示す情報を含むエントリーを設定するステップと、
    前記ネットワーク接続に対応する前記ホストソフトウエアモジュールに含まれる接続テーブルに、前記ネットワーク接続を介して送信または受信されたパケットが前記第1のハードウエア解放エンジンを通して処理されることを示すハードウエア識別子を設定するステップと、
    を備える方法。
  2. 前記ネットワーク接続は、スイッチ依存型ネットワーク環境において確立され、前記スイッチは、前記ネットワーク接続を介してパケット前記第1のNICへ送信することを停止し、前記ネットワーク接続を介してパケット前記第2のNICへ送信することを開始する、
    請求項1に記載の方法。
  3. 前記ネットワーク接続は、スイッチ独立型ネットワーク環境において確立され、外部コンピューティング装置は、前記ネットワーク接続を介してパケット前記第1のNICへ送信することを停止し、前記ネットワーク接続を介してパケット前記第2のNICへ送信することを開始する、請求項1に記載の方法。
  4. 前記ネットワーク接続は、送信制御プロトコル及びインターネットプロトコル(TCP/IP)接続であり、前記ホストソフトウエアモジュールは、TCP/IPスタックである、請求項1に記載の方法。
  5. 前記第1のNICに含まれる第2のハードウエア解放エンジンから前記ネットワーク接続を強制的に解放するステップを更に備える、請求項1に記載の方法。
  6. 前記ハッシュアルゴリズムの出力により一時的に選択される一時NICのアイデンティティを決定するステップを更に備える、請求項5に記載の方法。
  7. 前記一時NICを介してパケットを送信するステップを更に備える、請求項6に記載の方法。
  8. 前記ネットワーク接続を介して送信されたパケットが前記第2のNICによって受信されたことを検出したときに、前記一時NICを介してのパケット送信を停止するステップを更に備える、請求項7に記載の方法。
  9. 前記第1のNICに含まれる前記第2のハードウエア解放エンジンから前記ネットワーク接続を強制的に解放するステップは、
    前記第1のNICが機能しなくなった又は信頼できないものとなったことを検出し、そのことを知らせる信号を送る段階と、
    前記第1のNICが機能しなくなった又は信頼できないものとなったことを、前記ハッシュアルゴリズムを実行するハッシュエンジンに知らせる段階と、
    前記第2のハードウエア解放エンジンに含まれる第2の候補接続テーブルにおける、前記ネットワーク接続についての接続状態を示す情報を含むエントリーを無効とする段階と、
    前記ネットワーク接続に対応する前記ホストソフトウエアモジュールに含まれる前記接続テーブルにおいて、前記ネットワーク接続を介して送信または受信されたパケットが前記ホストソフトウエアモジュールを通して処理されることを示すハードウエア識別子を無効とする段階と、
    を含む、請求項5に記載の方法。
  10. 前記第2のハードウエア解放エンジンから前記ネットワーク接続を強制的に解放するステップは、前記第2の候補接続テーブルのエントリーにおける前記ネットワーク接続についての接続状態と、前記ホストソフトウエアモジュールに含まれる前記接続テーブルにおける前記ネットワーク接続についての接続状態とを同期する段階を更に含む、請求項9に記載の方法。
  11. 前記ネットワーク接続は、送信制御プロトコル及びインターネットプロトコル(TCP/IP)接続であり、前記ホストソフトウエアモジュールは、TCP/IPスタックである、請求項10に記載の方法。
  12. ネットワーク接続をネットワークプロトコルモジュールからフェイルオーバーネットワークインターフェースカード(NIC)に含まれる第1のハードウエア解放エンジンへ解放するように構成されたコンピューティング装置であり、該第1のハードウエア解放エンジンがネットワークフレームを処理する、該装置であって、
    前記フェイルオーバーNICを含む複数のNICと、
    ホストプロセッサと、
    前記ホストプロセッサに結合され、ハッシュエンジンを含むロードバランシングフェイルオーバー(LBFO)モジュールと接続テーブルを含む前記ネットワークプロトコルモジュールとを有するソフトウエアドライバを記憶するように構成されたホストメモリと、
    を備え、
    前記LBFOモジュールは、複数の機能的NICにより受信されるパケットを監視するように構成され、前記ネットワーク接続を介して送信されたパケット前記複数の機能的NICにおける第1のNICによって受信され、
    前記LBFOモジュールは、更に、前記ネットワーク接続を介して送信されたパケットが前記複数の機能的NICにおける第2のNICによって受信されたことを検出し、前記第2のNICを前記フェイルオーバーNICとして識別するように構成され、
    前記LBFOモジュールは、更に、フェイルオーバーNICのアイデンティティを決定するのに使用されるハッシュエンジンを実行する前記ハッシュエンジン及び前記ネットワークプロトコルモジュールへ前記フェイルオーバーNICのアイデンティティを通信するように構成され、
    前記ネットワークプロトコルモジュールは、前記フェイルオーバーNICのアイデンティティを学習したときに、前記第1のハードウエア解放エンジンに、前記ネットワーク接続についての接続状態を示す情報を含むエントリーを前記第1のハードウエア解放エンジンに含まれる第1の候補接続テーブルに設定させ、
    前記ネットワークプロトコルモジュールは、更に、前記ネットワーク接続に対応する前記接続テーブルに、前記ネットワーク接続を介して送信または受信されたパケットが前記第1のハードウエア解放エンジンを通して処理されることを示すハードウエア識別子を設定するように構成される、
    コンピューティング装置。
  13. 前記ネットワーク接続は、スイッチ依存型ネットワーク環境において確立され、前記スイッチは、前記ネットワーク接続を介してパケット前記第1のNICへ送信することを停止し、前記ネットワーク接続を介してパケット前記第2のNICへ送信することを開始する、
    請求項12に記載のコンピューティング装置。
  14. 前記ネットワーク接続は、スイッチ独立型ネットワーク環境において確立され、外部コンピューティング装置は、前記ネットワーク接続を介してパケット前記第1のNICへ送信することを停止し、前記ネットワーク接続を介してパケット前記第2のNICへ送信することを開始する、請求項12に記載のコンピューティング装置。
  15. 前記ネットワーク接続は、送信制御プロトコル及びインターネットプロトコル(TCP/IP)接続であり、前記ネットワークプロトコルモジュールは、TCP/IPスタックである、請求項12に記載のコンピューティング装置。
  16. 前記ネットワーク接続は、前記第1のNICに含まれる第2のハードウエア解放エンジンから強制的に解放されている、請求項12に記載のコンピューティング装置。
  17. 前記LBFOモジュールは、前記ハッシュエンジンによって実行された前記ハッシュアルゴリズムの出力により一時的に選択される一時NICのアイデンティティを決定するように構成される、請求項16に記載のコンピューティング装置。
  18. 1つ以上のパケットが前記一時NICを介して送信される、請求項17に記載のコンピューティング装置。
  19. 前記LBFOモジュールは、前記ネットワーク接続を介して送信されたパケットが前記第2のNICによって受信されたことを検出したときに、前記一時NICを介してのパケット送信を停止するように構成される、請求項18に記載のコンピューティング装置。
  20. 前記第1のNICに含まれる前記第2のハードウエア解放エンジンから前記ネットワーク接続を強制的に解放するステップは、
    前記LBFOモジュールが、前記第1のNICが機能しなくなった又は信頼できないものとなったことを検出し、前記第1のNICが機能しなくなった又は信頼できないものとなったことを知らせる信号を前記ネットワークプロトコルモジュールに送るように構成され、
    前記LBFOモジュールが、更に、前記第1のNICが機能しなくなった又は信頼できないものとなったことを、前記ハッシュエンジンに知らせるように構成され、
    前記ネットワークプロトコルモジュールが、前記第2のハードウエア解放エンジンに含まれる第2の候補接続テーブルにおいて前記ネットワーク接続についての接続状態を示す情報を含むエントリーを無効とするように前記第2のハードウエア解放エンジンに通信するように構成され、
    前記第2のハードウエア解放エンジンが、前記ネットワークプロトコルモジュールからの前記通信に応答して、前記第2の候補接続テーブルにおいて前記エントリーを無効とするように構成され、
    前記ネットワークプロトコルモジュールが、更に、前記ネットワーク接続に対応する前記接続テーブルにおいて、前記ネットワーク接続を介して送信または受信されたパケットが前記ネットワークプロトコルモジュールを通して処理されることを示すハードウエア識別子を無効とするように構成される、
    ことを含む、請求項16に記載のコンピューティング装置。
  21. 前記ネットワークプロトコルモジュールは、更に、前記第2の候補接続テーブルのエントリーにおける前記ネットワーク接続についての接続状態と、前記接続テーブルにおける前記ネットワーク接続についての接続状態とを同期するように構成される、請求項20に記載のコンピューティング装置。
  22. 前記ネットワーク接続は、送信制御プロトコル及びインターネットプロトコル(TCP/IP)接続であり、前記ネットワークプロトコルモジュールは、TCP/IPスタックである、請求項21に記載のコンピューティング装置。
JP2008126217A 2007-05-18 2008-05-13 ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー Expired - Fee Related JP5272263B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/750,980 2007-05-18
US11/750,980 US7756012B2 (en) 2007-05-18 2007-05-18 Intelligent failover in a load-balanced network environment

Publications (2)

Publication Number Publication Date
JP2009009552A JP2009009552A (ja) 2009-01-15
JP5272263B2 true JP5272263B2 (ja) 2013-08-28

Family

ID=40027371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008126217A Expired - Fee Related JP5272263B2 (ja) 2007-05-18 2008-05-13 ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー

Country Status (5)

Country Link
US (1) US7756012B2 (ja)
JP (1) JP5272263B2 (ja)
KR (1) KR100927498B1 (ja)
CN (1) CN101360005B (ja)
TW (1) TWI410084B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7457861B1 (en) * 2003-12-05 2008-11-25 Unisys Corporation Optimizing virtual interface architecture (VIA) on multiprocessor servers and physically independent consolidated NICs
US9430297B2 (en) * 2008-12-15 2016-08-30 International Business Machines Corporation Load balancing of adapters on a multi-adapter node
US8254249B2 (en) * 2009-08-06 2012-08-28 Telefonaktiebolaget L M Ericsson (Publ) Session resilience prioritization queuing mechanism to minimize and eliminate packet loss
US8626900B2 (en) 2010-07-02 2014-01-07 At&T Intellectual Property I, L.P. Method and system to proactively identify degraded network performance
US9154427B2 (en) * 2012-12-31 2015-10-06 Emulex Corporation Adaptive receive path learning to facilitate combining TCP offloading and network adapter teaming
CN105635331B (zh) * 2014-11-18 2019-10-18 阿里巴巴集团控股有限公司 一种分布式环境下的服务寻址方法及装置
CN105406989B (zh) * 2015-10-26 2019-04-05 华为技术有限公司 处理报文的方法、网卡及系统、更新信息的方法及主机
IL242353B (en) * 2015-10-29 2021-01-31 Verint Systems Ltd System and method for soft failovers for proxy servers
US11750441B1 (en) * 2018-09-07 2023-09-05 Juniper Networks, Inc. Propagating node failure errors to TCP sockets
US11334546B2 (en) 2019-05-31 2022-05-17 Cisco Technology, Inc. Selecting interfaces for device-group identifiers

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3224876B2 (ja) * 1992-10-15 2001-11-05 株式会社東芝 多重通信分散処理システム
EP0660569A1 (en) 1993-12-22 1995-06-28 International Business Machines Corporation Method and system for improving the processing time of the path selection in a high speed packet switching network
JPH0816422A (ja) 1994-07-04 1996-01-19 Fujitsu Ltd バス通信方法及びバス通信システム
US5724510A (en) 1996-09-06 1998-03-03 Fluke Corporation Method of configuring a valid IP address and detecting duplicate IP addresses in a local area network
US5864535A (en) 1996-09-18 1999-01-26 International Business Machines Corporation Network server having dynamic load balancing of messages in both inbound and outbound directions
US5914938A (en) 1996-11-19 1999-06-22 Bay Networks, Inc. MAC address table search unit
US6052733A (en) 1997-05-13 2000-04-18 3Com Corporation Method of detecting errors in a network
US6208616B1 (en) 1997-05-13 2001-03-27 3Com Corporation System for detecting errors in a network
US6151297A (en) 1997-07-08 2000-11-21 Hewlett-Packard Company Method and system for link level server/switch trunking
US6687758B2 (en) 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
US6570875B1 (en) 1998-10-13 2003-05-27 Intel Corporation Automatic filtering and creation of virtual LANs among a plurality of switch ports
US6590861B1 (en) 1999-03-18 2003-07-08 3Com Corporation Combining virtual local area networks and load balancing with fault tolerance in a high performance protocol
US6512774B1 (en) * 1999-03-18 2003-01-28 3Com Corporation Fail over with multiple network interface cards
US6567377B1 (en) 1999-03-18 2003-05-20 3Com Corporation High performance load balancing of outbound internet protocol traffic over multiple network interface cards
US6560630B1 (en) 1999-03-18 2003-05-06 3Com Corporation Receive load balancing and fail over with multiple network interface cards
US7299294B1 (en) 1999-11-10 2007-11-20 Emc Corporation Distributed traffic controller for network data
US6683882B1 (en) 1999-11-09 2004-01-27 3Com Corporation Method and system for directing transmission of IPX control packets to influence reception of IPX data packets
US6874147B1 (en) 1999-11-18 2005-03-29 Intel Corporation Apparatus and method for networking driver protocol enhancement
US6779039B1 (en) 2000-03-31 2004-08-17 Avaya Technology Corp. System and method for routing message traffic using a cluster of routers sharing a single logical IP address distinct from unique IP addresses of the routers
US20010056503A1 (en) 2000-04-27 2001-12-27 Hibbard Richard J. Network interface device having primary and backup interfaces for automatic dial backup upon loss of a primary connection and method of using same
JP2003078567A (ja) 2001-09-05 2003-03-14 Nippon Telegr & Teleph Corp <Ntt> 分散配置型高信頼通信システムおよびその制御装置、ならびに障害検知方法とそのプログラムと記録媒体
US6938192B1 (en) * 2001-12-07 2005-08-30 Broadband Energy Networks Method and system for increasing reliability of data packet transmission against impulsive noise in powerline communication systems
KR20050002865A (ko) * 2002-04-18 2005-01-10 인터내셔널 비지네스 머신즈 코포레이션 인피니밴드 채널 어댑터 장애용 리던던시 제공 방법 및 컴퓨터 시스템
US7116664B2 (en) 2002-05-13 2006-10-03 International Business Machines Corporation Lookups by collisionless direct tables and CAMs
US6721806B2 (en) * 2002-09-05 2004-04-13 International Business Machines Corporation Remote direct memory access enabled network interface controller switchover and switchback support
US7415028B1 (en) 2003-02-11 2008-08-19 Network Equipment Technologies, Inc. Method and system for optimizing routing table changes due to ARP cache invalidation in routers with split plane architecture
US7324512B2 (en) 2003-06-12 2008-01-29 International Business Machines Corporation MAC layer bridging of network frames between isolated and external networks
US7934020B1 (en) 2003-09-19 2011-04-26 Vmware, Inc. Managing network data transfers in a virtual computer system
EP1697842A2 (en) 2003-12-11 2006-09-06 Bladefusion Technologies 2003 LTD. Method and an apparatus for controlling executables running on blade servers
US7257731B2 (en) * 2003-12-23 2007-08-14 Nokia Inc. System and method for managing protocol network failures in a cluster system
US7877519B2 (en) 2004-10-18 2011-01-25 Intel Corporation Selecting one of a plurality of adapters to use to transmit a packet
US7505401B2 (en) 2005-01-31 2009-03-17 International Business Machines Corporation Method, apparatus and program storage device for providing mutual failover and load-balancing between interfaces in a network
JP2006253900A (ja) 2005-03-09 2006-09-21 Hitachi Ltd Ipアドレス引き継ぎ方法、ipアドレスアドレス引き継ぎプログラム、サーバおよびネットワークシステム
US7797460B2 (en) 2005-03-17 2010-09-14 Microsoft Corporation Enhanced network system through the combination of network objects
US7876689B2 (en) 2005-06-29 2011-01-25 Hewlett-Packard Development Company, L.P. Method and apparatus for load balancing network interface adapters based on network information
US20070201490A1 (en) 2005-07-13 2007-08-30 Mahamuni Atul B System and method for implementing ethernet MAC address translation
US7872965B2 (en) 2005-08-01 2011-01-18 Hewlett-Packard Development Company, L.P. Network resource teaming providing resource redundancy and transmit/receive load-balancing through a plurality of redundant port trunks
US7619993B2 (en) 2005-11-01 2009-11-17 International Business Machines Corporation Efficient probabilistic duplicate packet detector in computer networks
US7710862B2 (en) 2006-08-30 2010-05-04 Hewlett-Packard Development Company, L.P. Method and system of assigning media access control (MAC) addresses across teamed communication ports

Also Published As

Publication number Publication date
TWI410084B (zh) 2013-09-21
JP2009009552A (ja) 2009-01-15
CN101360005B (zh) 2011-05-18
CN101360005A (zh) 2009-02-04
KR100927498B1 (ko) 2009-11-17
KR20080101792A (ko) 2008-11-21
TW200920027A (en) 2009-05-01
US7756012B2 (en) 2010-07-13
US20080285472A1 (en) 2008-11-20

Similar Documents

Publication Publication Date Title
JP4974964B2 (ja) ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー
JP5272263B2 (ja) ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー
US8432788B2 (en) Intelligent failback in a load-balanced networking environment
US7107481B2 (en) Server takeover system and method
US7929418B2 (en) Data packet communication protocol offload method and system
KR101419579B1 (ko) 서버 고장 상황에서 클라이언트 어플리케이션의 더 빠른 복구를 가능하게 하는 방법
JP2009187090A (ja) クラスタシステムおよび情報処理方法
CN113507431B (zh) 一种报文管理方法、装置、设备及机器可读存储介质
JP2015041947A (ja) 情報処理装置、情報処理方法及びプログラム
JP2009003491A (ja) クラスタシステムにおけるサーバ切り替え方法
JP2005527898A (ja) チャネル・アダプタ障害に対する冗長性を提供する方法
JP2011018106A (ja) 通信プロトコル処理装置およびその方法
TW201436509A (zh) 網路交換器與資料更新方法
CN113852514A (zh) 服务不中断的数据处理系统、处理设备切换方法、连接设备
US8098573B2 (en) Bridge, system, bridge control method and program recording medium
JP7120678B1 (ja) 通信処理装置、通信処理システム、障害通知方法及び障害通知プログラム
JP2010245757A (ja) 障害時の無停止通信復旧システム及び方法
WO2021024377A1 (ja) L2スイッチ、通信制御方法、および、通信制御プログラム
JP2008166886A (ja) 情報中継装置
JP2007214746A (ja) 二重化通信システム
JP2002163227A (ja) 情報処理システム
KR20010055042A (ko) 프락시 모빌리티 에이젼트를 이용한 빠른 복구 장치 및 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130426

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees