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

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

Info

Publication number
JP2008305394A
JP2008305394A JP2008128721A JP2008128721A JP2008305394A JP 2008305394 A JP2008305394 A JP 2008305394A JP 2008128721 A JP2008128721 A JP 2008128721A JP 2008128721 A JP2008128721 A JP 2008128721A JP 2008305394 A JP2008305394 A JP 2008305394A
Authority
JP
Japan
Prior art keywords
nic
connection
network
failover
hardware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008128721A
Other languages
English (en)
Other versions
JP4974964B2 (ja
Inventor
Ayaz Abdulla
アブドラ アヤツ
Norman K Chen
ケー. チェン ノーマン
Anand Rjagopalan
ラジャゴパラン アナンド
Ashutosh K Jha
ケー. ジャ アシュトシュ
Hemamalini Manickavasagam
マニカヴァサガム ヘママリニ
Sameer Nanda
ナンダ サミール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of JP2008305394A publication Critical patent/JP2008305394A/ja
Application granted granted Critical
Publication of JP4974964B2 publication Critical patent/JP4974964B2/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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/1735Network adapters, e.g. SCI, Myrinet
    • 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]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • 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/1608Error detection by comparing the output signals of redundant hardware
    • G06F11/1625Error detection by comparing the output signals of redundant hardware in communications, e.g. transmission, interfaces
    • 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
    • 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
    • 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/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】NICの過負荷などの現象の発生を減少させるように、ネットワーク接続を一以上の信頼できるNICへとフェイルオーバーすること。
【解決手段】ネットワークデバイスドライバ内のハッシュテーブルには、各ネットワークインターフェース(NIC)のトラフィック特性に関するデータが維持される。NICの1つが信頼できなくなった場合には、ソフトウエアドライバは、残りのNICの間でのネットワークトラフィック再分散を開始する。ソフトウエアドライバは、残りのNICに亘るネットワークトラフィックの分散を最適化する方法で、信頼できないNICに係るネットワーク接続の各々を、信頼できるNICに知能的にリダイレクトする。ある接続が古いNICから新しいNICへと移されると、ソフトウエアドライバは、その接続を検出して新しいNICに係るハードウエア解放エンジンへ解放する。
【選択図】図3A

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」と題する関連米国特許出願明細書に記載されているところである。従って、この関連特許出願明細書の記載は、ここに援用される。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に問い合わせる。説明のためだけであるが、ハッシュエンジン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へ解放するための方法ステップのフローチャートを例示している。 ネットワーク接続が外部手段により新しい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 (10)

  1. スイッチ独立型ネットワーク環境において、ネットワーク接続をホストソフトウエアモジュールからフェイルオーバーネットワークインターフェースカード(NIC)に含まれる第1のハードウエア解放エンジンへ解放するための方法において、
    前記フェイルオーバーNICのアイデンティティを要求するステップと、
    ハッシュアルゴリズムの出力から前記フェイルオーバーNICの前記アイデンティティを決定するステップと、
    前記第1のハードウエア解放エンジンに含まれる第1の候補接続テーブルに前記ネットワーク接続についての接続状態を含むエントリーを設定するステップと、
    前記ネットワーク接続に対応する前記ホストソフトウエアモジュールに含まれる接続テーブルに、前記ネットワーク接続が前記第1のハードウエア解放エンジンを通して実行されることを示すハードウエア識別子を設定するステップと、
    を備える方法。
  2. 前記ネットワーク接続は、機能しなくなった又は信頼できないものとなった第2のNICに含まれる第2のハードウエア解放エンジンから強制的に解放されており、前記第2のNICに関連付けられたメディアアクセス制御(MAC)アドレスを前記フェイルオーバーNICに関連付けられたマルチキャストリストに加えるステップを更に備える、請求項1に記載の方法。
  3. 前記第2のNICに関連付けられた前記MACアドレスを前記フェイルオーバーNICに関連付けられた前記マルチキャストリストへ加えることにより、前記フェイルオーバーNICが、前記第2のNICに関連付けられた前記MACアドレスへ宛てられたパケットを受信できるようになる、請求項2に記載の方法。
  4. 前記ネットワーク接続を前記ホストソフトウエアモジュールから前記フェイルオーバーNICに含まれる前記第1のハードウエア解放エンジンへ解放する前に、前記ネットワーク接続を第2のNICに含まれる第2のハードウエア解放エンジンから前記ホストソフトウエアモジュールへ強制的に解放するステップを更に備える、請求項1に記載の方法。
  5. 前記ネットワーク接続を前記第2のNICに含まれる前記第2のハードウエア解放エンジンから強制的に解放するステップは、
    前記第2のNICが機能しなくなった又は信頼できないものとなったことを知らせる信号を送る段階と、
    前記第2のNICが機能しなくなった又は信頼できないものとなったことを、前記ハッシュアルゴリズムを実行するハッシュエンジンに知らせる段階と、
    前記第2のハードウエア解放エンジンに含まれる第2の候補接続テーブルにおける、前記ネットワーク接続についての接続状態を含むエントリーを無効とする段階と、
    前記ネットワーク接続に対応する前記ホストソフトウエアモジュールに含まれる前記接続テーブルにおける、前記ネットワーク接続が前記ホストソフトウエアモジュールを通して実行されることを示す前記ハードウエア識別子を無効とする段階と、
    を含む、請求項4に記載の方法。
  6. スイッチ独立型ネットワーク環境において、ネットワーク接続をネットワークプロトコルモジュールからフェイルオーバーネットワークインターフェースカード(NIC)に含まれる第1のハードウエア解放エンジンへ解放するように構成されたコンピューティング装置において、
    前記フェイルオーバーNICを含む複数のNICと、
    ホストプロセッサと、
    前記ホストプロセッサに結合され、ハッシュエンジンを含むロードバランシングフェイルオーバー(LBFO)モジュール及び接続テーブルを含む前記ネットワークプロトコルモジュールを有するソフトウエアドライバを記憶するように構成されたホストメモリと、
    を備え、
    前記ネットワークプロトコルモジュールは、前記LBFOモジュールから前記フェイルオーバーNICのアイデンティティを要求するように構成され、
    前記LBFOモジュールは、前記ハッシュエンジンによって実行されるハッシュアルゴリズムの出力から前記フェイルオーバーNICのアイデンティティを決定するように構成され、
    前記フェイルオーバーNICのアイデンティティを学習するとき、前記ネットワークプロトコルモジュールは、前記第1のハードウエア解放エンジンに含まれる第1の候補接続テーブルに、前記ネットワーク接続についての接続状態を含むエントリーを設定するように前記第1のハードウエア解放エンジンへ通信するように更に構成され、
    前記第1のハードウエア解放エンジンは、前記ネットワークプロトコルモジュールからの前記通信に応答して、前記第1の候補接続テーブルに前記エントリーを設定するように構成され、
    前記ネットワークプロトコルモジュールは、前記ネットワーク接続に対応する前記接続テーブルに、前記ネットワーク接続が前記第1のハードウエア解放エンジンを通して実行されることを示すハードウエア識別子を設定するように更に構成される、
    コンピューティング装置。
  7. 前記複数のNICは、機能しなくなった又は信頼できないものとなった第2のNICを含み、前記ネットワーク接続は、第2のNICに含まれる第2のハードウエア解放エンジンから強制的に解放され、前記ソフトウエアドライバは、前記第2のNICに関連付けられたメディアアクセス制御(MAC)アドレスを前記フェイルオーバーNICに関連付けられたマルチキャストリストに加えるように構成される、請求項6に記載のコンピューティング装置。
  8. 前記第2のNICに関連付けられた前記MACアドレスを前記フェイルオーバーNICに関連付けられた前記マルチキャストリストへ加えることにより、前記フェイルオーバーNICが、前記第2のNICに関連付けられた前記MACアドレスへ宛てられたパケットを受信できるようになる、請求項7に記載のコンピューティング装置。
  9. 前記複数のNICは、機能しなくなった又は信頼できないものとなった第2のNICを含み、前記ネットワーク接続は、前記ネットワークプロトコルモジュールから前記フェイルオーバーNICに含まれる前記第1のハードウエア解放エンジンへ解放される前に、前記第2のNICに含まれる第2のハードウエア解放エンジンから前記ネットワークプロトコルモジュールへ強制的に解放される、請求項6に記載のコンピューティング装置。
  10. 前記LBFOモジュールは、前記第2のNICが機能しなくなった又は信頼できないものとなったことを知らせる信号を前記ネットワークプロトコルモジュールへ送るように構成され、
    前記LBFOモジュールは、前記第2のNICが機能しなくなった又は信頼できないものとなったことを前記ハッシュエンジンに知らせるように更に構成され、
    前記ネットワークプロトコルモジュールは、前記第2のハードウエア解放エンジンに含まれる第2の候補接続テーブルにおける前記ネットワーク接続についての接続状態を含むエントリーを無効とするように前記第2のハードウエア解放エンジンへ通信するように構成され、
    前記第2のハードウエア解放エンジンは、前記ネットワークプロトコルモジュールからの前記通信に応答して、前記第2の候補接続テーブルにおける前記エントリーを無効とするように構成され、
    前記ネットワークプロトコルモジュールは、前記ネットワーク接続に対応する前記接続テーブルにおける前記ネットワーク接続が前記ネットワークプロトコルモジュールを通して実行されることを示すハードウエア識別子を無効とするように更に構成される、
    請求項9に記載のコンピューティング装置。
JP2008128721A 2007-05-18 2008-05-15 ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー Expired - Fee Related JP4974964B2 (ja)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
JP2008305394A true JP2008305394A (ja) 2008-12-18
JP4974964B2 JP4974964B2 (ja) 2012-07-11

Family

ID=40027405

Family Applications (1)

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

Country Status (5)

Country Link
US (1) US7760619B2 (ja)
JP (1) JP4974964B2 (ja)
KR (1) KR101038364B1 (ja)
CN (1) CN101321085B (ja)
TW (1) TWI348846B (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1236354A4 (en) 1999-11-10 2009-04-22 Yahoo Inc INTERNET RADIO AND BROADCASTING METHOD
JP5176482B2 (ja) * 2007-10-26 2013-04-03 富士通株式会社 管理プログラム、管理方法、管理装置および通信システム
CN101631110B (zh) * 2008-07-15 2013-01-02 国际商业机器公司 基于相对位置动态确定连接建立机制的装置和方法
WO2013022433A1 (en) * 2011-08-09 2013-02-14 Hewlett-Packard Development Company, L.P. Count values to detect disconnected circuit
US9749173B2 (en) 2012-09-11 2017-08-29 Ciena Corporation Systems and methods for synchronizing forwarding databases across multiple interconnected layer-2 switches
US9098434B2 (en) 2012-09-11 2015-08-04 Ciena Corporation Load balancing systems and methods of MAC learning in multi-slot architectures
TWI466498B (zh) * 2012-12-10 2014-12-21 Chunghwa Telecom Co Ltd A system and method for providing an autonomous load balancing host in a distributed environment
CN104579727B (zh) 2013-10-17 2018-02-06 国际商业机器公司 一种管理网络节点的网络连接的方法和装置
US9525608B2 (en) * 2015-02-25 2016-12-20 Quanta Computer, Inc. Out-of band network port status detection
US10305796B2 (en) 2015-06-01 2019-05-28 Ciena Corporation Enhanced forwarding database synchronization for media access control addresses learned in interconnected layer-2 architectures
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
KR101881352B1 (ko) 2016-10-06 2018-07-25 주식회사 복음자리 국내산 밤을 활용한 밤 스프레드의 제조방법
KR102479757B1 (ko) * 2020-11-24 2022-12-22 한국과학기술원 네트워크 및 파일 입출력 연산 오프로딩 방법, 연산 오프로딩 시스템 및 컴퓨터 판독 가능 기록매체

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208616B1 (en) * 1997-05-13 2001-03-27 3Com Corporation System for detecting errors in a network
JP2002524005A (ja) * 1998-08-28 2002-07-30 アラクリテック・インコーポレイテッド 通信を高速化するインテリジェントネットワークインタフェース装置及びシステム
US6512774B1 (en) * 1999-03-18 2003-01-28 3Com Corporation Fail over with multiple network interface cards
JP2006191537A (ja) * 2004-11-12 2006-07-20 Microsoft Corp 統合ホストプロトコルスタック管理を使用するセキュアなインターネットプロトコル(ispec)オフロードのための方法および装置
JP2006524005A (ja) * 2003-04-15 2006-10-19 トムソン ライセンシング ゲスト・ユーザーおよびローカル・ユーザーの双方のために企業用のホット・スポットにおけるシームレスなアクセスを提供する技術

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
US6560630B1 (en) 1999-03-18 2003-05-06 3Com Corporation Receive load balancing and 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
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
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
AU2001257364A1 (en) 2000-04-27 2001-11-07 Fortress Technologies, Inc. Network interface device having primary and backup interfaces for automatic dialbackup upon loss of a primary connection and method of using same
US7116664B2 (en) 2002-05-13 2006-10-03 International Business Machines Corporation Lookups by collisionless direct tables and CAMs
JP2003348093A (ja) * 2002-05-27 2003-12-05 Nec Corp 通信処理装置およびネットワークインタフェース切り替え方法
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
AU2003286412A1 (en) 2003-12-11 2005-06-29 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アドレスアドレス引き継ぎプログラム、サーバおよびネットワークシステム
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208616B1 (en) * 1997-05-13 2001-03-27 3Com Corporation System for detecting errors in a network
JP2002524005A (ja) * 1998-08-28 2002-07-30 アラクリテック・インコーポレイテッド 通信を高速化するインテリジェントネットワークインタフェース装置及びシステム
US6512774B1 (en) * 1999-03-18 2003-01-28 3Com Corporation Fail over with multiple network interface cards
JP2006524005A (ja) * 2003-04-15 2006-10-19 トムソン ライセンシング ゲスト・ユーザーおよびローカル・ユーザーの双方のために企業用のホット・スポットにおけるシームレスなアクセスを提供する技術
JP2006191537A (ja) * 2004-11-12 2006-07-20 Microsoft Corp 統合ホストプロトコルスタック管理を使用するセキュアなインターネットプロトコル(ispec)オフロードのための方法および装置

Also Published As

Publication number Publication date
CN101321085B (zh) 2012-03-14
US20080285552A1 (en) 2008-11-20
TW200913568A (en) 2009-03-16
US7760619B2 (en) 2010-07-20
TWI348846B (en) 2011-09-11
JP4974964B2 (ja) 2012-07-11
KR20080101787A (ko) 2008-11-21
CN101321085A (zh) 2008-12-10
KR101038364B1 (ko) 2011-06-01

Similar Documents

Publication Publication Date Title
JP4974964B2 (ja) ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー
JP5272263B2 (ja) ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー
JP4925218B2 (ja) ロードバランス型ネットワーク環境におけるインテリジェントフェイルバック
US8300647B2 (en) Intelligent load balancing and failover of network traffic
RU2562760C2 (ru) Система управления маршрутом связи и способ управления маршрутом связи
US7797565B1 (en) System and method for maintaining communication protocol connections during failover
US20180109456A1 (en) System, method, and device for network load balance processing
JP2009187090A (ja) クラスタシステムおよび情報処理方法
US7676623B2 (en) Management of proprietary devices connected to infiniband ports
CN113507431B (zh) 一种报文管理方法、装置、设备及机器可读存储介质
JP2005527898A (ja) チャネル・アダプタ障害に対する冗長性を提供する方法
JP2009003491A (ja) クラスタシステムにおけるサーバ切り替え方法
KR20030050551A (ko) 패킷데이터서비스네트워크에서 홈 에이전트 장애 처리장치 및 그 방법
WO2021024377A1 (ja) L2スイッチ、通信制御方法、および、通信制御プログラム
JP7120678B1 (ja) 通信処理装置、通信処理システム、障害通知方法及び障害通知プログラム
TW201436509A (zh) 網路交換器與資料更新方法
US8098573B2 (en) Bridge, system, bridge control method and program recording medium
WO2020177471A1 (zh) 报文传输方法、装置及存储介质
US8935406B1 (en) Network adaptor configured for connection establishment offload
JP2010245757A (ja) 障害時の無停止通信復旧システム及び方法
JP2007214746A (ja) 二重化通信システム
JP2002163227A (ja) 情報処理システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110607

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110623

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120410

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150420

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees