(57)【要約】【課題】複数のＬＡＮを接続して実現されているネットワークで、ネットワーク管理者の意向に従って各ユーザに最適サーバを選択する方法を提供する。【解決手段】ユーザ端末識別子と、ユーザ端末までの経路情報を収集する経路情報収集手段２１と、サーバの識別子と、あるサーバヘの経路であることを特定する中継装置（特定中継装置）の識別子との対応関係が記述された特定中継装置テーブル２２と、ユーザ拠点までの経路情報に含まれる中継装置の識別子と、各サーバまでの経路情報を構成する中継装置の識別子を観測拠点に近い順に比較し、両方の中継装置の識別子が一致した場合にその中継装置識別子と対応つけられているサーバ識別子をユーザがアクセスするサーバとして回答する候補選択手段２３と、を有するサーバ選択装置２０。【選択図】        図２
2004349828.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータネットワークにおいて、複数の拠点が定義されていて、サーバ選択装置自身が属する拠点を観測拠点と定義し、同じコンテンツを有する複数のサーバがいくつかの拠点に分散配置されている環境において、経路情報とはある端末または拠点から別の端末または拠点まで到達するまでに経由する中継装置の識別子を順番に並べたものであるとし、前記複数のサーバの中からユーザをアクセスさせるサーバを選択するサーバ選択装置であって、
ユーザ端末識別子と、ユーザ端末識別子に基づいて観測拠点からユーザ端末までの経路情報を収集する経路情報収集手段と、
分散配置されているサーバの識別子と、観測拠点からあるサーバヘの経路であることを特定する特定中継装置の識別子との対応関係が記述された特定中継装置テーブルと、
特定中継装置テーブルからサーバ台数分の特定中継装置識別子およびサーバ識別子を受け取り、経路情報収集手段が収集した観測拠点からユーザ拠点までの経路情報に含まれる中継装置の識別子を観測拠点に近い順に各サーバに対応する特定中継装置識別子と比較し、両中継装置の識別子が一致した場合にその特定中継装置識別子から特定されるサーバの識別子をユーザがアクセスするサーバとして回答する候補選択手段と、
を有するサーバ選択装置。
【請求項２】
請求項１に記載のサーバ選択装置において、
候補選択手段は、経路情報取得手段から受け取ったユーザ端末までの経路情報に含まれる全ての中継装置識別子が、特定中継装置テーブルに登録されている全ての特定中継装置識別子と一致しなかった場合に、予め定めたサーバ識別子を選択結果として回答する手段を含む、ことを特徴とするサーバ選択装置。
【請求項３】
請求項１または請求項２に記載のサーバ選択装置において、
経路情報収集手段はユーザ拠点までの経路情報としてＮ個（Ｎは１以上の整数）の中継装置識別子を取得する毎に候補選択手段にそれらを渡す手段を含み、
さらに、経路情報収集手段は経路情報として収集した各中継装置までの観測拠点からの距離を記憶し、まだ取得していない観測拠点からの距離にある中継装置の識別子を取得する手段を含み、
候補選択手段は、経路情報収集手段からＮ個の中継装置識別子を取得する毎に、その中継装置識別子と各サーバに対応する特定中継装置識別子とを観測拠点に近い順に比較し、両中継装置識別子が一致した場合にその中継装置識別子から特定されるサーバの識別子を選択結果として回答する、
ことを特徴とするサーバ選択装置。
【請求項４】
請求項３に記載のサーバ選択装置において、
特定中継装置テーブルには、サーバ選択装置から各サーバまでの経路情報と各サーバ識別子の対応関係が記述されるものとし、
さらに特定中継装置テーブルは、各サーバがその時点で選択候補であるか否かを示す情報を併せて保持するものとし、
経路情報収集手段は取得したＮ個（Ｎは１以上の整数）の中継装置識別子と一緒にその中継装置の観測拠点からの距離を候補選択手段に通知し、
さらに経路情報収集手段は候補選択手段から指定されたＮ個の距離を使用して観測拠点からその距離にある中継装置の識別子を取得する手段を含み、
候補選択手段は、経路情報収集手段から受け取った各中継装置までの観測拠点からの距離を管理し、
さらに候補選択手段は、経路情報収集手段に経路情報収集の継続を指示し、その継続指示と同時に次に取得すべきＮ個の中継装置の観測拠点からの距離を指定し、
さらに候補選択手段は、各サーバが選択候補であるか否かを判断して、選択候補から除外されたサーバについては特定中継装置テーブルの当該サーバの選択候補識別情報の値を選択候補外を示す値に変更する手段を含む、
ことを特徴とするサーバ選択装置。
【請求項５】
請求項１から請求項４までに記載のサーバ選択装置において、
特定中継装置テーブルは、サーバ識別子の代わりに１台以上のサーバが設置されているサーバ拠点の識別子を保持し、
候補選択手段は、ユーザ拠点までの経路情報を構成する中継装置の識別子と、各サーバ拠点を特定する中継装置識別子あるいは各サーバ拠点までの経路情報を構成する中継装置の識別子を観測拠点に近い順に比較し、
両方の中継装置の識別子が一致した場合にはその中継装置識別子と対応つけられているサーバ拠点の識別子をサーバ選択結果として回答する、
ことを特徴とするサーバ選択装置。
【請求項６】
コンピュータネットワークにおいて、複数の拠点が定義されていて、サーバ選択装置自身が属する拠点を観測拠点と定義し、同じコンテンツを有する複数のサーバがいくつかの拠点に分散配置されている環境において、経路情報とはある端末または拠点から別の端末または拠点まで到達するまでに経由する中継装置の識別子を順番に並べたものであるとし、前記複数のサーバの中からユーザをアクセスさせるサーバを選択するサーバ選択装置のサーバ選択方法であって、
ユーザ端末識別子と、ユーザ端末識別子に基づいて観測拠点からユーザ端末までの経路情報を収集する経路情報収集ステップと、
分散配置されているサーバの識別子と、観測拠点からあるサーバヘの経路であることを特定する特定中継装置の識別子との対応関係が記述された特定中継装置テーブルからサーバ台数分の特定中継装置識別子およびサーバ識別子を受け取り、経路情報収集ステップが収集した観測拠点からユーザ拠点までの経路情報に含まれる中継装置の識別子を観測拠点に近い順に各サーバに対応する特定中継装置識別子と比較し、両中継装置の識別子が一致した場合にその特定中継装置識別子から特定されるサーバの識別子をユーザがアクセスするサーバとして回答する候補選択ステップと、
を有するサーバ選択方法。
【請求項７】
請求項６に記載のサーバ選択方法において、
候補選択ステップは、経路情報取得ステップから受け取ったユーザ端末までの経路情報に含まれる全ての中継装置識別子が、特定中継装置テーブルに登録されている全ての特定中継装置識別子と一致しなかった場合に、予め定めたサーバ識別子を選択結果として回答するステップを含む、ことを特徴とするサーバ選択方法。
【請求項８】
請求項６または請求項７に記載のサーバ選択方法において、
経路情報収集ステップはユーザ拠点までの経路情報としてＮ個（Ｎは１以上の整数）の中継装置識別子を取得する毎に候補選択ステップにそれらを渡すステップを含み、
さらに、経路情報収集ステップは経路情報として収集した各中継装置までの観測拠点からの距離を記憶し、まだ取得していない観測拠点からの距離にある中継装置の識別子を取得するステップを含み、
候補選択ステップは、経路情報収集ステップからＮ個の中継装置識別子を取得する毎に、その中継装置識別子と各サーバに対応する特定中継装置識別子とを観測拠点に近い順に比較し、両中継装置識別子が一致した場合にその中継装置識別子から特定されるサーバの識別子を選択結果として回答する、
ことを特徴とするサーバ選択方法。
【請求項９】
請求項８に記載のサーバ選択方法において、
特定中継装置テーブルには、サーバ選択装置から各サーバまでの経路情報と各サーバ識別子の対応関係が記述されるものとし、
さらに特定中継装置テーブルは、各サーバがその時点で選択候補であるか否かを示す情報を併せて保持するものとし、
経路情報収集ステップは取得したＮ個（Ｎは１以上の整数）の中継装置識別子と一緒にその中継装置の観測拠点からの距離を候補選択ステップに通知し、
さらに経路情報収集ステップは候補選択ステップから指定されたＮ個の距離を使用して観測拠点からその距離にある中継装置の識別子を取得するステップを含み、
候補選択ステップは、経路情報収集ステップから受け取った各中継装置までの観測拠点からの距離を管理し、
さらに候補選択ステップは、経路情報収集ステップに経路情報収集の継続を指示し、その継続指示と同時に次に取得すべきＮ個の中継装置の観測拠点からの距離を指定し、
さらに候補選択ステップは、各サーバが選択候補であるか否かを判断して、選択候補から除外されたサーバについては特定中継装置テーブルの当該サーバの選択候補識別情報の値を選択候補外を示す値に変更するステップを含む、
ことを特徴とするサーバ選択方法。
【請求項１０】
請求項６から請求項９までに記載のサーバ選択方法において、
特定中継装置テーブルは、サーバ識別子の代わりに１台以上のサーバが設置されているサーバ拠点の識別子を保持し、
候補選択ステップは、ユーザ拠点までの経路情報を構成する中継装置の識別子と、各サーバ拠点を特定する中継装置識別子あるいは各サーバ拠点までの経路情報を構成する中継装置の識別子を観測拠点に近い順に比較し、
両方の中継装置の識別子が一致した場合にはその中継装置識別子と対応つけられているサーバ拠点の識別子をサーバ選択結果として回答する、
ことを特徴とするサーバ選択方法。
【請求項１１】
請求項６から請求項９までに記載のサーバ選択方法の各ステップをコンピュータに実行させるためのサーバ選択プログラム。
【請求項１２】
請求項６から請求項９までに記載のサーバ選択方法の各ステップをコンピュータに実行させるためのサーバ選択プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はコンピュータネットワークに関し、特に分散配置された複数のサーバまたはサーバ設置拠点の中から個々のユーザをアクセスさせるサーバまたはサーバ設置拠点を選択して回答するサーバ選択装置、サーバ選択方法、サーバ選択プログラム、および記録媒体に関するものである。
【０００２】
【従来の技術】
（背景）
近年、エンタープライズＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｅｌｉｖｅｒｙ  Ｎｅｔｗｏｒｋ）が普及して来ている。エンタープライズＣＤＮとは、企業が大量の業務データを遠隔の地点間で効率的に送受信するためのネットワークである。例えば東京本社、大阪支社、名古屋支社の間で業務データを交換する場合などに使用される。一般にＣＤＮでは、同一データを保持する複数の配信サーバを分散配置することで、サーバ負荷やネットワーク負荷を軽減し、ユーザの利便性を向上させる。エンタープライズＣＤＮでは、分散している各拠点のＬＡＮ内部に配信サーバを設置している。ＬＡＮ間接続には、専用線サービスやＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）サービスを使用する。
【０００３】
また、ＣＤＮでは、分散配置したサーバの中からユーザがアクセスする１台を選択する必要がある。以前は、分散配置したサーバ、コンテンツのＵＲＩを全てユーザに通知し、ユーザ自らが都合のよいサーバを選択してきた。しかし、この方法ではユーザに負担を強いる難点があった。また、ユーザは回線容量やサーバ性能を考慮してアクセス先サーバを選択してくれるとは限らず、特定のサーバにアクセスが集中してしまい、サーバ負荷やネットワーク負荷の増大が原因となってサービス品質の低下を引き起こす可能性があった。
【０００４】
（従来技術の方式）
そこで、上記の問題を解決するために、ＣＤＮ側で自動的に個々のユーザにとっての最適サーバを選択する方法がこれまでに検討、実現されて来た。サーバ選択システムの導入により、ユーザはサーバ選択システムのＵＲＩのみを知っていれば良いことになり、ユーザにサーバを選択するという負担を強いる問題は解消された。
これまでに市販製品などで実現されているサーバ選択方式は、主に以下の２通りである。
【０００５】
［１］静的方式
ユーザ端末の識別子（例えばＩＰアドレス、ホスト名）やユーザ拠点の識別子（例えばＩＰサブネットのネットワークアドレス）と、それらのユーザにアクセスさせるサーバの識別子（ＩＰアドレス、ホスト名）またはサーバ設置拠点の識別子（ＩＰサブネットのネットワークアドレス）との対応関係を予め保持しておき、サーバ選択システムがユーザからのリクエストを受け付けるとＤＢ内を検索してユーザをアクセスさせるサーバを選択し、回答する。
【０００６】
［２］動的方式
予め定めた基準に基づいて、ユーザからのアクセス毎にサーバを選択する。同じユーザ端末からサーバ選択システムに複数回問い合わせた場合、問い合わせ毎に結果が異なる。
【０００７】
最も簡単な実現方法は、ＤＮＳラウンドロビンである。ＤＮＳサーバのレコードに、１つのサーバホスト名に対して複数のサーバのＩＰアドレスを登録しておき、クライアントからの要求に基づいてネーム解決を行う際に、登録されている複数のサーバのＩＰアドレスを順番に回答する方法である。（非特許文献１参照）
より高度な方式では、ホップ数、ＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）、回線容量などの基準に従ってユーザにとっての最適サーバを選択する方法がある。この方式は、市販の広域負荷分散装置で広く用いられている。
【０００８】
【非特許文献１】
ＲＦＣ１０３４  ＤＯＭＡＩＮ  ＮＡＭＥＳ  −  ＣＯＮＣＥＰＴＳ  ＡＮＤ  ＦＡＣＩＬＩＴＩＥＳ  ｐ．３５
【０００９】
【発明が解決しようとする課題】
専用線サービスやＶＰＮ技術を用いたＬＡＮ間接続で実現されているエンタープライズＣＤＮでは、以下の特徴／制約がある。
・ミラーサーバが設置されているＬＡＮ１に属するユーザが、同じくミラーサーバが設置されている別のＬＡＮ２にアクセスすることはパケットフィルタリングや認証機能によって制限されている場合が多い。
・ＬＡＮ内の回線速度と比較すると、各ＬＡＮを接続している専用線やインターネット（インターネットＶＰＮの場合）の回線速度は大幅に遅い。
・ＬＡＮではネットワークトポロジーがツリー状になっている場合が多い。
上記のエンタープライズＣＤＮの特徴により、前述の従来のサーバ選択方式では以下の問題が起こり得る。
【００１０】
（従来手法の問題点１）
エンタープライズＣＤＮの構成例を図８に示す。
図８では、ＬＡＮ１、ＬＡＮ２、ＬＡＮ３が専用線で接続されており、各ＬＡＮには複数の拠点（ＩＰサブネット）がツリー型のネットワークを構成している。各ＬＡＮ内のいずれかの拠点にミラーサーバＳ１、Ｓ２、Ｓ３が配置されており、ユーザＵ１、Ｕ２、Ｕ３が存在する。拠点間を接続する回線には広帯域（太線）と狭帯域（細線）の２種類がある。
【００１１】
以上で説明したエンタープライズＣＤＮにおいて、各ユーザにとっての最適サーバを選択することを考える。
しかし、従来のサーバ選択手法では以下の問題点がある。
【００１２】
（１）動的なサーバ選択方式
例えば図８において、ホップ数に基づいてユーザＵ３にとっての最適サーバを選択した場合、ユーザＵ３からサーバＳ２までは４ホップ、サーバＳ３までは５ホップなので、サーバＳ２が選択される。しかし、ユーザＵ３からサーバＳ２までの経路は、ユーザＵ３からサーバＳ３までの経路に比べて上流回線を経由する回数が多いので、同じ基準で他のユーザにも最適サーバを選択していった場合、上流回線を経由するトラフィックが増加することが考えられ、結果として回線容量不足に起因するサービス品質の低下を招く恐れがある。
【００１３】
同じく図８において、回線容量に基づいてユーザＵ１にとっての最適サーバを選択した場合、Ｕ１からＳ２までの回線の方が、Ｕ１からＳ１までの回線よりも広帯域なのでＳ２が選択される。しかし、Ｕ１からＳ２までのルータホップ数はＵ１からＳ１までのルータホップ数よりも多い。ルータの処理性能によっては、パケット処理遅延時間が重なり、サービス品質の低下が発生する可能性がある。
【００１４】
また、ＲＴＴに基づいて最適サーバを選択する場合、一般的にＲＴＴは数個の小さなパケットを送受信して測定するので、実際のサービス提供時に流れるパケットが大きくて多い場合にはサーバ選択時に参照したＲＴＴ値との隔たりが大きくなり、結果としてアプリケーション利用時には最適なサーバと言えない場合が考えられる。
【００１５】
さらに、図８において、各ＬＡＮの管理者がルータＲ１、Ｒ２、Ｒ３でアクセス制限を実施している場合には、上記方法で選択されたサーバにユーザがアクセスできないケースが考えられる。アクセス制限が行われている環境における動的サーバ選択方式の使用は困難である。
【００１６】
以上の問題を解決するためには、各ユーザをアクセスさせるサーバとして、各ユーザが属するＬＡＮの内部に設置されているサーバを選択することが望ましい。通常、ＬＡＮの内部では、アクセス制限はされていない。また、各々のＬＡＮには管理者がおり、回線帯域の不足やルータホップ数が多いなどの問題を管理者権限によって解決できる部分が多いからである。
【００１７】
したがって、エンタープライズＣＤＮにおいては、各ユーザが属するＬＡＮの内部に設置されているサーバを選択することが望ましい。動的なサーバ選択方式ではサーバ選択結果にＬＡＮ管理者の意向が必ずしも反映されるとは限らず、ＬＡＮ管理者の意向を踏まえ、ユーザにアクセスさせるサーバを確実に選択するには静的な方式の方が適している。
【００１８】
（２）静的なサーバ選択方式
しかし、静的なサーバ選択方式でも以下の問題点がある。
静的なサーバ選択方式では、ユーザ拠点とサーバ拠点との対応関係に基づいてサーバを選択する。従って、全てのユーザ拠点についてその対応関係をサーバ選択システムに予め登録しておく必要があるが、ユーザ拠点数が増えるとＤＢへのエントリが増えてしまい、検索時間が大きくなって回答までに要する時間が長くなると同時に、ＤＢ管理が困難になる。
【００１９】
また、サーバ拠点の追加／削除やネットワーク構成の変更が生じる度に登録内容の変更を行う必要があり、非常に手間がかかる。ＰＰＰｏＥでのアクセスや移動端末からのアクセスなど、ＩＰアドレスの変更が頻繁に発生する環境への適用が困難である。
【００２０】
さらに、傷害発生時などにネットワーク側で別の経路に繋ぎ替えられて接続性が確保されたとしても、サーバ選択システムの設定にそのことが反映されなければ結果としてユーザの利便性は著しく損なわれることになる。
【００２１】
以上の理由から、エンタープライズＣＤＮにおいては、従来の動的なサーバ選択方式では方式的に限界があり、静的なサーバ選択方式ではユーザおよびサーバの増加に伴いＤＢ管理にかかる手間が大きくなる。
【００２２】
また、以上の問題は複数のＬＡＮを接続する回線がＶＰＮの場合も同様である。ＬＡＮ間を結ぶネットワークがインターネットの場合は回線帯域がＬＡＮに比べて狭く、ルータホップ数も多い。電話網やフレームリレー網などの公衆網を使用する専用線ＶＰＮの場合も、広帯域回線を確保するには非常に大きなコストがかかることから現実的ではなく、ＬＡＮにくらべると回線帯域は狭い。
【００２３】
（発明の目的）
本発明の目的は、複数のＬＡＮを接続して実現されているエンタープライズＣＤＮのようなイントラネット等のネットワークにおいて、ネットワーク管理者の意向に従って、各ユーザにとっての最適サーバを選択する方法を提供することである。その際、従来の動的／静的なサーバ選択方式の良いところを組み合わせることで、ネットワーク管理者の意向を反映させながら、メンテナンスの負担を従来方式に比べて軽減できる方法を提供する。
【００２４】
【課題を解決するための手段】
（共通する前提）
各サーバ（またはサーバ設置拠点）について、そのサーバ（またはサーバ設置拠点）へ到達するためには必ず経由しなくてはならない中継装置（例えばＩＰネットワークにおけるルータ）であり、かつその中継装置を経由するとそのサーバ（またはサーバ設置拠点）にのみ到達可能な中継装置を予め決めておく。
【００２５】
それらの中継装置は、ネットワーク管理者が把握している内容を登録することも、何らかの手法で各サーバ（またはサーバ設置拠点）までの経路情報を収集し、それらを解析してサーバ（またはサーバ設置拠点）を特定する中継装置を検出することも可能である。
分散配置されているサーバの数だけ、特定中継装置が登録される。
【００２６】
（具体的な中継装置識別子の収集方法）
ＩＰネットワークにおいて、ある端末Ａから別の端末Ｂまでの経路情報を取得するには、ＵＮＩＸ  ＯＳに標準的に搭載されているｔｒａｃｅｒｏｕｔｅプログラム（Ｗｉｎｄｏｗｓ  ＯＳの場合はｔｒａｃｅｒｔプログラム）が便利である。
【００２７】
ｔｒａｃｅｒｏｕｔｅプログラムの動作原理を以下で説明する。ＩＰネットワーク中を流れるＩＰパケットのヘッダ部には、パケットの生存時間：ＴＴＬ（Ｔｉｍｅ−Ｔｏ−Ｌｉｖｅ）値が記載されている。ＩＰネットワーク中の中継装置は、転送するべきＩＰパケットを受信すると当該パケットのＴＴＬ値を１つ減算した後に宛先を判別して転送する。ＴＴＬ値を減算した結果、ＴＴＬ値が０になった場合、中継装置はそのパケットを廃棄し、代わりにそのパケットの送信元端末に対してパケットの生存時間が終了した旨のメッセージを送信する。これを利用して、ｔｒａｃｅｒｏｕｔｅプログラムは、ＴＴＬ値を１から順番に使用して、あるいは指定されたＴＴＬ値を使用して経路情報を収集することができる。
【００２８】
（本発明のサーバ選択装置がやっていることの概要）
本発明のサーバ選択装置は、ｔｒａｃｅｒｏｕｔｅプログラムと同様の方法で取得したユーザ端末までの経路情報の中に、あるサーバ（またはサーバ設置拠点）への到達を決定づける中継装置識別子が含まれていた場合、その中継装置識別子を検出した時点でユーザからのアクセスをそのサーバ（またはサーバ設置拠点）に振り分ける。
以下ではさらに詳細に説明する。
【００２９】
（手段１）
従来手法における問題を解決するため、図２に示すサーバ選択装置を発明した。図２のサーバ選択装置は、ユーザ端末識別子と、ユーザ端末識別子に基づいて観測拠点からユーザ端末までの経路情報（経路情報とはある端末または拠点から別の端末または拠点まで到達するまでに経由する中継装置の識別子を順番に並べたものである）を収集する経路情報収集手段と、分散配置されているサーバの識別子と、観測拠点からあるサーバヘの経路であることを特定する特定中継装置の識別子との対応関係が全てのサーバについて記述された特定中継装置テーブルと、特定中継装置テーブルからサーバ台数分の特定中継装置識別子およびサーバ識別子を受け取り、経路情報収集手段が収集した観測拠点からユーザ拠点までの経路情報に含まれる中継装置の識別子を観測拠点に近い順に各サーバに対応する特定中継装置識別子と比較し、両中継装置の識別子が一致した場合にその特定中継装置識別子から特定されるサーバの識別子をユーザがアクセスするサーバとして回答する候補選択手段と、を備える。
【００３０】
（手段２）
手段１のサーバ選択装置に改良を加えたサーバ選択装置である。サーバ選択装置の構成は手段１の場合と同じく図２の通りであるが、候補選択手段は、経路情報取得手段から受け取ったユーザ端末までの経路情報に含まれる全ての中継装置識別子が、特定中継装置テーブルに登録されている全ての特定中継装置識別子と一致しなかった場合に、予め定めたサーバ識別子を選択結果として回答する手段を含む、点が手段１のサーバ選択装置と異なる。
【００３１】
（手段３）
さらに、手段１および手段２のサーバ選択装置に改良を加えたサーバ選択装置である。サーバ選択装置の構成は手段１の場合と同じく図２の通りであるが、経路情報収集手段はユーザ拠点までの経路情報としてＮ個（Ｎは１以上の整数）の中継装置識別子を取得する毎に候補選択手段にそれらを渡す手段を含み、さらに、経路情報収集手段は経路情報として収集した各中継装置までの観測拠点からの距離を記憶し、まだ取得していない観測拠点からの距離にある中継装置の識別子を取得する手段を含み、候補選択手段は、経路情報収集手段からＮ個の中継装置識別子を取得する毎に、その中継装置識別子と各サーバに対応する特定中継装置識別子とを観測拠点に近い順に比較し、両中継装置識別子が一致した場合にその中継装置識別子から特定されるサーバの識別子を選択結果として回答する、点が手段１および手段２のサーバ選択装置とは異なる。
【００３２】
（手段４）
手段３のサーバ選択装置に改良を加え、図３に示すサーバ選択装置を発明した。図３に示すサーバ選択装置の構成要素は図２に示すサーバ選択装置と同じであるが、特定中継装置テーブルには、サーバ選択装置から各サーバまでの経路情報と各サーバ識別子の対応関係が記述されるものとし、さらに特定中継装置テーブルは、各サーバがその時点で選択候補であるか否かを示す選択候補識別情報を併せて保持するものとし、経路情報収集手段は取得したＮ個（Ｎは１以上の整数）の中継装置識別子と一緒にその中継装置の観測拠点からの距離を候補選択手段に通知し、さらに経路情報収集手段は候補選択手段から指定されたＮ個の距離を使用して観測拠点からその距離にある中継装置の識別子を取得する手段を含み、候補選択手段は、経路情報収集手段から受け取った各中継装置までの観測拠点からの距離を管理し、さらに候補選択手段は、経路情報収集手段に経路情報収集の継続を指示し、その継続指示と同時に次に取得すべきＮ個の中継装置の観測拠点からの距離を指定し、さらに候補選択手段は、各サーバが選択候補であるか否かを判断して、選択候補から除外されたサーバについては特定中継装置テーブルの当該サーバの選択候補識別情報の値を選択候補外を示す値に変更する手段を含む、点が手段３のサーバ選択装置とは異なる。
【００３３】
（手段５）
手段１から手段４までのサーバ選択装置に改良を加えたサーバ選択装置である。サーバ選択装置の構成は手段１から手段３の場合は図２、手段４の場合は図３と同じであるが、特定中継装置テーブルは、サーバ識別子の代わりに１台以上のサーバが設置されているサーバ拠点の識別子を保持し、候補選択手段は、ユーザ拠点までの経路情報を構成する中継装置の識別子と、各サーバ拠点を特定する中継装置識別子あるいは各サーバ拠点までの経路情報を構成する中継装置の識別子を観測拠点に近い順に比較し、両方の中継装置の識別子が一致した場合にはその中継装置識別子と対応つけられているサーバ拠点の識別子をサーバ選択結果として回答する、点が手段１から手段４までのサーバ選択装置とは異なる。
【００３４】
【発明の実施の形態】
［実施例１］
本発明の第１の実施例について説明する。本実施例で説明するサーバ選択方式の機能ブロック図を図２に示す。
【００３５】
本実施例のサーバ選択装置２０は、ユーザ端末識別子と、ユーザ端末識別子に基づいて自身からユーザ端末までの経路情報（経路情報とはある端末または拠点から別の端末または拠点まで到達するまでに経由する中継装置の識別子を順番に並べたものである）を収集する経路情報収集手段２１と、分散配置されているサーバの識別子と、観測拠点から各サーバヘの経路であることを特定する特定中継装置の識別子との対応関係が記述された特定中継装置テーブル２２と、特定中継装置テーブル２２からサーバ台数分の特定中継装置識別子およびサーバ識別子を受け取り、経路情報収集手段２１が収集した観測拠点からユーザ拠点までの経路情報に含まれる中継装置の識別子を観測拠点に近い順に各サーバに対応する特定中継装置識別子と比較し、両中継装置の識別子が一致した場合にその特定中継装置識別子から特定されるサーバの識別子をユーザがアクセスするサーバとして回答する候補選択手段２３と、で構成される。
【００３６】
図１のネットワーク図を例に本実施例におけるサーバ選択手順を説明する。図１において、Ｒ０、Ｒ１ａ、Ｒ１ｂ、Ｒ１ｃ、Ｒ１ｄ、Ｒ２ａ、Ｒ３ａは各中継装置の中継装置識別子であり、Ｓ１、Ｓ２、Ｓ３は各サーバのサーバ識別子であり、Ｕ１、Ｕ２、Ｕ３は各ユーザ端末のユーザ端末識別子である。
【００３７】
ネットワークは３つのＬＡＮ（ＬＡＮ１、ＬＡＮ２、ＬＡＮ３）が中継装置Ｒ０で接続されている。ＬＡＮ１の中継装置Ｒ１ａでは、ＬＡＮ１内部に設置されているサーバＳ１に対する他のＬＡＮに属するユーザ（図のＵ２、Ｕ３）からのアクセスを制限しているものとする。ＬＡＮ２の中継装置Ｒ２ａ、ＬＡＮ３の中継装置Ｒ３ａにおいても同様のアクセス制限が行われているものとする。特定中継装置テーブル２２には、各サーバを特定する特定中継装置識別子と、サーバ識別子の対応関係が全てのサーバについて記述されている。
【００３８】
サーバ選択装置２０から見て、ＬＡＮ１内部に設置されているサーバＳ１に到達するためには、中継装置Ｒ１ａを経由する必要がある。同様にＬＡＮ２内部のサーバＳ２に到達するためには中継装置Ｒ２ａを、ＬＡＮ３に内蔵のサーバＳ３に到達するためには中継装置Ｒ３ａをそれぞれ経由する必要がある。従って、中継装置Ｒ１ａ、中継装置Ｒ２ａ、中継装置Ｒ３ａが特定中継装置であり、Ｒ１ａ、Ｒ２ａ、Ｒ３ａがそれぞれサーバ識別子Ｓ１、Ｓ２、Ｓ３に対応する特定中継装置識別子であるから、特定中継装置テーブル２２の内容は図４の通りとなる。
【００３９】
ユーザＵ１に対してサーバ選択装置２０がサーバを選択する際の手順を以下で説明する。
【００４０】
（１）経路情報収集手段２１がユーザ端末Ｕ１の識別子を受け取る。
【００４１】
（２）経路情報収集手段２１は、ｔｒａｃｅｒｏｕｔｅプログラムと同様の手法で、ユーザ端末Ｕ１までの経路情報ｒ（Ｕ１）を一括して取得する。
【数１】
ｒ（Ｕ１）＝｛Ｒ１ａ，Ｒ１ｂ，Ｒ１ｃ｝
【００４２】
（３）経路情報収集手段２１は、取得した経路情報ｒ（Ｕ１）を候補選択手段２３に渡す。
【００４３】
（４）経路情報ｒ（Ｕ１）を受け取った候補選択手段２３は、経路情報ｒ（Ｕ１）に含まれる中継装置識別子Ｒｘをサーバ選択装置２０に近い順に、特定中継装置テーブル２２（図４）に登録されている各サーバＳ１、Ｓ２、Ｓ３までの経路であることを特定する中継装置識別子Ｒ１ａ、Ｒ２ａ、Ｒ３ａと比較し、両者が一致したらそのサーバ識別子を選択サーバとして回答する。
【００４４】
図１の場合、ｒ（Ｕ１）に含まれる中継装置識別子のうち、サーバ選択装置２０に最も近いのはＲ１ａである。これは、特定中継装置テーブル２２（図４）に登録されているＳ１までの経路であることを特定する中継装置識別子Ｒ１ａと一致する。従って、サーバ選択装置２０はユーザＵ１に対してサーバＳ１を選択サーバとして回答する。
【００４５】
［実施例２］
本発明の第２の実施例は、ユーザをアクセスさせるサーバを特定できなかった場合の処理に関するものである。以下、図５のネットワークを例に、本発明の第２の実施例について説明する。本実施例におけるサーバ選択装置の構成、サーバ選択手順は実施例１の場合と同じである。また、図５における符号の意味は図１の符号と同様である。
【００４６】
観測拠点からユーザ端末Ｕ４までの経路情報ｒ（Ｕ４）を構成する全ての中継装置識別子Ｒ４ａは、サーバＳ１、Ｓ２、Ｓ３を特定する中継装置Ｒ１ａ、Ｒ２ａ、Ｒ３ａと一致しない。このように、ユーザ端末までの経路情報に含まれる全ての中継装置識別子が全ての特定中継装置識別子と一致しなかった場合、本実施例では特定中継装置テーブル２２（図４）の最初（最も上段）に記述されているサーバ識別子を選択結果として回答するものとする。従って、本実施例ではサーバＳ１を選択結果として回答する。
【００４７】
ユーザ端末までの経路情報に含まれる全ての中継装置識別子が全ての特定中継装置識別子と一致しなかった場合に選択するサーバの決定方法として他の方法も考えられ、例えば特定中継装置テーブル２２（図４）に登録されている全サーバ識別子の中からランダムに選択する方法、全サーバ識別子をラウンドロビンで選択する方法などがある。また、サーバを選択できなかった旨のメッセージを回答する方法もある。
【００４８】
［実施例３］
本発明の第３の実施例は、ルータ識別子をＮ個取得する毎に判断し、終了／継続する場合に関する。以下、本発明の第３の実施例について説明する。
【００４９】
本実施例におけるサーバ選択装置の構成は実施例１の場合すなわち図２に示したサーバ選択装置２０と同じであるが、経路情報収集手段２１はユーザ拠点までの経路情報としてＮ個（Ｎは１以上の整数）の中継装置識別子を取得する毎に候補選択手段２３にそれらを渡す手段（図示していない）を含み、さらに、経路情報収集手段２１は経路情報として収集した各中継装置までの観測拠点からの距離を記憶し、まだ取得していない観測拠点からの距離にある中継装置の識別子を取得する手段（図示していない）を含み、候補選択手段２３は、経路情報収集手段２１からＮ個の中継装置識別子を取得する毎に、その中継装置識別子と各サーバに対応する特定中継装置識別子とを観測拠点に近い順に比較し、両中継装置識別子が一致した場合にその中継装置識別子から特定されるサーバの識別子を選択結果として回答する、点が実施例１のサーバ選択装置と異なる。
【００５０】
図１のネットワーク図を例に本実施例におけるサーバ選択手順を説明する。特定中継装置テーブル２２の構成は図４の通りである。３つのＬＡＮの中継装置Ｒ１ａ、Ｒ２ａ、Ｒ３ａでは、各ＬＡＮ内部に設置されているサーバＳ１、Ｓ２、Ｓ３に対する他のＬＡＮ内ユーザからのアクセスを制限しているものとする。
【００５１】
本実施例では、観測拠点から中継装置までの距離として経由した中継装置の数（ＩＰネットワークにおけるルータホップ数）を用いる。ｔｒａｃｅｒｏｕｔｅコマンドと同様の手法で経路情報を収集する本実施例においては、経路情報収集手段が送出するパケットのＴＴＬ値に相当する。例えばあるＴＴＬ値ｔを使用した場合に中継装置識別子Ｒｘが得られたとすると、観測拠点から中継装置Ｒｘまでの距離はｔである。
【００５２】
経路情報取得手段２１が一度に取得する中継装置識別子の数Ｎが１であるとし、ユーザＵ１に対してサーバを選択する際の手順を以下で説明する。
【００５３】
（１）経路情報収集手段２１がユーザ端末Ｕ１の識別子を受け取る。
【００５４】
（２）経路情報収集手段２１は、ｔｒａｃｅｒｏｕｔｅプログラムと同様の手法で、ユーザ端末Ｕ１までの中継装置識別子をサーバ選択装置２０に近い順にＮ個取得する。今回はＮ＝１なので、Ｒ１ａを取得する。
【００５５】
（３）経路情報収集手段２１は、取得した中継装置識別子Ｒ１ａを候補選択手段２３に渡す。
【００５６】
（４）中継装置識別子Ｒ１ａを受け取った候補選択手段２３は、特定中継装置テーブル２２（図４）に登録されている各サーバＳ１、Ｓ２、Ｓ３までの経路であることを特定する中継装置識別子Ｒ１ａ、Ｒ２ａ、Ｒ３ａと比較し、両者が一致したらそのサーバ識別子を選択サーバとして回答する。今回の場合、取得した中継装置識別子Ｒ１ａはサーバＳ１までの経路であることを特定する中継装置識別子Ｒ１ａと一致する。従って、サーバ選択装置２０はユーザＵ１に対してサーバＳ１を選択サーバとして回答する。
【００５７】
本実施例のように、一度に取得する経路情報の情報量（中継装置識別子の数）が少なくてもサーバを選択することができる。このような場合、サーバ選択処理時間の短縮が実現できる。また、中継装置識別子取得のためにネットワーク中を流れるパケット数を減らすことができ、ネットワーク負荷を低減できる。
【００５８】
［実施例４］
本発明の第４の実施例は、使用するＴＴＬを判断手段が指定する例である。以下、本発明の第４の実施例について説明する。
【００５９】
本実施例におけるサーバ選択装置の構成を図３に示す。本実施例におけるサーバ選択装置３０の構成要素は、基本的には実施例１の場合と同じであるが、特定中継装置テーブル３２には、サーバ選択装置３０から各サーバまでの経路情報と各サーバ識別子の対応関係が記述されるものとし、さらに特定中継装置テーブル３２は、各サーバがその時点で選択候補であるか否かを示す選択候補識別情報を併せて保持するものとし、経路情報収集手段３１は取得したＮ個（Ｎは１以上の整数）の中継装置識別子と一緒にその中継装置の観測拠点からの距離を候補選択手段３３に通知し、さらに経路情報収集手段３１は候補選択手段３３から指定されたＮ個の距離を使用して観測拠点からその距離にある中継装置の識別子を取得する手段（図示していない）を含み、候補選択手段３３は、経路情報収集手段３１から受け取った各中継装置までの観測拠点からの距離を管理し、さらに候補選択手段３３は、経路情報収集手段３１に経路情報収集の継続を指示し、その継続指示と同時に次に取得すべきＮ個の中継装置の観測拠点からの距離を指定し、さらに候補選択手段３３は、各サーバが選択候補であるか否かを判断して、選択候補から除外されたサーバについては特定中継装置テーブル３２の当該サーバの選択候補識別情報の値を選択候補外を示す値に変更する手段（図示していない）を含む、点が異なる。
【００６０】
図７のネットワーク図を例に本実施例におけるサーバ選択手順を説明する。なお、図７の符号の意味は図１と同様である。
【００６１】
ネットワークは３つのＬＡＮ（ＬＡＮ１、ＬＡＮ２、ＬＡＮ３）が中継装置Ｒ０で接続されている。ＬＡＮ１の中継装置Ｒ１ａでは、ＬＡＮ１内部に設置されているサーバＳ１およびＳ４に対する他のＬＡＮに属するユーザ（図のＵ２、Ｕ３）からのアクセスを制限しているものとする。ＬＡＮ２の中継装置Ｒ２ａ、ＬＡＮ３の中継装置Ｒ３ａにおいても同様のアクセス制限が行われているものとする。
【００６２】
本実施例では、観測拠点から中継装置までの距離として前記実施例３と同様に経由した中継装置の数、すなわち経路情報収集手段が送出するパケットのＴＴＬ値に相当する。
【００６３】
特定中継装置テーブル３２には、サーバ識別子Ｓ１、Ｓ２、Ｓ３、Ｓ４と、各サーバＳ１からＳ４までの経路情報ｒ（Ｓ１）からｒ（Ｓ４）までと、各サーバが選択候補であるか否かを示す選択候補識別情報Ｃ（Ｓ１）からＣ（Ｓ４）までが、全てのサーバについて記述されている。本実施例では、Ｃ（Ｓｘ）＝１ならばＳｘは選択候補サーバであるとし、Ｃ（Ｓｘ）＝０ならばＳｘは選択候補から除外されたものとする。最初は全てのサーバが選択候補なので、Ｃ（Ｓ１）からＣ（Ｓ４）の初期値は１である。以上より、特定中継装置テーブルは図６の通りとなる。
【００６４】
経路情報取得手段が一度に取得する中継装置識別子の数Ｎが１であるとし、ユーザＵ１に対してサーバを選択する際の手順を以下で説明する。
【００６５】
（１）経路情報収集手段３１がユーザ端末Ｕ１の識別子を受け取る。
【００６６】
（２）経路情報収集手段３１は、ｔｒａｃｅｒｏｕｔｅプログラムと同様の手法で、ユーザ端末Ｕ１までの中継装置識別子をサーバ選択装置３０に近い順にＮ個取得する。今回はＮ＝１なので、Ｒ１ａを取得する。
【００６７】
（３）経路情報収集手段３１は、取得した中継装置識別子Ｒ１ａを候補選択手段３３に渡す。
【００６８】
（４）中継装置識別子Ｒ１ａを受け取った候補選択手段３３は、特定中継装置テーブル３２（図６）に登録されている各サーバＳ１、Ｓ２、Ｓ３、Ｓ４までの経路ｒ（Ｓ１）からｒ（Ｓ４）までに含まれる中継装置識別子のうち最初のもの（ＴＴＬ＝１の場合に取得できるもの）と比較する。この場合、サーバＳ１への経路およびサーバＳ４への経路に含まれるＲ１ａが一致する。中継装置識別子が一致しなかったサーバＳ２とＳ３についてはこの時点で選択候補から除外となるため、候補選択手段３３は特定中継装置テーブル（図６）のＣ（Ｓ２）、Ｃ（Ｓ３）の値を０に変更する。
【００６９】
（５）候補選択手段３３は、経路情報収集手段３１に対してユーザ端末Ｕ１までの中継装置識別子の取得継続を指示する。その際に次に使用するＴＴＬ値を併せて指定する。ただし、今回の例では、ｒ（Ｓ１）とｒ（Ｓ４）のどちらの経路においてもＴＴＬ＝２の場合の中継装置識別子が同一である。すなわち、次にＴＴＬ＝２としてユーザ端末への経路に含まれる中継装置識別子を取得しても、Ｓ１とＳ４のどちらかを選択する材料とはならない。
【００７０】
一方、ＴＴＬ＝３の場合、Ｓ１までの経路に含まれる中継装置識別子はＲ１ｃ、Ｓ４までの経路に含まれる中継装置識別子はＲ１ｄであるため、ユーザ端末Ｕ１までの経路においてＴＴＬ＝３の場合に取得できる中継装置識別子に基づいて判断すればよい。
【００７１】
したがって、候補選択手段３３は、経路情報収集手段３１に対して、次に使用するＴＴＬ＝３を指定して経路情報収集処理の継続を指示する。
【００７２】
（６）処理の継続を指示された経路情報収集手段３１は、併せて指定された次に使用するＴＴＬ値＝３を使用してユーザ端末Ｕ１までの経路に含まれる中継装置識別子を取得する。その結果、Ｒ１ｃを得て、候補選択手段３３に通知する。
【００７３】
（７）候補選択手段３３は、特定中継装置テーブル３２（図６）のうち、各サーバが選択候補であるか否かを示すＣ（Ｓ１）からＣ（Ｓ４）までの値を参照し、選択候補として残っているサーバを特定する。この時点ではＳ１とＳ４が選択候補として残っている。
【００７４】
候補選択手段は、Ｓ１およびＳ４までの経路情報ｒ（Ｓ１）およびｒ（Ｓ４）に含まれるＴＴＬ＝３の場合の中継装置識別子Ｒ１ｃおよびＲ１ｄと、経路情報収集手段３１から受け取った中継装置識別子Ｒ１ｃを比較する。ここでＲ１ｃが一致するので、候補選択手段３１は、Ｓ１を選択サーバとしてユーザＵ１に回答する。
【００７５】
［実施例５］
本発明の第５の実施例は、サーバ識別子ではなく、サーバ拠点識別子を登録しておく例である。以下、本発明の第５の実施例について説明する。
【００７６】
本実施例のサーバ選択装置は、サーバが設置されている拠点を選択、回答する。
１つのサーバ拠点に複数のサーバが設置されている場合、ユーザは何らかの判断基準に従って、あるいは別のサーバ選択装置に問い合わせるなどして実際にアクセスする１台のサーバを決定する。
【００７７】
サーバ選択装置を構成する各手段は実施例１から実施例４までで説明した内容と基本的に同じであるが、特定中継装置テーブルに登録されていたサーバ識別子の代わりに、本実施例ではサーバ拠点識別子が登録される。
【００７８】
なお、本発明の装置はコンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通じて提供することも可能である。
【００７９】
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【００８０】
【発明の効果】
以上で説明したように、本発明により、エンタープライズＣＤＮ等のネットワークにおいてネットワーク管理者の意向を考慮したサーバ選択を行うことで以下の効果が得られる。
・エンタープライズＣＤＮ等のネットワークを構成する各ＬＡＮにおいて、他のＬＡＮとの接続点においてアクセス制限が行われている場合でも、各ユーザをそのＬＡＮ内に設置されているサーバに割り当てることが出来る。すなわち、ユーザは選択されたサーバに確実に（アクセス制限されずに）アクセスできる。
・ネットワークを流れるトラフィックを削減できる。特に、ツリー型ネットワークにおいては上流へ遡るトラフィックを減らすことができ、その結果として帯域消費に基づく通信品質の劣化を抑制することが可能になる。特に、一定期間にわたり一定帯域を消費するストリーミングアプリケーションに対しては有効である。
・ユーザ端末のＩＰアドレスまたはネットワークアドレスをテーブルに保持し、ユーザからのリクエストを受け付けた際にテーブルを参照してサーバを選択する従来方法に比べて、テーブルのサイズを小さくでき、処理の高速化が図れる。
・ネットワーク構成の変更（ユーザ拠点やサーバの追加／削除）やリモートアクセスユーザヘの対処が容易である。
【図面の簡単な説明】
【図１】サンプルネットワーク（その１）を示す図である。
【図２】本発明の実施例のサーバ選択装置を示す図である。
【図３】本発明の実施例のサーバ選択装置（その２）を示す図である。
【図４】本発明の実施例の特定中継装置テーブルを示す図である。
【図５】サンプルネットワーク（その２）を示す図である。
【図６】本発明の実施例の特定中継装置テーブル（その２）を示す図である。
【図７】サンプルネットワーク（その３）を示す図である。
【図８】エンタープライズＣＤＮの構成例を示す図である。
【符号の説明】
２０、３０…サーバ選択装置、２１、３１…経路情報収集手段、２２、３２…特定中継装置テーブル、２３、３３…候補選択手段。
【図１】
2004349828.tif 000003
【図２】
2004349828.tif 000004
【図３】
2004349828.tif 000005
【図４】
2004349828.tif 000006
【図５】
2004349828.tif 000007
【図６】
2004349828.tif 000008
【図７】
2004349828.tif 000009
【図８】
2004349828.tif 000010