JP3372455B2 - パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 - Google Patents
パケット中継制御方法,パケット中継装置およびプログラム記憶媒体Info
- Publication number
- JP3372455B2 JP3372455B2 JP17806297A JP17806297A JP3372455B2 JP 3372455 B2 JP3372455 B2 JP 3372455B2 JP 17806297 A JP17806297 A JP 17806297A JP 17806297 A JP17806297 A JP 17806297A JP 3372455 B2 JP3372455 B2 JP 3372455B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- pattern
- cluster
- network
- address
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1012—Server selection for load balancing based on compliance of requirements or conditions with available server resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Description
式ネットワークに接続される並列演算処理可能な計算機
の通信機構に関し,特にアドレスレベルでのシングルシ
ステムイメージを実現しつつ,クラスタ内ノードにネッ
トワーク経由のリクエストパケットを分配し,負荷分散
と高信頼化を実現可能としたパケット中継制御方法,パ
ケット中継装置およびそれを実現するプログラムを格納
したプログラム記憶媒体に関するものである。
しては,ISO,CCITTによるOSIプロトコルス
タック,TCP/IPなどが用いられる。これらのプロ
トコルスタックではトランスポート層のサービスとし
て,送信ホストの特定のプロセスから,受信ホストの特
定プロセスへの通信を行う機構を定めている。
ホスト指定とサービスエンドポイント指定子を組にして
行われる。TCP/IPにおいては,ホスト指定がIP
アドレス,サービスエンドポイント指定子がポート番号
(port number) になる。受信計算機はこれを解析し,必
要なプロセスに通信内容を伝送する処理を行う。
めに,パーソナルコンピュータ(PC)やワークステー
ション(WS)を複数台接続するクラスタ構成を取るこ
とがある。クラスタを構成する処理ノードは,ネットワ
ークインタフェースを最低一つずつ持ち,それぞれにネ
ットワークアドレスが割り当てられる。
する場合には,クラスタの中のどれか一つのノードのネ
ットワークアドレスを獲得し,そこへリクエストパケッ
トを送出する。通常,ネットワークアドレスの獲得は,
ネームサーバへの問い合わせで行う。ネームサーバは,
人間にとって意味のあるホスト名からネットワークアド
レスへの変換データを持つデータベースを分散管理す
る。ある種のネームサーバが提供するネームサービスで
は,クラスタが一つのシステムに見えるように,一つの
ホスト名に対して複数のネットワークアドレスを対応づ
けることができる。
main Name System)は,これが可能である。DNSは,
インターネットでドメイン名とIPアドレスの関係を管
理する。クライアントは,複数のアドレスのうち一つを
選択してリクエストする。通常,これがクライアント毎
に異なるので,リクエストはクラスタ内のノードに分散
する。
イアントから見たときに,クラスタがあたかも高性能で
故障しない1台のサーバであるかのように見えることが
望ましい。このようにクラスタが一つのシステムとして
見えるようにすることを,シングルシステムイメージ
(Single System Image (SSI))を持つと呼ぶ。
SSIを持つことで,クライアントはサーバが単一ノー
ドからできているときと同じようにクラスタにアクセス
できる。
クラスタのSSIを実現する方法の一つに,ラウンド・
ロビンDNS(round robin DNS)がある。図16
は,本発明の課題を説明するための2台の処理ノードと
IPアドレスを管理するノード(named)からなるhtt
pクラスタの例を示す図である。図中,4は外部ネット
ワーク,5A〜5Mはサービスの提供を受ける利用者端
末,9A〜9Cは利用者端末5A〜5Mに対してサービ
スを提供するノード,91はネットワーク間を接続する
ルータ(中継装置),92はクラスタネットワークを表
す。
NSを使用して登録・参照される。DNSでは,一つの
ドメイン名に複数のIPアドレスを登録することができ
る。利用者端末5A〜5Mのクライアントに対して,ノ
ード9A,9Bのhttpクラスタを一つの名前で見せ
るときには,このIPアドレスを管理するDNSの実現
であるnamed ノード(ノード9C)に,ドメイン名www.
domain.co.jpのIPアドレスレコード(Aレコード)と
して,httpd の動作するノード9A,9Bのネットワー
クインタフェースのIPアドレスを,次の例のようにリ
ストにして登録する。
;; (Adress of Node9A) www.domain.co.jp IN A XXX.XXX.XXX.ZZZ ;; (Adress o
f Node9B) これを使用すると, クライアントから見てクラスタ全体
を表す名前を代表としてアクセスすることができる。こ
こでは,ノード9Cは,クライアントからAレコードの
問い合わせがあるたびに,順番を並べ替えて答える。複
数のクライアントがこのサーバにアクセスすると,それ
ぞれ異なるノードのIPアドレスを検索結果として返信
するので,結果的にリクエストは,各ノード9A,9B
のhttpdに確率的に分配される。
ザは,サーバをIPアドレスではなく,ドメイン名で認
識するので,ドメイン名が一つのシステムイメージであ
れば,多くの場合十分である。この意味で,ラウンド・
ロビンDNSは,ドメイン名レベルでSSIであるとい
うことができる。
としてノード9Aのアドレスと,ノード9Bのアドレス
というように異なるアドレスが二つ存在し,一つのシス
テムのように見えてはいない。この点が問題を起こす場
合がある。
発生したような場合である。ノード9Aとノード9B
が,同一のサービスを提供しているときに,ノード9A
が故障した場合を考える。DNSへの問い合わせで,た
またま故障したノード9AのIPアドレスを獲得してし
まったクライアントは,ノード9Aからサービスを受け
ることができないので,httpd のサービスが停止してい
るように見える。連続して運転しているノード9Bがあ
っても,このクライアントがアドレスを獲得しなおさな
い限りは,クライアントに対するサービスが回復しない
ことになる。
スレベルでのシングルシステムイメージ(SSI)を実
現しつつ,クラスタ内ノードにネットワーク経由のリク
エストパケットを分配し,高負荷リクエストに対応で
き,かつ連続運転可能なネットワークサーバを実現する
ことを目的とする。
を示す。1は中継装置,10は分配制御表(パターン・
ハッシュ表ともいう),11はパケット受信部,12は
パターン・マッチング部,13はハッシュ計算部,14
は宛先ノード抽出部,15はパケット配信部,2はクラ
スタネットワーク,3A〜3Nは処理ノード,4は外部
ネットワーク,5A〜5Mは利用者端末を表す。
で,一つのクラスタを構成する。中継装置1は,分配制
御表10,パケット受信部11,パターン・マッチング
部12,ハッシュ計算部13,宛先ノード抽出部14,
パケット配信部15を持ち,クラスタネットワーク2と
外部ネットワーク4とを接続し,パケットを中継する。
は,パケットの発信元および宛先に関するいくつかのパ
ターンに対してハッシュにより処理ノードを定めるため
の情報を記憶するものである。
4からクラスタを代表するアドレスへ転送されてくるパ
ケットを受信する手段である。パターン・マッチング部
12は,受信したパケットについて,分配制御表10に
定義されたパターンとのマッチングを行う手段である。
により定まるパラメータによってハッシュ計算を行う手
段である。宛先ノード抽出部14は,ハッシュ計算部1
3のハッシュ結果から分配制御表10により定まる処理
ノードを選択する手段である。
ド3A〜3Nへ前記パケットを配信する手段である。以
上の各処理手段を実現するプログラムは,計算機が読み
取り可能な適当な記憶媒体に格納することができる。
置1のパケット受信部11は,外部ネットワーク4を介
して,利用者端末5からのパケットを受け取ると,パタ
ーン・マッチング部12へ,そのパケットの例えばプロ
トコルタイプ, 発信元アドレス,発信元サービスエンド
ポイント指定子, 宛先サービスエンドポイント指定子を
渡す。
表10を用いて,パターン・マッチングを行う。その結
果を用いて,ハッシュ計算部13は,分配制御表10の
構成に応じて定められた適当なハッシュ関数を用いてハ
ッシュ計算を行い,宛先ノード抽出部14は,ハッシュ
結果によって分割制御表10を参照し,パケットを配送
の宛先ノードを決定する。
14から通知されたノードへパケットを配送する。以上
のように,パケットの特性に応じたパターンを用いたハ
ッシュにより,分配制御表10によって,外部ネットワ
ーク4からのリクエストを担当させる処理ノード3A〜
3Nの一つを決定する。したがって,ネットワークアド
レスレベルでのシングルシステムイメージ(SSI)を
実現することができる。特に,パターン・マッチングと
ハッシュとの組み合わせによって,負荷分散だけではな
く,提供するサービス内容に応じた機能分散も同時に実
現することが可能になる。
ハッシュの内容を動的に変更することにより,クラスタ
ネットワーク2における処理ノード3A〜3Nに部分故
障が生じたような場合にも,シングルシステムイメージ
を継続したまま容易に対応することが可能になる。
する。ここでは,TCP/IPを対象にして説明する
が,本発明はTCP/IPに限定されない。以降の説明
では,ネットワークアドレス,サービスエンドポイント
などの用語の代わりに,具体例として,IPアドレス,
ポートなどの一般的なインターネットの用語を用いる。
理ノード3A〜3Nで構成されている。クラスタの処理
ノード3A〜3Nは,外部ネットワーク4に接続する利
用者端末(クライアント)5A〜5Mからは,仮想的な
IPアドレス「X」を持つ1台のサーバとして認識され
る。処理ノード3A〜3Nは,それぞれ独立にX宛のパ
ケットを処理できるように,仮想IPアドレスとして
「X」を持つ。
なルーティングのプログラムを置き,外部ネットワーク
4に対して仮想IPアドレスXの存在をアナウンスし,
クラスタネットワーク2側に対して外部ネットワーク4
のルート情報をアナウンスする。これにより,外部のネ
ットワーク4のクライアント5A〜5Mは,中継装置1
を,サーバワークステーション(X)が接続されたネッ
トワークへのルータであると認識することになる。
PアドレスX宛のパケットは,ルーティング情報に従っ
て中継装置1まで到達する。同時に,処理ノード3A〜
3Nから出た外部ネットワーク4向けパケットは,クラ
スタネットワーク2を通して中継装置1に向かって発信
される。
で,中継装置1は外部ネットワーク4から到着したパケ
ットをプロトコルタイプprotocol type , 発信元アドレ
スsrc address , 発信元ポートsrc port, 宛先ポートde
st port を用いて選別し,処理ノード3A〜3Nに振り
分ける。選別は分配制御表(パターン・ハッシュ表)1
0を参照した簡単なパターン・マッチングとハッシュ計
算により行う。
る。分配制御表10は,図2に示すようにパターンテー
ブル10Pと,ノードテーブル10Nと,VC管理表1
0Vとからなる。パターンテーブル10Pは,パケット
のパターンとそれらのパターンの各要素をハッシュパラ
メータに使用するかしないかを指示する情報,すなわち
ハッシュ関数に引数として渡すアドレス/ポートを指定
する情報を持つテーブルである。ノードテーブル10N
は,ハッシュ結果をインデックスとする処理ノードのハ
ッシュ表である。VC管理表10Vは,故障していた処
理ノードをクラスタに復帰させるときにVCの状況を保
存するためのテーブルである。
シーを実現している。 1)宛先ポート番号が80のhttp(80)へのリクエスト
は,発信元アドレスsrcaddrによりnode 0, node 1, nod
e 2の各処理ノードへ分配して中継する。
0)へのリクエストは,node 3の処理ノードへ中継する。 3)その他のリクエストは,発信元アドレスsrc addrを
ハッシュして,node 4,node 5,node 6の各処理ノード
へ分配して中継する。
べてのアドレス,ポートとマッチするパターンを表して
いる。また,パターンテーブル10P中の「USE/N
OT_USE」は,そのパターン要素をハッシュ関数の
パラメータとして使用するかどうかを示している。
メータの全パターンを1バイト単位で加算するものを用
いれば,ハッシュ結果が8ビットであるので,ノードテ
ーブル10Nのエントリは256個となる。4ビット単
位で加算すれば,16個のエントリとなる。すべてが
「NOT_USE」であれば,1個のエントリで処理ノ
ードを決定することができるが,動的な変更を考慮する
とエントリは多いほうが望ましい。ハッシュ関数をどの
ようなノードテーブル10Nに対しても汎用的に用いる
ことができるようにするためには,前述したパターン要
素の他にノードテーブル10Nのアドレスとサイズと
を,引数で指定させるようにすればよい。
IPアドレスリストを持つ。仮想IPアドレスリスト
は,中継装置1によるパケット分配を行う仮想IPアド
レスのリストを保持する。
受信部11(DLPIドライバ)から到着したパケット
について,まず,そのパケットの宛先IPアドレス(de
st IP address )が仮想IPアドレスリストに載ってい
るかどうかを検査する。リストに載っていればIPアド
レスごとに指定されたパターンテーブル10Pの検査に
進む。載っていなければ,上位モジュールにそのままパ
ケットを渡す。
たパターンテーブル10Pの先頭からマッチングを開始
し,マッチした場合には指定されたパターン要素を用い
たハッシュを行う。マッチしなかった場合には,順次,
次のパターンテーブル10Pについてパターンの検査を
行う。次のパターンテーブル10Pがなくなったのにマ
ッチしない場合には,パケットは捨てられる。
circuit (VC))が同じならば,その宛先IPアドレ
ス(dest IP address ),宛先ポート(dest port ),
発信元ポート(src port), 発信元IPアドレス(src
IP address)は同一である。パターン・マッチングは,
宛先ポート(dest port ),発信元ポート(src por
t), 発信元IPアドレス(src IP address)を用いて
行われるので,同じVCのパケットは,必ず同じパター
ンにマッチし,同じ処理ノードに配送される。
ットには,IPヘッダの宛先アドレス(dest addr )に
クライアントのIPアドレスが指定されており,ゲート
する中継装置1のノードがアナウンスするルーティング
にのって,クラスタネットワーク2経由で中継装置1に
向けて発信され,中継装置1により外部ネットワーク4
へ流れていく。
シュ関数と分配制御表10によって静的に実現する。T
CP_VCセッションの開設・消滅とは無関係になるよ
うにする。これは,以下の理由からである。
置1が意識する必要がない。もし中継装置1が,VCの
開設・消滅を意識する必要があると,中継装置1はTC
Pの開設と消滅のリクエストパケットを監視しなければ
ならない。これをクライアントとサーバの状態に不整合
なく行うためには,論理が非常に複雑になり,かつ,オ
ーバーヘッドも非常に大きくなる。
には,故障直前の状態を保存し,故障を修復した後に状
態を回復するか,もしくは処理を引き継ぐ別の中継装置
に状態を回復する必要がある。計算に用いるハッシュ関
数と分配制御表10が変化しないので,状態の変化も起
こらず,状態の記録と保存,回復が容易になる。
詳細に説明する。振り分け処理は,(1)パターン・マ
ッチングとハッシュ法(Pattern match & Hash),
(2)VCプリザービング(VC preserving ),の2種
類のパターン・マッチングで行う。
マッチングとハッシュ法を説明する。この振り分け処理
では,特定のパターンにマッチしたパケットを,指定さ
れた割合で各ノードにハッシュ関数を使用して分散す
る。
イプ(protocol type ),発信元アドレス(src add
r),発信元ポート(src port),宛先ポート(dest po
rt )を使用する。ハッシュ関数のパラメータは,発信
元アドレス(src addr),発信元ポート(src port),
宛先ポート(dest port )のうちから選択可能で, ハッ
シュ結果をインデックスとするノードの表を参照して,
最終的にパケットを送付する処理ノードを決定する。
ることで, サービスごとに処理ノードのグループを設定
して負荷を分散させることができる。例えば,4ノード
構成のクラスタ3A,3B,3C,3Dにおいて,4つ
の処理ノードを2:2に分割し,処理ノード3A,3B
を「http(80/TCP)サービス」専用に,処理ノード3C,
3Dを「ftp(21/TCP) サービス」専用に割り当てるとす
る。
ハッシュ表)10に,2つのパターン (protocol type, src addr, src port, dest port) =
(TCP, *, *, 80) (protocol type, src addr, src port, dest port) =
(TCP, *, *, 21) と,パターンごとにハッシュ用の制御情報 (src addr,src port,dest port,table) = (USE,NOT-US
E,NOT-USE,[1,2]) (src addr,src port,dest port,table) = (USE,NOT-US
E,NOT-USE,[3,4]) とを設定する。
タイプが「TCP 」で,宛先ポートのポート番号が「80」
のパケットのパターンとマッチする。発信元アドレスお
よび発信元ポートは,パターンが「*」であるので,す
べてのものとマッチする。一方,ハッシュ用の制御情報
(USE,NOT-USE,NOT-USE,[1,2]) は,ハッシュパラメータ
として発信元アドレスを用いたハッシュを行い,ハッシ
ュ結果によって第1の処理ノード3Aまたは第2の処理
ノード3Bのいずれかにパケットを分配することを示し
ている。
ルタイプが「TCP 」で,宛先ポートのポート番号が「8
0」であるhttp向けのパケットが到着すると,後述する
VCプリザービングを行ったあと,上記パターンの検査
を行う。この場合,1番目のパターンにマッチするの
で,上記ハッシュ用制御情報(ハッシュ表)の1番目を
使いハッシングする。ハッシュ関数の引数とする発信元
アドレス(src addr)はパケットのIPヘッダから値を
取り出して指定し,発信元ポート(src port),宛先ポ
ート(des port)には0を指定してハッシュ関数を実行
することにより,処理ノード3A,3Bのどちらかを得
る。したがって,http向けのパケットは発信元アドレス
(src addr)によって処理ノード3A,3Bのどちらか
のノードに配送され,処理されることになる。
ようなものがある。 1)特定のsrc address からきたパケットを決まったノ
ードに中継する。 pattern: ( TCP, 111.222.33.44, *, * ) hash: ( NOT-USE, NOT-USE, NOT-USE, [1] ) 2)特定のdest port へのパケットを決まったノードへ
中継する。
ノードに分配して中継する。
に,IPパケットのsrcaddress は多様になる。これを
ハッシングしてn台のノードの中から担当する処理ノー
ドを決めることにより,リクエストを分配して処理する
ことができるようになる。
ハッシングし,n台のノードに分配して中継する。 pattern: ( TCP, *, *, * ) hash: ( USE, USE, NOT-USE, [1,2] ) 上記3)で十分に負荷分散ができないほどクライアント
が少ない場合に,ハッシュのキーとしてsrc portを含め
る。TCPではVCの一意性を確保するためにVCごと
にsrc portを変えており,これにより,同じクライアン
トからの別のVCを異なるノードでサービスすることが
できる。
c address のハッシュを用いてn台のノードに分配して
中継する。 pattern: ( TCP, *, *, 80 ) hash: ( USE, NOT-USE, NOT-USE, [1,2] ) プロトコル毎に専用サーバをn台用意し,リクエストを
n台に分散する。
ことができる。このように,分配制御表10の設定を任
意に変更し操作することにより,振り分け先の処理ノー
ド,振り分けの割合,振り分けるパケットの種類を容易
に,また,必要に応じて動的に制御することが可能にな
る。
を具体例に従ってさらに詳しく説明する。図3に示すよ
うな,クライアントおよびクラスタの構成において,ク
ライアント51〜53のIPアドレスをそれぞれ「A,
B,C」,サーバ側のノード31〜33のIPアドレス
をそれぞれ「I,J,K」,クラスタの代表IPアドレ
スを「X」とする。ノード31〜33は,「httpd 」,
「nntpd 」により,仮想IPアドレスXでハイパーテキ
ストを使ったインターネットの情報サービスhttp(80)
と,ネットニュースのメッセージ転送サービスnntp(11
9) を提供している。ノード31〜33は,リクエスト
の処理が1:1:2になるように調整するものとする。
(パターン・ハッシュ表)10は,図4に示すように設
定され,ノード31〜33のMACアドレス表は,図5
に示すように設定される。
理のフローチャートである。図6において,ステップS
1では,パケットの宛先が代表IPアドレスかどうかを
判断する。宛先が代表IPアドレスであればステップS
2へ進み,そうでなければステップS9へ進む。
して設定された図4に示すパターン・ハッシュ表からマ
ッチするパターンを探す。ステップS3の判定により,
マッチするパターンがある場合にはステップS4へ進
み,マッチするパターンがない場合にはステップS9の
処理を行う。
ータを用いてハッシングする。すなわち,ヘッダから発
信元アドレス,発信元ポート,宛先ポートを取り出し
て,このうちパターン・ハッシュ表でUSEになってい
るものを用いてハッシュ計算を行う。図4のパターン・
ハッシュ表の例では,発信元IPアドレス(srcIP)を用
いてハッシュ計算を行うことになる。
ノード番号を得る。図4に示すパターン・ハッシュ表の
result番目から宛先ノード番号を得る。例えば,ハッシ
ュ結果が65であれば,宛先ノード番号は2となる。
ACアドレスを得る。図5のMACアドレス表を用いた
場合,宛先ノード(ノード番号=2)からMACアドレ
ス「j」を得る。
アドレスを付け替える。ここでは,IPアドレスのXを
jに書き換える。ステップS8では,クラスタネットワ
ーク2へパケットを送信し,中継処理を終了する。
ないので,そのパケットを廃棄する。次に,故障発生
時,故障回復時の動作について説明する。
ャにより検出される。上位の管理マネージャは,故障前
の分配の設定から,分配制御表10に故障したノードテ
ーブルが載っていれば,それを代替ノードに置き替え
て,ノードテーブルを再登録する。
るためには,あらかじめノード数よりノードテーブルの
大きさを多めに作っておき,同じノードを複数のハッシ
ュエントリに対して登録しておくようにする。故障ノー
ド以外は,経路が変わらないので,故障ノード以外で処
理中のVCは継続される。
32が故障した場合には,中継装置1の内部の分配制御
表を,図7に示すように変更し,ノード番号2に割り当
てられていた範囲をノード番号1または3に書き換える
ことにより,故障したノード32に割り当てていた範囲
を故障していない他のノード31,33に割り当て直
す。その際,非故障ノードの割合を崩さないように配分
を行う。
ードを,修復後にクラスタに復帰させる場合について説
明する。例えば,保守のために切り離していたノードを
復帰させる場合も同様である。
いて,ノード31が故障し,その後,修復されたとす
る。ノード31が故障から回復するときに,ノード3
2,ノード33には,図8に示すようなVCが開設され
ているとする。
は,(srcIP,srcPort,dstPort,destIP) = (B,2468,119,
X),クライアント53からノード33へのVCは(srcI
P,srcPort,destPort,destIP) = (C,1234,80,X)である。
復帰する場合には,変更したノードテーブルの該当する
項目を単純に書き直して再設定すると,そのノードで処
理中のVCが切断されてしまう。これを回避するため
に,再設定直前のVCの状態を保存する。すなわち,V
Cプリザービング(VC preserving )を行う。ここ
で,特定のVCを特定のノードに送付すると,VCは,
発信元アドレス,発信元ポート,宛先ポート,宛先アド
レスの4つの項目の組で特定される。中継装置1は,こ
のVCをこれらの4つの項目の組で設定して記憶し,こ
れと対応させて宛先ノードを設定しておく。パケットが
到着するとパターン・マッチングを行い,合致したパケ
ットを指定されたノードに配送する。
(hot switch)時のTCP_VCを保存するために使用
される。ホットスイッチとは,故障していたノードをク
ラスタに復帰させることである。このときに,新規のV
Cを回復ノードに収容するために,分配制御表10にお
けるノードテーブルの設定を変更するが,この際,引き
継いでいたノードにおいてサービス中であったVCは,
切断されてしまわないように保存する必要がある。
rt,destIP) = (B,2468,119,X) のVCが,新たなパター
ン・ハッシュ表でノード31に割り当てられる場合に
は,図9に示すようなエントリをVC管理表に追加す
る。
帰させるときのVC管理表作成処理のフローチャートで
ある。ステップS11では,すべての処理ノードについ
て,以下のステップS12〜S13の処理を繰り返す。
ストを獲得する。ステップS13では,新旧パターン・
ハッシュ表を検索し,ノード宛先をそれぞれ求める。
シュ表でノードの変更があるかどうかを判断する。ノー
ドの変更がある場合にはステップS15の処理を行い,
ノードの変更がない場合にはステップS16へ進む。
ハッシュ表でのVC宛先とともにVC管理表に登録す
る。ステップS16では,すべての処理ノードについて
処理が終了したかどうかを判定し,終了するまでステッ
プS11へ戻って処理を繰り返す。すべての処理ノード
に対する処理が終了した場合には処理を終了する。
的に引き継いだノードに対して,VCが終了したかどう
かを問い合わせて検査する。終了しているVCがあれ
ば,VC管理表の該当するVCプリザーブエントリを削
除する。なお,コネクション切断確認パケット(FIN
パケット)を監視して,コネクション切断確認パケット
の検出により,VC管理表の該当するVCプリザーブエ
ントリを自動消去するようにしてもよい。
ット受信時の処理のフローチャートである。ステップS
21では,パケットの宛先は代表IPアドレスかどうか
を判断する。宛先が代表IPアドレスの場合にはステッ
プS22へ進み,そうでない場合にはステップS32へ
進む。
トリに着目し,VCがマッチするかどうかを判断する。
VCがマッチする場合にはステップS23へ進み,マッ
チしない場合にはステップS25へ進む。
マッチした場合,VC管理表に従って宛先MACアドレ
スを書き換える。ステップS24では,クラスタネット
ワーク2へパケットを送信して,中継処理を終了する。
テップS25では,処理ノードへのパケットの振り分け
のため,パターン・ハッシュ表からマッチするパターン
を探す。
パターンがあればステップS27へ進み,マッチしない
場合にはステップS32へ進む。ステップS27では,
必要なハッシュパラメータを用いてハッシングする。
ードテーブルを参照し宛先ノード番号を得る。ステップ
S29では,宛先ノード番号からMACアドレスを得
る。
Cアドレスを付け替える。ステップS31では,クラス
タネットワークへパケットを送信し,中継処理を終了す
る。
いないので,そのパケットを廃棄する。次に,中継装置
自身の故障等に対処するため,中継装置を二重化した場
合の例を説明する。この場合には,管理情報引き継ぎの
ためのパターン・ハッシュ表の変更時の処理および再立
ち上げ時の処理を図12に示すようにして行う。図12
(A)は,パターン・ハッシュ表の変更時の処理のフロ
ーチャート,図12(B)は,再立ち上げ時の処理のフ
ローチャートである。
は,パターン・ハッシュ表の変更があったかどうかを判
断する。パターン・ハッシュ表の変更があった場合には
ステップS42へ進み,変更がなかった場合には処理を
終了する。
表の情報をローカル・ディスクに格納する。ステップS
43では,中継装置が二重化構成であるかどうかを判断
する。中継装置が二重化構成である場合には,ステップ
S44へ進み,二重化構成でない場合には処理を終了す
る。
イルにパターン・ハッシュ表の情報を格納する。図12
(B)の再立ち上げ時の処理において,ステップS51
では,パターン・ハッシュ表の情報をローカル・ディス
クから読み込む。
の状態を獲得する。ステップS53では,すべてのVC
状態について,以下のステップの処理を行う。
てパターン・ハッシュ表に適用した時の宛先ノードを計
算する。ステップS55では,パターン・ハッシュ表に
適用した時に,実際の宛先ノードと異なるかどうかを判
断する。実際の宛先ノードと異なる場合には,ステップ
S56へ進み,実際の宛先ノードと異ならない場合には
ステップS57へ進む。
理表に登録する。ステップS57では,すべてのVCに
ついての処理が終了したかどうかを判断し,終了してい
る場合にはステップS58へ進み,終了していない場合
にはステップS53以降を同様に繰り返す。
ン・ハッシュ表を変更する。中継装置1を二重化する場
合に,負荷分散および機能分散を考えて,リクエストパ
ケットを受信する装置と,返信用パケットを送信する装
置とに分けて構成しておき,一方が故障したときに,そ
の機能を他方の装置が引き継ぐように構成するようにし
てもよい。
を1ノードに集約してパケットを配信することも可能で
ある。図13は,複数アドレスを1ノードへ集約する場
合の例を示す。
のノード31で,ハイパーテキストを使ったインターネ
ットの情報サービスへのリクエストhttp(80)と,ネット
ニュースのメッセージ転送サービスへのリクエストnntp
(119) を受け取るが,それぞれXとYの複数のIPアド
レスで受け取りたいとする。この場合,パターン・ハッ
シュ表を図13(B)に示すように設定する。このよう
に,異なる複数の代表IPアドレスのパターン・ハッシ
ュ表を同様の内容で設定することにより,一つのノード
へ複数アドレスを集約することが可能となる。
ターンテーブル10Pのパターンごと,またはノードテ
ーブル10Nのノードごとに,中継したパケットの数お
よび中継バイト数をカウントして記録しておき,この記
録したカウント情報を処理ノードの一つである管理ノー
ドから参照可能とすれば,このカウント情報を利用し
て,処理ノードの負荷の均一化を図るための分配制御表
10の再設定を容易に行うことが可能になる。
1に示す例では,中継装置1が分配制御表10を持ち,
パターン・マッチングとハッシュにより,クラスタの代
表アドレスへ来たパケットを各処理ノード3A〜3Nに
振り分けるようにしていた。図14の例では,外部ネッ
トワーク4とクラスタネットワーク2とを接続する中継
装置100には,通常のルータの機能だけを持たせ,処
理ノード群の中の一つを代表の処理ノード30として,
これにパケットの分配機能を持たせる。
持つ分配制御表10,パケット受信部11,パターン・
マッチング部12,ハッシュ計算部13,宛先ノード抽
出部14,パケット配信部15に相当する手段を持ち,
分配制御表10を用いたパターン・マッチングを行った
後,分配制御表10におけるノードテーブル(ハッシュ
テーブル)に従って,各処理ノード31〜33にリクエ
ストパケットを振り分ける。これによっても同様の機能
を実現することができる。
4からきたパケットを各処理ノードへ振り分ける例を説
明したが,クラスタ側から外部へパケットを発信する場
合に,同様な原理によってネットワークアドレスを変換
して,クラスタ内のネットワークアドレスの隠蔽を図る
ことも可能である。
レスを変換して外部へパケットを発信するシステムの構
成例を示す。中継装置1は,図15(A)に示すように
パターン・ハッシュ表10’とネットワークアドレス変
換部16を持つ。処理ノード3A〜3Nの一つが外部ネ
ットワーク4に対してパケットを発信するとき,ネット
ワークアドレス変換部16は,パケット中のIPヘッダ
の発信元アドレスを,パターン・ハッシュ表10’を用
いて他の発信元アドレスに書き換える。例えば,処理ノ
ード3Aと処理ノード3Bのアドレスを共通の発信元ア
ドレスに書き換えることにより,外部からは処理ノード
3Aと処理ノード3Bとを一つのノードに見せることが
可能になる。
(B)に示すようにパターンテーブル10Pとハッシュ
テーブル10Hとからなる。パターンテーブル10Pの
構成は,図2に示したものと同様である。ハッシュテー
ブル10Hの構成は,ノードテーブル10Nと同様であ
るが,各ハッシュエントリに宛先ノードの情報ではな
く,変換する新しい発信元アドレスを設定する。ネット
ワークアドレス変換部16におけるパターン・マッチン
グとハッシュの処理は,前述したリクエストパケットに
対するときの処理とまったく同様である。
ネットワークアドレスレベルでのシングルシステムイメ
ージを実現し,パターン・マッチングとハッシングによ
りクラスタ内の宛先ノードを決めてパケットを配信する
ことができる。特に,パターン・ハッシュ表に設定する
情報によって,パケットの振り分け条件を任意に設定す
ることが可能である。さらに,パターン・ハッシュ表を
動的に変更することにより,パケットの種類やノードの
処理負荷分散の状況をみて,パケットの振り分け先を容
易に変更することも可能である。
存することができ,故障等の場合にも,二重化構成によ
る引き継ぎや復旧を問題なく簡単に行うことができる。
このように,クラスタネットワークリクエストのアドレ
スパターンによる高速負荷分散,およびノード故障時,
保守時などのノードの部分停止の場合の連続運転が可能
になる。
を示す図である。
を示す図である。
る。
る。
処理のフローチャートである。
る。
を示す図である。
ットを発信するシステムの構成例を示す図である。
Claims (18)
- 【請求項1】 外部ネットワークと,該外部ネットワー
クからクラスタを代表する共通のアドレスによってアク
セスされる複数の処理ノードを有するクラスタネットワ
ークとを接続する装置においてパケットを前記処理ノー
ドへ振り分ける制御方法であって, パケットの発信元および宛先に関するいくつかのパター
ンに対してハッシュにより処理ノードを定める情報を記
憶する分配制御表を持ち, 前記外部ネットワークから前記クラスタを代表するアド
レスへ来るパケットについて,前記分配制御表に定義さ
れたパターンとのマッチングを行い, 該当するパターンについて前記分配制御表により定まる
処理ノードを選択し, 選択した処理ノードへ前記パケットを配信することを特
徴とするパケット中継制御方法。 - 【請求項2】 請求項1記載のパケット中継制御方法に
おいて, 前記パケットの発信元および宛先に関するパターンは, 少なくとも発信元アドレス,発信元サービスエンドポイ
ント指定子または宛先サービスエンドポイント指定子の
いずれかを含む組み合わせのパターンであることを特徴
とするパケット中継制御方法。 - 【請求項3】 請求項1記載のパケット中継制御方法に
おいて, 前記分配制御表は,パケットの発信元および宛先に関す
るパターンごとに,パターンの各々の構成要素をハッシ
ュパラメータに使用するか使用しないかを指示する情報
を持ち, ハッシュパラメータとして使用するパターン要素を抽出
してハッシュを行うことにより前記分配制御表からパケ
ットを配信する処理ノードを決定することを特徴とする
パケット中継制御方法。 - 【請求項4】 請求項1記載のパケット中継制御方法に
おいて, 前記パターンごとまたはハッシュ項目ごとに,中継した
パケットの数もしくは中継バイト数,またはその双方を
カウントして記録し, 記録したカウント情報を外部から参照可能としたことを
特徴とするパケット中継制御方法。 - 【請求項5】 請求項1記載のパケット中継制御方法に
おいて, 前記分配制御表におけるパターンとハッシュ内容を,動
作中に変更可能としたことを特徴とするパケット中継制
御方法。 - 【請求項6】 請求項5記載のパケット中継制御方法に
おいて, 前記クラスタネットワークにおける処理ノードが故障し
たとき,故障した処理ノードへのハッシュ内容を他の故
障していない処理ノードとなるように,前記分配制御表
を動的に変更することを特徴とするパケット中継制御方
法。 - 【請求項7】 請求項5記載のパケット中継制御方法に
おいて, 動作中に前記分配制御表を変更するときに,既存のVC
を保存するためのVC保存パターンを設定可能としたこ
とを特徴とするパケット中継制御方法。 - 【請求項8】 請求項7記載のパケット中継制御方法に
おいて, コネクション切断確認パケットを監視し, コネクション切断確認パケットの検出により前記設定し
たVC保存パターンのエントリを自動消去することを特
徴とするパケット中継制御方法。 - 【請求項9】 請求項7記載のパケット中継制御方法に
おいて, コネクション切断確認パケットを監視しないで,前記処
理ノードのサーバに現在接続中のコネクションを問い合
わせ,現在接続中のコネクションがなくなっていること
を確認して前記設定したVC保存パターンのエントリを
遅延消去することを特徴とするパケット中継制御方法。 - 【請求項10】 請求項1記載のパケット中継制御方法
において, 前記外部ネットワークとクラスタネットワークとを接続
する装置を, リクエストパケットを受信する装置と,返信用パケット
を送信する装置とに分けたことを特徴とするパケット中
継制御方法。 - 【請求項11】 請求項1記載のパケット中継制御方法
において, 前記クラスタを代表するアドレスが複数あり,これらの
代表アドレスへのパケットを一つの処理ノードに集約す
るように中継することを特徴とするパケット中継制御方
法。 - 【請求項12】 請求項1記載のパケット中継制御方法
において, 前記外部ネットワークとクラスタネットワークとを接続
する装置が持つ前記分配制御表の状態を管理情報とし
て,前記処理ノードの少なくとも一つに退避し, 前記ネットワークを接続する装置の故障後のリスタート
時,または故障時における他の装置への引き継ぎ時に,
前記退避した管理情報により状態を回復することを特徴
とするパケット中継制御方法。 - 【請求項13】 外部ネットワークと,該外部ネットワ
ークからクラスタを代表する共通のアドレスによってア
クセスされる複数の処理ノードを有するクラスタネット
ワークとを接続するシステムにおいてパケットを前記処
理ノードへ振り分ける制御方法であって, 前記クラスタネットワーク内の代表ノードは,パケット
の発信元および宛先に関するいくつかのパターンに対し
てハッシュにより処理ノードを定める情報を記憶する分
配制御表を持ち, 前記外部ネットワークから前記代表ノードへ来るパケッ
トについて,前記分配制御表に定義されたパターンとの
マッチングを行い, 該当するパターンについて前記分配制御表により定まる
処理ノードを選択し, 選択した処理ノードへ前記パケットを配信することを特
徴とするパケット中継制御方法。 - 【請求項14】 外部ネットワークと,該外部ネットワ
ークからクラスタを代表する共通のアドレスによってア
クセスされる複数の処理ノードを有するクラスタネット
ワークとを接続する装置において, パケットの発信元および宛先に関するいくつかのパター
ンに対してハッシュにより処理ノードを定める分配制御
表を記憶する手段と, 前記外部ネットワークから前記クラスタを代表するアド
レスへ来るパケットを受信する手段と, 前記受信したパケットについて,前記分配制御表に定義
されたパターンとのマッチングを行う手段と, 該当するパターンにより定まるパラメータによってハッ
シュ計算を行う手段と, ハッシュ結果から前記分配制御表により定まる処理ノー
ドを選択する手段と, 選択した処理ノードへ前記パケットを配信する手段とを
備えたことを特徴とするパケット中継装置。 - 【請求項15】 外部ネットワークと,該外部ネットワ
ークからクラスタを代表する共通のアドレスによってア
クセスされる複数の処理ノードを有するクラスタネット
ワークとを接続する装置において実行するプログラムを
記憶する媒体であって, 前記外部ネットワークから前記クラスタを代表するアド
レスへ来るパケットを受信する手段と, 前記受信したパケットについて,あらかじめ記憶された
パケットの発信元および宛先に関するいくつかのパター
ンに対してハッシュにより処理ノードを定める分配制御
表を用いて,この分配制御表に定義されたパターンとの
マッチングを行う手段と, 該当するパターンにより定まるパラメータによってハッ
シュ計算を行う手段と, ハッシュ結果から前記分配制御表により定まる処理ノー
ドを選択する手段と, 選択した処理ノードへ前記パケットを配信する手段とを
実現するプログラムを格納したことを特徴とするプログ
ラム記憶媒体。 - 【請求項16】 外部ネットワークと,該外部ネットワ
ークからクラスタを代表する共通のアドレスによってア
クセスされる複数の処理ノードを有するクラスタネット
ワークとを接続する装置におけるネットワークアドレス
を変換する制御方法であって, パケットの発信元および宛先に関するいくつかのパター
ンに対して,ハッシュにより変換するネットワークアド
レスを定めるパターン・ハッシュ表を持ち, 前記処理ノードと前記外部ネットワークとの間で発着信
するパケットについて,前記パターン・ハッシュ表に定
義されたパターンとのマッチングを行い, パケットを発着信する処理ノードのネットワークアドレ
スを,該当するパターンによって前記パターン・ハッシ
ュ表により定まるネットワークアドレスに変換すること
を特徴とするパケット中継制御方法。 - 【請求項17】 外部ネットワークと,該外部ネットワ
ークからクラスタを代表する共通のアドレスによってア
クセスされる複数の処理ノードを有するクラスタネット
ワークとを接続する装置において, パケットの発信元および宛先に関するいくつかのパター
ンに対してハッシュによりネットワークアドレスを定め
るパターン・ハッシュ表を記憶する手段と, 前記処理ノードと前記外部ネットワークとの間で中継す
るパケットを発着信する手段と, 前記中継するパケットについて,前記パターン・ハッシ
ュ表に定義されたパターンとのマッチングを行う手段
と, 該当するパターンにより定まるパラメータによってハッ
シュ計算を行う手段と, ハッシュ結果から前記パターン・ハッシュ表により定ま
る処理ノードのネットワークアドレスを抽出する手段
と, パケットを発着信する処理ノードのネットワークアドレ
スを,該当するパターンによって前記パターン・ハッシ
ュ表により定まるネットワークアドレスに変換する手段
とを備えたことを特徴とするパケット中継装置。 - 【請求項18】 外部ネットワークと,該外部ネットワ
ークからクラスタを代表する共通のアドレスによってア
クセスされる複数の処理ノードを有するクラスタネット
ワークとを接続する装置において実行するプログラムを
記憶する媒体であって, 前記処理ノードと前記外部ネットワークとの間でパケッ
トを中継のために発着信する手段と, 前記中継するパケットについて,あらかじめ記憶された
パケットの発信元および宛先に関するいくつかのパター
ンに対してハッシュによりネットワークアドレスを定め
るパターン・ハッシュ表を用いて,このパターン・ハッ
シュ表に定義されたパターンとのマッチングを行う手段
と, 該当するパターンにより定まるパラメータによってハッ
シュ計算を行う手段と, ハッシュ結果から前記パターン・ハッシュ表により定ま
る処理ノードのネットワークアドレスを抽出する手段
と, パケットを発着信する処理ノードのネットワークアドレ
スを,該当するパターンによって前記パターン・ハッシ
ュ表により定まるネットワークアドレスに変換する手段
とを実現するプログラムを格納したことを特徴とするプ
ログラム記憶媒体。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17806297A JP3372455B2 (ja) | 1997-07-03 | 1997-07-03 | パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 |
| US09/020,853 US6175874B1 (en) | 1997-07-03 | 1998-02-09 | Packet relay control method packet relay device and program memory medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17806297A JP3372455B2 (ja) | 1997-07-03 | 1997-07-03 | パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH1127320A JPH1127320A (ja) | 1999-01-29 |
| JP3372455B2 true JP3372455B2 (ja) | 2003-02-04 |
Family
ID=16041951
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP17806297A Expired - Fee Related JP3372455B2 (ja) | 1997-07-03 | 1997-07-03 | パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US6175874B1 (ja) |
| JP (1) | JP3372455B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102809955A (zh) * | 2011-05-31 | 2012-12-05 | 通用电气公司 | 用于对基金会现场总线链接装置进行写保护的系统和方法 |
Families Citing this family (96)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6853638B2 (en) * | 1998-04-01 | 2005-02-08 | Cisco Technology, Inc. | Route/service processor scalability via flow-based distribution of traffic |
| JP3765931B2 (ja) * | 1998-10-15 | 2006-04-12 | 富士通株式会社 | バッファ制御方法及びバッファ制御装置 |
| JP2000196677A (ja) | 1998-12-28 | 2000-07-14 | Fujitsu Ltd | ネットワ―クシステムに用いられる中継装置 |
| JP4189076B2 (ja) * | 1999-03-26 | 2008-12-03 | 株式会社東芝 | 耐障害コンピュータシステム |
| JP3643507B2 (ja) | 1999-09-20 | 2005-04-27 | 株式会社東芝 | パケット処理装置及びパケット処理方法 |
| US6430622B1 (en) * | 1999-09-22 | 2002-08-06 | International Business Machines Corporation | Methods, systems and computer program products for automated movement of IP addresses within a cluster |
| US6795866B1 (en) | 1999-10-21 | 2004-09-21 | Sun Microsystems, Inc. | Method and apparatus for forwarding packet fragments |
| DE19957822A1 (de) * | 1999-11-19 | 2001-05-23 | Heidenhain Gmbh Dr Johannes | Abtasteinrichtung für Positionsmeßsysteme zur Abtastung einer Meßteilung |
| US6704782B1 (en) * | 1999-12-09 | 2004-03-09 | International Business Machines Corporation | System and methods for real time progress monitoring in a computer network |
| US6236341B1 (en) * | 2000-03-16 | 2001-05-22 | Lucent Technologies Inc. | Method and apparatus for data compression of network packets employing per-packet hash tables |
| JP3708444B2 (ja) * | 2000-03-17 | 2005-10-19 | 富士通株式会社 | マルチプロセッサ情報処理装置 |
| US7177898B2 (en) * | 2000-03-17 | 2007-02-13 | Fujitsu Limited | Multiple-processor information processing system |
| US7139743B2 (en) | 2000-04-07 | 2006-11-21 | Washington University | Associative database scanning and information retrieval using FPGA devices |
| US6711558B1 (en) * | 2000-04-07 | 2004-03-23 | Washington University | Associative database scanning and information retrieval |
| US8095508B2 (en) | 2000-04-07 | 2012-01-10 | Washington University | Intelligent data storage and processing using FPGA devices |
| JP3502009B2 (ja) * | 2000-04-14 | 2004-03-02 | 日本電信電話株式会社 | 負荷分散制御装置および方法ならびに記録媒体 |
| JP3529329B2 (ja) * | 2000-06-21 | 2004-05-24 | 日本電気株式会社 | Lanエミュレーション環境におけるネットワーク負荷分散方法及びシステム |
| JP3504596B2 (ja) * | 2000-08-17 | 2004-03-08 | 日本電信電話株式会社 | 情報提供システム、情報提供方法および記録媒体 |
| US8180870B1 (en) | 2000-11-28 | 2012-05-15 | Verizon Business Global Llc | Programmable access device for a distributed network access system |
| US7046680B1 (en) | 2000-11-28 | 2006-05-16 | Mci, Inc. | Network access system including a programmable access device having distributed service control |
| US8185615B1 (en) | 2000-11-28 | 2012-05-22 | Verizon Business Global Llc | Message, control and reporting interface for a distributed network access system |
| US7657628B1 (en) | 2000-11-28 | 2010-02-02 | Verizon Business Global Llc | External processor for a distributed network access system |
| US7051115B2 (en) * | 2001-04-19 | 2006-05-23 | Lenovo (Singapore) Pte. Ltd. | Method and apparatus for providing a single system image in a clustered environment |
| US7716330B2 (en) * | 2001-10-19 | 2010-05-11 | Global Velocity, Inc. | System and method for controlling transmission of data packets over an information network |
| US20090006659A1 (en) * | 2001-10-19 | 2009-01-01 | Collins Jack M | Advanced mezzanine card for digital network data inspection |
| US20090161568A1 (en) * | 2007-12-21 | 2009-06-25 | Charles Kastner | TCP data reassembly |
| JP3645852B2 (ja) * | 2001-11-19 | 2005-05-11 | Necアクセステクニカ株式会社 | 負荷分散方法、コンテンツ配信システム及び負荷分散装置 |
| JP3898498B2 (ja) * | 2001-12-06 | 2007-03-28 | 富士通株式会社 | サーバ負荷分散システム |
| JP3597513B2 (ja) * | 2002-03-28 | 2004-12-08 | エヌ・ティ・ティ・コムウェア株式会社 | パケット中継装置、パケット中継方法、パケット中継プログラムおよびパケット中継プログラムを記録したコンピュータ読み取り可能な記録媒体 |
| US7836295B2 (en) * | 2002-07-29 | 2010-11-16 | International Business Machines Corporation | Method and apparatus for improving the resilience of content distribution networks to distributed denial of service attacks |
| US7711844B2 (en) * | 2002-08-15 | 2010-05-04 | Washington University Of St. Louis | TCP-splitter: reliable packet monitoring methods and apparatus for high speed networks |
| JPWO2004088940A1 (ja) * | 2003-03-31 | 2006-07-06 | 富士通株式会社 | 負荷分散システム |
| US20050195834A1 (en) * | 2003-03-31 | 2005-09-08 | Shunsuke Kikuchi | Load distribution system |
| US8428117B2 (en) | 2003-04-24 | 2013-04-23 | Fujitsu Semiconductor Limited | Image encoder and image encoding method |
| US6862500B2 (en) * | 2003-05-12 | 2005-03-01 | Circumnav Networks, Inc. | Methods for communicating between elements in a hierarchical floating car data network |
| US10572824B2 (en) | 2003-05-23 | 2020-02-25 | Ip Reservoir, Llc | System and method for low latency multi-functional pipeline with correlation logic and selectively activated/deactivated pipelined data processing engines |
| EP2528000B1 (en) | 2003-05-23 | 2017-07-26 | IP Reservoir, LLC | Intelligent data storage and processing using FPGA devices |
| US7454489B2 (en) * | 2003-07-01 | 2008-11-18 | International Business Machines Corporation | System and method for accessing clusters of servers from the internet network |
| US7613775B2 (en) * | 2003-11-25 | 2009-11-03 | Freescale Semiconductor, Inc. | Network message filtering using hashing and pattern matching |
| US7602785B2 (en) * | 2004-02-09 | 2009-10-13 | Washington University | Method and system for performing longest prefix matching for network address lookup using bloom filters |
| JP4190455B2 (ja) * | 2004-05-11 | 2008-12-03 | 富士通株式会社 | 負荷分散装置及びプログラム |
| CA2577891A1 (en) * | 2004-08-24 | 2006-03-02 | Washington University | Methods and systems for content detection in a reconfigurable hardware |
| JP2006148412A (ja) * | 2004-11-18 | 2006-06-08 | Hitachi Communication Technologies Ltd | 伝送システム |
| CA2599382A1 (en) | 2005-03-03 | 2006-09-14 | Washington University | Method and apparatus for performing biosequence similarity searching |
| JP4499622B2 (ja) | 2005-03-30 | 2010-07-07 | 富士通株式会社 | トラフィック分散装置,トラフィック分散プログラム及びパケット中継方法 |
| KR100680527B1 (ko) | 2005-08-22 | 2007-02-09 | (주) 기산텔레콤 | 엘투 스위치 및 엘쓰리 스위치에서 트리 테이블을 이용한 어드레스 탐색 방법 |
| JP2007150811A (ja) * | 2005-11-29 | 2007-06-14 | Nippon Telegr & Teleph Corp <Ntt> | センサ端末の測定データ送信制御装置 |
| US7702629B2 (en) | 2005-12-02 | 2010-04-20 | Exegy Incorporated | Method and device for high performance regular expression pattern matching |
| US8134928B1 (en) | 2005-12-15 | 2012-03-13 | Nvidia Corporation | Technique for identifying a failed network interface card within a team of network interface cards |
| JP4666501B2 (ja) * | 2005-12-28 | 2011-04-06 | Kddi株式会社 | コネクション確立要求の受付方法、装置およびプログラムならびにコネクション確立要求装置 |
| JP2007193626A (ja) * | 2006-01-20 | 2007-08-02 | Brother Ind Ltd | コンテンツ配信システム、ノード装置及びその情報処理方法並びにそのプログラム |
| US7954114B2 (en) * | 2006-01-26 | 2011-05-31 | Exegy Incorporated | Firmware socket module for FPGA-based pipeline processing |
| JP2007200203A (ja) * | 2006-01-30 | 2007-08-09 | Brother Ind Ltd | 情報配信システム、再登録メッセージ送信方法、ノード装置、及びノード処理プログラム |
| JP4670726B2 (ja) * | 2006-04-28 | 2011-04-13 | ブラザー工業株式会社 | ノード装置、情報処理方法及びノード装置用プログラム |
| US7636703B2 (en) * | 2006-05-02 | 2009-12-22 | Exegy Incorporated | Method and apparatus for approximate pattern matching |
| WO2008022036A2 (en) * | 2006-08-10 | 2008-02-21 | Washington University | Method and apparatus for protein sequence alignment using fpga devices |
| US8326819B2 (en) | 2006-11-13 | 2012-12-04 | Exegy Incorporated | Method and system for high performance data metatagging and data indexing using coprocessors |
| US7660793B2 (en) | 2006-11-13 | 2010-02-09 | Exegy Incorporated | Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors |
| JP2008152508A (ja) * | 2006-12-18 | 2008-07-03 | Fujitsu Ltd | Webサービス制御プログラム、Webサービス制御装置、Webサービス制御方法、中継装置 |
| JP2008152509A (ja) * | 2006-12-18 | 2008-07-03 | Fujitsu Ltd | Webサービス制御プログラム、Webサービス制御装置、Webサービス制御方法 |
| JP4396948B2 (ja) * | 2006-12-18 | 2010-01-13 | 富士通株式会社 | Webサービス制御プログラム、Webサービス制御装置、Webサービス制御方法 |
| US20080225837A1 (en) * | 2007-03-16 | 2008-09-18 | Novell, Inc. | System and Method for Multi-Layer Distributed Switching |
| WO2008126190A1 (ja) * | 2007-03-16 | 2008-10-23 | Fujitsu Limited | Webサービス制御プログラム、Webサービス制御装置、Webサービス制御方法、中継プログラム |
| US8432788B2 (en) | 2007-05-18 | 2013-04-30 | Nvidia Corporation | Intelligent failback in a load-balanced networking environment |
| US7792018B2 (en) | 2007-05-18 | 2010-09-07 | Nvidia Corporation | Intelligent load balancing and failover of network traffic |
| US7995465B2 (en) * | 2007-05-18 | 2011-08-09 | Nvidia Corporation | Intelligent load balancing and failover of network traffic |
| US8300647B2 (en) | 2007-05-18 | 2012-10-30 | Nvidia Corporation | Intelligent load balancing and failover of network traffic |
| US10229453B2 (en) | 2008-01-11 | 2019-03-12 | Ip Reservoir, Llc | Method and system for low latency basket calculation |
| US8374986B2 (en) | 2008-05-15 | 2013-02-12 | Exegy Incorporated | Method and system for accelerated stream processing |
| US8103764B2 (en) * | 2008-10-14 | 2012-01-24 | CacheIQ, Inc. | Method and apparatus for matching trigger pattern |
| WO2010064644A1 (ja) * | 2008-12-03 | 2010-06-10 | 日本電気株式会社 | クラスタ制御システム、クラスタ制御方法、及びプログラム |
| US8369325B2 (en) * | 2009-06-30 | 2013-02-05 | Oracle America, Inc. | Method and apparatus for packet classification and spreading in a virtualized system |
| US9130853B2 (en) * | 2011-05-31 | 2015-09-08 | General Electric Company | Systems and methods for identifying foundation fieldbus linking devices |
| US8868732B2 (en) | 2011-05-31 | 2014-10-21 | General Electric Company | Systems and methods for facilitating communication with foundation fieldbus linking devices |
| US8713166B2 (en) * | 2011-05-31 | 2014-04-29 | General Electric Company | Systems and methods for facilitating communication with foundation fieldbus linking devices |
| US8769072B2 (en) | 2011-05-31 | 2014-07-01 | General Electric Company | Systems and methods for identifying foundation fieldbus linking devices |
| JP5672504B2 (ja) * | 2012-02-28 | 2015-02-18 | 日本電信電話株式会社 | 振分先を切り替える並列パケット処理方法および装置 |
| JP5831314B2 (ja) | 2012-03-16 | 2015-12-09 | 富士通株式会社 | 通信中継装置、通信中継システム、通信中継装置制御方法及び通信中継プログラム |
| US8891364B2 (en) * | 2012-06-15 | 2014-11-18 | Citrix Systems, Inc. | Systems and methods for distributing traffic across cluster nodes |
| WO2014066416A2 (en) | 2012-10-23 | 2014-05-01 | Ip Reservoir, Llc | Method and apparatus for accelerated format translation of data in a delimited data format |
| US9633097B2 (en) | 2012-10-23 | 2017-04-25 | Ip Reservoir, Llc | Method and apparatus for record pivoting to accelerate processing of data fields |
| US9633093B2 (en) | 2012-10-23 | 2017-04-25 | Ip Reservoir, Llc | Method and apparatus for accelerated format translation of data in a delimited data format |
| KR101371902B1 (ko) * | 2012-12-12 | 2014-03-10 | 현대자동차주식회사 | 차량 네트워크 공격 탐지 장치 및 그 방법 |
| WO2015164639A1 (en) | 2014-04-23 | 2015-10-29 | Ip Reservoir, Llc | Method and apparatus for accelerated data translation |
| US10091112B1 (en) * | 2015-04-24 | 2018-10-02 | Cisco Technology, Inc. | Highly-scalable virtual IP addresses in a load balancing switch |
| US10942943B2 (en) | 2015-10-29 | 2021-03-09 | Ip Reservoir, Llc | Dynamic field data translation to support high performance stream data processing |
| JP6594271B2 (ja) * | 2016-08-26 | 2019-10-23 | 日本電信電話株式会社 | 分散装置及び分散方法 |
| US10848432B2 (en) | 2016-12-18 | 2020-11-24 | Cisco Technology, Inc. | Switch fabric based load balancing |
| EP3560135A4 (en) | 2016-12-22 | 2020-08-05 | IP Reservoir, LLC | PIPELINES INTENDED FOR AUTOMATIC ACCELERATED LEARNING BY EQUIPMENT |
| JP6734793B2 (ja) * | 2017-02-21 | 2020-08-05 | 日本電信電話株式会社 | 負荷制御システムおよび負荷制御方法 |
| JP6838455B2 (ja) * | 2017-03-24 | 2021-03-03 | 住友電気工業株式会社 | スイッチ装置、通信制御方法および通信制御プログラム |
| US10965596B2 (en) | 2017-10-04 | 2021-03-30 | Cisco Technology, Inc. | Hybrid services insertion |
| US11082312B2 (en) | 2017-10-04 | 2021-08-03 | Cisco Technology, Inc. | Service chaining segmentation analytics |
| US10965598B1 (en) | 2017-10-04 | 2021-03-30 | Cisco Technology, Inc. | Load balancing in a service chain |
| US11582132B2 (en) * | 2019-11-01 | 2023-02-14 | Verizon Patent And Licensing Inc. | Systems and methods for identifying unknown protocols associated with industrial control systems |
| US20240195706A1 (en) * | 2021-08-04 | 2024-06-13 | Rakuten Mobile, Inc. | Network management apparatus, network management method and network management system |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2808694B2 (ja) * | 1989-07-24 | 1998-10-08 | 株式会社日立製作所 | ネットワーク間接続ブリッジ |
| JP2983369B2 (ja) * | 1992-02-05 | 1999-11-29 | 三菱電機株式会社 | パケット交換網における代表番号接続方式 |
| US5371852A (en) * | 1992-10-14 | 1994-12-06 | International Business Machines Corporation | Method and apparatus for making a cluster of computers appear as a single host on a network |
| US5832219A (en) * | 1994-02-08 | 1998-11-03 | Object Technology Licensing Corp. | Distributed object networking service |
| IL116989A (en) * | 1996-01-31 | 1999-10-28 | Galileo Technology Ltd | Switching ethernet controller |
| US5923654A (en) * | 1996-04-25 | 1999-07-13 | Compaq Computer Corp. | Network switch that includes a plurality of shared packet buffers |
| US5787253A (en) * | 1996-05-28 | 1998-07-28 | The Ag Group | Apparatus and method of analyzing internet activity |
| US5774660A (en) * | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
| US5802054A (en) * | 1996-08-15 | 1998-09-01 | 3Com Corporation | Atomic network switch with integrated circuit switch nodes |
| US6018526A (en) * | 1997-02-20 | 2000-01-25 | Macronix America, Inc. | Bridge device with self learning between network media and integrated circuit and method based on the same |
| US6351775B1 (en) * | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
-
1997
- 1997-07-03 JP JP17806297A patent/JP3372455B2/ja not_active Expired - Fee Related
-
1998
- 1998-02-09 US US09/020,853 patent/US6175874B1/en not_active Expired - Lifetime
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102809955A (zh) * | 2011-05-31 | 2012-12-05 | 通用电气公司 | 用于对基金会现场总线链接装置进行写保护的系统和方法 |
| CN102809955B (zh) * | 2011-05-31 | 2017-07-04 | 通用电气公司 | 用于对基金会现场总线链接装置进行写保护的方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH1127320A (ja) | 1999-01-29 |
| US6175874B1 (en) | 2001-01-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3372455B2 (ja) | パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 | |
| US5918017A (en) | System and method for providing dynamically alterable computer clusters for message routing | |
| US7139926B1 (en) | Stateful failover protection among routers that provide load sharing using network address translation (LSNAT) | |
| US6154776A (en) | Quality of service allocation on a network | |
| US7363347B2 (en) | Method and system for reestablishing connection information on a switch connected to plural servers in a computer network | |
| US7379458B2 (en) | Server load sharing system | |
| US7554992B2 (en) | Mobile device communications system and method | |
| US7102996B1 (en) | Method and system for scaling network traffic managers | |
| US7343413B2 (en) | Method and system for optimizing a network by independently scaling control segments and data flow | |
| US6711623B1 (en) | Integrated IP network | |
| US6292838B1 (en) | Technique for automatic remote media access control (MAC) layer address resolution | |
| JP4919608B2 (ja) | パケット転送装置 | |
| US7518983B2 (en) | Proxy response apparatus | |
| US9112901B2 (en) | Method and system for providing connection resiliency | |
| US7039008B1 (en) | Method and apparatus for maintaining connection state between a connection manager and a failover device | |
| US6647427B1 (en) | High-availability computer system and method for switching servers having an imaginary address | |
| US6760336B1 (en) | Flow detection scheme to support QoS flows between source and destination nodes | |
| US6311208B1 (en) | Server address management system | |
| USH2065H1 (en) | Proxy server | |
| US8209371B2 (en) | Method and system for managing communication in a computer network using aliases of computer network addresses | |
| US7848258B2 (en) | Dynamically transitioning static network addresses | |
| JP4391960B2 (ja) | リソース管理装置、システムおよび方法 | |
| JP3003570B2 (ja) | パケット分配ハブ | |
| JP3560559B2 (ja) | Lanエミュレーションにおけるipサーバの負荷分散装置およびその負荷分散方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20021105 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081122 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081122 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091122 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101122 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101122 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111122 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111122 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121122 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121122 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131122 Year of fee payment: 11 |
|
| LAPS | Cancellation because of no payment of annual fees |