(57)【要約】      （修正有）【課題】コンテンツサーバ又は第１キャッシュサーバからコンテンツデータの受信を行う第２キャッシュサーバが、コンテンツリクエストをコンテンツサーバ及び第１キャッシュサーバの何れに送信するかを特定する方法を提供する。【解決手段】情報処理システムにおいて、第１情報処理装置２Ａがコンテンツデータをコンテンツサーバ１から受信して保持した場合に、第１情報処理装置が第２情報処理装置２Ｂに対して、コンテンツデータが第１情報処理装置に保持されていることを示す情報を通知する。第２情報処理装置は、当該情報を受信して記憶する。その後第２情報処理装置は、コンテンツリクエストを受信した場合には、当該情報に基づきコンテンツリクエストを第１情報処理装置に送信する。【選択図】図６
2018101184.tif 000002
【特許請求の範囲】
【請求項１】
第１記憶装置を有する第１情報処理装置と、
第２情報処理装置と、を有し、
前記第１情報処理装置が、データの送信を要求する第１送信要求を受信し、
前記第１情報処理装置が、前記第１送信要求を第３情報処理装置に送信することにより、前記第３情報処理装置から前記データを受信して前記第１記憶装置に格納し、
前記第１情報処理装置が、前記第１情報処理装置の前記データの保持に関する情報を、前記第２情報処理装置に通知し、
前記第２情報処理装置が、前記データの送信を要求する第２送信要求を受信し、
前記第２情報処理装置が、前記情報に基づき、前記第２送信要求の宛先を前記第１情報処理装置に変更し、
前記第２情報処理装置が、前記宛先が変更された前記第２送信要求を前記第１情報処理装置に送信し、
前記第１情報処理装置が、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記第２情報処理装置へ送信する
ことを特徴とする情報処理システム。
【請求項２】
前記第２情報処理装置は、前記情報が、前記第１情報処理装置が前記データを保持することを示さない場合は、前記第２送信要求を、前記第３情報処理装置へ送信する
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第１情報処理装置は、前記データのデータ量に基づいて、前記第１情報処理装置が前記データを保持していることを示す前記情報を前記第２情報処理装置へ通知するか否かを決定する
ことを特徴とする請求項１又は２に記載の情報処理システム。
【請求項４】
前記第１情報処理装置は、前記第１送信要求が前記第１情報処理装置から前記第３情報処理装置へ送信されてから、前記第１情報処理装置が前記データの受信を完了するまでの第１時間と、前記第１情報処理装置から前記第２情報処理装置へ前記データを送信するのに要する第２時間を特定し、
前記第１情報処理装置は、前記第１時間よりも前記第２時間が短い場合に、前記第１情報処理装置が前記データを保持していることを示す前記情報を前記第２情報処理装置へ通知する
ことを特徴とする請求項１乃至３何れか一項に記載の情報処理システム。
【請求項５】
前記第１情報処理装置は、前記データ量と、前記第１情報処理装置から前記第２情報処理装置への通信の第１帯域と基づいて、前記第２時間を特定する
ことを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記第１情報処理装置は、前記データの前記データ量を前記第１帯域で除した値と、前記第１情報処理装置と前記第２情報処理装置との間の通信の第１信号伝達遅延に基づき、前記第２時間を特定する
ことを特徴とする請求項５に記載の情報処理システム。
【請求項７】
前記第１情報処理装置と前記第３情報処理装置は、ゲートウェイを介して互いに接続され、
前記第２情報処理装置と前記第３情報処理装置は、前記ゲートウェイを介して互いに接続され、
前記ゲートウェイは、前記第１情報処理装置から受信した前記第１送信要求を前記第３情報処理装置へ送信し、
前記ゲートウェイは、前記第３情報処理装置から前記データを受信し、
前記ゲートウェイは、前記ゲートウェイが前記第１送信要求を前記第３情報処理装置へ送信した第１時刻と、前記ゲートウェイが前記データの受信を完了した第２時刻とを特定し、
前記第１情報処理装置は、前記第１時刻と前記第２時刻の差である第３時間と、前記データ量と、前記ゲートウェイから前記第２情報処理装置への通信の第２帯域と、前記ゲートウェイと前記第２情報処理装置との間の通信の第２信号伝達遅延に基づいて、前記第２送信要求が前記第２情報処理装置から前記第３情報処理装置へ送信された場合に前記第２情報処理装置が前記データの取得に要する第４時間を特定し、
前記第１情報処理装置は、前記第１情報処理装置から前記第２情報処理装置へ前記データを送信するのに要する第２時間を特定し、
前記第１情報処理装置は、前記第４時間よりも前記第２時間が短い場合に、前記第１情報処理装置が前記データを保持していることを示す前記情報を前記第２情報処理装置へ通知する
ことを特徴とする請求項３に記載の情報処理システム。
【請求項８】
第１記憶装置を有する第１情報処理装置が、データの送信を要求する第１送信要求を受信する処理と、
前記第１情報処理装置が、前記第１送信要求を第３情報処理装置に送信する処理と、
前記第１情報処理装置が、前記第３情報処理装置から前記データを受信する処理と、
前記第１情報処理装置が、前記データを前記第１記憶装置に格納する処理と、
前記第１情報処理装置が、前記第１情報処理装置も前記データの保持に関する情報を、第２情報処理装置に通知する処理と、
前記第２情報処理装置が、前記データの送信を要求する第２送信要求を受信する処理と、
前記第２情報処理装置が、前記情報に基づき、前記第２送信要求の宛先を前記第１情報処理装置に変更する処理と、
前記第２情報処理装置が、前記宛先が変更された前記第２送信要求を前記第１情報処理装置に送信する処理と、
前記第１情報処理装置が、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記第２情報処理装置へ送信する処理と、
を含むことを特徴とするデータ送信方法。
【請求項９】
前記第１情報処理装置が、前記データのデータ量に基づいて、前記第１情報処理装置が前記データを保持していることを示す前記情報を前記第２情報処理装置へ通知するか否かを決定する処理
を更に含むことを特徴とする請求項８に記載のデータ送信方法。
【請求項１０】
第１記憶装置を有する情報処理装置であって、
データの送信を要求する第１送信要求を受信し、前記第１送信要求を他の第１情報処理装置に送信する要求送信部と、
前記他の第１情報処理装置から前記データを取得するデータ受信部と、
前記データを前記第１記憶装置に格納する制御部と、
前記情報処理装置の前記データ保持に関する情報を、他の第２情報処理装置に通知する通知部と、
前記他の第２情報処理装置が前記他の第１情報処理装置宛ての要求であって前記データの送信を要求する第２送信要求を受信し、前記他の第２情報処理装置が前記情報に基づき、前記第２送信要求の宛先を、前記他の第１情報処理装置から前記情報処理装置に変更し、前記宛先が変更された前記第２送信要求を前記情報処理装置に送信した場合に、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記他の第２情報処理装置へ送信するデータ送信部と
を含むことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理システム、データ送信方法及び情報処理装置に関する。
【背景技術】
【０００２】
動画像等のコンテンツデータを保持するコンテンツサーバ等の情報処理装置から、ネットワークを介してスマートフォン等の端末装置にコンテンツデータがダウンロードされる。この場合、ダウンロードに要する時間の短縮や、ネットワーク上のトラフィックを削減することが要求される。これらの要求に対し、端末装置に無線接続される基地局又は基地局の上位網側に、キャッシュサーバを設ける技術が提案されている。この技術によれば、コンテンツサーバから基地局を介して端末装置に送信されたコンテンツデータが、キャッシュサーバに格納（キャッシュ）される。そして、それ以後に同一コンテンツに対するリクエストが端末装置からなされた場合には、コンテンツサーバの代わりにキャッシュサーバが、コンテンツデータを端末装置に送信する。この場合は、当該リクエストはコンテンツサーバには送信されない。これにより、端末装置がコンテンツのリクエストを行ってから端末装置がコンテンツデータを取得するまでに要する時間を短縮することが可能になる。また、ネットワーク上のトラフィックを削減することができる。
【０００３】
また、複数のキャッシュサーバを含むネットワークにおいて、第１キャッシュサーバが、自身が保持するコンテンツデータを他の第２キャッシュサーバに送信する先行技術が知られている。この先行技術においては、第２キャッシュサーバが端末装置からコンテンツリクエスト（コンテンツの送信要求）を受信した場合に、第２キャッシュサーバは、コンテンツサーバに代えて第１キャッシュサーバからコンテンツデータを取得して端末装置に送信することができる。この処理を実現するために第２キャッシュサーバは、第１キャッシュサーバにリクエストの対象となっているコンテンツデータを保持しているか否かについて問合せを発行する。第１キャッシュサーバが、コンテンツリクエストのリクエスト対象となるコンテンツのデータを保持している場合は、第１キャッシュサーバが対象コンテンツデータを第２キャッシュサーバに送信する。本明細書においては、コンテンツリクエストのリクエスト対象となるコンテンツは、「対象コンテンツ」と表記される場合がある。また、コンテンツリクエストのリクエスト対象となるコンテンツのデータは、「対象コンテンツデータ」と表記される場合がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３１１０１３号公報
【特許文献２】特開２０１４−３５６０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の先行技術においては、第２キャッシュサーバはコンテンツサーバへのコンテンツリクエスト送信を行う前に、第１キャッシュサーバにコンテンツリクエストの対象コンテンツデータを保持しているか否かについての問合せを実行する。第１キャッシュサーバが対象コンテンツデータを保持していない場合は、第１キャッシュサーバはコンテンツデータを保持していないことを第２キャッシュサーバに回答する。その回答に基づき第２キャッシュサーバは、コンテンツサーバにコンテンツリクエストを送信する。そのため、第１キャッシュサーバがコンテンツデータを保持していない場合には、第２キャッシュサーバのコンテンツサーバへのアクセスに遅延が発生する。
【０００６】
開示の技術は、端末装置からコンテンツリクエストを受信したキャッシュサーバにおいて生じる処理の遅延を抑制することを目的とする。
【課題を解決するための手段】
【０００７】
開示の情報処理システムは、第１記憶装置を有する第１情報処理装置と、第２情報処理装置と、を有し、前記第１情報処理装置が、データの送信を要求する第１送信要求を受信し、前記第１情報処理装置が、前記第１送信要求を第３情報処理装置に送信することにより、前記第３情報処理装置から前記データを受信して前記第１記憶装置に格納し、前記第１情報処理装置が、前記データが前記第１記憶装置に格納されていることを示す情報を、前記第２情報処理装置に通知し、前記第２情報処理装置が、前記データの送信を要求する第２送信要求を受信し、前記第２情報処理装置が、前記情報に基づき、前記第２送信要求を前記第１情報処理装置に変更して送信し、前記第１情報処理装置が、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記第２情報処理装置へ送信することを特徴とする。
【発明の効果】
【０００８】
第１情報処理装置は、コンテンツデータを保持していることを示す情報を第２情報処理装置に通知し、第２情報処理装置は、第１情報処理装置から受信した情報に基づき、コンテンツデータが第１情報処理装置に保持されているか否かを判断する。そのため第２情報処理装置は、コンテンツデータを保持しているか否かの問合せが第１情報処理装置に対して行われない場合であっても、コンテンツデータを取得できる送信要求の送信先を決定することができる。
【図面の簡単な説明】
【０００９】
【図１】第１実施例におけるネットワークの構成例を示す図である。
【図２】第１実施例におけるコンテンツサーバ、キャッシュサーバ、基地局及び端末装置のそれぞれのハードウェア構成図である。
【図３】第１実施例におけるキャッシュサーバのプロセッサの機能ブロック図である。
【図４】第１実施例における格納コンテンツ情報テーブルの例を示す図である。
【図５】第１実施例における通知情報テーブルの例を示す図である。
【図６】第１実施例において主に複数のキャッシュサーバとコンテンツサーバとの間で実行される処理の概要を示す図である。
【図７】第１実施例において主に複数のキャッシュサーバ間で実行される処理の概要を示す図である。
【図８】第１実施例におけるキャッシュサーバのプロセッサによって実行される処理のフローチャートである。
【図９】第２実施例におけるネットワークの構成例を示す図である。
【図１０】第２実施例におけるキャッシュサーバのプロセッサの機能ブロック図である。
【図１１】第２実施例におけるリンク情報テーブルの例を示す図である。
【図１２】第２実施例におけるキャッシュサーバのプロセッサによって実行される通知情報の送信処理に関するフローチャートである。
【図１３】第２実施例の変形例におけるリンク情報テーブルの例を示す図である。
【発明を実施するための形態】
【００１０】
＜第１実施例＞
第１実施例では、記憶装置を有する情報処理装置、例えば第１キャッシュサーバと、他の情報処理装置、例えば第２キャッシュサーバを含む情報処理システムが開示される。端末装置、例えばスマートフォンが、情報処理装置、例えばコンテンツサーバ宛てに、コンテンツデータの送信要求を送信する。この送信要求は、端末装置に無線接続される基地局を経由して、当該基地局に対応する第１キャッシュサーバに送信される。第１キャッシュサーバは、当該送信要求をコンテンツサーバに送信することにより、コンテンツサーバからコンテンツデータを取得して記憶装置に格納する。更に第１キャッシュサーバは、データ保持に関する情報、例えばコンテンツデータが記憶装置に格納されていることを示す情報（以下、通知情報）、第２キャッシュサーバに通知する。そして第２キャッシュサーバがコンテンツデータの送信要求を端末装置から受信した場合には、第１キャッシュサーバから通知された通知情報に基づき、送信要求をコンテンツサーバに送信するか、第１キャッシュサーバに送信するかを決定する。第２キャッシュサーバは、送信要求の対象コンテンツデータが通知情報にて特定されるコンテンツデータと同一の場合は、送信要求を第１キャッシュサーバに送信する。一方、第２キャッシュサーバは、送信要求の対象コンテンツデータに対応する通知情報を第１キャッシュサーバから受信していない場合には、送信要求をコンテンツサーバへ送信する。
【００１１】
図１は、第１実施例におけるネットワークの構成例を示す図である。図１においては、端末装置４Ａ、４Ｂ及び４Ｃが、それぞれ基地局３Ａ、３Ｂ及び３Ｃに無線接続される。基地局３Ａ、３Ｂ及び３Ｃには、それぞれキャッシュサーバ２Ａ、２Ｂ及び２Ｃが接続される。図１に示す例では、キャッシュサーバ２Ａ、２Ｂ及び２Ｃは、基地局３Ａ、３Ｂ及び３Ｃとはそれぞれ別に、ネットワーク５側に構成されているが、それぞれ基地局３Ａ、３Ｂ及び３Ｃに一体となる構成であってもよい。キャッシュサーバ２Ａ、２Ｂ及び２Ｃはそれぞれストレージ装置を備え、コンテンツデータを格納することができる。キャッシュサーバ２Ａ、２Ｂ及び２Ｃは、ネットワーク５を介してコンテンツサーバ１にそれぞれ接続される。
【００１２】
以下において、図１に開示された複数のキャッシュサーバ２Ａ、２Ｂ及び２Ｃは、互いを区別しない場合は「キャッシュサーバ２」と表記されるものとする。同様に、基地局３Ａ、３Ｂ及び３Ｃ、端末装置４Ａ、４Ｂ及び４Ｃは、互いを区別しない場合は、「基地局３」及び「端末装置４」と表記されるものとする。また、以下に開示される第１実施例及び第２実施例は、キャッシュサーバ２Ａが、通知情報を送信する側のキャッシュサーバであり、キャッシュサーバ２Ｂ及び２Ｃが、通知情報を受信する側のキャッシュサーバであるものとして説明される。
【００１３】
図１において、キャッシュサーバ２Ａがコンテンツサーバ１からコンテンツデータを取得する。そして当該コンテンツデータがキャッシュサーバ２Ａのストレージ装置に格納される。この場合、キャッシュサーバ２Ａが当該コンテンツデータを保持していることを示す通知情報を、他のキャッシュサーバ２に通知する。通知情報には、コンテンツを特定するためのＩｄｅｎｔｉｆｉｅｒ（ＩＤ）（以下、コンテンツＩＤ）、例えばＵｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ（ＵＲＩ）と、当該コンテンツデータを保持するキャッシュサーバ２Ａを特定するためのＩＤ（以下、キャッシュサーバＩＤ）とが含まれる。他のキャッシュサーバ２は通知情報を受信し、通知情報を通知情報テーブルに登録する。通知情報テーブルは、通知情報に含まれるコンテンツＩＤとキャッシュサーバＩＤとを互いに対応付けて保持するテーブルである。通知情報テーブルの詳細は後述される。
【００１４】
他のキャッシュサーバ２が端末装置４からコンテンツリクエストを受信した場合、他のキャッシュサーバ２は通知情報テーブルを参照する。これにより、他のキャッシュサーバ２は、コンテンツリクエストの対象コンテンツデータがキャッシュサーバ２Ａにより保持されているか否かを判定することができる。対象コンテンツデータがキャッシュサーバ２Ａによって保持されていると判定された場合は、他のキャッシュサーバ２はコンテンツリクエストをキャッシュサーバ２Ａへ送信し、コンテンツデータをキャッシュサーバ２Ａから取得して端末装置４へ送信する。一方、対象コンテンツデータがキャッシュサーバ２Ａによって保持されていないと判定される場合は、他のキャッシュサーバ２はコンテンツリクエストをコンテンツサーバ１へ送信し、コンテンツサーバ１からコンテンツデータを取得して端末装置４へ送信する。
【００１５】
このように、キャッシュサーバ２Ａがコンテンツデータを格納した場合に通知情報を他のキャッシュサーバ２へ送信する。これにより、他のキャッシュサーバ２は、コンテンツリクエストを受信した際に、対象コンテンツデータが保持されているか否かの問合せをキャッシュサーバ２Ａに対して行わなくても、コンテンツリクエストをキャッシュサーバ２Ａに送信するかコンテンツサーバ１に送信するかを決定することができる。
【００１６】
図２は、第１実施例におけるコンテンツサーバ１、キャッシュサーバ２、基地局３及び端末装置４のそれぞれのハードウェア構成図である。図２の（Ａ）はコンテンツサーバ１のハードウェア構成を示す。コンテンツサーバ１は、プロセッサ１１、不揮発性メモリ１２、揮発性メモリ１３、ネットワークインターフェース装置１４、ストレージ装置１５を含む。プロセッサ１１は、不揮発性メモリ１２に格納されたコンピュータプログラムを揮発性メモリ１３にロードして実行する。プロセッサ１１はハードウェアプロセッサであり、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）、Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ（ＭＣＵ）、Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＭＰＵ）、Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ（ＤＳＰ）、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ（ＦＰＧＡ）等が適用可能である。
【００１７】
不揮発性メモリ１２には、プロセッサ１１によって実行されるコンピュータプログラム等が格納される。不揮発性メモリ１２は、例えばＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）、Ｍａｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（マスクＲＯＭ）、Ｐｒｏｇｒａｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＰＲＯＭ）、フラッシュメモリ、Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＭＲＡＭ）、Ｒｅｓｉｓｔａｎｃｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲｅＲＡＭ）、Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＦｅＲＡＭ）等である。コンピュータプログラムは、不揮発性メモリ１２以外の記憶媒体であって、コンピュータで読み取り可能な記録媒体（ただし、搬送波は除く）に記録されることができる。また、コンピュータプログラムが記録されたＤｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ（ＤＶＤ）、Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＣＤ−ＲＯＭ）などの可搬型記録媒体を流通させることもできる。また、コンピュータプログラムは、ネットワーク５を介して送信されうる。
【００１８】
揮発性メモリ１３には、不揮発性メモリ１２に格納されているコンピュータプログラムがロードされる。また揮発性メモリ１３には、プロセッサ１１による演算処理に使用されるデータや演算処理の結果であるデータ等が保持される。揮発性メモリ１３は、例えばＳｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＳＲＡＭ）やＤｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＤＲＡＭ）等である。尚、コンテンツサーバ１は揮発性メモリ１３を含まなくてもよい。その場合、プロセッサ１１が不揮発性メモリ１２に格納されているコンピュータプログラムを直接実行する。
【００１９】
ネットワークインターフェース装置１４はネットワーク５に接続され、コンテンツリクエストを受信し、またコンテンツデータを送信する。ネットワークインターフェース装置１４は例えばＮｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ（ＮＩＣ）である。ストレージ装置１５にはコンテンツデータが格納され、端末装置４からのコンテンツリクエストに応じてコンテンツデータが配信される。ストレージ装置１５は例えばＳｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ（ＳＳＤ）やＨａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）である。
【００２０】
図２の（Ｂ）はキャッシュサーバ２のハードウェア構成を示す。図２の（Ａ）で既に説明された内容と重複する内容については説明が適宜省略される。キャッシュサーバ２は、プロセッサ２１、不揮発性メモリ２２、揮発性メモリ２３、ネットワークインターフェース装置２４、ストレージ装置２５を含む。プロセッサ２１は、不揮発性メモリ２２に格納されたコンピュータプログラムを揮発性メモリ２３にロードして実行する。プロセッサ２１はハードウェアプロセッサである。不揮発性メモリ２２には、プロセッサ２１によって実行されるコンピュータプログラム等が格納される。揮発性メモリ２３には、不揮発性メモリ２２に格納されているコンピュータプログラムがロードされる。また揮発性メモリ２３には、プロセッサ２１による演算処理に使用されるデータや演算処理の結果であるデータ等が保持される。ネットワークインターフェース装置２４はネットワーク５に接続され、コンテンツリクエストの送受信や、コンテンツデータの送受信を行う。尚、キャッシュサーバ２は、ネットワークインターフェース装置２４を介して基地局３に接続される。ストレージ装置２５には、コンテンツデータが格納される。
【００２１】
図２の（Ｃ）は基地局３のハードウェア構成を示す。図２の（Ａ）及び（Ｂ）で既に説明された内容と重複する内容については説明が適宜省略される。基地局３は、プロセッサ３１、不揮発性メモリ３２、揮発性メモリ３３、ネットワークインターフェース装置３４、無線通信装置３６を含む。プロセッサ３１は、不揮発性メモリ３２に格納されたコンピュータプログラムを揮発性メモリ３３にロードして実行する。プロセッサ３１はハードウェアプロセッサである。不揮発性メモリ３２には、プロセッサ３１によって実行されるコンピュータプログラム等が格納される。揮発性メモリ３３には、不揮発性メモリ３２に格納されているコンピュータプログラムがロードされる。また揮発性メモリ３３には、プロセッサ３１による演算処理に使用されるデータや演算処理の結果であるデータ等が保持される。ネットワークインターフェース装置３４はキャッシュサーバ２に接続され、コンテンツリクエストの送受信や、コンテンツデータの送受信を行う。無線通信装置３６は、例えばＬｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）、Ｔｈｉｒｄ  Ｇｅｎｅｒａｔｉｏｎ（３Ｇ）やＷｉｒｅｌｅｓｓ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＷＬＡＮ）の通信モジュールであり、端末装置４との無線通信を行い、端末装置４からコンテンツリクエストを受信し、端末装置４へコンテンツデータを送信する。
【００２２】
図２の（Ｄ）は端末装置４のハードウェア構成を示す。図２の（Ａ）、（Ｂ）及び（Ｃ）で既に説明された内容と重複する内容については説明が適宜省略される。端末装置４は、プロセッサ４１、不揮発性メモリ４２、揮発性メモリ４３、無線通信装置４６を含む。プロセッサ４１は、不揮発性メモリ４２に格納されたコンピュータプログラムを揮発性メモリ４３にロードして実行する。プロセッサ４１はハードウェアプロセッサである。不揮発性メモリ４２には、プロセッサ４１によって実行されるコンピュータプログラム等が格納される。揮発性メモリ４３には、不揮発性メモリ４２に格納されているコンピュータプログラムがロードされる。また揮発性メモリ４３には、プロセッサ４１による演算処理に使用されるデータや演算処理の結果であるデータ等が保持される。無線通信装置４６は、基地局３と無線通信を行い、コンテンツリクエストの送信及びコンテンツデータの受信を行う。
【００２３】
図３は、第１実施例におけるキャッシュサーバ２のプロセッサ２１の機能ブロック図である。プロセッサ２１は、図２の不揮発性メモリ２２に格納されたコンピュータプログラムを実行することにより、判定部２１１、リクエスト送受信部２１２、ストレージ制御部２１３、コンテンツデータ送受信部２１４、通知部２１５、格納コンテンツ情報テーブル２１７、通知情報テーブル２１８として機能する。格納コンテンツ情報テーブル２１７及び通知情報テーブル２１８は、例えば図２の揮発性メモリ２３に格納される構成であってもよい。
【００２４】
判定部２１１は、受信されたコンテンツリクエストの対象コンテンツデータが、図２のストレージ装置２５に格納されているか否かを判定する。この判定は、格納コンテンツ情報テーブル２１７を参照することによって実行される。
【００２５】
図４は、第１実施例における格納コンテンツ情報テーブル２１７の例を示す図である。格納コンテンツ情報テーブル２１７には、各キャッシュサーバ２が図２のストレージ装置２５に保持しているコンテンツデータのコンテンツＩＤが登録される。例えばキャッシュサーバ２Ａが、コンテンツＩＤが「ａａ」であるコンテンツのコンテンツデータを、自身のストレージ装置２５に格納した場合には、キャッシュサーバ２Ａの格納コンテンツ情報テーブル２１７は、図４に示される内容となる。
【００２６】
図３の説明に戻り、判定部２１１は、コンテンツリクエストの対象コンテンツデータが格納コンテンツ情報テーブル２１７に登録されていない場合、対象コンテンツデータが他のキャッシュサーバ２に格納されているか否かを判定する。この判定は通知情報テーブル２１８を参照することにより実行される。
【００２７】
図５は、第１実施例における通知情報テーブル２１８の例を示す図である。通知情報テーブル２１８には、コンテンツＩＤとキャッシュサーバＩＤとが関連付けられて登録される。図５に示される例においては、キャッシュサーバ２ＡのキャッシュサーバＩＤ「ＡＡ」と、キャッシュサーバ２Ａのストレージ装置２５に格納されているコンテンツデータのコンテンツＩＤ「ａａ」が対応付けられて登録されている。これは例えばキャッシュサーバ２Ｂが、コンテンツＩＤが「ａａ」であるコンテンツのコンテンツデータがキャッシュサーバ２Ａに保持されていることを示す通知情報を受信した場合の、キャッシュサーバ２Ｂの通知情報テーブル２１８の内容に相当する。
【００２８】
図３の説明に戻り、リクエスト送受信部２１２は、コンテンツリクエストを受信する。またリクエスト送受信部２１２は、格納コンテンツ情報テーブル２１７に対象コンテンツのコンテンツＩＤが登録されておらず、通知情報テーブル２１８にも対象コンテンツのコンテンツＩＤが登録されていない場合には、コンテンツリクエストをコンテンツサーバ１へ送信する。またリクエスト送受信部２１２は、格納コンテンツ情報テーブル２１７に対象コンテンツのコンテンツＩＤが登録されていないが、通知情報テーブル２１８に対象コンテンツのコンテンツＩＤが登録されている場合には、コンテンツリクエストを、当該コンテンツデータを保持しているキャッシュサーバ２に送信する。
【００２９】
コンテンツデータ送受信部２１４は、コンテンツサーバ１又は他のキャッシュサーバ２から送信されたコンテンツデータを受信する。ストレージ制御部２１３は、コンテンツサーバ１から送信されたコンテンツデータをストレージ装置２５に格納する。コンテンツデータ送受信部２１４は、ストレージ装置２５に格納されているコンテンツデータ、又は他のキャッシュサーバ２から受信したコンテンツデータを、コンテンツリクエストの発行元である端末装置４に送信する。通知部２１５は、コンテンツサーバ１から送信されたコンテンツデータがストレージ装置２５に格納された場合に、他のキャッシュサーバ２に対して通知情報の送信を行う。
【００３０】
図６は、第１実施例において主に複数のキャッシュサーバ２とコンテンツサーバ１との間で実行される処理の概要を示す図である。図６においては主に、コンテンツデータをコンテンツサーバ１から受信したキャッシュサーバ２Ａが、キャッシュサーバ２Ｂに通知情報を送信し、キャッシュサーバ２Ｂが通知情報を通知情報テーブル２１８に格納する処理が開示される。
【００３１】
処理Ｓ１０２において端末装置４Ａが、基地局３Ａとの間に形成された無線通信リンクを用いて、コンテンツサーバ１に対するコンテンツリクエストを送信する。端末装置４Ａから送信されたコンテンツリクエストの宛先は、コンテンツサーバ１である場合と、キャッシュサーバ２Ａである場合の、両方の場合がある。コンテンツリクエストの宛先を示す情報は、例えばコンテンツリクエストを含むパケットのヘッダに登録される。コンテンツリクエストは基地局３Ａを介してキャッシュサーバ２Ａに送信される。処理Ｓ１０４においてキャッシュサーバ２Ａは、コンテンツリクエストの対象コンテンツのコンテンツＩＤが格納コンテンツ情報テーブル２１７に登録されているか否かを判定する。尚、図６に示される例においては、対象コンテンツのコンテンツＩＤは格納コンテンツ情報テーブル２１７には登録されていないものとする。
【００３２】
次に処理Ｓ１０６においてキャッシュサーバ２Ａは、対象コンテンツのコンテンツＩＤが通知情報テーブル２１８に登録されているか否かを判定する。この例では対象コンテンツのコンテンツＩＤが通知情報テーブル２１８に登録されていないものとする。
【００３３】
次に処理Ｓ１０８においてキャッシュサーバ２Ａは、対象コンテンツのコンテンツＩＤが通知情報テーブル２１８に登録されていないため、コンテンツリクエストをコンテンツサーバ１に送信する。ここで、コンテンツリクエストの宛先がキャッシュサーバ２Ａである場合は、コンテンツリクエストの宛先を示す情報が、キャッシュサーバ２Ａのアドレスからコンテンツサーバのアドレスに書き換えられる。処理Ｓ１１０においてコンテンツサーバ１が、コンテンツリクエストに応答して、コンテンツデータをキャッシュサーバ２Ａに送信する。処理Ｓ１１２においてキャッシュサーバ２Ａが、コンテンツサーバ１から送信されたコンテンツデータをストレージ装置２５に格納する。処理Ｓ１１４においてキャッシュサーバ２Ａは、コンテンツデータを、基地局３Ａを介して端末装置４Ａに送信する。処理Ｓ１１６においてキャッシュサーバ２Ａは、キャッシュサーバ２Ｂに通知情報を送信する。処理Ｓ１１８においてキャッシュサーバ２Ｂは、通知情報を受信し、通知情報の内容を自身の通知情報テーブル２１８に登録する。処理Ｓ１１６は、処理Ｓ１１２と処理Ｓ１１４間に行われてもよい。
【００３４】
尚、キャッシュサーバ２Ａは、処理Ｓ１１６において、通知情報の送信対象となるキャッシュサーバ２を特定する処理を行ってもよい。送信対象となるキャッシュサーバ２の特定処理については後述される。図６では、キャッシュサーバ２Ｂが通知情報の送信対象として選択され、キャッシュサーバ２Ｃは通知情報の送信対象として選択されない例が示されている。
【００３５】
図７は、第１実施例において主に複数のキャッシュサーバ２間で実行される処理の概要を示す図である。図７では、図６においてキャッシュサーバ２Ａから通知を受けたキャッシュサーバ２Ｂが、その後にコンテンツリクエストを受信した場合に実行される処理の概要が開示される。
【００３６】
処理Ｓ１２２において、基地局３Ｂに接続された端末装置４Ｂが、コンテンツリクエストを送信する。このコンテンツリクエストの対象コンテンツデータは、図６においてキャッシュサーバ２Ａに保持されたコンテンツデータと同一であるものとする。コンテンツリクエストは基地局３Ｂを介してキャッシュサーバ２Ｂへ送信される。コンテンツリクエストを受信したキャッシュサーバ２Ｂは、処理Ｓ１２４において、リクエストの対象コンテンツのコンテンツＩＤが格納コンテンツ情報テーブル２１７に登録されているか否かを判定する。図７の例において対象コンテンツのコンテンツＩＤは格納コンテンツ情報テーブル２１７に登録されていないものとする。次に処理Ｓ１２６においてキャッシュサーバ２Ｂは、対象コンテンツのコンテンツＩＤが通知情報テーブル２１８に登録されているか否かを判定する。図６に示されたように、対象コンテンツデータのコンテンツＩＤ及びキャッシュサーバ２ＡのキャッシュサーバＩＤが通知情報テーブル２１８に登録されている。そこでキャッシュサーバ２Ｂは、処理Ｓ１２８において、コンテンツリクエストをキャッシュサーバ２Ａに送信する。この場合、コンテンツリクエストの宛先を示す情報が、キャッシュサーバ２Ａのアドレスに書き換えられる。処理Ｓ１３０においてキャッシュサーバ２Ａは、コンテンツリクエストに基づいて、対象コンテンツデータをキャッシュサーバ２Ｂに送信する。処理Ｓ１３２においてキャッシュサーバ２Ｂは、コンテンツデータを、コンテンツリクエストの発行元である端末装置４Ｂに送信する。
【００３７】
このように、図６及び図７に開示された処理において、コンテンツサーバ１から送信されたコンテンツデータを保持するキャッシュサーバ２Ａが、キャッシュサーバ２Ｂに通知情報を送信する。また、通知情報を受信したキャッシュサーバ２Ｂは、その後に同一コンテンツについてのコンテンツリクエストを受信した場合には、コンテンツデータを保持するキャッシュサーバ２Ａにコンテンツリクエストを送信する。これらの処理により、キャッシュサーバ２Ｂは、キャッシュサーバ２Ａからコンテンツデータを受信し、端末装置４Ｂにコンテンツデータを送信することができる。またキャッシュサーバ２Ｂは、キャッシュサーバ２Ａに対象コンテンツデータが格納されているか否かを、自身の有する通知情報テーブル２１８を参照することにより認識できる。そのためキャッシュサーバ２Ｂは、キャッシュサーバ２Ａへの問合せを行わなくても、キャッシュサーバ２Ａとコンテンツサーバ１の何れかをコンテンツリクエストの送信先として選択することができる。
【００３８】
図８は、第１実施例におけるキャッシュサーバ２のプロセッサ２１によって実行される処理のフローチャートである。処理フローは処理Ｓ３００によって開始され、処理Ｓ３０２においてリクエスト送受信部２１２が、コンテンツリクエストを受信する。このコンテンツリクエストの受信は、キャッシュサーバ２に対応する基地局３から当該コンテンツリクエストを受信する場合の他に、他のキャッシュサーバ２から送信された当該コンテンツリクエストを受信する場合も含む。処理Ｓ３０４において判定部２１１が、格納コンテンツ情報テーブル２１７を参照することにより、コンテンツリクエストの対象コンテンツデータが、キャッシュサーバ２のストレージ装置２５に格納されているか否かを判定する。対象コンテンツデータがキャッシュサーバ２のストレージ装置２５に格納されていると判定された場合は、処理フローは処理Ｓ３０６へ進む。処理Ｓ３０６においてコンテンツデータ送受信部２１４が、ストレージ装置２５に格納されているコンテンツデータを送信する。コンテンツリクエストが当該キャッシュサーバ２に対応する基地局３を介して端末装置４から送信されたものである場合は、コンテンツデータの送信は基地局３を介して端末装置４に対して実行される。一方、コンテンツリクエストが他のキャッシュサーバ２から送信されたものである場合は、コンテンツデータの送信は当該他のキャッシュサーバ２に対して実行される。
【００３９】
一方、処理Ｓ３０４において対象コンテンツデータがキャッシュサーバ２のストレージ装置２５に格納されていると判定されない場合は、処理フローは処理Ｓ３０８へ進む。処理Ｓ３０８において判定部２１１が、通知情報テーブル２１８に対象コンテンツのコンテンツＩＤが登録されているか、すなわち他のキャッシュサーバ２に対象コンテンツデータが格納されているか否かを判定する。他のキャッシュサーバ２に対象コンテンツデータが格納されていると判定された場合は、処理フローは処理Ｓ３２０へ進み、他のキャッシュサーバ２に対象コンテンツデータが格納されていると判定されない場合は、処理フローは処理Ｓ３１０へ進む。
【００４０】
処理フローが処理Ｓ３２０へ進んだ場合、処理Ｓ３２０においてリクエスト送受信部２１２が、コンテンツリクエストを、対象コンテンツデータを格納している他のキャッシュサーバ２へ送信する。その後、処理Ｓ３２２においてコンテンツデータ送受信部２１４が対象コンテンツデータを他のキャッシュサーバ２から受信する。そして処理Ｓ３２４においてコンテンツデータ送受信部２１４が、対象コンテンツデータを、基地局３を介して端末装置４に送信する。
【００４１】
一方、処理フローが処理Ｓ３０８から処理Ｓ３１０へ進んだ場合、処理Ｓ３１０においてリクエスト送受信部２１２が、コンテンツリクエストをコンテンツサーバ１へ送信する。そして処理Ｓ３１２においてコンテンツデータ送受信部２１４が、対象コンテンツデータをコンテンツサーバ１から受信する。そして処理Ｓ３１４においてストレージ制御部２１３が、対象コンテンツデータをストレージ装置２５に格納する。処理Ｓ３１６においてコンテンツデータ送受信部２１４が、対象コンテンツデータを、基地局３を介して端末装置４に送信する。また処理Ｓ３１８において通知部２１５が、他のキャッシュサーバ２に対する通知情報の送信処理を実行する。その後、処理フローは処理Ｓ３３０にて終了する。
【００４２】
このように、第１実施例においては、コンテンツデータを保持するキャッシュサーバ２Ａが他のキャッシュサーバ２に対して通知情報を送信し、他のキャッシュサーバ２が通知情報テーブル２１８に受信した通知情報を登録する。これにより他のキャッシュサーバ２は、コンテンツリクエストを受信した場合に通知情報テーブル２１８を参照することにより、コンテンツリクエストをコンテンツサーバ１から取得するかキャッシュサーバ２から取得するかを決定することができる。
【００４３】
尚、図７の処理Ｓ１３０及び図８の処理Ｓ３２４においては、キャッシュサーバ２Ａから送信されたコンテンツデータを受信したキャッシュサーバ２Ｂが、当該コンテンツデータを自身のストレージ装置２５に格納するか否かについては言及されていない。この点に関して、キャッシュサーバ２Ｂのストレージ制御部２１３が、キャッシュサーバ２Ａから送信されたコンテンツデータを自身のストレージ装置２５に格納するか否かを選択する機能を更に有してもよい。キャッシュサーバ２Ｂのストレージ装置２５に当該コンテンツデータが格納された後に、キャッシュサーバ２Ｂが当該コンテンツについて再度コンテンツリクエストを受信したとする。この場合、キャッシュサーバ２Ｂは自身のストレージ装置２５から直接コンテンツデータを端末装置４に送信することができる。これにより、端末装置４が所望のコンテンツデータを取得するのに要する時間が短縮される。また、キャッシュサーバ２Ｂのストレージ装置２５に当該コンテンツデータが格納されない場合には、キャッシュサーバ２Ａとキャッシュサーバ２Ｂが同一コンテンツデータを保持することを抑制することができる。これにより、複数のキャッシュサーバ２のストレージ装置２５の容量を効率的に使用することができる。尚、ストレージ制御部２１３は、キャッシュサーバ２Ａから送信されたコンテンツデータを自身のストレージ装置２５に格納するか否かを選択することなく、ストレージ装置２５にコンテンツデータを格納してもよい。
【００４４】
また第１実施例において、図６の処理Ｓ１１６及び図８の処理Ｓ３２０においてキャッシュサーバ２Ａは、他の全てのキャッシュサーバ２に通知情報を送信しなくてもよい。例えば複数あるキャッシュサーバ２のうち、特定のキャッシュサーバ２に選択的に通知情報が送信されてもよい。例えばキャッシュサーバ２Ａに対応する基地局３Ａのハンドオーバ先としてグルーピングされた他の基地局３が存在する場合、グルーピングされた基地局３に対応するキャッシュサーバ２が、通知情報の送信対象として選択されてもよい。また、端末装置４に対するページングを行うために複数の基地局３を含むページングエリアが設定されている場合は、当該ページングエリアに含まれる基地局３に対応するキャッシュサーバ２が、通知情報の送信対象として選択されてもよい。通知情報の送信対象となるキャッシュサーバ２の選択方法として他の方法が、以下の第２実施例にて開示される。
【００４５】
＜第２実施例＞
図９は、第２実施例におけるネットワークの構成例を示す図である。図１に開示された構成と同一の構成については同一の参照符号が付され、説明は適宜省略される。例えばＩｎｔｅｒｎｅｔ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ（ＩＳＰ）が提供するモバイルネットワーク７には、複数の基地局３及び複数のキャッシュサーバ２が含まれる。モバイルネットワーク７に含まれる複数のキャッシュサーバ２は、Ｍｏｂｉｌｅ  Ｅｄｇｅ  Ｃｏｍｐｕｔｉｎｇ（ＭＥＣ）サーバとも呼ばれる。複数のキャッシュサーバ２は、例えばＩＳＰが提供するＰａｃｋｅｔ  Ｄａｔａ  Ｎｅｔｗｏｒｋ  Ｇａｔｅｗａｙ（Ｐ−ＧＷ）９を経由してインターネット６に接続される。そして複数のキャッシュサーバ２はコンテンツサーバ１に接続可能である。尚、モバイルネットワーク７は通信事業者が提供するものでもあってもよく、基地局３は通信事業者が保有する基地局３であってもよい。
【００４６】
図１に開示されたネットワークの構成例と同様に、各キャッシュサーバ２は、コンテンツサーバ１からコンテンツデータを受信してストレージ装置２５に格納した場合に、他のキャッシュサーバ２に通知情報を送信する。第２実施例においては、各キャッシュサーバ２は、通知情報の送信対象を特定する処理を実行する。つまり、他のキャッシュサーバ２に対して通知情報を送信するか否かを、他のキャッシュサーバ２毎に決定し、他のキャッシュサーバ２が通知対象として決定された場合に、当該他のキャッシュサーバ２に通知情報を送信する。他のキャッシュサーバ２が通知対象として決定されない場合は、当該他のキャッシュサーバ２に対する通知情報の送信は行われない。
【００４７】
ここで、通知対象となる他のキャッシュサーバ２を決定することの技術的意義について説明する。例えばキャッシュサーバ２Ａがコンテンツデータを保持しており、キャッシュサーバ２Ｂに通知情報を送信したとする。この場合キャッシュサーバ２Ｂは、コンテンツリクエストを受信した際にはコンテンツリクエストをキャッシュサーバ２Ａに送信する。これは、コンテンツデータをコンテンツサーバ１から受信するよりもキャッシュサーバ２Ａから取得する方が、コンテンツデータを取得するまでに要する時間が短くなることが期待される場合に有効な処理である。しかし、コンテンツデータをコンテンツサーバ１から取得するのに要する時間よりも、コンテンツデータをキャッシュサーバ２Ａから取得するのに要する時間が長い場合も有り得る。この場合は、コンテンツリクエストの送信先がコンテンツサーバ１からキャッシュサーバ２Ａに変更されることにより、かえってコンテンツデータの取得に要する時間が長くなることになる。このような状態を抑制するため、第２実施例ではキャッシュサーバ２Ａは、コンテンツデータの取得に要する時間が短くなることが予測される場合に、他のキャッシュサーバ２に通知情報を送信する。この処理により、コンテンツリクエストの送信先を変更することによってコンテンツデータの取得に要する時間が長くなるということを抑制することができる。
【００４８】
より詳細には、キャッシュサーバ２Ａがコンテンツリクエストをコンテンツサーバ１から受信した場合、キャッシュサーバ２Ａは、キャッシュサーバ２Ａがコンテンツデータをコンテンツサーバ１から取得するのに要した時間（第１時間）を特定する。またキャッシュサーバ２Ａは、キャッシュサーバ２Ａがキャッシュサーバ２Ｂに当該コンテンツデータを送信するのに要する時間（第２時間）を特定する。そしてキャッシュサーバ２Ａは、第１時間と第２時間を比較し、第１時間よりも第２時間が短い場合に、キャッシュサーバ２Ｂを通知情報の送信対象として決定する。逆に、第１時間よりも第２時間が長い場合は、キャッシュサーバ２Ｂを通知情報の送信対象外として決定する。
【００４９】
尚、第２時間は、複数のキャッシュサーバ２毎に個別に算出される。これは、キャッシュサーバ２Ａから他のキャッシュサーバ２へのコンテンツデータの送信に要する時間は、キャッシュサーバ２Ａから他のキャッシュサーバ２への通信における帯域や信号伝達遅延によって異なるためである。また第２時間は、コンテンツ毎に個別に算出される。これはキャッシュサーバ２Ａから他のキャッシュサーバ２への通信における帯域の相違に起因して、コンテンツのデータ量によって第２時間が異なるためである。
【００５０】
図１０は、第２実施例におけるキャッシュサーバ２のプロセッサ２１の機能ブロック図である。図３にて開示された機能ブロックと同一の機能ブロックについては同一の参照符号が付され、説明は適宜省略される。プロセッサ２１は、判定部２１１、リクエスト送受信部２１２、ストレージ制御部２１３、コンテンツデータ送受信部２１４、通知部２１５、格納コンテンツ情報テーブル２１７、通知情報テーブル２１８として機能する他、通知対象特定部２１６及びリンク情報テーブル２１９として機能する。通知対象特定部２１６は、通知情報の送信対象を特定する。リンク情報テーブル２１９は、他のキャッシュサーバ２との通信に関する種々の情報を保持するテーブルである。リンク情報テーブル２１９の内容例が図１１に開示される。
【００５１】
図１１は、第２実施例におけるリンク情報テーブル２１９の例を示す図である。リンク情報テーブル２１９には、他のキャッシュサーバ２のキャッシュサーバＩＤ、他のキャッシュサーバ２のＩＰアドレス、他のキャッシュサーバ２への通信の帯域（第１帯域）、他のキャッシュサーバ２への信号伝達遅延（第１信号伝達遅延）を示す情報が登録される。図１１は、キャッシュサーバ２Ａのリンク情報テーブル２１９の例を示している。キャッシュサーバ２Ａにとっての他のキャッシュサーバ２であるキャッシュサーバ２Ｂ及び２ＣのキャッシュサーバＩＤ「ＢＢ」及び「ＣＣ」がそれぞれ登録される。またキャッシュサーバ２Ｂ及び２ＣのＩＰアドレス「ｘｘｘ.ｘｘｘ.ｘ.１」及び「ｘｘｘ.ｘｘｘ.ｘ.２」がそれぞれ登録される。これらのＩＰアドレスを用いてキャッシュサーバ２Ａはキャッシュサーバ２Ｂ及び２Ｃとモバイルネットワーク７を介して通信を行う。また、キャッシュサーバ２Ｂ及び２Ｃへの通信における帯域の値、例えば「１．５Ｇｂｐｓ」及び「８００Ｍｂｐｓ」がそれぞれ登録される。また、キャッシュサーバ２Ｂ及び２Ｃへの通信における信号伝達遅延の値、例えば「０．２ｍｓ」及び「０．３ｍｓ」がそれぞれ登録される。これらの値は、ネットワーク管理者によって登録されてもよく、またキャッシュサーバ２Ａがテスト用データを他のキャッシュサーバ２に送信することにより測定された値が登録されてもよい。
【００５２】
図１０に戻り、通知対象特定部２１６は、コンテンツデータをコンテンツサーバ１から取得するのに要した時間（第１時間）を特定する。具体的には通知対象特定部２１６は、コンテンツリクエストがコンテンツサーバ１に対して送信された第１時刻を記録する。また通知対象特定部２１６は、コンテンツサーバ１からのコンテンツデータの受信が完了した第２時刻を記録する。そして通知対象特定部２１６は、第２時刻と第１時刻の差分を第１時間として特定する。
【００５３】
更に通知対象特定部２１６は、コンテンツデータを他のキャッシュサーバ２へ送信するのに要する時間（第２時間）を特定する。具体的には通知対象特定部２１６は、受信されたコンテンツデータのデータ量を特定する。コンテンツデータのデータ量は、ストレージ２５に格納されたコンテンツデータのアドレスに基づいて特定されてもよく、コンテンツデータを含むパケットを受信する度にパケットのデータ量を順次加算することによって特定されてもよく、コンテンツデータを含むパケットのヘッダ等にコンテンツデータのデータ量を示す情報が含まれる場合は、当該情報に基づいて特定されてもよい。
【００５４】
次に通知対象特定部２１６は、リンク情報テーブル２１９から、キャッシュサーバ２Ａから他のキャッシュサーバ２への通信の帯域の値を抽出する。そして通知対象特定部２１６は、コンテンツデータのデータ量の値を帯域の値で除した値に、リンク情報テーブル２１９に登録された信号伝達遅延の値を加算することにより、第２時間を特定する。
【００５５】
そして通知対象特定部２１６は、第１時間と第２時間の比較に基づき、他のキャッシュサーバ２に対する通知情報の送信を行うか否かを決定する。この決定は、他のキャッシュサーバ２が複数ある場合には、他のキャッシュサーバ２毎に実行され、またコンテンツデータが複数ある場合には、コンテンツデータ毎に実行される。
【００５６】
図１２は、第２実施例におけるキャッシュサーバ２のプロセッサ２１によって実行される通知情報の送信処理に関するフローチャートである。図１２に示される一連の処理は、図８に開示された処理Ｓ３２０の内容に相当する。処理フローは処理Ｓ４００により開始され、処理Ｓ４０２において通知対象特定部２１６が、コンテンツリクエストが送信されてからコンテンツデータの受信が完了するまでの時間（第１時間）を特定する。処理Ｓ４０４において通知対象特定部２１６は、コンテンツデータのデータ量を特定する。処理Ｓ４０６において通知対象特定部２１６は、コンテンツデータのデータ量の値を、他のキャッシュサーバ２への通信の帯域の値で除し、更に、他のキャッシュサーバ２への通信の信号伝達遅延の値を加える。これにより、他のキャッシュサーバ２へのコンテンツデータの送信に要する時間（第２時間）が特定される。そして処理Ｓ４０８において通知対象特定部２１６が、第１時間が第２時間よりも長いか否かを判定する。第１時間よりも第２時間が長いと判定された場合は、処理フローは処理Ｓ４１０へ進み、処理Ｓ４１０において通知対象特定部２１６は、他のキャッシュサーバ２を通知情報の送信対象とすることを決定する。そして処理Ｓ４１２において通知部２１５は、通知情報の送信対象として決定された他のキャッシュサーバ２に通知情報を送信する。一方、処理Ｓ４０８において第１時間よりも第２時間が長いと判定されない場合は、処理フローは処理Ｓ４１４へ進み、処理Ｓ４１４において通知対象特定部２１６は、他のキャッシュサーバ２を通知情報の送信対象としないことを決定する。その後、処理Ｓ４２０において処理フローが終了する。
【００５７】
このように第２実施例においては、キャッシュサーバ２Ａは、通知情報の送信を行う対象となる他のキャッシュサーバ２を特定する処理を実行する。これにより、通知情報を受信した他のキャッシュサーバ２がコンテンツリクエストの送信先を変更することによって、コンテンツデータの取得に要する時間が増加してしまう、という状況を抑制することができる。
【００５８】
尚、第２実施例において第２時間は、コンテンツデータのデータ量の値を帯域の値で除し、更に信号伝達遅延の値を加えることにより求められたが、他の方法が適用されてもよい。例えば、コンテンツデータのデータ量の値を帯域の値で除した値に比べて、信号伝達遅延の値が無視できる程度に小さい値である場合は、信号伝達遅延の値が用いられなくてもよい。また、キャッシュサーバ２によるストレージ装置２５からのデータ読出しに要する処理時間が更に考慮されてもよい。
【００５９】
（第２実施例の変形例）
第２実施例は、キャッシュサーバ２Ｂがコンテンツデータをコンテンツサーバ１から取得するのに要する時間は、キャッシュサーバ２Ａがコンテンツデータをコンテンツサーバ１から取得するのに要した時間と等しいことを前提としている。そしてこの前提の下、第１時間と第２時間の比較により、通知情報をキャッシュサーバ２Ｂに送信するか否か決定された。しかし、キャッシュサーバ２Ｂがコンテンツデータをコンテンツサーバ１から取得するのに要する時間が、キャッシュサーバ２Ａがコンテンツデータをコンテンツサーバ１から取得するのに要した時間と一致しない場合がある。以下、詳述する。
【００６０】
図９に開示されたように、複数のキャッシュサーバ２の各々は、Ｐ−ＧＷ９を経由してコンテンツサーバ１に接続される。そのため、コンンテンツサーバ１と各キャッシュサーバ２との間の通信経路のうち、コンテンツサーバ１とＰ−ＧＷ９との間の通信経路部分は、複数のキャッシュサーバ２間で共通である。一方、コンテンツサーバ１と各キャッシュサーバ２との間の通信経路のうち、Ｐ−ＧＷ９と各キャッシュサーバ２との間の通信経路部分は、各キャッシュサーバ２に個別である。そして、これらの通信経路部分の通信帯域や信号伝達遅延時間も、キャッシュサーバ２毎に相違する。そのため、コンテンツサーバ１からキャッシュサーバ２Ａへのコンテンツデータの送信時間と、コンテンツサーバ１からキャッシュサーバ２Ｂへのコンテンツデータの送信時間が相違する場合がある。第２実施例の変形例では、上述したコンテンツデータの送信時間の相違を考慮して、通知情報の送信を行うか否かが決定される。
【００６１】
第２実施例の変形例では、キャッシュサーバ２Ｂがコンテンツサーバ１からコンテンツデータを取得するのに要する時間（第３時間）が特定される。まずキャッシュサーバ２Ａは、コンテンツリクエストをコンテンツサーバ１へ送信する。このコンテンツリクエストはＰ−ＧＷ９を介してコンテンツサーバ１に送信される。このとき、Ｐ−ＧＷ９は、Ｐ−ＧＷ９がコンテンツリクエストをコンテンツサーバ１に送信した時刻（第３時刻）を記録する。更にＰ−ＧＷ９は、コンテンツサーバ１からＰ−ＧＷ９へのコンテンツデータの送信が完了した時刻（第４時刻）を記録する。そして記録された第３時刻と第４時刻の差分である第３時間を示す情報がキャッシュサーバ２Ａに通知される。またキャッシュサーバ２Ａは、コンテンツデータのデータ量を、Ｐ−ＧＷ９からキャッシュサーバ２Ｂへの通信の帯域で除した値に、Ｐ−ＧＷ９とキャッシュサーバ２Ｂとの間の通信における信号伝達遅延を加算し、更に、Ｐ−ＧＷ９から通知された第３時間を加算する。このようにして得られた値は、キャッシュサーバ２Ｂがコンテンツリクエストをコンテンツサーバ１に送信した場合に、キャッシュサーバ２Ｂがコンテンツサーバ１からコンテンツデータを取得するのに要する時間（第４時間）に相当する。そして第４時間よりも、コンテンツデータがキャッシュサーバ２Ａからキャッシュサーバ２Ｂへ送信されるのに要する時間（第２時間）が短い場合に、キャッシュサーバ２Ａは、通知情報をキャッシュサーバ２Ｂに送信する。
【００６２】
図１３は、第２実施例の変形例におけるリンク情報テーブル２１９の例を示す図である。リンク情報テーブル２１９は、図１１に示された内容に加え、Ｐ−ＧＷ９から他のキャッシュサーバ２への通信の帯域（第２帯域）を示す情報と、Ｐ−ＧＷ９と他のキャッシュサーバ２との間の通信における信号伝達遅延（第２信号伝達遅延）を示す情報とを含む。通信対象特定部２１６は、リンク情報テーブル２１９に登録された情報、及びＰ−ＧＷ９から通知された第３時間に関する情報に基づいて、通知情報の送信対象となるキャッシュサーバ２を特定する。これにより、第２実施例に比べて精度良く通知情報の送信対象を特定することができる。
【００６３】
尚、第１実施例、第２実施例及びその変形例においては、キャッシュ２Ａが通知情報を送信する例が開示されたが、同一のコンテンツに関してキャッシュサーバ２Ｃも通知情報を送信する場合が考えられる。そしてキャッシュサーバ２Ｂが、キャッシュサーバ２Ａと２Ｃの両方から同一のコンテンツについて通知情報を受信する場合がある。この場合、キャッシュサーバ２Ｂは、コンテンツリクエストをキャッシュサーバ２Ａ及び２Ｃのどちらに送信してもよい。もしくは、キャッシュサーバ２Ａと２Ｃのうち、コンテンツデータの受信に要する時間が短い方が選択されてもよい。この方法は、コンテンツデータがキャッシュサーバ２Ｂへ送信されるのに要する時間（第２時間）に関する情報を、キャッシュサーバ２Ａ及び２Ｃが、それぞれキャッシュサーバ２Ｂに通知しておくことによって実行可能である。そして第２時間に関する情報が、キャッシュサーバ２Ｂの例えばリンク情報テーブル２１９に格納され、キャッシュサーバ２Ｂはこの第２時間に基づいて、キャッシュサーバ２Ａ及び２Ｃの何れかを選択してコンテンツリクエストを送信する。
【００６４】
開示の実施例に基づき、更に以下の付記を開示する。
（付記１）
第１記憶装置を有する第１情報処理装置と、
第２情報処理装置と、を有し、
前記第１情報処理装置が、データの送信を要求する第１送信要求を受信し、
前記第１情報処理装置が、前記第１送信要求を第３情報処理装置に送信することにより、前記第３情報処理装置から前記データを受信して前記第１記憶装置に格納し、
前記第１情報処理装置が、前記第１情報処理装置の前記データの保持に関する情報を、前記第２情報処理装置に通知し、
前記第２情報処理装置が、前記データの送信を要求する第２送信要求を受信し、
前記第２情報処理装置が、前記情報に基づき、前記第２送信要求の宛先を前記第１情報処理装置に変更し、
前記第２情報処理装置が、前記宛先が変更された前記第２送信要求を前記第１情報処理装置に送信し、
前記第１情報処理装置が、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記第２情報処理装置へ送信する
ことを特徴とする情報処理システム。
（付記２）
前記第２情報処理装置は、前記情報が、前記第１情報処理装置が前記データを保持することを示さない場合は、前記第２送信要求を、前記第３情報処理装置へ通知する
ことを特徴とする付記１に記載の情報処理システム。
（付記３）
前記第１情報処理装置は、前記データのデータ量に基づいて、前記第１情報処理装置が前記データを保持することを示す前記情報を前記第２情報処理装置へ通知するか否かを決定する
ことを特徴とする付記１又は２に記載の情報処理システム。
（付記４）
前記第１情報処理装置は、前記第１送信要求が前記第１情報処理装置から前記第３情報処理装置へ送信されてから、前記第１情報処理装置が前記データの受信を完了するまでの第１時間と、前記第１情報処理装置から前記第２情報処理装置へ前記データを送信するのに要する第２時間を特定し、
前記第１情報処理装置は、前記第１時間よりも前記第２時間が短い場合に、前記第１情報処理装置が前記データを保持することを示す前記情報を前記第２情報処理装置へ通知する
ことを特徴とする付記１乃至３何れか一つに記載の情報処理システム。
（付記５）
前記第１情報処理装置は、前記データ量と、前記第１情報処理装置から前記第２情報処理装置への通信の第１帯域と基づいて、前記第２時間を特定する
ことを特徴とする付記４に記載の情報処理システム。
（付記６）
前記第１情報処理装置は、前記データの前記データ量を前記第１帯域で除した値と、前記第１情報処理装置と前記第２情報処理装置との間の通信の第１信号伝達遅延に基づき、前記第２時間を特定する
ことを特徴とする付記５に記載の情報処理システム。
（付記７）
前記第１情報処理装置と前記第３情報処理装置は、ゲートウェイを介して互いに接続され、
前記第２情報処理装置と前記第３情報処理装置は、前記ゲートウェイを介して互いに接続され、
前記ゲートウェイは、前記第１情報処理装置から受信した前記第１送信要求を前記第３情報処理装置へ送信し、
前記ゲートウェイは、前記第３情報処理装置から前記データを受信し、
前記ゲートウェイは、前記ゲートウェイが前記第１送信要求を前記第３情報処理装置へ送信した第１時刻と、前記ゲートウェイが前記データの受信を完了した第２時刻とを特定し、
前記第１情報処理装置は、前記第１時刻と前記第２時刻の差である第３時間と、前記データ量と、前記ゲートウェイから前記第２情報処理装置への通信の第２帯域と、前記ゲートウェイと前記第２情報処理装置との間の通信の第２信号伝達遅延に基づいて、前記第２送信要求が前記第２情報処理装置から前記第３情報処理装置へ送信された場合に前記第２情報処理装置が前記データの取得に要する第４時間を特定し、
前記第１情報処理装置は、前記第１情報処理装置から前記第２情報処理装置へ前記データを送信するのに要する第２時間を特定し、
前記第１情報処理装置は、前記第４時間よりも前記第２時間が短い場合に、前記第１情報処理装置が前記データを保持することを示す前記情報を前記第２情報処理装置へ通知する
ことを特徴とする付記３に記載の情報処理システム。
（付記８）
前記第２情報処理装置は、第２記憶装置を含み、
前記第２情報処理装置は、前記第３情報処理装置から前記データを受信した場合に、前記第２記憶装置に前記データを格納し、
前記第２情報処理装置は、前記第１情報処理装置から前記データを受信した場合に、前記第２記憶装置に前記データを格納しない
ことを特徴とする付記１乃至７何れか一つに記載の情報処理システム。
（付記９）
第１記憶装置を有する第１情報処理装置が、データの送信を要求する第１送信要求を受信する処理と、
前記第１情報処理装置が、前記第１送信要求を第３情報処理装置に送信する処理と、
前記第１情報処理装置が、前記第３情報処理装置から前記データを受信する処理と、
前記第１情報処理装置が、前記データを前記第１記憶装置に格納する処理と、
前記第１情報処理装置が、前記第１情報処理装置の前記データの保持に関する情報を、第２情報処理装置に通知する処理と、
前記第２情報処理装置が、前記データの送信を要求する第２送信要求を受信する処理と、
前記第２情報処理装置が、前記情報に基づき、前記第２送信要求の宛先を前記第１情報処理装置に変更する処理と、
前記第２情報処理装置が、前記宛先が変更された前記第２送信要求を前記第１情報処理装置に送信する処理と、
前記第１情報処理装置が、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記第２情報処理装置へ送信する処理と、
を含むことを特徴とするデータ送信方法。
（付記１０）
前記情報が、前記第１情報処理装置が前記データを保持することを示さない場合は、前記第２情報処理装置が前記第２送信要求を前記第３情報処理装置へ送信する処理
を更に含むことを特徴とする付記９に記載のデータ送信方法。
（付記１１）
前記第１情報処理装置が、前記データのデータ量に基づいて、前記第１情報処理装置が前記データを保持することを示す前記情報を前記第２情報処理装置へ通知するか否かを決定する処理
を更に含むことを特徴とする付記９又は１０に記載のデータ送信方法。
（付記１２）
前記第１情報処理装置が、前記第１送信要求が前記第１情報処理装置から前記第３情報処理装置へ送信されてから、前記第１情報処理装置が前記データの受信を完了するまでの第１時間と、前記第１情報処理装置から前記第２情報処理装置へ前記データを送信するのに要する第２時間を特定する処理と、
を更に有し、
前記第１情報処理装置は、前記第１時間よりも前記第２時間が短い場合に、前記第１情報処理装置が前記データを保持することを示す前記情報を前記第２情報処理装置へ通知する
ことを特徴とする付記９乃至１１何れか一つに記載のデータ送信方法。
（付記１３）
第２時間を特定する処理において、前記第１情報処理装置は、データ量と、前記第１情報処理装置から前記第２情報処理装置への通信の第１帯域と基づいて、前記第２時間を特定する
ことを特徴とする付記１２に記載のデータ送信方法。
（付記１４）
第２時間を特定する処理において、前記第１情報処理装置は、前記データ量を前記第１帯域で除した値と、前記第１情報処理装置と前記第２情報処理装置との間の通信の第１信号伝達遅延に基づき、前記第２時間を特定する
ことを特徴とする付記１３に記載のデータ送信方法。
（付記１５）
前記第１情報処理装置が前記第１送信要求を前記第３情報処理装置に送信する処理において、前記第１送信要求は、ゲートウェイを介して前記第１情報処理装置から前記第３情報処理装置へ送信され、
前記第１情報処理装置が前記第３情報処理装置から前記データを受信する処理において、前記データは、前記ゲートウェイを介して前記第３情報処理装置から前記第１情報処理装置へ送信され、
前記ゲートウェイが前記第１送信要求を前記第３情報処理装置へ送信した第１時刻と、前記ゲートウェイが前記第３情報処理装置から前記データを受信した第２時刻との差である第３時間を特定する処理と、
前記第１情報処理装置が、前記第３時間と、前記データ量と、前記ゲートウェイから前記第２情報処理装置への通信の第２帯域と、前記ゲートウェイと前記第２情報処理装置との間の通信の第２信号伝達遅延に基づいて、前記第２送信要求が前記第２情報処理装置から前記第３情報処理装置へ送信された場合に前記第２情報処理装置が前記データの取得に要する第４時間を特定する処理と、
前記第１情報処理装置が、前記第１情報処理装置から前記第２情報処理装置へ前記データを送信するのに要する第２時間を特定する処理と、
を更に有し、
前記第１情報処理装置は、前記第４時間よりも前記第２時間が短い場合に、前記第１情報処理装置が前記データを保持することを示す前記情報を前記第２情報処理装置へ送信する
ことを特徴とする付記１１に記載のデータ送信方法。
（付記１６）
第１記憶装置を有する情報処理装置であって、
データの送信を要求する第１送信要求を受信し、前記第１送信要求を他の第１情報処理装置に送信する要求送信部と、
前記他の第１情報処理装置から前記データを取得するデータ受信部と、
前記データを前記第１記憶装置に格納する制御部と、
前記情報処理装置の前記データの保持に関する情報を、他の第２情報処理装置に通知する通知部と、
前記他の第２情報処理装置が前記データの送信を要求する第２送信要求を受信し、前記他の第２情報処理装置が前記情報に基づき、前記第２送信要求の宛先を前記情報処理装置に変更し、前記宛先が変更された前記第２送信要求を前記情報処理装置に送信した場合に、前記第２送信要求に基づき、前記第１記憶装置に格納されている前記データを前記他の第２情報処理装置へ送信するデータ送信部と
を含むことを特徴とする情報処理装置。
（付記１７）
前記他の第２情報処理装置は、前記情報が、前記情報処理装置が前記データを保持することを示さない場合は、前記第２送信要求を、前記他の第１情報処理装置へ送信する
ことを特徴とする付記１６に記載の情報処理装置。
（付記１８）
前記データのデータ量に基づいて、前記情報処理装置が前記データを保持することを示す前記情報を前記他の第１情報処理装置へ通知するか否かを決定する特定部
を更に含むことを特徴とする付記１６又は１７に記載の情報処理装置。
（付記１９）
前記特定部は、前記第１送信要求が前記情報処理装置から前記他の第１情報処理装置へ送信されてから、前記情報処理装置が前記データの受信を完了するまでの第１時間と、前記情報処理装置から前記他の第２情報処理装置へ前記データを送信するのに要する第２時間を特定し、
前記通知部は、前記第１時間よりも前記第２時間が短い場合に、前記情報処理装置が前記データを保持することを示す前記情報を前記他の第２情報処理装置へ通知する
ことを特徴とする付記１８に記載の情報処理装置。
（付記２０）
前記情報処理装置と前記他の第１情報処理装置は、ゲートウェイを介して互いに接続され、
前記他の第２情報処理装置と前記他の第１情報処理装置は、前記ゲートウェイを介して互いに接続され、
前記ゲートウェイは、前記情報処理装置から受信した前記第１送信要求を前記他の第１情報処理装置へ送信し、
前記ゲートウェイは、前記他の第１情報処理装置から前記データを受信し、
前記ゲートウェイは、前記ゲートウェイが前記第１送信要求を前記他の第１情報処理装置へ送信した第１時刻と、前記ゲートウェイが前記他の第１情報処理装置から前記データを受信した第２時刻を特定し、
前記特定部は、前記第１時刻と前記第２時刻の差である第３時間と、前記データ量と、前記ゲートウェイから前記他の第２情報処理装置への通信の第２帯域と、前記ゲートウェイと前記他の第２情報処理装置との間の通信の第２信号伝達遅延に基づいて、前記第２送信要求が前記他の第２情報処理装置から前記他の第１情報処理装置へ送信された場合に前記他の第２情報処理装置が前記データの取得に要する第４時間を特定し、
前記特定部は、前記情報処理装置から前記他の第１情報処理装置へ前記データを送信するのに要する第２時間を特定し、
前記通知部は、前記第４時間よりも前記第２時間が短い場合に、前記情報処理装置が前記データを保持することを示す前記情報を前記他の第２情報処理装置へ通知する
ことを特徴とする付記１８に記載の情報処理装置。
【符号の説明】
【００６５】
１  コンテンツサーバ
２、２Ａ、２Ｂ、２Ｃ  キャッシュサーバ
３、３Ａ、３Ｂ、３Ｃ  基地局
４、４Ａ、４Ｂ、４Ｃ  端末装置
５  ネットワーク
６  インターネット
７  モバイルネットワーク
９  Ｐ−ＧＷ
１１、２１、３１、４１  プロセッサ
１２、２２、３２、４２  不揮発性メモリ
１３、２３、３３、４３  揮発性メモリ
１４、２４、３４  ネットワークインターフェース装置
１５、２５  ストレージ装置
３６、４６  無線通信装置
２１１  判定部
２１２  リクエスト送受信部
２１３  ストレージ制御部
２１４  コンテンツデータ送受信部
２１５  通知部
２１６  送信対象特定部
２１７  格納コンテンツ情報テーブル
２１８  通知情報テーブル
２１９  リンク情報テーブル
【図１】
2018101184.tif 000003
【図２】
2018101184.tif 000004
【図３】
2018101184.tif 000005
【図４】
2018101184.tif 000006
【図５】
2018101184.tif 000007
【図６】
2018101184.tif 000008
【図７】
2018101184.tif 000009
【図８】
2018101184.tif 000010
【図９】
2018101184.tif 000011
【図１０】
2018101184.tif 000012
【図１１】
2018101184.tif 000013
【図１２】
2018101184.tif 000014
【図１３】
2018101184.tif 000015