(57)【要約】  ネットワーク・データ処理システムにおける既知のノードの組についてのトランザクションを監視するための方法、装置、およびコンピュータ命令。キャッシュ・データがデータ処理システム中のルータから受信される。このキャッシュ・データは、ネットワーク・データ処理システム上にトランザクションについてのデータ・パケットを送信する既知のノードの組の識別子を含んでいる。トランザクションは、ノードの組について、ルータからのキャッシュ・データを用いて追跡される。このようにして、ノードの組中の種々のノードについての作業のローディングが識別できる。【特許請求の範囲】
【請求項１】
ネットワーク・データ処理システムにおける既知のノードの組についてのトランザクションを監視するためのデータ処理システムにおける方法であって、
前記データ処理システム中のルータからキャッシュ・データを受信するステップであって、前記キャッシュ・データは、前記ネットワーク・データ処理システム上へトランザクションについてのデータ・パケットを送信する既知のノードの前記組の識別子を含むステップと、
ノードの前記組についてのトランザクションを前記ルータからの前記キャッシュ・データを用いて追跡するステップと
を含む方法。
【請求項２】
前記キャッシュ・データは、前記ルータ上に位置するアドレス解決プロトコル・キャッシュからのものである請求項１に記載の方法。
【請求項３】
前記ネットワーク・データ処理システム上の他のルータからキャッシュ・データを受信するステップをさらに含む請求項１に記載の方法。
【請求項４】
前記受信ステップは、周期的に生じ、
既知のノードの前記組中のノードにより扱われるトランザクションを、前記ルータから周期的に受信された前記キャッシュ・データを用いて識別するステップをさらに含む請求項１に記載の方法。
【請求項５】
既知のノードの前記組中の各ノードの使用状況を、前記キャッシュ・データを用いて分析するステップをさらに含む請求項１に記載の方法。
【請求項６】
既知のノードの前記組中の各ノードの使用状況の分析に応答して、負荷分散プロセスを選択的に開始するステップをさらに含む請求項５に記載の方法。
【請求項７】
既知のノードの前記組のグラフィカル表示を生成するステップをさらに含み、前記グラフィカル表示は、そのネットワーク・トラフィックがグラフィカル表示された通信パスを含む請求項４に記載の方法。
【請求項８】
前記キャッシュ・データは、前記ルータ上に位置するエージェントを介して受信される請求項２に記載の方法。
【請求項９】
前記エージェントは、データが前記データ処理システムに送信されるたびに、前記アドレス解決プロトコル・キャッシュをクリアする請求項８に記載の方法。
【請求項１０】
ネットワーク・データ処理システムにおける既知のノードの組についてのトランザクションを監視するためのデータ処理システムであって、
バス・システムと、
前記バス・システムに接続された通信ユニットと、
前記バス・システムに接続されたメモリであって、命令の組を含むメモリと、
前記バス・システムに接続された処理ユニットであって、前記データ処理システム中のルータからキャッシュ・データを受信するために命令の前記組を実行し、前記キャッシュ・データは、前記ネットワーク・データ処理システム上へトランザクションについてのデータ・パケットを送信する既知のノードの前記組の識別子を含み、前記ルータからの前記キャッシュ・データを用いてノードの前記組についての前記トランザクションを追跡する処理ユニットと
を含む、データ処理システム。
【請求項１１】
ネットワーク・データ処理システムにおける既知のノードの組についてのトランザクションを監視するためのデータ処理システムであって、
前記データ処理システム中のルータからキャッシュ・データを受信するための受信手段であって、前記キャッシュ・データは、前記ネットワーク・データ処理システム上へトランザクションについてのデータ・パケットを送信する既知のノードの前記組の識別子を含む受信手段と、
前記ルータからの前記キャッシュ・データを用いてノードの前記組についての前記トランザクションを追跡するための追跡手段と
を含む、データ処理システム。
【請求項１２】
前記キャッシュ・データは、前記ルータ上に位置するアドレス解決プロトコル・キャッシュからのものである請求項１１に記載のデータ処理システム。
【請求項１３】
前記受信手段は第１の受信手段であり、
前記ネットワーク・データ処理システム上の他のルータからキャッシュ・データを受信するための第２の受信手段をさらに含む請求項１１に記載のデータ処理システム。
【請求項１４】
前記受信手段は、周期的に開始され、
既知のノードの前記組中のノードにより扱われるトランザクションを、前記ルータから周期的に受信された前記キャッシュ・データを用いて識別するための識別手段をさらに含む請求項１１に記載のデータ処理システム。
【請求項１５】
既知のノードの前記組中の各ノードの使用状況を、前記キャッシュ・データを用いて分析するための分析手段をさらに含む請求項１１に記載のデータ処理システム。
【請求項１６】
既知のノードの前記組中の各ノードの使用状況の分析に応答して、負荷分散プロセスを選択的に開始するための開始手段をさらに含む請求項１５に記載のデータ処理システム。
【請求項１７】
既知のノードの前記組のグラフィカル表示を生成するための生成手段をさらに含み、前記グラフィカル表示は、そのネットワーク・トラフィックがグラフィカル表示された通信パスを含む請求項１４に記載のデータ処理システム。
【請求項１８】
ネットワーク・データ処理システムにおける既知のノードの組についてのトランザクションを監視するためのコンピュータ可読媒体中のコンピュータ・プログラムであって、
前記データ処理システム中のルータからキャッシュ・データを取得するための第１の命令であって、前記キャッシュ・データは、前記ネットワーク・データ処理システム上にトランザクションについてのデータ・パケットを送信する既知のノードの前記組の識別子を含む第１の命令と、
前記ルータからの前記キャッシュ・データを用いてノードの前記組についての前記トランザクションを追跡するための第２の命令と
を含む、コンピュータ・プログラム。
【請求項１９】
前記キャッシュ・データは、ルータ上に位置するアドレス解決プロトコル・キャッシュからのものである請求項１８に記載のコンピュータ・プログラム。
【請求項２０】
前記ネットワーク・データ処理システム上の他のルータからキャッシュ・データを受信するための第３の命令をさらに含む請求項１８に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、改善されたデータ処理システムに関し、特にノードの組中のノード使用状況を識別するための方法および装置に関する。より具体的には、本発明は、ノードにより扱われるトランザクションを識別するための方法、装置、およびコンピュータ命令に関する。
【背景技術】
【０００２】
ネットワーク・データ処理システムは、音声、ビデオまたはデータあるいはそれらの任意の組み合わせを種々のクライアント間で伝送するシステムである。このシステムのためのネットワークは、ネットワーク・データ処理システム内で接続された様々な機器とコンピュータとの間の通信リンクを提供するために使用される媒体を含む。これらの機器は、ワイヤまたはファイバ光学ケーブルのような恒久的接続、あるいは電話接続を介してなされる接続のような一時的接続を含む。サーバおよびクライアント・マシン以外の機器としては、ブリッジ、ルータ、およびスイッチが含まれる。加えて、ネットワーク・データ処理システムは、アンテナおよびタワーのような支援ハードウェアとの無線接続も含み得る。
【０００３】
広域ネットワーク（ＷＡＮ）およびローカル・エリア・ネットワーク（ＬＡＮ）のような、多くの種々のタイプのネットワークが存在する。ＬＡＮは、ある限られた地理的区域内のユーザに応対する通信ネットワークである。一般に、ＬＡＮは、ネットワーク実行可能なオペレーティング・システムを有するクライアントおよびサーバを使用する。ＷＡＮは、州または国のような広い地理的区域をカバーする通信ネットワークである。ＬＡＮは一般に、１つの建造物または複合施設に限定される。ネットワークの別の例はインターネットである。“インターネットワーク（ｉｎｔｅｒｎｅｔｗｏｒｋ）”とも呼ばれるインターネットは、送信ネットワークのプロトコルから受信ネットワークのプロトコルへのデータ転送およびメッセージの変換を扱うゲートウェイにより連結された、異なるものも含まれうる一組のコンピュータ・ネットワークである。大文字表記で始まる用語「Ｉｎｔｅｒｎｅｔ（インターネット）」は、ＴＣＰ／ＩＰプロトコル・スイートを使用するネットワークおよびゲートウェイの集まりを指す。
【０００４】
ビジネスおよびその他の組織は、ビジネスおよびその他のトランザクション（取引）を行うためにネットワーク・データ処理システムを使用する。これらのネットワークは、単一のＬＡＮ程度に小さくしたり、インターネット（Ｉｎｔｅｒｎｅｔ）を含む、多くのネットワークを包含したりすることもできる。
【０００５】
企業ネットワーク化は、多数のコンピュータ・システムおよびネットワークを持つ大企業またはビジネス組織におけるネットワーク・インフラストラクチャを使用することを伴う。これらのタイプのインフラストラクチャは、一般に極めて複雑である。種々の全く異なるネットワークおよびシステムの統合を計画および管理することに莫大な努力が費やされる。また、ニーズおよび要求が変わるにつれて付加的なインタフェースについての計画が生じる。
【０００６】
企業システムを管理する場合、これらのシステムは、種々のサービスを提供するために割り当てられた多くのサーバを含むことがよくある。これらのサーバの管理は、必要時にサービスが提供されることを保証する重要な機能である。プロセス要求にサービスを提供するために資源の割り振りを管理することは、重要かつ複雑なタスクである。資源の能力および使用状況を識別するプロセスの一部として、サーバのようなノードにより処理されるトランザクションを識別することは、感知された能力がそれらのノードについての実際の使用状況と一致することを保証する場合に使用するために重要である。
【０００７】
例えば、商品またはサービスを提供するオンライン・ビジネスをサポートするために設置されたウェブサイトについての要求を扱うために一組のサーバが供給され得る。医療記録、税金情報、または規則のようなデータへのアクセスを提供するためにもサーバを設置し得る。必要とされる資源は、クライアントからの使用状況および要求に応じて変わる。資源を供給する場合、資源の使用状況を識別することが重要である。もし使用状況が増大すれば、増大する要求を満たすために容量が追加されることがある。場合によっては、サーバの追加が不要なことがある。なぜならば、他のサーバが故障点まで酷使されていたりまたは期待されるサービスレベルを満たすことができなかったりする一方で、１つ以上の現在のサーバが十分に利用されていないことがあるからである。能力の不一致が、故障発生およびシステムのその後の分析により識別されることがよくある。これらの故障は、現在使用されている負荷分散手法が要求を満たすための能力を適切に監視および維持できない場合に、一般に生じる。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
アプリケーションが単純であり、状態がユーザからの多重要求を維持することを要求しない場合、通常のラウンド・ロビンまたはその他のそのような負荷分散手法は、要求を満たすための能力を維持するのに十分である。アプリケーションがより複雑であり、状態情報が多重要求を維持することを要求する場合には、現在利用可能な負荷分散技術は、要求を満たすための資源を十分に監視および管理できない。状態情報が維持される場合には、ユーザのセッションは、情報を提供する特定のサーバに関連付けられることが必要とされる。この状況は、「スティッキー負荷分散」と一般に呼ばれる。この場合に、トランザクションの維持のせいで単一のサーバが過負荷になるのは普通である。この問題は、ユーザがブラウザを使用する人間からウェブ・サービスを使用するコンピュータへ状況が変化する場合に増大する。これらの例において状態情報を維持しなければならないことの主な理由は、レガシー・システムにアクセスする必要があることである。
【０００９】
従って、ネットワーク・データ処理システム中のノードの組により扱われているトランザクションを識別するための改善された方法、装置、およびコンピュータ命令を有することは有利であろう。
【課題を解決するための手段】
【００１０】
本発明は、ネットワーク・データ処理システム中の既知のノードの組についてのトランザクションを監視するための方法、装置、およびコンピュータ命令を提供する。データ処理システム中のルータからキャッシュ・データが受信される。このキャッシュ・データは、ネットワーク・データ処理システム上にトランザクションについてのデータ・パケットを送信する既知のノードの組の識別子を含んでいる。トランザクションは、ルータからのキャッシュ・データを用いてノードの組について追跡される。このようにして、ノードの組中の種々のノードについての作業のローディングが識別できる。
【００１１】
本発明の好ましい実施形態を、添付図面に関連して単なる例として説明する。
【発明を実施するための最良の形態】
【００１２】
図に関連して、図１は、本発明の好ましい実施形態を実施し得る分散型データ処理システムを図示している。分散型データ処理システム１００は、本発明の好ましい実施形態を実施し得るコンピュータのネットワークである。分散型データ処理システム１００はネットワーク１０２を含み、このネットワーク１０２は、分散型データ処理システム１００内で一緒に接続された様々な機器およびコンピュータの間の通信リンクと提供するために用いられる媒体である。ネットワーク１０２は、ワイヤまたはファイバ光学ケーブルのような恒久的接続、あるいは電話接続を介してなされた一時的接続を含み得る。
【００１３】
図示された例において、サーバ・システム１０４が、ストレージ・ユニット１０６と共にネットワーク１０２に接続されている。サーバ・システム１０４は一般に、２つ以上のサーバを含み、「クラスタ」とも呼ばれる。加えて、クライアント１０８、１１０、および１１２も、ネットワーク１０２に接続されている。これらのクライアント１０８、１１０、および１１２は、例えば、パーソナル・コンピュータまたはネットワーク・コンピュータとすることができる。この用途の目的のために、ネットワーク・コンピュータは、ネットワークに連結された任意のコンピュータであり、このコンピュータは、そのネットワークに連結された別のコンピュータからプログラムまたは他のアプリケーションを受信する。示された例において、サーバ・システム１０４は、ブート・ファイル、オペレーティング・システム・イメージ、およびアプリケーションのようなデータを、クライアント１０８〜１１２に提供する。クライアント１０８、１１０、および１１２は、サーバ１０４に対するクライアントである。分散型データ処理システム１００は、付加的なサーバ、クライアント、および図示されない他の機器を含むことができる。図示された例において、分散型データ処理システム１００は、相互に通信するためにＴＣＰ／ＩＰプロトコル・スイートを使用するネットワークおよびゲートウェイの世界的な集まりを表すネットワーク１０２を有するインターネット（Ｉｎｔｅｒｎｅｔ）である。インターネット（Ｉｎｔｅｒｎｅｔ）の中心には、データおよびメッセージを送る数千の商業的、政府、教育、およびその他のコンピュータ・システムから成る大ノードまたはホスト・コンピュータの間の高速データ通信ラインのバックボーンがある。当然、分散型データ処理システム１００は、例えば、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、または広域ネットワーク（ＷＡＮ）のような多数の異なるタイプのネットワークとしても実施できる。図１は、１つの例とすることを意図するものであり、本発明の実施形態についての構造的限定を意図するものではない。
【００１４】
ここで図２に移ると、本発明の好ましい実施形態に従ってサーバ・システムが示してある。サーバ・システム２００は、図１におけるサーバ・システム１０４として実施し得る。この例におけるサーバ・システム２００は、クライアントからの要求を受信するルータ２０２を含む。ルータ２０２は、バス２０４に接続されている。このバスは、ネットワーク・ディスパッチャ２０６のための相互接続も提供する。ネットワーク・ディスパッチャ２０６は、「フロントエンド・プロセッサ」とも呼ばれる。サーバ・システム２００内にも、サーバ２０８、２１０、２１２、および２１４がある。これらのサーバは、これらの例においては同一のサーバである。同一のサーバは、要求を同じ速度で処理するサーバである。
【００１５】
ネットワーク・ディスパッチャ２０６は、ルータ２０２から要求を受信し、その要求を処理するためサーバ・システム２００内のサーバに送る。要求への応答が、これらの例においては、その要求を処理するサーバからルータ２０２を介してクライアントに返される。
【００１６】
本発明の好ましい実施形態に従って、サーバおよびサーバ・システム２００への要求を行うクライアントは、単一のサーバが見えるのみである。サーバ２０８、２１０、２１２、および２１４は、ネットワーク・アドレスだけでなく、サーバ・システム２００内で受信されたデータも共用する。例えば、サーバ・システム２００への要求は、インターネット・プロトコル（ＩＰ）アドレスのような特定のネットワーク・アドレスに対してなされる。ルータ２０２は、要求を受信し、この要求をネットワーク・ディスパッチャ２０６に送る。そして次に、ネットワーク・ディスパッチャ２０６は、その要求を処理するために適切なサーバに送信する。処理するために適切なサーバに要求を送るこのルーティングはトランスペアレントであり、要求をしているクライアントには見えない。図２におけるサーバ・システム２００の例示は、本発明の実施形態に対する構造的限定を暗示することを意図するものではない。例えば、４つのサーバのみがシステム中に例示されている。サーバ・システムを実施するために異なる数のサーバが使用できる。加えて、バス２０４は様々な形態を取り得る。バス２０４は、サーバ・システム２００内でデータを転送するためにローカル・エリア・ネットワークまたは何か他の共用資源機構の形態も取り得る。
【００１７】
図３を参照すると、サーバまたはネットワーク・ディスパッチャとして実施できるデータ処理システムを示すブロック図が本発明の好ましい実施形態に従って示してある。データ処理システム３００は、図２におけるサーバ２０８、２１０、２１２、または２１４のようなサーバとして実施できる。さらに、図２におけるネットワーク・ディスパッチャ２０６のようなネットワーク・ディスパッチャは、データ処理システム３００を用いて実施できる。
【００１８】
データ処理システム３００は、システム・バス３０６に接続された複数のプロセッサ３０２および３０４を含む対称型マルチプロセッサ（ＳＭＰ）システムとし得る。代わりに、単一プロセッサシステムを用いることができる。システム・バス３０６にメモリ・コントローラ／キャッシュ３０８も接続されており、これはローカル・メモリ３０９へのインタフェースを提供する。ＩＳＯバス・ブリッジ３１０は、システム・バス３０６に接続されており、Ｉ／Ｏバス３１２へのインタフェースを提供する。メモリ・コントローラ／キャッシュ３０８およびＩ／Ｏバス・ブリッジ３１０は、図示されるように統合できる。
【００１９】
Ｉ／Ｏバス３１２に接続された周辺装置相互接続（ＰＣＩ）バス・ブリッジ３１４は、ＰＣＩローカル・バス３１６へのインタフェースを提供する。多数のモデムがＰＣＩバス３１６に接続できる。典型的なＰＣＩバス実装は、４つのＰＣＩ拡張スロットまたはアドイン・コネクタをサポートする。図１におけるネットワーク・コンピュータ１０８〜１１２への通信リンクは、アドイン・ボードを介してＰＣＩローカル・バス３１６に接続されたモデム３１８およびネットワーク・アダプタ３２０を介して提供され得る。
【００２０】
付加的なＰＣＩバス３２２および３２４ブリッジは、付加的なＰＣＩバス３２６および３２８のためのインタフェースを提供し、これらの付加的なＰＣＩバスから付加的なモデムまたはネットワーク・アダプタがサポートされ得る。このようにして、データ処理システム３００は、複数のネットワーク・コンピュータへの接続を可能にする。メモリ・マップト・グラフィック・アダプタ３３０およびハードディスク３３２も、図示されるように、直接的か間接的に、Ｉ／Ｏバス３１２に接続され得る。
【００２１】
当業者は、図３に図示されたハードウェアが変わり得ることを理解するであろう。例えば、光ディスク・ドライブ等の他の周辺機器も、図示されたハードウェアに加えてまたはこれに代えて用い得る。図示された例は、本発明の実施形態についての構造的限定を暗示することを意図するものではない。
【００２２】
図３において図示されたデータ処理システムは、例えば、Ａｄｖａｎｃｅｄ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｅｘｅｃｕｔｉｖｅ（ＡＩＸ）（ＩＢＭ社の登録商標）オペレーティング・システムを実行するニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーションの製品であるＩＢＭ  ＲＩＳＣ／Ｓｙｓｔｅｍ  ６０００（ＩＢＭ社の登録商標）システムとすることができる。
【００２３】
本発明の好ましい実施形態は、ネットワーク・データ処理システム中の既知のノードの組についてのトランザクションを監視するための方法、装置、およびコンピュータ命令を提供する。本発明の好ましい実施形態の機構は、ネットワーク・データ処理システム中の１つ以上のルータからのキャッシュ・データを用いる。このキャッシュ・データは、ネットワーク・データ処理システム上にトランザクションについてのパケットを送信するノードの識別子を含んでいる。本明細書において用いられるように、トランザクションは、クライアントにおけるユーザ入力がサーバに送信される要求を生成することにより開始し、ユーザが位置するクライアントにより応答が受信されることにより終了する。
【００２４】
種々のノードにより扱われているトランザクションに基づき、ノード上のローディングが識別できる。このようにして、本発明の好ましい実施形態の機構により、ノードのすべてが一様に利用されているかどうかの識別が可能になる。その結果、トランザクションの分析が、使用状況について行い得る。この分析によって、サーバの供給または割り当てにおける能力および変化が分析に基づいて生じ得る。
【００２５】
図４に関して、ネットワーク・データ処理システムにおけるノードおよびノード間の関係を見出すために用いられる構成要素を例示する図が示してある。この説明的な例において、ルータ４００およびルータ４０２は、図１におけるネットワーク・データ処理システム１００のようなネットワーク・データ処理システム中に存在する。特に、これらの機器は、ネットワーク１０２の一部として設置できる。データ処理システム４０４は、これらの説明的な例において、ルータ４００およびルータ４０２中のデータ・キャッシュからデータを取得するために用いられる。
【００２６】
特に、データ処理システム４０４における監視プロセス４０６は、ルータ４００およびルータ４０２中にそれぞれ配置されたエージェント４０８およびエージェント４１０からデータを取得する。これらのエージェントは、ＡＲＰキャッシュ４１２およびＡＲＰキャッシュ４１４中のデータのスナップショットをそれぞれ取得するために用いられるプロセスまたはデーモンである。
【００２７】
エージェント４０８がＡＲＰキャッシュ４１２からデータを取得する場合、そのデータは、ＡＲＰキャッシュ４１２からクリアされる。このデータは、監視プロセス４０６に送信され、この監視プロセス４０６は、ＡＲＰキャッシュ４１２のスナップショットをノードデータ４１６中に格納する。同様に、エージェント４１０は、ＡＲＰキャッシュ４１４中のデータのスナップショットを取得し、その情報をノードデータ４１６中に格納するために監視プロセス４０６に送信する。その後、そのデータは、ＡＲＰキャッシュ４１４からクリアされる。
【００２８】
ＡＲＰキャッシュ４１２およびＡＲＰキャッシュ４１４は、ルータ４００またはルータ４０２を介して送られたパケットを送信したノードを識別するデータを含む。ルータ４００およびルータ４０２中のこれらのデータ・キャッシュからこの情報を取得することにより、パケットを伝送したノードを、たとえこれらのノードが返答のための直接的な要求に応答できなくても、識別し得る。このようにして、ネットワーク・データ処理システム上のノードの識別は、非侵入的な方法でなされる。
【００２９】
ノードデータ４１６を用いて、監視プロセス４０６は、マップ４１８を生成する。このマップは、ネットワーク・データ処理システム中のノードのグラフ表示を提示するために用いられる。さらに、このマップは、ネットワーク・トラフィックの識別だけでなく種々のノード間の通信パスの識別も含んでいる。
【００３０】
ここで図５に移ると、ルータについてのデータ・キャッシュ中のエントリのために格納された情報を例示する図が本発明の好ましい実施形態に従って示されている。エントリ５００は、これらの例におけるＡＲＰエントリ中に格納されるデータの例である。これらのエントリの各々は、ノードからルータを介したパケットのルーティングに応答して作られる。
【００３１】
エントリ５００は、ハードウェア・タイプ５０２、プロトコル・タイプ５０４、ＨＬＥＮ５０６、ＰＬＥＮ５０８、オペレーション５１０、送信機ハードウェア・アドレス（ＨＡ）５１２、送信機ＩＰ５１４、ターゲット・ハードウェア・アドレス（ＨＡ）５１６、およびターゲットＩＰ５１８を含んでいる。ハードウェア・タイプ５０２は、イーサネット（登録商標）アダプタのような、使用されているアダプタのタイプである。プロトコル・タイプ５０４は、メッセージを伝送するために使用されているプロトコルのタイプである。これらの例において、プロトコル・タイプはＩＰである。ＨＬＥＮ５０６は、バイトで表したハードウェア・アドレスの長さであるのに対して、ＰＬＥＮ５０８は、バイトで表したプロトコル・アドレスの長さである。オペレーション５１０は、要求または応答のような、実行されているオペレーションのタイプを示す。これらの例において、送信機ハードウェア・アドレス５１２は、メディア・アクセス制御（ＭＡＣ）アドレスであり、これは、パケットを伝送するノードからのパケットに含まれている。ＭＡＣアドレスは、あるアダプタをネットワーク上の他のすべてのアダプタから識別するためにそのアダプタに関連付けられた一意の一連番号である。送信機ＩＰ５１４は、ソース・アドレスとも呼ばれる、ノードのＩＰアドレスである。ターゲット・ハードウェア・アドレスは、ターゲット・ノード中のアダプタについてのＭＡＣアドレスである。ターゲットＩＰは、パケットについての宛先アドレスとも呼ばれる、宛先ノードのＩＰアドレスである。
【００３２】
ここで図６に移ると、ノードの使用状況を例示する図が、本発明の好ましい実施形態に従って示してある。図の６００は、ネットワーク・ディスパッチャ６０２およびルータ６０４を示している。ルータ６０４は、例えば、図４におけるルータ４００とし得る。加えて、サーバ６０６、６０８、６１０、および６１２が図の６００に示してある。接続６１４、６１６、６１８、６２０、および６２２が、図の６００における種々のノードについて示してある。
【００３３】
この図において、接続６１６、６１８、６２０、および６２２は、対象となっているサーバについてのノード間の相対トラフィックを例示する。これらの説明的な例において、サーバ６０６、６０８、６１０、および６１２は、図２におけるサーバ２０８、２１０、２１２、および２１４に対応する。サーバ６０６および６０８により扱われるトランザクションは、サーバ６１０および６１２により扱われるトランザクションよりも大きい。この説明的な例において、接続６１６は、サーバ６１２についてどのようなトラフィックも存在しないことを示すために点線で示してある。トラフィックに関するこの推論は、ルータ６０４についてのデータ・キャッシュ中にどのようなデータも存在しないことによりなされる。
【００３４】
キャッシュ中にデータが存在しないことは、トランザクションがサーバ６１２により扱われていないことを示す。結果として、サーバ６１２の分析または検査が、なぜトランザクションがこの特定のサーバによって扱われていないかを識別するためになされ得る。そのような特徴は、個別の実施に応じて負荷分散プロセスを開始するためにも使用できる。このようにして、トラフィックをサーバ６１２に送ることができ、種々のサーバにより扱われる負荷を分散するためにより少ないトラフィックがサーバ６０６および６０８に送られる。このタイプの監視は、非侵入的な方法によるマシン間の負荷分散の識別を考慮に入れている。多くの場合、トランザクションを処理するためにＣＰＵサイクルを追加して提供するために高負荷時、特定のサーバの監視がオフにされる。この状況は、時間および資金が決定的に影響するトランザクションが行われる貿易商社または銀行のためのサーバ・システムのようなサーバ・システムで生じ得る。図６においてノードおよび接続が示される方法は、情報が提示され得る様式を限定するとは知られていない。例えば、種々の色およびアニメーションを、これらの接続についての線分の太さに代えてまたはそれに加えて用い得る。
【００３５】
ここで図７に移ると、キャッシュからデータのスナップショットを取得するためのプロセスについてのフローチャートが本発明の好ましい実施形態に従って示してある。図７に例示されるプロセスは、図４におけるＡＲＰキャッシュ４１２のようなデータ・キャッシュからデータを取得するために図４におけるエージェント４０８のようなエージェントにおいて実施できる。
【００３６】
プロセスは、キャッシュからデータを取得する（ステップ７００）ことにより開始する。その後、そのデータは監視プロセスに送信される（ステップ７０２）。この説明的な例において、監視プロセスは、図４における監視プロセス４０６のようなプロセスである。その後、データ・キャッシュはクリアされ（ステップ７０４）、プロセスはその後終了する。
【００３７】
このプロセスは、エージェント・プロセスによって実行されるタイマに基づいてある周期で開始できる。さらに、このプロセスは、ある事象に応答して監視プロセスにより生成された要求を介して開始できる。この事象は、個別の実施に応じて周期的または非周期的であり得る。事象は、説明的な例において、タイマの満了に基づいたり、ネットワーク管理者により生成されたなんらかの要求に基づいたりすることができる。
【００３８】
次に図８に関して、ネットワーク・データ処理システム中のノードにより扱われるトランザクションを識別するためのプロセスのフローチャートが本発明の好ましい実施形態に従って示してある。図８に例示されるプロセスは、図４における監視プロセス４０６のような監視プロセスにおいて実施できる。プロセスは、ルータ上のエージェントからデータを受信することにより（ステップ８００）開始する。その後、データが格納される（ステップ８０２）。このデータは、ノード・データ４１６のようなデータ構造中に格納される。ノードについてのトラフィックが更新される（ステップ８０４）。
【００３９】
その後、マップ中のパスが更新される（ステップ８０６）。この更新は、監視されている種々のノードにより扱われているトランザクションについてのトラフィック量を示すために用いられる。次に、ノード使用状況が分析される（ステップ８０８）。その後、プロセスはステップ８００に戻る。
【００４０】
ステップ８０８におけるこの分析は、ノードの組内のノードの使用状況を決定するための様々な統計的プロセスまたはアルゴリズムを介して行うことができる。このプロセスは、実行されている特定の機能について十分に利用されていないまたは過剰利用されているノードを識別し得る。
【００４１】
スティッキー負荷分散が用いられる環境において、セッションは、サーバのプール全体にわたる初期トラフィックを拡散させるためにそのセッションが始まったサーバとのその関連を維持しなければならない。１つの説明的な例において、プールは３つのサーバを含む。プール中のサーバ上での負荷が増大すると、より多くのサーバがプールに追加される。セッションは長期稼働なので、作業はプール中の新しいサーバに配分されない。この例では、新しいサーバは、十分に利用されないことがある。この場合、これらのサーバを再生しそれらを他の場所で用いるのがより良い。プールが５つのサーバを有しており、長期稼働セッションをサポートするために３つのサーバのみが用いられていれば、同様なケースが存在する。本発明の好ましい実施形態の機構は、どのような作業も実行していない２つのサーバを識別するために用い得る。
【００４２】
説明的な例におけるこれらの状況は存在する。なぜならば、これらのシステムは、最良の実施が生じる前に設計および作成されたものであり、これらの環境についての書き換えは、コードの９０パーセントを置き換えることに近いことを必要とするであろう基本レベルにあるからである。企業合併の間にシステム統合が行われる場合にもこの問題は生じる。
【００４３】
図９に関して、負荷分散プロセスを初期化するためのプロセスのフローチャートが本発明の好ましい実施形態に従って示してある。図９において例示されるプロセスは、図４における監視プロセス４０６のような監視プロセスにおいて実施できる。
【００４４】
プロセスは、ノードが選択されたしきい値より小さいトランザクションと共に存在しているかどうかを決定することにより開始する。ノードがなんらかの選択されたしきい値より小さいトランザクションと共に存在していれば、負荷分散プロセスが開始され（ステップ９０２）、その後プロセスは終了する。再度ステップ９００に関し、ノードが選択されたしきい値より小さいトランザクションと共に存在していなければ、ノードがしきい値より大きいトランザクションと共に存在しているかどうかについて決定がなされる（ステップ９０４）。ステップ９００におけるしきい値およびステップ９０４におけるしきい値は、説明的な実施形態においては異なる値である。これらのしきい値についての正確な値は、個別の実施に依存する。
【００４５】
ノードがしきい値より大きいトランザクションと共に存在していれば、プロセスは、前述のように進行する（ステップ９０２）。そうでなければ、プロセスは終了する。
【００４６】
従って、トランザクションを識別し、トランザクションをサポートする能力を管理するための改善された方法、装置、およびコンピュータ命令が提供される。この機構は、種々のノードにより扱われているトランザクションを決定するために、ルータのキャッシュ中に見出されるデータを利用する。これらの例においては、ノードの存在が知られており、特定のノードについてのデータがないことは、そのノードがトランザクションを扱っていないことを示す。
【００４７】
さらに、このデータは、種々のノードおよびこれらのノードにより扱われているトランザクションを図示するマップまたは表示を生成するために用いることができる。このようにして、能力とサービスについての要求との間の一致が満たされることを保証するために、負荷分散、サーバの割り当てまたは割り振りの調整を行うことができる。本発明の実施形態が完全に機能的なデータ処理システムの文脈で説明されてきた一方で、当業者は、これらのプロセスが命令のコンピュータ可読媒体の形態および様々な形態で配布され得ること、ならびにこのアプローチは、配布を実行するために実際に使用されている信号生成媒体の個別のタイプにかかわらず、等しく適用されることを理解するであろうことを指摘するのは重要である。コンピュータ可読媒体の例としては、フレキシブル・ディスク、ハードディスク・ドライブ、ＲＡＭ、ＣＯ−ＲＯＭ、ＤＶＤ−ＲＯＭのような記録可能型媒体、ならびにデジタルおよびアナログ通信リンク、例えば、無線周波数および光波伝送のような伝送形態を用いる有線または無線通信リンクが含まれる。コンピュータ可読媒体は、個別のデータ処理システムにおいて実際に使用するために復号される符号化型式の形態を取ることができる。
【図面の簡単な説明】
【００４８】
【図１】本発明の好ましい実施形態を実施し得る分散型データ処理システムを図示する。
【図２】本発明の好ましい実施形態に従って図示されたサーバ・システムである。
【図３】本発明の好ましい実施形態に従ってサーバまたはネットワーク・ディスパッチャとして実施し得るデータ処理システムを図示するブロック図である。
【図４】ネットワーク・データ処理システム中のノードおよびノード間の関係を見出すために用いられる構成要素を例示する図である。
【図５】本発明の好ましい実施形態に従ってルータについてのデータ・キャッシュ中のエントリのために格納された情報を例示する図である。
【図６】本発明の好ましい実施形態に従ってノードの使用状況を例示する図である。
【図７】本発明の好ましい実施形態に従ってデータのスナップをキャッシュから取得するためのプロセスについてのフローチャートである。
【図８】本発明の好ましい実施形態に従ってネットワーク・データ処理システム中のノードにより扱われるトランザクションを識別するためのプロセスのフローチャートである。
【図９】本発明の好ましい実施形態に従って負荷分散プロセスを起動するためのプロセスのフローチャートである。
【図１】
2007518172.tif 000002
【図２】
2007518172.tif 000003
【図３】
2007518172.tif 000004
【図４】
2007518172.tif 000005
【図５】
2007518172.tif 000006
【図６】
2007518172.tif 000007
【図７】
2007518172.tif 000008
【図８】
2007518172.tif 000009
【図９】
2007518172.tif 000010
【国際調査報告】
2007518172.tif 000011
2007518172.tif 000012
2007518172.tif 000013
2007518172.tif 000014
2007518172.tif 000015