(57)【要約】【課題】複数の拠点に存在するサーバ機器が相互に接続されるネットワークにおいて、コストを抑えつつ、クライアント機器がＶＰＮ接続する際の通信速度を効果的に向上させること。【解決手段】クライアント３が所定のサーバ１１に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスをクライアント３のｈｏｓｔｓファイルに設定する。【選択図】図１
2011217158.tif 000002
【特許請求の範囲】
【請求項１】
複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてクライアント機器がＶＰＮにより所定のサーバ機器にＶＰＮサーバ機器経由で接続する際の経路を選定するネットワーク経路選定方法であって、
前記クライアント機器が、スループット測定手段により、前記クライアント機器がＶＰＮ接続をしていないときに、前記複数の拠点にそれぞれ存在するサーバ機器にＶＰＮサーバ機器経由で接続し、前記クライアント機器とそれぞれのサーバ機器との間のスループット値を測定、もしくはクライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得するとともに、クライアントはＳＳＨを用いて各拠点のサーバ機器間のスループット値を取得し、測定もしくは取得したそれぞれのスループット値を記憶媒体の所定の領域に保存し、保存後に接続中のＶＰＮ接続を切断し、
前記クライアント機器が、経路選択手段により、前記記憶媒体の所定の領域に保存されたそれぞれのスループット値に基づき、前記クライアント機器が所定のサーバ機器に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスを前記クライアント機器のｈｏｓｔｓファイルに設定する
ことを特徴とするネットワーク経路選定方法。
【請求項２】
請求項１に記載のネットワーク経路選定方法において、
前記複数の拠点にそれぞれ存在するサーバ機器が、スループット測定手段により、サーバ機器間のスループット値を測定し、測定したサーバ機器間のスループット値を記憶媒体の所定の領域に保存する
ことを特徴とするネットワーク経路選定方法。
【請求項３】
複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてクライアント機器がＶＰＮにより所定のサーバ機器にＶＰＮサーバ機器経由で接続する際の経路を選定するネットワーク経路選定用プログラムであって、
前記クライアント機器がＶＰＮ接続をしていないときに、前記複数の拠点にそれぞれ存在するサーバ機器にＶＰＮサーバ機器経由で接続し、前記クライアント機器とそれぞれのサーバ機器との間のスループット値を測定、もしくはクライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得するとともに、クライントはＳＳＨを用いて各拠点のサーバ機器間のスループット値を取得し、測定もしくは取得したそれぞれのスループット値を記憶媒体の所定の領域に保存し、保存後に接続中のＶＰＮ接続を切断するスループット測定機能と、
前記記憶媒体の所定の領域に保存されたそれぞれのスループット値に基づき、前記クライアント機器が所定のサーバ機器に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスを前記クライアント機器のｈｏｓｔｓファイルに設定する経路選択機能と
をコンピュータに実現させることを特徴とするネットワーク経路選定用プログラム。
【請求項４】
複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてＶＰＮにより所定のサーバ機器にＶＰＮサーバ機器経由で接続する際の経路を選定することが可能なクライアント機器であって、
前記クライアント機器がＶＰＮ接続をしていないときに、前記複数の拠点にそれぞれ存在するサーバ機器にＶＰＮサーバ機器経由で接続し、前記クライアント機器とそれぞれのサーバ機器との間のスループット値を測定、もしくはクライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得するとともに、クライアントはＳＳＨを用いて各拠点のサーバ機器間のスループット値を取得し、測定もしくは取得したそれぞれのスループット値を記憶媒体の所定の領域に保存し、保存後に接続中のＶＰＮ接続を切断するスループット測定手段と、
前記記憶媒体の所定の領域に保存されたそれぞれのスループット値に基づき、前記クライアント機器が所定のサーバ機器に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスを前記クライアント機器のｈｏｓｔｓファイルに設定する経路選択手段と
を具備することを特徴とするクライアント機器。
【請求項５】
複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてクライアント機器がＶＰＮによりＶＰＮサーバ機器経由で接続する対象となるサーバ機器であって、
サーバ機器間のスループット値を測定し、測定したサーバ機器間のスループット値を記憶媒体の所定の領域に保存するスループット測定手段を具備し、
前記スループット測定手段により保存されたサーバ機器間のスループット値は、前記クライアント機器がＶＰＮによりＶＰＮサーバ機器経由で当該サーバ機器に接続してＳＳＨにより取得することが可能であることを特徴とするサーバ機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の拠点に存在するサーバ機器が相互に接続されるネットワークにおいてクライアント機器がＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）を通じて所定のサーバ機器に接続する際の経路を選定するネットワーク経路選定方法に関する。
【背景技術】
【０００２】
近年、クラウドコンピューティング技術に関する研究開発が進められている。クラウドを構成するサーバ環境の技術については日々進展している状態にあるが、クラウドから提供されるサービスを利用者のクライアント環境やネットワーク環境などに関しては、まだ課題が多く、改善すべき問題が残されている。
【０００３】
例えば、全国各地に支社や営業所などをもつ企業では遠隔地にある複数のデータセンターにサーバを所有していることがある。このような、企業ネットワークで、支社や営業所からデータセンターのサーバにアクセスするリモートアクセス方法として、支社や営業所とデータセンター間を専用線やインターネットＶＰＮなどのネットワーク回線、またこれらを複合した回線を使用してアクセスし、通信を行う。専用線は特定の２地点間を結ぶ回線であり、通信事業者によって回線が管理されているため、通信品質やセキュリティなどの点で非常に優れている。
【０００４】
これに対しインターネットＶＰＮはインターネット網を使用するため、専用線にくらべ低コストで通信をおこなうことができる、しかし、インターネット網は帯域保障が無く、セキュリティ確保のためのカプセル化や暗号化等の処理で通信速度が低下するという問題がある。
【０００５】
例えば、九州のデータセンターがあった場合、ユーザが東京から九州にインターネットＶＰＮを使用しアクセスをする場合や、複数のユーザが一斉に１つの拠点に対しインターネットＶＰＮでアクセスをすると、回線の遅延が発生する。
【０００６】
このような問題を解決するために、ルータ同士で帯域や負荷状況の情報を報告し合い、回線の状況に合わせて送信パケット量を制御することで、通信回線をできるだけ安定させて使用する事ができるダイナミックＶＰＮサービスを導入することが考えられる。また、通信速度の低下を解決するための技術として、特許文献１が挙げられる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−２２３３７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ダイナミックＶＰＮのサービスにおいては、導入するためにネットワークの再構築をする必要があり、設計構築に期間を要すことや、期間にともない費用も多く発生する。また、特許文献１の技術は、複数のプロバイダを通じて複数のＶＰＮトンネルを形成してＩＰパケットを同報通信する環境であれば活用できるかもしれないが、そうでない場合には活用することができない。
【０００９】
本発明は上記実情に鑑みてなされたものであり、複数の拠点に存在するサーバ機器が相互に接続されるネットワークにおいて、クライアント機器がインターネットＶＰＮ接続でする際、回線の混雑状況や回線の障害に対応した通信経路を選択することによって、安定的な通信経路でのアクセスが可能となり、さらに既存のネットワーク環境から機器の追加やネットワーク環境の再構築を必要がなく、経済的に実現することができる、ネットワーク経路選定方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一態様によるネットワーク経路選定方法は、複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてクライアント機器がＶＰＮにより所定のサーバ機器にＶＰＮサーバ機器経由で接続する際の経路を選定するネットワーク経路選定方法であって、前記クライアント機器が、スループット測定手段により、前記クライアント機器がＶＰＮ接続をしていないときに、前記複数の拠点にそれぞれ存在するサーバ機器にＶＰＮサーバ機器経由で接続し、前記クライアント機器とそれぞれのサーバ機器との間のスループット値を測定、もしくはクライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得するとともに、クライアントはＳＳＨを用いて各拠点のサーバ機器間のスループット値を取得し、測定もしくは取得したそれぞれのスループット値を記憶媒体の所定の領域に保存し、保存後に接続中のＶＰＮ接続を切断し、前記クライアント機器が、経路選択手段により、前記記憶媒体の所定の領域に保存されたそれぞれのスループット値に基づき、前記クライアント機器が所定のサーバ機器に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスを前記クライアント機器のｈｏｓｔｓファイルに設定することを特徴とする。
【００１１】
本発明の他の態様によるネットワーク経路選定方法は、請求項１に記載のネットワーク経路選定方法において、前記複数の拠点にそれぞれ存在するサーバ機器が、スループット測定手段により、サーバ機器間のスループット値を測定し、測定したサーバ機器間のスループット値を記憶媒体の所定の領域に保存することを特徴とする。
【００１２】
本発明の他の態様によるネットワーク経路選定用プログラムは、複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてクライアント機器がＶＰＮにより所定のサーバ機器にＶＰＮサーバ機器経由で接続する際の経路を選定するネットワーク経路選定用プログラムであって、前記クライアント機器がＶＰＮ接続をしていないときに、前記複数の拠点にそれぞれ存在するサーバ機器にＶＰＮサーバ機器経由で接続し、前記クライアント機器とそれぞれのサーバ機器との間のスループット値を測定、もしくはクライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得するとともに、クライントはＳＳＨを用いて各拠点のサーバ機器間のスループット値を取得し、測定もしくは取得したそれぞれのスループット値を記憶媒体の所定の領域に保存し、保存後に接続中のＶＰＮ接続を切断するスループット測定機能と、前記記憶媒体の所定の領域に保存されたそれぞれのスループット値に基づき、前記クライアント機器が所定のサーバ機器に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスを前記クライアント機器のｈｏｓｔｓファイルに設定する経路選択機能とをコンピュータに実現させることを特徴とする。
【００１３】
本発明の他の態様によるクライアント機器は、複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてＶＰＮにより所定のサーバ機器にＶＰＮサーバ機器経由で接続する際の経路を選定することが可能なクライアント機器であって、前記クライアント機器がＶＰＮ接続をしていないときに、前記複数の拠点にそれぞれ存在するサーバ機器にＶＰＮサーバ機器経由で接続し、前記クライアント機器とそれぞれのサーバ機器との間のスループット値を測定、もしくはクライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得するとともに、クライアントはＳＳＨを用いて各拠点のサーバ機器間のスループット値を取得し、測定もしくは取得したそれぞれのスループット値を記憶媒体の所定の領域に保存し、保存後に接続中のＶＰＮ接続を切断するスループット測定手段と、前記記憶媒体の所定の領域に保存されたそれぞれのスループット値に基づき、前記クライアント機器が所定のサーバ機器に接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスを前記クライアント機器のｈｏｓｔｓファイルに設定する経路選択手段とを具備することを特徴とする。
【００１４】
本発明の他の態様によるサーバ機器は、複数の拠点にそれぞれ存在するサーバ機器が相互に専用線で接続されるネットワークにおいてクライアント機器がＶＰＮによりＶＰＮサーバ機器経由で接続する対象となるサーバ機器であって、サーバ機器間のスループット値を測定し、測定したサーバ機器間のスループット値を記憶媒体の所定の領域に保存するスループット測定手段を具備し、前記スループット測定手段により保存されたサーバ機器間のスループット値は、前記クライアント機器がＶＰＮによりＶＰＮサーバ機器経由で当該サーバ機器に接続してＳＳＨにより取得することが可能であることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、複数の拠点に存在するサーバ機器が相互に接続されるネットワークにおいて、クライアント機器がインターネットＶＰＮ接続でする際、回線の混雑状況や回線の障害に対応した通信経路を選択することによって、安定的な通信経路でのアクセスが可能となり、さらに既存のネットワーク環境から機器の追加やネットワーク環境の再構築を必要がなく、経済的に実現することができる、ネットワーク経路選定方法を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態に係るネットワーク経路選定方法が適用されるネットワークシステムの第１の通信形態を模式的に示す図。
【図２】同ネットワークシステムの第２の通信形態を模式的に示す図。
【図３】クライアント３の機能構成の一例を示すブロック図。
【図４】サーバ１１，２１の機能構成の一例を示すブロック図。
【図５】クライアント３が備える設定ファイルの内容の一例を示す図。
【図６】サーバ１１，２１，クライアント３が備えるスループット測定結果ログファイル（測定結果ファイル）の内容の一例を示す図。
【図７】サーバ１１，２１が備える設定ファイルの内容の一例を示す図。
【図８】クライアント３が備えるアプリケーション３０による動作の前半部分を示すフローチャート。
【図９】クライアント３が備えるアプリケーション３０による動作の後半部分を示すフローチャート。
【図１０】図９の動作の中における優先測定値が「２」の場合の動作を示すフローチャート。
【図１１】図９の動作の中における優先測定値が「３」の場合の動作の前半部分を示すフローチャート。
【図１２】図９の動作の中における優先測定値が「３」の場合の動作の後半部分を示すフローチャート。
【図１３】サーバ１１，２１が備えるアプリケーション１０による動作を示すフローチャート。
【発明を実施するための形態】
【００１７】
以下、図面を参照して、本発明の実施の形態について説明する。
【００１８】
図１は、本発明の一実施形態に係るネットワーク経路選定方法が適用されるネットワークシステムの第１の通信形態を模式的に示す図である。また、図２は、同ネットワークシステムの第２の通信形態を模式的に示す図である。
【００１９】
なお、本実施形態では、便宜上、サーバ機器を「サーバ」と呼び、クライアント装置を「クライアント」と呼ぶことにする。
【００２０】
図１および図２に示されるように、例えばデータセンター１００，２００，…を単位とする複数の拠点のそれぞれには、１または複数のサーバが存在している。データセンター間は専用線で相互に接続される。専用線は、ある特定の２地点間を結ぶデータ通信専用の回線であり、本実施形態においては各拠点のＶＰＮサーバ（ルータ）同士がこの回線で接続される。ＶＰＮサーバは、ＶＰＮ通信を行うためのカプセル化、暗号化を行うサーバ・ルータ機能を有する。ＶＰＮ接続を開始する際、クライアントはＶＰＮサーバのホスト名を指定するようになっている。
【００２１】
図１および図２に示されるサーバ群は全体としてクラウド環境を構成し、インターネットＶＰＮを通じて個々のクライアントに各種のサービスを提供することができる。
【００２２】
図１および図２の例では、データセンター１００に、ＶＰＮサーバ（ルータ）１、このＶＰＮサーバ（ルータ）１に接続されるサーバ１１およびサーバ１２が備えられる。サーバ１１およびサーバ１２のうちの少なくとも１つ、例えばサーバ１１には、後述する設定ファイルの情報を用いて動作するアプリケーション１０が常駐している。また、データセンター２００には、ＶＰＮサーバ（ルータ）２、このＶＰＮサーバ（ルータ）２に接続されるサーバ２１およびサーバ２２が備えられる。サーバ２１およびサーバ２２のうちの少なくとも１つ、例えばサーバ２１には、上記アプリケーション１０と同じものが常駐している。ＶＰＮサーバ（ルータ）１とＶＰＮサーバ（ルータ）２とは専用線で接続され、データセンター１００内の個々のサーバとデータセンター２００内の個々のサーバとが当該専用線を介して通信を行える。
【００２３】
クライアント３は、ユーザが使用する端末である。このクライアント３は、インターネットＶＰＮにより各拠点の所定のサーバに接続して通信を行うことができる。インターネットＶＰＮは、インターネットを経由して構築される仮想的なプライベートネットワークである。インターネットＶＰＮを経由することによって、機密を保持したまま遠隔地のネットワーク同士をＬＡＮで接続しているのと同じように運用することができる。また、このクライアント３には、後述する設定ファイルの情報を用いて動作するアプリケーション３０が備えられる。さらに、このクライアント３には、ホスト名名前解決のネットワークシステムファイルである「ｈｏｓｔｓファイル」が備えられており、入力装置や表示装置を通じて接続先のホスト名とＩＰアドレスの設定が可能である。
【００２４】
ここで、図１に示される第１の通信形態が形成される一般的な手順について説明する。
【００２５】
例えばクライアント３は表示装置を通して、ＶＰＮ接続画面から、ユーザが入力した任意の文字列であるＶＰＮ接続先のホスト名を通信部が受け取る。当該ホスト名がｈｏｓｔｓファイルに設定される場合を考える。ここでは、ＶＰＮ接続先のホスト名がデータセンター１００を指しているものとする。クライアント３は、通信部４０を介し、当該ホスト名に対応するＩＰアドレスに対し、インターネットＶＰＮ接続を開始する。ここでは、当該ホスト名に対応するＩＰアドレスは、ＶＰＮサーバ１のＩＰアドレスであるものとする。これにより、クライアント３とデータセンター１００（ＶＰＮサーバ１）とのＶＰＮ接続が確立される。次に、接続画面を通じて、ユーザが入力した接続すべきサーバのＩＰアドレスを通信部で受け取る。ここでは、当該ＩＰアドレスはサーバ１１のＩＰアドレスであるものとする。これにより、ＶＰＮサーバ１は、指定されたＩＰアドレスの接続情報を確認し、クライアント３とサーバ１１との通信を開始する。
【００２６】
次に、図２に示される第２の通信形態が形成される一般的な手順について説明する。
【００２７】
ここでも、クライアント３の接続画面を通じてユーザが入力した、ＶＰＮ接続先のホスト名を通信部が受けとると、当該ホスト名がｈｏｓｔｓファイルに設定される場合を考える。ここでは、ＶＰＮ接続先のホスト名がデータセンター２００を指しているものとする。クライアント３は、当該ホスト名に対応するＩＰアドレスに対し、通信部４０を介して、インターネットＶＰＮ接続を開始する。ここでは、当該ホスト名に対応するＩＰアドレスは、ＶＰＮサーバ２のＩＰアドレスであるものとする。これにより、クライアント３とデータセンター２００（ＶＰＮサーバ２）とのＶＰＮ接続が確立される。次に、クライアント３の接続画面を通じて、ユーザが入力した接続すべきサーバのＩＰアドレスを通信部で受け取る、ここでは、当該ＩＰアドレスはサーバ１１のＩＰアドレスであるものとする。これにより、ＶＰＮサーバ２は、指定されたＩＰアドレスの接続情報を確認し、クライアント３とサーバ１１との通信を開始する。
【００２８】
以下では、図１および図２を参照しつつ、図３および図４を参照し、クライアント３およびサーバ１１，２１のそれぞれの機能構成について説明する。
【００２９】
図３は、図１および図２中に示されるクライアント３の機能構成の一例を示すブロック図である。
【００３０】
クライアント３は、オペレーティングシステム（ＯＳ）の下で常駐するアプリケーション３０を備える。このアプリケーション３０は、外部機器との通信のために通信部４０を使用すると共に、各種のファイルやリストなどの情報を記憶したり読み出したりするために記憶部（記憶媒体または記憶装置）４１〜４４を使用する。図３の例では、記憶部４１〜４４が別々の領域に配置されているが、勿論、これらの全てもしくはいくつかを１つの記憶部にまとめて配置するようにしてもよい。アプリケーション３０は、機能モジュールとして、スループット測定部５２および経路選択部５１を備える。
【００３１】
経路選択部５１は、記憶部４１に記憶される設定ファイルの内容に基づき、スループット測定部５２に対して後述する測定サーバＩＰアドレス等を伝えてスループット測定を指示する機能を有する。
【００３２】
スループット測定部５２は、経路選択部５１からの要求を受けて、経路測定部５１がクライアント３はＶＰＮ接続をしていないことを確認すると、記憶部４１に記憶されている設定ファイルの記載されているＩＰアドレスに基づいて、通信部４０を通じて複数の各拠点に存在する測定サーバにＶＰＮサーバ経由で接続し、クライアント３とそれぞれの測定サーバとの間の上りのスループット値を測定する。さらに、クライアントがＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアントへのスループットを測定するコマンドを実行し、測定結果を取得する。このスループット情報はクラアント、サーバ間の下りのスループット値である。ここでいうスループット測定は測定したいサーバのＩＰアレスに対して一定量のデータの送信を行い、送信にかかった時間を測定し、単位時間当たりの送信量の測定であり、一般的に使用されているスループット測定機であれば測定できる。
【００３３】
そして、クライントはＳＳＨを用いて、各拠点の測定サーバ間のスループット値を取得し、（具体的には、各拠点にある測定サーバのスループット測定結果ログファイルから最新の一行のスループット測定値を取得し、）測定もしくは取得したそれぞれのスループット値をスループット測定結果ログファイル（以下、「測定結果ファイル」と呼ぶ場合がある。）として記憶部４２に保存し、保存後に接続中のＶＰＮ接続を切断する機能である。ＳＳＨは、暗号や認証の技術を利用して、例えば遠隔地の機器からコマンドを実行したり、他の機器へファイルを移動したりするためのプログラムである。
【００３４】
また、経路選択部５１は、記憶部４２に保存された測定結果ファイルの中のそれぞれのスループット値に基づき、記憶部４３上に経路リストを作成し、また必要に応じて計算用リストも作成し、当該リストを用いて、クライアント３が所定のサーバに接続することが可能な経路のうち、最もスループットが高い経路を選択し、選択した経路に位置するＶＰＮサーバのアドレスをクライアント３の記憶部４４に記憶されているｈｏｓｔｓファイルに設定する機能を有する。
【００３５】
また、クライアントのサービス利用のＶＰＮ接続有無を監視する。
【００３６】
以下では、図３に示される各種の要素について、より詳細に説明する。
【００３７】
記憶部４１に記憶される設定ファイルは、スループット測定部５２がそれぞれの各データセンターにあるサーバとの間のスループット値を測定もしくは取得するとともにサーバ間のスループット値を取得するために必要な情報を有する。設定ファイルは、図５に示されるように、（１）動作間隔時間、（２）優先測定値、（３）ホスト名、（４）ＶＰＮサーバＩＰアドレス（接続拠点）、（５）測定サーバＩＰアドレス（接続拠点）、（６）ＶＰＮサーバＩＰアドレス（経由拠点）、（７）測定サーバＩＰアドレス（経由拠点）、といった情報を有する。
【００３８】
なお、「接続拠点」とは、接続サーバがある拠点を指す。ここで、「接続サーバ」とは、クラアントが接続する目的のサーバを指す。一方、「経由拠点」とは、接続拠点に接続する際に経由する拠点を指す。
【００３９】
（１）動作間隔時間は、スループット測定を実施する間隔時間である。具体的には、各サーバとの接続から、スループット測定、ｈｏｓｔｓファイルの書換えまでの一連の動作を行う間隔時間である。例えば、動作間隔時間を５分とした場合、サーバＡ、サーバＢと２つの測定サーバがあるとすると、ＡＭ１０：００にサーバＡを測定し全ての測定動作が例えば１分かかるとするとＡＭ１０：０１にサーバＢを測定する、その後ＡＭ１０：０５にサーバＡの測定が開始されＡＭ１０：０６にサーバＢが測定される。
【００４０】
（２）優先測定値は、経路選択の際に、選択された経路のスループット値の上り・下り、または両方の平均のどの情報を使用するかを指定する。本実施形態では、上りを優先することを「１」で表し、下りを優先することを「２」で示し、上りと下りの平均を優先することを「３」で表す。
【００４１】
（３）ホスト名は、接続サーバが存在する拠点のホスト名であり、選択した経路を書き換える対象のホスト名である。このホスト名は、ＶＰＮ接続を行う際に使用される。
【００４２】
（４）ＶＰＮサーバＩＰアドレス（接続拠点）は、接続サーバが存在する拠点のＶＰＮサーバのＩＰアドレスである。
【００４３】
（５）測定サーバＩＰアドレス（接続拠点）は、接続サーバが存在する拠点のスループット測定に使用するサーバのＩＰアドレスである。
【００４４】
（６）ＶＰＮサーバＩＰアドレス（経由拠点）は、経由拠点に存在するＶＰＮサーバのＩＰアドレスである。
【００４５】
（７）測定サーバＩＰアドレス（経由拠点）は、経由拠点に存在するスループット測定に使用するサーバのＩＰアドレスである。
【００４６】
記憶部４２に記憶されるスループット測定結果ログファイル（測定結果ファイル）は、スループット測定部５２が測定もしくは取得したそれぞれのサーバ間のスループット値を有する。この測定結果ファイルは、図６に示されるように、（１）測定開始時刻、（２）スループット測定値、といった情報を有する。
【００４７】
（１）測定開始時刻は、測定を開始した時刻である。
【００４８】
（２）スループット測定値は、測定したスループット値（Ｍｂｐｓ）である。
【００４９】
記憶部４３に記憶される経路リストおよび計算リストは、経路選択部５１が経路を選択するために必要な情報を有する。経路リストには、接続サーバに接続可能な、全ての経路のＶＰＮサーバＩＰアドレスとスループット測定値とを対応付けたリストが記載される。計算リストには、各経路の上りのスループット測定値と下りのスループット測定値と各接続サーバに接続可能な経路の上り下りのスループット値の平均値が記載される。
【００５０】
記憶部４４に記憶されるｈｏｓｔｓファイルは、ホスト名のほか、ホスト名に対応した、ＶＰＮ接続すべきＶＰＮサーバのアドレスを有する。このｈｏｓｔｓファイルには、経路選択部５１が選択した経路に位置するＶＰＮサーバのアドレスが設定される。
【００５１】
図４は、図１および図２中に示されるサーバ１１，２１の機能構成の一例を示すブロック図である。
【００５２】
サーバ１１，２１は、それぞれ、オペレーティングシステム（ＯＳ）の下で常駐するアプリケーション１０を備える。このアプリケーション１０は、外部機器との通信のために通信部６０を使用すると共に、各種のファイルを記憶したり読み出したりするために記憶部（記憶媒体、記憶装置）６１，６２を使用する。図４の例では、記憶部６１，６２が別々の領域に配置されているが、勿論、これらの全てもしくはいくつかを１つの記憶部にまとめて配置するようにしてもよい。アプリケーション１０は、機能モジュールとして、測定制御部６３およびスループット測定部６４を備える。
【００５３】
測定制御部６３は、記憶部６１に記憶される設定ファイルの内容に基づき、スループット測定部６４に対して測定サーバＩＰアドレス等を送りスループット測定を要求する機能を有する。スループット測定部６４は、測定制御部６３からの要求に従って、設定ファイルに記載された各拠点のサーバとの間のスループット値を測定し、測定したスループット値を記憶部６２に測定結果ファイルとして保存する。
【００５４】
以下では、図４に示される各種の要素について、より詳細に説明する。
【００５５】
記憶部６１に記憶される設定ファイルは、スループット測定部６４が他拠点のサーバとの間のスループット値を測定するために必要な情報を有する。設定ファイルは、図７に示されるように、（１）動作間隔時間、（２）測定サーバＩＰアドレス、といった情報を有する。
【００５６】
（１）動作間隔時間は、スループット測定を実施する間隔時間であり、動作はクラアントアプリケーションと同様である。
【００５７】
（２）測定サーバＩＰアドレスは、他拠点のスループット測定に使用するサーバのＩＰアドレスである。
【００５８】
記憶部６２に記憶されるスループット測定結果ログファイル（測定結果ファイル）は、スループット測定部６４が測定したスループット値を有する。ファイル名は、「測定元ＩＰアドレス」、「測定先サーバＩＰアドレス」、および「ＹＹＹＹＭＭＤＤ（本日日付）」の組合せで特定される。この測定結果ファイルは、図６に示されるように、（１）測定開始時間、（２）スループット測定値、といった情報を有する。
【００５９】
（１）測定開始時刻は、測定を開始した時刻である。
【００６０】
（２）スループット測定値は、測定したスループット値（Ｍｂｐｓ）である。
【００６１】
（クライアント３側のアプリケーション３０の動作の概要）
以下に、クライアント３側のアプリケーション３０の動作の概要を示す。
【００６２】
１）開始時の処理
・クライアント３のＯＳの起動時にアプリケーション３０が起動する。
【００６３】
・起動後、経路選択部５２が設定ファイルの読込みを行う。
【００６４】
・経路選択部５２は、クライアント３がサービス利用のＶＰＮ接続を行っているかの有無を確認する。
【００６５】
・スループット測定部５２は、サービス利用のＶＰＮ非接続時、通信部６０を介し、設定ファイルから読込んだ各拠点の測定サーバにＶＰＮ接続をおこない、ＶＰＮスループット測定等の処理を開始する。
【００６６】
・クライアントがサービス利用のＶＰＮ接続中の場合は、処理を行わず終了する。
【００６７】
２）スループット測定処理、情報収集蓄積処理
・設定ファイルに記載された各拠点のＶＰＮサーバと通信部４０によりＶＰＮ接続を確立し、上り・下りのスループットを測定し、上り・下りのスループット測定値を記憶部４２のスループット測定結果ログファイル（測定元ＩＰアドレス＿測定先サーバＩＰアドレス＿ＹＹＹＹＭＭＤＤ（本日日付）．ｌｏｇ）に追記または、新規に保存する。
【００６８】
・上りのスループット測定については、クライアント３から測定サーバへのスループットを測定する。
【００６９】
・下りのスループット測定については、クライアント３がＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアント３へのスループットを測定するコマンドを実行し、測定結果を取得する。
【００７０】
・クライアント３はＳＳＨを使用して、各拠点の測定サーバにある、サーバ間のスループット測定結果ログファイルの最新の１行のみを取得する。
【００７１】
ＶＰＮ接続を切断する。
【００７２】
・上記の処理を、設定ファイルにて設定されている、各拠点のサーバＩＰアドレス数分、繰り返す。
【００７３】
３）経路作成処理、経路設定処理
・経路選択部５１は、設定ファイルの優先測定値を参照し、経路の選択処理を行う。
【００７４】
・また、経路選択を行う前に、全ての経路のＶＰＮサーバＩＰアドレスとスループット測定値を格納するための経路リスト、および、各経路の上り・下りのスループット測定値と各接続サーバに接続可能な経路の上り下りのスループット値の平均値を格納するための計算用リストを、メモリ上の記憶部４３に生成する。
【００７５】
・各経路選択の方法は以下の通りである。
【００７６】
３−１）上りのスループット測定値が優先される場合
・クライアント３のスループット測定結果ログファイルより、クライアント３から測定サーバ（接続拠点）への上りスループット測定値を読込み、設定ファイルのＶＰＮサーバＩＰアドレス（接続拠点）の内容と合わせて、メモリ上の記憶部４３の経路リストに格納する。
【００７７】
・設定ファイルから測定サーバ（経由拠点）のＩＰアドレスのリストを読込み、次の処理を実施する。
【００７８】
・クライアント３のスループット測定結果ログファイルより、クライアント３から測定サーバ（経由拠点）への上りスループット測定値と、測定サーバ（経由拠点）から測定サーバ（接続拠点）への上りスループット測定値を読込み、クライアント３から測定サーバ（経由拠点）と測定サーバ（経由拠点）から測定サーバ（接続拠点）とのスループット測定値を比較し、スループット測定値の低い方の上りスループット測定値と測定サーバ（経由拠点）と同一拠点のＶＰＮサーバＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する。
【００７９】
・経路リストに格納された中で最もスループット測定値が高い経路を選択する。
【００８０】
３−２）下りのスループット測定値が優先される場合
・クライアント３のスループット測定結果ログファイルより、クライアント３から接続拠点への下りスループット測定値を読込み、設定ファイルのＶＰＮサーバＩＰアドレス（接続拠点）の内容と合わせて、メモリ上の記憶部４３の経路リストに格納する。
【００８１】
・設定ファイルから測定サーバＩＰアドレスのリストを読込み、測定サーバごとに次の処理を実施する。
【００８２】
・クライアント３のスループット測定結果ログファイルより、クライアント３から測定サーバ（経由拠点）への下りスループット測定値と、測定サーバ（経由拠点）から測定サーバ（接続拠点）への下りスループット測定値を読込み、クライアント３から測定サーバ（経由拠点）と測定サーバ（経由拠点）から測定サーバ（接続拠点）とのスループット測定値を比較し、スループット測定値低い方の下りスループット測定値と測定サーバと（経由拠点）同一拠点のＶＰＮサーバＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する。
【００８３】
・経路リストに格納された中で最もスループット測定値が高い経路を選択する。
【００８４】
３−３）上り・下りの平均が優先される場合
・クライアント３のスループット測定結果ログファイルより、クライアント３から接続拠点への上り・下りのスループット測定値を読込み、設定ファイルのＶＰＮサーバＩＰアドレス（接続拠点）の内容と合わせて、メモリ上の記憶部４３の計算用リストに格納する。
【００８５】
・設定ファイルから測定サーバＩＰアドレスのリストを読込み、測定サーバごとに次の処理を実施する。
【００８６】
・クライアント３の測定結果よりクライアント３から測定サーバ（経由拠点）への上り・下りのスループット測定値と、測定サーバ（経由拠点）から測定サーバ（接続拠点）への上り・下りのスループット測定値を読込み、それらを上り・下り別々に比較し低い方のスループット測定値を上り・下りのスループット測定値として、メモリ上の記憶部４３の計算用リストに格納する。
【００８７】
・計算用リストから上り・下りのすべてのスループット測定値の平均値を算出する。
【００８８】
・上り・下り別々に平均値に対するスループット測定値の割合を経路ごとに算出し、経路リストにスループット測定値の割合を算出し、それらを掛け合わせた値とＶＰＮサーバＩＰアドレスとを経路リストに格納する。
【００８９】
・経路リストに格納された中で最もスループット割合が最も高い経路を選択する。
【００９０】
４）経路情報更新処理
・クライアントのｈｏｓｔｓファイル内のホスト名に対応するＩＰアドレスが、上記で選択された経路のクライアント、ＶＰＮサーバ間のＶＰＮサーバのＩＰアドレスと異なる場合、ＩＰアドレスを変更する。
【００９１】
同一であった場合は、何もしない。
【００９２】
５）終了時の処理
・クラアント３がサービス利用のＶＰＮ接続を開始すると、クライント３のアプリケーション３０で行われる一連の処理は終了する。
【００９３】
・クライアント３サービス利用のＶＰＮ接続を終了すると、１度だけ、アプリケーション３０による一連の処理を実施する。
【００９４】
（サーバ１１，２１側のアプリケーション１０の動作の概要）
以下に、サーバ１１，２１側のアプリケーション１０の動作の概要を示す。
【００９５】
１）開始時の処理
・サーバのＯＳの起動時にアプリケーション１０が起動する。
【００９６】
２）スループット測定処理、情報収集蓄積処理
・設定ファイルで指定された測定サーバに対し、通信部６０により接続を開始し、スループット測定部６４により、スループット測定を実行する。このときサーバは測定先のサーバとの、上りのスループットを測定し、スループット測定値を記憶部６２の測定情報記憶部のスループット測定結果ログファイル（測定元ＩＰアドレス＿測定先サーバＩＰアドレス＿ＹＹＹＹＭＭＤＤ（本日日付）．ｌｏｇ）に追記または、新規に保存する。
【００９７】
３）終了時の処理
・上記の処理を、設定ファイルにて設定されている、各拠点のサーバＩＰアドレス数分、繰り返す。
【００９８】
（クライアント３側のアプリケーション３０の動作フロー）
次に、図８〜図１２のフローチャートを参照して、クライアント３側のアプリケーション３０の動作について説明する。
【００９９】
説明上、クライアント３と測定サーバ（接続拠点）の経路を回線Ａとし、クライアント３と測定サーバ（経由拠点）の経路を回線Ｂとし、測定サーバ（経由拠点）と測定サーバ（接続拠点）の経路を回線Ｃとする。
【０１００】
クライアント３のＯＳの起動時には、アプリケーション３０が起動される。起動後のアプリケーション３０は、ＯＳに常駐し、以下に示すような一連の処理を設定ファイルに設定された一定の間隔で繰り返す。
【０１０１】
アプリケーション３０は、クライアント３が通信部４０を通じてサービス利用のＶＰＮ接続を行っているか否かを判定する（図８のステップＳ１１）。サービス利用のＶＰＮ接続中であれば、何も行わず、処理を終了する。一方、サービス利用のＶＰＮ接続中でなければ、スループットの測定等のための処理を開始する。
【０１０２】
次に、アプリケーション３０は、経路選択部５１は、記憶部４１の設定ファイルから各拠点の測定サーバのＩＰアドレスと、各拠点のＶＰＮサーバのＩＰアドレスを読込む（ステップＳ１２）、スループット測定部５１は通信部４０を介して、クライアント３からそれぞれのＶＰＮサーバに対するインターネットＶＰＮ接続を要求し、接続を開始する（ステップＳ１３）。
【０１０３】
次に、アプリケーション３０は、経路選択部５１は、設定ファイルから優先測定値の情報を読み込み（ステップＳ１４）、優先測定値が「１」（上り）または「３」（上り・下りの平均）であるか否かを判定する（ステップＳ１５）。該当しなければ、ステップＳ２０へと進む。一方、該当すれば、アプリケーション３０は、スループット測定部５２により、クライアント３から各拠点に存在する、全ての測定サーバへのスループットを測定する（ステップＳ１６）。
【０１０４】
なお、クライアント３のスループット測定中にエラーが発生した場合や、サーバ間のスループット測定時に、測定サーバに接続する事が出来ないなど、エラーが発生した経路の測定結果については、０にする。
【０１０５】
次に、アプリケーション３０は、クライアント３の記憶部４２に同名（測定元ＩＰアドレス＿測定先サーバＩＰアドレス＿ＹＹＹＹＭＭＤＤ（本日日付）．ｌｏｇ）のスループット測定結果ログファイルが存在するか否かを判定する（ステップＳ１７）。存在しなければ、新たなスループット測定結果ログファイルを新規作成し、スループット測定結果を記憶部４２に保存する（ステップＳ１８）。一方、存在すれば、クライアント３の記憶部４２にあるスループット測定結果ログファイルに、スループット測定結果を追記し、上書き保存する（ステップＳ１９）。
【０１０６】
次に、優先測定値が「２」（上り）または「３」（上り・下りの平均）であるか否かを判定する（ステップＳ２０）。該当しなければ、ステップＳ２５へと進む。一方、該当すれば、アプリケーション３０は、ＳＳＨにて測定サーバにリモート接続を行い、測定サーバからクライアント３へのスループットを測定するコマンドを実行し、測定結果を取得する（ステップＳ２１）。
【０１０７】
次に、アプリケーション３０は、クライアント３の記憶部４２に同名のスループット測定結果ログファイルが存在するか否かを判定する（ステップＳ２２）。存在しなければ、新たなスループット測定結果ログファイルを新規作成し、スループット測定結果を保存する（ステップＳ２３）。一方、存在すれば、クライアント３の記憶部４２にあるスループット測定結果ログファイルに、スループット測定結果を追記し、上書き保存する（ステップＳ２４）。
【０１０８】
次に、アプリケーション３０は、ＳＳＨにてクライアント３から測定サーバにリモート接続し、測定サーバが保持するサーバ間のスループット測定結果ログファイルから最新のスループット測定値のみ（１行のみ）を取得し（ステップＳ２５）、ＶＰＮ接続を切断し（ステップＳ２６）、測定していない測定サーバ（経由拠点）があるか否かを判定する（ステップＳ２７）。測定していない測定サーバ（経由拠点）があれば、ステップＳ１３へ戻る。一方、測定していない測定サーバ（経由拠点）がなければ、図９のステップＳ３０へと進む。
【０１０９】
アプリケーション３０は、経路選択部５１により、設定ファイルから優先測定値の情報を読み込み（図９のステップＳ３０）、優先測定値が「１」（上り）であるか否かを判定する（ステップＳ３０）。該当しなければ、ステップＳ３１へと進む。一方、該当すれば、アプリケーション３０は、経路選択部５１により、クライアント３のスループット測定結果から回線Ａの上りのスループット測定値を読込み（ステップＳ３２）、スループット測定値とＶＰＮサーバＩＰアドレス（接続拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ３３）。
【０１１０】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから測定サーバＩＰアドレス（経由拠点）を１つ読み込み（ステップＳ３４）、クライアント３のスループット測定結果から回線Ｂの上りスループット測定値を読み込み（ステップＳ３５）、測定サーバ（経由拠点）の測定結果から回線Ｃの上りスループット測定値を読み込み（ステップＳ３６）、回線Ｂの上りスループット測定値が、回線Ｃの上りスループット測定値より低いか否かを判定する（ステップＳ３７）。回線Ｂのスループット測定値が低い場合、回線Ｂの上りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ３８）。一方、回線Ｂのスループット測定値が低くな場合、回線Ｃの上りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ３９）。
【０１１１】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから未読込の測定サーバ（経由拠点）のＩＰアドレスが存在するか否かを判定する（ステップＳ４０）。存在すれば、ステップＳ３４へ戻る。一方、存在しなければ、メモリ上の記憶部４３の経路リストからスループット測定値が最大である、経路のＶＰＮサーバＩＰアドレスを読込み（ステップＳ４１）、当該スループット測定値が最大となる経路のＶＰＮサーバＩＰアドレスと、メモリ上の記憶部４４のｈｏｓｔｓファイルのＩＰアドレスとが等しいか否かを判定する（ステップＳ４２）。等しければ、何もせず、一連の処理を終了する。一方、等しくなければ、ｈｏｓｔｓファイルのＩＰアドレスを書き換え（ステップＳ４３）、一連の処理を終了する。
【０１１２】
一方、ステップＳ３１において、優先測定値が「２」である場合は、アプリケーション３０は、経路選択部５１により、クライアント３のスループット測定結果から回線Ａの下りのスループット測定値を読込み（図１０のステップＳ５１）、スループット測定値とＶＰＮサーバＩＰアドレス（接続拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ５２）。
【０１１３】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから測定サーバＩＰアドレス（経由拠点）を１つ読み込み（ステップＳ５３）、クライアント３のスループット測定結果から回線Ｂの下りスループット測定値を読み込み（ステップＳ５４）、経由拠点の測定結果から回線Ｃの下りスループット測定値を読み込み（ステップＳ５５）、回線Ｂの下りスループット測定値が、回線Ｃの下りスループット測定値より低いか否かを判定する（ステップＳ５６）。回線Ｂのスループット測定値が低い場合、回線Ｂの下りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ５７）。一方、回線Ｂのスループット測定値が低くない場合、回線Ｃの下りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ５８）。
【０１１４】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから未読込の測定サーバＩＰアドレスが存在するか否かを判定する（ステップＳ５９）。存在すれば、ステップＳ５３へ戻る。一方、存在しなければ、図９のステップＳ４１へと進む。
【０１１５】
一方、図９のステップＳ３１において、優先測定値が「２」でなく、「３」である場合は、アプリケーション３０は、経路選択部５１により、クライアント３のスループット測定結果から回線Ａの上下のスループット測定値を読込み（図１１のステップＳ６１）、上下のスループット測定値とＶＰＮサーバＩＰアドレス（接続拠点）をメモリ上の記憶部４３の計算用リストに格納する（ステップＳ６２）。
【０１１６】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから測定サーバＩＰアドレス（経由拠点）を１つ読み込み（ステップＳ６３）、クライアント３のスループット測定結果から回線Ｂの上りスループット測定値を読み込み（ステップＳ６４）、回線Ｃの上りスループット測定値を読み込み（ステップＳ６５）、回線Ｂの上りスループット測定値が、回線Ｃの上りスループット測定値より低いか否かを判定する（ステップＳ６６）。回線Ｂのスループット測定値が低い場合、回線Ｂの上りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の計算用リストに格納する（ステップＳ６７）。一方、回線Ｂのスループット測定値が低くない場合、回線Ｃの上りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の計算用リストに格納する（ステップＳ６８）。
【０１１７】
次に、アプリケーション３０は、経路選択部５１により、クライアント３のスループット測定結果から回線Ｂの下りスループット測定値を読み込み（ステップＳ６９）、回線Ｃの下りスループット測定値を読み込み（ステップＳ７０）、回線Ｂの下りスループット測定値が、回線Ｃの下りスループット測定値より低いか否かを判定する（ステップＳ７１）。回線Ｂのスループット測定値が低い場合、回線Ｂの下りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の計算用リストに格納する（ステップＳ７２）。一方、回線Ｂのスループット測定値が低くない場合、回線Ｃの下りスループット測定値とＶＰＮサーバのＩＰアドレス（経由拠点）をメモリ上の記憶部４３の計算用リストに格納する（ステップＳ７３）。
【０１１８】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから読込んだ測定サーバＩＰアドレスに未選択のサーバＩＰアドレスが存在するか否かを判定する（ステップＳ７４）。存在しなければ、ステップＳ６３へ戻る。一方、存在すれば、図１２のステップＳ７６へと進む。
【０１１９】
次に、アプリケーション３０は、経路選択部５１により、メモリ上の記憶部４３の計算用リストから全ての上りスループット測定値と全ての下りスループット測定値の平均を算出し（ステップＳ７６）、上り下りの平均スループット測定値に対する回線Ａへの上りと下りのスループット測定値の割合を算出し（ステップＳ７７）、それぞれ算出した上りの割合と下りの割合を掛け合わせ（ステップＳ７８）掛け合わせた結果とＶＰＮサーバＩＰアドレス（接続拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ７９）。
【０１２０】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから測定サーバＩＰアドレス（経由拠点）を１つ読み込み（ステップＳ８０）、クライアント３のスループット測定結果から回線Ｂの上りと下りのスループット測定値を読み込み（ステップＳ８１）、測定サーバ（経由拠点）の測定結果から回線Ｃの上りと下りのスループット測定値を読み込む（ステップＳ８２）。
【０１２１】
次に、アプリケーション３０は、経路選択部５１により、回線Ｂの上りスループット測定値が、回線Ｃの上りスループット測定値より低いか否かを判定する（ステップＳ８３）。回線Ｂのスループット測定値が低い場合、平均の上りスループット測定値に対する回線Ｂの上りスループット測定値の割合を算出する（ステップＳ８４）。一方、回線Ｂのスループット低くない場合、平均の上りスループット測定値に対する回線Ｃの上りスループット測定値の割合を算出する（ステップＳ８５）。
【０１２２】
次に、アプリケーション３０は、経路選択部５１により、算出した上りスループット割合を、メモリ上の記憶領域４３の計算用リストに、上りスループット測定値割合として格納する（ステップＳ８６）。
【０１２３】
次に、アプリケーション３０は、経路選択部５１により、回線Ｂの下りスループット測定値が、回線Ｃの下りスループット測定値より低いか否かを判定する（ステップＳ８７）。回線Ｂのスループット低い場合、平均の下りスループット測定値に対する回線Ｂの下りスループット測定値の割合を算出する（ステップＳ８８）。一方、回線Ｂのスループット低くない場合、平均の下りスループット測定値に対する回線Ｃの下りスループット測定値の割合を算出する（ステップＳ９０）。
【０１２４】
次に、アプリケーション３０は、経路選択部５１により、算出した下りスループット割合を、メモリ上の記憶領域４３の計算用リストに、下りスループット測定値割合として格納する（ステップＳ９１）。
【０１２５】
次に、アプリケーション３０は、経路選択部５１により、上りスループット測定値割合と下りスループット測定値割合を掛け合わせ（ステップＳ９１）、掛け合わせたスループット測定値割合とＳ８１で読込んだ測定サーバ（経由拠点）と同じ拠点にある、ＶＰＮサーバＩＰアドレス（経由拠点）をメモリ上の記憶部４３の経路リストに格納する（ステップＳ９２）。
【０１２６】
次に、アプリケーション３０は、経路選択部５１により、設定ファイルから未読込の測定サーバＩＰアドレスが存在するか否かを判定する（ステップＳ９３）。存在すれば、ステップＳ５３へ戻る。一方、存在しなければ、図９のステップＳ４１へと進む。
【０１２７】
（サーバ１１，２１側のアプリケーション１０の動作フロー）
次に、図１３のフローチャートを参照して、サーバ１１，２１側のアプリケーション１０の動作について説明する。
【０１２８】
サーバ１１，２１のＯＳの起動時には、アプリケーション１０が起動される。起動後のアプリケーション１０は、ＯＳに常駐し、以下に示すような一連の処理を設定ファイルで設定された一定の間隔で繰り返す。
【０１２９】
アプリケーション１０は、経路選択部６３により、所定の記憶媒体または、記憶装置から設定ファイルを読込み、（ステップＳ１０１）、スループット測定部６４により、測定サーバ間のスループットを測定する（ステップＳ１０２）。
【０１３０】
なお、測定先サーバからエラーが返ってきた場合、測定結果は０とし、以降の処理を続けるようにする。
【０１３１】
次に、アプリケーション１０は、測定元サーバの記憶部６２に同名（測定元ＩＰアドレス＿測定先サーバＩＰアドレス＿ＹＹＹＹＭＭＤＤ（本日日付）．ｌｏｇ）のスループット測定結果ログファイルが存在するか否かを判定する（ステップＳ１０３）。存在しなければ、新たなスループット測定結果ログファイルを新規作成し、スループット測定結果を保存する（ステップＳ１０４）。一方、存在すれば、測定元サーバの記憶部６２にあるスループット測定結果ログファイルに、スループット測定結果を追記し、上書き保存する（ステップＳ１０５）。
【０１３２】
次に、アプリケーション１０は、測定していない拠点のサーバがあるか否かを判定する（ステップＳ１０６）。測定していない拠点のサーバがあれば、ステップＳ１０２へ戻る。一方、測定していない拠点のサーバがなければ、一連の処理を終了する。
【０１３３】
以上詳述したように本実施形態によれば、各拠点のデータセンターが専用線などの高品質な回線で少なくとも２つ以上の拠点と相互に接続され、クライントと拠点間がインターネットＶＰＮで接続される環境において、クラアントはアクセス可能なサーバのＩＰアドレスを所有し、サーバ間のスループットを測定し、サーバは相互に接続されるサーバのスループットを測定し保持する。クライアントは、サーバが保持している、スループット情報を収集し、最もスループットの高い経路を選択し、自身のｈｏｓｔｓファイル内のアドレスを選択したアドレスに更新することで、ユーザが目的のサーバにインターネットＶＰＮで接続を試みる際、相互接続される最もスループットの高い回線の拠点を介して目的のサーバにアクセスすることにより、従来のＶＰＮ接続より最適なアクセス、または通信を可能にするプログラムを提供することができる。
【０１３４】
また、プログラムはクライント端末、サーバ機にインストールするのみであり、ネットワークの再構築や機器の追加を行うことなく、少なくとも通信の劣化の問題を解消することが可能であり、最適経路でのアクセス可能なことから、回線障害時の障害回避も可能になる。
【０１３５】
上記実施形態で述べた各種の機能や処理手順は、コンピュータプログラムとして、コンピュータにより読み取り可能な記憶媒体または、記憶装置（例えば半導体メモリ，光ディスク，磁気ディスク）に記憶させておき、必要に応じてそれをプロセッサにより読み出して実行するようにしてもよい。また、このようなコンピュータプログラムは、通信媒体を介してあるコンピュータから他のコンピュータに伝送することにより配布することも可能である。
【０１３６】
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１３７】
１，２…ＶＰＮサーバ、３…クライアント、１０，３０…アプリケーション、１１，１２，２１，２２…サーバ、１００，２００…データセンター、４０，６０…通信部、４１〜４４…記憶部、５１…経路選択部、５２…スループット測定部、６１，６２…記憶部、６３…測定制御部、６４…スループット測定部。
【図１】
2011217158.tif 000003
【図２】
2011217158.tif 000004
【図３】
2011217158.tif 000005
【図４】
2011217158.tif 000006
【図５】
2011217158.tif 000007
【図６】
2011217158.tif 000008
【図７】
2011217158.tif 000009
【図８】
2011217158.tif 000010
【図９】
2011217158.tif 000011
【図１０】
2011217158.tif 000012
【図１１】
2011217158.tif 000013
【図１２】
2011217158.tif 000014
【図１３】
2011217158.tif 000015