(57)【要約】      （修正有）【課題】サーバの負荷分散を適切に行なうことのできる負荷分散装置を提供する。【解決手段】ロードバランサ１０は、振り分けテーブル２１に負荷分散対象として登録されたサーバに対し、入力パケットを、サーバにかかる負荷が均等になるように分配する。レスポンス計測装置１１は、スイッチＳＷ（２）を通過するサーバ宛のパケットと、サーバからの応答パケットの到着時刻から、応答時間を計測する。応答時間が所定値より大きいサーバがある場合には、このサーバは過負荷状態であると判断し、ロードバランサ１０に対し、当該サーバを負荷分散対象から除外するように指示を出す。【選択図】図２
2011197796.tif 000002
【特許請求の範囲】
【請求項１】
複数の端末からのリクエストを処理する複数のサーバに対する負荷を分散制御する負荷分散制御装置において、
前記複数のサーバ毎に、前記端末からのリクエストに対する応答時間を計測し、該応答時間が第１の所定値より大きくなった場合に、該応答時間が第１の所定値より大きいサーバを負荷分散対象から除外するための除外指示を出力するレスポンス計測手段と、
該レスポンス計測手段からの除外指示に従い、該除外指示に示されたサーバを負荷分散対象から除外し、その他のサーバに対し、該複数の端末からのリクエストを、サーバの負荷が分散するように転送する負荷分散手段と、
を備えることを特徴とする負荷分散制御装置。
【請求項２】
前記レスポンス計測手段は、
負荷分散対象から除外されていたサーバの前記応答時間が、該第１の所定値以下の第２の所定値以下となった場合に、負荷分散対象から除外されていたサーバを、負荷分散対象に復帰させるべき旨の復帰指示を出力し、
前記負荷分散手段は、
該復帰指示に従い、負荷分散対象に復帰させるべき旨の指示が示すサーバを含めた複数のサーバに対し、前記複数の端末からのリクエストを、サーバの負荷が分散するように転送する、
ことを特徴とする請求項１に記載の負荷分散制御装置。
【請求項３】
前記負荷分散手段は、ラウンドロビン方式により、サーバへの負荷分散処理を行うことを特徴とする請求項１に記載の負荷分散制御装置。
【請求項４】
前記負荷分散手段は、
該負荷分散手段に接続されたサーバの識別子と、対応するサーバを負荷分散処理の対象とするか否かを示すフラグを登録したテーブルを有する、
ことを特徴とする請求項１に記載の負荷分散制御装置。
【請求項５】
前記第1の所定値は、過負荷となっていない時のサーバの平均応答時間に、予め与えられる値を加算した値であることを特徴とする請求項２に記載の負荷分散制御装置。
【請求項６】
前記第２の所定値は、過負荷となっていない時のサーバの平均応答時間であることを特徴とする請求項２に記載の負荷分散制御装置。
【請求項７】
複数の端末からのリクエストを処理する複数のサーバに対する負荷を分散制御する負荷分散制御方法であって、
前記複数のサーバ毎に、前記端末からのリクエストに対する応答時間を計測し、該応答時間が第１の所定値より大きくなった場合に、該応答時間が第１の所定値より大きいサーバを負荷分散対象から除外するための除外指示を出力し、
該除外指示に従い、該除外指示に示されたサーバを負荷分散対象から除外し、その他のサーバに対し、該複数の端末からのリクエストを、サーバの負荷が分散するように転送する、
ことを特徴とする負荷分散制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、負荷分散制御装置に関する。
【背景技術】
【０００２】
近年、インターネット等のコンピュータネットワークの利用が広く進み、クライアント端末からサーバにデータを送り、サーバが処理後のデータをクライアントに送信することが盛んに行なわれている。このように、サーバに所定に処理を依頼することにより、ネットワーク店舗などのさまざまなサービスが提供されている。しかし、サーバには、多くのクライアント端末からのリクエストが集中するため、サーバには大きな処理能力が必要とされる。この場合、１台のサーバで対応しようとすると、サーバの必要とされる処理能力が大きくなりすぎてしまうため、複数台のサーバを用意し、これらのサーバの間で、リクエストを分散して処理することが行われる。しかし、単に、リクエストを複数のサーバに振り分けるだけでは、１つのサーバに負荷がかかりすぎてしまったり、あるサーバは、ほとんどリクエストを処理していないなどの問題が生じたりする。したがって、複数のサーバの前段に、サーバにかかる負荷が均等になるようにリクエストを配分する負荷分散装置を設け、負荷分散を行なうことが行なわれる。
【０００３】
一般的に負荷分散装置（ロードバランサ）の負荷分散アルゴリズムは動的に分散する仕組みであり、主にラウンドロビン方式を用いたり、コネクション数、HTTPヘッダなどを元に判断している。
【０００４】
この中でも、ラウンドロビン方式について説明する。ラウンドロビン方式の負荷分散装置は、負荷分散対象の複数のサーバの前段に接続され、クライアント端末から送られてくるリクエストを順番にサーバに振り分ける。すなわち、例えば、１０台のサーバがあったとすると、最初のリクエストは１番目のサーバに、２番目のリクエストは２番目のサーバに、というように振り分ける。次に来るリクエストは次のサーバに振り分けるようにし、１０番目のサーバにリクエストを振り分けた後の、次のリクエストは、１番目のサーバに振り分けるというように、巡回的にサーバにリクエストを振り分けるものである。
【０００５】
従来技術においては、パケット通信の応答量が平均通信特性より所定量以上大きい場合に異常と判断する方式や、負荷分散の方法として、一番速く応答しているサーバを選択する方式がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１５９６４６号公報
【特許文献２】特開２００２−３５１７６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、従来技術においては、一時的にサーバの負荷が高くなった場合、処理遅延が発生し、効率的にサーバが使用（負荷が分散）されていない場合がある。
本発明の課題は、サーバの負荷分散を適切に行なうことのできる負荷分散装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明の一側面における負荷分散制御装置は、複数の端末からのリクエストを処理する複数のサーバに対する負荷を分散制御する負荷分散制御装置において、前記複数のサーバ毎に、前記端末からのリクエストに対する応答時間を計測し、該応答時間が第１の所定値より大きくなった場合に、該応答時間が第１の所定値より大きいサーバを負荷分散対象から除外するための除外指示を出力するレスポンス計測手段と、該レスポンス計測手段からの除外指示に従い、該除外指示に示されたサーバを負荷分散対象から除外し、その他のサーバに対し、該複数の端末からのリクエストを、サーバの負荷が分散するように転送する負荷分散手段とを備える。
【発明の効果】
【０００９】
本発明によれば、サーバの負荷分散を適切に行なうことのできる負荷分散装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の機器構成を示すブロック図である。
【図２】本実施形態の装置のブロック図である。
【図３】本実施形態の動作を段階を追って説明する図（その１）である。
【図４】本実施形態の動作を段階を追って説明する図（その２）である。
【図５】本実施形態の動作を段階を追って説明する図（その３）である。
【図６】本実施形態の動作を段階を追って説明する図（その４）である。
【図７】本実施形態の処理フロー（その１）である。
【図８】本実施形態の処理フロー（その２）である。
【図９Ａ】本実施形態の処理フロー（その３）である。
【図９Ｂ】本実施形態の処理フロー（その３）である。
【図１０】本実施形態の処理フロー（その４）である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本実施形態について説明する。
図１は、本実施形態の機器構成を示すブロック図である。
クライアント端末ＣＬ０１〜ＣＬ０３は、サーバＳＶ０１〜ＳＶ０３に、データ処理のリクエスト（データ処理要求）を送信する。クライアント端末ＣＬ０１〜ＣＬ０３、サーバＳＶ０１〜ＳＶ０３は、それぞれ３台ずつ図示されているが、これらの台数はそれぞれ任意の数（複数）でよい。クライアント端末ＣＬ０１〜ＣＬ０３から送信されるリクエストは、スイッチＳＷ（１）において切り替え処理がなされる。異なる伝送路を伝搬してスイッチＳＷ（１）に入力されたリクエストは、スイッチＳＷ（１）において切り替え処理されることにより、１つの伝送路上に送出される。スイッチＳＷ（１）から出力されたリクエストは、ロードバランサ１０において、どのサーバＳＶ０１〜ＳＶ０３に振り分けるかが決定される。振り分け先が決定されると、リクエストのデータパケットのヘッダの宛先アドレスが、振り分け先のサーバＳＶ０１〜ＳＶ０３のものに書き換えられる。宛先アドレスの書き換え方法は、既存の方法を使用すればよい。
【００１２】
ロードバランサ１０から出力されたリクエストは、スイッチＳＷ（２）において、宛先サーバＳＶ０１〜ＳＶ０３への伝送路に切り替え出力される。リクエストを受け取ったサーバＳＶ０１〜ＳＶ０３は、リクエストを受け取った旨の内容を含むリクエスト応答（ＡＣＫ：Acknowledgement）を、リクエスト送信元のクライアント端末ＣＬ０１〜ＣＬ０３に送る。
【００１３】
レスポンス計測装置１１は、クライアント端末ＣＬ０１〜ＣＬ０３から送出されるリクエストや、サーバＳＶ０１〜ＳＶ０３から送出されるリクエスト応答のデータパケットをコピーし、キャプチャして、パケットの宛先などを解析する。レスポンス計測装置１１では、クライアント端末ＣＬ０１〜ＣＬ０３から送出されるリクエストのパケットの宛先を抽出し、どのサーバＳＶ０１〜ＳＶ０３宛てのパケットかを検出する。また、サーバＳＶ０１〜ＳＶ０３からリクエスト応答のパケットから、送信元のサーバＳＶ０１〜ＳＶ０３を特定する。そして、あるサーバＳＶ０１〜ＳＶ０３へのリクエストが通過してから、そのサーバＳＶ０１〜ＳＶ０３からのリクエスト応答が通過するまでの時間を計測する。そして、計測された応答時間が、通常時（過負荷となっていない時）の平均の応答時間に比較して長いか否かを判定し、計測された時間が平均の応答時間より長い場合には、過負荷状態が発生していると判断する。計測された応答時間と比較する値は、通常時の平均応答時間ではなく、これに、予め設定された値を加えた値としても良い。計測された応答時間が通常の平均応答時間より長くても、少々長いだけであれば、過負荷状態以外の原因で応答時間が長くなる可能性があるからである。
【００１４】
そして、過負荷状態が発生しているサーバＳＶ０１〜ＳＶ０３の識別子を含む指示をロードバランサ１に送信し、ロードバランサ１０に、過負荷状態が発生しているサーバＳＶ０１〜ＳＶ０３を負荷分散対象から除外し、リクエストが転送されないようにする。そして、過負荷状態が発生していたサーバＳＶ０１〜ＳＶ０３の、計測される応答時間が平均応答時間以下になった場合には、レスポンス計測装置１１は、ロードバランサ１０に、当該サーバＳＶ０１〜ＳＶ０３を負荷分散対象に含めるように指示し、リクエストが再び転送されるようにする。なお、除外されていたサーバを負荷分散対象に復帰させる場合の、応答時間の基準値は、平均応答時間でなくても、より小さな値でもよい。また、これは、過負荷状態を判定するための値より小さい値で、平均応答時間よりは大きい値としても良い。サーバを復帰させるための判断の基準値を過負荷状態を判定するための値より小さい値とするのは、過負荷状態になってから十分な時間が経過し、たまっていたリクエストを十分処理しきるようにするためである。
【００１５】
また、上記において、負荷分散対象に含めるとは、リクエストの配送先として登録しておくことであり、負荷分散対象から除外するとは、リクエストの配送先として登録しないことである。
【００１６】
図２は、本実施形態の装置のブロック図である。
図２は、図１において、ロードバランサ１０からサーバＳＶ０１〜ＳＶ０３側の構成を示している。図１と同じ構成要素には、同じ参照符号を付し、説明を省略する。また、便宜のため、サーバは、サーバＳＶ０１〜ＳＶ０３の３台だけ示している。
【００１７】
ロードバランサ１０の負荷分散アルゴリズムは任意のものでよいが、ここでは、便宜上、ラウンドロビン方式を採用しているとする。ロードバランサ１０には、ロードバランサ１０に接続された、クライアント端末からの同様のリクエストを処理可能なサーバＳＶ０１〜ＳＶ０３が登録された振り分けテーブル２１が設けられている。振り分けテーブル２１には、振り分け対象のサーバの識別子が登録されると共に、この識別子に対応して、そのサーバを負荷分散対象とするか否かを示す有効フラグが登録される。有効フラグが「有効」となっている場合には、対応するサーバは、負荷分散対象となり、ラウンドロビン方式では、リクエストが順次振り分けられる。一方、有効フラグが「無効」となっている場合には、対応するサーバは、負荷分散対象とはならず、リクエストの振り分けは停止される。
【００１８】
レスポンス計測装置１１には、キャプチャデータデータベース２０が設けられている。キャプチャデータデータベース２０は、スイッチＳＷ（２）において、コピーされ、キャプチャされたパケットが格納される。レスポンス計測装置１１は、キャプチャデータデータベース２０からキャプチャされたパケットを読み出し、リクエストのパケットの宛先サーバのアドレスや、リクエスト応答のパケットの送信元のサーバのアドレスなどを抽出する。そして、リクエストの受信時刻から、そのリクエストの宛先サーバからのリクエスト応答の受信時刻までの応答時間を計測する。計測時間が、通常時の平均応答時間に所定値を加えた値よりも長い場合には、対応するサーバに過負荷状態が発生していると判断し、ロードバランサ１０に、当該サーバを負荷分散対象から切り離すよう指示を出す。この指示を受けたロードバランサ１０は、振り分けテーブル２１の対応する有効フラグを「無効」とし、対応するサーバが負荷分散処理から除外されるようにする。計測時間が、通常時の応答時間に所定値を加えた値以下の場合には、負荷は適正であるとして、特にロードバランサ１０には、指示を出さない。
【００１９】
過負荷状態のサーバについては、過負荷状態が検出された後も、応答時間を計測する。応答時間が、通常時の平均応答時間以下になった場合には、レスポンス計測装置１１は、ロードバランサ１０に対し、当該サーバを負荷分散対象に復帰させるように指示を出す。
【００２０】
過負荷状態の判断においては、上記では、計測された応答時間を、通常時の平均の応答時間に所定値を加えた値と比較するとしたが、例えば、システムの設計者が、サーバのサービス提供品質の基準として、予め応答時間の設定値を決定しておいても良い。そして、計測された応答時間と応答時間の設定値とを比較し、計測された応答時間が設定値より大きければ、過負荷状態とし、設定値以下ならば適性状態と判断するようにしても良い。
【００２１】
図３〜図６は、本実施形態の動作を段階を追って説明する図である。
図３においては、クライアント端末ＣＬ（１）〜ＣＬ（３）からリクエストが送信され、ロードバランサがサーバＳＶ（１）〜ＳＶ（３）に負荷分散処理を行なって、リクエストを分配する。スイッチ（１）、（２）は、それぞれ図１のスイッチＳＷ（１）、ＳＷ（２）と同じである。
【００２２】
図３において、まず、ロードバランサ〜サーバ間の通信パケットをキャプチャし、レスポンス計測装置でモニタリングを行う。ここで、ロードバランサとは別装置のレスポンス計測装置で、パケットをキャプチャしたキャプチャデータを監視する。
【００２３】
そして、キャプチャデータからサーバの応答時間を定常的に計測し、通常時のレスポンス時間を管理する。または、理論上の応答時間を算出し設定する。リクエスト応答はＬ７レベルのものを管理し、遅延もＬ７レベルで検出できる方法とする。ここで、Ｌ７レベルというのは、通信プロセスの階層のことを言っている。通常、通信プロセスは、物理レベルなどのＬ１レベルから、アプリケーションレベルのＬ７レベルまであり、Ｌ７レベルのリクエスト応答を管理するとは、サーバとクライアント端末間のアプリケーション同士の通信におけるリクエスト応答を管理することを言っている。Ｌ７レベルのリクエスト応答の管理とは、ユーザデータの転送に対するその応答の管理を行なうという意味である。
【００２４】
そして、サービス提供業務中のキャプチャデータからモニタされる応答時間と、上記の管理もしくは設定している応答時間と比較して、一定時間以上の応答時間の遅延を検出したタイミングで対象サーバへのパケットの振向けを停止するようロードバランサに指示をする。
【００２５】
図３においては、ロードバランサにおいて、サーバＳＶ（１）〜ＳＶ（３）の全てが分散処理対象となっているが、レスポンス計測装置において、サーバＳＶ（１）に応答時間の遅延が発生していることが検出された様子を示している。
【００２６】
新たな通信を、負荷分散対象外のサーバ以外に振向けることにより、負荷分散対象外のサーバは更なる高負荷状態にならず、新規通信は、一定の応答速度を維持できるサーバで処理されるため、応答遅延を回避することができる（応答遅延が解消されたら振り分け停止を解除させる）。
【００２７】
スイッチ（２）のロードバランサが接続されているポートの通信をキャプチャし、レスポンス計測装置が接続されているポートでモニタリングする。
モニタリングしたキャプチャデータからレスポンス計測装置が、サーバＳＶ（１）〜ＳＶ（３）で行われる通信を解析し、それぞれの通信応答時間を算出する。解析した通信応答時間の結果から、遅延の発生を検知する。
【００２８】
図４において、レスポンス計測装置からロードバランサに対して、遅延が確認されたサーバＳＶ（１）に対して新たな通信を配分しないよう分散停止指示を送信する。
図４においては、レスポンス計測装置で応答遅延が検出されたサーバＳＶ（１）を、負荷分散対象外とするように、レスポンス計測装置からロードバランサに指示が送られたところであり、ロードバランサにおいて、サーバＳＶ（１）が負荷分散対象から除外されている。
【００２９】
図５において、ロードバランサは、レスポンス計測装置からの負荷分散停止指示により、サーバＳＶ（１）を負荷分散不可とし、新たな通信をサーバＳＶ（１）に転送しない動作を行う。図５では、新たに、クライアント端末ＣＬ（４）が、リクエストを送信している。クライアント端末ＣＬ（４）のリクエストは、負荷分散処理対象外のサーバＳＶ（１）を除いた他のサーバＳＶ（２）、ＳＶ（３）のいずれかに振り分けられる。図５においては、クライアント端末ＣＬ（４）からのリクエストは、サーバＳＶ（２）に振り分けられている。
【００３０】
図６においては、レスポンス計測装置にて、サーバＳＶ（１）の通信における応答時間の正常が確認されたために、レスポンス計測装置からロードバランサに対して、サーバＳＶ（１）を負荷分散処理対象に含めるため、負荷分散再開指示を送信する。これにより、クライアント端末ＣＬ（４）のリクエストは、サーバＳＶ（１）にも振り分けられる場合が発生するようになる。図６では、クライアント端末ＣＬ（４）のリクエストがサーバＳＶ（１）に振り分けられている様子が示されている。
【００３１】
サーバで応答遅延が発生するほど一時的に負荷が高くなるような状態が発生した場合に、新たな通信が負荷分散され、応答遅延が発生しているサーバに転送されると、更なる高負荷状態に陥ってしまう。しかし、上記のような構成によれば、業務通信の応答遅延を検知し、負荷分散対象から除外することでサービスの応答時間を適正に保つことが可能となる。
【００３２】
図７〜図１０は、本実施形態の処理フローである。
図７は、全体処理のフローチャートである。図７の処理は、クライアント端末とサーバの間の通信の開始から終了まで繰り返して実行される。
【００３３】
処理が開始されると、ステップＳ１０において、レスポンス計測装置は、応答時間の計測処理を行う。通信が行われている間は、常時パケットをキャプチャし、応答時間の計測を行なう。ここで、パケットをキャプチャするとは、伝送路を転送されているパケットをコピーし、コピーしたパケットをレスポンス計測装置のキャプチャデータデータベースに格納することを示す。そして、クライアント端末からのリクエストを含むパケットの宛先アドレスを抽出する。また、サーバからのリクエスト応答を含むパケットの送信元アドレスを抽出する。そして、宛先アドレスと送信元アドレスが一致するパケットの到着時刻の差を応答時間として取得する。
【００３４】
ステップＳ１１においては、ステップＳ１０において計測された応答時間を、例えば、通常時の平均応答時間に所定値を加えた値、あるいは、予め決められた設定値と比較し、計測された応答時間が平均の応答時間に所定値を加えた値、あるいは、設定値より大きいサーバを高負荷状態のサーバであるとして検出する。
【００３５】
ステップＳ１２において、高負荷状態のサーバの識別子を、ロードバランサに通知する。そして、ステップＳ１３において、ロードバランサは、高負荷状態のサーバを負荷分散処理の対象外とする処理を行なう。具体的には、振り分けテーブルの対応する有効フラグを「無効」と設定する。また、既に、負荷分散処理対象外であるサーバについて、計測された応答時間が平均の応答時間あるいは設定値以下となった場合には、振り分けテーブルの対応する有効フラグを「有効」に設定し、当該サーバを負荷分散処理に復帰させる。
【００３６】
図８は、図７のステップＳ１０の詳細処理フローである。
図８（ａ）において、ステップＳ２０では、レスポンス計測装置に格納されている平均レスポンス時間テーブルを開く。平均レスポンス時間テーブルは、図８（ｂ）に示されている。図８（ｂ）の平均レスポンス時間テーブルでは、サーバの識別子に対応して、平均レスポンス時間（平均応答時間）と、ロードバランサへの指示を出すための、ロードバランサ（ＬＢ）振り分け識別子が登録されている。ロードバランサ振り分け識別子は、対応するサーバの負荷状態が、高負荷状態か、適正状態かを格納するものであり、図２の振り分けテーブルの有効フラグに相当する。図８（ｂ）の場合、「○」がロードバランサ振り分け識別子として登録されているサーバは、適正状態である。
【００３７】
ステップＳ２１において、レスポンス計測装置において、通信パケットの応答時間を計測する。計測方法としては、クライアントからのリクエストを含むパケットの到着時刻と、サーバからのリクエスト応答を含むパケットの到着時刻の差を応答時間としてよい。あるいは、その他の既存の技術を用いて、応答時間の計測を行なってもよい。
【００３８】
ステップＳ２２において、ステップＳ２１でキャプチャされたパケットから計測した応答時間を用いて、平均レスポンス時間テーブルの平均レスポンス時間を更新する。この更新は、応答時間が取得されるに従い、随時行なわれる。
【００３９】
なお、ステップＳ２１、Ｓ２２は、全てのサーバについて繰り返し実行する。
ステップＳ２３において、平均レスポンス時間テーブルを閉じて、処理を終了する。
なお、図８では、平均レスポンス時間（平均応答時間）を計測する場合を示しており、以下においても、この場合を仮定するが、平均レスポンス時間の代わりに、装置の設計者が、応答時間の適正値を予め設定しておいても良い。この場合には、図８（ａ）の平均レスポンス時間テーブルの更新は必要が無く、平均レスポンス時間テーブルの代わりに、応答時間の適正値を格納したテーブルを用意すればよい。
【００４０】
図９Ａ、Ｂは、図７のステップＳ１１、Ｓ１２の詳細フローである。
図９の処理は、全てのサーバについて繰り返し実行する。
ステップＳ３０において、平均レスポンス時間テーブルを開く。ステップＳ３１において、レスポンス計測装置において、通信パケットの応答時間を計測し、サーバごとに応答時間を計測する。ここで、図８のステップＳ２１と図９Ａ（ａ）のステップＳ３１とでは、計測対象とするパケットは、同じものでも異なっても良い。同一のパケットについて計測した応答時間を用いて、平均値を更新し、更に、その値を平均値と比較するようにしても良い。
【００４１】
ステップＳ３２において、平均レスポンス時間テーブルのレスポンス時間（応答時間）と、計測された応答時間との比較を、サーバごとに行なう。
ステップＳ３２において、レスポンス時間が、平均レスポンス時間に所定の時間（Ｘ秒）を加えた値より大きいか否かを判断する。この平均レスポンス時間に加えられる所定の時間は、サーバのレスポンス時間が適正であると判断する場合の幅を決定するものである。すなわち、平均レスポンス時間より、計測されたレスポンス時間が大きくても、高負荷状態になっているとは限らないため、より適正に高負荷状態を判断するためのものである。この所定の時間は、装置の設計者が予め適切に設定すべきものであるが、もちろん、０秒と設定しても良い。
【００４２】
ステップＳ３３の判断がＹｅｓの場合には、ステップＳ３４において、高負荷状態であると判断されたサーバに対応する、平均レスポンス時間テーブルのロードバランサ振り分け識別子を「×」に設定して、ロードバランサに、当該サーバを負荷分散対象から除去するよう指示を出す。図９Ｂ（ｂ）の平均レスポンス時間テーブルでは、サーバＳＶ０１のロードバランサ振り分け識別子が「×」と設定されており、高負荷状態が発生していることが示されている。ステップＳ３４の後は、ステップＳ３８に進む。
【００４３】
ステップＳ３３の判断がＮｏの場合には、ステップＳ３５において、現在処理中のサーバが、ロードバランサに対し負荷分散対象外とする旨の指示が出されていたものであるか否かを判断する。
【００４４】
ステップＳ３５の判断がＮｏの場合には、ステップＳ３８に進む。ステップＳ３５の判断がＹｅｓの場合には、ステップＳ３６において、計測されたレスポンス時間が、平均レスポンス時間以下であるか否かを判断する。これは、計測されたレスポンス時間が平均レスポンス時間以下となった場合には、高負荷状態を脱した状態であるものを判断するためである。
【００４５】
ステップＳ３６の判断がＮｏの場合には、ステップＳ３８に進む。ステップＳ３６の判断がＹｅｓの場合には、ステップＳ３７において、ロードバランサへ、現在処理対象のサーバを負荷分散処理対象に復帰するよう指示を出す。このとき、図９Ｂ（ｃ）の平均レスポンス時間テーブルに示されるように、サーバＳＶ０１のロードバランサ振り分け識別子を「○」に再設定する。
そして、ステップＳ３８において、平均レスポンス時間テーブルを閉じて、処理を終了する。
【００４６】
図１０は、ロードバランサの負荷分散対象サーバの変更処理のフローである。
図１０のサーバ振り分け対象テーブルは、図２の振り分けテーブル２１のことである。
図１０（ａ）のステップＳ４０において、まず、サーバ振り分け対象テーブルを開く。現在の状態は、図１０（ｂ）のように、全てのサーバＳＶ０１〜ＳＶ０３のロードバランサ（ＬＢ）振り分け識別子が「○」となっている。これは、図２の有効フラグが「有効」となっていることに対応し、全てのサーバＳＶ０１〜ＳＶ０３が負荷分散処理の対象となっていることを示す。
【００４７】
ステップＳ４１において、レスポンス計測装置からサーバの切り離し指示（負荷分散対象から除外する旨の指示）があるか否かを判断する。ステップＳ４１の判断がＹｅｓの場合には、ステップＳ４２において、サーバ振り分け対象テーブルを更新する。図１０（ｃ）の場合、サーバＳＶ０１に対し、切り離し指示が来ているとする。この場合、図１０（ｃ）に示されるように、サーバ振り分け対象テーブルのサーバＳＶ０１に対応するロードバランサ振り分け識別子に「×」が設定される。これは、図２における有効フラグが「無効」と設定されたことに対応し、サーバＳＶ０１が負荷分散対象から除外される。ステップＳ４２の後に、ステップＳ４５に進む。
【００４８】
ステップＳ４１の判断がＮｏの場合には、ステップＳ４３において、レスポンス計測装置からサーバの切り戻し指示（負荷分散対象に復帰させる指示）があるか否かを判断する。今、サーバ振り分け対象テーブルが図１０（ｃ）のようになっていたとする。ステップＳ４３の判断がＮｏの場合には、サーバ振り分け対象テーブルには何もせずステップＳ４５に進む。ステップＳ４３の判断がＹｅｓの場合には、ステップＳ４４において、サーバ振り分け対象テーブルを更新してステップＳ４５に進む。今、切り戻し指示が、サーバＳＶ０１を負荷分散対象に復帰させることを指示しているとすると、図１０（ｃ）のサーバ振り分け対象テーブルにおいて、サーバＳＶ０１のロードバランサ振り分け識別子を更新する。サーバＳＶ０１を負荷分散対象に復帰させるので、ロードバランサ振り分け識別子を「×」から「○」に更新する。結果として、図１０（ｄ）のように、全てのサーバＳＶ０１〜ＳＶ０３のロードバランサ振り分け識別子が「○」となり、負荷分散対象となる。
【００４９】
そして、ステップＳ４５において、サーバ振り分け対象テーブルを閉じて、処理を終わる。
その後において、ロードバランサは、サーバ振り分け対象テーブルを参照し、ロードバランサ振り分け識別子が「○」となっているサーバのみの間で、例えば、ラウンドロビン方式により、クライアント端末からのリクエストを含むパケットを振り分けて転送する。
【符号の説明】
【００５０】
１０      ロードバランサ
１１      レスポンス計測装置
２０      キャプチャデータデータベース
２１      振分けテーブル
ＣＬ０１〜ＣＬ０３      クライアント端末
ＳＶ０１〜ＳＶ０３      サーバ
ＳＷ（１）、ＳＷ（２）      スイッチ
【図１】
2011197796.tif 000003
【図２】
2011197796.tif 000004
【図７】
2011197796.tif 000005
【図８】
2011197796.tif 000006
【図９Ａ】
2011197796.tif 000007
【図９Ｂ】
2011197796.tif 000008
【図１０】
2011197796.tif 000009
【図３】
2011197796.tif 000010
【図４】
2011197796.tif 000011
【図５】
2011197796.tif 000012
【図６】
2011197796.tif 000013