(57)【要約】【課題】特殊な装置を追加せずに、効率的に中継サーバの負荷分散を行う。【解決手段】負荷分散システムは、複数の中継サーバと、クライアント端末と、中継サーバの負荷情報を管理するゲートウェイ装置とを備える。ゲートウェイ装置は、イントラネット内に設けられ、中継サーバの負荷情報を定期的に更新しながら管理する中継サーバ情報管理手段と、中継サーバにクライアント端末が接続される第１の中継サーバの負荷情報と、複数の中継サーバの負荷情報とに基づいて、当該第１の中継サーバの負荷分散を行うか否かを判断する負荷分散判断手段とを備える。負荷分散判断手段は、負荷分散を行うことが有効であると判断した場合には、クライアント端末と第１の中継サーバとの第１のコネクションを接続したまま第２の中継サーバとクライアント端末との第２のコネクションを接続し、第２のコネクションが確立した後、第１のコネクションを切断する。【選択図】図１
2008225644.tif 000002
【特許請求の範囲】
【請求項１】
複数の中継サーバの負荷情報を管理するゲートウェイ装置であって、
イントラネット内に設けられると共に、前記中継サーバの負荷情報を通信により定期的に更新しながら管理する中継サーバ情報管理手段を備え、
前記中継サーバ情報管理手段は、
前記中継サーバにクライアント端末が接続される第１の中継サーバの負荷情報と、前記複数の中継サーバの負荷情報とに基づいて、当該第１の中継サーバの負荷分散を行うか否かを判断する負荷分散判断手段を備え、
前記負荷分散判断手段は、
前記第１の中継サーバの負荷分散を行うことが有効であると判断した場合には、
現在接続されている当該クライアント端末と当該第１の中継サーバとの第１のコネクションを接続したまま、前記複数の中継サーバの１つであって前記第１の中継サーバとは異なる第２の中継サーバと当該クライアント端末との第２のコネクションを接続し、当該第２のコネクションが確立した後、前記第１のコネクションを切断することにより前記第１の中継サーバの負荷分散を行う
ことを特徴とするゲートウェイ装置。
【請求項２】
前記負荷分散判断手段は、
前記複数の中継サーバのうち、前記第１の中継サーバに接続されている前記クライアント端末の数が少ない中継サーバであって、当該中継サーバの制御部の使用率が所定範囲内にある場合には、当該中継サーバを前記第２の中継サーバとして前記第１の中継サーバの負荷分散を行うことが有効であると判断する
ことを特徴とする請求項１記載のゲートウェイ装置。
【請求項３】
前記中継サーバ情報管理手段は、
前記中継サーバにメンテナンスを予告通知するために送信されるメンテナンス予告通知を、当該中継サーバの負荷情報から取得するメンテナンス予告通知手段を更に備え、
前記メンテナンス予告通知手段は、
前記メンテナンス予告通知を前記中継サーバの負荷情報から取得すると、当該中継サーバを前記第１の中継サーバとして前記負荷分散判断手段を適用し、当該第１の中継サーバに接続された前記クライアント端末を、前記第２の中継サーバに接続されるように前記第１の中継サーバから前記第２の中継サーバに切り替える
ことを特徴とする請求項１に記載のゲートウェイ装置。
【請求項４】
前記負荷分散判断手段は、
前記複数の中継サーバのうち、前記第１の中継サーバに接続されている前記クライアント端末の数が少ない中継サーバであって、当該中継サーバの制御部の使用率が所定範囲内にある場合には、当該中継サーバを前記第２の中継サーバとして前記第１の中継サーバから切り替える
ことを特徴とする請求項３記載のゲートウェイ装置。
【請求項５】
複数の中継サーバの負荷情報を管理するゲートウェイ装置における負荷分散方法であって、
イントラネット内に設けられると共に、前記中継サーバの負荷情報を通信により定期的に更新しながら管理する中継サーバ情報管理ステップを備え、
前記中継サーバ情報管理ステップは、
前記中継サーバにクライアント端末が接続される第１の中継サーバの負荷情報と、前記複数の中継サーバの負荷情報とに基づいて、当該第１の中継サーバの負荷分散を行うか否かを判断する負荷分散判断ステップを備え、
前記負荷分散判断ステップは、
前記第１の中継サーバの負荷分散を行うことが有効であると判断した場合には、
現在接続されている当該クライアント端末と当該第１の中継サーバとの第１のコネクションを接続したまま、前記複数の中継サーバの１つであって前記第１の中継サーバとは異なる第２の中継サーバと当該クライアント端末との第２のコネクションを接続し、当該第２のコネクションが確立した後、前記第１のコネクションを切断することにより前記第１の中継サーバの負荷分散を行う
ことを特徴とする負荷分散方法。
【請求項６】
前記中継サーバ情報管理ステップは、
前記中継サーバにメンテナンスを予告通知するために送信されるメンテナンス予告通知を、当該中継サーバの負荷情報から取得するメンテナンス予告通知ステップを更に備え、
前記メンテナンス予告通知ステップは、
前記メンテナンス予告通知を前記中継サーバの負荷情報から取得すると、当該中継サーバを前記第１の中継サーバとして前記負荷分散判断ステップを適用し、当該第１の中継サーバに接続された前記クライアント端末を、前記第２の中継サーバに接続されるように前記第１の中継サーバから前記第２の中継サーバに切り替える
ことを特徴とする請求項５に記載の負荷分散方法。
【請求項７】
複数の中継サーバの負荷情報を管理するゲートウェイ装置における負荷分散プログラムであって、
イントラネット内に設けられると共に、前記中継サーバの負荷情報を通信により定期的に更新しながら管理する中継サーバ情報管理手順を備え、
前記中継サーバ情報管理手順は、
前記中継サーバにクライアント端末が接続される第１の中継サーバの負荷情報と、前記複数の中継サーバの負荷情報とに基づいて、当該第１の中継サーバの負荷分散を行うか否かを判断する負荷分散判断手順を備え、
前記負荷分散判断手順は、
前記第１の中継サーバの負荷分散を行うことが有効であると判断した場合には、
現在接続されている当該クライアント端末と当該第１の中継サーバとの第１のコネクションを接続したまま、前記複数の中継サーバの１つであって前記第１の中継サーバとは異なる第２の中継サーバと当該クライアント端末との第２のコネクションを接続し、当該第２のコネクションが確立した後、前記第１のコネクションを切断することにより前記第１の中継サーバの負荷分散を行う
ことをコンピュータに実行させることを特徴とする負荷分散プログラム。
【請求項８】
前記中継サーバ情報管理手順は、
前記中継サーバにメンテナンスを予告通知するために送信されるメンテナンス予告通知を、当該中継サーバの負荷情報から取得するメンテナンス予告通知手順を更に備え、
前記メンテナンス予告通知手順は、
前記メンテナンス予告通知を前記中継サーバの負荷情報から取得すると、当該中継サーバを前記第１の中継サーバとして前記負荷分散判断手順を適用し、当該第１の中継サーバに接続された前記クライアント端末を、前記第２の中継サーバに接続されるように前記第１の中継サーバから前記第２の中継サーバに切り替える
ことをコンピュータに実行させることを特徴とする請求項７に記載の負荷分散プログラム。
【請求項９】
前記請求項１乃至４の何れか１項に記載されたゲートウェイ装置と、複数の中継サーバと、前記中継サーバに接続されるクライアント端末とを備えたことを特徴とする負荷分散システム。
【請求項１０】
複数の中継サーバと、前記中継サーバに接続されるクライアント端末と、前記中継サーバの負荷情報を管理するゲートウェイ装置とを備えた負荷分散システムにおける負荷分散方法であって、
前記ゲートウェイ装置は、
イントラネット内に設けられると共に、前記中継サーバの負荷情報を通信により定期的に更新しながら管理する中継サーバ情報管理ステップを備え、
前記中継サーバ情報管理ステップは、
前記中継サーバに前記クライアント端末が接続される第１の中継サーバの負荷情報と、前記複数の中継サーバの負荷情報とに基づいて、当該第１の中継サーバの負荷分散を行うか否かを判断する負荷分散判断ステップを備え、
前記負荷分散判断ステップは、
前記第１の中継サーバの負荷分散を行うことが有効であると判断した場合には、
現在接続されている当該クライアント端末と当該第１の中継サーバとの第１のコネクションを接続したまま、前記複数の中継サーバの１つであって前記第１の中継サーバとは異なる第２の中継サーバと当該クライアント端末との第２のコネクションを接続し、当該第２のコネクションが確立した後、前記第１のコネクションを切断することにより前記第１の中継サーバの負荷分散を行う
ことを特徴とする負荷分散方法。
【請求項１１】
前記負荷分散判断ステップは、
前記複数の中継サーバのうち、前記第１の中継サーバに接続されている前記クライアント端末の数が少ない中継サーバであって、当該中継サーバの制御部の使用率が所定範囲内にある場合には、当該中継サーバを前記第２の中継サーバとして前記第１の中継サーバの負荷分散を行うことが有効であると判断する
ことを特徴とする請求項１０記載の負荷分散方法。
【請求項１２】
前記中継サーバのメンテナンスを行う管理者用端末を更に備え、
前記中継サーバ情報管理ステップは、
前記管理者用端末から前記中継サーバにメンテナンスを予告通知するために送信されるメンテナンス予告通知を、当該中継サーバの負荷情報から取得するメンテナンス予告通知ステップを更に備え、
前記メンテナンス予告通知ステップは、
前記メンテナンス予告通知を前記中継サーバの負荷情報から取得すると、当該中継サーバを前記第１の中継サーバとして前記負荷分散判断ステップを適用し、当該第１の中継サーバに接続された前記クライアント端末を、前記第２の中継サーバに接続されるように前記第１の中継サーバから前記第２の中継サーバに切り替える
ことを特徴とする請求項１０に記載の負荷分散方法。
【請求項１３】
前記負荷分散判断ステップは、
前記複数の中継サーバのうち、前記第１の中継サーバに接続されている前記クライアント端末の数が少ない中継サーバであって、当該中継サーバの制御部の使用率が所定範囲内にある場合には、当該中継サーバを前記第２の中継サーバとして前記第１の中継サーバから切り替える
ことを特徴とする請求項１２記載の負荷分散方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲートウェイ装置、ゲートウェイ装置の負荷分散方法、ゲートウェイ装置の負荷分散プログラム、負荷分散システム及び中継サーバの負荷分散方法に関し、特に、中継サーバにかかる負荷が高くなった場合に負荷分散を行うゲートウェイ装置、ゲートウェイ装置の負荷分散方法、ゲートウェイ装置の負荷分散プログラム、負荷分散システム及び中継サーバの負荷分散方法に関する。
【背景技術】
【０００２】
従来、コンピュータの普及に伴って、クライアント端末とサーバ装置とを接続したクライアントサーバシステムが、幅広く利用されている。
【０００３】
ここで、一般的なクライアントサーバシステムを、図１１に示す。図１１において、クライアントサーバシステムは、クライアント端末Ｃ１と、クライアント端末Ｃ２と、クライアント端末Ｃ３とが、ゲートウェイ装置ＧＷ１を介して、サーバ装置（以下、単にサーバという。）ＳＶ１と、サーバＳＶ２とに接続されている。
【０００４】
通常、このようなクライアントシステムでは、例えば、クライアント端末Ｃ１から送信される処理要求が、ゲートウェイ装置ＧＷ１を介して、サーバＳＶ１又はサーバＳＶ２に送信され、サーバＳＶ１又はサーバＳＶ２において、その処理要求が処理された後、ゲートウェイ装置ＧＷ１を介して、クライアント端末Ｃ１に返送される。
【０００５】
そして、このような構成を用いたクライアントサーバシステムが、特許文献１に記載されている。
【特許文献１】特開２００２−２６９０６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
この特許文献１には、複数のクライアント端末と、複数のサーバとの間に中継サーバとなるゲートウェイ装置ＧＷ１を備え、そのゲートウェイ装置ＧＷ１が、サーバＳＶ１又はサーバＳＶ２に接続されるクライアント端末の接続数を負荷として管理するクライアントサーバシステムが記載されている。
【０００７】
そして、ゲートウェイ装置ＧＷ１は、サーバＳＶ１又はサーバＳＶ２の処理負荷によって、どちらのサーバに、どのクライアント端末Ｃ１〜Ｃ３を接続するかを割り当てる。
【０００８】
しかしながら、特許文献１に記載されたクライアントサーバシステムでは、例えば、クライアント端末Ｃ１からの処理要求に対して、サーバＳＶ１において負担の大きい処理（例えば、画像処理などの演算処理等）がされている場合や、或いはクライアントＣ１がサーバＳＶ１から切断された場合には、ゲートウェイ装置ＧＷ１は、サーバＳＶ１の負荷の状態をリアルタイムに把握することができなかった。
【０００９】
すなわち、ゲートウェイ装置ＧＷ１は、各クライアント端末Ｃ１〜Ｃ３からの処理要求時の接続数を負荷として管理しているに過ぎず、一度クライアント端末をサーバに割り当てると、その後の各サーバの負荷状況に関わらず、クライアント端末の接続先のサーバを変更することができないという問題があった。
【００１０】
また、既存の中継サーバによる負荷分散システムから、以下のような中継サーバの負荷分散システムが考えられる。
【００１１】
図１２の構成図を用いて説明すると、この考えられる中継サーバの負荷分散システムは、クライアント端末１１０１と、ＮＡＴ（network address translation）１１０２と、中継サーバ１１０３と、中継サーバ１１０４と、中継サーバ１１０５と、メールサーバ１１０６と、ＮＡＴ１１０７と、クライアント端末１１０８と、セッション管理サーバ１１０９とを備えている。
【００１２】
このような構成を有する中継サーバ負荷分散システムでは、図１３に示すフローチャートのように動作する。
【００１３】
図１３に示すフローチャートでは、利用者がクライアント端末に対して接続要求操作を行うことにより（ステップ１２１１）、クライアント端末１１０１は、セッション管理サーバ１１０９に、セッション確立要求を送信する（ステップ１２１２）。
【００１４】
セッション管理サーバ１１０９は、パケット中継処理を実行する余裕がある中継サーバ１１０３の情報をクライアント端末１１０１に通知する（ステップ１２１３）。
【００１５】
クライアント端末１１０１は、中継サーバ１１０３と接続を確立した後（ステップ１２１４）、クライアント端末１１０８に接続開始メールを送信する（ステップ１２１５）。
【００１６】
クライアント端末１１０８は、接続開始メールが届いていないか定期的に確認し（ステップ１２１６）、接続開始メールが届いている場合にはそのメールを受信すると共に（ステップ１２１７）、中継サーバ１１０３と接続する（ステップ１２１８）。
【００１７】
クライアント端末１１０１と、クライアント端末１１０８の接続が完了すると、中継サーバ１１０３は、クライアント端末１１０１とクライアント端末１１０８に接続完了メッセージを送信する（ステップ１２１９、ステップ１２２０）。
【００１８】
クライアント端末１１０１は、接続完了メッセージ（接続完了通知）を受信すると（ステップ１２２０）、中継サーバ１１０３を介してクライアント端末１１０８とパケット通信を行う（ステップ１２２２、ステップ１２２３）。
【００１９】
このような動作をする場合の構成について、更に図１４を用いて説明する。
【００２０】
図１４（Ａ）を参照すると、このような動作をする中継サーバ負荷分散システムでは、社外のクライアント端末１０１から社内の業務サーバ１０４にアクセスしようとするとき、通常、社内ネットワークは、ファイアウォール１０２で守られている。
【００２１】
このため、クライアント端末１０１は、社内ネットワークにある業務サーバ１０４と通常通信できない。
【００２２】
図１４（Ｂ）を参照すると、図１４（Ａ）とは反対に、社内にあるクライアント端末１０９から社外にあるサーバ方向への接続は許されていることが多い。
【００２３】
しかし、クライアント端末１０９から社外のプライベートＩＰアドレスのクライアント端末１０５には通信できない。プライベートＩＰでは一意に端末を特定することができないためである。
【００２４】
図１４（Ｃ）を参照すると、プライベートＩＰアドレスが割り当てられているクライアント端末１１０からインターネットへの通信は、通常ＮＡＴ（network address translation）１１１と呼ばれる変換を行い、グローバルＩＰアドレスに変換することにより行うことができる。
【００２５】
そこで、グローバルＩＰアドレスを持つ中継サーバ１１２を利用することにより、プライベートＩＰを使用しているクライアント端末１１０のＮＡＴ１１１を通した接続と、社内のゲートウェイ装置１１４からの接続とを中継転送する方式が考えられる。
【００２６】
しかし、多数のクライアント端末が中継サーバ１１２を利用すると、高負荷になり転送に時間がかかるため、利便性が問題となる。
【００２７】
従って、既存の中継サーバから考えられる、クライアント端末とゲートウェイ装置との通信を中継する中継サーバの負荷分散システムでは、サーバからのセッションとクライアント端末からのセッションの両方とも他の中継サーバに振り分けるため、ロードバランサやセッション管理サーバを設置する必要があり、システムの導入に特別なハードウェアを使用するのでコストがかかるという問題があった。
【００２８】
本発明は、上記問題点に鑑みてなされたものであり、特殊な装置を追加せずに、効率的に中継サーバの負荷分散を行うゲートウェイ装置、ゲートウェイ装置の負荷分散方法、ゲートウェイ装置の負荷分散プログラム、負荷分散システム及び中継サーバの負荷分散方法を実現することを目的とする。
【課題を解決するための手段】
【００２９】
本発明に係るゲートウェイ装置は、複数の中継サーバの負荷情報を管理するゲートウェイ装置であって、イントラネット内に設けられると共に、前記中継サーバの負荷情報を通信により定期的に更新しながら管理する中継サーバ情報管理手段を備え、前記中継サーバ情報管理手段は、前記中継サーバにクライアント端末が接続される第１の中継サーバの負荷情報と、前記複数の中継サーバの負荷情報とに基づいて、当該第１の中継サーバの負荷分散を行うか否かを判断する負荷分散判断手段を備え、前記負荷分散判断手段は、前記第１の中継サーバの負荷分散を行うことが有効であると判断した場合には、現在接続されている当該クライアント端末と当該第１の中継サーバとの第１のコネクションを接続したまま、前記複数の中継サーバの１つであって前記第１の中継サーバとは異なる第２の中継サーバと当該クライアント端末との第２のコネクションを接続し、当該第２のコネクションが確立した後、前記第１のコネクションを切断することにより前記第１の中継サーバの負荷分散を行うことを特徴とする。
【００３０】
また、本発明に係るゲートウェイ装置は、前記負荷分散判断手段が、前記複数の中継サーバのうち、前記第１の中継サーバに接続されている前記クライアント端末の数が少ない中継サーバであって、当該中継サーバの制御部の使用率が所定範囲内にある場合には、当該中継サーバを前記第２の中継サーバとして前記第１の中継サーバの負荷分散を行うことが有効であると判断するようにしても良い。
【００３１】
また、本発明に係るゲートウェイ装置は、前記中継サーバ情報管理手段が、前記中継サーバにメンテナンスを予告通知するために送信されるメンテナンス予告通知を、当該中継サーバの負荷情報から取得するメンテナンス予告通知手段を更に備え、前記メンテナンス予告通知手段は、前記メンテナンス予告通知を前記中継サーバの負荷情報から取得すると、当該中継サーバを前記第１の中継サーバとして前記負荷分散判断手段を適用し、当該第１の中継サーバに接続された前記クライアント端末を、前記第２の中継サーバに接続されるように前記第１の中継サーバから前記第２の中継サーバに切り替えるようにしても良い。
【００３２】
また、本発明に係るゲートウェイ装置は、前記負荷分散判断手段が、前記複数の中継サーバのうち、前記第１の中継サーバに接続されている前記クライアント端末の数が少ない中継サーバであって、当該中継サーバの制御部の使用率が所定範囲内にある場合には、当該中継サーバを前記第２の中継サーバとして前記第１の中継サーバから切り替えるようにしても良い。
【発明の効果】
【００３３】
本発明によれば、クライアント端末が最初に接続される中継サーバを経由して、クライアント端末とゲートウェイ装置との接続を確立すると共に、ゲートウェイ装置が自装置に接続されている複数の中継サーバに対して、負荷情報の更新と管理を行うことができる。
【００３４】
これにより、ゲートウェイ装置は、各中継サーバの負荷情報に基づいて、クライアント端末の接続先を変更する負荷分散の判断を行うことができると共に、ゲートウェイ装置はクライアント端末と第１の中継サーバと接続を確立した状態で、第１の中継サーバとは異なる第２の中継サーバに接続を切り替えることができる。かくして、特殊な装置を追加せずに、効率的に中継サーバの負荷分散を行うゲートウェイ装置、ゲートウェイ装置の負荷分散方法、ゲートウェイ装置の負荷分散プログラム、負荷分散システム及び中継サーバの負荷分散方法を実現できる。
【発明を実施するための最良の形態】
【００３５】
次に、本発明の実施の形態の構成について図面を参照して詳細に説明する。
（第１の実施の形態）
（１）第１の実施の形態による負荷分散中継システム
（１−１）負荷分散中継システムの構成
図１を参照すると、第１の実施の形態による負荷分散中継システムは、社外から社内の業務サーバ２０８へ接続を行うクライアント端末２０１と、ＮＡＴ装置２１８と、接続を受け付けるゲートウェイ装置２０６と、クライアント端末２０１とゲートウェイ装置２０６との間のセッションを中継する中継サーバ２０２と、中継サーバ２０２の負荷を分散させるための中継サーバ２０３、中継サーバ２０５と、ファイアウォール２０７と、メールサーバ２０４と、業務サーバ２０８とを備えている。
【００３６】
ここで、クライアント端末２０１の内部構成について、図２に示す。
【００３７】
図２に示すように、クライアント端末２０１は、オペレーティングシステム３０９と、ＳＭＴＰ（simple mail transfer protocol）部３０４と、ゲートウェイ装置/中継サーバ通信部３０５と、制御部３０６と、アドレステーブル３０７と、アプリケーション部３０８と、を備えている。
【００３８】
また、オペレーティングシステム３０９は、ＭＡＣ（media access control）部３０１と、ＩＰ（internet protocol）部３０２と、ＴＣＰ／ＵＤＰ(transmission control protocol/user datagram protocol)部３０３とを備えている。
【００３９】
ＭＡＣ部３０１は、イーサネット（登録商標）におけるパケットの送受信を行う標準プロトコル処理部である。
【００４０】
ＩＰ部３０２は、パケットのルーティングを行う標準プロトコル処理部である。
【００４１】
ＴＣＰ／ＵＤＰ部３０３は、信頼性のあるパケット通信を行う標準プロトコル処理部である。
【００４２】
ＳＭＴＰ部３０４は、電子メールの送信を行う標準プロトコル処理部である。
【００４３】
ゲートウェイ装置/中継サーバ通信部３０５は、ゲートウェイ装置２０６と制御情報などを取得するために通信を行ったり、中継サーバ２０２、中継サーバ２０３及び中継サーバ２０５と通信を行う部分である。
【００４４】
制御部３０６は、メールを送信するために、ＳＭＴＰ部３０４の関数をコールしたり、ゲートウェイ装置通信部３０５で受信した中継サーバ２０２の要求を受け取る関数をコールしたりする。
【００４５】
アドレステーブル３０７には、ゲートウェイ装置２０６用のメールアカウントの情報や、最初に接続するデフォルトの中継サーバのＩＰアドレスが格納されている。
【００４６】
アプリケーション部３０８は、業務サーバ２０８のアプリケーション部とパケットのやり取りを行うために制御部３０６と通信する。
【００４７】
中継サーバ２０２、中継サーバ２０３及び中継サーバ２０５には、グローバルＩＰアドレスが割り当てられており、クライアント端末２０１からのＴＣＰコネクション接続要求とゲートウェイ装置からのＴＣＰコネクション接続を中継することによって、クライアント端末２０１とゲートウェイ装置２０６との間のパケット転送を行う手段を有している。
【００４８】
次に、中継サーバ２０２、中継サーバ２０３及び中継サーバ２０５について説明する。中継サーバ２０２、中継サーバ２０３及び中継サーバ２０５の内部構成は、すべて同じであるため、中継サーバ２０２についてのみ説明することにする。
【００４９】
図３に示すように、中継サーバ２０２は、オペレーティングシステム４１０と、パケット識別部４０４と、中継転送部４０５と、ゲートウェイ装置通信部４０６と、サーバ管理部４０７と、中継テーブル４０８と、負荷情報テーブル４０９とを備えている。
【００５０】
また、オペレーティングシステム４１０は、オペレーティングシステム３０９と同一であるため、説明を省略する。
【００５１】
パケット識別部４０４は、受信したパケットの種類によって中継転送部４０５とゲートウェイ装置通信部４０６にパケットを振り分ける。
【００５２】
中継転送部４０５は、クライアント端末２０１とゲートウェイ装置２０６からの接続を待ち受ける動作と、それらのパケットを転送する機能をもつ。
【００５３】
ゲートウェイ装置通信部４０６は、ゲートウェイ装置２０６からの要求を受けて、負荷情報テーブル４０９から情報を取得し、応答を返す機能を持つ。
【００５４】
サーバ管理部４０７は、中継サーバ２０２の負荷情報を定期的に収集し、負荷情報テーブル４０９に書き込んでいる。
【００５５】
中継テーブル４０８は、クライアント端末２０１とゲートウェイ装置２０６の通信を結びつけるための情報と、現在の中継転送数を持っているテーブルである。
【００５６】
サーバ管理部４０７は、一定時間おきに中継サーバテーブル４０８から中継転送数を取得するとともに、その時点でのＣＰＵ（central processing unit）の使用率を負荷情報テーブル４０９に格納する。
【００５７】
次に、メールサーバ２０４について説明する。メールサーバ２０４の内部構成を図４に示す。
【００５８】
図４に示すように、メールサーバ２０４は、ＭＡＣ部４０１と、ＩＰ部４０２と、ＴＣＰ／ＵＤＰ部４０３と、ＳＭＴＰ部４１１と、ＰＯＰ（post office protocol）部４１２と、メールスプール４１３とを備えている。
【００５９】
ここで、ＭＡＣ部４０１と、ＩＰ部４０２と、ＴＣＰ／ＵＤＰ部４０３と、ＳＭＴＰ部４１１は、クライアント端末２０１に備えられている部分と同一であるため、説明を省略する。
【００６０】
ＰＯＰ部４１２は、電子メールを保存しているサーバからメールを受信するためのプロトコルである。
【００６１】
メールスプール部４１３は、配信されたメールを保存しておく領域のことである。
【００６２】
次に、ゲートウェイ装置２０６について説明する。ゲートウェイ装置２０６の内部構成を図５に示す。
【００６３】
図５に示すように、ゲートウェイ装置２０６は、オペレーティングシステム５０９と、制御情報通信部５０４と、転送部５０５と、ＰＯＰ部５０６と、制御部５０７と、中継サーバ情報テーブル５０８とを備えている。
【００６４】
オペレーティングシステム５０９は、オペレーティングシステム３０９及びオペレーティングシステム４１０と同一であるため、説明を省略する。
【００６５】
制御情報通信部５０４は、中継サーバと通信を行い負荷情報の要求を送信したり受信したりする。
【００６６】
転送部５０５は、社内、社外間の通信を転送する。本例では業務サーバ２０８（図１）や、クライアント端末２０１（図１）との通信を転送する。
【００６７】
ＰＯＰ部５０６は、メールサーバ２０４のＰＯＰ部４１１と同様に、メールサーバから接続開始メールを受信する。
【００６８】
制御部５０７は、制御情報通信部５０４や、転送部５０５或いはＰＯＰ部５０６の関数をコールしたり、受信したデータを中継サーバ情報テーブル５０８に格納したりする。また、中継サーバ情報テーブル５０８の情報を元に、接続先中継サーバを決定する手段を持っている。
【００６９】
なお、図１には、中継サーバ２０２に備えられた負荷情報テーブル４０９（図３）の管理内容が、負荷情報テーブル２０９として例示されている。
【００７０】
この負荷情報テーブル２０９には、時刻２１１と、コネクション数２１２と、ＣＰＵ使用率２１３とが記載されている。
【００７１】
また、図１には、ゲートウェイ装置２０６に備えられた中継サーバ情報テーブル５０８（図５）の管理内容が、中継サーバ情報テーブル２１０として例示されている。
【００７２】
この中継サーバ情報テーブル２１０には、ホスト名２１４と、ＩＰアドレス２１５と、コネクション数２１６と、ＣＰＵ使用率２１７とが記載されている。
（１−２）負荷分散中継システムの接続先確立処理手順
次に、図１の構成図と、図６のフローチャートを参照して、第１の実施の形態による負荷分散中継システムの接続先確立処理手順について、詳細に説明する。
【００７３】
まず、クライアント端末２０１の利用者６０１が、クライアント端末２０１に対し、接続開始を指示する（ステップ６１１）。
【００７４】
するとクライアント端末２０１は、中継サーバ２０２にＴＣＰコネクションを確立する（ステップ６１２）。
【００７５】
クライアント端末２０１は、接続開始メールをゲートウェイ装置２０６のメールアカウント宛に送信する（ステップ６１３）。
【００７６】
ゲートウェイ装置２０６は、定期的にメールサーバ２０４に接続開始メールが届いているかチェックしている（ステップ６１４）。
【００７７】
もし、メールサーバ２０４に接続開始メールが存在した場合、ゲートウェイ装置２０６は、その接続開始メールを受信する（ステップ６１５）。
【００７８】
そして、ゲートウェイ装置２０６は、中継サーバ２０２にＴＣＰコネクションを開設する（ステップ６１６）。
【００７９】
次に、ゲートウェイ装置２０６は、利用者６０１に対し接続完了通知を出すと（ステップ６１７）、中継サーバ２０２を経由してクライアント端末２０１に届き（ステップ６１８）、利用者６０１に接続が完了したことを通知する（ステップ６１９）。
【００８０】
これにより、第１のコネクションが確立される。
【００８１】
次に、ゲートウェイ装置２０６の制御部５０７（図５）は、制御情報通信部５０４を介して中継サーバ情報テーブル５０８（図５）に登録されている中継サーバ２０２、中継サーバ２０３、中継サーバ２０５に対し、現在の確立している接続数２１２、ＣＰＵ使用率２１３といった負荷情報の提供要求（図６では、状態情報要求という。）を出す（ステップ６２０）。
【００８２】
そして、中継サーバ２０２、中継サーバ２０３及び中継サーバ２０５は、各パケット識別部４０４（図３）が、ゲートウェイ装置２０６からの負荷情報の提供要求を制御パケットであると判断すると、ゲートウェイ装置通信部４０６（図３）にその制御パケットを渡す。また、各中継サーバは、サーバ管理部４０７（図３）で取得しておいた負荷情報と、中継テーブル４０８（図３）に記載されているコネクション数を、負荷情報テーブル４０９（図３）に定期的に更新しながら格納する。そして、各中継サーバのゲートウェイ装置通信部４０６（図３）は、その最新のコネクション数２１２（図１）とＣＰＵ使用率２１３（図１）とをゲートウェイ装置２０６へ送信する（ステップ６２１）。
【００８３】
そして、ゲートウェイ装置２０６は、受信できた中継サーバ２０２、中継サーバ２０３及び中継サーバ２０５からの負荷情報（図５では、状態状況応答という。）を、制御情報通信部５０４及び制御部５０７を介して中継サーバ情報テーブル５０８に格納する。
【００８４】
これにより、ゲートウェイ装置２０６は、図１に示した中継サーバ情報テーブル２１０が更新され、最新のコネクション数２１２とＣＰＵ使用率２１３とを負荷情報として保持することができる。
【００８５】
次に制御部５０７（図５）が、中継サーバ情報テーブル５０８を参照して、負荷分散動作の接続先を検討する（これを変更接続先決定処理手順といい、後述する。）。
【００８６】
ここで、ゲートウェイ装置２０６の制御部５０７（図５）は、新たな接続先を見つけた場合、ゲートウェイ装置２０６の制御情報通信部５０４（図５）からクライアント端末２０１へ接続先変更要求を出す（ステップ６２２）。
【００８７】
接続先変更要求を受けたクライアント端末２０１は、第１のコネクションの接続を維持したまま、変更先の中継サーバ２０３へＴＣＰコネクションを開設する（ステップ６２３）。
【００８８】
中継サーバ２０３は、クライアント端末２０１によるＴＣＰコネクションの開設と同時に、ゲートウェイ装置２０６から変更先の中継サーバ２０３としてＴＣＰコネクションを開設する（ステップ６２４）。
【００８９】
クライアント端末２０１とゲートウェイ装置２０６の双方の接続が確立されたら、ゲートウェイ装置２０６から今新しく開設したコネクション経由（すなわち、中継サーバ２０３経由）でクライアント端末２０１に接続完了通知を出す（ステップ６２５及びステップ６２６）。
【００９０】
これで第２のコネクションが確立される。
【００９１】
これにより、ゲートウェイ装置６０７は、第１のコネクションの切断要求を出す（ステップ６２７）。
【００９２】
また、ゲートウェイ装置２０６のＴＣＰコネクション切断要求と同時にクライアント端末６０２からもＴＣＰコネクション切断要求を出す（ステップ６２８）。
【００９３】
このように、クライアント端末２０１から社内の業務サーバ２０８（図１）へ第２のコネクションを利用して通信を開始することができる。
（１−３）負荷分散中継システムの変更接続先決定処理手順
次に、変更接続先決定処理手順について、図７のフローチャートを用いて説明する。
【００９４】
まず、ステップ６２１（図６）で状態情報応答を収集し格納したゲートウェイ装置２０６は、中継サーバ情報テーブル５０８（図５）から、第１のコネクションで使用している中継サーバ２０２（図１）のコネクション数２１２（図１）より少ないコネクション数の中継サーバがあるか検索する（ステップ７０１）。
【００９５】
ここで、中継サーバ情報テーブル５０８に、中継サーバ２０２のコネクション数より少ないコネクション数の中継サーバがない場合には、接続先変更動作を中止する（ステップ７０２）。
【００９６】
これに対し、中継サーバ情報テーブル５０８に、中継サーバ２０２のコネクション数より少ないコネクション数の中継サーバがある場合には、コネクション数が最小の中継サーバのＣＰＵ使用率２１３（図１）が、８０％以下であるか否かを調べる（ステップ７０３）。
【００９７】
なぜなら、ＣＰＵ使用率が高すぎると、コネクション数が少なかったとしても中継サーバの転送速度が遅くなってしまい、転送速度の低下を招くからである。この転送速度の低下を防ぐため、ＣＰＵ使用率が８０％以下であれば、その中継サーバを負荷分散動作の接続先とする（ステップ７０７）。
【００９８】
また、ステップ７０３において、ＣＰＵ使用率が８０％以下でない場合には、その次に接続数が少ない中継サーバのＣＰＵ使用率を調べる（ステップ７０４）。
【００９９】
もし、その中継サーバのＣＰＵ使用率が８０％以下であれば、その中継サーバを負荷分散動作の接続先とする（ステップ７０７）。
【０１００】
また、その中継サーバのＣＰＵ使用率が８０％以下でない場合には、ステップ７０３以降の動作を再帰的に繰り返し、接続変更先中継サーバを探す。それでも見つからない場合には、コネクション数が最小の中継サーバを接続変更先とする（ステップ７０６）。
【０１０１】
このように、変更接続先決定処理手順により、確立されている中継サーバからゲートウェイ装置２０６に接続されている他の中継サーバに接続変更先を決定することができる。
【０１０２】
これにより、上記の接続先確立処理手順によって決定された接続先の中継サーバに、接続先を変更することができる。
（１−４）負荷分散中継システムの動作及び効果
本実施の形態では、デフォルト（標準設定）の中継サーバ（上記の例では、中継サーバ２０２）を経由して、一度クライアント端末２０１と、ゲートウェイ装置２０６との間のセッションを確立した上で、ゲートウェイ装置２０６から各中継サーバに負荷状況を問い合わせたり、クライアント端末２０１に接続先変更指示を出したりするメッセージ通信により実現することができる。
【０１０３】
本実施の形態によれば、ロードバランサなどの特殊な装置を使用せずに負荷分散を行うことができるので、システムの導入コストの削減が期待できる。
【０１０４】
また、従来のセッション管理サーバを使用する方式では、ファイアウォールの外にセッション管理サーバを設置していたためセキュリティ的に不利であったが、本実施の形態では、ファイアウォール内にあるゲートウェイ装置２０６に各中継サーバの情報を蓄積することができる。
【０１０５】
これにより、本実施の形態によれば、従来方式よりも比較的安全に負荷分散機能を運用することができる。
（第２の実施の形態）
（２）第２の実施の形態による負荷分散中継システム
（２−１）負荷分散中継システムの構成
次に、第２の実施の形態による負荷分散中継システムについて説明する。
【０１０６】
図８を参照すると、第２の実施の形態による負荷分散中継システムでは、第１の実施の形態の構成に、管理者が管理を行う管理者端末８１８が追加されている。
【０１０７】
また、各部の内部構成は、第１の実施の形態と同じく図２乃至図５のようになっている。
【０１０８】
中継サーバ８０２、中継サーバ８０３及び中継サーバ８０５には、グローバルＩＰアドレスが割り当てられており、クライアント端末８０１からのＴＣＰコネクション接続要求とゲートウェイ装置８０６からのＴＣＰコネクション接続要求を中継することによって、クライアント端末８０１と、ゲートウェイ装置８０６との間のパケットの中継転送を行う。
【０１０９】
中継サーバ８０２、中継サーバ８０３、中継サーバ８０５は、負荷情報テーブル８０９を持っており、現在自経由で確立しているクライアント端末８０１と、ゲートウェイ装置８０６との間のコネクション数８１２、ＣＰＵ使用率８１３を定期的に収集し格納する。
【０１１０】
ゲートウェイ装置８０６は、中継サーバ８０２、中継サーバ８０３、中継サーバ８０５のホスト名と、ＩＰアドレスを格納した中継サーバ情報テーブル８１０をもっている。
（２−２）負荷分散中継システムの接続先確立処理手順
次に、図８の構成図と、図９のフローチャートを参照して、第２の実施の形態による負荷分散中継システムの接続先確立処理手順について、詳細に説明する。
【０１１１】
但し、第１の実施の形態の動作と重複する箇所については、省略することにする。
【０１１２】
まず、クライアント端末８０１の利用者９０２が、クライアント端末８０１に対し、接続要求操作を行うことにより（ステップ９１１）、第１の実施の形態の場合と同様にクライアント端末８０１と、ゲートウェイ装置８０６との間で、中継サーバ８０２を介した第１のコネクションが開設される（ステップ９１１からステップ９１９）。
【０１１３】
また、ゲートウェイ装置８０６は、定期的に各中継サーバ８０２、中継サーバ８０３及び中継サーバ８０５に、各中継サーバの状態情報の要求を出す（ステップ９２０）。
【０１１４】
ここで、第２の実施の形態では、中継サーバの管理者が、管理者端末８１８から中継サーバ８０２へメンテナンス予告通知を出す（ステップ９２２）と、中継サーバ８０２に設けられた負荷情報テーブル８０９のメンテナンスフラグ８１９だけが、１になる。
【０１１５】
そして、本実施の形態では、ステップ９２０の定期的な状態情報要求を受けた中継サーバ８０２、中継サーバ８０３又は中継サーバ８０５は、各中継サーバに設けられた負荷情報管理テーブル８０９のコネクション数８１２、ＣＰＵ使用率８１３に加え、更にメンテナンスフラグ情報８１９を加えた応答を返す（ステップ９２１）。
【０１１６】
ゲートウェイ装置８０６は、中継サーバ８０２、中継サーバ８０３又は中継サーバ８０５の応答を確認し、コネクション数８１６と、ＣＰＵ使用率８１７とを中継サーバ情報テーブル８１０に格納する。
【０１１７】
このとき、メンテナンスフラグ８１９が１になっている中継サーバがある場合には、その中継サーバ経由で接続を確立しているコネクションを、他の中継サーバ経由での接続につなぎかえる。
【０１１８】
具体的には、管理者端末８１８から中継サーバ８０２へメンテナンス予告通知が出されているので、中継サーバ８０２のメンテナンスフラグ８１９だけが１となり、ゲートウェイ装置８０６は、中継サーバ８０２経由で接続を確立しているコネクションを、他の中継サーバ経由の接続につなぎかえる。
【０１１９】
そして、新しい接続先が決定したら、ゲートウェイ装置８０６からクライアント端末８０１へ新しい接続先となる中継サーバ８０３への接続要求を出す（ステップ９２３）。
【０１２０】
それを受けたクライアント端末８０１は、第１のコネクションの接続を維持したまま、変更先の中継サーバ８０３へＴＣＰコネクションを開設する（ステップ９２４）。
【０１２１】
また同時に、ゲートウェイ装置８０６は、変更先の中継サーバ８０３にＴＣＰコネクションを開設する（ステップ９２５）。
【０１２２】
そして、新しい接続先に中継サーバ８０２とゲートウェイ装置８０６の双方の接続が確立されたら、ゲートウェイ装置８０６から今新しく開設したコネクション経由で、クライアント端末８０１に接続完了通知を出す（ステップ９２６、ステップ９２７）。
【０１２３】
これにより、第２のコネクションが確立される。
【０１２４】
従って、ゲートウェイ装置８０６は、中継サーバ８０２へ第１のコネクションの切断要求を出す（ステップ９２８）。それと同時にクライアント端末８０１からも中継サーバ８０２へ切断要求を出す（ステップ９２９）。
（２−３）負荷分散中継システムの変更接続先決定処理
次に、変更接続先決定処理について、図１０のフローチャートを用いて説明する。
【０１２５】
図１０のフローチャートは、変更する接続先中継サーバの決定手順である。
【０１２６】
まず、ゲートウェイ装置８０６は、中継サーバ情報テーブル８１０を参照して、コネクション数８１６が、最小の中継サーバのＣＰＵ使用率８１７が８０％以下であるか否かを調べる（ステップ１００１）。
【０１２７】
ここで、最小の中継サーバのＣＰＵ使用率が８０％以下であれば、その中継サーバを新しい接続先対象に決定する（ステップ１００４）。
【０１２８】
これに対し、ＣＰＵ使用率が８０％以下でない場合には、その次にコネクション数が少ない中継サーバを検索し、そのＣＰＵ使用率が８０％以下であるか否かを調べる（ステップ１００２）。
【０１２９】
そして、そのＣＰＵ使用率が８０％以下である場合には、その中継サーバを新しい接続先対象とする（ステップ１００４）。
【０１３０】
これに対し、そのＣＰＵ使用率が８０％以下でない場合には、さらにコネクション数が少なく、ＣＰＵ使用率が８０％以下の中継サーバの検索を再帰的に行う。
【０１３１】
ここで、ＣＰＵ使用率が８０％以下の中継サーバがない場合には、メンテナンス対象の中継サーバ８０２以外の中継サーバであって、コネクション数８１６が最小の中継サーバを新しい接続先対象とする（ステップ１００５）。
（２−４）負荷分散中継システムの効果
第２の実施の形態の負荷分散中継システムでは、管理者が管理者端末９０１を用いて接続されている中継サーバ８０２にメンテナンス予告通知を出すことにより、中継サーバ８０２に設けられた負荷情報テーブル８０９のメンテナンスフラグ８１９に、「１」を書き込んでいる。
【０１３２】
このため、ゲートウェイ装置８０６は、中継サーバから送付される、「１」の書き込まれたメンテナンスフラグ８１９によって、接続を切り替える中継サーバを認識することができる。従って、ゲートウェイ装置８０６は、中継サーバ８０２から接続先を変更する次の中継サーバを決定すると共に、つなぎかえる。
【０１３３】
このように、クライアント端末８０１は、社内の業務サーバへの第２のコネクションを利用して通信を開始する。これにより管理者は、利用者に意識させずに経由する中継サーバを変更させることができる。
【産業上の利用可能性】
【０１３４】
本発明によれば、サーバとクライアントの双方から、中継サーバにコネクションを開設する中継サーバを用いたシステムにおいて、中継サーバの負荷分散を効率的に行うことができる。また、その管理者が中継サーバを管理する負担軽減にも貢献する。
【図面の簡単な説明】
【０１３５】
【図１】本発明における第１の実施の形態による負荷分散中継システムの構成を示す構成図である。
【図２】本発明における第１の実施の形態によるクライアント端末のブロック図である。
【図３】本発明における第１の実施の形態による中継サーバのブロック図である。
【図４】本発明における第１の実施の形態によるメールサーバのブロック図である。
【図５】本発明における第１の実施の形態によるゲートウェイ装置のブロック図である。
【図６】本発明における第１の実施の形態による接続先確立処理手順を表すフローチャートである。
【図７】本発明における第１の実施の形態による変更接続先決定処理手順を表すフローチャートである。
【図８】本発明における第２の実施の形態による負荷分散中継システムの構成を示す構成図である。
【図９】本発明における第２の実施の形態による接続先確立処理手順を表すフローチャートである。
【図１０】本発明における第２の実施の形態による変更接続先決定処理手順を表すフローチャートである。
【図１１】従来から知られている先行技術の構成図である。
【図１２】従来から知られている先行技術から考えられる負荷分散中継システムである。
【図１３】従来から知られている先行技術から考えられる負荷分散中継システムの動作を表したフローチャートである。
【図１４】従来から知られている先行技術から考えられる構成を示した構成図である。
【符号の説明】
【０１３６】
２０１  クライアント端末
２０２、２０３、２０５  中継サーバ
２０４  メールサーバ
２０６  ゲートウェイ装置
２０７  ファイアウォール
２０８  業務サーバ
３０１  ＭＡＣ部
３０２  ＩＰ部
３０３  ＴＣＰ／ＵＤＰ部
３０４  ＳＭＴＰ部
３０５  ゲートウェイ装置/中継サーバ通信部
３０６  制御部
３０７  アドレステーブル
３０８  アプリケーション部
３０９  オペレーティングシステム
４０１  ＭＡＣ部
４０２  ＩＰ部
４０３  ＴＣＰ／ＵＤＰ部
４０４  パケット識別部
４０５  中継転送部
４０６  ゲートウェイ装置通信部
４０７  サーバ管理部
４０８  中継テーブル
４０９  負荷情報テーブル
４１０  オペレーティングシステム
４１１  ＳＭＴＰ部
４１２  ＰＯＰ部
４１３  メールスプール
５０１  ＭＡＣ部
５０２  ＩＰ部
５０３  ＴＣＰ／ＵＤＰ部
５０４  制御情報通信部
５０５  転送部
５０６  ＰＯＰ部
５０７  制御部
５０８  中継サーバ情報テーブル
８０１  クライアント端末
８０２、８０３、８０５  中継サーバ
８０４  メールサーバ
８０６  ゲートウェイ装置
８０７  ファイアウォール
８０８  業務サーバ
８１８  管理者端末
９０１  利用者
Ｃ１、Ｃ２、Ｃ３  クライアント端末
ＳＶ１、ＳＶ２  サーバ
１１０１、１１０８  クライアント端末
１１０２、１１０７  ＮＡＴ
１１０３、１１０４、１１０５  中継サーバ
１１０６  メールサーバ
１１０９  セッション管理サーバ
１０１、１０５、１０９、１１０  クライアント端末
１０２、１０７、１１３  ファイアウォール
１０３、１０８、１１４  ゲートウェイ装置
１０４、１１５  業務サーバ
１０６、１１１  ＮＡＴ
１１２  中継サーバ
【図１】
2008225644.tif 000003
【図２】
2008225644.tif 000004
【図３】
2008225644.tif 000005
【図４】
2008225644.tif 000006
【図５】
2008225644.tif 000007
【図６】
2008225644.tif 000008
【図７】
2008225644.tif 000009
【図８】
2008225644.tif 000010
【図９】
2008225644.tif 000011
【図１０】
2008225644.tif 000012
【図１１】
2008225644.tif 000013
【図１２】
2008225644.tif 000014
【図１３】
2008225644.tif 000015
【図１４】
2008225644.tif 000016