JP2000134214A - サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置 - Google Patents

サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置

Info

Publication number
JP2000134214A
JP2000134214A JP30147098A JP30147098A JP2000134214A JP 2000134214 A JP2000134214 A JP 2000134214A JP 30147098 A JP30147098 A JP 30147098A JP 30147098 A JP30147098 A JP 30147098A JP 2000134214 A JP2000134214 A JP 2000134214A
Authority
JP
Japan
Prior art keywords
engine
server
client
forwarding
connection
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
JP30147098A
Other languages
English (en)
Other versions
JP3327850B2 (ja
Inventor
Crand Gillene
ジレーヌ・クランド
Guerney Douglas Holloway Hunt
ガルニー・ダグラス・ホロウェイ・ハント
Michel Levy-Abenooru Eric
エリック・ミシェル・レヴィ−アベノール
Georges Jean-Marie Modyu Daniel
ダニエル・ジョルジュ・ジャン−マリー・モデュ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP30147098A priority Critical patent/JP3327850B2/ja
Publication of JP2000134214A publication Critical patent/JP2000134214A/ja
Application granted granted Critical
Publication of JP3327850B2 publication Critical patent/JP3327850B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【課題】ATMスイッチまたはATMスイッチング型の
ネットワークなどのスイッチまたはスイッチング型のネ
ットワークの中からクラスタ・ウエブ・サーバなどのス
ケール可能なTCP/IPサービスを構築する。 【解決手段】分散化された大型TCPルータはATMス
イッチング型のネットワークを用いて構築されうる。ス
ケールされたサービスは単一のサービスとしてクライア
ントに与えられる。クライアントはスイッチまたはスイ
ッチング型のネットワークに直接または間接に接続され
うる。1バージョンは制御エンジン(CE)および転送
エンジン(FE)と言う2つの要素を含む。CEはサー
バに接続を割り当てて、割り当てられたサーバに関する
情報を転送し、またFEへの接続を割り当てる機能を持
つ。FEはCEから受け取った割り当てを適用してTC
P接続をスイッチ型ATM接続にマップする。終了時
に、FEは接続終了事象をCEに戻す。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】インタネット・エンジニアリ
ング・タスク・フォース(IETF)のNBMA(non-
broadcast multiple access)でのインタネットワーキ
ング(Internetworking over NBMA−ION)のワーキ
ング・グループはインタネット・プロトコル(IP)ス
イッチングに対する3つの異なる提案を現在検討中であ
る。これらのアーキテクチャは2つの方法により要約す
ることができる。即ち先ず、イプシロンスイッチング方
法は非同期転送モード(ATM)接続をインタネット・
プロトコル・フローに関連づけ、次のものは接続を出口
ルータのルートに関連づける。
【0002】
【従来の技術】ATMはこの分野で良く知られている。
概観すると、ATMは歴史的にはB−ISDN(Broadb
and Integrated Services Digital Network)の開発に
基づいている。ATMはB−ISDNの伝送モードとし
て選ばれたパケットを多重化しスイッチングする方法で
ある。ATM、即ち高速ディジタル伝送、はパケット・
スイッチング技術を用いるが、「非同期」伝送とは関係
がない。(例えば、PDH,Broadband ISDN, ATM and All
That:A Guide to Modern WAN Networking, and How It
Evolved,Paul Reilly著、Silicon Graphics Inc. April
4, 1994発行を参照されたい)。ATMパケットはセル
と呼ばれ、各セルは5バイトのヘッダおよび48バイト
のデータを有する。ATMパケット・スイッチングは、
ATMパケットが仮想的経路および仮想的回路と呼ばれ
る予め設定されたルートを辿ると言う点において従来の
パケット・スイッチングと異なる。ATMはいかなる特
定の物理的伝送媒体にも依存しないが、伝送媒体が主と
して光ファイバであるときにはエラー率および損失率が
非常に少なく、従って再伝送は行われない。"Asynchron
ous Transfer Mode Tutorial", Northern Telecom, htt
p://www.webproforum.com/nortel2/index.html,(6/10/9
8)を参照されたい。
【0003】トランスミッション・コントロール・プロ
トコル/インタネット・プロトコル(TCP/IP)お
よびATMにおけるTCP/IPの使用はこの分野で良
く知られている。D.E. Comer著、"Internetworking wit
h TCP/IP:Principles, Protocols, and Architecture",
Englewood Cliffs, N.J.,Prentice Hall発行(1988)
を参照されたい。トランスミッション・コントロール・
プロトコル(TCP)スイッチングは異なるATMルー
タの間で接続を割り当てることによって、例えば予め定
義された仮想経路インディケータ/仮想チャネル・イン
ディケータ(VPI/VCI)を用いて働くが、この方
法は接続当たり交換される所与の量のパケットが効率的
であることを必要とする。取りうる別の処理方法はイプ
シロンIPスイッチング方法を用いることである。
【0004】ワールドワイド・ウエブ上のトラフィック
は特に評判の良い(ホット)所では指数的に増大してい
る。従ってスケーラブルなウエブ・サーバを提供するこ
とが重要である(例えば、Goldszmidt, G.および Hunt,
G.著、"Net Dispatcher a TCP Connection Router" IB
M Research Report, 1997,および Dias, D.M., Kish,
W., Mukherjee, R., Tewari, R.著、"A Scalable and H
ighly Available Web Server", Proc. 41st IEEE Compu
ter Society Intl. Conf. (COMPCON), 1996, Technolog
ies for the Information Superhighway, pp85-92, Fe
b. 1996 を参照されたい。スケーラブル・ウエブ・サー
バにおいて負荷バランスを与える公知の一方法はネット
ワーク・ディスパッチャを用いることである(例えば、
米国特許第5,371,852号、およびAttanasio, Clement R,
Smith, Stephen E.著、"A VirtualMulti-Processor Im
plemented by an Encapsulated Cluster of Loosely Co
upled Computers", IBM Research Report RC 18442 (19
92)を参照されたい)。ここではネットワーク・ディス
パッチャ(ND)のアドレスだけがクライアントに与え
られ、ネットワーク・ディスパッチャがクラスタ(いわ
ゆる仮想的カプセル化クラスタ−VEC)内のノードの
間で、ラウンド・ロビン式に、またはノードの負荷に基
づいて、入来要求を分配する。継続中の米国特許出願番
号08/861,749には一般化されたネットワーク・ディスパ
ッチャの例が開示されており、これはネットワーク相互
間全体の任意の場所に所在するノードへのルート決定を
可能にする。
【0005】インタネットの基幹ネットワークはスイッ
チング型ATMインフラストラクチャに移行しつつあ
る。同時に、非常に大きなサーバ(メイン・フレーム、
メイン・フレーム・クラスタ、またはその他のタイプの
クラスタの如何を問わず)が、帯域幅および要求時スル
ープットの画期的な成長を扱うためATMリンクを介し
てインタネット基幹に接続されようとしている。
【0006】この意味において、IETFはATMスイ
ッチの単純、高速、効率的な処理能力の利点を活用する
ための種々の代替案を検討中である。種々の代替案に共
通するものは、IPヘッダに基づくルート決定をATM
ヘッダに基づくスイッチング決定と置き換えてすべての
中間のホップ(クライアントおよびサーバ以外のすべて
のホップ)処理を単純化するための動的な方式である。
このことは究極的にはエンドポイント(つまり、クライ
アントおよびサーバ)だけがIPパケット(IPレイヤ
ー、TCPレイヤーなど)を処理し、エンドポイント間
の経路上のその他のすべてのホップがATMパケットを
スイッチすることを意味する。代替案の或るものはいわ
ゆる「ショートカット」方法も検討しており、これは物
理的接続性が許容するときには中間のホップの幾つかを
バイパスする機構である。インタネット業界で検討され
ている解決策には、ネクスト・ホップ・レゾリューショ
ン・プロトコル(NHRP)、イプシロンIPスイッチ
ング・プロトコル(IFMPおよびGSMP)、タグ・
スイッチング、およびIBMのアグリゲート・ルート・
ベース・IPスイッチ(ARIS)がある。NHRPに
ついては、"Next Hop Resolution Protocol (NHRP)", T
he Internet Society, Network Working Group, RFC 23
32 (1998)を参照されたい。
【0007】全面的にまたは部分的であってもスイッチ
ング型のネットワークにおいては、サーバのクラスタに
対し従来型のフロント・エンド(ネットワーク・ディス
パッチャなど)を稼働させるホップはIETFで検討さ
れている革新的なアプローチ全体と相容れないものとな
る。IPおよびTCP分野を調べることが必要であり、
その他のどのようなホップもルート決定を行うのにIP
を考慮するのを避けようとすることになるであろう。
【0008】
【発明が解決しようとする課題】上述の必要性に従っ
て、本発明はサーバのクラスタに対するフロント・エン
ドにスイッチング能力を与えて、パケットがサーバま
で、また、サーバに戻るように、またはクライアントに
最も近いスイッチへと、スイッチされるようにする特徴
を有する。
【0009】
【課題を解決するための手段】本発明の1態様は1つの
要素、すなわち、制御エンジン(CE)および転送エン
ジン(FE)を含む。制御エンジンはサーバへの接続を
割り当てて、割り当てられたサーバに関する情報を伝送
し、そして転送エンジンに接続する機能を有する。各転
送エンジンは制御エンジンから受け取った割り当てを適
用してスイッチング型ATM接続へのTCP接続をマッ
プする。転送エンジンは終了時に接続終了事象を制御エ
ンジンに戻す。
【0010】スイッチング型のネットワークを含むクラ
イアント−サーバ・システムにおいてサーバのクラスタ
からサーバを選択し、選択されたサーバに至るスイッチ
された経路を選択する方法の例は以下のステップを含
む。即ち、転送エンジン(FE)がクライアントの要求
を受け取るステップと、クライアントの要求に応答して
FEが制御エンジン(CE)に要求を送ってクラスタか
らサーバおよび対応するスイッチング・アドレスを選択
するステップと、CEがサーバを選択して対応するスイ
ッチング・アドレスをFEに送り、FEがクライアント
の要求に関連するデータをスイッチング・アドレスに関
連するスイッチング型接続を通して選択されたサーバに
送るステップとが含まれる。ここでスイッチング型接続
はCEを通る必要はない。
【0011】CEがスイッチング・アドレスをFEに送
るステップは更に以下のステップを含む。即ち、CEが
サーバ選択基準およびFEがその基準を使用することが
できる条件をFEに送るステップと、FEにより受け取
られたその後のクライアント要求に対して、現存するス
イッチされた接続がこの要求に関連しているかどうかを
FEが判定するステップと、現存する接続があるなら
ば、現存するスイッチされた接続を通してFEがこの要
求を送るステップと、現存するスイッチされた接続がな
いならばFEが基準に基づいて宛先をローカルに選択す
るステップと、が含まれる。
【0012】本発明はその他の特徴を有しており、これ
は中央に集中されたクラスタ・フロント・エンド(クラ
スタ・サーバまたはディスパッチャとも呼ばれる)を通
るパケットの経由を最小にし、ルート決定機能の幾分か
をスイッチング型のネットワークの端に分配することに
よって隘路が生じる可能性を都合良く低減する。また、
この方法はディスパッチャに2ホップ以上離れたサーバ
を管理させ、また伝送処理を分配することによってシス
テム全体の頑強さおよび性能を増大させる。例えば、F
Eはスイッチング・アドレスに基づいてTCP接続をス
イッチング型ATM接続にマップすることができる。C
Eから遠くに離れた複数のFEを設けてFEがスイッチ
ング型のネットワークの端に分布され、各FEがCEの
指図に従ってTCP接続を分配するようにすることもで
きる。別の例では、複数の分散されたFEがスイッチ組
織を介してCEに接続されることも可能であり、分散さ
れた各FEはCEの指図に従ってスイッチング型接続を
マップする。
【0013】本発明の1実施例は現存するTCP接続ル
ータのすべての能力を含んでいる。これには利用可能度
が高いことおよびフォールト・トレランスが含まれる。
例えば、1997年9月15日出願、継続中の米国特許
出願(出願人整理番号YO997-232)を参照されたい。別
の実施例は現存するTCP接続型のルータの、サーバ・
クラスタに加わる負荷をバランスさせるためのフィード
バック機能の幾つかを含んでいる。
【0014】本発明によるフォールト・トレランスの特
徴を含む方法の1例は一次CEと、この一次CEが故障
したときのためのバックアップCEとを含んでいる。こ
の方法は、一次CEの障害を検出するステップと、障害
の検出に応答してバックアップCEが一次CEを引き継
いでFEにそれが新しい一次CEであることを通知する
ステップとを含む。
【0015】複数のFEを含む別の例はクライアントの
要求に応答してネットワークで入手できるコンフィギュ
レーション情報を用いて一次FEが障害を起こしたとき
に選択されるバックアップFEを1つ以上構成に組み入
れるステップと、一次FEが障害を起こしたとき活動中
のクライアント接続を中断することなくバックアップF
Eにデータを送るステップとを含む。追加のステップと
して、障害を起こしたFEが回復したことを判定するス
テップと、回復したFEを現状に更新するステップと、
ネットワークを更新して新たな要求が回復したFEに送
られるようにするステップと、クライアントを中断する
ことなく現存する接続のパケットを一次FEとして回復
したFEに経路変更するステップとが含まれても良い。
【0016】本発明は取り付けられた(直接または間接
に)サーバによって提供されるサービスをスケールする
汎用装置を開発するためのシステムおよび方法を含む。
この汎用装置は強化されたスケール能力を与えるための
スイッチを利用する。この装置の1例において、分散大
型TCPルータがATMスイッチング型のネットワーク
を用いて構築される。スケールされたサービスはクライ
アントに対する単一のサービスとして提供されうる。こ
れらのサービスはスイッチ組織に直接または遠隔地から
取り付けられ得る。
【0017】幾つかの利点として、次のものが挙げられ
る。 ・インタネット・サービスをスケールする現在のいかな
る手法と比べても最高の容量およびスループットを有す
る。 ・この手法はフォールト・トレランスおよび高い利用可
能度を有する。 ・この手法はサーバおよびクラスタ・サーバが同一サブ
ネットに共存することを強制すると言うような制約を持
たない。サーバはATM組織に直接取り付けられまたは
ルート経由のネットワークを介して取り付けられ得る。 ・スイッチ組織はネットワーク内にあって良く、または
高度にスケール可能な並列コンピュータであっても良
く、或いはその他任意のアプリケーション(電話など)
であって良い。
【0018】
【発明の実施の形態】図1はスイッチング技術を含むス
イッチング型のネットワークに配置された本発明の例を
示す。一般に、スイッチング・ワイド・エアリア・ネッ
トワークの基幹1040は、フレーム・リレー、AT
M、またはX.25を含む(これらに限られるものでは
ないが)任意のスイッチ技術により具体化された従来型
のWAN(Wide Area Network)である。同様にスイッ
チされる企業ネットワーク1010は、フレーム・リレ
ー、ATM、またはX.25等の任意のスイッチ技術に
より具体化された従来型の企業ネットワークである。従
来通り、基幹ネットワークはインタネットに対する中央
の相互接続を作る任意のネットワークである。全国的基
幹は通常はWANであり、企業基幹は通常はLAN(Lo
cal Area Network)またはLANの組合せである。
【0019】本発明は周知のネットワーク・ディスパッ
チャ(ND)を含むことが望ましい。これはTCP接続
のソフトウエア・ルータであり、複数のTCPサーバ間
で負荷のバランスをも支援する。しかしながら、任意の
TCP接続ルータや負荷バランス論理が本発明に採用で
きることは当業者にとって明らかであろう。図に示され
たように、本発明は2つの主体であるネットワーク・デ
ィスパッチャ制御エンジン(ND−CE)1011およ
びネットワーク・ディスパッチャ転送エンジン(ND−
FE)1013、1014を含む。ND−CE1011
はサーバ1005への接続を割り当てて、そのサーバに
関する情報を送り、またND−FE1013、1014
への接続を割り当てる。ND−FE1013、1014
の各々はND−CE1011から受け取った割り当てを
適用してスイッチング(例えばATM)接続へのTCP
接続をマップする。ND−FEは最終的には接続終了事
象をND−CE1011に戻す。この方法がND−CE
1011とND−FE1013、1014との間で情報
を伝播させるのに用いられるプロトコルに無関係である
と共に、これらの機能の物理的所在にも無関係であるこ
とは当業者に明らかであろう。
【0020】転送エンジン(FE)は次の2つの極端に
至るまでネットワークのどこにあっても良い。 1.クライアント側:TCP接続がクライアントからサ
ーバへ全体的にスイッチされるようにする。この手法は
最も効率的であり、クライアントがスイッチング型のネ
ットワーク(1040または1010)に直接接続され
ることを必要とする(より詳細な例が図4を参照して後
で説明される)。しかしながら一般にクライアント(1
031、1032、1021、1022)はスイッチン
グ型のネットワークを介して直接に接続される必要はな
く、これらは任意の技術を用いてインタネットに接続さ
れても良い。
【0021】2.制御エンジンと同じ場所:クラスタと
なったND−FEおよびND−CEの組は従来型のスイ
ッチ組織または企業スイッチング型のネットワークを介
して接続されうる。このやり方はクライアントおよびW
ANの基幹を変更しないと言う利点を持つ。しかしなが
ら、WAN基幹がスイッチング型のネットワーク104
0であるならば、この手法はスイッチング型WAN基幹
1040を完全には利用しないことになる。それでもこ
の手法は転送エンジン1014の分散を可能にすると共
に企業スイッチング型のネットワーク(併合されたND
−FE/ND−CEとサーバとの間)の利点を依然活用
する。併合されたND−FE/ND−CEの例は図3を
参照して後で説明される。
【0022】好適なTCP接続ルータの実施例では、F
Eは「実行者」プロセスを含み、CEは「実行者」およ
び「管理者」プロセスを含む。これらは例えばNDから
適応されたものである。「実行者」は高速IPパケット
転送を支援するOSカーネルの拡張であって良く、また
「管理者」は「実行者」を制御するユーザ・レベルのプ
ロセスであって良い。この新しい実施態様はその「実行
者」を有するFEがスイッチまたはスイッチング型のネ
ットワークの端に分散されることを可能にして性能およ
び頑強性の改善をもたらす。FEはCEの指示の下で同
期的または非同期的に接続を分散する。ホストは従来か
ら通信していたのと同じ方法でCEと通信することもで
きる。一次と指定されるCEおよび二次と指定されるも
う1つのCEと言う2つのCEをネットワークに持つこ
とによって高い利用可能性およびフォールト・トレラン
スが得られる。2つのCE間の通信は公知の方法を用い
ることができる。FEが分散されているので相違点とし
ては一次とバックアップとの間で追加の状態が転送され
ねばならないことが挙げられる。
【0023】従来型のネットワーク・ディスパッチャま
たはルータとは異なり、本発明はトポロジ、速度、リン
ク速度、およびクライアントの要求をサーバに伝えるた
めにスイッチング型のネットワークに備えられるその他
の情報を用いることができる。例えば、ATMなどのス
イッチング型のネットワークではPNNI(PrivateNet
work to Network Interface)などの経路指定プロトコ
ルがスイッチに大量の情報を分配し、これがND−CE
やND−FEにより用いられて適当なサーバに至る適当
なルートを選択する。このようなルート決定プロトコル
を利用する場合、ND−CEおよびND−FEは、サー
バ選択を改善するのに用いられるその他のスイッチ、そ
れらの間のリンク、および装置に関するおそらくは多様
な関連情報にアクセスする。このような有用な情報の例
には、端から端までの遅延(サーバに至るまで)ジター
(サーバの至るまでの遅延の変動)、サーバへの、およ
びサーバからのスループット(平均、ピーク、バースト
度)、および伝播遅延が含まれる。これは構成可能な計
測量が最適なサーバを選択するために基準となることを
可能にする。この決定はND−CEにおいてなされ、N
D−CEは、重みおよびND−FEがその基準を用いる
ことができる条件などの決定基準をND−FE101
3、1014に送る。このようにしてND−FEはそれ
が作った現存するスイッチ接続を用いてサーバに接続要
求を独立的に割り当てることができる。ND−CEのク
ライアントであるND−FEの部分がこの情報を優先的
に受け取ってND−FEにおけるその使用を指示するこ
とになることは当業者にとって明らかであろう。
【0024】図1に戻ると、1つ以上のクライアント1
021、1022がSWAN(Switched Wide Area Net
work)基幹1040にルートされた基幹1020(ルー
トされたネットワークとも呼ばれる)およびES/ND
−FE(Edge Switch/Network Dispatcher Forwarding
Engine)1014を介して接続されている。クライアン
ト1031、1032はルートされたネットワーク10
30およびES/ND−FE1013を介してSWAN
基幹1040に接続されている。ルートされた基幹10
20、1030は、クライアントの要求を端スイッチ1
013または1014に送ることのできる任意の基幹と
して広義に定義される。スイッチされる企業ネットワー
ク1010もスイッチ1012を介してSWAN基幹1
040に接続される。ネットワーク・ディスパッチャ制
御エンジンND−CE1011もSWAN基幹1040
に接続される。サーバのクラスタ1005はスイッチさ
れる企業ネットワーク1010に接続される。
【0025】ネットワーク1040および1010がA
TMネットワークである場合にはNHRP(Next Hop R
esolution Protocol)が本発明に従って使用されうる。
NHRPは同じサブネットに属さない端点間にいわゆる
ショートカット接続を作り、中間のすべてのNBMA
(non-broadcast multiple access)を取り付けられた
ルータをバイパスすることを可能にする。標準的なNH
RP要素はNHRPクライアント(NHC)およびNH
RPサーバ(NHS)を含む。この場合、ND−FEお
よびND−CEはNHC++(以下に説明する追加の機
能を有する標準的なNHC)と呼ばれる変更されたNH
RPを用いることができる。一実施例において、ND−
CE1011はNHS++(以下に説明する追加の機能
を有する標準的なNHS)と呼ばれる変更されたNHR
Pを含んでいる。
【0026】サーバのクラスタ1005には幾つかの目
標となりうるものがあるが、クライアントはただ1つの
目標IPアドレス(仮想的なカプセル化されたクラスタ
(VEC)アドレス)しか見ていないので、NHRPの
具現化には特別の拡張が加えられなければならない。従
ってNHC++およびNHS++機能(以下に述べる)
がこの場合設けられなければならない。必要とされる特
定の装置の数は顧客のどのような構成でも支援できるよ
うに最小にされるべきである。ショートカット接続の利
点を最大限に利用するために、好適な実施例はNHC+
+クライアントをSWAN1040への入り口ルータに
置き、NHS++機能を少なくともND−CE1011
に置く。WAN入り口NHC++からND−CE/NH
S++への経路にあるルータに必要とされるすべてのこ
とはNHSの支援である。これと同様に、ND−CE/
NHS++から目標サーバのNHC++への経路にある
ルータに必要とされるすべてのことはNHSの支援であ
る(図7を参照してこの後述べられるように)。企業ル
ータ(WAN出口1)はNHS++機能を持つ必要はな
い。
【0027】図2は本発明に従ってクライアントとサー
バとの間でスイッチング経路を設定するための論理フロ
ーの例を示す。ここに示されたように、クライアント1
021はサーバのクラスタ1005からTCPサービス
を得るための要求2035を出す。この要求2035
は、スイッチング型ワイド・エリア・ネットワーク基幹
1040の境界にある端スイッチ1014に最終的に到
達する。この端スイッチ1014はネットワーク・ディ
スパッチャ転送エンジン(ND−FE)2023も含ん
でいる。ND−FE2023は、要求が現存する接続の
一部であるか否かを調べるために標準的なテーブル・ル
ックアップを行う。要求が現存する接続の一部であるな
らば、ND−FE2023は対応するスイッチング型接
続を取り出して、現存するスイッチング型接続上のクラ
イアント要求をクラスタ1005のサーバにそのまま送
る(スイッチング型のネットワーク1040、スイッチ
1012、およびスイッチング型企業ネットワーク10
10を介して)。既に存在する接続がないならば、ND
−FE2023はクライアント要求2025をネットワ
ーク・ディスパッチャ制御エンジンND−CE1011
に送る。ND−CE1011はクラスタ1005におい
てサーバを選択し、選択されたサーバのスイッチング・
アドレスをND−FE2023に戻す。
【0028】これに加えて、ND−CE1011はその
決定基準(重みなどの)およびND−FE2023がこ
の基準を用いることのできる条件をND−FE2023
に送ることができる。ND−FE2023は、それが作
った現存するスイッチ接続を用いてサーバ1005に接
続要求を独立して割り当てるためにこの基準を用いるこ
とができる。また、ND−CE1011は、サーバへの
スイッチング経路をそれがアイドルになった後どのくら
い長く維持するかについての情報をND−FE2023
に与えることが望ましい。この追加の情報は同じフロー
(2026)を用いて、または別途(2029)送るこ
とができる。
【0029】接続設定に戻ると、ND−CE1011
は、スイッチング型のネットワーク1040、スイッチ
1012、およびスイッチング型企業ネットワーク10
10を介してクラスタのサーバ1005に最初のクライ
アント要求を送る(2015)。ND−FE2023が
選ばれたサーバのスイッチング・アドレスを受け取る
と、それは選択されたサーバへのスイッチング型接続2
028を作ることになる(2027)。スイッチ接続が
既に存在するならば(2028)、新しく接続を作る代
わりに(2027)現存する(2028)接続をそれが
再使用することが望ましい。接続が作られた後(新たな
接続かまたは現存する接続)、ND−FE2023は、
スイッチング型のネットワーク1040、スイッチ10
12、およびスイッチング型のネットワーク1010を
介して、作られたスイッチ接続2028上のクライアン
ト接続のすべての後続パケット2036をサーバ100
5に送ることになる。
【0030】クライアント1021がサーバ1005へ
の接続を終了すると、ND−FE2023はその接続を
除去としてマークし、接続終了パケットおよびその接続
に対するすべての後続パケットをND−CE1011に
送るか(2025)、または接続終了パケットをサーバ
1005に送り、接続が終了した後、ND−CE101
1に接続が終了したことを別途通知する(2029)。
接続終了パケットおよび後続パケットがND−CE10
11に送られようとするとき(2025)、ND−CE
1011はこの接続を除去としてマークし、パケットを
関連するサーバに送る(2015)。接続が或る時間の
間アイドルになっているとND−CE1011はこの接
続を除去するが、これは構成可能であることが望まし
い。ND−FE2023がND−CE1011に接続終
了を別途通知すると(2029)、ND−CE1011
はその接続テーブルから単純にその接続を除去するだけ
となる。接続が終了すると、端スイッチ1014とサー
バ1005との間のスイッチング型接続は、同じND−
FE2023から同じサーバに向けられる追加の接続が
それを再使用することができるように維持される。どの
クライアント接続もそのサーバを要求することなく或る
時間が経過した後、対応するスイッチ接続は除去されて
も良い。
【0031】図3は、ND−FE、ND−CE、端スイ
ッチ、企業基幹へのスイッチが同じ物理的ボックスまた
は装置に取り込まれた例を示す。図に示すように、クラ
イアント3080、3081、3082はルート指定さ
れたネットワーク3110、ND−CE−FEスイッチ
3010、およびスイッチング型のネットワーク310
0を介してサーバ3090、3091、3092のクラ
スタにアクセスすることができる。クライアント308
0からの最初の要求3005はND−FE3020に到
達する。ND−FE3020はその接続テーブルでのル
ックアップが不首尾となった後、最初のクライアント要
求3005をND−CE3040に送る(3025)。
ND−CE3040はクラスタからの選択されたサーバ
3090のスイッチング・アドレスで以てND−FE3
020に応答する。ND−CE3040はまた最初のク
ライアント要求3005を選択されたサーバ3090に
も送る(3035)。同じクライアント接続上でクライ
アント3080により出されるすべての後続パケット3
045はクライアント3080からND−FE3020
にルートされ、そしてND−FE3020から選択され
たサーバ3090にスイッチされる(3055)。終了
のフローは図2に述べたのと同じである。
【0032】図4はND−FE1014および図1のク
ライアント1021が併合されてクライアント/ND−
FE4420となった例を示す。図に示されたように、
クライアント/ND−FE4420が新たな要求を出す
と、それはSWAN1040を介して直接(4420)
ND−CE1011に行き、ND−CE1011はクラ
スタの選択されたサーバ1005のスイッチング・アド
レスをクライアント/ND−FE4420に戻す(44
15)。ND−CE1011は選択されたサーバ100
5にも要求を送る(4425)。この最初の交換の後、
この接続についてのすべてのトラフィックはスイッチさ
れる基幹1040を介してクライアント/ND−FE4
420と選択されたサーバ1005との間でスイッチさ
れる(4445)。終了のフローは図2について述べた
ものと同じである。
【0033】図5はサーバを選択し、そのサーバへの経
路を選択または設定するためにND−FEで用いられる
論理フローの例を示す。ステップ5010において、N
D−FE2023(図2)はクライアント要求を受け取
る。ステップ5030において、ND−FE2023
は、この要求が属する現存する接続があるか否かを調べ
るためにテーブル・ルックアップを行う。現存する接続
があるならば、ステップ5170においてそれは関連の
スイッチング型接続を介してこの要求を単に送るだけで
ある。ステップ5030において現存する接続がなけれ
ば、ステップ5060においてND−FE2023は、
宛先サーバをローカルで選択することができるか否か、
またはND−CE1011まで行かなければならないか
どうかを調べる(図2)。この決定は前のフロー(20
29−図2で述べた)でND−CE1011により与え
られた構成可能な機能およびデータを用いてなされるの
が望ましい。ND−FE2023がサーバをローカルで
選択することができる場合には、ステップ5100にお
いてそれはサーバを選択する。ステップ5060におい
てND−FE2023がサーバをローカルで選択するこ
とができない場合には、ステップ5090においてND
−FE2023はND−CE1011を調べてサーバ選
択および対応するスイッチング・アドレスを得る(図2
の2025)。サーバがローカルで、またはND−CE
1011により選択されると、処理はステップ5130
に続く。ステップ5130において、ND−FE202
3は、選択されたサーバへの現存するスイッチング型接
続が存在するか否かを調べる。スイッチング型接続があ
るならば、ステップ5170においてそれは現存するス
イッチング型接続を通してこの要求を送る(図2の20
28)。サーバへの現存するスイッチング型接続が存在
しないならば、ステップ5160においてND−FEは
選択されたサーバへのスイッチング型接続を設定する。
これがなされると、ステップ5170においてそれは新
たなスイッチされる(図2の2027)接続を通してク
ライアント要求を送る。
【0034】図6ないし12は、割り当てられたサーバ
をND−FEに知らせてそれがスイッチされる(AT
M)接続にTCP接続をマップすることができるように
するためND−CEとND−FEとの間でNHRPプロ
トコルを用いる本発明の例を示す。本発明の一部はND
−FE,ND−CE、およびサーバの間の経路に関し、
またサーバ上でNHRPの公知の特徴を用いる。本発明
がその他のタイプのスイッチ、またはスイッチング型の
ネットワークにも直ちに実施できることは当業者にとっ
て明らかであろう。好適な実施例に用いられるすべての
フローは標準的なNHRPフローである。NHRPは拡
張フィールドを許容するが、これは追加の機能を取り入
れるために用いるのに好都合である。従って、フローに
関するすべてのエラーはこの分野で知られた技術を用い
て具合良く処理される。
【0035】図6は本発明を取り入れたネットワーク・
トポロジの例を示す。TCPクライアント(101)
は、サーバ141、および142を含むサーバのクラス
タのサービスを用いることを必要とするIPホストであ
る。クライアントはサーバの1つ(141または14
2)上のアプリケーションとTCP接続を作らなければ
ならない。この例において、クラスタのIPアドレスは
IP_SCであるものと仮定される。TCPクライアン
トはクラスタのIPアドレスIP_SCおよびTCPポ
ート番号を知っているだけである。サーバはNBMA
(Non-Broadcast Multiple Access)ネットワーク(1
62)内に置かれる。この図および以降の図において、
NBMAネットワークにおけるスイッチング型接続はN
BMA接続と呼ばれることになる。ここで判るように、
ネットワーク162はATMネットワークであるが、本
発明がその他のタイプのスイッチング型のネットワーク
においても実施できることは当業者にとって明らかであ
ろう。
【0036】普通は、クライアント101によってサー
バの1つ141または142に送られるIPデータグラ
ムは点線で示された経路に通常は従う。ルート指定され
たこの経路は幾つかの中間のルータ、つまりサーバ14
1については111、131、132、121および1
34、サーバ142については111、131、13
2、121および135と交差する。
【0037】本発明によれば、ネットワーク162にわ
たってTCP接続の間ショートカットATM接続が作ら
れて中間のホップ数が最小になるようにされる。
【0038】中間のルータの内の2つ111および12
1が本発明に従って用いられている。ルータ111はN
D−FEを含んでいる。それはサーバとのショートカッ
ト接続を作る。それはまた、データグラムをTCPクラ
イアントからショートカット接続に送る。ルータ121
はND−CEを含んでいる。それは各新たなTCP接続
毎にサーバを割り当てる。
【0039】以下のフローはIETF(Internet Engin
eering Task Force)によって標準化されようとしてい
るNHRPからのものである。NHRP要素はNHRP
クライアント(NHC)およびNHRPサーバ(NH
S)を含むが、これらは共にこの分野では知られてい
る。ND−FE(111)およびND−CE(121)
はNHC++(以下に述べる追加的機能を有する標準的
なNHC)と呼ばれる変更されたNHRPクライアント
を用いる。ルータ133もNHS++(以下に述べる追
加的機能を有する標準的なNHS)と呼ばれる変更され
たNHRPサーバを含んでいる。必要とされる特定の装
置の数はどのような構成をも支援できるように最小でな
ければならない。WAN入り口NHC++111からN
HS++133間での経路にあるルータ131、132
に必要とされるすべてのことはNHSの支援である。
【0040】ショートカットの利点を十分に活用するた
めの好適な実施例はNHC++クライアントを、少なく
ともND−CE121においてWANおよびNHS++
機能に至る入り口ルータ111に置くことである(ルー
タ133の代わりに)。この場合、ルータ133はNH
Sも支援する。
【0041】これと同様に、ND−CEにサービスを与
えるNHS++(133)から目標サーバ141、14
2への経路にあるすべてのルータ(図6には何も示され
ていないが、ルータ134とサーバ141との間には1
つ以上のルータが存在しうる)に必要とされるすべての
ことはNHSの支援である(図7に関して説明する)。
企業ルータ111(WAN出口1)はNHS++機能を
持つ必要がないことに留意されたい。WAN入り口およ
び出口ルータは同じルータである必要はないことは当業
者にとって明らかであろう。
【0042】図7は図6に示したネットワーク・トポロ
ジに関する初期化フローの例を示す。
【0043】フロー201:各NHC(111,12
1,141)はそれぞれが所有するNHS(131,1
33,134)に対するNBMA接続設定を開始する。
この例ではNHS131はNHC111に対するサーバ
であり、NHS133はNHC++121に対するサー
バであり、NHS134はNHC141に対するサーバ
であるものと仮定される。NHCおよびそれにサービス
を与えるNHSの総体的所在場所は本発明の原理に関係
がない。
【0044】フロー202:フロー201が完了した
後、各NHC(111、121、141)はそれ自身の
プロトコル・アドレスおよびそれ自身のハードウエア・
アドレスをそれぞれにサービスするNHS(131、1
33、134)に登録する(NHRP REGIS
T)。例えば、ND−CE121はサーバ・クラスタの
IPアドレスをそれ自身のATMアドレスと共に登録す
る。
【0045】フロー203:アドレス登録が完了する
と、NHS131、133、134は肯定応答をそのク
ライアントに送る。
【0046】フロー214:ND−CE121はサーバ
・クラスタの各ホストとのNBMA接続を用いて受け取
った最初のパケットをルートを決められた経路に送る。
各ホスト毎にそれは権限ある解決要求(NHRP RE
SOL)をそれにサービスするNHS133に送る。こ
の解決要求は宛先ホストのIPアドレス(例えば、サー
バ141に対しIP1)を指定する。この例では初期化
フロー214ないし228がクラスタの1サーバについ
て説明される。これらのフローは各サーバ毎に実行され
なければならない。
【0047】フロー215:NHS133は解決要求を
その隣のNHSに送る。この分野で知られた手法を用い
て要求は、要求されたIPアドレスを有するNHS、例
えばIP1に対してはNHS134、に到達する。
【0048】フロー216:NHS134は141のハ
ードウエア・アドレスを含む解決応答を要求を出した所
に送る。
【0049】フロー217:この分野で知られた手法を
用いて解決応答は要求を出したところ、即ちND−CE
(121)、に到達する。
【0050】フロー228:ND−CE(121)はサ
ーバ141とのATMショートカット接続をここで作り
上げる。
【0051】図8は、サーバ141および142を含む
クラスタとのTCP接続を作るためTCPクライアント
101(図6)によって送られるIPデータグラムの処
理の例を示す。この例はND−FEがローカルにサーバ
を選択しようとしていないときの論理フローを述べる。
上に述べたように、ND−FEがサーバをローカルで選
択するときには、それはNBMA接続を再使用するので
これについてのフローは不要である。
【0052】フロー301:TCPクライアント101
はIPデータグラムを送って新たなTCP接続(TCP
オープン接続)を要求する。データグラムの宛先IPア
ドレスはIP_SC、即ちサーバ・クラスタのアドレス
である。ソースIPアドレスはTCPクライアントのア
ドレス(IP_CL)である。TCPヘッダはソースT
CPポート番号(P1)および宛先TCPポート番号
(P2)を含んでいる。4つの組合せ(IP_SC,I
P_CL,P2,P1)(以下、“TCP接続キー”と
呼ぶ)はTCP接続を一意的に指定する。
【0053】フロー302:IPデータグラムはND−
FE(111)に到達する。ND−FE(111)はそ
の「ND−FEキャッシュ・テーブル」を調べてTCP
接続キー(IP_SC,IP_CL,P2,P1)に一
致する項目を探す。これは新たな接続なので、このテー
ブルにこのような項目は無い。ND−FE(111)は
このデータグラムをデフォールト・ルートの経路303
(図6の点線で表される)に送る。ND−FE(11
1)はまたND−FEキャッシュ・テーブルに新たなT
CP接続キーに対する新たな項目を作る。このTCP接
続にはNBMA接続は関連されない。
【0054】フロー303:IPデータグラムはルート
された経路(131、132および133)に沿ってす
べてのルータにより送られる。
【0055】フロー304:ND−CE(121)はI
Pデータグラムを受け取り、そのキャッシュ・テーブル
を調べてTCP接続キー(IP_SC,IP_CL,P
2,P1)に一致する項目を探す。これは新たな接続な
ので、このテーブルにこのような項目は無い。要求され
たサービス(TCP宛先ポートP2によって指示され
る)、およびサーバの負荷またはその他の情報に基づい
て、ND−CE(121)は新たなTCP接続のための
クラスタ中の最良のサーバを決定する。選択されたサー
バはサーバ141であるものとここでは仮定される。従
って、ND−CE(121)は以前に作られたNBMA
接続を通してIPデータグラムをサーバ141に送る
(フロー228)。新たなTCP接続がサーバに対して
作られると,ND−CE(121)はそれ自身のTCP
接続キャッシュ・テーブルに新たな項目を加えて不活動
タイマをスタートさせる。
【0056】フロー315:サーバ141との新たなT
CP接続が作られようとしているので、ND−CE12
1は修正されたNHRP REGISTER要求を用い
てこの新たなTCP接続をそれにサービスするNHS1
33に登録する。この修正された要求はND−CEに特
有の拡張フィールドを持っており、これはTCP接続キ
ー(IP_SC,IP_CL,P2,P1)、および宛
先サーバのハードウエア・アドレス、即ちサーバ141
のATMアドレスを指定する。
【0057】フロー316:アドレス登録が完了する
と、NHS133は肯定応答をそのクライアントに送
る。
【0058】フロー327:短い遅延の後、ND−FE
(111)は修正された権限NHRP RESOLUT
ION要求をそれにサービスするNHS(131)に送
る。この修正された要求は、TCP接続キー(IP_S
C,IP_CL,P2,P1)を指定するネットワーク
・ディスパッチャ特有の拡張フィールドを含むことが望
ましい。ND−FEはルート指定された経路を用いてこ
の要求が満足されるまでクラスタにパケットを送り続け
ることになる(フロー303)。この要求に対して否定
応答があると、ND−FE111は再び要求する。
【0059】フロー328:この要求は権限あるもので
ある。この分野で知られた手法を用いてこの要求はNB
MAネットワーク162(図6)を通して送られ、要求
されたTCP接続キーを有するNHS133に到達す
る。
【0060】フロー329:NHS133は修正された
NHRPキャッシュにおいてキー(IP_SC,IP_
CL,P2,P1)を用いてTCP接続キーを探索す
る。NHS133が項目を見つけると、それは選択され
たサーバ141のATMアドレスを指定するNHRP
RESOLUTION肯定応答を送り返す。NHS13
3が項目を見つけないときには、それはある時間の間遅
延してNHC++/ND−CE121がNHRP RE
GISTERを送ることを許容する(フロー315)。
遅延が終了する前にNHRP REGISTERが受け
取られると、NHRP RESOLUTION肯定応答
が送られ、そうでない場合にはNHS++133がNH
RP RESOLUTION否定応答を要求に対して送
る。
【0061】フロー330:この分野で知られた手法を
用いて、NHRP RESOLUTION応答は要求者
であるND−FE111に到達する。
【0062】フロー341:ND−FE(111)はT
CP接続キー(IP_SC,IP_CL,P2,P1)
と共にサーバ141のATMアドレスをND−FEキャ
ッシュ・テーブルに保存し、サーバ141へのショート
カットNBMA接続を作る。ATM接続ができると、そ
れはそのインタフェース番号および標準的なATMのV
PI/VCI(Virtual Path Indicator/Virtual Chann
el Indicator)値をND−FEキャッシュ・テーブルに
保存する。NBMA接続が作り上げられる前にTCP接
続に対する第2のIPデータグラムがND−FE111
によって受け取られると、このデータグラムはルート決
定された経路に送り出される。
【0063】図9はND−FE111によるショートカ
ットNBMA接続の使用の例を示す。
【0064】フロー401:TCPクライアント101
は以前に作られたTCP接続(IP_SC,IP_C
L,P2,P1)上のサーバ・クラスタにIPデータグ
ラムを送る。
【0065】フロー402:ND−FE111はIPデ
ータグラムを受け取る。ND−FE111はそのND−
FEキャッシュ・テーブルを調べてTCP接続キー(I
P_SC,IP_CL,P2,P1)に一致する項目を
探索し、そしてショートカットATM接続が既に存在す
ることを見いだす。ND−FE111はIPデータグラ
ムをサーバ141に直接送る。
【0066】フロー410:ND−FE111はルート
決定された経路を通してND−CE121のために意図
されたリフレッシュ・メッセージを定期的に送る。この
メッセージは活動中のTCP接続キーのリストを含んで
いる。リフレッシュ・メッセージは肯定応答を必要とし
ない無接続データグラムであることが望ましい(例えば
UDP(User Datagram Protocol)を用いて)。リフレ
ッシュの期間はルートされるトラフィックを過剰に増大
させないように十分大きく選ぶことができる。事実、N
D−CE不活動タイマの期間の1/3の値で十分であ
る。
【0067】フロー411:リフレッシュ・メッセージ
はサーバ・クラスタ・アドレスと同じ宛先IPアドレス
を持っている。それはこの分野で知られた手法を用いて
ND−CE121に到達する。
【0068】図10はTCP接続が閉じられようとして
いることを示すTCPパケットの処理の例を示す。
【0069】フロー501:TCPクライアント101
はTCP接続終了を示すTCPパケットを送る。ND−
FE111はこのパケットを受け取り、TCP接続キー
(IP_SC,IP_CL,P2,P1)を取り出して
ND−FEキャッシュ・テーブルを調べ、TCP接続キ
ーに一致する項目を探索する。それは接続状態を“クロ
ーズ”とマークし、ルート決定された経路にこのパケッ
トを送り出し、そしてタイマを始動させる。このタイマ
は、最後のパケットが接続を通った後に、項目を追い出
す前にどのくらいの長さだけ待つのかを指定する。この
接続に対する以後のパケットはすべてこのルート指定さ
れた経路に送り出されるのでND−CE121は同じタ
イマを維持することができる。正しい動作のためには、
このタイマはMSL(Maximum Segment Lifetime)の2
倍よりも大きくなければならない。指示された長さに時
間の間接続がアイドルになっていると、ND−FE11
1は対応する項目をそのND−FEキャッシュ・テーブ
ルから取り除く。
【0070】フロー502:TCPパケット宛先アドレ
スはサーバ・クラスタ・アドレスであるIP_SCであ
る。従って、このパケットはそれがND−CE121に
受け取られるまでルータからルータへとルートされる。
ND−CE121はTCP接続キーを取り出して対応す
るサーバ141のアドレスを得る。
【0071】フロー503:ND−CE121は以前に
作られたATM接続(フロー228)を通してTCPパ
ケットをサーバ141に送る。それはTCP接続の状態
を“クローズ”とマークしてタイマを始動させる。この
タイマもMSL TCPタイマの2倍より長い。
【0072】フロー510:タイマがタイムアウトする
と、ND−CE121はそのテーブルから対応する項目
を取り除く。それはまた修正されたNHRP PURG
E要求(例えばTCP接続キーを含む)をそれにサービ
スするNHSに送る。
【0073】フロー511:NHS133はその内部テ
ーブルからTCP接続キーを取り除く。それはまたNH
RP PURGE応答を要求元121に送ることによっ
て応答する。
【0074】図11はサーバによるショートカットAT
M接続をクリアする処理の例を示す。
【0075】フロー601:ショートカットATM接続
はサーバ141によってクリアされる。サーバは2つの
理由により自由意志でショートカット接続をクリアする
ことができる。タイマの或るものはタイムアウトしてい
るかまたはそのATMアドレスが変化しようとしてい
る。この要求はNBMA接続に関連する会話の上で流れ
るすべてのパケットに、NBMA接続が選択されたサー
バに対して再び作られるまで、ルート決定された経路を
辿らせる。
【0076】フロー610:1つ以上のTCP接続項目
が、クリアされようとしているNBMA接続に関連する
ND−FE111(ND−FEキャッシュ・テーブル)
に存在するならば、NBMA接続が再び作られることが
必要である。サーバのATMアドレスは認証される必要
がある。修正された権限NHRP RESOLUTIO
N(図8のフロー327で定義されたもの)要求がNH
S131に送られる。サーバ141およびND−CE1
21が再初期化するための時間を与えるために、NHR
P RESOLUTION応答はATM接続がクリアさ
れた直後には送られないのが望ましく、それは短い遅延
の後に送られる。
【0077】フロー611:この要求は権限あるもので
ある。NHS131はこの解決要求をその隣のNHS1
32に送る。この要求はこの分野で知られた手法を用い
て、要求されたTCP接続キーを有するNHS133に
到達する。
【0078】フロー612:NHS133はその修正さ
れたNHRPキャッシュにTCP接続キー(IP_S
C,IP_CL,P2,P1)を見つけている。NHS
133は、選択されたサーバ141のATMアドレスを
指定するNHRP RESOLUTION肯定応答を送
り返す。
【0079】フロー613:NHRP RESOLUT
ION応答はこの分野で知られた手法を用いて要求元の
ND−FE111に到達する。
【0080】フロー620:ND−FE111はサーバ
141に対するATMショートカット接続を再び作る。
【0081】図12はネットワークによりATMショー
トカット接続をクリアする処理の例を示す。
【0082】フロー701:ND−FE111とサーバ
141との間のショートカットATM接続はネットワー
クによりクリアされる。ND−FE111はこの接続を
ND−FEキャッシュ・テーブル中のどの項目によって
も使用できないものとしてマークする。これは、この接
続を用いたであろう後続のすべてのパケットを、選択さ
れたサーバに対してNBMA接続が再び作られるまで、
ルート決定された経路を通して送らせる。
【0083】フロー710:NDーFE111はサーバ
141とのショートカット接続を再び作ろうと試みる。
【0084】高度の利用可能度およびフォールト・トレ
ランス 図1は本発明の高度の利用可能度の特徴をも示す。スイ
ッチング型のネットワーク1040の内部には1つ以上
のND−CEが存在しうる。これらのCEはそれらの内
部テーブルを同期状態に保つために上述のものと同じキ
ャッシュに一貫性あるプロトコルを用いることになる。
ND−CEが障害を起こすと、それを引き継いだND−
CEが、新たな制御ND−CEであることをすべてのN
D−FEに知らせる。
【0085】ND−FEはND−CEとは無関係に障害
を起こす。ND−FEが障害を起こすと、この障害を起
こしたND−FEを介して接続されたクライアント(1
021、1022、1031または1032)だけが影
響を受ける。図1において、クライアント1021、1
022はND−FE1014を介して接続され、クライ
アント1032、1031はND−FE1013を介し
て接続されている。ND−FE1013が障害を起こす
と、期間1030を介して接続されたクライアント(1
032、1031)だけが影響を受ける。クライアント
の要求を本発明のシステムに導く期間ネットワーク(ル
ートを与える期間)が1つのND−FE1013だけを
有しそれを介してネットワークがルートを与える場合に
は、そのFEの障害はこれらのクライアントを恒久的に
切り離すことになる。この1点の障害から保護するため
に、第2のND−FEがこのルート基幹1030に取り
付けられるように構成に組み込まれることができる。し
かしながら、典型的には、インタネットのようなルート
基幹では複数のルートが利用可能となる。クライアント
が接続すると、ネットワークにおいて得られるルート情
報が、ND−FE1013が障害を起こしたときに別の
どのND−FE(またはルート)が選択されうるのかを
決めるのに使用されうる。一次および二次ND−FE優
先的選択情報を用いてこのように構成されうる。接続テ
ーブルを活動中のND−FEと同期するよう維持するた
めに一次ND−FEと次の2つの最も可能性あるND−
FEとの間にキャッシュ一貫性プロトコルが維持されう
る。キャッシュ一貫性プロトコルはTCP接続キーおよ
び選択されたサーバの識別子をバックアップのND−C
Eに送る。バックアップのND−CEがTCP接続キー
を受け取ると、ショートカットが割り当てられ、その接
続テーブルに項目が記入される。バックアップのND−
FEと選択されたサーバとの間にショートカットが存在
しない場合、ショートカットが作られる。最初のパケッ
トが受け取られるまでこの接続を作るのを遅らせるため
に既に述べた定義のフローを用いることができることは
当業者にとって明らかであろう。図1において、ND−
FE1013を一次ND−FEとし、ND−FE101
4をバックアップとして考察する。ND−FE1014
接続テーブルはND−FE1013(1014はこれの
代替として構成に入れられている)を介して接続された
すべてのクライアントについての項目を含んでいる。一
次ND−FEが障害を起こすと、基幹はパケットを構成
に入れられた代替のND−FEにルート指定する。ここ
で、代替を構成に組み入れることは、ルーティング・テ
ーブルなどのネットワーク構成に関する従来の手法を意
味する。しかしながら、その他の構成機構も利用可能で
あることは当業者にとって明らかであろう。例えば、ネ
ットワーク・トポロジを動的に決定する方法が知られて
いる。この知識は一次およびバックアップを構成するの
に用いることができる。
【0086】再び図5を参照すると、転送決定論理に関
した、すべての接続、一次およびバックアップは同じ接
続テーブルで与えられることが望ましい。
【0087】一次ND−FEが通常行われるように修復
または回復したとき、それはルートが利用可能であるか
どうかについてネットワーク1030を更新する。それ
は、それのバックアップとして構成に入れられたFEか
らキャッシュ更新を得ることになる。通常行われるよう
に、ネットワークはルートのためのND−FEの使用可
能性を知るので、新たな接続が自動的にそれにルートさ
れ、現存する接続に対するパケットはクライエントに対
する中断なしにND−FEを介して再ルートされること
ができるようになる。一次ND−FEへのスイッチ・バ
ックはこの分野で知られた標準的なプロトコルによって
処理することができる。ND−FE間のキャッシュ一貫
性プロトコルは本発明がパケット・スイッチング型のネ
ットワークの利点を利用することを可能にする。
【0088】ND−FE間のキャッシュ一貫性プロトコ
ルは活動中の接続が終了したことがバックアップである
ND−FEに同報されることを保証する。輻輳状態の変
動のためにネットワークがパケットを異なるやり方でル
ートするならば、2つのND−FEに1つのクライアン
トが活動しているものと映ることがある。或る点で接続
が終了され、そしてこれらND−FEの各々は他のND
−FEのバックアップであるため、終了はキャッシュ一
貫性プロトコルを介してバックアップND−FEに繰り
返されることになってバックアップFEからクライエン
ト接続が外されることになる。
【0089】本発明は好適な実施例によりその代替実施
例と共に説明されたので、本明細書の特許請求の範囲に
含まれる種々の等価物、改良、改善が現在、および将来
においても当業者にとって自明であることが理解されよ
う。従って、特許請求の範囲は最初に開示された本発明
の適正な保護を全うするように解釈されなければならな
い。
【図面の簡単な説明】
【図1】 スイッチング型のネットワーク配置された本
発明の1例を示す図。
【図2】 スイッチング経路を設定するための論理的フ
ローの1例を示す図。
【図3】 単一のスイッチに併合された制御エンジン
(CE)および転送エンジン(FE)の例を示す図。
【図4】 クライアントに併合されたFEの例を示す図
【図5】 FEにおける決定プロセスの例を示す図。
【図6】 ネクスト・ホップ・レゾリューション・プロ
トコル(NHRP)を用いたネットワーク・トポロジの
例を示す図。
【図7】 種々の要素に対するNHRP初期化フローの
例を示す図。
【図8】 TCP接続設定のためのクライアント・サー
バ論理フローの例を示す図。
【図9】 TCP定常状態に対するクライアント・サー
バ・フローの例を示す図。
【図10】TCP閉鎖接続のためのクライアント・サー
バ・フローの例を示す図。
【図11】サーバによりクリアされたクライアント・サ
ーバ・ショートカット接続の例を示す図。
【図12】ネットワークによりクリアされたクライアン
ト・サーバ・ショートカット接続の例を示す図。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ガルニー・ダグラス・ホロウェイ・ハント アメリカ合衆国10598、ニューヨーク州ヨ ークタウン・ハイツ、ウェリントン・コー ト 31 (72)発明者 エリック・ミシェル・レヴィ−アベノール フランス国06200、ニース、アンシャン・ シュマン・ドゥ・ラ・ランテール 67 (72)発明者 ダニエル・ジョルジュ・ジャン−マリー・ モデュ フランス国06200、ニース、1・シュマ ン・ドゥ・ラ・バテリィ・リュス、ジャル ダン・デ・イリ、エイ・5 Fターム(参考) 5K030 GA04 GA11 HA08 HC06 HC13 JT02 KA05 LB05 LB19 LE03 MB01 MD02 MD08 5K033 AA04 AA09 BA04 CB01 CB06 DA06 DB12 DB14 DB16 DB18 EA04 EB06 EC04

Claims (22)

    【特許請求の範囲】
  1. 【請求項1】スイッチング型のネットワークを含むクラ
    イアント−サーバ・システムにおいてサーバのクラスタ
    からあるサーバを選択すると共に選択されたサーバに至
    るスイッチされる経路を選択するための方法であって、 転送エンジンによりクライアントの要求を受け取るステ
    ップと、 クライアントの要求に応答して、クラスタからサーバを
    選択すると共に対応するスイッチング・アドレスを選択
    するため、転送エンジンにより要求を制御エンジンに送
    るルートを指定するステップと、 制御エンジンによりサーバを選択して対応するスイッチ
    ング・アドレスを転送エンジンに送るステップと、 転送エンジンにより、クライアントの要求に関連された
    データを、スイッチング・アドレスに関連するスイッチ
    ング型接続を通して、制御エンジンを通ることなく選択
    されたサーバに送るステップと、 を含む方法。
  2. 【請求項2】スイッチング・アドレスを転送エンジンに
    送る前記ステップは、制御エンジンによりサーバ選択基
    準および転送エンジンがこの基準を使用できる条件を転
    送エンジンに送り、 転送エンジンにより受け取られる後続のクライアントの
    要求に対して、 転送エンジンによりこの要求に現存するスイッチング型
    接続が関連しているか否かを調べ、 現存する接続が存在するならば、転送エンジンにより現
    存する接続を通してこの要求を送り、 現存する接続が存在しないならば、転送エンジンにより
    前記基準に基づいて宛先をローカルに選択する、 ステップを含む、 請求項1に記載の方法。
  3. 【請求項3】転送エンジンによりスイッチング・アドレ
    スに基づいて、スイッチング型ATM接続にTCP接続
    をマップするステップを更に含む請求項1に記載の方
    法。
  4. 【請求項4】制御エンジンから遠隔の場所に複数の転送
    エンジンを配置してこの転送エンジンをスイッチング型
    ネットワークの端に分散させ、 前記転送エンジンの各々により制御エンジンの指示の下
    でTCP接続を分散させるステップ、 を更に含む請求項3に記載の方法。
  5. 【請求項5】分散された複数の転送エンジンをスイッチ
    組織を介して制御エンジンに接続させ、 制御エンジンの指示の下で、分散された各転送エンジン
    によりスイッチング型接続をマップするステップ、 を更に含む請求項3に記載の方法。
  6. 【請求項6】クライアント−サーバ・システムが制御エ
    ンジンに障害が生じたときのため一次制御エンジンおよ
    びバックアップ制御エンジンを含んでおり、 前記方法が、 一次制御エンジンの障害を検出するステップと、 前記検出するステップに応答して、バックアップ制御エ
    ンジンが一次制御エンジンを引継ぎ、それが新たな一次
    制御エンジンであることを転送エンジンに通知するステ
    ップと、 を含む請求項1に記載の方法。
  7. 【請求項7】クライアント−サーバ・システムが複数の
    転送エンジンを含んでおり、 前記方法が、 クライアントの要求に応答して、構成情報を用いて、一
    次転送エンジンが障害を起こしたとき選択されうる1つ
    以上のバックアップ転送エンジンを構成に組み入れるス
    テップと、 一次転送エンジンが障害を起こしたとき、活動中のクラ
    イアント接続を中断することなくバックアップ転送エン
    ジンにデータをルート指定するステップと、 を更に含む請求項1に記載の方法。
  8. 【請求項8】障害を起こした転送エンジンが回復したこ
    とを判定し、回復した転送エンジンを更新するステップ
    と、 新たな要求が回復した転送エンジンにルート指定され、
    現存する接続のためのパケットをクライアントに中断を
    与えることなく一次転送エンジンとしての回復した転送
    エンジンに再ルート指定するようにネットワークを更新
    するステップと、 を更に含む請求項7に記載の方法。
  9. 【請求項9】クライアントがスイッチング型のネットワ
    ークに直接取り付けられ、クライアントが転送エンジン
    を含んでいる請求項1に記載の方法。
  10. 【請求項10】クライアントがインタネットを介してス
    イッチング型のネットワークに取り付けられる請求項1
    に記載の方法。
  11. 【請求項11】スイッチング型のネットワークを含むク
    ライアント−サーバ・システムにおいてサーバのクラス
    タからあるサーバを選択すると共に選択されたサーバに
    至るスイッチング経路を選択するためのシステムであっ
    て、 クライアントの要求を受け取って要求を制御エンジンに
    ルート指定し、クライアントの要求に応答してクラスタ
    からサーバおよび対応するスイッチング・アドレスを選
    択するための手段と、 前記制御エンジンは、サーバ選択要求に応答してサーバ
    を選択するための制御エンジン手段、および対応するス
    イッチング・アドレスを転送エンジンに送るための制御
    エンジン手段を含むことと、 前記転送エンジンは前記スイッチング・アドレスに関連
    するスイッチング接続を通して制御エンジンを通ること
    なくクライアントの要求に関連するデータを選択された
    サーバに送るための転送エンジン手段と、 を含むシステム。
  12. 【請求項12】前記スイッチング・アドレスを転送エン
    ジンに送るための制御エンジン手段は、 サーバ選択基準および転送エンジンが該基準を使用でき
    る条件を転送エンジンに送るための制御エンジン手段を
    含み、 その後受け取られるクライアントの要求に対して、転送
    エンジンが、 この要求に関連する現存するスイッチング接続が存在す
    るか否かを判定するための転送エンジン手段と、 現存する接続が存在する場合、その接続を通して要求を
    送るための転送エンジン手段と、 現存する接続がない場合、前記基準に基づいて宛先サー
    バをローカルに選択するための転送エンジン手段と、 を更に含む請求項11に記載のシステム。
  13. 【請求項13】スイッチング・アドレスに基づいてTC
    P接続をスイッチング型ATM接続にマップするための
    転送エンジン手段を更に含む請求項11に記載のシステ
    ム。
  14. 【請求項14】制御エンジンから遠隔の場所にあるスイ
    ッチング型ネットワークの端に分散された複数の転送エ
    ンジンを含み、 前記転送エンジンの各々が制御エンジンの指示の下でT
    CP接続を分散させることを特徴とする請求項13に記
    載のシステム。
  15. 【請求項15】分散された複数の転送エンジンをスイッ
    チ組織を介して制御エンジンに接続させ、 制御エンジンの指示の下で、分散された各転送エンジン
    によりスイッチング型接続をマップする、 ことを特徴とする請求項13に記載のシステム。
  16. 【請求項16】制御エンジンに障害が生じたときのため
    に一次制御エンジンおよびバックアップ制御エンジンを
    含んでおり、 一次制御エンジンの障害を検出する手段と、 前記検出する手段に応答して、バックアップ制御エンジ
    ンが一次制御エンジンを引継ぎ、それが新たな一次制御
    エンジンであることを転送エンジンに通知するためのバ
    ックアップ制御エンジン手段と、 を更に含む請求項11に記載のシステム。
  17. 【請求項17】複数の転送エンジンを含んでおり、 クライアントの要求に応答して、ネットワークで得られ
    る構成情報を用いて、一次転送エンジンが障害を起こし
    たとき選択されうる1つ以上のバックアップ転送エンジ
    ンを構成に組み入れるための手段と、 一次転送エンジンが障害を起こしたとき、活動中のクラ
    イアント接続を中断することなくバックアップ転送エン
    ジンにデータをルート指定するための手段と、 を更に含む請求項11に記載のシステム。
  18. 【請求項18】障害を起こした転送エンジンが回復した
    ことを判定し、回復した転送エンジンを更新するための
    手段と、 新たな要求が回復した転送エンジンにルート指定され、
    現存する接続のためのパケットをクライアントに中断を
    与えることなく一次転送エンジンとしての回復した転送
    エンジンに再ルート指定するようにネットワークを更新
    するための手段と、 を更に含む請求項17に記載のシステム。
  19. 【請求項19】クライアントがスイッチング型のネット
    ワークに直接取り付けられ、クライアントが転送エンジ
    ンを含んでいる請求項11に記載のシステム。
  20. 【請求項20】クライアントがインタネットを介してス
    イッチング型のネットワークに取り付けられる請求項1
    1に記載のシステム。
  21. 【請求項21】サーバがルート指定されるネットワーク
    に取り付けられる請求項11に記載のシステム。
  22. 【請求項22】転送エンジン、制御エンジン、およびス
    イッチ組織が単一の装置に共存する請求項15に記載の
    システム。
JP30147098A 1998-10-22 1998-10-22 サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置 Expired - Fee Related JP3327850B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30147098A JP3327850B2 (ja) 1998-10-22 1998-10-22 サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30147098A JP3327850B2 (ja) 1998-10-22 1998-10-22 サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置

Publications (2)

Publication Number Publication Date
JP2000134214A true JP2000134214A (ja) 2000-05-12
JP3327850B2 JP3327850B2 (ja) 2002-09-24

Family

ID=17897291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30147098A Expired - Fee Related JP3327850B2 (ja) 1998-10-22 1998-10-22 サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置

Country Status (1)

Country Link
JP (1) JP3327850B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008054129A (ja) * 2006-08-25 2008-03-06 Nippon Telegr & Teleph Corp <Ntt> 機能分散型通信装置および経路制御方法
JP2008206028A (ja) * 2007-02-22 2008-09-04 Nippon Telegr & Teleph Corp <Ntt> 機能分散型通信装置、構成要素結合制御方法、およびプログラム
US7593337B2 (en) 2003-02-28 2009-09-22 Fujitsu Limited Packet processing system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7593337B2 (en) 2003-02-28 2009-09-22 Fujitsu Limited Packet processing system
JP2008054129A (ja) * 2006-08-25 2008-03-06 Nippon Telegr & Teleph Corp <Ntt> 機能分散型通信装置および経路制御方法
JP4638849B2 (ja) * 2006-08-25 2011-02-23 日本電信電話株式会社 機能分散型通信装置および経路制御方法
JP2008206028A (ja) * 2007-02-22 2008-09-04 Nippon Telegr & Teleph Corp <Ntt> 機能分散型通信装置、構成要素結合制御方法、およびプログラム
JP4630298B2 (ja) * 2007-02-22 2011-02-09 日本電信電話株式会社 機能分散型通信装置、構成要素結合制御方法、およびプログラム

Also Published As

Publication number Publication date
JP3327850B2 (ja) 2002-09-24

Similar Documents

Publication Publication Date Title
US6253230B1 (en) Distributed scalable device for selecting a server from a server cluster and a switched path to the selected server
US5953312A (en) Method and apparatus for determining alternate routes in a network using a connection-oriented protocol
US7158524B2 (en) Integrating switching and facility networks
EP0836359B1 (en) Internet NCP (network control point) over ATM
CA2256937C (en) A distributed architecture and associated protocols for efficient quality of service-based route computation
US6385204B1 (en) Network architecture and call processing system
US6069895A (en) Distributed route server
US6205146B1 (en) Method of dynamically routing to a well known address in a network
US6038212A (en) Method and system for optimizing the connection set up time in high speed communication networks for recovering from network failure
US6711152B1 (en) Routing over large clouds
US6563798B1 (en) Dynamically created service class-based routing tables
US6229787B1 (en) Mechanism to achieve very fast failover in ATM backbone networks using multi-homed circuits
US6483853B1 (en) Communications system for transmission of datagram packets over connection-oriented networks
US7123620B1 (en) Apparatus and method for scalable and dynamic traffic engineering in a data communication network
US6449279B1 (en) Aggregation of data flows over a pre-established path to reduce connections
US5687168A (en) Link state routing device in ATM communication system
US6185215B1 (en) Combined router, ATM, WAN and/or LAN switch (CRAWLS) cut through and method of use
JPH1070571A (ja) 最適パス決定方法
US6185213B1 (en) Packet transfer control method and node device using plurality of dedicated cut-through paths
JPH10224400A (ja) ネットワーキング方式
US6760336B1 (en) Flow detection scheme to support QoS flows between source and destination nodes
JP2000295291A (ja) データ伝送システム
JP3327850B2 (ja) サーバ・クラスタからサーバを選択し、選択されたサーバへのスイッチング経路を選択するための分散型スケーラブル装置
EP1356639A2 (en) Management of protocol information in pnni hierarchical networks
Cisco Designing APPN Internetworks

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees