協調して負荷バランスするクラスターサーバシステム及び方法
ホストコンピュータシステムは、ネットワークサービスの性能、好ましくは、ポリシーも基づくデータ転送処理を要求するためにサーバークラスターの複数のサーバーとともに独立したトランザクションに動的に関与する。ホストコンピュータシステムは、クラスターのサーバーの識別で動作し、トランザクションに先立って集められたサーバー性能情報において認定されたトランザクション用サーバーを自律的に選択する。サーバー性能情報は、選択されたサーバー及びサービス要求と組合わせて提供されたサービス要求属性情報のポリシー評価を集中化させたサーバーの実行状態を反映する負荷値及び重み値を含み得る。個々のトランザクションのための特定サーバーの負荷選択は、ホストコンピュータシステム及びサーバークラスターのサーバーの協調を通じて暗黙のうちにバランス化される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、ネットワークサービスを提供するのに利用されるサーバーシステムの整合制御に係り、より詳細には、ネットワークサーバーのクラスター間でコンフィギュレーションデータをセキュアに整合し配布すると共に、ネットワークサービスの実行を要求するクラスターシステム及びホストコンピュータシステムに対してコンフィギュレーションデータのインプレメンテーションを整合する技術に係る。
【背景技術】
【0002】
負荷バランスをとる概念及び必要性は、多数の異なるコンピューティング環境において、ほとんどの場合、情報サービスシステムの信頼性及び拡張性を高めるための要求として生じる。特に、ネットワーク編成のコンピューティングの分野では、負荷バランスをとることは、通常、典型的な離れたクライアントコンピュータシステムからのデータの要求を含む種々の処理要求に応答するために非常に多数の情報サーバーシステムを並列に効率的に利用する手段として遭遇する。サーバーを論理的に並列に配列すると、固有の冗長性能力が付加される一方、更なるサーバーの追加により少なくとも理論的には直線的に性能を拡張することができる。従って、要求、及び更には、それにより生じる負荷を効率的に分配することが、サーバーの並列クラスターを完全に利用して性能を最大にする上で本質的な要求となる。
【0003】
通常、負荷バランスをとる用途の特殊性に基づく特異性を伴って負荷バランスをとるために、多数の異なるシステムが提案され、種々具現化されている。チャン氏等(米国特許第6,470,389号)は、クライアントドメインネームサービス(DNS)要求に応答するためにサーバーの選択を調停するサーバー側の中央ディスパッチャーの使用を説明している。クライアントは、中央ディスパッチャーに対応する定義された静的DNSクラスター−サーバーアドレスへ要求を向ける。各要求は、次いで、ディスパッチャーにより使用可能なサーバーへ向け直され、該サーバーは、次いで、要求された情報をクライアントへ直接返送することができる。DNS要求の各々は原子的で且つ良好に定義されたサーバーオペレーションを要求するので、実際の負荷は、各サーバーへなされる要求の割合の関数になると推定される。それ故、ディスパッチャーは、DNSクラスターに参加するサーバーへ要求を均一に配布するために単に基本的ハッシュ関数を具現化するだけである。
【0004】
負荷バランス制御に中央ディスパッチャーを使用することは、アーキテクチャー上問題である。全ての要求はディスパッチャーを経て流れるので、単一ポイント欠陥に曝されて即座にサーバークラスターの全オペレーションの停止となる。更に、ディスパッチャーの性能を拡張する直接的な方法はない。大きな要求負荷又はより複雑な負荷バランスアルゴリズムを取り扱うためには、ディスパッチャーを、実質的に高いコストの高性能ハードウェアに置き換えねばならない。
【0005】
それとは別に、チャン氏等は、全てのクライアント要求をDNSクラスター内の全てのサーバーにブロードキャストして、中央ディスパッチャーの必要性をなくすことを提案している。サーバーは、個々にブロードキャストされた要求フィルタルーチンにおいて相互に排他的なハッシュ関数を実施して、独特のローカル応答に対する要求を選択する。この解決策は、各サーバーが各DNS要求を最初にある程度処理することを必要とし、サーバー性能の有効性レベルを低下するという不都合な結果をもたらす。更に、要求を発しているクライアントのアドレスのハッシュに基づいてサービスへの要求を選択すると、実際上、個々のDNSサーバーが、静的に定義されたクライアントグループにロックされる。それ故、等しい負荷分布を仮定することが、非常に多数の要求に対して、唯一、統計学的に有効である。又、ポリシーフィルタルーチンの静的な性質は、全ての要求が独特のサーバーにより選択されるよう確保するために、サーバーがクラスターに追加されるかクラスターから除去されるたびに、全てのルーチンを変更しなければならないことを意味する。大きなサーバークラスターにおいて、個々のサーバー欠陥が異常なものでなく、実際に、計画に入れねばならないとすれば、このようなクラスターの管理保守は、不可能でないまでも、非常に困難である。
【0006】
他の技術は、種々の動作条件のもとでサーバーのネットワークを負荷バランスさせるように進歩している。おそらく、最も行き渡っている負荷バランス技術は、実際の要求が受け取られるのに応答してサーバー間でリソースをいつそしてどこにシフトすべきか動的に決定するのに必要な情報を累積するバックグランド又はアウト・オブ・チャンネル負荷モニタを実施する解決策を取り入れている。例えば、ジョーダン氏等(米国特許第6,438,652号)は、各サーバーがクラスター内の他の全てのサーバーに対して第2レベルのプロキシーキャッシュとして更に動作するようなネットワークポリシーキャッシュサーバーのクラスターを説明している。バックグランド負荷モニタは、特定コンテンツオブジェクトに対して繰り返される第2レベルキャッシュ要求についてサーバークラスターを観察する。同じ第2レベルキャッシュから満足される同じコンテンツに対して過剰な要求があることは、応答側サーバーが過負担になっている指示であると考えられる。サーバーによりサービスされている直接的即ち第1レベルのキャッシュ要求頻度と、第2レベルのキャッシュ要求頻度とのバランスに基づいて、負荷モニタは、コンテンツオブジェクトを1つ以上の他のキャッシュにコピーし、それにより、広く且つ繰り返し要求されるコンテンツオブジェクトに対して第2レベルのキャッシュワーク負荷を分散すべきかどうか決定する。
【0007】
簡単なコンテンツオブジェクトのようなリソースを、負荷バランスをとるように容易にシフトできない場合には、通常、タスク又はプロセスとして表わされる要求を、サーバーのクラスターネットワーク内の他のサーバーへ選択的に転送することにより動作することを特徴とする別の解決策が開発されている。中央の負荷バランスコントローラは、これを回避することが好ましいので、各サーバーは、他のサーバーのどれが要求を受け入れそして実際にそれに対応する要求転送を与えるか決定するための監視及び通信メカニズムを実施することが要求される。このメカニズムのプロセス転送の態様は、そのメカニズムが、転送すべきタスクの特定の性質と、タスクの仕様を表わす個別データパケットの転送から能動的実行プロセスの全状態の収集及び搬送に至るまでの複雑さの範囲とに強く依存しているという点で、しばしば実施特有のものである。逆に、それに関連する従来の負荷監視メカニズムは、一般に、ソース向き又はターゲット向きとして分類することができる。ソース向きのサーバーは、クラスター内のターゲットサーバーの少なくともあるサブセットに能動的に問合せをしてその負荷状態を検索することにより、ターゲットサーバーの負荷状態を能動的に監視する。ターゲット向きの負荷監視は、個々のターゲットサーバーが、最低限、タスク転送を受け入れる容量を反映する負荷状態情報をブロードキャストするというパブリケーション原理で動作する。
【0008】
一般に、負荷状態情報をソース及びターゲットで共有することは、クラスター内の他のサーバーが、サーバークラスターの使用可能な負荷容量のある動的表示をオンデマンドで得るか又は時間と共に集計するのを許すために、ある間隔で実行される。しかしながら、大きなサーバークラスターの場合には、サーバークラスター全体に課せられる個別通信オペレーションの数を最小にするために、負荷決定オペレーションがしばしばローカル又はサーバー関連ネットワーク隣接部に限定される。より遠隔のサーバーの負荷値は、時間をかけてネットワークを経て伝播しなければならず、従って、不正確な負荷レポートを生じ、不均一な負荷分布を招くという兼ね合いである。
【0009】
それに関連した問題が、アロン氏等(米国特許第5,539,883号)において説明されている。サーバークラスター負荷ベクトルへと集合されるサーバー負荷値は、サーバークラスターの種々のサーバーにより増分的に要求されるか又は宣伝される。サーバーがベクトルのローカルコピーを転送する前に、そのサーバーに対する負荷値がベクトルにおいて更新される。更新されたベクトルを受け取るサーバーは、次いで、規定のルールに基づき、その受け取った負荷値でベクトルのサーバーローカルコピーを更新する。従って、ある所与の隣接部に対して負荷値を再分布すると、最初に軽い負荷のかかったサーバーを、サービスに対する長期高需要に露出させることがある。それにより生じるタスクの過負荷及びそれに続くサービスの拒否は、少なくとも、より高いサーバー負荷値を反映する新たな負荷ベクトルが充分な数のサーバー間を循環して負荷を適切に反映するまで、継続する。この問題を軽減するために、アロン氏等は、負荷バランスメカニズムの一部分として負荷値情報に対するツリー構造の分布パターンを説明している。ツリー構造の負荷情報転送に基づき、軽い負荷のかかったサーバーを識別する低い負荷値は、軽い負荷のかかったサーバーがタスク転送で溢れるのを防止するために分布を通してエージングされる。
【0010】
ソース向きであろうとターゲット向きであろうと、サーバークラスターのサーバー間の負荷情報の周期的共有に基づいて負荷バランスをとることは、負荷情報が最終的に配送されるものとして信頼性があるという基本的仮定で動作する。タスク転送の拒絶は、従来、基本的な欠陥として処理され、しばしば回復可能であるが、広範な例外処理を要求する。従って、最終的にバランスのとれた負荷分布を達成するために益々多数のタスク転送回復及び再試みオペレーションが要求されるので、個々のサーバーの性能は、安定化するのではなく、次第に増加する負荷のもとで、著しく低下する傾向となり得る。
【0011】
高い負荷状態を通常招く環境では、負荷情報の交換及び確実性を加速するために特殊なネットワークプロトコルが開発されている。ネットワークのトラフィック負荷を分担するために、ルーター及び他のスイッチ装置が種々のコンフィギュレーションでしばしばクラスター化される。ローカルの冗長なルーターコンフィギュレーションにおいて欠陥監視を与えると共に、ローカルルーターとリモートルーターとの間で負荷情報を共有するために、リンクネットワークプロトコルが提供される。他の共有情報の中で、現在負荷情報が装置と装置との間に高い頻度で伝播され、クラスター化された装置の個々の負荷状態を連続的に反映する。例えば、ベア氏(米国特許第6,493,318号)に説明されたように、プロトコルデータパケットは、負荷情報を定義してその伝播を管理すると共にクラスター内の個々の装置の負荷状態を更に詳細に示すための情報で充分に詳述することができる。スパンニングツリータイプ情報分布アルゴリズムをサポートしてプロトコルパケット伝播を制御しそしてループバックを防止する上で、シーケンス番号、ホップカウント、及び種々のフラグビットが使用される。公表される負荷値は、内部スループットレート及び待ち時間コストに関して定義され、これは、他のクラスター化されたルーターに、好ましいルート経路を決定するためのより洗練された基礎を許す。ベア氏により説明された装置に使用されるカスタムプロトコルは、有効ではあるが、負荷バランスプロトコルの実質的部分を、ネットワークプロセッサのような特殊な高速ハードウェアで実施することを本質的に要求する。それ故、このようなプロトコルの効率的な取り扱いは、汎用でない特殊なコンピュータシステムに限定される。
【0012】
バラード氏(米国特許第6,078,960号)は、他の特徴の中でも、サーバーネットワークのクライアント向け負荷バランス型使用を与えるクライアント/サーバーシステムアーキテクチャーを説明している。クライアントコンピュータシステムにより使用できる種々のサーバーコンピュータシステムが独立したサービスプロバイダーにより提供され、且つ異なるサーバーの使用が異なるコスト構造を伴うような環境の場合に、バラード氏は、クライアントからサーバーネットワーク内の個別の個々のサーバーへ負荷を選択的に分配するためのクライアントベースの解決策を説明している。クライアントベースの負荷バランスを実施することにより、バラード氏のクライアントコンピュータシステムは、サービスプロバイダーのサーバーネットワーク実施とは本質的に独立している。
【0013】
バラード氏の負荷バランスシステムを実施するために、各クライアントコンピュータシステムには、サーバー識別リストが設けられ、そこから、クライアント要求を受け取るためのサーバーが次第に選択される。このリストは、このリストで識別される各サーバーに対して、発行されるべきクライアント要求のパーセンテージ負荷及び最大周波数のような負荷制御パラメータを指定する。サーバー負荷は、要求を完了するのに必要な接続時間、又は要求に対する応答で転送されるデータの量に基づいて、クライアントによりおおよそ推定されるに過ぎない。次いで、負荷制御パラメータにより定義された負荷バランスプロフィールに統計学的に適合するように必要に応じて選択されたサーバーへ個々のクライアントによりクライアント要求が発行される。サーバー識別リスト及びそれに含まれる負荷制御パラメータは、クライアントにより静的に保持されるが、個々のクライアントは、それでもなお、サーバーの専用の記憶位置から種々のインターバルで新たなサーバー識別リストを検索することができる。更新されたサーバー識別リストは、アドミニストレータの手動の指図のもとに必要に応じてサーバーへ配布される。サーバー識別リストの更新は、アドミニストレータが、変化するクライアント要求のために負荷バランスプロフィールを必要に応じて手動で調整すると共に、ネットワークに対するサーバーの追加及び除去を受け入れることを許す。
【0014】
サーバー識別リストの静的な性質は、バラード氏のシステムのクライアントに基づく負荷バランスオペレーションが、サーバーネットワークの実際のオペレーションに対して基本的に応答しないようにする。特定のサーバー負荷は、種々のクライアントにより推定できるが、クライアント要求に完全に応答しない欠陥しか検出できず、これは、非応答サーバーを、クライアント要求にサービスすることへの更なる参加から除外することで取り扱うしかない。従って、動的に変化する負荷状態のもとでは、クライアントにより実行される片側の負荷バランス動作がサーバーネットワークの実際の負荷を甚だしく誤解し、更には、少なくともアドミニストレータの手動の介在により再イネーブルされるまでサーバーを参加から除外させることになる。サーバーをサーバーネットワークからこのように盲目的に除外することは、残りのサーバーに対する負荷を増大し、ひいては、他のサーバーがサーバーネットワークから除外される見込みを増大するだけである。それ故、サーバーを再イネーブルして、サーバーネットワークに対する負荷の集合的クライアントバランスを調整するためにサーバー識別リストを手動で更新することを含めて、能動的なサーバーネットワークをアドミニストレータが常時手動で監視することが必要となる。このようなアドミニストレータの保守は、少なくともユーザが悪い性能の発生を認知する迅速さに比して極めて低速であると共に、動作の非実用性の点からコストがかかるものである。
【発明の開示】
【発明が解決しようとする課題】
【0015】
以上の説明から、サーバーのクラスターを協働的に負荷バランスさせるための改良されたシステム及び方法が要望されることが明らかである。又、従来技術では述べなかったが、クラスターの一部分としてのサーバーの相互オペレーションに対するだけでなく、外部のクライアントコンピュータシステムに複合サービスを提供するサーバークラスターとしても、サーバークラスターのコンフィギュレーションを協働的にマネージすることが更に要望される。又、扱われていないのは、クラスター内のサーバー間で交換される情報に対するセキュリティの必要性である。クラスター化されたシステムは、セキュリティに敏感な目的で更に広く使用されることになるので、共有情報の傍受によりクラスターオペレーションの一部分が転用されたり、又は妥協されたサーバーがクラスターに導入されたりすると、受け入れられないリスクをもたらす。
【課題を解決するための手段】
【0016】
したがって、本発明の全般的な目的は、拡張可能な(scalable)なネットワークサービスを効果的に提供するためにサーバー群(サーバークラスター)を協同して負荷バランスする効果的システム及び方法を提供することである。
【0017】
定義されたネットワークサービスを実行するために構成されたサーバークラスターを提供することによって、本発明が達成される。ホストコンピュータシステムは、ネットワークサービスの実行要求を分散化するために、クラスターのサーバーと独立したトランザクション(典型的にはデータの転送処理を含む)にかかわる。ホストコンピュータシステムは、クラスターサーバの特定を行い、それぞれのトランザクションを実行するクラスターの目標サーバを動的に選択する。クラスターサーバーの選択は、前のトランザクションを介して、個々のサーバからのホストコンピュータによって集められたサーバ性能情報に基づき、ホストコンピュータによって自動的に行われる。
【0018】
クラスターサーバの性能情報は、前のトランザクションの中に戻された負荷値を含む。戻された負荷値の組は、対応するクラスターサーバーの実行状態を反映する。必要に応じて、同時に戻された重み値は、サービス要求と一緒に提供されるあるアクセス属性情報のポリシー評価をローカル化した目標クラスターサーバーを反映する。目標サーバーは、ネットワーク要求、負荷値、重み値、又はそれらの組み合わせによって特定されるオペレーションに関係してローカルに評価したアクセス属性に明確に基づき、サービス要求を明確に拒絶することができる。前記要求が受け入れられようと拒絶されようと、決定された負荷及び必要に応じた重み値が、ホストコンピュータから生じる要求に戻され、その後のトランザクションのための目標サーバを選択する基礎として記憶され且つ使用される。
【0019】
したがって、本発明の効果は、サーバーコンピュータシステムのクラスターを効果的に負荷バランスするのに必要なオペレーションが、ホストコンピュータシステムとクラスターの目標サーバーとの間に実行される自律行為に基づいて協同して行われる。負荷関連の情報は、個々のサービストランザクションに先立って個別というより、ホストとクラスターサーバーとの間の個々のサービストランザクションの過程で共有される。
【0020】
クラスターのサーバー間、又はホスト及びサーバー間でさえ、関与するホスト間で負荷情報を共有するために、通信接続が独立し、明確であるように要求されることはない。その結果として、オペレーションで共有する進行中の負荷情報を実行することにおいて、ホスト又はサーバーの一部で性能が失われることがない。さらに、複雑なオペレーションの回避や、負荷情報を共有するための複数ネットワーク接続の開始やオペレーションの遅延が回避される。
【0021】
本発明の他の効果は、本発明のサーバークラスターを完全に利用するために被るオーバヘッド処理が、ホスト及びサーバーコンピュータシステムに対するサービス要求頻度に関連して最小且つ必須の一定値で済むということである。ホストコンピュータシステムは、サービス要求を発行し、且つ受信したサーバー応答をその後に記録する予測において、利用可能なクラスターサーバーの実質的に一定の基本評価を実行する。要求を拒絶する可能性に対する問題として、ホストコンピュータシステムにはこれ以上のオーバーヘッドが置かれない。サービス要求の拒否が生じる場合であっても、サーバ選択の評価が最小の遅延奈要求された処理ステップによって再実行される。サーバ側では、ポリシーエンジンを介して各サービス要求が受信され評価され、その要求が拒絶されるべきか、又はポリシー事項としてその後の選択評価に相対的に優先されるべきである所与の重みであるか否かを迅速に決定する。
【0022】
本発明の更に効果は、ホストコンピュータシステムの機能が、異なる実行要求を最高に満足するのに必要なものとして様々なアーキテクチャ的な構成で分配され得ることである。従来のクライアント/サーバ構成の場合、クライアントへ直接的にホスト機能を実装することができる。また、クライアント/サーバ構成の場合、ホストのオペレーションによって、ファイルシステムプロキシとしてのホスト機能を実装することができ、コアネットワークファイルサーバのデータストアへのアクセスをフィルタするために動作する仮想マウントポイントをサポートする。
本発明の好ましい実施例では、ホストコンピュータシステムは、一般的には、コアとなるネットワークデータ資産に対するアクセスを有し且つ提供する直接的な保護システムである。
【0023】
さらに、本発明の効果は、ホストシステム及びクラスターサーバーの協同内部オペレーションが、完全に負荷バランスを減少させること、オペレーションの拡張(スケラビリティ)ができるようにすることである。維持の適正さや他の実装をアドレスするために、ホストによって保持されるサーバーリストの修正によって、ネットワークサービスクラスターを容易にスケール化且つ部分化することができる。クラスターサービスからサーバーの存在及び撤退を記録(マーク)するため、トランザクション内におけるホストへの通知のポスティング(posting)を通じて修正を実行することができる。サーバークラスターは信頼あるサービスを提供することができるので、サーバーリストの更新のタイミングは重大ではなく、複数のホストにわたって同期して実行される必要もない。
【0024】
本発明の他の効果は、サーバークラスターの負荷バランスアルゴリズムの選択要素がホスト及びサーバーシステムによって互いに直行するように計算され得るということである。おそらく、分散サーバーは個々のトランザクションを共有するために一瞬の負荷及び適当なポリシー情報を評価する。受信した負荷及びポリシー重み情報に基づき、ホストは、複数のトランザクションを越えて展開し、そしてクラスター内から直接明らかでない外部要因を更に考慮して、一般的に直交するトラフィックのシェーピング1(shaping)評価を実行することが好ましい。例えば、ホスト/サーバーネットワーク通信のコストと待ち時間などである。その結果生じる協同的な負荷バランスオペレーションは、ホストとサーバーの実行性能を効率的にし、オーバヘッドの低い利用をもたらすことになる。
【発明を実施するための最良の形態】
【0025】
システムアーキテクチャーは、一般に、クライアント/サーバーパラダイムに従うが、実際の実施は、通常、複雑であり、広範な様々な積層ネットワーク資産(アセット)を包含する。アーキテクチャー上の一般化は困難であるが、信頼性、拡張性及びセキュリティの基本的共通要件が全て存在する。本発明に関連して認識されるように、ネットワークコンピュータシステム企業のサーバーシステム及びデータを含む少なくともコア資産については、セキュリティのための特定の要件が共通に存在する。本発明は、コア資産へのアクセスを低下せずに企業内に確立された種々のホストへのセキュリティサービスを提供するサーバーのクラスターを設ける一方、セキュリティサービスクラスターの利用を効率的な負荷バランスにより最大にするシステム及び方法を提供する。当業者であれば、本発明は、コアネットワークセキュリティサービスの実施に特に適用できるが、基本的には、サーバークラスターの効率的な負荷バランスのとれた利用を可能にすると共に、更には、サーバークラスターの効率的で且つセキュアな管理も可能にすることが明らかであろう。又、明らかなように、本発明の好ましい実施形態の以下の詳細な説明では、1つ以上の図面に示された同じ部分を指すのに、同じ参照番号を使用している。
【0026】
本発明の基本的な好ましいシステム実施形態10が図1Aに示されている。多数の独立したホストコンピュータシステム121-Nが、高速スイッチ16を経てセキュリティプロセッサクラスター18に冗長に接続される。ホストコンピュータシステム121-Nと、スイッチ16と、クラスター18との間の接続は、専用又は共有媒体を使用してもよく、そしてホストコンピュータシステム121-Nと、スイッチ16と、クラスター18との間に直接的に延びてもよいし或いはLAN又はWAN接続を経て延びてもよい。本発明の好ましい実施形態によれば、ポリシー施行モジュール(PEM)が各ホストコンピュータシステム121-Nにおいて実施されて、該システムにより個別に実行される。各PEMは、その実行時に、セキュリティ関連情報をセキュリティプロセッサクラスター18へ選択的にルーティングして、要求されたオペレーションをホストコンピュータシステム121-Nにより又はそれに代わって個別に資格付けする役割を果たす。本発明の好ましい実施形態の場合に、これらの要求は、認証、認可、ポリシーに基づく許可、及び共通ファイルシステムに関連したオペレーションの包括的組み合せを表わす。従って、明らかなように、データ記憶装置14として一般に示されたデータ記憶装置に対するファイルデータの読み取り又は書き込みも、対応するホストコンピュータシステム121-Nにより実行されるPEMによりセキュリティプロセッサクラスター18を経てルーティングされる。PEMの全てのオペレーションは、セキュリティプロセッサクラスター18により順次に制御又は資格付けされるので、ホストコンピュータシステム121-Nの種々のオペレーションをセキュアに監視及び資格付けすることができる。
【0027】
本発明の別の企業システム実施形態20が図1Bに示されている。この企業ネットワークシステム20は、周囲ネットワーク22を含むことができ、これは、クライアントコンピュータシステム241-Nを、LAN又はWAN接続を経て、少なくとも1つのそしてより一般的には多数のゲートウェイサーバー261-Mに相互接続し、これらゲートウェイサーバーは、コアネットワーク28へのアクセスを与える。種々のバックエンドサーバー(図示せず)、SAN及びNASデータ記憶装置30のようなコアネットワーク資産には、クライアントコンピュータシステム241-Nによりゲートウェイサーバー261-M及びコアネットワーク28を経てアクセスすることができる。
【0028】
本発明の好ましい実施形態によれば、ゲートウェイサーバー261-Mは、クライアントコンピュータシステム241-Nに対する周囲セキュリティと、ゲートウェイサーバー261-Mにより確立された周囲内のコアネットワーク28及びそれにアタッチされたネットワーク資産30に対するコア資産セキュリティの両方を実施することができる。更に、ゲートウェイサーバー261-Mは、クライアントコンピュータシステム241-Nに代わってデータ処理プログラムを実行するアプリケーションサーバーとして動作することができる。名目上、ゲートウェイサーバー261-Mは、コアネットワーク資産に向けられたネットワークファイル要求を処理するために直接的経路に設けられる。従って、ネットワークコンピュータシステム10の全体的性能は、少なくとも一部分は、ゲートウェイサーバー261-Mのオペレーション性能、信頼性及び拡張性に直接依存する。
【0029】
ゲートウェイサーバー261-Mのセキュリティサービスを実施する際に、クライアント要求がゲートウェイサーバー261-Mの各々により遮られて、スイッチ16を経て、セキュリティプロセッサクラスター18へ向け直される。スイッチ16は、高速ルーターファブリックでよく、この場合、セキュリティプロセッサクラスター18は、ゲートウェイサーバー261-Mに対してローカルとなる。或いは又、従来のルーターを冗長コンフィギュレーションにおいて使用して、ゲートウェイサーバー261-Mとセキュリティプロセッサクラスター18との間にスイッチ16を経てバックアップネットワーク接続を確立することもできる。
【0030】
図1A及び1Bに示す両実施形態10、20の場合に、セキュリティプロセッサクラスター18は、共通ネットワークサービスを提供するように各々構成されたサーバーコンピュータシステムの並列編成アレーとして実施されるのが好ましい。本発明の好ましい実施形態では、提供されるネットワークサービスは、ネットワークファイルデータ転送要求を含むネットワークデータパケットのファイアウオールベースのフィルタリングと、資格付けされたネットワークファイル要求に応答して実行されるファイルデータの選択的両方向性暗号化及び圧縮とを含む。これらのネットワーク要求は、ホストコンピュータシステム121-N、クライアントコンピュータシステム141-N、及び例えば、アプリケーションサーバーとして動作するゲートウェイサーバー161-Mで直接的に発信されてもよいし、或いはこれらシステムにより受け取られた要求に応答して発信されてもよい。セキュリティプロセッサクラスター18の個々のサーバーにより実行される詳細な実施及びプロセスは、2002年7月22日に出願された「Secure Network File Access Control System」と題する出願中の特許出願第10/201,406号、2002年7月22日に出願された「Logical Access Block Processing Protocol for Transparent Secure File Storage」と題する特許出願第10/201,409号、2002年7月22日に出願された「Secure Network File Access Controller Implementing Access Control and Auditing」と題する特許出願第10/201,358号、及び2002年10月16日に出願された「Secure File System Server Architecture and Methods」と題する特許出願第10/271,050号に説明されており、これらは、全て、本発明の譲受人に譲渡されたもので、参考としてここに援用する。
【0031】
ホストコンピュータ121-Xのアレーと、セキュリティプロセッサクラスター18との相互オペレーション40が図2に詳細に示されている。本発明の好ましい実施形態では、ホストコンピュータ121-Xは、通常のホストコンピュータシステムとして種々動作する従来のコンピュータシステムであり、クライアントコンピュータシステム、ネットワークプロキシー、アプリケーションサーバー、及びデータベースサーバーとして特にタスクが課せられる。PEMコンポーネント421-Xは、ホストコンピュータ121-Xの各々にインストールされて実行され、ローカル及びコアデータ記憶装置14、30に向けられたネットワーク要求を機能的に遮って選択的に処理するのが好ましい。要約すれば、PEMコンポーネント421-Xは、特定の要求を個々のトランザクションにおいてセキュリティプロセッサクラスター18内のターゲットサーバー441-Yへ選択的に転送して、ポリシー評価を行うと共に、適宜に、ネットワーク要求を完了できるよう更にサービスする。要求を転送する際に、PEMコンポーネント421-Xは、自律的に動作するのが好ましい。要求の発生、又はセキュリティプロセッサクラスター18内のターゲットサーバー441-Yの選択に関する情報は、特に、時間に厳密に、PEMコンポーネント421-X間に共有させる必要はない。実際に、PEMコンポーネント421-Xは、セキュリティプロセッサクラスター18に対してPEMコンポーネント421-Xのオペレーション全体にわたり他のホストコンピュータ121-Xの存在又はオペレーションの通知を要求しない。
【0032】
好ましくは、各PEMコンポーネント421-Xには、セキュリティプロセッサクラスター18内の個々のターゲットサーバー441-Yのリスト識別が最初に与えられる。ネットワーク要求に応答して、PEMコンポーネント421-Xは、要求を処理するための個別のターゲットサーバー44を選択し、そしてIPスイッチ16を経てその選択されたターゲットサーバー44へ要求を送信する。特に、PEMコンポーネント421-Xが、アプリケーションサーバー及び同様の実施形態の場合に生じるローカルクライアントプロセスに応答して実行する場合には、そのクライアントプロセスに関連したセッション及びプロセス識別子アクセス属性が収集されて、ネットワーク要求と共に与えられる。PEMコンポーネント421-Xのこのオペレーションは、転送されるネットワーク要求が、選択されたターゲットサーバー44へ優先的に発行されるという点で、特に自律的である。但し、その要求がその指定のターゲットサーバー44により受け容れられて取り扱われると仮定する。
【0033】
本発明によれば、ターゲットサーバー441-Yは、このターゲットサーバー441-Yに利用できる現在リソースと、ネットワーク要求と共に与えられるアクセス属性のポリシー評価とに基づいて、ネットワーク要求を条件付きで受け容れる。充分な処理リソースがないか又はポリシーに違反していて、要求が発行されたところのローカル又はコア資産のポリシー決定非利用性を典型的に反映するときには、ターゲットサーバー441-Yによりネットワーク要求が拒絶される結果となる。さもなければ、ターゲットサーバー441-Yは、要求を受け容れて、その要求されたネットワークサービスを遂行する。
【0034】
ネットワーク要求に応答して、その要求が最終的に受け容れられるか又は拒絶されるかに関わらず、ターゲットサーバー441-Yは、負荷及び任意であるが重み情報を、ネットワーク要求を発信したPEMコンポーネント421-Xへ応答の一部分として返送する。負荷情報は、要求を発しているPEMコンポーネント421-Xに、ターゲットサーバー441-Yにおける現在データ処理負荷の表示を与える。重み情報も、同様に、要求を発しているPEMコンポーネント421-Xに、特定のネットワーク要求、その要求に関連した発信側ホスト12又はゲートウェイサーバー26、アクセス属性のセット及び応答側ターゲットサーバー441-Yに対するポリシー決定プライオリティ重みの現在評価を与える。好ましくは、セキュリティプロセッサクラスター18との多数のネットワーク要求トランザクションの工程にわたり、個々のPEMコンポーネント421-Xは、特定のクライアントコンピュータシステム121-N及びゲートウェイサーバー261-Mからのネットワーク要求を取り扱うのに使用するために、おそらく最良のターゲットサーバー441-Yを識別するのに用いる優先的プロフィールを開発する。個々のトランザクションで報告される負荷及び重みの値は、時間と共にエージングすると共に、個々のポリシー評価の複雑さに基づいて更に変化し得るが、ホストコンピュータシステム121-Xを進行中に能動的に利用することで、PEMコンポーネント421-Xは、個々のターゲットサーバー441-Yによる要求拒絶の発生を最小にする傾向のある実質的に正確な優先的プロフィールを開発して維持することが許される。従って、ネットワーク要求の負荷分布は、ネットワーク要求トランザクションの受け容れレートを最大にするに必要な程度にバランスされる。
【0035】
PEMコンポーネント421-Xのオペレーションと同様に、ターゲットサーバー441-Yのオペレーションも、個々のネットワーク要求の受信及び処理について本質的に自律的である。本発明の好ましい実施形態によれば、負荷情報は、特に、ネットワーク要求に応答する厳密な時間経路において、クラスター18内のターゲットサーバー441-Y間で共有することが要求されない。好ましくは、ターゲットサーバー441-Yは、与えられたネットワーク要求を受信するように均一に動作し、そして与えられた要求の知識において、その要求が受け容れられるかどうか識別し、負荷及び任意の重み情報を与え、そして要求を拒絶する理由を少なくとも暗示的に指定する。
【0036】
負荷情報を共有するために特に設けられるのではないが、セキュリティプロセッサクラスター18内の個々のターゲットサーバー441-Y間に通信リンクが設けられるのが好ましい。本発明の好ましい実施形態では、選択クラスターマネージメント情報、特に、存在、コンフィギュレーション及びポリシー情報の通信をターゲットサーバー441-Y間でセキュアに共有するのを許すために、クラスターローカルエリアネットワーク46が確立される。このクラスターローカルエリアネットワーク46の通信は、セキュアなソケットレイヤ(SSL)接続を使用すると共に、更に、マネージメント情報の送信に対してセキュアな独占的プロトコルを使用することにより、保護される。従って、個別の物理的にセキュアなクラスターローカルエリアネットワーク46が好ましいが、クラスターマネージメント情報は、セキュリティプロセッサクラスター18のターゲットサーバー441-Yを相互接続するために必要に応じて共有物理的ネットワークを経てルーティングされてもよい。
【0037】
好ましくは、存在情報は、暗号化された識別子を使用してセキュリティプロセッサクラスター18の参加ターゲットサーバー441-Yを周期的に識別するブロードキャストプロトコルにより送信される。セキュリティ情報は、好ましくは、詐欺師又はトロイの装置がクラスター18に加入したりターゲットサーバー441-Yのセキュアなコンフィギュレーションを妥協したりするのを除外することでセキュリティプロセッサクラスター18の完全性を確保するように動作する軽量プロトコルを使用して送信される。又、セキュリティプロセッサクラスター18内の個々のターゲットサーバー441-Yにより使用されるポリシールールの同期更新を含むコンフィギュレーション情報の制御された伝播をサポートする付加的な軽量プロトコルを使用して、コンフィギュレーションポリシー情報のセットが通信される。存在情報がネットワーク要求処理の公称レートに対して低い周波数で送信され、且つセキュリティ及びコンフィギュレーションポリシー情報プロトコルが、例えば、ターゲットサーバー441-Yの追加、及びポリシールールセットへの管理更新のエントリーにより、セキュリティプロセッサクラスター18の管理上の再コンフィギュレーションについてのみ実行されるとすれば、クラスター内通信をサポートするために個々のターゲットサーバー441-Yに課せられる処理オーバーヘッドが無視でき且つクラスター負荷とは独立したものとなる。
【0038】
本発明の好ましい実施形態に使用されるソフトウェアアーキテクチャー50のブロック図兼フローチャートが図3に示されている。一般に、インバウンドネットワーク要求トランザクションは、スイッチ16を経てルーティング可能な通信セッションをサポートするハードウェアベースのネットワークインターフェイスコントローラにより処理される。これらのインバウンドトランザクションは、第1のネットワークインターフェイス52、プロトコルプロセッサ54及び第2のネットワークインターフェイス54を経て処理され、その結果、アウトバウンドトランザクションがホストコンピュータ121-Xを経てローカル及びコアデータ処理及び記憶資産14、30へ向け直される。同じ、個別の又は多数の冗長のハードウェアネットワークインターフェイスコントローラを各ターゲットサーバー441-Yにおいて実施し、そしてスイッチ16を経てインバウンド及びアウトバウンドトランザクションを搬送するように対応的に使用することができる。
【0039】
ローカル及びコアネットワーク資産14、30に対して対応するネットワークトランザクションを開始するように各々動作するPEMコンポーネント421-Xからターゲットサーバー44により種々受け取られるネットワーク要求データパケットは、プロトコルプロセッサ54を経て処理されて、選択されたネットワーク及びアプリケーションデータパケット制御情報を最初に抽出する。好ましくは、この制御情報は、ターゲットサーバー441-Yへ従来のやり方でルート転送するために発信側PEMコンポーネント421-Xにより従来のTCPデータパケットにラップされる。或いは又、制御情報は、独占的RPCデータパケットとしてエンコードすることができる。抽出されたネットワーク制御情報は、TCP、IP及び同様のネットワークプロトコルレイヤ情報を含み、一方、抽出されたアプリケーション情報は、ネットワーク要求が発生された特定のクライアントプロセス及びコンテクストに対して発信側PEMコンポーネント421-Xのオペレーションにより発生され又は決定されたアクセス属性を含む。本発明の好ましい実施形態では、アプリケーション情報は、発信側ホストコンピュータを直接的又は間接的に識別するアクセス属性と、ユーザ及びドメインと、アプリケーションシグネチャー又はセキュリティ証明書と、ネットワーク要求を発信したホストコンピュータ121-Nに対して得られるクライアントセッション及びプロセス識別子との集合である。アプリケーション情報は、更に、ユーザを検証(verify)するために実行される認証の状態又はレベルが得られるときにはそれを識別するのが好ましい。好ましくは、PEMコンポーネント421-Xは、アプリケーション情報を、定義されたデータ構造体へと自動的に収集し、このデータ構造体は、次いで、ターゲットサーバー441-Yへ送信するためのTCPネットワークデータパケットとしてカプセル化される。
【0040】
好ましくは、プロトコルプロセッサ54のオペレーションにより露出されるネットワーク情報は、トランザクション制御プロセッサ58へ供給され、そしてネットワーク及びアプリケーションの両制御情報は、ポリシーパーサ60へ供給される。トランザクション制御プロセッサ58は、状態マシンとして動作して、プロトコルプロセッサ54を経てネットワークデータパケットの処理を制御すると共に、ネットワーク及びアプリケーション情報を受信して評価する際のポリシーパーサのオペレーションを整合する。トランザクション制御プロセッサ58の状態マシンオペレーションは、個々のネットワークデータパケットの詳細な検査を制御して、ネットワーク及びアプリケーション制御情報を探索し、そして本発明の好ましい実施形態により、取り囲まれたデータペイロードの暗号化及び圧縮処理を選択的に制御する。又、ネットワークトランザクション状態は、トランザクション制御プロセッサ58の状態マシンのオペレーションを経て維持される。より詳細には、ネットワークファイルデータの読み取り及び書き込みオペレーション並びに他の同様のトランザクションオペレーションを実施するために交換されるネットワークデータパケットのシーケンスは、プロトコルプロセッサ54を経て処理される間にトランザクションの完全性を維持するために必要に応じて追跡される。
【0041】
トランザクション制御プロセッサ58により初期ネットワーク要求として識別されたネットワークデータパケットを評価する際に、ポリシーパーサ60は、得られるネットワーク及びアプリケーション制御情報の選択されたエレメントを検査する。ポリシーパーサ60は、ポリシー/キー記憶装置62に記憶されたコンフィギュレーションポリシー/キーデータセットに対して動作するルールベースの評価エンジンとして実施されるのが好ましい。ルール評価は、受け取ったネットワークファイルデータパケットにより表わされたネットワークファイル要求の処理を可能にするために必要とされるホストコンピュータ121-Nの認証のレベルを決定する判断ツリーロジックを実施するのが好ましく、前記決定は、認証のレベルを満足するかどうか、要求を開始するホストコンピュータ121-Nのユーザがその要求されたコアネットワーク資産にアクセスすることが許可されたかどうか、そして更に、ネットワーク要求と共に与えられるプロセス及びアクセス属性が、ネットワーク要求で識別された特定のローカル又はコアネットワークリソース14、30へのアクセスを可能にするのに充分であるかどうかについて行われる。
【0042】
本発明の好ましい実施形態では、ファイルデータにアクセスするためのネットワーク要求に応答して評価される判断ツリーロジックは、ユーザ認証状態、ユーザアクセス認可、及びアクセス許可を考慮する。ユーザの認証は、識別されたネットワーク要求コアネットワーク資産、取り付けポイント、ターゲットディレクトリー及びファイル仕様の組み合せに対してコンフィギュレーションポリシー/キーデータセットに定義された最小要求認証レベルに関して考慮される。コンフィギュレーションポリシー/キーデータセットに対するユーザの認可は、特定のネットワークファイル要求、ユーザのネーム及びドメイン、クライアントIP、並びにクライアントセッション及びクライアントプロセス識別子アクセス属性の組み合せに対して考慮される。最終的に、アクセス許可は、ユーザのネーム及びドメイン、取り付けポイント、ターゲットディレクトリー及びファイル仕様アクセス属性を、対応的に指定された読み取り/変更/書き込み許可データ、並びにコンフィギュレーションポリシー/キーデータセットに指定された他の使用可能なファイル関連機能及びアクセス許可制約と共に評価することにより、決定される。
【0043】
PEMコンポーネント421-Xが、仮想指定されたデータ記憶装置に対するファイルシステム要求を、特定のローカル及びコアネットワークファイルシステムデータ記憶装置14、30へマップし及び向け直すのに有用なファイルシステムプロキシーとして機能する場合には、ホストコンピュータシステム121-Nにアクセスできる仮想ファイルシステム取り付けポイントのセット認識と、仮想取り付けポイントから真の取り付けポイントへのマッピングとを定義するためのデータもポリシー/キー記憶装置62に記憶される。又、ポリシーデータは、許可されたホストコンピュータソースIPの範囲を種々定義することもでき、これは、アプリケーションの認証を、クライアントアクセスに対する必須条件として施行すべきか、認可されたアプリケーションの認可されたデジタルシグネチャーの限定されて許可されたセットとして施行すべきか、又、ユーザセッションの認証を生まれた(spawned)プロセスへと拡張するか、又は異なるユーザネーム及びドメイン仕様並びに他の属性データを伴うプロセスへと拡張するかについて行われ、前記他の属性データは、ポリシーパーサ60のオペレーションにおいて、PEMコンポーネント421-Xによりオンデマンドで配列することのできるアプリケーション情報及びネットワーク情報に対して一致させるか、さもなければ、弁別するのに使用できるものである。
【0044】
本発明の好ましい実施形態において、ポリシー/キー記憶装置62には暗号キーも記憶される。好ましくは、個々の暗号キー及び適用可能な圧縮仕様が、判断ツリーとしてパース可能な論理的ハイアラーキーポリシーセットルール構造体に維持される。各ポリシールールは、取り付けポイント、ターゲットディレクトリー及びファイル仕様のアクセス属性定義組み合せを含むネットワーク及びアプリケーション属性のある組み合せの仕様を与え、これにより、対応する要求の更なる処理についての許可制約を弁別することができる。保留中の要求に基づき、それに対応する暗号キーは、プロトコルプロセッサの主題により実施される暗号化及び暗号解読オペレーションをサポートするためにトランザクション制御プロセッサ58により要求されたときにポリシールールセットからポリシーパーサ60のオペレーションによりパースされる。本発明の好ましい実施形態では、ネットワーク及びアプリケーション情報に対して迅速な評価を許すようにポリシールール及び関連キーデータがハッシュテーブルに記憶される。
【0045】
ポリシーデータセットデータの手動管理は、好ましくはプライベートネットワークを経てアクセスされる管理インターフェイス64と、専用の管理ネットワークインターフェイス66とを経て実行される。ポリシーデータセットに対する更新は、好ましくは、セキュリティプロセッサクラスター18のターゲットサーバー441-Y間で、個別のクラスターネットワークインターフェイス68を経てアクセスできるクラスターネットワーク46を通して自律的に交換される。クラスターポリシープロトコルコントローラ70は、現在ブロードキャストメッセージを取り扱い、クラスター46の通信のセキュリティを確保し、そしてコンフィギュレーションポリシー/キーデータセットデータに対する更新を交換するためのセキュアなプロトコルを実施する。
【0046】
ネットワーク要求を受信すると、トランザクション制御プロセッサ58は、ポリシーパーサ60により実行される評価と、ターゲットサーバー44に対して決定される現在処理負荷値とに基づいて、そのネットワーク要求を受け容れるべきか拒絶すべきか決定する。ポリシーパーサ60に基づく拒絶は、その要求が認証、認可又は許可のポリシー評価に不合格となった場合に生じる。本発明の最初の好ましい実施形態では、ターゲットサーバー44の現在処理容量を越えて受け取られる要求に対して拒絶が発生されない。受け取った要求は、バッファされ、そして要求応答待ち時間を受け容れられるほど増加させて、受け取った順に処理される。バッファされた要求に応答して直ちに返送される負荷値は、ホストコンピュータ121-Nからのその後のネットワーク要求を他のターゲットサーバー441-Yへ効果的に向け直す。或いは又、実際にターゲットサーバー44の現在処理容量を越えるネットワーク要求の受け取りを最小にするように、返送される負荷値を小さな量だけ上方にバイアスすることもできる。本発明の別の実施形態では、ネットワーク要求の実際の拒絶は、ターゲットサーバー441-Yの処理容量を越えるのを明確に除外するためにターゲットサーバー441-Yにより発生することができる。その後のネットワーク要求を拒絶すべきときを定義するために、例えば、95%の負荷容量というスレッシュホールドをセットすることができる。
【0047】
返送される負荷値を与えるために、一次ネットワークインターフェイス52、56に接続されたネットワークインターフェイスコントローラ、メインプロセッサ、及びターゲットサーバー44により使用されたハードウェアベースの暗号化/圧縮コプロセッサに対して決定された個々の負荷値の組み合せに基づいて合成負荷値が計算されるのが好ましい。この合成負荷値、及び任意であるが、個々のコンポーネント負荷値が、ネットワーク要求に応答して、要求発信ホストコンピュータ121-Nへ返送される。好ましくは、少なくとも合成負荷値が、現在ネットワーク要求の取り扱いを含むように投影される。従って、ターゲットサーバー441-Yのオペレーションを支配する適用可能な負荷ポリシールールに基づいて、返送される応答は、現在ネットワーク要求の受け入れ又は拒絶のいずれかを通知する。
【0048】
ネットワーク要求に対する認可、認証及び許可評価との組み合せにおいて、ポリシーパーサ60は、好ましくはネットワーク要求を拒絶すべきかどうかに関わらず、現在トランザクションに対するポリシーセット重み値を任意に決定する。このポリシー決定された重み値は、特定のネットワーク要求及びそれに関連したアクセス属性に対して特定のターゲットサーバー44を使用することがどれほど適しているかの数値ベース表示である。本発明の好ましい実施形態では、好ましい使用を含む1から100の正規化範囲における比較的低い値は、受け容れられるネットワーク及びアプリケーション情報の望ましい組み合せに関連付けされる。バックアップ又は別の受け容れられる使用を一般的に識別するために、より高い値が返送される。定義されたスレッシュホールド、例えば、90より高い任意の値として定義される除外値は、対応するネットワーク要求が緊急状態下以外は特定のターゲットサーバー44に向けられないところのPEMコンポーネント421-Xへ暗示的信号として返送される。
【0049】
ネットワーク要求に応答して、ターゲットサーバー44は、任意のポリシー決定された重み値、1つ以上の負荷値のセット、及びネットワーク要求の受け容れ又は拒絶を指示する識別子を含む応答ネットワークデータパケットを返送する。本発明の好ましい実施形態によれば、応答ネットワークデータパケットは、現在トランザクション内のその後のデータパケット転送を、セキュリティプロセッサクラスター18を経て転送する必要があるかどうか更に指定することができる。名目上、全トランザクションのデータパケットは、暗号化及び圧縮処理を許すために、対応するターゲットサーバー44を経てルーティングされる。しかしながら、基礎となる搬送ファイルデータが暗号化も圧縮もされない場合、又はこのような暗号化又は圧縮を変更すべきでない場合、或いはネットワーク要求がファイルデータ転送を伴わない場合には、データの現在トランザクション転送で、セキュリティプロセッサクラスター18を経てトランザクションデータパケットの残りをルーティングする必要がない。従って、現在トランザクションのネットワーク要求がターゲットサーバー44のポリシーパーサ60により評価されて承認され、そして受け容れ応答パケットがホストコンピュータ121-Nに返送されると、それに対応するPEMコンポーネント421-Xは、現在トランザクションを完了するためにセキュリティプロセッサクラスター18の使用を選択的にバイパスすることができる。
【0050】
実行時のPEMコンポーネント42が図4に80で示されている。PEMコンポーネント42の制御機能を実施するために実行されるPEM制御レイヤ82は、オペレーティングシステム仮想ファイルシステムスイッチ又はそれと同等のオペレーティングシステム制御構造体のもとでカーネルコンポーネントとしてホストシステム12にインストールされるのが好ましい。オペレーティングシステムカーネルへの従来の仮想ファイルシステムスイッチインターフェイスをサポートするのに加えて、PEM制御レイヤ82は、内部又はオペレーティングシステムで形成されるファイルシステム84をサポートするときに通るオペレーティングシステム仮想ファイルシステムスイッチインターフェイスと同等のネイティブ又はネットワークファイルシステム或いはインターフェイスのある組み合せを実施するのが好ましい。外部に設けられるファイルシステム84は、ダイレクトアクセス(DAS)及び記憶ネットワーク(SAN)データ記憶資産への接続を可能にするブロック向けのインターフェイスと、ネットワークアタッチ型記憶(NAS)ネットワークデータ記憶資産へのアクセスを許すファイル向けのインターフェイスとを含むのが好ましい。
【0051】
又、PEM制御レイヤ82は、ホストコンピュータシステム12のホストネーム又は他の独特の識別子、仮想ファイルシステムスイッチを経て受信したネットワークファイル要求を発信するプロセスに対応するソースセッション及びプロセス識別子、並びにネットワークファイル要求を発信するプロセスに対するユーザネーム及びドメインに関連した認証情報をこのPEM制御レイヤ82が得るのを許すオペレーティングシステムインターフェイスを実施するのも好ましい。本発明の好ましい実施形態では、PEM制御レイヤ82により受信されるこれらのアクセス属性及びネットワークファイル要求は、従来のTCPデータパケットによりラップされるデータ構造体に入れられる。この有効な独占的TCPデータパケットは、次いで、IPスイッチ16を経て送信されて、ネットワーク要求を選択されたターゲットサーバー44へ与える。或いは又、独占的データ構造体に代わって従来のRPC構造体を使用することができる。
【0052】
ターゲットサーバー44の選択は、コンフィギュレーション及び動的に収集された性能情報に基づいてPEM制御レイヤ82により実行される。セキュリティプロセッサIPアドレスリスト86は、セキュリティプロセッサクラスター18内のターゲットサーバー441-Yの各々を識別するのに必要なコンフィギュレーション情報を与える。このIPアドレスリスト86は、PEMコンポーネント42の静的な初期化を通して手動で設けることもできるし、或いは好ましくは、PEM制御レイヤ82の初期実行時に、セキュリティプロセッサクラスター18の指定の又はデフォールトのターゲットサーバー441-Yから初期コンフィギュレーションデータセットの一部分として検索される。本発明の好ましい実施形態では、各PEMコンポーネント421-Xは、初期実行時に、セキュリティプロセッサクラスター18に対して認証トランザクションを実行し、これにより、実行中のPEM制御レイヤ82の完全性が検証されると共に、IPアドレスリスト86を含む初期コンフィギュレーションデータがPEMコンポーネント421-Xに供給される。
【0053】
サーバー負荷及び重み値のような動的情報は、実行中のPEMコンポーネント421-XによりSP負荷/重みテーブル88へ次第に収集される。負荷値は、タイムスタンプされ、そして報告ターゲットサーバーに対してインデックスされる。重み値も、同様に、タイムスタンプされてインデックスされる。初期の好ましい実施形態の場合に、PEMコンポーネント421-Xは、ラウンドロビンターゲットサーバー441-Y選択アルゴリズムを使用し、この場合、現在ターゲットサーバー441-Yの負荷が100%に達したときに次のターゲットサーバー441-Yの選択が行われる。或いは又、負荷及び重み値は、更に、要求側のホストの識別子、ユーザネーム、ドメイン、セッション及びプロセス識別子、アプリケーション識別子、要求されたネットワークファイルオペレーション、コアネットワーク資産参照、並びに取り付けポイント、ターゲットディレクトリー及びファイル仕様を含むアクセス属性の使用可能な組み合せによって逆インデックスすることもできる。ハイアラーキー式の最も近い一致のアルゴリズムを使用して、この記憶されたダイナック情報は、PEMコンポーネント421-Xが、特定のネットワーク要求を最も受け容れ易いもの及び最も負荷の低いものの両方である多数のターゲットサーバー441-Yの順序付けされたリストを迅速に確立するのを許す。最初に識別されたターゲットサーバー441-Yが要求を拒絶すると、次にリストされたターゲットサーバー441-Yが試みられる。
【0054】
ネットワーク待ち時間テーブル90は、好ましくは、PEM制御レイヤ82と各ターゲットサーバー441-Yとの間のネットワーク状態の動的評価を記憶するのに使用される。最小限、ネットワーク待ち時間テーブル90は、ネットワーク要求にもはや応答しないか、さもなければ、アクセス不能と思われるターゲットサーバー441-Yを識別するのに使用される。このような使用不能のターゲットサーバー441-Yは、PEM制御レイヤ82により実行されるターゲットサーバー選択プロセスから自動的に除外される。又、ネットワーク待ち時間テーブル90は、種々のターゲットサーバー441-Yの応答待ち時間及び通信コストを表わすタイムスタンプ値を記憶するのにも使用できる。これらの値は、新たなネットワーク要求を受け取るためのターゲットサーバー441-Yを決定しそして順序付けするプロセスの一部分として重み値に関連して評価されてもよい。
【0055】
最終的に、優先テーブル92は、PEMコンポーネント421-Xに対して個別化されたデフォールトトラフィック整形プロフィールを与えるように実施できる。本発明の別の実施形態では、優先プロフィールは、セキュリティプロセッサクラスター18内のターゲットサーバー441-Yのデフォールト割り当て又は区分化を確立するためにPEMコンポーネント421-Xの各々に指定することができる。PEMコンポーネント421-X間で異なる優先値をターゲットサーバー441-Yに指定し、そして更に、これら優先値を重み値に関連して評価することにより、種々のホストコンピュータ121-Nと個々のターゲットサーバー441-Yとの間のネットワークトラフィックを使用して、特定のターゲットサーバー441-Yの使用を柔軟に定義することができる。IPアドレスリスト86と同様に、優先テーブルのコンテンツは、PEM制御レイヤ82の手動の初期化により与えることもできるし、又はセキュリティプロセッサクラスター18からのコンフィギュレーションデータとして検索することもできる。
【0056】
ターゲットサーバー441-Yに対する好ましいハードウェアサーバーシステム100が図5に示されている。本発明の好ましい実施形態では、図3に示したソフトウェアアーキテクチャー50が、1つ以上のメインプロセッサ102により、1つ以上の周辺ハードウェアベースの暗号化/圧縮エンジン104からのサポートで実質的に実行される。1つ以上の一次ネットワークインターフェイスコントローラ(NIC)106は、IPスイッチ16に対するハードウェアインターフェイスを与える。コントローラ108のような他のネットワークインターフェイスコントローラは、セキュアなクラスターネットワーク46及びアドミニストレータコンソール(図示せず)への個別の冗長なネットワーク接続を与えるのが好ましい。心鼓動タイマー110は、特に、セキュアなクラスターネットワークマネージメントプロトコルを含むメンテナンスオペレーションをサポートするためにメインプロセッサに1秒インターバルの割り込みを与えるのが好ましい。
【0057】
ソフトウェアアーキテクチャー50は、ハードウェアサーバーシステム100のメインメモリからメインプロセッサ102にロードされて実行されるサーバー制御プログラム112として実施されるのが好ましい。サーバー制御プログラム112を実行する際に、メインプロセッサ102は、一次ネットワークインターフェイスコントローラ106、メインプロセッサ102、及び暗号化/圧縮エンジン104に対する負荷値のオンデマンド取得を実行するのが好ましい。ネットワークインターフェイスコントローラ106及び暗号化/圧縮エンジン104の特定のハードウェア実施に基づいて、それに対応するハードウェアレジスタから個々の負荷値を読み取ることができる(114)。或いは又、ネットワークインターフェイスコントローラ106のスループット使用及び暗号化/圧縮エンジン104の現在パーセンテージ容量処理利用を追跡するために、メインプロセッサ102によりサーバー制御プログラム112の実行を通してソフトウェアベースの使用アキュムレータを実施することもできる。本発明の最初の好ましい実施形態では、負荷値の各々は、対応するハードウェアリソースのパーセンテージ利用を表わす。又、サーバー制御プログラム112の実行は、好ましくはハードウェアサーバーシステム100のメインメモリ内にあってメインプロセッサ102にアクセスできるコンフィギュレーションポリシー/キーデータセット116の確立を与える。セキュアなクラスターネットワーク46プロトコルのオペレーションを経て更新されたコンフィギュレーションポリシー/キーデータセットを受信するために第2テーブル118が同様に維持される。
【0058】
図6は、セキュリティプロセッサクラスター18の選択されたターゲットサーバー44と協働して(120B)、ホストコンピュータ121-N上で実行されるPEMコンポーネント421-Xにより実施される負荷バランス動作120Aを示すプロセスフローチャートである。クライアント14から、通常、仮想ファイルシステムスイッチを経てPEMコンポーネント421-Xへファイルシステム要求として与えられるネットワーク要求を受信すると(122)、このネットワーク要求は、独特のホスト識別子126を含む使用可能なアクセス属性124をネットワーク要求に関連付けるために、PEMコンポーネント421-Xにより評価される。PEMコンポーネント421-Xは、次いで、セキュリティプロセスクラスター18からターゲットサーバー44のIPアドレスを選択する(128)。
【0059】
次いで、独占的なTCPベースのネットワーク要求データパケットが、それに対応するネットワーク要求及びアクセス属性を含むように構成される。このネットワーク要求は、次いで、IPスイッチ16を経てターゲットサーバー44へ送信される(130)。ターゲットサーバーの応答時間切れ周期は、ネットワーク要求の送信(130)と同時にセットされる。応答時間切れが生じると(132)、特定のターゲットサーバー44が、ネットワーク待ち時間テーブル90において、ダウン即ち非応答とマークされる(134)。次いで、ネットワーク要求を受信するために、別のターゲットサーバー44が選択される(128)。非応答のターゲットサーバー44が利用できないことを受けて選択プロセスが再実行されるのが好ましい。或いは又、ネットワーク要求を最初に受信したときに識別される順序付けされた一連のターゲットサーバーを一時的に維持して、PEMコンポーネント421-Xのオペレーションの再試みをサポートしてもよい。少なくとも対応するネットワーク要求がターゲットサーバー44により受け容れられるまで選択リストを維持することで、ターゲットサーバー44の選択プロセス128を再実行するオーバーヘッドをこうむることなく、拒絶されたネットワーク要求を次に続くターゲットサーバーへ直ちに再試みすることが許される。しかしながら、応答時間切れ132の周期の巾によっては、選択リストの再使用が望ましくないことがある。というのは、セキュリティプロセッサの負荷及び重みテーブル88とネットワーク待ち時間テーブル90とに対する動的な更新の介在が考えられず、再試みに対する高い拒絶率を潜在的に招くからである。従って、セキュリティプロセッサの負荷及び重みテーブル88とネットワーク待ち時間テーブル90とにおける全てのデータを考慮に入れてターゲットサーバー44の選択プロセス128を再実行することが一般的に好ましい。
【0060】
TCPベースのネットワーク要求136を受け取ると(120B)、ターゲットサーバー44は、最初に、ネットワーク要求を検査して、その要求にアクセスすると共に、属性情報にアクセスする。ポリシーパーサ60が呼び出され(138)、要求に対するポリシー決定重み値を発生する。又、ターゲットサーバー44の当該ハードウェアコンポーネントに対する負荷値も収集される。次いで、ネットワーク要求を受け容れるべきか拒絶すべきか(140)の決定がなされる。ポリシー評価ネットワーク及びアプリケーション情報のもとでのアクセス権がその要求されたオペレーションを排除する場合には、ネットワーク要求が拒絶される。全ての許可されたネットワーク要求において自動的に受け容れてバッファするものではない本発明の実施形態では、現在負荷又は重み値が、ターゲットサーバー441-Yに適用できるコンフィギュレーション確立のスレッシュホールド負荷及び重み限界を越える場合にネットワーク要求が拒絶される。いずれにせよ、対応する要求応答データパケットが発生され(142)そして返送される。
【0061】
ネットワーク要求の応答は、要求発信側のホストコンピュータ121-Nにより受け取られ(144)、そしてローカル実行のPEMコンポーネント421-Xへ直接通される。負荷及び返送される重み値は、タイムスタンプされて、セキュリティプロセッサ負荷及び重みテーブル88にセーブされる。任意であるが、ネットワーク要求応答データパケットから決定されたターゲットサーバー44とホストコンピュータ121-Nとの間のネットワーク待ち時間は、ネットワーク待ち時間テーブル90に記憶される。アクセス属性が不充分なこと(150)に基づいてネットワーク要求が拒絶された場合には(148)、ホストコンピュータ121-Nに対してトランザクションが対応的に完了される(152)。他の理由で拒絶された場合には、次のターゲットサーバー44が選択される(128)。さもなければ、ネットワーク要求応答により確認されたトランザクションは、PEMコンポーネント421-Xを経て処理されると共に、データペイロード暗号化及び圧縮処理154に対して必要に応じてターゲットサーバー44へネットワークデータパケットを適宜に転送することで処理される。クライアントが要求したネットワークファイルオペレーションの完了時に(152)、ネットワーク要求トランザクションが完了となる(156)。
【0062】
セキュリティプロセッサクラスター18のターゲットサーバー441-Y間で、存在情報を配布し、そしてそれに応答して、コンフィギュレーションポリシー/キーデータを含むコンフィギュレーションデータセットを転送するための好ましいセキュアなプロセス160A/160Bが図7Aに一般的に示されている。本発明の好ましい実施形態によれば、各ターゲットサーバー44は、セキュアなクラスターネットワーク46に種々のクラスターメッセージを送信する。好ましくは、図7Bに示すように一般的に構成されたクラスターメッセージ170は、メッセージタイプ、ヘッダーバージョンナンバー、ターゲットサーバー441-Y識別子又は単にソースIPアドレス、シーケンスナンバー、認証タイプ及びチェック和を定義するクラスターメッセージヘッダ172を含む。このクラスターメッセージヘッダ172は、更に、状態値174及び現在ポリシーバージョンナンバー176を含み、これは、最も現在のコンフィギュレーションの指定のバージョンナンバー、及びクラスターメッセージ170を送信するターゲットサーバー44により保持されたコンフィギュレーションポリシー/キーデータセットを表わす。状態値174は、クラスターメッセージの機能を定義するように使用されるのが好ましい。状態のタイプは、クラスター内のターゲットサーバー441-Yのセットの発見、クラスターへのターゲットサーバー441-Yの加入、そこからの退去及び除去、ターゲットサーバー441-Yにより保持されたコンフィギュレーション及びコンフィギュレーションポリシー/キーデータセットの同期、並びに冗長なセキュアなクラスターネットワーク46が利用できる場合には、二次セキュアなクラスターネットワーク46への切り換えを含む。
【0063】
又、クラスターメッセージ170は、PKダイジェスト178も備え、これは、パブリックキーのセキュアなハッシュと、それに対応するネットワークIPと、セキュアなプロセッサクラスター18の各ターゲットサーバー441-Yに対する状態フィールドとを含む構造化リストを備え、それらは、クラスターメッセージ170を発信する特定のターゲットサーバー44により知られたものである。好ましくは、SHA−1のようなセキュアなハッシュアルゴリズムを使用して、セキュアなパブリックキーハッシュが発生される。含まれた状態フィールドは、進行中の同期、終了した同期、クラスター加入、及びクラスター退去状態を含む各ターゲットサーバー44の既知のオペレーティング状態を反映する。
【0064】
又、好ましくは、クラスターメッセージヘッダ172は、ソースターゲットサーバー44識別子のデジタルサイン入りコピーも、受信したクラスターメッセージ170の有効性を保証する基礎として含む。或いは又、クラスターメッセージヘッダ172から発生されたデジタルシグネチャーをクラスターメッセージ170に添付することもできる。いずれの場合も、ソースターゲットサーバー44識別子の首尾良い暗号解読及び比較、又はクラスターメッセージヘッダ172のセキュアなハッシュは、クラスターメッセージ170が既知のソースターゲットサーバー44からのもので、デジタルサイン入りである場合に、改ざんがなされていないことを受信側ターゲットサーバー44が検証できるようにする。
【0065】
本発明の好ましい実施形態では、クラスター18のターゲットサーバー441-Yは、ネットワーク要求に対する一貫した動作応答がいずれのホストコンピュータ121-Xによってもなされるよう保証するための共通のコンフィギュレーションを維持する。ターゲットサーバー441-Yのコンフィギュレーションの同期を保証するために、好ましくは、ローカル心鼓動タイマー162により発生されるハードウェア割り込みに応答して、各ターゲットサーバー441-Yによりセキュアなクラスターネットワーク46にクラスター同期メッセージが周期的にブロードキャストされる(160A)。各クラスター同期メッセージは、クラスターメッセージ170において、同期状態174の値、クラスター18の現在ポリシーバージョンレベル176、及びセキュリティプロセッサクラスター18に参加することが許されたターゲットサーバー441-Yのセキュアに確認可能なセットと共に、特に、クラスター同期メッセージ170を発信するターゲットサーバー44の参照のフレームから、送信される(164)。
【0066】
各ターゲットサーバー44は、他の能動的ターゲットサーバー441-Yの各々からセキュアなクラスターネットワーク46を経て受信された(180)ものであるブロードキャストされたクラスター同期メッセージ170を同時に処理する(160B)。各クラスター同期メッセージ170が受信され(180)、そしてセキュリティプロセッサクラスター18に有効に存在すると分かっているターゲットサーバー44から発信することが確認されたときに、受信側ターゲットサーバー44は、パブリックキーのダイジェスト178をサーチし(182)、受信側ターゲットサーバーのパブリックキーがダイジェストリスト178内に含まれるかどうか決定する。受信側ターゲットサーバー44のパブリックキーのセキュアなハッシュ等効物が見つからない場合には(184)、クラスター同期メッセージ170が無視される(186)。受信側ターゲットサーバー44のセキュアなハッシュパブリックキーが、受信したクラスター同期メッセージ170に見つかった場合には、ポリシーバージョンナンバー176が、受信側ターゲットサーバー44により保持されたローカルコンフィギュレーションポリシー/キーデータセットのバージョンナンバーと比較される。ポリシーバージョンナンバー176が、ローカルコンフィギュレーションポリシー/キーデータセットのバージョンナンバー以下である場合には、クラスター同期メッセージ170が再び無視される(186)。
【0067】
クラスター同期メッセージ170で識別されたポリシーバージョンナンバー176が、現在能動的コンフィギュレーションポリシー/キーデータセットのバージョンナンバーより大きい場合には、ターゲットサーバー44は、検索要求190を、好ましくは、HTTPsプロトコルを使用して、クラスター同期メッセージ170のソースとして対応するネットワークデータパケット内で識別されたターゲットサーバー44へ発行する。識別されたソースターゲットサーバー44により保持された比較的新しいコンフィギュレーションポリシー/キーデータセットは、受信側ターゲットサーバー44により保持されたコンフィギュレーションポリシー/キーデータセットを更新するために検索される。識別されたソースターゲットサーバー44は、それに応答して(192)、ソース暗号化ポリシーセット200を返送する。
【0068】
図7Cに一般的に詳細に示されたように、ソース暗号化ポリシーセット200は、インデックス202と、識別されたソースターゲットサーバー44によりセキュリティプロセッサクラスター18に有効に参加していると分かったターゲットサーバー441-Yの数をZとすれば、一連の暗号化アクセスキー2041-Zと、暗号化コンフィギュレーションポリシー/キーデータセット206と、ポリシーセットデジタルシグネチャー208とを含む定義されたデータ構造体であるのが好ましい。コンフィギュレーションポリシー/キーデータセット206の配布は、ターゲットサーバー441-Y間で次々に行うことができるので、有効参加ターゲットサーバー441-Yの数は、セキュリティプロセッサクラスター18の異なるターゲットサーバー441-Yの観点から、新たなコンフィギュレーションポリシー/キーデータセットバージョンが配布される間に変化し得る。
【0069】
インデックス202は、既知の有効参加ターゲットサーバー441-Yの各々に対してレコードエントリーを含むのが好ましい。各レコードエントリーは、パブリックキーのセキュアなハッシュと、対応するターゲットサーバー441-Yの管理上指定された識別子とを記憶するのが好ましい。規定により、第1のリストされたレコードエントリーは、暗号化されたポリシーセット200を発生したソースターゲットサーバー44に対応する。暗号化されたアクセスキー2041-Zの各々は、既知の有効参加ターゲットサーバー441-Yの各パブリックキーで暗号化されることにより同じ三重DESキーを含む。この三重DESキーを暗号化するのに使用されるパブリックキーのソースは、ローカルに保持されたコンフィギュレーションポリシー/キーデータセットである。従って、暗号化されたポリシーセット200のソースであるターゲットサーバー44に有効に知られているターゲットサーバー441-Yのみが、先ず、それに対応する三重DES暗号キー2041-Zを暗号解読し、次いで、それに含まれたコンフィギュレーションポリシー/キーデータセット206を首尾良く暗号解読することができる。
【0070】
新たな三重DESキーは、特定のターゲットサーバー441-Yにより構成された暗号化されたポリシーセット200の各ポリシーバージョンに対してランダム関数を使用して発生されるのが好ましい。或いは又、特定のターゲットサーバー441-Yにより受け取られた各HTTPs要求に応答して、新たな暗号化されたポリシーセット200を異なる三重DESキーで各々再構成することができる。ローカルに保持されたコンフィギュレーションポリシー/キーデータセット206は、現在発生された三重DESキーを使用して三重DES暗号化される。最終的に、インデックス202のセキュアなハッシュ及び暗号化されたアクセスキー2041-Zのリストに基づいて発生されたデジタルシグネチャー208を添付して、暗号化されたポリシーセット200の構造を完成する。従って、デジタルシグネチャー208は、初期のセキュアなハッシュ/識別子対レコードにより識別されたソースターゲットサーバー44が、実際に、暗号化されたポリシーセット200の有効ソースであることを保証する。
【0071】
図7Aを再び参照すれば、ソース暗号化されたポリシーセット200を検索し(190)、そして更に、セキュリティプロセスクラスター18に有効に存在すると分かっているターゲットサーバー44から発信されるセキュアなものとして確認されると、受信側ターゲットサーバー44は、その受信側ターゲットサーバー44のパブリックキーに一致するダイジェスト値についてパブリックキーダイジェストインデックス202をサーチする。好ましくは、一致するダイジェスト値のインデックスオフセット位置が、それに対応するパブリックキー暗号化三重DESキー206及び三重DES暗号化コンフィギュレーションポリシー/キーデータセット204を含むデータ構造体の行へのポインタとして使用される。次いで、受信側ターゲットサーバー44のプライベートキーが、三重DESキー206を回復するのに使用され(210)、これは、次いで、コンフィギュレーションポリシー/キーデータセット204を暗号解読するのに使用される。暗号解読されると、相対的に更新されたコンフィギュレーションポリシー/キーデータセット204は、受信側ターゲットサーバー44の更新コンフィギュレーションポリシー/キーデータセットメモリ18へ転送されて保持される。更新されたコンフィギュレーションポリシー/キーデータセット204のインストールが保留されると、その保留中の更新されたコンフィギュレーションポリシー/キーデータセットを保持するターゲットサーバー44は、その更新されたコンフィギュレーションポリシー/キーデータセットバージョンナンバー174を使用することによりクラスター同期メッセージ170の周期的発行を再開する。
【0072】
本発明の好ましい実施形態によれば、更新されたコンフィギュレーションポリシー/キーデータセット204は、現在のコンフィギュレーションポリシー/キーデータセット116として相対的に同期してインストールされ、セキュリティプロセッサクラスター18の能動的ターゲットサーバー441-Yがコンフィギュレーションポリシー/キーデータセットの同じバージョンを同時に利用することを保証する。効果的に同期されるインストールは、クラスター同期メッセージ170を監視することにより、全てのこのようなメッセージが同じ更新されたコンフィギュレーションポリシー/キーデータセットバージョンナンバー174を含むまで、各ターゲットサーバー44が、更新されたコンフィギュレーションポリシー/キーデータセット204をインストールするのを待機させる(212)ことで、得られるのが好ましい。好ましくは、ターゲットサーバー44が更新されたコンフィギュレーションポリシー/キーデータセットをインストールすると結論付けるための定義された時間周期内にクラスター同期メッセージ170を発行した有効なターゲットサーバー441-Yとして定義された各能動的ターゲットサーバー44からクラスター同期メッセージ170のスレッシュホールド数を受け取らねばならない。本発明の好ましい実施形態では、クラスター同期メッセージ170のスレッシュホールド数は、2である。各ターゲットサーバー44のパースペクティブから、全ての既知の能動的なターゲットサーバー441-Yが同じバージョンのコンフィギュレーションポリシー/キーデータセットを有すると確認されるや否や、更新されたコンフィギュレーションポリシー/キーデータセット118が、現在のコンフィギュレーションポリシー/キーデータセット116としてインストールされる(214)。これで、ローカルコンフィギュレーションポリシー/キーデータセットを更新するプロセス(160B)が終了となる(216)。
【0073】
図8を参照すれば、更新されたコンフィギュレーションポリシー/キーデータセットは、ローカルコンフィギュレーションポリシー/キーデータセットとして記憶された情報のいずれかに対して管理上の変更を行った結果として最終的に発生される(220)。管理上の変更222は、ネットワーク要求のポリシー評価に主として考慮されるアクセス権及び同様のデータを変更するために行うことができる。又、この変更は、通常、ターゲットサーバー44の追加又は除去によりセキュリティプロセッサクラスター18を管理上再コンフィギュレーションする(224)結果として行われてもよい。本発明の好ましい実施形態によれば、管理上の変更222は、アドミニストレータにより、いずれかのターゲットサーバー441-Yにおいて管理上のインターフェイス64を経てアクセスすることにより行われる。ポリシールールを追加、変更及び削除し、選択ポリシールールセットに対する暗号化キーを変更し、既知のターゲットサーバー44に対するパブリックキーを追加及び除去し、そしてアドミニストレータにより行われて確認されるときにクライアントコンピュータ12へ配布されるべきターゲットサーバー44のIPアドレスリストを変更するような管理上の変更222は、コンフィギュレーションポリシー/キーデータセットのローカルコピーに対してコミットされる。変更222をコミットする際に、それにより得られる更新されたコンフィギュレーションポリシー/キーデータセットのバージョンナンバーも自動的に増加される(226)。好ましい実施形態では、ソース暗号化されたコンフィギュレーションポリシー/キーデータセット200が再生され(228)、そして他のターゲットサーバー441-Yからの転送要求を保留にして保持される。又、クラスター同期メッセージ170は、ローカル心鼓動タイマー162に対する公称応答においてブロードキャストするために新たなポリシーバージョンナンバー174及びそれに対応するパブリックキー176のダイジェストセットを含むように再生されるのが好ましい。従って、新たに更新されたコンフィギュレーションポリシー/キーデータセットは、セキュリティプロセッサクラスター18の他の全ての能動的ターゲットサーバー441-Yに自動的に配布されそして相対的に同期してインストールされる。
【0074】
セキュリティプロセッサクラスター18を再コンフィギュレーションするには、対応するパブリックキー232を追加又は除去するようにコンフィギュレーションポリシー/キーデータセットに対して対応的な管理上の変更を行う必要がある。本発明の好ましい実施形態によれば、セキュリティプロセッサクラスター18の完全性は、コンフィギュレーションポリシー/キーデータセットへのパブリックキーの追加を、ローカルで認証されたシステムアドミニストレータによるか、又はセキュリティプロセッサクラスター18のローカルで知られた有効な能動的ターゲットサーバー44との通信を経て行うことを必要とするだけで、詐欺師又はトロイのターゲットサーバー441-Yに対抗するものとして維持される。より詳細には、受信側ターゲットサーバー441-Yのインストールされたコンフィギュレーションポリシー/キーデータセットにおいて対応するパブリックキーによりまだ識別されていないターゲットサーバー44からのクラスターメッセージ170は、無視される。新たなターゲットサーバー44のパブリックキーは、その新たなターゲットサーバー44を確認するために、セキュリティプロセッサクラスター18の既存メンバーにより実際にセキュアに支援されるべき別の既知の有効なターゲットサーバー44に管理上入力されねばならない(232)。
【0075】
従って、本発明は、詐欺師のターゲットサーバーが新たなパブリックキーを自己識別して詐欺師がセキュリティプロセッサクラスター18に加入できるようにするのを効果的に除外する。各ターゲットサーバー44の管理上のインターフェイス64は、ローカルのコンフィギュレーションポリシー/キーデータセットに対して管理上の変更222、223を行うために、独特のセキュアな管理上のログインを必要とするのが好ましい。詐欺師又はトロイのターゲットサーバー44のインストールを試みる侵入者は、おそらく成功を得るためには、セキュリティプロセッサクラスター18の既存の能動的ターゲットサーバー44に対する特定のセキュリティパスコードにアクセスしてそれを得なければならない。管理上のインターフェイス64は、周囲ネットワーク12、コアネットワーク18又はクラスターネットワーク46から物理的にアクセスできないのが好ましいので、セキュリティプロセッサクラスター18のコンフィギュレーションポリシー/キーデータセットに対する外部からのセキュリティ侵害が基本的に除外される。
【0076】
本発明の好ましい実施形態によれば、ホストコンピュータシステム121-Xに代わるPEMコンポーネント421-Xのオペレーションも、セキュリティプロセッサクラスター18の各ターゲットサーバー441-Yにインストールされたコンフィギュレーションポリシー/キーデータセットのバージョンと一貫して維持される。この一貫性は、各ホストコンピュータ12のネットワーク要求のポリシー評価が、要求を取り扱うために選択された特定のターゲットサーバー44に関わりなくシームレスに取り扱われることを保証するために維持される。図9に一般に示すように、PEMコンポーネント421-Xの好ましい実行240Aは、現在コンフィギュレーションポリシー/キーデータセットバージョンナンバーを追跡するように動作する。PEMコンポーネント421-Xの実行120Aに一般的に一貫するように、ネットワーク要求122の受信に続いて、PEMコンポーネント421-Xにより保持された最後に使用されたポリシーバージョンナンバーは、ネットワーク要求データパケットにおいて、ターゲットサーバー選択アルゴリズム128により決定された選択されたターゲットサーバー44のIPアドレスでセットされる(242)。最後に使用されたポリシーバージョンナンバーは、PEMコンポーネント421-Xの初期化の場合のようにデフォールトによりゼロにセットされるか、又はセキュリティプロセッサクラスター18のターゲットサーバー44により与えられる初期化コンフィギュレーションデータに基づく値にセットされるか、或いはセキュリティプロセッサクラスター18ターゲットサーバー44との協働的対話を経てPEMコンポーネント421-Xにより発生された値にセットされる。次いで、ネットワーク要求データパケットは、選択されたターゲットサーバー44に送信される(130)。
【0077】
ターゲットサーバー44のプロセス実行240Bも、同様に、ターゲットサーバー441-Yにより名目上実行されるプロセス実行120Bと一貫したものである。ネットワーク要求データパケットの受信(136)に続いて、ネットワーク要求において与えられたポリシーバージョンナンバーと、現在インストールされたコンフィギュレーションポリシー/キーデータセットのポリシーバージョンナンバーとを比較するために付加的なチェック244が実行される。ネットワーク要求により与えられたバージョンナンバーが、インストールされたバージョンナンバーより小さい場合には、不良バージョンナンバーフラグ246がセットされ(246)、拒絶の理由としてバージョンナンバー不一致を更に識別する拒絶応答142が強制的に発生される。さもなければ、ネットワーク要求は、手順120Bと一貫して処理される。又、好ましくは、ターゲットサーバープロセス実行240Bは、不良バージョンナンバー拒絶応答142が発生されるかどうかに関わりなく、要求応答データパケットにおいてローカルに保持されたコンフィギュレーションポリシー/キーデータセットのポリシーバージョンナンバーも与える。
【0078】
特に、バージョンナンバー不一致拒絶応答を受信すると(144)、PEMコンポーネント421-Xは、対応するターゲットサーバー44をバージョンナンバー不一致によりダウンとマークするために(248)、ネットワーク待ち時間テーブル90を更新するのが好ましい。又、報告されたポリシーバージョンナンバーも、ネットワーク待ち時間テーブル90に記憶されるのが好ましい。次いで、セキュリティプロセッサIPアドレスリスト86及びネットワーク待ち時間テーブル90により記憶された合成情報に基づいて全てのターゲットサーバー441-Yが使用不能と決定されない限り(250)、次のターゲットサーバー44の再試み選択128が実行される。PEMコンポーネント421-Xは、次いで、次に高いポリシーバージョンナンバーを、不良バージョンナンバー拒絶応答142において受信されたものと仮定する(252)。その後のネットワーク要求122も、この新たなポリシーバージョンナンバーで識別される(242)。次いで、バージョンナンバー不一致のために以前にダウンとマークされたターゲットサーバー441-Yが、次いで、ネットワーク待ち時間テーブル90にアップとマークされる(254)。次いで、新たなターゲットサーバー44の選択がなされ(128)、更新されたポリシーバージョンナンバーを使用してネットワーク要求を再試みする。従って、PEMコンポーネント421-Xの各々は、セキュリティプロセッサクラスター18により使用中にコンフィギュレーションポリシー/キーデータセットに対してなされた変更を一貫して追跡し、それにより、特定のネットワーク要求にサービスするように選択された特定のターゲットサーバー44とは独立して、一貫した結果を得る。
【0079】
従って、サーバーのクラスターの負荷バランスを協働的にとって、信頼性のある拡張可能なネットワークサービスを有効に提供するためのシステム及び方法を説明した。本発明は、サーバークラスターと相互オペレーションするホストベースのポリシー施行モジュールを特に参照して説明したが、ホストコンピュータシステム又はホストプロキシーを使用して、クライアントと個々のサーバーとの間の協働相互オペレーションによりサーバークラスターのサーバーへネットワーク要求を配布することにより、他の特定のアーキテクチャーにも等しく適用することができる。更に、サーバークラスターのサービスを、セキュリティ、暗号化、及び圧縮サービスとして説明したが、本発明のシステム及び方法は、一般に、他のネットワークサービスを提供するサーバークラスターにも適用できる。又、サーバークラスターは、単一の共通のサービスを実施するものとして説明したが、これは、本発明の好ましいモードに過ぎない。サーバークラスターは、PEMコンポーネントにより最初に受け取られたネットワーク要求のタイプに基づいて全てが協働して負荷バランスされる多数の独立したサービスを実施することができる。
【0080】
本発明の好ましい実施形態の前記説明において、当業者であれば、ここに開示した実施形態の多数の変更や修正が容易に明らかであろう。それ故、特許請求の範囲内で、本発明は、特に上述したものとは別のやり方で実施できることが理解されよう。
【図面の簡単な説明】
【0081】
【図1A】本発明の好ましい実施形態によりホストコンピュータシステムがサーバークラスターにより提供されるネットワークサービスに直接アクセスするようなシステム環境を示すネットワーク図である。
【図1B】本発明の好ましいコアネットワークゲートウェイ実施形態が具現化されるシステム環境を示すネットワーク図である。
【図2】本発明の好ましい実施形態により構成されたホストのアレーとセキュリティプロセッササーバーのクラスターとの間のネットワーク相互接続を示す詳細なブロック図である。
【図3】本発明の好ましい実施形態により構成されたセキュリティプロセッササーバーの詳細なブロック図である。
【図4】本発明の好ましい実施形態によりホストコンピュータシステムにおいて実施されたポリシー施行モジュール制御プロセスのブロック図である。
【図5】本発明の好ましい実施形態によりサーバークラスターサービスプロバイダーにより共有される負荷バランス及びポリシー更新ファンクションを示すセキュリティプロセスサーバーの簡単なブロック図である。
【図6】本発明の好ましい実施形態によりポリシー施行モジュールプロセスと選択されたクラスターサーバーとの間で協働的に実行されるトランザクションプロセスのフローチャートである。
【図7A】本発明の好ましい実施形態によりサーバークラスターのメンバー間で実行されるセキュアなクラスターサーバーポリシー更新プロセスのフローチャートである。
【図7B】本発明の好ましい実施形態により定義されるセキュアなクラスターサーバーポリシー同期メッセージのブロック図である。
【図7C】本発明の好ましい実施形態により定義されるセキュアなクラスターサーバーポリシーデータセット転送メッセージデータ構造のブロック図である。
【図8】本発明の好ましい実施形態によりセキュアなクラスターサーバーポリシーデータセット転送メッセージを再生するプロセスのフローチャートである。
【図9】本発明の好ましい実施形態によりクラスターサーバーの報告されたセキュアなクラスターサーバーポリシーデータセットにおけるバージョン変更を考慮するためにホストポリシー施行プロセスにより実行される拡張トランザクションプロセスを示すフローチャートである。
【技術分野】
【0001】
本発明は、一般に、ネットワークサービスを提供するのに利用されるサーバーシステムの整合制御に係り、より詳細には、ネットワークサーバーのクラスター間でコンフィギュレーションデータをセキュアに整合し配布すると共に、ネットワークサービスの実行を要求するクラスターシステム及びホストコンピュータシステムに対してコンフィギュレーションデータのインプレメンテーションを整合する技術に係る。
【背景技術】
【0002】
負荷バランスをとる概念及び必要性は、多数の異なるコンピューティング環境において、ほとんどの場合、情報サービスシステムの信頼性及び拡張性を高めるための要求として生じる。特に、ネットワーク編成のコンピューティングの分野では、負荷バランスをとることは、通常、典型的な離れたクライアントコンピュータシステムからのデータの要求を含む種々の処理要求に応答するために非常に多数の情報サーバーシステムを並列に効率的に利用する手段として遭遇する。サーバーを論理的に並列に配列すると、固有の冗長性能力が付加される一方、更なるサーバーの追加により少なくとも理論的には直線的に性能を拡張することができる。従って、要求、及び更には、それにより生じる負荷を効率的に分配することが、サーバーの並列クラスターを完全に利用して性能を最大にする上で本質的な要求となる。
【0003】
通常、負荷バランスをとる用途の特殊性に基づく特異性を伴って負荷バランスをとるために、多数の異なるシステムが提案され、種々具現化されている。チャン氏等(米国特許第6,470,389号)は、クライアントドメインネームサービス(DNS)要求に応答するためにサーバーの選択を調停するサーバー側の中央ディスパッチャーの使用を説明している。クライアントは、中央ディスパッチャーに対応する定義された静的DNSクラスター−サーバーアドレスへ要求を向ける。各要求は、次いで、ディスパッチャーにより使用可能なサーバーへ向け直され、該サーバーは、次いで、要求された情報をクライアントへ直接返送することができる。DNS要求の各々は原子的で且つ良好に定義されたサーバーオペレーションを要求するので、実際の負荷は、各サーバーへなされる要求の割合の関数になると推定される。それ故、ディスパッチャーは、DNSクラスターに参加するサーバーへ要求を均一に配布するために単に基本的ハッシュ関数を具現化するだけである。
【0004】
負荷バランス制御に中央ディスパッチャーを使用することは、アーキテクチャー上問題である。全ての要求はディスパッチャーを経て流れるので、単一ポイント欠陥に曝されて即座にサーバークラスターの全オペレーションの停止となる。更に、ディスパッチャーの性能を拡張する直接的な方法はない。大きな要求負荷又はより複雑な負荷バランスアルゴリズムを取り扱うためには、ディスパッチャーを、実質的に高いコストの高性能ハードウェアに置き換えねばならない。
【0005】
それとは別に、チャン氏等は、全てのクライアント要求をDNSクラスター内の全てのサーバーにブロードキャストして、中央ディスパッチャーの必要性をなくすことを提案している。サーバーは、個々にブロードキャストされた要求フィルタルーチンにおいて相互に排他的なハッシュ関数を実施して、独特のローカル応答に対する要求を選択する。この解決策は、各サーバーが各DNS要求を最初にある程度処理することを必要とし、サーバー性能の有効性レベルを低下するという不都合な結果をもたらす。更に、要求を発しているクライアントのアドレスのハッシュに基づいてサービスへの要求を選択すると、実際上、個々のDNSサーバーが、静的に定義されたクライアントグループにロックされる。それ故、等しい負荷分布を仮定することが、非常に多数の要求に対して、唯一、統計学的に有効である。又、ポリシーフィルタルーチンの静的な性質は、全ての要求が独特のサーバーにより選択されるよう確保するために、サーバーがクラスターに追加されるかクラスターから除去されるたびに、全てのルーチンを変更しなければならないことを意味する。大きなサーバークラスターにおいて、個々のサーバー欠陥が異常なものでなく、実際に、計画に入れねばならないとすれば、このようなクラスターの管理保守は、不可能でないまでも、非常に困難である。
【0006】
他の技術は、種々の動作条件のもとでサーバーのネットワークを負荷バランスさせるように進歩している。おそらく、最も行き渡っている負荷バランス技術は、実際の要求が受け取られるのに応答してサーバー間でリソースをいつそしてどこにシフトすべきか動的に決定するのに必要な情報を累積するバックグランド又はアウト・オブ・チャンネル負荷モニタを実施する解決策を取り入れている。例えば、ジョーダン氏等(米国特許第6,438,652号)は、各サーバーがクラスター内の他の全てのサーバーに対して第2レベルのプロキシーキャッシュとして更に動作するようなネットワークポリシーキャッシュサーバーのクラスターを説明している。バックグランド負荷モニタは、特定コンテンツオブジェクトに対して繰り返される第2レベルキャッシュ要求についてサーバークラスターを観察する。同じ第2レベルキャッシュから満足される同じコンテンツに対して過剰な要求があることは、応答側サーバーが過負担になっている指示であると考えられる。サーバーによりサービスされている直接的即ち第1レベルのキャッシュ要求頻度と、第2レベルのキャッシュ要求頻度とのバランスに基づいて、負荷モニタは、コンテンツオブジェクトを1つ以上の他のキャッシュにコピーし、それにより、広く且つ繰り返し要求されるコンテンツオブジェクトに対して第2レベルのキャッシュワーク負荷を分散すべきかどうか決定する。
【0007】
簡単なコンテンツオブジェクトのようなリソースを、負荷バランスをとるように容易にシフトできない場合には、通常、タスク又はプロセスとして表わされる要求を、サーバーのクラスターネットワーク内の他のサーバーへ選択的に転送することにより動作することを特徴とする別の解決策が開発されている。中央の負荷バランスコントローラは、これを回避することが好ましいので、各サーバーは、他のサーバーのどれが要求を受け入れそして実際にそれに対応する要求転送を与えるか決定するための監視及び通信メカニズムを実施することが要求される。このメカニズムのプロセス転送の態様は、そのメカニズムが、転送すべきタスクの特定の性質と、タスクの仕様を表わす個別データパケットの転送から能動的実行プロセスの全状態の収集及び搬送に至るまでの複雑さの範囲とに強く依存しているという点で、しばしば実施特有のものである。逆に、それに関連する従来の負荷監視メカニズムは、一般に、ソース向き又はターゲット向きとして分類することができる。ソース向きのサーバーは、クラスター内のターゲットサーバーの少なくともあるサブセットに能動的に問合せをしてその負荷状態を検索することにより、ターゲットサーバーの負荷状態を能動的に監視する。ターゲット向きの負荷監視は、個々のターゲットサーバーが、最低限、タスク転送を受け入れる容量を反映する負荷状態情報をブロードキャストするというパブリケーション原理で動作する。
【0008】
一般に、負荷状態情報をソース及びターゲットで共有することは、クラスター内の他のサーバーが、サーバークラスターの使用可能な負荷容量のある動的表示をオンデマンドで得るか又は時間と共に集計するのを許すために、ある間隔で実行される。しかしながら、大きなサーバークラスターの場合には、サーバークラスター全体に課せられる個別通信オペレーションの数を最小にするために、負荷決定オペレーションがしばしばローカル又はサーバー関連ネットワーク隣接部に限定される。より遠隔のサーバーの負荷値は、時間をかけてネットワークを経て伝播しなければならず、従って、不正確な負荷レポートを生じ、不均一な負荷分布を招くという兼ね合いである。
【0009】
それに関連した問題が、アロン氏等(米国特許第5,539,883号)において説明されている。サーバークラスター負荷ベクトルへと集合されるサーバー負荷値は、サーバークラスターの種々のサーバーにより増分的に要求されるか又は宣伝される。サーバーがベクトルのローカルコピーを転送する前に、そのサーバーに対する負荷値がベクトルにおいて更新される。更新されたベクトルを受け取るサーバーは、次いで、規定のルールに基づき、その受け取った負荷値でベクトルのサーバーローカルコピーを更新する。従って、ある所与の隣接部に対して負荷値を再分布すると、最初に軽い負荷のかかったサーバーを、サービスに対する長期高需要に露出させることがある。それにより生じるタスクの過負荷及びそれに続くサービスの拒否は、少なくとも、より高いサーバー負荷値を反映する新たな負荷ベクトルが充分な数のサーバー間を循環して負荷を適切に反映するまで、継続する。この問題を軽減するために、アロン氏等は、負荷バランスメカニズムの一部分として負荷値情報に対するツリー構造の分布パターンを説明している。ツリー構造の負荷情報転送に基づき、軽い負荷のかかったサーバーを識別する低い負荷値は、軽い負荷のかかったサーバーがタスク転送で溢れるのを防止するために分布を通してエージングされる。
【0010】
ソース向きであろうとターゲット向きであろうと、サーバークラスターのサーバー間の負荷情報の周期的共有に基づいて負荷バランスをとることは、負荷情報が最終的に配送されるものとして信頼性があるという基本的仮定で動作する。タスク転送の拒絶は、従来、基本的な欠陥として処理され、しばしば回復可能であるが、広範な例外処理を要求する。従って、最終的にバランスのとれた負荷分布を達成するために益々多数のタスク転送回復及び再試みオペレーションが要求されるので、個々のサーバーの性能は、安定化するのではなく、次第に増加する負荷のもとで、著しく低下する傾向となり得る。
【0011】
高い負荷状態を通常招く環境では、負荷情報の交換及び確実性を加速するために特殊なネットワークプロトコルが開発されている。ネットワークのトラフィック負荷を分担するために、ルーター及び他のスイッチ装置が種々のコンフィギュレーションでしばしばクラスター化される。ローカルの冗長なルーターコンフィギュレーションにおいて欠陥監視を与えると共に、ローカルルーターとリモートルーターとの間で負荷情報を共有するために、リンクネットワークプロトコルが提供される。他の共有情報の中で、現在負荷情報が装置と装置との間に高い頻度で伝播され、クラスター化された装置の個々の負荷状態を連続的に反映する。例えば、ベア氏(米国特許第6,493,318号)に説明されたように、プロトコルデータパケットは、負荷情報を定義してその伝播を管理すると共にクラスター内の個々の装置の負荷状態を更に詳細に示すための情報で充分に詳述することができる。スパンニングツリータイプ情報分布アルゴリズムをサポートしてプロトコルパケット伝播を制御しそしてループバックを防止する上で、シーケンス番号、ホップカウント、及び種々のフラグビットが使用される。公表される負荷値は、内部スループットレート及び待ち時間コストに関して定義され、これは、他のクラスター化されたルーターに、好ましいルート経路を決定するためのより洗練された基礎を許す。ベア氏により説明された装置に使用されるカスタムプロトコルは、有効ではあるが、負荷バランスプロトコルの実質的部分を、ネットワークプロセッサのような特殊な高速ハードウェアで実施することを本質的に要求する。それ故、このようなプロトコルの効率的な取り扱いは、汎用でない特殊なコンピュータシステムに限定される。
【0012】
バラード氏(米国特許第6,078,960号)は、他の特徴の中でも、サーバーネットワークのクライアント向け負荷バランス型使用を与えるクライアント/サーバーシステムアーキテクチャーを説明している。クライアントコンピュータシステムにより使用できる種々のサーバーコンピュータシステムが独立したサービスプロバイダーにより提供され、且つ異なるサーバーの使用が異なるコスト構造を伴うような環境の場合に、バラード氏は、クライアントからサーバーネットワーク内の個別の個々のサーバーへ負荷を選択的に分配するためのクライアントベースの解決策を説明している。クライアントベースの負荷バランスを実施することにより、バラード氏のクライアントコンピュータシステムは、サービスプロバイダーのサーバーネットワーク実施とは本質的に独立している。
【0013】
バラード氏の負荷バランスシステムを実施するために、各クライアントコンピュータシステムには、サーバー識別リストが設けられ、そこから、クライアント要求を受け取るためのサーバーが次第に選択される。このリストは、このリストで識別される各サーバーに対して、発行されるべきクライアント要求のパーセンテージ負荷及び最大周波数のような負荷制御パラメータを指定する。サーバー負荷は、要求を完了するのに必要な接続時間、又は要求に対する応答で転送されるデータの量に基づいて、クライアントによりおおよそ推定されるに過ぎない。次いで、負荷制御パラメータにより定義された負荷バランスプロフィールに統計学的に適合するように必要に応じて選択されたサーバーへ個々のクライアントによりクライアント要求が発行される。サーバー識別リスト及びそれに含まれる負荷制御パラメータは、クライアントにより静的に保持されるが、個々のクライアントは、それでもなお、サーバーの専用の記憶位置から種々のインターバルで新たなサーバー識別リストを検索することができる。更新されたサーバー識別リストは、アドミニストレータの手動の指図のもとに必要に応じてサーバーへ配布される。サーバー識別リストの更新は、アドミニストレータが、変化するクライアント要求のために負荷バランスプロフィールを必要に応じて手動で調整すると共に、ネットワークに対するサーバーの追加及び除去を受け入れることを許す。
【0014】
サーバー識別リストの静的な性質は、バラード氏のシステムのクライアントに基づく負荷バランスオペレーションが、サーバーネットワークの実際のオペレーションに対して基本的に応答しないようにする。特定のサーバー負荷は、種々のクライアントにより推定できるが、クライアント要求に完全に応答しない欠陥しか検出できず、これは、非応答サーバーを、クライアント要求にサービスすることへの更なる参加から除外することで取り扱うしかない。従って、動的に変化する負荷状態のもとでは、クライアントにより実行される片側の負荷バランス動作がサーバーネットワークの実際の負荷を甚だしく誤解し、更には、少なくともアドミニストレータの手動の介在により再イネーブルされるまでサーバーを参加から除外させることになる。サーバーをサーバーネットワークからこのように盲目的に除外することは、残りのサーバーに対する負荷を増大し、ひいては、他のサーバーがサーバーネットワークから除外される見込みを増大するだけである。それ故、サーバーを再イネーブルして、サーバーネットワークに対する負荷の集合的クライアントバランスを調整するためにサーバー識別リストを手動で更新することを含めて、能動的なサーバーネットワークをアドミニストレータが常時手動で監視することが必要となる。このようなアドミニストレータの保守は、少なくともユーザが悪い性能の発生を認知する迅速さに比して極めて低速であると共に、動作の非実用性の点からコストがかかるものである。
【発明の開示】
【発明が解決しようとする課題】
【0015】
以上の説明から、サーバーのクラスターを協働的に負荷バランスさせるための改良されたシステム及び方法が要望されることが明らかである。又、従来技術では述べなかったが、クラスターの一部分としてのサーバーの相互オペレーションに対するだけでなく、外部のクライアントコンピュータシステムに複合サービスを提供するサーバークラスターとしても、サーバークラスターのコンフィギュレーションを協働的にマネージすることが更に要望される。又、扱われていないのは、クラスター内のサーバー間で交換される情報に対するセキュリティの必要性である。クラスター化されたシステムは、セキュリティに敏感な目的で更に広く使用されることになるので、共有情報の傍受によりクラスターオペレーションの一部分が転用されたり、又は妥協されたサーバーがクラスターに導入されたりすると、受け入れられないリスクをもたらす。
【課題を解決するための手段】
【0016】
したがって、本発明の全般的な目的は、拡張可能な(scalable)なネットワークサービスを効果的に提供するためにサーバー群(サーバークラスター)を協同して負荷バランスする効果的システム及び方法を提供することである。
【0017】
定義されたネットワークサービスを実行するために構成されたサーバークラスターを提供することによって、本発明が達成される。ホストコンピュータシステムは、ネットワークサービスの実行要求を分散化するために、クラスターのサーバーと独立したトランザクション(典型的にはデータの転送処理を含む)にかかわる。ホストコンピュータシステムは、クラスターサーバの特定を行い、それぞれのトランザクションを実行するクラスターの目標サーバを動的に選択する。クラスターサーバーの選択は、前のトランザクションを介して、個々のサーバからのホストコンピュータによって集められたサーバ性能情報に基づき、ホストコンピュータによって自動的に行われる。
【0018】
クラスターサーバの性能情報は、前のトランザクションの中に戻された負荷値を含む。戻された負荷値の組は、対応するクラスターサーバーの実行状態を反映する。必要に応じて、同時に戻された重み値は、サービス要求と一緒に提供されるあるアクセス属性情報のポリシー評価をローカル化した目標クラスターサーバーを反映する。目標サーバーは、ネットワーク要求、負荷値、重み値、又はそれらの組み合わせによって特定されるオペレーションに関係してローカルに評価したアクセス属性に明確に基づき、サービス要求を明確に拒絶することができる。前記要求が受け入れられようと拒絶されようと、決定された負荷及び必要に応じた重み値が、ホストコンピュータから生じる要求に戻され、その後のトランザクションのための目標サーバを選択する基礎として記憶され且つ使用される。
【0019】
したがって、本発明の効果は、サーバーコンピュータシステムのクラスターを効果的に負荷バランスするのに必要なオペレーションが、ホストコンピュータシステムとクラスターの目標サーバーとの間に実行される自律行為に基づいて協同して行われる。負荷関連の情報は、個々のサービストランザクションに先立って個別というより、ホストとクラスターサーバーとの間の個々のサービストランザクションの過程で共有される。
【0020】
クラスターのサーバー間、又はホスト及びサーバー間でさえ、関与するホスト間で負荷情報を共有するために、通信接続が独立し、明確であるように要求されることはない。その結果として、オペレーションで共有する進行中の負荷情報を実行することにおいて、ホスト又はサーバーの一部で性能が失われることがない。さらに、複雑なオペレーションの回避や、負荷情報を共有するための複数ネットワーク接続の開始やオペレーションの遅延が回避される。
【0021】
本発明の他の効果は、本発明のサーバークラスターを完全に利用するために被るオーバヘッド処理が、ホスト及びサーバーコンピュータシステムに対するサービス要求頻度に関連して最小且つ必須の一定値で済むということである。ホストコンピュータシステムは、サービス要求を発行し、且つ受信したサーバー応答をその後に記録する予測において、利用可能なクラスターサーバーの実質的に一定の基本評価を実行する。要求を拒絶する可能性に対する問題として、ホストコンピュータシステムにはこれ以上のオーバーヘッドが置かれない。サービス要求の拒否が生じる場合であっても、サーバ選択の評価が最小の遅延奈要求された処理ステップによって再実行される。サーバ側では、ポリシーエンジンを介して各サービス要求が受信され評価され、その要求が拒絶されるべきか、又はポリシー事項としてその後の選択評価に相対的に優先されるべきである所与の重みであるか否かを迅速に決定する。
【0022】
本発明の更に効果は、ホストコンピュータシステムの機能が、異なる実行要求を最高に満足するのに必要なものとして様々なアーキテクチャ的な構成で分配され得ることである。従来のクライアント/サーバ構成の場合、クライアントへ直接的にホスト機能を実装することができる。また、クライアント/サーバ構成の場合、ホストのオペレーションによって、ファイルシステムプロキシとしてのホスト機能を実装することができ、コアネットワークファイルサーバのデータストアへのアクセスをフィルタするために動作する仮想マウントポイントをサポートする。
本発明の好ましい実施例では、ホストコンピュータシステムは、一般的には、コアとなるネットワークデータ資産に対するアクセスを有し且つ提供する直接的な保護システムである。
【0023】
さらに、本発明の効果は、ホストシステム及びクラスターサーバーの協同内部オペレーションが、完全に負荷バランスを減少させること、オペレーションの拡張(スケラビリティ)ができるようにすることである。維持の適正さや他の実装をアドレスするために、ホストによって保持されるサーバーリストの修正によって、ネットワークサービスクラスターを容易にスケール化且つ部分化することができる。クラスターサービスからサーバーの存在及び撤退を記録(マーク)するため、トランザクション内におけるホストへの通知のポスティング(posting)を通じて修正を実行することができる。サーバークラスターは信頼あるサービスを提供することができるので、サーバーリストの更新のタイミングは重大ではなく、複数のホストにわたって同期して実行される必要もない。
【0024】
本発明の他の効果は、サーバークラスターの負荷バランスアルゴリズムの選択要素がホスト及びサーバーシステムによって互いに直行するように計算され得るということである。おそらく、分散サーバーは個々のトランザクションを共有するために一瞬の負荷及び適当なポリシー情報を評価する。受信した負荷及びポリシー重み情報に基づき、ホストは、複数のトランザクションを越えて展開し、そしてクラスター内から直接明らかでない外部要因を更に考慮して、一般的に直交するトラフィックのシェーピング1(shaping)評価を実行することが好ましい。例えば、ホスト/サーバーネットワーク通信のコストと待ち時間などである。その結果生じる協同的な負荷バランスオペレーションは、ホストとサーバーの実行性能を効率的にし、オーバヘッドの低い利用をもたらすことになる。
【発明を実施するための最良の形態】
【0025】
システムアーキテクチャーは、一般に、クライアント/サーバーパラダイムに従うが、実際の実施は、通常、複雑であり、広範な様々な積層ネットワーク資産(アセット)を包含する。アーキテクチャー上の一般化は困難であるが、信頼性、拡張性及びセキュリティの基本的共通要件が全て存在する。本発明に関連して認識されるように、ネットワークコンピュータシステム企業のサーバーシステム及びデータを含む少なくともコア資産については、セキュリティのための特定の要件が共通に存在する。本発明は、コア資産へのアクセスを低下せずに企業内に確立された種々のホストへのセキュリティサービスを提供するサーバーのクラスターを設ける一方、セキュリティサービスクラスターの利用を効率的な負荷バランスにより最大にするシステム及び方法を提供する。当業者であれば、本発明は、コアネットワークセキュリティサービスの実施に特に適用できるが、基本的には、サーバークラスターの効率的な負荷バランスのとれた利用を可能にすると共に、更には、サーバークラスターの効率的で且つセキュアな管理も可能にすることが明らかであろう。又、明らかなように、本発明の好ましい実施形態の以下の詳細な説明では、1つ以上の図面に示された同じ部分を指すのに、同じ参照番号を使用している。
【0026】
本発明の基本的な好ましいシステム実施形態10が図1Aに示されている。多数の独立したホストコンピュータシステム121-Nが、高速スイッチ16を経てセキュリティプロセッサクラスター18に冗長に接続される。ホストコンピュータシステム121-Nと、スイッチ16と、クラスター18との間の接続は、専用又は共有媒体を使用してもよく、そしてホストコンピュータシステム121-Nと、スイッチ16と、クラスター18との間に直接的に延びてもよいし或いはLAN又はWAN接続を経て延びてもよい。本発明の好ましい実施形態によれば、ポリシー施行モジュール(PEM)が各ホストコンピュータシステム121-Nにおいて実施されて、該システムにより個別に実行される。各PEMは、その実行時に、セキュリティ関連情報をセキュリティプロセッサクラスター18へ選択的にルーティングして、要求されたオペレーションをホストコンピュータシステム121-Nにより又はそれに代わって個別に資格付けする役割を果たす。本発明の好ましい実施形態の場合に、これらの要求は、認証、認可、ポリシーに基づく許可、及び共通ファイルシステムに関連したオペレーションの包括的組み合せを表わす。従って、明らかなように、データ記憶装置14として一般に示されたデータ記憶装置に対するファイルデータの読み取り又は書き込みも、対応するホストコンピュータシステム121-Nにより実行されるPEMによりセキュリティプロセッサクラスター18を経てルーティングされる。PEMの全てのオペレーションは、セキュリティプロセッサクラスター18により順次に制御又は資格付けされるので、ホストコンピュータシステム121-Nの種々のオペレーションをセキュアに監視及び資格付けすることができる。
【0027】
本発明の別の企業システム実施形態20が図1Bに示されている。この企業ネットワークシステム20は、周囲ネットワーク22を含むことができ、これは、クライアントコンピュータシステム241-Nを、LAN又はWAN接続を経て、少なくとも1つのそしてより一般的には多数のゲートウェイサーバー261-Mに相互接続し、これらゲートウェイサーバーは、コアネットワーク28へのアクセスを与える。種々のバックエンドサーバー(図示せず)、SAN及びNASデータ記憶装置30のようなコアネットワーク資産には、クライアントコンピュータシステム241-Nによりゲートウェイサーバー261-M及びコアネットワーク28を経てアクセスすることができる。
【0028】
本発明の好ましい実施形態によれば、ゲートウェイサーバー261-Mは、クライアントコンピュータシステム241-Nに対する周囲セキュリティと、ゲートウェイサーバー261-Mにより確立された周囲内のコアネットワーク28及びそれにアタッチされたネットワーク資産30に対するコア資産セキュリティの両方を実施することができる。更に、ゲートウェイサーバー261-Mは、クライアントコンピュータシステム241-Nに代わってデータ処理プログラムを実行するアプリケーションサーバーとして動作することができる。名目上、ゲートウェイサーバー261-Mは、コアネットワーク資産に向けられたネットワークファイル要求を処理するために直接的経路に設けられる。従って、ネットワークコンピュータシステム10の全体的性能は、少なくとも一部分は、ゲートウェイサーバー261-Mのオペレーション性能、信頼性及び拡張性に直接依存する。
【0029】
ゲートウェイサーバー261-Mのセキュリティサービスを実施する際に、クライアント要求がゲートウェイサーバー261-Mの各々により遮られて、スイッチ16を経て、セキュリティプロセッサクラスター18へ向け直される。スイッチ16は、高速ルーターファブリックでよく、この場合、セキュリティプロセッサクラスター18は、ゲートウェイサーバー261-Mに対してローカルとなる。或いは又、従来のルーターを冗長コンフィギュレーションにおいて使用して、ゲートウェイサーバー261-Mとセキュリティプロセッサクラスター18との間にスイッチ16を経てバックアップネットワーク接続を確立することもできる。
【0030】
図1A及び1Bに示す両実施形態10、20の場合に、セキュリティプロセッサクラスター18は、共通ネットワークサービスを提供するように各々構成されたサーバーコンピュータシステムの並列編成アレーとして実施されるのが好ましい。本発明の好ましい実施形態では、提供されるネットワークサービスは、ネットワークファイルデータ転送要求を含むネットワークデータパケットのファイアウオールベースのフィルタリングと、資格付けされたネットワークファイル要求に応答して実行されるファイルデータの選択的両方向性暗号化及び圧縮とを含む。これらのネットワーク要求は、ホストコンピュータシステム121-N、クライアントコンピュータシステム141-N、及び例えば、アプリケーションサーバーとして動作するゲートウェイサーバー161-Mで直接的に発信されてもよいし、或いはこれらシステムにより受け取られた要求に応答して発信されてもよい。セキュリティプロセッサクラスター18の個々のサーバーにより実行される詳細な実施及びプロセスは、2002年7月22日に出願された「Secure Network File Access Control System」と題する出願中の特許出願第10/201,406号、2002年7月22日に出願された「Logical Access Block Processing Protocol for Transparent Secure File Storage」と題する特許出願第10/201,409号、2002年7月22日に出願された「Secure Network File Access Controller Implementing Access Control and Auditing」と題する特許出願第10/201,358号、及び2002年10月16日に出願された「Secure File System Server Architecture and Methods」と題する特許出願第10/271,050号に説明されており、これらは、全て、本発明の譲受人に譲渡されたもので、参考としてここに援用する。
【0031】
ホストコンピュータ121-Xのアレーと、セキュリティプロセッサクラスター18との相互オペレーション40が図2に詳細に示されている。本発明の好ましい実施形態では、ホストコンピュータ121-Xは、通常のホストコンピュータシステムとして種々動作する従来のコンピュータシステムであり、クライアントコンピュータシステム、ネットワークプロキシー、アプリケーションサーバー、及びデータベースサーバーとして特にタスクが課せられる。PEMコンポーネント421-Xは、ホストコンピュータ121-Xの各々にインストールされて実行され、ローカル及びコアデータ記憶装置14、30に向けられたネットワーク要求を機能的に遮って選択的に処理するのが好ましい。要約すれば、PEMコンポーネント421-Xは、特定の要求を個々のトランザクションにおいてセキュリティプロセッサクラスター18内のターゲットサーバー441-Yへ選択的に転送して、ポリシー評価を行うと共に、適宜に、ネットワーク要求を完了できるよう更にサービスする。要求を転送する際に、PEMコンポーネント421-Xは、自律的に動作するのが好ましい。要求の発生、又はセキュリティプロセッサクラスター18内のターゲットサーバー441-Yの選択に関する情報は、特に、時間に厳密に、PEMコンポーネント421-X間に共有させる必要はない。実際に、PEMコンポーネント421-Xは、セキュリティプロセッサクラスター18に対してPEMコンポーネント421-Xのオペレーション全体にわたり他のホストコンピュータ121-Xの存在又はオペレーションの通知を要求しない。
【0032】
好ましくは、各PEMコンポーネント421-Xには、セキュリティプロセッサクラスター18内の個々のターゲットサーバー441-Yのリスト識別が最初に与えられる。ネットワーク要求に応答して、PEMコンポーネント421-Xは、要求を処理するための個別のターゲットサーバー44を選択し、そしてIPスイッチ16を経てその選択されたターゲットサーバー44へ要求を送信する。特に、PEMコンポーネント421-Xが、アプリケーションサーバー及び同様の実施形態の場合に生じるローカルクライアントプロセスに応答して実行する場合には、そのクライアントプロセスに関連したセッション及びプロセス識別子アクセス属性が収集されて、ネットワーク要求と共に与えられる。PEMコンポーネント421-Xのこのオペレーションは、転送されるネットワーク要求が、選択されたターゲットサーバー44へ優先的に発行されるという点で、特に自律的である。但し、その要求がその指定のターゲットサーバー44により受け容れられて取り扱われると仮定する。
【0033】
本発明によれば、ターゲットサーバー441-Yは、このターゲットサーバー441-Yに利用できる現在リソースと、ネットワーク要求と共に与えられるアクセス属性のポリシー評価とに基づいて、ネットワーク要求を条件付きで受け容れる。充分な処理リソースがないか又はポリシーに違反していて、要求が発行されたところのローカル又はコア資産のポリシー決定非利用性を典型的に反映するときには、ターゲットサーバー441-Yによりネットワーク要求が拒絶される結果となる。さもなければ、ターゲットサーバー441-Yは、要求を受け容れて、その要求されたネットワークサービスを遂行する。
【0034】
ネットワーク要求に応答して、その要求が最終的に受け容れられるか又は拒絶されるかに関わらず、ターゲットサーバー441-Yは、負荷及び任意であるが重み情報を、ネットワーク要求を発信したPEMコンポーネント421-Xへ応答の一部分として返送する。負荷情報は、要求を発しているPEMコンポーネント421-Xに、ターゲットサーバー441-Yにおける現在データ処理負荷の表示を与える。重み情報も、同様に、要求を発しているPEMコンポーネント421-Xに、特定のネットワーク要求、その要求に関連した発信側ホスト12又はゲートウェイサーバー26、アクセス属性のセット及び応答側ターゲットサーバー441-Yに対するポリシー決定プライオリティ重みの現在評価を与える。好ましくは、セキュリティプロセッサクラスター18との多数のネットワーク要求トランザクションの工程にわたり、個々のPEMコンポーネント421-Xは、特定のクライアントコンピュータシステム121-N及びゲートウェイサーバー261-Mからのネットワーク要求を取り扱うのに使用するために、おそらく最良のターゲットサーバー441-Yを識別するのに用いる優先的プロフィールを開発する。個々のトランザクションで報告される負荷及び重みの値は、時間と共にエージングすると共に、個々のポリシー評価の複雑さに基づいて更に変化し得るが、ホストコンピュータシステム121-Xを進行中に能動的に利用することで、PEMコンポーネント421-Xは、個々のターゲットサーバー441-Yによる要求拒絶の発生を最小にする傾向のある実質的に正確な優先的プロフィールを開発して維持することが許される。従って、ネットワーク要求の負荷分布は、ネットワーク要求トランザクションの受け容れレートを最大にするに必要な程度にバランスされる。
【0035】
PEMコンポーネント421-Xのオペレーションと同様に、ターゲットサーバー441-Yのオペレーションも、個々のネットワーク要求の受信及び処理について本質的に自律的である。本発明の好ましい実施形態によれば、負荷情報は、特に、ネットワーク要求に応答する厳密な時間経路において、クラスター18内のターゲットサーバー441-Y間で共有することが要求されない。好ましくは、ターゲットサーバー441-Yは、与えられたネットワーク要求を受信するように均一に動作し、そして与えられた要求の知識において、その要求が受け容れられるかどうか識別し、負荷及び任意の重み情報を与え、そして要求を拒絶する理由を少なくとも暗示的に指定する。
【0036】
負荷情報を共有するために特に設けられるのではないが、セキュリティプロセッサクラスター18内の個々のターゲットサーバー441-Y間に通信リンクが設けられるのが好ましい。本発明の好ましい実施形態では、選択クラスターマネージメント情報、特に、存在、コンフィギュレーション及びポリシー情報の通信をターゲットサーバー441-Y間でセキュアに共有するのを許すために、クラスターローカルエリアネットワーク46が確立される。このクラスターローカルエリアネットワーク46の通信は、セキュアなソケットレイヤ(SSL)接続を使用すると共に、更に、マネージメント情報の送信に対してセキュアな独占的プロトコルを使用することにより、保護される。従って、個別の物理的にセキュアなクラスターローカルエリアネットワーク46が好ましいが、クラスターマネージメント情報は、セキュリティプロセッサクラスター18のターゲットサーバー441-Yを相互接続するために必要に応じて共有物理的ネットワークを経てルーティングされてもよい。
【0037】
好ましくは、存在情報は、暗号化された識別子を使用してセキュリティプロセッサクラスター18の参加ターゲットサーバー441-Yを周期的に識別するブロードキャストプロトコルにより送信される。セキュリティ情報は、好ましくは、詐欺師又はトロイの装置がクラスター18に加入したりターゲットサーバー441-Yのセキュアなコンフィギュレーションを妥協したりするのを除外することでセキュリティプロセッサクラスター18の完全性を確保するように動作する軽量プロトコルを使用して送信される。又、セキュリティプロセッサクラスター18内の個々のターゲットサーバー441-Yにより使用されるポリシールールの同期更新を含むコンフィギュレーション情報の制御された伝播をサポートする付加的な軽量プロトコルを使用して、コンフィギュレーションポリシー情報のセットが通信される。存在情報がネットワーク要求処理の公称レートに対して低い周波数で送信され、且つセキュリティ及びコンフィギュレーションポリシー情報プロトコルが、例えば、ターゲットサーバー441-Yの追加、及びポリシールールセットへの管理更新のエントリーにより、セキュリティプロセッサクラスター18の管理上の再コンフィギュレーションについてのみ実行されるとすれば、クラスター内通信をサポートするために個々のターゲットサーバー441-Yに課せられる処理オーバーヘッドが無視でき且つクラスター負荷とは独立したものとなる。
【0038】
本発明の好ましい実施形態に使用されるソフトウェアアーキテクチャー50のブロック図兼フローチャートが図3に示されている。一般に、インバウンドネットワーク要求トランザクションは、スイッチ16を経てルーティング可能な通信セッションをサポートするハードウェアベースのネットワークインターフェイスコントローラにより処理される。これらのインバウンドトランザクションは、第1のネットワークインターフェイス52、プロトコルプロセッサ54及び第2のネットワークインターフェイス54を経て処理され、その結果、アウトバウンドトランザクションがホストコンピュータ121-Xを経てローカル及びコアデータ処理及び記憶資産14、30へ向け直される。同じ、個別の又は多数の冗長のハードウェアネットワークインターフェイスコントローラを各ターゲットサーバー441-Yにおいて実施し、そしてスイッチ16を経てインバウンド及びアウトバウンドトランザクションを搬送するように対応的に使用することができる。
【0039】
ローカル及びコアネットワーク資産14、30に対して対応するネットワークトランザクションを開始するように各々動作するPEMコンポーネント421-Xからターゲットサーバー44により種々受け取られるネットワーク要求データパケットは、プロトコルプロセッサ54を経て処理されて、選択されたネットワーク及びアプリケーションデータパケット制御情報を最初に抽出する。好ましくは、この制御情報は、ターゲットサーバー441-Yへ従来のやり方でルート転送するために発信側PEMコンポーネント421-Xにより従来のTCPデータパケットにラップされる。或いは又、制御情報は、独占的RPCデータパケットとしてエンコードすることができる。抽出されたネットワーク制御情報は、TCP、IP及び同様のネットワークプロトコルレイヤ情報を含み、一方、抽出されたアプリケーション情報は、ネットワーク要求が発生された特定のクライアントプロセス及びコンテクストに対して発信側PEMコンポーネント421-Xのオペレーションにより発生され又は決定されたアクセス属性を含む。本発明の好ましい実施形態では、アプリケーション情報は、発信側ホストコンピュータを直接的又は間接的に識別するアクセス属性と、ユーザ及びドメインと、アプリケーションシグネチャー又はセキュリティ証明書と、ネットワーク要求を発信したホストコンピュータ121-Nに対して得られるクライアントセッション及びプロセス識別子との集合である。アプリケーション情報は、更に、ユーザを検証(verify)するために実行される認証の状態又はレベルが得られるときにはそれを識別するのが好ましい。好ましくは、PEMコンポーネント421-Xは、アプリケーション情報を、定義されたデータ構造体へと自動的に収集し、このデータ構造体は、次いで、ターゲットサーバー441-Yへ送信するためのTCPネットワークデータパケットとしてカプセル化される。
【0040】
好ましくは、プロトコルプロセッサ54のオペレーションにより露出されるネットワーク情報は、トランザクション制御プロセッサ58へ供給され、そしてネットワーク及びアプリケーションの両制御情報は、ポリシーパーサ60へ供給される。トランザクション制御プロセッサ58は、状態マシンとして動作して、プロトコルプロセッサ54を経てネットワークデータパケットの処理を制御すると共に、ネットワーク及びアプリケーション情報を受信して評価する際のポリシーパーサのオペレーションを整合する。トランザクション制御プロセッサ58の状態マシンオペレーションは、個々のネットワークデータパケットの詳細な検査を制御して、ネットワーク及びアプリケーション制御情報を探索し、そして本発明の好ましい実施形態により、取り囲まれたデータペイロードの暗号化及び圧縮処理を選択的に制御する。又、ネットワークトランザクション状態は、トランザクション制御プロセッサ58の状態マシンのオペレーションを経て維持される。より詳細には、ネットワークファイルデータの読み取り及び書き込みオペレーション並びに他の同様のトランザクションオペレーションを実施するために交換されるネットワークデータパケットのシーケンスは、プロトコルプロセッサ54を経て処理される間にトランザクションの完全性を維持するために必要に応じて追跡される。
【0041】
トランザクション制御プロセッサ58により初期ネットワーク要求として識別されたネットワークデータパケットを評価する際に、ポリシーパーサ60は、得られるネットワーク及びアプリケーション制御情報の選択されたエレメントを検査する。ポリシーパーサ60は、ポリシー/キー記憶装置62に記憶されたコンフィギュレーションポリシー/キーデータセットに対して動作するルールベースの評価エンジンとして実施されるのが好ましい。ルール評価は、受け取ったネットワークファイルデータパケットにより表わされたネットワークファイル要求の処理を可能にするために必要とされるホストコンピュータ121-Nの認証のレベルを決定する判断ツリーロジックを実施するのが好ましく、前記決定は、認証のレベルを満足するかどうか、要求を開始するホストコンピュータ121-Nのユーザがその要求されたコアネットワーク資産にアクセスすることが許可されたかどうか、そして更に、ネットワーク要求と共に与えられるプロセス及びアクセス属性が、ネットワーク要求で識別された特定のローカル又はコアネットワークリソース14、30へのアクセスを可能にするのに充分であるかどうかについて行われる。
【0042】
本発明の好ましい実施形態では、ファイルデータにアクセスするためのネットワーク要求に応答して評価される判断ツリーロジックは、ユーザ認証状態、ユーザアクセス認可、及びアクセス許可を考慮する。ユーザの認証は、識別されたネットワーク要求コアネットワーク資産、取り付けポイント、ターゲットディレクトリー及びファイル仕様の組み合せに対してコンフィギュレーションポリシー/キーデータセットに定義された最小要求認証レベルに関して考慮される。コンフィギュレーションポリシー/キーデータセットに対するユーザの認可は、特定のネットワークファイル要求、ユーザのネーム及びドメイン、クライアントIP、並びにクライアントセッション及びクライアントプロセス識別子アクセス属性の組み合せに対して考慮される。最終的に、アクセス許可は、ユーザのネーム及びドメイン、取り付けポイント、ターゲットディレクトリー及びファイル仕様アクセス属性を、対応的に指定された読み取り/変更/書き込み許可データ、並びにコンフィギュレーションポリシー/キーデータセットに指定された他の使用可能なファイル関連機能及びアクセス許可制約と共に評価することにより、決定される。
【0043】
PEMコンポーネント421-Xが、仮想指定されたデータ記憶装置に対するファイルシステム要求を、特定のローカル及びコアネットワークファイルシステムデータ記憶装置14、30へマップし及び向け直すのに有用なファイルシステムプロキシーとして機能する場合には、ホストコンピュータシステム121-Nにアクセスできる仮想ファイルシステム取り付けポイントのセット認識と、仮想取り付けポイントから真の取り付けポイントへのマッピングとを定義するためのデータもポリシー/キー記憶装置62に記憶される。又、ポリシーデータは、許可されたホストコンピュータソースIPの範囲を種々定義することもでき、これは、アプリケーションの認証を、クライアントアクセスに対する必須条件として施行すべきか、認可されたアプリケーションの認可されたデジタルシグネチャーの限定されて許可されたセットとして施行すべきか、又、ユーザセッションの認証を生まれた(spawned)プロセスへと拡張するか、又は異なるユーザネーム及びドメイン仕様並びに他の属性データを伴うプロセスへと拡張するかについて行われ、前記他の属性データは、ポリシーパーサ60のオペレーションにおいて、PEMコンポーネント421-Xによりオンデマンドで配列することのできるアプリケーション情報及びネットワーク情報に対して一致させるか、さもなければ、弁別するのに使用できるものである。
【0044】
本発明の好ましい実施形態において、ポリシー/キー記憶装置62には暗号キーも記憶される。好ましくは、個々の暗号キー及び適用可能な圧縮仕様が、判断ツリーとしてパース可能な論理的ハイアラーキーポリシーセットルール構造体に維持される。各ポリシールールは、取り付けポイント、ターゲットディレクトリー及びファイル仕様のアクセス属性定義組み合せを含むネットワーク及びアプリケーション属性のある組み合せの仕様を与え、これにより、対応する要求の更なる処理についての許可制約を弁別することができる。保留中の要求に基づき、それに対応する暗号キーは、プロトコルプロセッサの主題により実施される暗号化及び暗号解読オペレーションをサポートするためにトランザクション制御プロセッサ58により要求されたときにポリシールールセットからポリシーパーサ60のオペレーションによりパースされる。本発明の好ましい実施形態では、ネットワーク及びアプリケーション情報に対して迅速な評価を許すようにポリシールール及び関連キーデータがハッシュテーブルに記憶される。
【0045】
ポリシーデータセットデータの手動管理は、好ましくはプライベートネットワークを経てアクセスされる管理インターフェイス64と、専用の管理ネットワークインターフェイス66とを経て実行される。ポリシーデータセットに対する更新は、好ましくは、セキュリティプロセッサクラスター18のターゲットサーバー441-Y間で、個別のクラスターネットワークインターフェイス68を経てアクセスできるクラスターネットワーク46を通して自律的に交換される。クラスターポリシープロトコルコントローラ70は、現在ブロードキャストメッセージを取り扱い、クラスター46の通信のセキュリティを確保し、そしてコンフィギュレーションポリシー/キーデータセットデータに対する更新を交換するためのセキュアなプロトコルを実施する。
【0046】
ネットワーク要求を受信すると、トランザクション制御プロセッサ58は、ポリシーパーサ60により実行される評価と、ターゲットサーバー44に対して決定される現在処理負荷値とに基づいて、そのネットワーク要求を受け容れるべきか拒絶すべきか決定する。ポリシーパーサ60に基づく拒絶は、その要求が認証、認可又は許可のポリシー評価に不合格となった場合に生じる。本発明の最初の好ましい実施形態では、ターゲットサーバー44の現在処理容量を越えて受け取られる要求に対して拒絶が発生されない。受け取った要求は、バッファされ、そして要求応答待ち時間を受け容れられるほど増加させて、受け取った順に処理される。バッファされた要求に応答して直ちに返送される負荷値は、ホストコンピュータ121-Nからのその後のネットワーク要求を他のターゲットサーバー441-Yへ効果的に向け直す。或いは又、実際にターゲットサーバー44の現在処理容量を越えるネットワーク要求の受け取りを最小にするように、返送される負荷値を小さな量だけ上方にバイアスすることもできる。本発明の別の実施形態では、ネットワーク要求の実際の拒絶は、ターゲットサーバー441-Yの処理容量を越えるのを明確に除外するためにターゲットサーバー441-Yにより発生することができる。その後のネットワーク要求を拒絶すべきときを定義するために、例えば、95%の負荷容量というスレッシュホールドをセットすることができる。
【0047】
返送される負荷値を与えるために、一次ネットワークインターフェイス52、56に接続されたネットワークインターフェイスコントローラ、メインプロセッサ、及びターゲットサーバー44により使用されたハードウェアベースの暗号化/圧縮コプロセッサに対して決定された個々の負荷値の組み合せに基づいて合成負荷値が計算されるのが好ましい。この合成負荷値、及び任意であるが、個々のコンポーネント負荷値が、ネットワーク要求に応答して、要求発信ホストコンピュータ121-Nへ返送される。好ましくは、少なくとも合成負荷値が、現在ネットワーク要求の取り扱いを含むように投影される。従って、ターゲットサーバー441-Yのオペレーションを支配する適用可能な負荷ポリシールールに基づいて、返送される応答は、現在ネットワーク要求の受け入れ又は拒絶のいずれかを通知する。
【0048】
ネットワーク要求に対する認可、認証及び許可評価との組み合せにおいて、ポリシーパーサ60は、好ましくはネットワーク要求を拒絶すべきかどうかに関わらず、現在トランザクションに対するポリシーセット重み値を任意に決定する。このポリシー決定された重み値は、特定のネットワーク要求及びそれに関連したアクセス属性に対して特定のターゲットサーバー44を使用することがどれほど適しているかの数値ベース表示である。本発明の好ましい実施形態では、好ましい使用を含む1から100の正規化範囲における比較的低い値は、受け容れられるネットワーク及びアプリケーション情報の望ましい組み合せに関連付けされる。バックアップ又は別の受け容れられる使用を一般的に識別するために、より高い値が返送される。定義されたスレッシュホールド、例えば、90より高い任意の値として定義される除外値は、対応するネットワーク要求が緊急状態下以外は特定のターゲットサーバー44に向けられないところのPEMコンポーネント421-Xへ暗示的信号として返送される。
【0049】
ネットワーク要求に応答して、ターゲットサーバー44は、任意のポリシー決定された重み値、1つ以上の負荷値のセット、及びネットワーク要求の受け容れ又は拒絶を指示する識別子を含む応答ネットワークデータパケットを返送する。本発明の好ましい実施形態によれば、応答ネットワークデータパケットは、現在トランザクション内のその後のデータパケット転送を、セキュリティプロセッサクラスター18を経て転送する必要があるかどうか更に指定することができる。名目上、全トランザクションのデータパケットは、暗号化及び圧縮処理を許すために、対応するターゲットサーバー44を経てルーティングされる。しかしながら、基礎となる搬送ファイルデータが暗号化も圧縮もされない場合、又はこのような暗号化又は圧縮を変更すべきでない場合、或いはネットワーク要求がファイルデータ転送を伴わない場合には、データの現在トランザクション転送で、セキュリティプロセッサクラスター18を経てトランザクションデータパケットの残りをルーティングする必要がない。従って、現在トランザクションのネットワーク要求がターゲットサーバー44のポリシーパーサ60により評価されて承認され、そして受け容れ応答パケットがホストコンピュータ121-Nに返送されると、それに対応するPEMコンポーネント421-Xは、現在トランザクションを完了するためにセキュリティプロセッサクラスター18の使用を選択的にバイパスすることができる。
【0050】
実行時のPEMコンポーネント42が図4に80で示されている。PEMコンポーネント42の制御機能を実施するために実行されるPEM制御レイヤ82は、オペレーティングシステム仮想ファイルシステムスイッチ又はそれと同等のオペレーティングシステム制御構造体のもとでカーネルコンポーネントとしてホストシステム12にインストールされるのが好ましい。オペレーティングシステムカーネルへの従来の仮想ファイルシステムスイッチインターフェイスをサポートするのに加えて、PEM制御レイヤ82は、内部又はオペレーティングシステムで形成されるファイルシステム84をサポートするときに通るオペレーティングシステム仮想ファイルシステムスイッチインターフェイスと同等のネイティブ又はネットワークファイルシステム或いはインターフェイスのある組み合せを実施するのが好ましい。外部に設けられるファイルシステム84は、ダイレクトアクセス(DAS)及び記憶ネットワーク(SAN)データ記憶資産への接続を可能にするブロック向けのインターフェイスと、ネットワークアタッチ型記憶(NAS)ネットワークデータ記憶資産へのアクセスを許すファイル向けのインターフェイスとを含むのが好ましい。
【0051】
又、PEM制御レイヤ82は、ホストコンピュータシステム12のホストネーム又は他の独特の識別子、仮想ファイルシステムスイッチを経て受信したネットワークファイル要求を発信するプロセスに対応するソースセッション及びプロセス識別子、並びにネットワークファイル要求を発信するプロセスに対するユーザネーム及びドメインに関連した認証情報をこのPEM制御レイヤ82が得るのを許すオペレーティングシステムインターフェイスを実施するのも好ましい。本発明の好ましい実施形態では、PEM制御レイヤ82により受信されるこれらのアクセス属性及びネットワークファイル要求は、従来のTCPデータパケットによりラップされるデータ構造体に入れられる。この有効な独占的TCPデータパケットは、次いで、IPスイッチ16を経て送信されて、ネットワーク要求を選択されたターゲットサーバー44へ与える。或いは又、独占的データ構造体に代わって従来のRPC構造体を使用することができる。
【0052】
ターゲットサーバー44の選択は、コンフィギュレーション及び動的に収集された性能情報に基づいてPEM制御レイヤ82により実行される。セキュリティプロセッサIPアドレスリスト86は、セキュリティプロセッサクラスター18内のターゲットサーバー441-Yの各々を識別するのに必要なコンフィギュレーション情報を与える。このIPアドレスリスト86は、PEMコンポーネント42の静的な初期化を通して手動で設けることもできるし、或いは好ましくは、PEM制御レイヤ82の初期実行時に、セキュリティプロセッサクラスター18の指定の又はデフォールトのターゲットサーバー441-Yから初期コンフィギュレーションデータセットの一部分として検索される。本発明の好ましい実施形態では、各PEMコンポーネント421-Xは、初期実行時に、セキュリティプロセッサクラスター18に対して認証トランザクションを実行し、これにより、実行中のPEM制御レイヤ82の完全性が検証されると共に、IPアドレスリスト86を含む初期コンフィギュレーションデータがPEMコンポーネント421-Xに供給される。
【0053】
サーバー負荷及び重み値のような動的情報は、実行中のPEMコンポーネント421-XによりSP負荷/重みテーブル88へ次第に収集される。負荷値は、タイムスタンプされ、そして報告ターゲットサーバーに対してインデックスされる。重み値も、同様に、タイムスタンプされてインデックスされる。初期の好ましい実施形態の場合に、PEMコンポーネント421-Xは、ラウンドロビンターゲットサーバー441-Y選択アルゴリズムを使用し、この場合、現在ターゲットサーバー441-Yの負荷が100%に達したときに次のターゲットサーバー441-Yの選択が行われる。或いは又、負荷及び重み値は、更に、要求側のホストの識別子、ユーザネーム、ドメイン、セッション及びプロセス識別子、アプリケーション識別子、要求されたネットワークファイルオペレーション、コアネットワーク資産参照、並びに取り付けポイント、ターゲットディレクトリー及びファイル仕様を含むアクセス属性の使用可能な組み合せによって逆インデックスすることもできる。ハイアラーキー式の最も近い一致のアルゴリズムを使用して、この記憶されたダイナック情報は、PEMコンポーネント421-Xが、特定のネットワーク要求を最も受け容れ易いもの及び最も負荷の低いものの両方である多数のターゲットサーバー441-Yの順序付けされたリストを迅速に確立するのを許す。最初に識別されたターゲットサーバー441-Yが要求を拒絶すると、次にリストされたターゲットサーバー441-Yが試みられる。
【0054】
ネットワーク待ち時間テーブル90は、好ましくは、PEM制御レイヤ82と各ターゲットサーバー441-Yとの間のネットワーク状態の動的評価を記憶するのに使用される。最小限、ネットワーク待ち時間テーブル90は、ネットワーク要求にもはや応答しないか、さもなければ、アクセス不能と思われるターゲットサーバー441-Yを識別するのに使用される。このような使用不能のターゲットサーバー441-Yは、PEM制御レイヤ82により実行されるターゲットサーバー選択プロセスから自動的に除外される。又、ネットワーク待ち時間テーブル90は、種々のターゲットサーバー441-Yの応答待ち時間及び通信コストを表わすタイムスタンプ値を記憶するのにも使用できる。これらの値は、新たなネットワーク要求を受け取るためのターゲットサーバー441-Yを決定しそして順序付けするプロセスの一部分として重み値に関連して評価されてもよい。
【0055】
最終的に、優先テーブル92は、PEMコンポーネント421-Xに対して個別化されたデフォールトトラフィック整形プロフィールを与えるように実施できる。本発明の別の実施形態では、優先プロフィールは、セキュリティプロセッサクラスター18内のターゲットサーバー441-Yのデフォールト割り当て又は区分化を確立するためにPEMコンポーネント421-Xの各々に指定することができる。PEMコンポーネント421-X間で異なる優先値をターゲットサーバー441-Yに指定し、そして更に、これら優先値を重み値に関連して評価することにより、種々のホストコンピュータ121-Nと個々のターゲットサーバー441-Yとの間のネットワークトラフィックを使用して、特定のターゲットサーバー441-Yの使用を柔軟に定義することができる。IPアドレスリスト86と同様に、優先テーブルのコンテンツは、PEM制御レイヤ82の手動の初期化により与えることもできるし、又はセキュリティプロセッサクラスター18からのコンフィギュレーションデータとして検索することもできる。
【0056】
ターゲットサーバー441-Yに対する好ましいハードウェアサーバーシステム100が図5に示されている。本発明の好ましい実施形態では、図3に示したソフトウェアアーキテクチャー50が、1つ以上のメインプロセッサ102により、1つ以上の周辺ハードウェアベースの暗号化/圧縮エンジン104からのサポートで実質的に実行される。1つ以上の一次ネットワークインターフェイスコントローラ(NIC)106は、IPスイッチ16に対するハードウェアインターフェイスを与える。コントローラ108のような他のネットワークインターフェイスコントローラは、セキュアなクラスターネットワーク46及びアドミニストレータコンソール(図示せず)への個別の冗長なネットワーク接続を与えるのが好ましい。心鼓動タイマー110は、特に、セキュアなクラスターネットワークマネージメントプロトコルを含むメンテナンスオペレーションをサポートするためにメインプロセッサに1秒インターバルの割り込みを与えるのが好ましい。
【0057】
ソフトウェアアーキテクチャー50は、ハードウェアサーバーシステム100のメインメモリからメインプロセッサ102にロードされて実行されるサーバー制御プログラム112として実施されるのが好ましい。サーバー制御プログラム112を実行する際に、メインプロセッサ102は、一次ネットワークインターフェイスコントローラ106、メインプロセッサ102、及び暗号化/圧縮エンジン104に対する負荷値のオンデマンド取得を実行するのが好ましい。ネットワークインターフェイスコントローラ106及び暗号化/圧縮エンジン104の特定のハードウェア実施に基づいて、それに対応するハードウェアレジスタから個々の負荷値を読み取ることができる(114)。或いは又、ネットワークインターフェイスコントローラ106のスループット使用及び暗号化/圧縮エンジン104の現在パーセンテージ容量処理利用を追跡するために、メインプロセッサ102によりサーバー制御プログラム112の実行を通してソフトウェアベースの使用アキュムレータを実施することもできる。本発明の最初の好ましい実施形態では、負荷値の各々は、対応するハードウェアリソースのパーセンテージ利用を表わす。又、サーバー制御プログラム112の実行は、好ましくはハードウェアサーバーシステム100のメインメモリ内にあってメインプロセッサ102にアクセスできるコンフィギュレーションポリシー/キーデータセット116の確立を与える。セキュアなクラスターネットワーク46プロトコルのオペレーションを経て更新されたコンフィギュレーションポリシー/キーデータセットを受信するために第2テーブル118が同様に維持される。
【0058】
図6は、セキュリティプロセッサクラスター18の選択されたターゲットサーバー44と協働して(120B)、ホストコンピュータ121-N上で実行されるPEMコンポーネント421-Xにより実施される負荷バランス動作120Aを示すプロセスフローチャートである。クライアント14から、通常、仮想ファイルシステムスイッチを経てPEMコンポーネント421-Xへファイルシステム要求として与えられるネットワーク要求を受信すると(122)、このネットワーク要求は、独特のホスト識別子126を含む使用可能なアクセス属性124をネットワーク要求に関連付けるために、PEMコンポーネント421-Xにより評価される。PEMコンポーネント421-Xは、次いで、セキュリティプロセスクラスター18からターゲットサーバー44のIPアドレスを選択する(128)。
【0059】
次いで、独占的なTCPベースのネットワーク要求データパケットが、それに対応するネットワーク要求及びアクセス属性を含むように構成される。このネットワーク要求は、次いで、IPスイッチ16を経てターゲットサーバー44へ送信される(130)。ターゲットサーバーの応答時間切れ周期は、ネットワーク要求の送信(130)と同時にセットされる。応答時間切れが生じると(132)、特定のターゲットサーバー44が、ネットワーク待ち時間テーブル90において、ダウン即ち非応答とマークされる(134)。次いで、ネットワーク要求を受信するために、別のターゲットサーバー44が選択される(128)。非応答のターゲットサーバー44が利用できないことを受けて選択プロセスが再実行されるのが好ましい。或いは又、ネットワーク要求を最初に受信したときに識別される順序付けされた一連のターゲットサーバーを一時的に維持して、PEMコンポーネント421-Xのオペレーションの再試みをサポートしてもよい。少なくとも対応するネットワーク要求がターゲットサーバー44により受け容れられるまで選択リストを維持することで、ターゲットサーバー44の選択プロセス128を再実行するオーバーヘッドをこうむることなく、拒絶されたネットワーク要求を次に続くターゲットサーバーへ直ちに再試みすることが許される。しかしながら、応答時間切れ132の周期の巾によっては、選択リストの再使用が望ましくないことがある。というのは、セキュリティプロセッサの負荷及び重みテーブル88とネットワーク待ち時間テーブル90とに対する動的な更新の介在が考えられず、再試みに対する高い拒絶率を潜在的に招くからである。従って、セキュリティプロセッサの負荷及び重みテーブル88とネットワーク待ち時間テーブル90とにおける全てのデータを考慮に入れてターゲットサーバー44の選択プロセス128を再実行することが一般的に好ましい。
【0060】
TCPベースのネットワーク要求136を受け取ると(120B)、ターゲットサーバー44は、最初に、ネットワーク要求を検査して、その要求にアクセスすると共に、属性情報にアクセスする。ポリシーパーサ60が呼び出され(138)、要求に対するポリシー決定重み値を発生する。又、ターゲットサーバー44の当該ハードウェアコンポーネントに対する負荷値も収集される。次いで、ネットワーク要求を受け容れるべきか拒絶すべきか(140)の決定がなされる。ポリシー評価ネットワーク及びアプリケーション情報のもとでのアクセス権がその要求されたオペレーションを排除する場合には、ネットワーク要求が拒絶される。全ての許可されたネットワーク要求において自動的に受け容れてバッファするものではない本発明の実施形態では、現在負荷又は重み値が、ターゲットサーバー441-Yに適用できるコンフィギュレーション確立のスレッシュホールド負荷及び重み限界を越える場合にネットワーク要求が拒絶される。いずれにせよ、対応する要求応答データパケットが発生され(142)そして返送される。
【0061】
ネットワーク要求の応答は、要求発信側のホストコンピュータ121-Nにより受け取られ(144)、そしてローカル実行のPEMコンポーネント421-Xへ直接通される。負荷及び返送される重み値は、タイムスタンプされて、セキュリティプロセッサ負荷及び重みテーブル88にセーブされる。任意であるが、ネットワーク要求応答データパケットから決定されたターゲットサーバー44とホストコンピュータ121-Nとの間のネットワーク待ち時間は、ネットワーク待ち時間テーブル90に記憶される。アクセス属性が不充分なこと(150)に基づいてネットワーク要求が拒絶された場合には(148)、ホストコンピュータ121-Nに対してトランザクションが対応的に完了される(152)。他の理由で拒絶された場合には、次のターゲットサーバー44が選択される(128)。さもなければ、ネットワーク要求応答により確認されたトランザクションは、PEMコンポーネント421-Xを経て処理されると共に、データペイロード暗号化及び圧縮処理154に対して必要に応じてターゲットサーバー44へネットワークデータパケットを適宜に転送することで処理される。クライアントが要求したネットワークファイルオペレーションの完了時に(152)、ネットワーク要求トランザクションが完了となる(156)。
【0062】
セキュリティプロセッサクラスター18のターゲットサーバー441-Y間で、存在情報を配布し、そしてそれに応答して、コンフィギュレーションポリシー/キーデータを含むコンフィギュレーションデータセットを転送するための好ましいセキュアなプロセス160A/160Bが図7Aに一般的に示されている。本発明の好ましい実施形態によれば、各ターゲットサーバー44は、セキュアなクラスターネットワーク46に種々のクラスターメッセージを送信する。好ましくは、図7Bに示すように一般的に構成されたクラスターメッセージ170は、メッセージタイプ、ヘッダーバージョンナンバー、ターゲットサーバー441-Y識別子又は単にソースIPアドレス、シーケンスナンバー、認証タイプ及びチェック和を定義するクラスターメッセージヘッダ172を含む。このクラスターメッセージヘッダ172は、更に、状態値174及び現在ポリシーバージョンナンバー176を含み、これは、最も現在のコンフィギュレーションの指定のバージョンナンバー、及びクラスターメッセージ170を送信するターゲットサーバー44により保持されたコンフィギュレーションポリシー/キーデータセットを表わす。状態値174は、クラスターメッセージの機能を定義するように使用されるのが好ましい。状態のタイプは、クラスター内のターゲットサーバー441-Yのセットの発見、クラスターへのターゲットサーバー441-Yの加入、そこからの退去及び除去、ターゲットサーバー441-Yにより保持されたコンフィギュレーション及びコンフィギュレーションポリシー/キーデータセットの同期、並びに冗長なセキュアなクラスターネットワーク46が利用できる場合には、二次セキュアなクラスターネットワーク46への切り換えを含む。
【0063】
又、クラスターメッセージ170は、PKダイジェスト178も備え、これは、パブリックキーのセキュアなハッシュと、それに対応するネットワークIPと、セキュアなプロセッサクラスター18の各ターゲットサーバー441-Yに対する状態フィールドとを含む構造化リストを備え、それらは、クラスターメッセージ170を発信する特定のターゲットサーバー44により知られたものである。好ましくは、SHA−1のようなセキュアなハッシュアルゴリズムを使用して、セキュアなパブリックキーハッシュが発生される。含まれた状態フィールドは、進行中の同期、終了した同期、クラスター加入、及びクラスター退去状態を含む各ターゲットサーバー44の既知のオペレーティング状態を反映する。
【0064】
又、好ましくは、クラスターメッセージヘッダ172は、ソースターゲットサーバー44識別子のデジタルサイン入りコピーも、受信したクラスターメッセージ170の有効性を保証する基礎として含む。或いは又、クラスターメッセージヘッダ172から発生されたデジタルシグネチャーをクラスターメッセージ170に添付することもできる。いずれの場合も、ソースターゲットサーバー44識別子の首尾良い暗号解読及び比較、又はクラスターメッセージヘッダ172のセキュアなハッシュは、クラスターメッセージ170が既知のソースターゲットサーバー44からのもので、デジタルサイン入りである場合に、改ざんがなされていないことを受信側ターゲットサーバー44が検証できるようにする。
【0065】
本発明の好ましい実施形態では、クラスター18のターゲットサーバー441-Yは、ネットワーク要求に対する一貫した動作応答がいずれのホストコンピュータ121-Xによってもなされるよう保証するための共通のコンフィギュレーションを維持する。ターゲットサーバー441-Yのコンフィギュレーションの同期を保証するために、好ましくは、ローカル心鼓動タイマー162により発生されるハードウェア割り込みに応答して、各ターゲットサーバー441-Yによりセキュアなクラスターネットワーク46にクラスター同期メッセージが周期的にブロードキャストされる(160A)。各クラスター同期メッセージは、クラスターメッセージ170において、同期状態174の値、クラスター18の現在ポリシーバージョンレベル176、及びセキュリティプロセッサクラスター18に参加することが許されたターゲットサーバー441-Yのセキュアに確認可能なセットと共に、特に、クラスター同期メッセージ170を発信するターゲットサーバー44の参照のフレームから、送信される(164)。
【0066】
各ターゲットサーバー44は、他の能動的ターゲットサーバー441-Yの各々からセキュアなクラスターネットワーク46を経て受信された(180)ものであるブロードキャストされたクラスター同期メッセージ170を同時に処理する(160B)。各クラスター同期メッセージ170が受信され(180)、そしてセキュリティプロセッサクラスター18に有効に存在すると分かっているターゲットサーバー44から発信することが確認されたときに、受信側ターゲットサーバー44は、パブリックキーのダイジェスト178をサーチし(182)、受信側ターゲットサーバーのパブリックキーがダイジェストリスト178内に含まれるかどうか決定する。受信側ターゲットサーバー44のパブリックキーのセキュアなハッシュ等効物が見つからない場合には(184)、クラスター同期メッセージ170が無視される(186)。受信側ターゲットサーバー44のセキュアなハッシュパブリックキーが、受信したクラスター同期メッセージ170に見つかった場合には、ポリシーバージョンナンバー176が、受信側ターゲットサーバー44により保持されたローカルコンフィギュレーションポリシー/キーデータセットのバージョンナンバーと比較される。ポリシーバージョンナンバー176が、ローカルコンフィギュレーションポリシー/キーデータセットのバージョンナンバー以下である場合には、クラスター同期メッセージ170が再び無視される(186)。
【0067】
クラスター同期メッセージ170で識別されたポリシーバージョンナンバー176が、現在能動的コンフィギュレーションポリシー/キーデータセットのバージョンナンバーより大きい場合には、ターゲットサーバー44は、検索要求190を、好ましくは、HTTPsプロトコルを使用して、クラスター同期メッセージ170のソースとして対応するネットワークデータパケット内で識別されたターゲットサーバー44へ発行する。識別されたソースターゲットサーバー44により保持された比較的新しいコンフィギュレーションポリシー/キーデータセットは、受信側ターゲットサーバー44により保持されたコンフィギュレーションポリシー/キーデータセットを更新するために検索される。識別されたソースターゲットサーバー44は、それに応答して(192)、ソース暗号化ポリシーセット200を返送する。
【0068】
図7Cに一般的に詳細に示されたように、ソース暗号化ポリシーセット200は、インデックス202と、識別されたソースターゲットサーバー44によりセキュリティプロセッサクラスター18に有効に参加していると分かったターゲットサーバー441-Yの数をZとすれば、一連の暗号化アクセスキー2041-Zと、暗号化コンフィギュレーションポリシー/キーデータセット206と、ポリシーセットデジタルシグネチャー208とを含む定義されたデータ構造体であるのが好ましい。コンフィギュレーションポリシー/キーデータセット206の配布は、ターゲットサーバー441-Y間で次々に行うことができるので、有効参加ターゲットサーバー441-Yの数は、セキュリティプロセッサクラスター18の異なるターゲットサーバー441-Yの観点から、新たなコンフィギュレーションポリシー/キーデータセットバージョンが配布される間に変化し得る。
【0069】
インデックス202は、既知の有効参加ターゲットサーバー441-Yの各々に対してレコードエントリーを含むのが好ましい。各レコードエントリーは、パブリックキーのセキュアなハッシュと、対応するターゲットサーバー441-Yの管理上指定された識別子とを記憶するのが好ましい。規定により、第1のリストされたレコードエントリーは、暗号化されたポリシーセット200を発生したソースターゲットサーバー44に対応する。暗号化されたアクセスキー2041-Zの各々は、既知の有効参加ターゲットサーバー441-Yの各パブリックキーで暗号化されることにより同じ三重DESキーを含む。この三重DESキーを暗号化するのに使用されるパブリックキーのソースは、ローカルに保持されたコンフィギュレーションポリシー/キーデータセットである。従って、暗号化されたポリシーセット200のソースであるターゲットサーバー44に有効に知られているターゲットサーバー441-Yのみが、先ず、それに対応する三重DES暗号キー2041-Zを暗号解読し、次いで、それに含まれたコンフィギュレーションポリシー/キーデータセット206を首尾良く暗号解読することができる。
【0070】
新たな三重DESキーは、特定のターゲットサーバー441-Yにより構成された暗号化されたポリシーセット200の各ポリシーバージョンに対してランダム関数を使用して発生されるのが好ましい。或いは又、特定のターゲットサーバー441-Yにより受け取られた各HTTPs要求に応答して、新たな暗号化されたポリシーセット200を異なる三重DESキーで各々再構成することができる。ローカルに保持されたコンフィギュレーションポリシー/キーデータセット206は、現在発生された三重DESキーを使用して三重DES暗号化される。最終的に、インデックス202のセキュアなハッシュ及び暗号化されたアクセスキー2041-Zのリストに基づいて発生されたデジタルシグネチャー208を添付して、暗号化されたポリシーセット200の構造を完成する。従って、デジタルシグネチャー208は、初期のセキュアなハッシュ/識別子対レコードにより識別されたソースターゲットサーバー44が、実際に、暗号化されたポリシーセット200の有効ソースであることを保証する。
【0071】
図7Aを再び参照すれば、ソース暗号化されたポリシーセット200を検索し(190)、そして更に、セキュリティプロセスクラスター18に有効に存在すると分かっているターゲットサーバー44から発信されるセキュアなものとして確認されると、受信側ターゲットサーバー44は、その受信側ターゲットサーバー44のパブリックキーに一致するダイジェスト値についてパブリックキーダイジェストインデックス202をサーチする。好ましくは、一致するダイジェスト値のインデックスオフセット位置が、それに対応するパブリックキー暗号化三重DESキー206及び三重DES暗号化コンフィギュレーションポリシー/キーデータセット204を含むデータ構造体の行へのポインタとして使用される。次いで、受信側ターゲットサーバー44のプライベートキーが、三重DESキー206を回復するのに使用され(210)、これは、次いで、コンフィギュレーションポリシー/キーデータセット204を暗号解読するのに使用される。暗号解読されると、相対的に更新されたコンフィギュレーションポリシー/キーデータセット204は、受信側ターゲットサーバー44の更新コンフィギュレーションポリシー/キーデータセットメモリ18へ転送されて保持される。更新されたコンフィギュレーションポリシー/キーデータセット204のインストールが保留されると、その保留中の更新されたコンフィギュレーションポリシー/キーデータセットを保持するターゲットサーバー44は、その更新されたコンフィギュレーションポリシー/キーデータセットバージョンナンバー174を使用することによりクラスター同期メッセージ170の周期的発行を再開する。
【0072】
本発明の好ましい実施形態によれば、更新されたコンフィギュレーションポリシー/キーデータセット204は、現在のコンフィギュレーションポリシー/キーデータセット116として相対的に同期してインストールされ、セキュリティプロセッサクラスター18の能動的ターゲットサーバー441-Yがコンフィギュレーションポリシー/キーデータセットの同じバージョンを同時に利用することを保証する。効果的に同期されるインストールは、クラスター同期メッセージ170を監視することにより、全てのこのようなメッセージが同じ更新されたコンフィギュレーションポリシー/キーデータセットバージョンナンバー174を含むまで、各ターゲットサーバー44が、更新されたコンフィギュレーションポリシー/キーデータセット204をインストールするのを待機させる(212)ことで、得られるのが好ましい。好ましくは、ターゲットサーバー44が更新されたコンフィギュレーションポリシー/キーデータセットをインストールすると結論付けるための定義された時間周期内にクラスター同期メッセージ170を発行した有効なターゲットサーバー441-Yとして定義された各能動的ターゲットサーバー44からクラスター同期メッセージ170のスレッシュホールド数を受け取らねばならない。本発明の好ましい実施形態では、クラスター同期メッセージ170のスレッシュホールド数は、2である。各ターゲットサーバー44のパースペクティブから、全ての既知の能動的なターゲットサーバー441-Yが同じバージョンのコンフィギュレーションポリシー/キーデータセットを有すると確認されるや否や、更新されたコンフィギュレーションポリシー/キーデータセット118が、現在のコンフィギュレーションポリシー/キーデータセット116としてインストールされる(214)。これで、ローカルコンフィギュレーションポリシー/キーデータセットを更新するプロセス(160B)が終了となる(216)。
【0073】
図8を参照すれば、更新されたコンフィギュレーションポリシー/キーデータセットは、ローカルコンフィギュレーションポリシー/キーデータセットとして記憶された情報のいずれかに対して管理上の変更を行った結果として最終的に発生される(220)。管理上の変更222は、ネットワーク要求のポリシー評価に主として考慮されるアクセス権及び同様のデータを変更するために行うことができる。又、この変更は、通常、ターゲットサーバー44の追加又は除去によりセキュリティプロセッサクラスター18を管理上再コンフィギュレーションする(224)結果として行われてもよい。本発明の好ましい実施形態によれば、管理上の変更222は、アドミニストレータにより、いずれかのターゲットサーバー441-Yにおいて管理上のインターフェイス64を経てアクセスすることにより行われる。ポリシールールを追加、変更及び削除し、選択ポリシールールセットに対する暗号化キーを変更し、既知のターゲットサーバー44に対するパブリックキーを追加及び除去し、そしてアドミニストレータにより行われて確認されるときにクライアントコンピュータ12へ配布されるべきターゲットサーバー44のIPアドレスリストを変更するような管理上の変更222は、コンフィギュレーションポリシー/キーデータセットのローカルコピーに対してコミットされる。変更222をコミットする際に、それにより得られる更新されたコンフィギュレーションポリシー/キーデータセットのバージョンナンバーも自動的に増加される(226)。好ましい実施形態では、ソース暗号化されたコンフィギュレーションポリシー/キーデータセット200が再生され(228)、そして他のターゲットサーバー441-Yからの転送要求を保留にして保持される。又、クラスター同期メッセージ170は、ローカル心鼓動タイマー162に対する公称応答においてブロードキャストするために新たなポリシーバージョンナンバー174及びそれに対応するパブリックキー176のダイジェストセットを含むように再生されるのが好ましい。従って、新たに更新されたコンフィギュレーションポリシー/キーデータセットは、セキュリティプロセッサクラスター18の他の全ての能動的ターゲットサーバー441-Yに自動的に配布されそして相対的に同期してインストールされる。
【0074】
セキュリティプロセッサクラスター18を再コンフィギュレーションするには、対応するパブリックキー232を追加又は除去するようにコンフィギュレーションポリシー/キーデータセットに対して対応的な管理上の変更を行う必要がある。本発明の好ましい実施形態によれば、セキュリティプロセッサクラスター18の完全性は、コンフィギュレーションポリシー/キーデータセットへのパブリックキーの追加を、ローカルで認証されたシステムアドミニストレータによるか、又はセキュリティプロセッサクラスター18のローカルで知られた有効な能動的ターゲットサーバー44との通信を経て行うことを必要とするだけで、詐欺師又はトロイのターゲットサーバー441-Yに対抗するものとして維持される。より詳細には、受信側ターゲットサーバー441-Yのインストールされたコンフィギュレーションポリシー/キーデータセットにおいて対応するパブリックキーによりまだ識別されていないターゲットサーバー44からのクラスターメッセージ170は、無視される。新たなターゲットサーバー44のパブリックキーは、その新たなターゲットサーバー44を確認するために、セキュリティプロセッサクラスター18の既存メンバーにより実際にセキュアに支援されるべき別の既知の有効なターゲットサーバー44に管理上入力されねばならない(232)。
【0075】
従って、本発明は、詐欺師のターゲットサーバーが新たなパブリックキーを自己識別して詐欺師がセキュリティプロセッサクラスター18に加入できるようにするのを効果的に除外する。各ターゲットサーバー44の管理上のインターフェイス64は、ローカルのコンフィギュレーションポリシー/キーデータセットに対して管理上の変更222、223を行うために、独特のセキュアな管理上のログインを必要とするのが好ましい。詐欺師又はトロイのターゲットサーバー44のインストールを試みる侵入者は、おそらく成功を得るためには、セキュリティプロセッサクラスター18の既存の能動的ターゲットサーバー44に対する特定のセキュリティパスコードにアクセスしてそれを得なければならない。管理上のインターフェイス64は、周囲ネットワーク12、コアネットワーク18又はクラスターネットワーク46から物理的にアクセスできないのが好ましいので、セキュリティプロセッサクラスター18のコンフィギュレーションポリシー/キーデータセットに対する外部からのセキュリティ侵害が基本的に除外される。
【0076】
本発明の好ましい実施形態によれば、ホストコンピュータシステム121-Xに代わるPEMコンポーネント421-Xのオペレーションも、セキュリティプロセッサクラスター18の各ターゲットサーバー441-Yにインストールされたコンフィギュレーションポリシー/キーデータセットのバージョンと一貫して維持される。この一貫性は、各ホストコンピュータ12のネットワーク要求のポリシー評価が、要求を取り扱うために選択された特定のターゲットサーバー44に関わりなくシームレスに取り扱われることを保証するために維持される。図9に一般に示すように、PEMコンポーネント421-Xの好ましい実行240Aは、現在コンフィギュレーションポリシー/キーデータセットバージョンナンバーを追跡するように動作する。PEMコンポーネント421-Xの実行120Aに一般的に一貫するように、ネットワーク要求122の受信に続いて、PEMコンポーネント421-Xにより保持された最後に使用されたポリシーバージョンナンバーは、ネットワーク要求データパケットにおいて、ターゲットサーバー選択アルゴリズム128により決定された選択されたターゲットサーバー44のIPアドレスでセットされる(242)。最後に使用されたポリシーバージョンナンバーは、PEMコンポーネント421-Xの初期化の場合のようにデフォールトによりゼロにセットされるか、又はセキュリティプロセッサクラスター18のターゲットサーバー44により与えられる初期化コンフィギュレーションデータに基づく値にセットされるか、或いはセキュリティプロセッサクラスター18ターゲットサーバー44との協働的対話を経てPEMコンポーネント421-Xにより発生された値にセットされる。次いで、ネットワーク要求データパケットは、選択されたターゲットサーバー44に送信される(130)。
【0077】
ターゲットサーバー44のプロセス実行240Bも、同様に、ターゲットサーバー441-Yにより名目上実行されるプロセス実行120Bと一貫したものである。ネットワーク要求データパケットの受信(136)に続いて、ネットワーク要求において与えられたポリシーバージョンナンバーと、現在インストールされたコンフィギュレーションポリシー/キーデータセットのポリシーバージョンナンバーとを比較するために付加的なチェック244が実行される。ネットワーク要求により与えられたバージョンナンバーが、インストールされたバージョンナンバーより小さい場合には、不良バージョンナンバーフラグ246がセットされ(246)、拒絶の理由としてバージョンナンバー不一致を更に識別する拒絶応答142が強制的に発生される。さもなければ、ネットワーク要求は、手順120Bと一貫して処理される。又、好ましくは、ターゲットサーバープロセス実行240Bは、不良バージョンナンバー拒絶応答142が発生されるかどうかに関わりなく、要求応答データパケットにおいてローカルに保持されたコンフィギュレーションポリシー/キーデータセットのポリシーバージョンナンバーも与える。
【0078】
特に、バージョンナンバー不一致拒絶応答を受信すると(144)、PEMコンポーネント421-Xは、対応するターゲットサーバー44をバージョンナンバー不一致によりダウンとマークするために(248)、ネットワーク待ち時間テーブル90を更新するのが好ましい。又、報告されたポリシーバージョンナンバーも、ネットワーク待ち時間テーブル90に記憶されるのが好ましい。次いで、セキュリティプロセッサIPアドレスリスト86及びネットワーク待ち時間テーブル90により記憶された合成情報に基づいて全てのターゲットサーバー441-Yが使用不能と決定されない限り(250)、次のターゲットサーバー44の再試み選択128が実行される。PEMコンポーネント421-Xは、次いで、次に高いポリシーバージョンナンバーを、不良バージョンナンバー拒絶応答142において受信されたものと仮定する(252)。その後のネットワーク要求122も、この新たなポリシーバージョンナンバーで識別される(242)。次いで、バージョンナンバー不一致のために以前にダウンとマークされたターゲットサーバー441-Yが、次いで、ネットワーク待ち時間テーブル90にアップとマークされる(254)。次いで、新たなターゲットサーバー44の選択がなされ(128)、更新されたポリシーバージョンナンバーを使用してネットワーク要求を再試みする。従って、PEMコンポーネント421-Xの各々は、セキュリティプロセッサクラスター18により使用中にコンフィギュレーションポリシー/キーデータセットに対してなされた変更を一貫して追跡し、それにより、特定のネットワーク要求にサービスするように選択された特定のターゲットサーバー44とは独立して、一貫した結果を得る。
【0079】
従って、サーバーのクラスターの負荷バランスを協働的にとって、信頼性のある拡張可能なネットワークサービスを有効に提供するためのシステム及び方法を説明した。本発明は、サーバークラスターと相互オペレーションするホストベースのポリシー施行モジュールを特に参照して説明したが、ホストコンピュータシステム又はホストプロキシーを使用して、クライアントと個々のサーバーとの間の協働相互オペレーションによりサーバークラスターのサーバーへネットワーク要求を配布することにより、他の特定のアーキテクチャーにも等しく適用することができる。更に、サーバークラスターのサービスを、セキュリティ、暗号化、及び圧縮サービスとして説明したが、本発明のシステム及び方法は、一般に、他のネットワークサービスを提供するサーバークラスターにも適用できる。又、サーバークラスターは、単一の共通のサービスを実施するものとして説明したが、これは、本発明の好ましいモードに過ぎない。サーバークラスターは、PEMコンポーネントにより最初に受け取られたネットワーク要求のタイプに基づいて全てが協働して負荷バランスされる多数の独立したサービスを実施することができる。
【0080】
本発明の好ましい実施形態の前記説明において、当業者であれば、ここに開示した実施形態の多数の変更や修正が容易に明らかであろう。それ故、特許請求の範囲内で、本発明は、特に上述したものとは別のやり方で実施できることが理解されよう。
【図面の簡単な説明】
【0081】
【図1A】本発明の好ましい実施形態によりホストコンピュータシステムがサーバークラスターにより提供されるネットワークサービスに直接アクセスするようなシステム環境を示すネットワーク図である。
【図1B】本発明の好ましいコアネットワークゲートウェイ実施形態が具現化されるシステム環境を示すネットワーク図である。
【図2】本発明の好ましい実施形態により構成されたホストのアレーとセキュリティプロセッササーバーのクラスターとの間のネットワーク相互接続を示す詳細なブロック図である。
【図3】本発明の好ましい実施形態により構成されたセキュリティプロセッササーバーの詳細なブロック図である。
【図4】本発明の好ましい実施形態によりホストコンピュータシステムにおいて実施されたポリシー施行モジュール制御プロセスのブロック図である。
【図5】本発明の好ましい実施形態によりサーバークラスターサービスプロバイダーにより共有される負荷バランス及びポリシー更新ファンクションを示すセキュリティプロセスサーバーの簡単なブロック図である。
【図6】本発明の好ましい実施形態によりポリシー施行モジュールプロセスと選択されたクラスターサーバーとの間で協働的に実行されるトランザクションプロセスのフローチャートである。
【図7A】本発明の好ましい実施形態によりサーバークラスターのメンバー間で実行されるセキュアなクラスターサーバーポリシー更新プロセスのフローチャートである。
【図7B】本発明の好ましい実施形態により定義されるセキュアなクラスターサーバーポリシー同期メッセージのブロック図である。
【図7C】本発明の好ましい実施形態により定義されるセキュアなクラスターサーバーポリシーデータセット転送メッセージデータ構造のブロック図である。
【図8】本発明の好ましい実施形態によりセキュアなクラスターサーバーポリシーデータセット転送メッセージを再生するプロセスのフローチャートである。
【図9】本発明の好ましい実施形態によりクラスターサーバーの報告されたセキュアなクラスターサーバーポリシーデータセットにおけるバージョン変更を考慮するためにホストポリシー施行プロセスにより実行される拡張トランザクションプロセスを示すフローチャートである。
【特許請求の範囲】
【請求項1】
複数のクライアントコンピュータシステムに関連して発行されたクライアント要求をサービスするサーバーコンピュータシステム群の協調負荷バランス方法であって、
(a)特定のクライアント要求をサービスするために、蓄積された利用可能な選択基準データを用いて、目標サーバーコンピュータを前記サーバーコンピュータシステム群から選択するステップと、
(b)前記目標サーバーコンピュータの構成(コンフィグレーション)及び前記特定のクライアント要求に動的依存する例示(インスタンス)選択基準データを迅速に反応して提供するため、前記目標サーバコンピュータシステムによって前記特定のクライアント要求を評価するステップと、
(c)前記特定のクライアント要求のその後のインスタンスに関して、前記目標コンピュータシステムのその後の選択に影響を及ぼすために、前記例示選択基準データを前記蓄積された利用可能な選択基準データに組み入れるステップと、を備えた方法。
【請求項2】
前記例示(インスタンス)選択基準データは、前記目標サーバコンピュータシステムの動的に定義されている性能レベルの表示を含み、そして、前記蓄積された利用可能な選択基準データは、インスタンス選択基準データを、前記目標サーバーコンピュータ及び前記特定のクライアント要求の識別に組み入れることを特徴とする請求項1に記載の方法。
【請求項3】
前記インスタンス選択基準データは、前記目標サーバーコンピュータシステムに関係する特定クライアント要求のポリシー評価表示を含むことを特徴とする請求項2に記載の方法。
【請求項4】
前記例示(インスタンス)選択基準データは、負荷値及び選択重み値を含み、前記負荷値は前記目標サーバーコンピュータシステムの動的に定義された性能レベルを示すものであり、前記選択重み値は前記目標サーバーコンピュータシステムに関連する特定クライアント要求のポリシー評価を示すものであり、そして、前記蓄積された利用可能な選択基準データは、インスタンス選択基準データを、前記目標サーバーコンピュータ及び前記特定クライアント要求の識別に組み入れることを特徴とする請求項1に記載の方法。
【請求項5】
前記選択ステップは、前記蓄積された利用可能な選択基準データに記録されているような特定のクライアント要求に関する前記負荷値及び前記選択重み値の相対値を含む所定の選択基準に基づいて、前記目標サーバーコンピュータシステムを選択することを特徴とする請求項4に記載の方法。
【請求項6】
前記例示(インスタンス)選択基準データは前記特定のクライアント要求の拒否のために提供され、前記選択ステップは、前記蓄積された利用可能な選択基準データに基づいて前記特定のクライアント要求をサービスするために、前記サーバーコンピュータシステム群から代替のサーバーコンピュータシステムを目標サーバーシステムとして選択することを含むことを特徴とする請求項5に記載の方法。
【請求項7】
ネットワークサービスの協調的提供におけるサーバーコンピュータシステム群の負荷バランス方法であって、
(a)複数のホストコンピュータのそれぞれがコンピュータクラスター内のサーバーコンピュータを選択して、そのコンピュータに個々のサービス要求を発行するステップと、
(b)異なるサーバーコンピュータを選択しそのコンピュータに前記所定のサービス要求を発行することによって、前記複数のホストコンピュータの対応する1つが所定のサービス要求の拒否に応答するステップと、
(c)前記複数のホストコンピュータのそれぞれが、前記個々のサービス要求に関して、負荷及び重みの情報を前記各サーバーコンピュータから受信するステップと、
(d)前記複数のホストコンピュータのそれぞれが、前記選択ステップのその後の性能に関する基準として、前記コンピュータクラスターのサーバーコンピュータに関して受信した個々の負荷及び重み情報を評価するステップと、を含む方法。
【請求項8】
受信された各サービス要求に関する各サーバーコンピュータによって前記重み情報を定義するステップを更に含み、前記重み情報は、受信されたサービス要求とそのサービス要求を受信するサーバーコンピュータの1つの同一性との間の所定のポリシー関係から定義されることを特徴とする請求項7に記載の方法。
【請求項9】
前記ホストコンピュータに対するサーバーコンピュータ群によって初期情報を分配するステップを更に含み、前記初期情報は、サーバーコンピュータの選択リストを前記ホストコンピュータに提供することを特徴とする請求項8に記載の方法。
【請求項10】
前記負荷情報は、ネットワーク負荷及びプロセッサ負荷を含む複数の負荷要因を表したものであることを特徴とする請求項9に記載の方法。
【請求項11】
前記負荷情報は、複数のプロセッサ機能を含む最新のサービス要求セットの処理を表したものであることを特徴とする請求項10に記載の方法。
【請求項12】
前記負荷情報は、サーバーコンピュータへの内部処理機能をあらわす1又はそれ以上の負荷値を含むことを特徴とする請求項11に記載の方法。
【請求項13】
負荷バランスされたネットワークサービスを提供するために操作されるサーバークラスターであって、
(a)対応の処理サービスを実行するサービス要求に独立して反応する複数のサーバーコンピュータであって、はじめに前記サービス要求に応答し負荷値及び重み値を提供するように動作し、前記負荷値及び重み値は現在のオペレーティング負荷を特定のサービス要求に関連する個々のサーバコンピュータのポリシーに基づく優先レベルであらわすサーバーコンピュータと、
(b)前記複数のサーバーコンピュータに対して前記サービス要求をそれぞれ自律的に発行するように動作するホストコンピュータシステムであって、目標のサーバーコンピュータを前記複数のサーバーコンピュータから選択し、前記負荷値及び重み値に基づいて特定のサービス要求の例示(インスタンス)を受信するように動作するホストコンピュータシステムと、を備えたサーバークラスター。
【請求項14】
前記ホストコンピュータは、前記複数のサーバーコンピュータに対するそれぞれのサービス要求の発行に関連して、前記負荷値及び重み値を前記複数のサーバーコンピュータから集めるように動作し、そして前記目標サーバーコンピュータの選択は、前記負荷値及び重み値の相対的な時間経過に基づいていることを特徴とする請求項13に記載のサーバークラスター。
【請求項15】
前記複数の各サーバーコンピュータは、それぞれに異なるサーバー構成(コンフィグレーション)の記憶装置のために提供するポリシーデータセットストアを含み、前記負荷値及び重み値は、前記サーバー要求に応じて、前記複数のサーバーコンピュータのそれぞれに異なるサーバー構成に基づき複数のサーバーコンピュータによって動的に定義されることを特徴とする請求項14に記載のサーバークラスター。
【請求項16】
前記それぞれに異なるサーバー構成(コンフィグレーション)が、前記複数のサーバーコンピュータの異なる識別性(アイデンティティ)を含むことを特徴とする請求項15に記載のサーバークラスター。
【請求項17】
前記それぞれに異なるサーバー構成(コンフィグレーション)が前記サービス要求に関連する個々のポリシーデータを含み、前記ホストコンピュータシステムはそれぞれの前記サービス要求に関連して協調して収集するとともに、前記複数のサーバーコンピュータに対して属性データを提供するよう動作し、そして前記サーバーコンピュータは前記重み値を定義するために前記個々のポリシーデータとあわせてその属性データを評価することを特徴とする請求項16に記載のサーバークラスター。
【請求項18】
前記複数のサーバーコンピュータが安全なサービス処理を実行し、前記ホストコンピュータシステムは、前記複数のサーバーコンピュータによって評価されるように、ネットワーク搬送データを前記サービス要求に依存する前記サーバーコンピュータ経由で選択的に送信するように動作することを特徴とする請求項17に記載のサーバークラスター。
【請求項19】
前記ホストコンピュータは、前記各サービス要求に関する個々のデータ転送トランザクションを開始するように動作し、前記各データ転送トランザクション経路の初期設定は、はじめに、前記サービス要求の中から対応するものを転送するために前記複数のサーバーコンピュータのそれぞれに提供し、そして、前記複数のサーバーコンピュータのそれぞれは、前記個々のデータ転送トランザクション内のネットワークデータの次の経路が前記個々のデータ転送トランザクション内のネットワークデータを前記複数のサーバーコンピュータを経由して転送することを特徴とする請求項18に記載のサーバークラスター。
【請求項20】
クライアントコンピュータシステムに代わって、ネットワークサービスを拡張可能なサーバーコンピュータシステム群を通じて提供するコンピュータシステムであって、
(a)定義されたサービスを提供するために接続された複数のサーバーコンピュータであって、前記サーバーコンピュータシステムに対して発行された所定のサービス要求の承認において、前記複数のサーバーコンピュータのうちの1つのサーバーコンピュータが負荷情報を含んだ応答を提供し、前記応答が前記所定のサービス要求の引受け拒否を選択的に示すような複数のサーバーコンピュータと、
(b)前記複数のサーバーコンピュータシステムの識別リストを有するクライアントコンピュータシステムであって、第1のサーバーコンピュータシステムを前記識別リストから自律的に選択して、そのコンピュータシステムに対して前記所定のサービス要求を発行するように動作し、前記所定のサービス要求の引受け拒否が示された上に前記応答に反応し、第2のサーバーコンピュータシステムを前記識別リストから自律的に選択して、そのコンピュータシステムに前記所定のサービス要求を発行し、そして、前記負荷情報の応答に反応して前記第1及び第2のサーバーコンピュータシステムを引き続き自律的に選択するようなクライアントコンピュータシステムと、を含むコンピュータシステム。
【請求項21】
前記応答が重み情報を更に含み、そして前記クライアントコンピュータシステムが前記負荷情報及び重み情報の組合わせを評価してサーバーコンピュータシステムを前記識別リストから自律的に選択することを特徴とする請求項20に記載のコンピュータシステム。
【請求項22】
前記複数のサーバーコンピュータシステムが個々のポリシーエンジンを含み、そして前記重み情報がサーバーコンピュータポリシー役割と前記所定のサービス要求との間の関連性を反映していることを特徴とする請求項21に記載のコンピュータシステム。
【請求項23】
前記所定のサービス要求が所定のクライアントプロセス属性情報を含み、そして前記個々のポリシーエンジンが前記所定のクライアントプロセス属性情報に反応して前記所定のサービス要求に関係するサーバーコンピュータポリシー役割を定義することを特徴とする請求項22に記載のコンピュータシステム。
【請求項24】
前記負荷情報が、ネットワーク及びサーバープロセッサ性能をあらわす値を含むことを特徴とする請求項23に記載のコンピュータシステム。
【請求項25】
ネットワークサービスを提供する複数のサーバーコンピュータシステムに対してクライアント要求の分配を動的に管理する方法であって、前記サーバーコンピュータシステムのそれぞれはクライアント要求に応えるために別々に構成され、
(a)特定のクライアント要求のために前記複数のサーバーコンピュータシステムの中の特定サーバーコンピュータシステムを選択し前記特定クライアント要求をサービスするクライアント要求処理ステップであって、前記特定サーバーコンピュータシステムの選択が蓄積された選択認定情報の評価に依存しているようなクライアント要求処理ステップと、
(b)前記特定クライアント要求を前記特定サーバーコンピュータシステムに転送するステップと、
(c)前記特定クライアント要求に関係する特定サーバーコンピュータシステムによって個別に定義された特定クライアント要求インスタンス選択認定情報に関する特定サーバーコンピュータシステムから受信するステップであって、前記インスタンス選択認定情報が前記蓄積された選択認定情報へ組み入れられるような受信ステップと、を含むことを特徴とする方法。
【請求項26】
前記処理ステップは、前記蓄積された選択認定情報について前記特定クライアント要求を動的に評価し、当該特定サーバーコンピュータシステムを前記複数のサーバーコンピュータシステムの最良な選択として特定することを特徴とする請求項25に記載の方法。
【請求項27】
その構成(コンフィグレーション)が別個のものであるような前記特定サーバーコンピュータシステムによって評価するステップを更に含み、前記特定クライアント要求が前記インスタンス選択認定情報を提供することを特徴とする請求項26に記載の方法。
【請求項28】
前記評価ステップは、前記特定サーバーコンピュータシステムの実行性能を反映する負荷値を含む前記インスタンス選択認定情報の動的生成のために提供されることを特徴とする請求項27に記載の方法。
【請求項29】
前記インスタンス選択認定情報が、前記特定サーバーコンピュータシステムに関する特定クライアント要求の相対的優先度を含むことを特徴とする請求項28に記載の方法。
【請求項30】
前記クライアント要求がクライアントコンピュータシステムに関して発行され、前記特定クライアント要求がその特定クライアント要求を発行した特定クライアントコンピュータシステムを記述する属性を含み、そして前記相対優先度が前記特定サーバーコンピュータシステムに関する前記属性の評価に反映されることを特徴とする請求項29に記載の方法。
【請求項31】
複数のクライアントシステムのためにデータ処理サービスの実行を支援するよう供給される複数のサーバーシステム上のコンピュータ負荷を分散する方法であって、前記コンピュータ負荷が複数のクライアントプロセスを通じて発行されたクライアント要求に応じて生成され、
(a)前記複数のクライアント処理のうちの個々のクラインと処理からの属性データを前記特定クライアント要求に関連づけるため特定のクライアント要求を処理する第1のステップと、
(b)前記特定のクライアント要求のために、前記特定クライアント要求を蓄積された選択情報とマッチングすることによって前記複数のサーバーシステムの中から特定の目標サーバーシステムを選択して前記特定の目標サーバーシステムを特定する選択ステップと、
(c)前記特定の目標サーバーシステムに関する負荷値を含み、且つ前記特定クライアント要求と前記特定の目標サーバーシステムとの組合わせを反映したインスタンス選択情報を動的に生成するために、前記特定の目標サーバーシステムによって前記属性データを含む特定クライアント要求を処理する第2のステップと、
(d)前記選択ステップにおいてその後に使用するために、前記インスタンス選択情報を前記蓄積された選択情報に組み入れるステップと、を含むことを特徴とする方法。
【請求項32】
前記インスタンス選択情報が、前記特定クライアント要求と前記特定目標サーバーシステムの組合わせを反映する相対的重み値を含み、そして前記選択ステップが、相対的重み値と負荷値の最良の組合わせに基づいて前記特定目標サーバーシステムを選ぶために、前記属性データを含む特定クライアント要求を前記蓄積された選択情報の対応データとマッチングさせることを特徴とする請求項31に記載の方法。
【請求項33】
前記選択ステップが前記蓄積された選択情報を古くさせる(aging)ステップを含むことを特徴とする請求項32に記載の方法。
【請求項34】
(a)ホストプロセスを通じて、属性データを含む前記特定クライアント要求を前記特定目標サーバーシステムへ提供する第1の提供ステップと、
(b)前記ホストプロセスによって、前記インスタンス選択情報を含む特定目標サーバー応答を受信するステップと、
(c)ホストプロセスによって、代わりの目標サーバーシステムを選択するか否かを前記特定目標サーバー応答から定義するステップと、
(d)前記特定クライント要求のために、前記特定クライアント要求を前記蓄積された選択情報とマッチングすることによって、第2の目標サーバーシステムを前記特定目標サーバー応答から受信したインスタンス選択情報を含む前記複数のサーバーシステムの中から再選択して、前記第2の目標サーバーシステムを識別するステップと、
(e)前記ホストプロセスを通じて、属性データを含む前記特定クライアント要求を前記代値目標サーバーシステムに提供する第2の提供ステップと、をさらに含むことを特徴とする請求項33に記載の方法。
【請求項35】
前記ホストプロセスはクライントコンピュータシステム上で実行されることを特徴とする請求項34に記載の方法。
【請求項36】
前記ホストプロセスは複数のクライアントコンピュータシステムとともにコミュニケーションネットワークを通して接続可能なゲートウェイコンピュータシステム上で実行されることを特徴とする請求項35に記載の方法。
【請求項1】
複数のクライアントコンピュータシステムに関連して発行されたクライアント要求をサービスするサーバーコンピュータシステム群の協調負荷バランス方法であって、
(a)特定のクライアント要求をサービスするために、蓄積された利用可能な選択基準データを用いて、目標サーバーコンピュータを前記サーバーコンピュータシステム群から選択するステップと、
(b)前記目標サーバーコンピュータの構成(コンフィグレーション)及び前記特定のクライアント要求に動的依存する例示(インスタンス)選択基準データを迅速に反応して提供するため、前記目標サーバコンピュータシステムによって前記特定のクライアント要求を評価するステップと、
(c)前記特定のクライアント要求のその後のインスタンスに関して、前記目標コンピュータシステムのその後の選択に影響を及ぼすために、前記例示選択基準データを前記蓄積された利用可能な選択基準データに組み入れるステップと、を備えた方法。
【請求項2】
前記例示(インスタンス)選択基準データは、前記目標サーバコンピュータシステムの動的に定義されている性能レベルの表示を含み、そして、前記蓄積された利用可能な選択基準データは、インスタンス選択基準データを、前記目標サーバーコンピュータ及び前記特定のクライアント要求の識別に組み入れることを特徴とする請求項1に記載の方法。
【請求項3】
前記インスタンス選択基準データは、前記目標サーバーコンピュータシステムに関係する特定クライアント要求のポリシー評価表示を含むことを特徴とする請求項2に記載の方法。
【請求項4】
前記例示(インスタンス)選択基準データは、負荷値及び選択重み値を含み、前記負荷値は前記目標サーバーコンピュータシステムの動的に定義された性能レベルを示すものであり、前記選択重み値は前記目標サーバーコンピュータシステムに関連する特定クライアント要求のポリシー評価を示すものであり、そして、前記蓄積された利用可能な選択基準データは、インスタンス選択基準データを、前記目標サーバーコンピュータ及び前記特定クライアント要求の識別に組み入れることを特徴とする請求項1に記載の方法。
【請求項5】
前記選択ステップは、前記蓄積された利用可能な選択基準データに記録されているような特定のクライアント要求に関する前記負荷値及び前記選択重み値の相対値を含む所定の選択基準に基づいて、前記目標サーバーコンピュータシステムを選択することを特徴とする請求項4に記載の方法。
【請求項6】
前記例示(インスタンス)選択基準データは前記特定のクライアント要求の拒否のために提供され、前記選択ステップは、前記蓄積された利用可能な選択基準データに基づいて前記特定のクライアント要求をサービスするために、前記サーバーコンピュータシステム群から代替のサーバーコンピュータシステムを目標サーバーシステムとして選択することを含むことを特徴とする請求項5に記載の方法。
【請求項7】
ネットワークサービスの協調的提供におけるサーバーコンピュータシステム群の負荷バランス方法であって、
(a)複数のホストコンピュータのそれぞれがコンピュータクラスター内のサーバーコンピュータを選択して、そのコンピュータに個々のサービス要求を発行するステップと、
(b)異なるサーバーコンピュータを選択しそのコンピュータに前記所定のサービス要求を発行することによって、前記複数のホストコンピュータの対応する1つが所定のサービス要求の拒否に応答するステップと、
(c)前記複数のホストコンピュータのそれぞれが、前記個々のサービス要求に関して、負荷及び重みの情報を前記各サーバーコンピュータから受信するステップと、
(d)前記複数のホストコンピュータのそれぞれが、前記選択ステップのその後の性能に関する基準として、前記コンピュータクラスターのサーバーコンピュータに関して受信した個々の負荷及び重み情報を評価するステップと、を含む方法。
【請求項8】
受信された各サービス要求に関する各サーバーコンピュータによって前記重み情報を定義するステップを更に含み、前記重み情報は、受信されたサービス要求とそのサービス要求を受信するサーバーコンピュータの1つの同一性との間の所定のポリシー関係から定義されることを特徴とする請求項7に記載の方法。
【請求項9】
前記ホストコンピュータに対するサーバーコンピュータ群によって初期情報を分配するステップを更に含み、前記初期情報は、サーバーコンピュータの選択リストを前記ホストコンピュータに提供することを特徴とする請求項8に記載の方法。
【請求項10】
前記負荷情報は、ネットワーク負荷及びプロセッサ負荷を含む複数の負荷要因を表したものであることを特徴とする請求項9に記載の方法。
【請求項11】
前記負荷情報は、複数のプロセッサ機能を含む最新のサービス要求セットの処理を表したものであることを特徴とする請求項10に記載の方法。
【請求項12】
前記負荷情報は、サーバーコンピュータへの内部処理機能をあらわす1又はそれ以上の負荷値を含むことを特徴とする請求項11に記載の方法。
【請求項13】
負荷バランスされたネットワークサービスを提供するために操作されるサーバークラスターであって、
(a)対応の処理サービスを実行するサービス要求に独立して反応する複数のサーバーコンピュータであって、はじめに前記サービス要求に応答し負荷値及び重み値を提供するように動作し、前記負荷値及び重み値は現在のオペレーティング負荷を特定のサービス要求に関連する個々のサーバコンピュータのポリシーに基づく優先レベルであらわすサーバーコンピュータと、
(b)前記複数のサーバーコンピュータに対して前記サービス要求をそれぞれ自律的に発行するように動作するホストコンピュータシステムであって、目標のサーバーコンピュータを前記複数のサーバーコンピュータから選択し、前記負荷値及び重み値に基づいて特定のサービス要求の例示(インスタンス)を受信するように動作するホストコンピュータシステムと、を備えたサーバークラスター。
【請求項14】
前記ホストコンピュータは、前記複数のサーバーコンピュータに対するそれぞれのサービス要求の発行に関連して、前記負荷値及び重み値を前記複数のサーバーコンピュータから集めるように動作し、そして前記目標サーバーコンピュータの選択は、前記負荷値及び重み値の相対的な時間経過に基づいていることを特徴とする請求項13に記載のサーバークラスター。
【請求項15】
前記複数の各サーバーコンピュータは、それぞれに異なるサーバー構成(コンフィグレーション)の記憶装置のために提供するポリシーデータセットストアを含み、前記負荷値及び重み値は、前記サーバー要求に応じて、前記複数のサーバーコンピュータのそれぞれに異なるサーバー構成に基づき複数のサーバーコンピュータによって動的に定義されることを特徴とする請求項14に記載のサーバークラスター。
【請求項16】
前記それぞれに異なるサーバー構成(コンフィグレーション)が、前記複数のサーバーコンピュータの異なる識別性(アイデンティティ)を含むことを特徴とする請求項15に記載のサーバークラスター。
【請求項17】
前記それぞれに異なるサーバー構成(コンフィグレーション)が前記サービス要求に関連する個々のポリシーデータを含み、前記ホストコンピュータシステムはそれぞれの前記サービス要求に関連して協調して収集するとともに、前記複数のサーバーコンピュータに対して属性データを提供するよう動作し、そして前記サーバーコンピュータは前記重み値を定義するために前記個々のポリシーデータとあわせてその属性データを評価することを特徴とする請求項16に記載のサーバークラスター。
【請求項18】
前記複数のサーバーコンピュータが安全なサービス処理を実行し、前記ホストコンピュータシステムは、前記複数のサーバーコンピュータによって評価されるように、ネットワーク搬送データを前記サービス要求に依存する前記サーバーコンピュータ経由で選択的に送信するように動作することを特徴とする請求項17に記載のサーバークラスター。
【請求項19】
前記ホストコンピュータは、前記各サービス要求に関する個々のデータ転送トランザクションを開始するように動作し、前記各データ転送トランザクション経路の初期設定は、はじめに、前記サービス要求の中から対応するものを転送するために前記複数のサーバーコンピュータのそれぞれに提供し、そして、前記複数のサーバーコンピュータのそれぞれは、前記個々のデータ転送トランザクション内のネットワークデータの次の経路が前記個々のデータ転送トランザクション内のネットワークデータを前記複数のサーバーコンピュータを経由して転送することを特徴とする請求項18に記載のサーバークラスター。
【請求項20】
クライアントコンピュータシステムに代わって、ネットワークサービスを拡張可能なサーバーコンピュータシステム群を通じて提供するコンピュータシステムであって、
(a)定義されたサービスを提供するために接続された複数のサーバーコンピュータであって、前記サーバーコンピュータシステムに対して発行された所定のサービス要求の承認において、前記複数のサーバーコンピュータのうちの1つのサーバーコンピュータが負荷情報を含んだ応答を提供し、前記応答が前記所定のサービス要求の引受け拒否を選択的に示すような複数のサーバーコンピュータと、
(b)前記複数のサーバーコンピュータシステムの識別リストを有するクライアントコンピュータシステムであって、第1のサーバーコンピュータシステムを前記識別リストから自律的に選択して、そのコンピュータシステムに対して前記所定のサービス要求を発行するように動作し、前記所定のサービス要求の引受け拒否が示された上に前記応答に反応し、第2のサーバーコンピュータシステムを前記識別リストから自律的に選択して、そのコンピュータシステムに前記所定のサービス要求を発行し、そして、前記負荷情報の応答に反応して前記第1及び第2のサーバーコンピュータシステムを引き続き自律的に選択するようなクライアントコンピュータシステムと、を含むコンピュータシステム。
【請求項21】
前記応答が重み情報を更に含み、そして前記クライアントコンピュータシステムが前記負荷情報及び重み情報の組合わせを評価してサーバーコンピュータシステムを前記識別リストから自律的に選択することを特徴とする請求項20に記載のコンピュータシステム。
【請求項22】
前記複数のサーバーコンピュータシステムが個々のポリシーエンジンを含み、そして前記重み情報がサーバーコンピュータポリシー役割と前記所定のサービス要求との間の関連性を反映していることを特徴とする請求項21に記載のコンピュータシステム。
【請求項23】
前記所定のサービス要求が所定のクライアントプロセス属性情報を含み、そして前記個々のポリシーエンジンが前記所定のクライアントプロセス属性情報に反応して前記所定のサービス要求に関係するサーバーコンピュータポリシー役割を定義することを特徴とする請求項22に記載のコンピュータシステム。
【請求項24】
前記負荷情報が、ネットワーク及びサーバープロセッサ性能をあらわす値を含むことを特徴とする請求項23に記載のコンピュータシステム。
【請求項25】
ネットワークサービスを提供する複数のサーバーコンピュータシステムに対してクライアント要求の分配を動的に管理する方法であって、前記サーバーコンピュータシステムのそれぞれはクライアント要求に応えるために別々に構成され、
(a)特定のクライアント要求のために前記複数のサーバーコンピュータシステムの中の特定サーバーコンピュータシステムを選択し前記特定クライアント要求をサービスするクライアント要求処理ステップであって、前記特定サーバーコンピュータシステムの選択が蓄積された選択認定情報の評価に依存しているようなクライアント要求処理ステップと、
(b)前記特定クライアント要求を前記特定サーバーコンピュータシステムに転送するステップと、
(c)前記特定クライアント要求に関係する特定サーバーコンピュータシステムによって個別に定義された特定クライアント要求インスタンス選択認定情報に関する特定サーバーコンピュータシステムから受信するステップであって、前記インスタンス選択認定情報が前記蓄積された選択認定情報へ組み入れられるような受信ステップと、を含むことを特徴とする方法。
【請求項26】
前記処理ステップは、前記蓄積された選択認定情報について前記特定クライアント要求を動的に評価し、当該特定サーバーコンピュータシステムを前記複数のサーバーコンピュータシステムの最良な選択として特定することを特徴とする請求項25に記載の方法。
【請求項27】
その構成(コンフィグレーション)が別個のものであるような前記特定サーバーコンピュータシステムによって評価するステップを更に含み、前記特定クライアント要求が前記インスタンス選択認定情報を提供することを特徴とする請求項26に記載の方法。
【請求項28】
前記評価ステップは、前記特定サーバーコンピュータシステムの実行性能を反映する負荷値を含む前記インスタンス選択認定情報の動的生成のために提供されることを特徴とする請求項27に記載の方法。
【請求項29】
前記インスタンス選択認定情報が、前記特定サーバーコンピュータシステムに関する特定クライアント要求の相対的優先度を含むことを特徴とする請求項28に記載の方法。
【請求項30】
前記クライアント要求がクライアントコンピュータシステムに関して発行され、前記特定クライアント要求がその特定クライアント要求を発行した特定クライアントコンピュータシステムを記述する属性を含み、そして前記相対優先度が前記特定サーバーコンピュータシステムに関する前記属性の評価に反映されることを特徴とする請求項29に記載の方法。
【請求項31】
複数のクライアントシステムのためにデータ処理サービスの実行を支援するよう供給される複数のサーバーシステム上のコンピュータ負荷を分散する方法であって、前記コンピュータ負荷が複数のクライアントプロセスを通じて発行されたクライアント要求に応じて生成され、
(a)前記複数のクライアント処理のうちの個々のクラインと処理からの属性データを前記特定クライアント要求に関連づけるため特定のクライアント要求を処理する第1のステップと、
(b)前記特定のクライアント要求のために、前記特定クライアント要求を蓄積された選択情報とマッチングすることによって前記複数のサーバーシステムの中から特定の目標サーバーシステムを選択して前記特定の目標サーバーシステムを特定する選択ステップと、
(c)前記特定の目標サーバーシステムに関する負荷値を含み、且つ前記特定クライアント要求と前記特定の目標サーバーシステムとの組合わせを反映したインスタンス選択情報を動的に生成するために、前記特定の目標サーバーシステムによって前記属性データを含む特定クライアント要求を処理する第2のステップと、
(d)前記選択ステップにおいてその後に使用するために、前記インスタンス選択情報を前記蓄積された選択情報に組み入れるステップと、を含むことを特徴とする方法。
【請求項32】
前記インスタンス選択情報が、前記特定クライアント要求と前記特定目標サーバーシステムの組合わせを反映する相対的重み値を含み、そして前記選択ステップが、相対的重み値と負荷値の最良の組合わせに基づいて前記特定目標サーバーシステムを選ぶために、前記属性データを含む特定クライアント要求を前記蓄積された選択情報の対応データとマッチングさせることを特徴とする請求項31に記載の方法。
【請求項33】
前記選択ステップが前記蓄積された選択情報を古くさせる(aging)ステップを含むことを特徴とする請求項32に記載の方法。
【請求項34】
(a)ホストプロセスを通じて、属性データを含む前記特定クライアント要求を前記特定目標サーバーシステムへ提供する第1の提供ステップと、
(b)前記ホストプロセスによって、前記インスタンス選択情報を含む特定目標サーバー応答を受信するステップと、
(c)ホストプロセスによって、代わりの目標サーバーシステムを選択するか否かを前記特定目標サーバー応答から定義するステップと、
(d)前記特定クライント要求のために、前記特定クライアント要求を前記蓄積された選択情報とマッチングすることによって、第2の目標サーバーシステムを前記特定目標サーバー応答から受信したインスタンス選択情報を含む前記複数のサーバーシステムの中から再選択して、前記第2の目標サーバーシステムを識別するステップと、
(e)前記ホストプロセスを通じて、属性データを含む前記特定クライアント要求を前記代値目標サーバーシステムに提供する第2の提供ステップと、をさらに含むことを特徴とする請求項33に記載の方法。
【請求項35】
前記ホストプロセスはクライントコンピュータシステム上で実行されることを特徴とする請求項34に記載の方法。
【請求項36】
前記ホストプロセスは複数のクライアントコンピュータシステムとともにコミュニケーションネットワークを通して接続可能なゲートウェイコンピュータシステム上で実行されることを特徴とする請求項35に記載の方法。
【図1A】
【図1B】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図8】
【図9】
【図1B】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図8】
【図9】
【公表番号】特表2006−528387(P2006−528387A)
【公表日】平成18年12月14日(2006.12.14)
【国際特許分類】
【出願番号】特願2006−521139(P2006−521139)
【出願日】平成16年7月15日(2004.7.15)
【国際出願番号】PCT/US2004/022885
【国際公開番号】WO2005/008943
【国際公開日】平成17年1月27日(2005.1.27)
【出願人】(505140591)ヴォーメトリック インコーポレイテッド (4)
【公表日】平成18年12月14日(2006.12.14)
【国際特許分類】
【出願日】平成16年7月15日(2004.7.15)
【国際出願番号】PCT/US2004/022885
【国際公開番号】WO2005/008943
【国際公開日】平成17年1月27日(2005.1.27)
【出願人】(505140591)ヴォーメトリック インコーポレイテッド (4)
[ Back to top ]