(57)【要約】【課題】ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応するルーティング処理を即座に行うことが可能なＩＰルータを提供する。【解決手段】サーバ監視機能部１８は取得したオリジンサーバ及びミラーサーバの位置情報を基にヘルスチェック等によって各サーバの運転／停止状態、スループット等を認識し、それらの情報を最適サーバ選択機能部１６へ通知し、その位置情報を基にサーバＵＲＬリスト１７を更新する。最適サーバ選択機能部１６はサーバ監視機能部１８がＩＰルーティングテーブル１４の変化からネットワークトポロジの変化を検出すると、最適サーバの選択基準を変更し、ＱｏＳ制御部１３ａにトラヒックの変化を通知する。ＱｏＳ制御部１３ａは通知されたトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する。【選択図】      図２
2004215116.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアント装置を、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータであって、
前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得する手段と、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択する手段と、選択された最適なサーバに接続して前記コンテンツを取得する手段と、取得したコンテンツを前記クライアント装置に転送する手段と、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出する手段と、その検出結果に基づいて前記最適なサーバの選択基準を変更する手段と、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する手段とを有することを特徴とするＩＰルータ。
【請求項２】
前記最適サーバを選択するための指標となる情報は、各サーバ毎の運転／停止状態、ＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）、スループットの情報のうちの少なくとも一つであることを特徴とする請求項１記載のＩＰルータ。
【請求項３】
前記最適なサーバを選択する手段は、過去のアクセス実績を加味して前記最適なサーバを選択することを特徴とする請求項１または請求項２記載のＩＰルータ。
【請求項４】
前記最適サーバを選択する指標となる各サーバ毎の情報の取得を目的としたヘルスチェックを前記ＩＰルーティングテーブルの変化を認識した時に行うことを特徴とする請求項１から請求項３のいずれか記載のＩＰルータ。
【請求項５】
前記トラヒックの変化状況の監視を予め設定された一定時間行う手段を含み、
前記帯域設定を変更する手段は、前記トラヒックの変化状況の監視結果に応じて前記サービスクラス毎の帯域設定を変更することを特徴とする請求項１から請求項４のいずれか記載のＩＰルータ。
【請求項６】
複数のクライアント装置と、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバと、前記複数のクライアント装置を前記オリジンサーバと前記複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータとからなる通信システムであって、
前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得する手段と、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択する手段と、選択された最適なサーバに接続して前記コンテンツを取得する手段と、取得したコンテンツを前記クライアント装置に転送する手段と、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出する手段と、その検出結果に基づいて前記最適なサーバの選択基準を変更する手段と、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する手段とを前記ＩＰルータに有することを特徴とする通信システム。
【請求項７】
前記最適サーバを選択するための指標となる情報は、各サーバ毎の運転／停止状態、ＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）、スループットの情報のうちの少なくとも一つであることを特徴とする請求項６記載の通信システム。
【請求項８】
前記最適なサーバを選択する手段は、過去のアクセス実績を加味して前記最適なサーバを選択することを特徴とする請求項６または請求項７記載の通信システム。
【請求項９】
前記最適サーバを選択する指標となる各サーバ毎の情報の取得を目的としたヘルスチェックを前記ＩＰルーティングテーブルの変化を認識した時に行うことを特徴とする請求項６から請求項８のいずれか記載の通信システム。
【請求項１０】
前記トラヒックの変化状況の監視を予め設定された一定時間行う手段を前記ＩＰルータに含み、
前記帯域設定を変更する手段は、前記トラヒックの変化状況の監視結果に応じて前記サービスクラス毎の帯域設定を変更することを特徴とする請求項６から請求項９のいずれか記載の通信システム。
【請求項１１】
複数のクライアント装置を、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータの帯域設定方法であって、
前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得するステップと、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択するステップと、選択された最適なサーバに接続して前記コンテンツを取得するステップと、取得したコンテンツを前記クライアント装置に転送するステップと、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出するステップと、その検出結果に基づいて前記最適なサーバの選択基準を変更するステップと、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更するステップとを有することを特徴とする帯域設定方法。
【請求項１２】
前記最適サーバを選択するための指標となる情報は、各サーバ毎の運転／停止状態、ＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）、スループットの情報のうちの少なくとも一つであることを特徴とする請求項１３記載の帯域設定方法。
【請求項１３】
前記最適なサーバを選択するステップは、過去のアクセス実績を加味して前記最適なサーバを選択することを特徴とする請求項１１または請求項１２記載の帯域設定方法。
【請求項１４】
前記最適サーバを選択する指標となる各サーバ毎の情報の取得を目的としたヘルスチェックを前記ＩＰルーティングテーブルの変化を認識した時に行うことを特徴とする請求項１１から請求項１３のいずれか記載の帯域設定方法。
【請求項１５】
前記トラヒックの変化状況の監視を予め設定された一定時間行うステップを含み、
前記帯域設定を変更するステップは、前記トラヒックの変化状況の監視結果に応じて前記サービスクラス毎の帯域設定を変更することを特徴とする請求項１１から請求項１４のいずれか記載の帯域設定方法。
【請求項１６】
複数のクライアント装置を、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータの帯域設定方法のプログラムであって、前記ＩＰルータのコンピュータに、前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得する処理と、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択する処理と、選択された最適なサーバに接続して前記コンテンツを取得する処理と、取得したコンテンツを前記クライアント装置に転送する処理と、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出する処理と、その検出結果に基づいて前記最適なサーバの選択基準を変更する処理と、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する処理とを実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＩＰルータ、通信システム及びそれに用いる帯域設定方法並びにそのプログラムに関し、特にインタネットにおけるミラーサーバ選択で変化するトラヒックの制御方法に関する。
【０００２】
【従来の技術】
従来、インタネットにおいては、コンテンツあるいはプログラムを提供するサーバがダウンしても、そのサーバによるサービスが停止しないように、そのサーバが提供するコンテンツあるいはプログラムの内容を常に同期しておいて、そのサーバの故障時に交代するバックアップ用のサーバが設けられることがある。
【０００３】
サーバがコンテンツを提供する場合、あるいはサーバからプログラムをダウンロードする場合、１台のサーバからのみの提供またはダウンロードでは、そのサーバに負荷がかかるとともに、効率が悪くなるため、同一内容を提供またはダウロード可能なサーバを複数台設置することがある。
【０００４】
この場合、元となるサーバはオリジンサーバと呼ばれ、オリジンサーバから提供またはダウロード可能な内容（コンテンツあるいはプログラム等）に同期しているサーバがミラーサーバと呼ばれている。上記のように、複数のミラーサーバが設置されている場合、クライアント側からの要求（コンテンツあるいはプログラム等）に適したサーバを、複数のミラーサーバの中から最適サーバを選択するために最適サーバ選択装置が設けられることがある（例えば、特許文献１，２参照）。
【０００５】
【特許文献１】
特開平１０−３１２３６５号公報
【特許文献２】
特開２００１−３３１３９８号公報
【０００６】
【発明が解決しようとする課題】
上述した従来のインタネットでは、複数のミラーサーバの中から選択するために最適サーバ選択装置が設置されている場合、最適サーバ選択装置が他の装置とは独立した装置であるため、最適サーバ選択装置がネットワークトポロジの変化を直接知る手段がない。
【０００７】
したがって、ネットワークトポロジに変化があった場合においても、最適なサーバを選択するためには最適サーバを選択するための指標となる各サーバ毎の運転／停止状態、ＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）、スループット等の情報を取得するためのヘルスチェックを定期的に行い、そのチェック結果を選択基準に反映させていく必要がある。
【０００８】
しかしながら、サーバへのヘルスチェックが定期的に行われると、そのヘルスチェックによるトラヒックがネットワークを圧迫してしまうという問題がある。
また、最適サーバ選択装置がネットワークトポロジの変化を知ることができ、その変化に応じて最適サーバの選択基準が変更されることでトラヒックが変化してルート毎に必要とする帯域が変わっても、ルーティング処理がその変化に即座に対応することができない。
【０００９】
そこで、本発明の目的は上記の問題点を解消し、帯域設定をダイナミックに変更することができ、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応するルーティング処理を即座に行うことができるＩＰルータ、通信システム及びそれに用いる帯域設定方法最適サーバ選択方法並びにそのプログラムを提供することにある。
【００１０】
【課題を解決するための手段】
本発明によるＩＰルータは、複数のクライアント装置を、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータであって、
前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得する手段と、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択する手段と、選択された最適なサーバに接続して前記コンテンツを取得する手段と、取得したコンテンツを前記クライアント装置に転送する手段と、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出する手段と、その検出結果に基づいて前記最適なサーバの選択基準を変更する手段と、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する手段とを備えている。
【００１１】
本発明による通信システムは、複数のクライアント装置と、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバと、前記複数のクライアント装置を前記オリジンサーバと前記複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータとからなる通信システムであって、
前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得する手段と、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択する手段と、選択された最適なサーバに接続して前記コンテンツを取得する手段と、取得したコンテンツを前記クライアント装置に転送する手段と、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出する手段と、その検出結果に基づいて前記最適なサーバの選択基準を変更する手段と、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する手段とを前記ＩＰルータに備えている。
【００１２】
本発明による帯域設定方法は、複数のクライアント装置を、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータの帯域設定方法であって、
前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得するステップと、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択するステップと、選択された最適なサーバに接続して前記コンテンツを取得するステップと、取得したコンテンツを前記クライアント装置に転送するステップと、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出するステップと、その検出結果に基づいて前記最適なサーバの選択基準を変更するステップと、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更するステップとを備えている。
【００１３】
本発明による帯域設定方法のプログラムは、複数のクライアント装置を、少なくともコンテンツの供給元のオリジンサーバと、前記オリジンサーバから供給されるコンテンツの複写先の複数のミラーサーバとにネットワークを介して接続させるためのルーティング情報を格納するＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルーティングテーブルを含むＩＰルータの帯域設定方法のプログラムであって、前記ＩＰルータのコンピュータに、前記クライアント装置との間の特定のポート番号のパケットに関するコネクションを終端して前記コンテンツのリクエスト情報を取得する処理と、取得したリクエスト情報が前記複数のミラーサーバに対応している時に最適サーバを選択するための指標となる情報と前記ルーティング情報とに基づいて前記リクエストに最適なサーバを選択する処理と、選択された最適なサーバに接続して前記コンテンツを取得する処理と、取得したコンテンツを前記クライアント装置に転送する処理と、前記ＩＰルーティングテーブルの変化によってネットワークトポロジが変更されたことを検出する処理と、その検出結果に基づいて前記最適なサーバの選択基準を変更する処理と、前記選択基準の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する処理とを実行させている。
【００１４】
すなわち、本発明のＩＰルータは、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスによるルーティング機能に加え、オペレータによって設定された特定のポート番号のパケットに関してクライアントとのコネクションを終端してＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）等のリクエスト情報を取得する機能と、取得したＵＲＬ等のリクエスト情報が複数のミラーサーバに対応している場合にＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）等を考慮してリクエストに最適なサーバを選択する機能と、最適なサーバと接続してコンテンツを取得する機能、取得したコンテンツをクライアントに転送する機能と、ネットワークトポロジが変更されたことをＩＰルーティングテーブルの変化等によって認識しかつ最適なサーバを選択する際にこれらの変化を考慮する機能とを有し、ルーティング機能に、最適なサーバの選択基準の変更によるトラヒックの変化に応じてルート毎の帯域設定変更を行うＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）制御部を備えている。
【００１５】
本発明のＩＰルータでは、これらの機能を有することによって、従来の技術にあるＩＰルータと最適サーバ選択装置の持つ接続されたクライアント・サーバ・ネットワーク間のデータパケットのＩＰルーティング動作、クライアントからミラーサーバを持つサーバに対するコンテンツ配信要求が出された場合に最適なサーバを選択し、選択したサーバからコンテンツを取得してクライアントに転送する動作を一台の装置で実現するだけではなく、ネットワーク全体に係る動的変化を監視する機能と連携しての最適サーバ選択を実現するとともに、その最適サーバ選択の変更によるトラヒックの変化に応じてルート毎の帯域設定を変更している。
【００１６】
これによって、ネットワークトポロジの変更やトラフィックの変動に追随して最適なサーバを選択する機能を持ち、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応してルート毎の必要帯域を変更する機能を持つことを特徴とするＩＰルータの実現が可能となる。
【００１７】
より具体的に説明すると、本発明のＩＰルータはネットワークから見てクライアント側に位置し、オリジンサーバやミラーサーバとはネットワークを介して接続されている。クライアントからオリジンサーバに対してコンテンツの取得要求が出された場合、従来のルータの技術ではクライアントとオリジンサーバとの間でコネクションが確立され、コンテンツが配信される。
【００１８】
これに対して、本発明のＩＰルータを使用した場合、クライアントとＩＰルータとの間でコネクションを確立し、ＩＰルータがクライアントからＵＲＬを取得する。ＩＰルータは取得したＵＲＬに該当するオリジンサーバのミラーサーバが存在するか否かを確認し、存在する場合に、それらのサーバの中からスループット等の指標を基に最適なサーバを選択して接続し、そのサーバからコンテンツを取得してクライアントに転送する。
【００１９】
本発明のＩＰルータでは、ネットワークのトポロジ変化がＩＰルータの持つＩＰルーティングテーブルの変化によって認識可能なことに着目し、最適サーバ選択機能をＩＰルータに内蔵することで、ＩＰルーティングテーブルを参照する機能を付加し、ネットワークトポロジの変化を自動でリアルタイムに認識することを可能とし、最適サーバの選択指標への反映を実現し、その選択指標への反映に応じてルート毎の帯域設定を変えようとしたものである。
【００２０】
また、ＩＰルータと最適サーバ選択装置とを組合わせて使用した場合、接続による通信効率の悪化が避けられず、高性能化が困難であること、トータルでの小型化及び低コスト化が困難である等の課題も多い。そこで、本発明のＩＰルータでは、一体化することで効率よく高性能な最適サーバ選択機能及びＩＰルーティング機能を実現している。
【００２１】
【発明の実施の形態】
次に、本発明の実施例について図面を参照して説明する。図１は本発明の第１の実施例による通信システムの構成を示すブロック図である。図１において、本発明の第１の実施例による通信システムは最適サーバ選択機能を持つＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ルータ１と、クライアント装置２−１〜２−ｍ（ｍは正の整数）と、コンテンツあるいはプログラム等の提供元のオリジンサーバ３と、オリジンサーバ３の提供内容が複写されたミラーサーバ４−１〜４−ｎ（ｎは正の整数）と、ＩＰルータ１とオリジンサーバ３とミラーサーバ４−１〜４−ｎとを相互に接続するネットワーク１００とから構成されている。
【００２２】
この図１を参照して本発明の第１の実施例による通信システムの通信イメージ、特にＩＰルータ１の通信イメージ及びＩＰルータ１のネットワーク内での位置付けについて説明する。
【００２３】
ＩＰルータ１はネットワーク１００から見てクライアント装置２−１〜２−ｍ側に位置し、オリジンサーバ３及びミラーサーバ４−１〜４−ｎとはネットワーク１００を介して接続されている。
【００２４】
クライアント装置２−１〜２−ｍからオリジンサーバ３に対してコンテンツ（またはプログラム）の取得要求が出された場合、従来のルータの技術ではクライアント装置２−１〜２−ｍとオリジンサーバ３との間でコネクションが確立され、コンテンツが配信される（図１の２００参照）。
【００２５】
それに対して、ＩＰルータ１を使用した場合、クライアント装置２−１〜２−ｍとＩＰルータ１との間でコネクションを確立させ（図１の２０１参照）、ＩＰルータ１がクライアント装置２−１〜２−ｍからＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を取得する。
【００２６】
ＩＰルータ１はクライアント装置２−１〜２−ｍから取得したＵＲＬに該当するオリジンサーバ３のミラーサーバ４−１〜４−ｎが存在するか否かを確認し、ミラーサーバ４−１〜４−ｎが存在する場合、それらのミラーサーバ４−１〜４−ｎの中からスループット等の指標を基に最適なサーバを選択して接続する（図１の２０２参照）。
【００２７】
ＩＰルータ１は接続したミラーサーバ４−１〜４−ｎからコンテンツを取得し（図１の２０３参照）、そのコンテンツをクライアント装置２−１〜２−ｍに転送する（図１の２０４参照）。
【００２８】
図２は図１のＩＰルータ１の構成を示すブロック図である。図２において、ＩＰルータ１はクライアント側インタフェース（ＩＦ）部１１−１〜１１−ｍと、サーバ側インタフェース（ＩＦ）部１２−１〜１２−ｎと、ＩＰルーティング機能部１３と、ＩＰルーティングテーブル１４と、プロキシ機能部１５と、最適サーバ選択機能部１６と、サーバＵＲＬリスト１７と、サーバ監視機能部１８と、記録媒体１９とから構成されている。
【００２９】
クライアント側インタフェース部１１−１〜１１−ｍはクライアント装置２−１〜２−ｍに接続し、クライアント装置２−１〜２−ｍとの間のデータの送受を司る。サーバ側インタフェース部１２−１〜１２−ｎはオリジンサーバ３及びミラーサーバ４−１〜４−ｎ（ネットワーク１００）に接続し、オリジンサーバ３及びミラーサーバ４−１〜４−ｎとの間のデータの送受を司る。
【００３０】
ＩＰルーティング機能部１３は受信パケットのＩＰルーティング機能と、オペレータによって設定された特定のポート番号向けのパケットをリダイレクトする機能と、サービスクラス毎の帯域設定等を制御するＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）制御部１３ａとを備えている。ＩＰルーティングテーブル１４はＩＰルーティングのための情報を格納する。
【００３１】
プロキシ機能部１５はクライアント装置２−１〜２−ｍからのコネクションを終端してクライアント装置２−１〜２−ｍからＵＲＬを取得し、クライアント装置２−１〜２−ｍの代理として最適サーバに接続し、要求されたコンテンツを取得してクライアント装置２−１〜２−ｍへ転送する。
【００３２】
最適サーバ選択機能部１６はプロキシ機能部１５から通知されたＵＲＬに対応するサーバ（オリジンサーバ３）にミラーサーバ４−１〜４−ｎが存在するかを確認し、存在する場合にそれらサーバ群の中からＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ
Ｔｉｍｅ）等の指標から最適なサーバを選択する。
【００３３】
サーバＵＲＬリスト１７には装置内のファイル及びＤＮＳ（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）サーバ（図示せず）から取得したＵＲＬで示されるコンテンツの位置情報を保持するオリジンサーバ３及びミラーサーバ４−１〜４−ｎのリストを格納されている。
【００３４】
サーバ監視機能部１８はサーバＵＲＬリスト１７に登録されているオリジンサーバ３及びミラーサーバ４−１〜４−ｎ各々に対するヘルスチェック及びオリジンサーバ３及びミラーサーバ４−１〜４−ｎ各々の負荷情報等を取得し、それらの情報（運転／停止状態、ＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）、スループット等の情報）を最適サーバ選択機能部１６に提供する。
【００３５】
記録媒体１９は上記の各部の動作を実現するためのプログラムを格納しており、そのプログラムはＩＰルータ１の主たる構成要素であるコンピュータ（図示せず）で実行可能なものである。
【００３６】
ここで、ＩＰルータ１はクライアント側インタフェース部１１−１〜１１−ｍと、サーバ側インタフェース部１２−１〜１２−ｎと、ＩＰルーティング機能部１３と、ＩＰルーティングテーブル１４とからなるＩＰルータと、プロキシ機能部１５と、最適サーバ選択機能部１６と、サーバＵＲＬリスト１７と、サーバ監視機能部１８とからなる最適サーバ選択装置とを一体化したものである。
【００３７】
ＩＰルータ１においてはＩＰルーティング機能部１３とプロキシ機能部１５とを接続することで、従来のＩＰルータ及び最適サーバ選択装置を接続してデータパケットの転送を行うのと同等の機能を実現している。この場合、ＩＰルーティング機能部１３とプロキシ機能部１５との接続については、クライアント側インタフェース部１１−１〜１１−ｍまたはサーバ側インタフェース部１２−１〜１２−ｎを介してＩＰルータと最適サーバ選択装置とが接続されるのと同等のデータバスで接続する方法と、パケットデータの一部（ヘッダ部等）を簡略すること、またはパケットデータをパラレルで転送すること等によって高速化を可能とした内部データバスで接続する方法等がある。
【００３８】
また、ＩＰルータ１においてはＩＰルーティングテーブル１４とサーバ監視機能部１８とを接続することで、サーバ監視機能部１８がＩＰルーティングテーブル１４の内容として経路情報及びルーティングメトリック［帯域幅、コミュニケーションコスト、遅延、ポップカウント、負荷、ＭＴＵ（Ｍａｘｉｍｕｍ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｕｎｉｔ）、パスコスト、信頼性等の値］を参照することを可能としている。
【００３９】
これを実現する方法としては、ＩＰルーティングテーブル１４を格納しているメモリをデュアルポートメモリとし、このメモリにＩＰルーティング機能部１３とサーバ監視機能部１８とをデータバスにて接続することで、ＩＰルーティングテーブル１４に対するサーバ監視機能部１８からのアクセスを可能とする方法、あるいはＩＰルーティング機能部１３とサーバ監視機能部１８からアクセス可能なメモリとをデータバスにて接続し、そのメモリに常に最新のＩＰルーティングテーブル１４の情報を書込んでおく機能を具備することで、サーバ監視機能部１８から最新のＩＰルーティングテーブル１４の情報を参照可能とする方法等がある。
【００４０】
さらに、ＩＰルータ１においてはＩＰルーティング機能部１３とサーバ監視機能部１８とを接続することで、従来のＩＰルータ及び最適サーバ選択装置を接続してＩＰパケットの転送を行うのと同等の機能を実現している。この場合、ＩＰルーティング機能部１３とサーバ監視機能部１８との接続については、クライアント側インタフェース部１１−１〜１１−ｍまたはサーバ側インタフェース部１２−１〜１２−ｎを介してＩＰルータと最適サーバ選択装置とが接続されるのと同等のデータバスで接続する方法と、パケットデータの一部（ヘッダ部等）を簡略すること、またはパケットデータをパラレルで転送すること等によって高速化を可能とした内部データバスで接続する方法等がある。
【００４１】
図３は図１のクライアント装置２−１〜２−ｍからオリジンサーバ３へデータ配信リクエストを送信した場合のＩＰルータ１の動作を示すフローチャートである。これら図１〜図３を参照して、ＩＰルータ１に接続されたクライアント装置２−１〜２−ｍから、ＩＰルータ１にネットワーク１００を介して接続配置されているオリジンサーバ３に対してコンテンツ配信リクエストを送信した場合の動作について説明する。尚、図３に示す処理はＩＰルータ１のコンピュータが記録媒体１９のプログラムを実行することで実現される。
【００４２】
ＩＰルータ１に接続されたクライアント装置２−１〜２−ｍから、ＩＰルータ１にネットワーク１００を介して接続配置されているオリジンサーバ３に対してコンテンツ配信リクエストを送信されてきた場合、ＩＰルータ１はクライアント側インタフェース部１１−１〜１１−ｍを介してＩＰルーティング機能部１３がこのリクエストデータのパケットを受信する。
【００４３】
ここで、ＩＰルーティング機能部１３には受信したパケットがオペレータによって設定されたパケット［ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  ＴｒａｎｓｆｅｒＰｒｏｔｏｃｏｌ）等］であるかを確認し（図３ステップＳ１）、それに該当する場合（図３ステップＳ２）、プロキシ機能部１５へリダイレクトする（図３ステップＳ３）。
【００４４】
この機能によって、ＩＰルーティング機能部１３はオペレータによって設定されたパケット（ＨＴＴＰ等）を受信した場合にプロキシ機能部１５へリダイレクトし、設定されたものでない場合にＩＰルーティングテーブル１４を参照して通常のＩＰルーティング処理だけを行う（図３ステップＳ２，Ｓ９）。
【００４５】
プロキシ機能部１５はＩＰルーティング機能部１３からリダイレクトされてきたパケットを受取ると、クライアント装置２−１〜２−ｍからのコネクションを終端し、リダイレクトされてきたパケットからＵＲＬを取得して最適サーバ選択機能部１６へと通知する（図３ステップＳ４）。
【００４６】
最適サーバ選択機能部１６はサーバ監視機能部１８から得られる各サーバ（オリジンサーバ３及びミラーサーバ４−１〜４−ｎ）に対するヘルスチェック結果から受信したＵＲＬに最適なサーバをサーバＵＲＬリスト１７の中から選択し、プロキシ機能部１５へと通知する（図３ステップＳ５）。
【００４７】
プロキシ機能部１５は通知された情報を基にＩＰルーティング機能部１３及びサーバ側インタフェース部１２−１〜１２−ｎを介して最適なサーバへ接続し、クライアント装置２−１〜２−ｍから要求されたコンテンツを取得する（図３ステップＳ６）。
【００４８】
プロキシ機能部１５は取得したコンテンツをＩＰルーティング機能部１３及びクライアント側インタフェース部１１−１〜１１−ｍを介してクライアント装置２−１〜２−ｍへ転送し（図３ステップＳ７，Ｓ８）、動作を終了する。
【００４９】
図４は図２の最適サーバ選択機能部１６がプロキシ機能部１５から取得したＵＲＬから最適なサーバを選択する動作及びＩＰルーティング機能部１３の帯域設定の動作を示すフローチャートである。これら図１と図２と図４とを参照して、最適サーバ選択機能部１６がプロキシ機能部１５から取得したＵＲＬから最適なサーバを選択する動作及びそれに伴うＩＰルーティング機能部１３の帯域設定の動作について説明する。
【００５０】
この場合、最適サーバ選択機能部１６はサーバ監視機能部１８からの情報及びサーバＵＲＬリスト１７を基に各ＵＲＬに最適なサーバを選択する。尚、図４に示す処理はＩＰルータ１のコンピュータが記録媒体１９のプログラムを実行することで実現される。
【００５１】
サーバ監視機能部１８はサーバＵＲＬリスト１７またはＩＰルーティング機能部１３及びサーバ側インタフェース部１２−１〜１２−ｎを介して外部のＤＮＳサーバ等からオリジンサーバ３及びミラーサーバ４−〜４−ｎの位置情報を取得する（図４ステップＳ１１）。
【００５２】
サーバ監視機能部１８は取得したオリジンサーバ３及びミラーサーバ４−１〜４−ｎの位置情報を基に、ヘルスチェック等によって各サーバの運転／停止状態、スループット等を認識し、それらの情報を最適サーバ選択機能部１６へ通知する（図４ステップＳ１２）。サーバ監視機能部１８は取得したオリジンサーバ３及びミラーサーバ４−１〜４−ｎの位置情報を基に、サーバＵＲＬリスト１７を更新する（図４ステップＳ１３）。
【００５３】
この後、最適サーバ選択機能部１６はサーバ監視機能部１８がＩＰルーティングテーブル１４の変化からネットワークトポロジの変化を検出すると（図４ステップＳ１４）、最適サーバの選択基準を変更し、ＱｏＳ制御部１３ａにトラヒックの変化を通知する（図４ステップＳ１５）。ＱｏＳ制御部１３ａは最適サーバ選択機能部１６からトラヒックの変化が通知されると、そのトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する（図４ステップＳ１６）。
【００５４】
ＩＰルータ１では上記の動作を定期的に繰り返すこと（図４ステップＳ１１〜Ｓ１７）やＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）等のダイナミックルーティング動作等によって、ＩＰルーティングテーブル１４に変更があった場合でも、常に最新の条件で最適なサーバ選択を行うことを可能としている。
【００５５】
以上によって、ＩＰルータ１はネットワーク全体に係る動的変化に追随した最適なサーバ選択を可能とし、ネットワークトポロジの変更があった場合においても、常にネットワーク及びサーバの負荷分散を可能にするとともに、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応してルート毎の必要帯域を変更することができる。
【００５６】
このように、本実施例では、ＩＰルータ１に最適サーバ選択機能部１６を設けることによって、最適サーバ選択を司る最適サーバ選択機能部１６がＩＰルーティングテーブル１４の変化でネットワークトポロジの変化を自動かつリアルタイムに認識することができる。
【００５７】
これによって、本実施例では、最適サーバを選択する指標となる各サーバ毎の運転／停止状態、ＲＴＴ、スループット等の情報の取得を目的としたヘルスチェックを、定期的に行うのではなく、ＩＰルーティングテーブル１４の変化を認識した時にのみ行わせること等も可能となる。
【００５８】
したがって、本実施例では、必要以上に行われるヘルスチェックによるトラヒックの増加を抑制することができ、ネットワークトポロジの変化に追随した最適なサーバ選択を行うことができるとともに、ネットワーク及びサーバの負荷分散を実現することができる。ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応してルート毎の必要帯域を変更することができる。よって、本実施例では、帯域設定をダイナミックに変更することができ、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応するルーティング処理を即座に行うことができる。
【００５９】
また、本実施例では、従来の技術にあるルータと最適サーバ選択装置とを組合わせて同様の機能を実現しようとした場合と比較し、ルータの機能と最適サーバ選択機能とを同一の装置で実現しているので、伝送効率の向上、伝送ロスの低減による高性能化、トータルでの小型化、トータルでの低コスト化を実現することができる。
【００６０】
図５は図２のＱｏＳ制御部１３ａによる帯域設定の変更例を示す図である。これら図２及び図５を参照してＱｏＳ制御部１３ａによる帯域設定の変更動作について説明する。尚、図５において、サーバ４ａ，４ｂは図１のミラーサーバ４−１〜４−ｎに対応付けているが、オリジンサーバ３であっても適用可能である。
【００６１】
最適サーバ選択機能部１６は、上述したように、サーバ監視機能部１８でネットワークトポロジの変化が認識されると、最適サーバの選択基準を変更し、トラヒックの変化をＱｏＳ制御部１３ａに通知する。ＱｏＳ制御部１３ａではこのトラヒックの変化の通知に応じてサーバ（Ａ）４ａ及びサーバ（Ｂ）４ｂへのルートの帯域設定を変更する。図５においては、サーバ（Ａ）４ａへのルートの帯域設定が「ＥＰ：１０Ｍ」，「ＡＦ：２００Ｍ」，「ＢＥ：１００Ｍ」から「ＥＰ：１０Ｍ」，「ＡＦ：１００Ｍ」，「ＢＥ：２００Ｍ」に変更され、サーバ（Ｂ）４ｂへのルートの帯域設定が「ＥＰ：１０Ｍ」，「ＡＦ：１００Ｍ」，「ＢＥ：２００Ｍ」から「ＥＰ：１０Ｍ」，「ＡＦ：２００Ｍ」，「ＢＥ：１００Ｍ」に変更されている。
【００６２】
ここで、サーバ監視機能部１８がＩＰルーティングテーブル１４の変化からどのようにネットワークトポロジの変化を導出するのかについて説明する。ネットワークトポロジの変化があった場合、ＩＰルータのダイナミックルーティングの機能によってＩＰルーティングテーブル１４の内容としての経路情報及びルーティングメトリック（帯域幅、コミュニケーションコスト、遅延、ポップカウント、負荷、ＭＴＵ、パスコスト、信頼性等の値）が書換わる。スタティックルーティングにおいても、入力によって書換わった場合には同様の効果が見込める。
【００６３】
この時、サーバ監視機能部１８はＩＰルーティングテーブル１４の内容を参照することによってその変化をリアルタイムで認識する。サーバ監視機能部１８はＩＰルーティングテーブル１４の内容を参照する方法としては、サーバ監視機能部１８がＩＰルーティングテーブル１４の内容をポーリングする方法、あるいはＩＰルーティングテーブル１４の内容が変化した場合（上書きされた場合）にサーバ監視機能部１８へ割込みを出力する機能を具備する方法等がある。
【００６４】
サーバ監視機能部１８はＩＰルーティングテーブル１４の内容の変化を認識した場合、その変化がミラーサーバを持つサーバへのアクセスに影響があるかどうかをサーバＵＲＬリスト１７にあるサーバのＵＲＬとＩＰアドレス等の位置情報とを参照することによって確認する。サーバ監視機能部１８は関係すると判断した場合、各サーバへのヘルスチェックを行うことによってＲＴＴを確認し、最適なサーバの選択基準を見直す。
【００６５】
尚、最適なサーバを選択する方法としては、ヘルスチェックによって各サーバのＲＴＴを測定する方法以外に、コンテンツの種類に応じて選択の指標を変更させる方法がある。この場合の指標としては、上述したＩＰルーティングテーブル１４のルーティングメトリック（帯域幅、コミュニケーションコスト、遅延、ポップカウント、負荷、ＭＴＵ、パスコスト、信頼性等の値）がある。
【００６６】
ここで、最適サーバ選択機能部１６とＱｏＳ制御部１３ａとの間の通信を可能とする方法としては、最適サーバ選択機能部１６とＱｏＳ制御部１３ａとの間をデータバス（シリアルまたはパラレル）で直接接続する方法、またはＩＰルーティング機能部１３とプロキシ機能部１５との間、プロキシ機能部１５と最適サーバ選択機能部１６との間にそれぞれあるデータバスを使用してプロキシ機能部１５を介して通信する方法がある。
【００６７】
これによって、最適サーバ選択機能部１６がネットワークトポロジの変化を認識し、最適サーバの選択基準を変更した場合、トラヒックが流れるルートの変更情報をＱｏＳ制御部１３ａに通知する。ＱｏＳ制御部１３ａは最適サーバ選択機能部１６からトラヒックの変化が通知されると、そのトラヒックの変化に応じてサービスクラス毎の帯域設定を変更する。
【００６８】
上記のように、本実施例では、ＱｏＳ制御部１３ａがトラヒックが流れるルートの変更情報を基にサービスクラス毎の帯域設定を変更することで、当該ルートにおけるトラヒックの変化と設定されている帯域とのバランスが崩れた場合に、そのルートの帯域設定を変更することができ、ネットワークを有効利用することができる。
【００６９】
図６は本発明の第２の実施例による最適サーバ選択機能部がプロキシ機能部から取得したＵＲＬから最適なサーバを選択する動作及びＩＰルーティング機能部の帯域設定の動作を示すフローチャートである。本発明の第２の実施例による通信システム及びＩＰルータの構成は図１及び図２に示す本発明の第１の実施例と同様であるので、これら図１と図２と図６とを参照して、本発明の第２の実施例による最適サーバ選択機能部１６がプロキシ機能部１５から取得したＵＲＬから最適なサーバを選択する動作及びそれに伴うＩＰルーティング機能部１３の帯域設定の動作について説明する。
【００７０】
尚、図６に示す処理はＩＰルータ１のコンピュータが記録媒体１９のプログラムを実行することで実現される。また、図６に示すステップＳ２１〜Ｓ２４の動作は図４に示すステップＳ１１〜Ｓ１４の動作と同様であるのでその説明は省略する。
【００７１】
最適サーバ選択機能部１６はサーバ監視機能部１８がＩＰルーティングテーブル１４の変化からネットワークトポロジの変化を検出すると（図６ステップＳ２４）、最適サーバの選択基準を変更する（図６ステップＳ２５）。
【００７２】
最適サーバ選択機能部１６は最適サーバの選択基準を変更してから、それ以降のトラヒックの変化状況を一定時間監視し（図６ステップＳ２６，Ｓ２７）、どの程度のトラヒック増になったかを算出し、各ルート毎に確保している領域をどの程度変更すべきかを判断し、その判断結果に基づいた変更指示をＱｏＳ制御部１３ａに対して行う（図６ステップＳ２８）。ＱｏＳ制御部１３ａは最適サーバ選択機能部１６からの変更指示に応じてサービスクラス毎の帯域設定を変更する（図６ステップＳ２９）。
【００７３】
ＩＰルータ１では上記の動作を定期的に繰り返すこと（図６ステップＳ２１〜Ｓ３０）やＯＳＰＦ等のダイナミックルーティング動作等によって、ＩＰルーティングテーブル１４に変更があった場合でも、常に最新の条件で最適なサーバ選択を行うことを可能としている。
【００７４】
以上によって、ＩＰルータ１はネットワーク全体に係る動的変化に追随した最適なサーバ選択を可能とし、ネットワークトポロジの変更があった場合においても、常にネットワーク及びサーバの負荷分散を可能にするとともに、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応してルート毎の必要帯域を変更することができる。
【００７５】
図７は本発明の第３の実施例による最適サーバ選択機能部がプロキシ機能部から取得したＵＲＬから最適なサーバを選択する動作及びＩＰルーティング機能部の帯域設定の動作を示すフローチャートである。本発明の第３の実施例による通信システム及びＩＰルータの構成は図１及び図２に示す本発明の第１の実施例と同様であるので、これら図１と図２と図７とを参照して、本発明の第３の実施例による最適サーバ選択機能部１６がプロキシ機能部１５から取得したＵＲＬから最適なサーバを選択する動作及びそれに伴うＩＰルーティング機能部１３の帯域設定の動作について説明する。
【００７６】
尚、図７に示す処理はＩＰルータ１のコンピュータが記録媒体１９のプログラムを実行することで実現される。また、図７に示すステップＳ３１〜Ｓ３４の動作は図４に示すステップＳ１１〜Ｓ１４の動作と同様であるのでその説明は省略する。
【００７７】
最適サーバ選択機能部１６はサーバ監視機能部１８がＩＰルーティングテーブル１４の変化からネットワークトポロジの変化を検出すると（図７ステップＳ３４）、最適サーバの選択基準を変更し（図７ステップＳ３５）、この変更した対象のアドレス情報をＱｏＳ制御部１３ａに渡す（図７ステップＳ３６）。
【００７８】
ＱｏＳ制御部１３ａは最適サーバ選択機能部１６から渡されたアドレス情報を基に最適サーバの選択基準の変更以降のトラヒックの変化状況を一定時間監視し（図７ステップＳ３７，Ｓ３８）、どの程度のトラヒック増になったかを算出し、各ルート毎に確保している領域をどの程度変更すべきかを判断する（図７ステップＳ３９）。ＱｏＳ制御部１３ａはこの判断結果に応じてサービスクラス毎の帯域設定を変更する（図７ステップＳ４０）。
【００７９】
ＩＰルータ１では上記の動作を定期的に繰り返すこと（図７ステップＳ３１〜Ｓ４１）やＯＳＰＦ等のダイナミックルーティング動作等によって、ＩＰルーティングテーブル１４に変更があった場合でも、常に最新の条件で最適なサーバ選択を行うことを可能としている。
【００８０】
以上によって、ＩＰルータ１はネットワーク全体に係る動的変化に追随した最適なサーバ選択を可能とし、ネットワークトポロジの変更があった場合においても、常にネットワーク及びサーバの負荷分散を可能にするとともに、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応してルート毎の必要帯域を変更することができる。
【００８１】
図８は本発明の第４の実施例によるＩＰルータの構成を示すブロック図である。図８において、本発明の第４の実施例によるＩＰルータ５はアクセス実績蓄積部５１を追加し、最適サーバ選択機能部１６の代わりに最適サーバ選択機能部５２を設けた以外は図２に示す本発明の第１の実施例と同様の構成となっており、同一構成要素には同一符号を付してある。また、同一構成要素の動作は本発明の第１の実施例と同様である。
【００８２】
アクセス実績蓄積部５１にはプロキシ機能部１５によって過去のアクセス実績時のスループット情報等が蓄積され、最適サーバ選択機能部５２は上記の最適サーバを選択する際の判断基準に、アクセス実績蓄積部５１に蓄積された情報を加えて最適サーバを選択する。
【００８３】
本発明の第１の実施例では、ルータの機能と最適サーバ選択機能とを同一の装置で実現することでＩＰルーティングテーブル１４の変化でネットワークトポロジの変化を認識し、それを契機にサーバの状態監視を行う点までしか言及していないが、本実施例のように、過去のアクセス実績時のスループット情報等を分析して蓄積していく機能を有することによって、より最適なサーバ選択を、より効率的に実現することができる。
【００８４】
図９は本発明の第５の実施例によるＩＰルータの構成を示すブロック図である。図９において、本発明の第５の実施例によるＩＰルータ６は最適サーバ選択機能部１６の代わりに最適サーバ選択機能部６１を設け、サーバＵＲＬリスト１７の代わりにサーバＵＲＬリスト・帯域情報蓄積部６２を設けた以外は図２に示す本発明の第１の実施例と同様の構成となっており、同一構成要素には同一符号を付してある。また、同一構成要素の動作は本発明の第１の実施例と同様である。
【００８５】
サーバＵＲＬリスト・帯域情報蓄積部６２には上記のサーバＵＲＬリストのほかに、オリジンサーバ３及びミラーサーバ４−１〜４−ｎ各々の帯域情報が蓄積されている。最適サーバ選択機能部６１はサーバＵＲＬリスト・帯域情報蓄積部６２の蓄積情報を基に、コンテンツ毎に最適サーバの選択基準を変更しながら最適サーバの選択を行う。
【００８６】
これによって、本実施例では、より最適なサーバの選択、ネットワークの負荷分散を実現することができる。例えば、０．４Ｋｂｙｔｅ〜７Ｋｂｙｔｅの小容量のデータを多数含むコンテンツの配信を要求した場合には、ＲＴＴを指標として最適なサーバを選択し、５００Ｋｂｙｔｅ以上もある大容量のデータを持つコンテンツの配信を要求した場合には、ＲＴＴよりも帯域がスループットに与える影響が大きいため、帯域を指標として最適なサーバを選択する。
【００８７】
【発明の効果】
以上説明したように本発明は、
ＩＰルータに最適サーバ選択機能を設け、ネットワークトポロジが変更されたことをＩＰルータのＩＰルーティングテーブルの変化によって認識した時にその認識結果に基づいて最適なサーバを選択するとともに、その最適なサーバの選択条件の変更に伴うトラヒックの変化に応じてサービスクラス毎の帯域設定を変更することで、帯域設定をダイナミックに変更することができ、ネットワークトポロジの変化時の最適サーバの選択基準の変更に伴うトラヒックの変化に対応するルーティング処理を即座に行うことができるという効果が得られる。
【図面の簡単な説明】
【図１】本発明の第１の実施例による通信システムの構成を示すブロック図である。
【図２】本発明の第１の実施例によるＩＰルータの構成を示すブロック図である。
【図３】図１のクライアント装置からオリジンサーバへデータ配信リクエストを送信した場合のＩＰルータの動作を示すフローチャートである。
【図４】図２の最適サーバ選択機能部がプロキシ機能部から取得したＵＲＬから最適なサーバを選択する動作及びＩＰルーティング機能部の帯域設定の動作を示すフローチャートである。
【図５】図５は図２のＱｏＳ制御部による帯域設定の変更例を示す図である。
【図６】本発明の第２の実施例による最適サーバ選択機能部がプロキシ機能部から取得したＵＲＬから最適なサーバを選択する動作及びＩＰルーティング機能部の帯域設定の動作を示すフローチャートである。
【図７】本発明の第３の実施例による最適サーバ選択機能部がプロキシ機能部から取得したＵＲＬから最適なサーバを選択する動作及びＩＰルーティング機能部の帯域設定の動作を示すフローチャートである。
【図８】本発明の第４の実施例によるＩＰルータの構成を示すブロック図である。
【図９】本発明の第５の実施例によるＩＰルータの構成を示すブロック図である。
【符号の説明】
１  ＩＰルータ
２−１〜２−ｍ  クライアント装置
３  オリジンサーバ
４−１〜４−ｎ，
４ａ，４ｂ  ミラーサーバ
１１−１〜１１−ｍ  クライアント側インタフェース部
１２−１〜１２−ｎ  サーバ側インタフェース部
１３  ＩＰルーティング機能部
１４  ＩＰルーティングテーブル
１５  プロキシ機能部
１６，５２，６１  最適サーバ選択機能部
１７  サーバＵＲＬリスト
１８  サーバ監視機能部
１９  記録媒体
５１  アクセス実績蓄積部
６２  サーバＵＲＬリスト・帯域情報蓄積部
１００  ネットワーク
【図１】
2004215116.tif 000003
【図２】
2004215116.tif 000004
【図３】
2004215116.tif 000005
【図４】
2004215116.tif 000006
【図５】
2004215116.tif 000007
【図６】
2004215116.tif 000008
【図７】
2004215116.tif 000009
【図８】
2004215116.tif 000010
【図９】
2004215116.tif 000011