説明

キャッシュサーバ解決方法、装置、及びシステム

【課題】 エンドユーザ近傍のキャッシュサーバを解決し、エンドユーザを近傍キャッシュサーバに誘導することを可能とする。
【解決手段】 エンドユーザの情報処理端末1061〜1063の端末IPへの経路上の、一つ以上のルータ1051〜1059を取得し、そのうちの端末IPに最も近いルータに近いキャッシュサーバ1021、1031、または1041を、データベースとして保持したリストから探索して決定し、もし最も近いルータに近いキャッシュサーバが見つからなければ、その次に近いルータ、更にはその次に近いルータと、探索ルータを再帰的に変更して探索し、見つからなければデータセンタ1011が対応する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はネットワーク上のキャッシュサーバに関する。
【背景技術】
【0002】
ネットワークを介して遠方のコンテンツサーバから大量のデータを返すと、ネットワーク使用量とエンドユーザが感じる遅延の両面に問題が生じる。そのため、エンドユーザ近傍にキャッシュサーバを置きそこからデータを返すキャッシュシステムが用いられる。このようなシステムでは1) エンドユーザ近傍のキャッシュサーバを発見する技術と2) エンドユーザをキャッシュサーバに誘導する技術が用いられる。
【0003】
このようなシステムの一つに特許文献1がある。該システムではキャッシュシステムからエンドユーザにキャッシュサーバのリストを渡す。その後、エンドユーザの近傍キャッシュサーバ探索プログラムがリスト内のキャッシュサーバにpingを打って距離 (ここではネットワーク遅延を距離とする) を測り、最も近いものを選ぶことで上記1)、2)を解決する。該システムでは、エンドユーザが、専用の距離測定プログラムを持つこと必要になる。
【0004】
既存のエンドユーザがそのまま流用可能な従来システムの代表は特許文献2及びそのファミリである。特許文献2はインターネットにつながる全エンドユーザを対象に、契約コンテンツプロバイダのデータを、エンドユーザ近傍の自社キャッシュサーバから返す超大規模システムである。そのため、近傍の自社キャッシュサーバの探索を実時間で処理できるように準最近傍キャッシュサーバを返す手法を用いている。具体的には特許文献2に書かれているように、1) についてインターネットプロバイダの主要DNSサーバごとに最近傍キャッシュサーバを割り当てたマップと、BGP (Border Gateway Protocol、ルータ間の経路制御メッセージ) を用いてインターネットをIP(Internet Protocol)アドレスゾーンに分割したマップを作り、これらを組み合わせてIPアドレスゾーンごとの準最近傍キャッシュサーバ割当マップを作る。また、2) についてDNS(Domain Name System)書き換え技術を用い、エンドユーザが用いる インターネットプロバイダのDNSサーバXの再帰問い合わせ先を該システムのDNSサーバとし、該システムのDNSサーバはDNSサーバXのアドレスを用いて1) のマップから最適なキャッシュサーバを返す。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許公報番号6606643,“Method of automatically selecting a mirror server for web−based client−host interaction”
【特許文献2】米国特許公報番号2002/0129134,“Global load balancing across mirrored data centers”
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に記載のシステムではエンドユーザが専用の距離測定プログラムを動かす必要があり、不特定多数のエンドユーザを扱うようなB2C(Business to Consumer)サービスには適用できない。
【0007】
特許文献2に記載の仕組みではDNSサーバごとにしか最適化できないため、エンドユーザが使うDNSサーバがエンドユーザの近くにある必要がある。しかし、エンドユーザが使うDNSサーバは必ずしも近くにある保証はないという問題がある。また、今日のDNSサーバは1台あたり毎秒数十万クエリの性能を有するため、少なくとも1台あたり数万ユーザを受け持っていると見積もれる。一方でVOD (Video On−Demand) など要求性能の高いサービスはサーバ1台あたり数千ユーザを受け持つため、DNSサーバごとにキャッシュサーバの割当てを決めると粒度が粗い。結果としてロードバランサを置き複数のキャッシュサーバを束ねるなど、余計なコストが発生するという問題がある。
【0008】
上記問題のため、従来手法では不特定多数のエンドユーザを扱うようなB2Cサービスにおいてエンドユーザ近傍のキャッシュサーバを解決する技術に課題がある。
【0009】
本発明の目的は、上記の課題を解決し、エンドユーザ近傍のキャッシュサーバを解決し、エンドユーザを近傍キャッシュサーバに誘導することが可能なキャッシュサーバ解決方法、装置、及びシステムを提供することにある。
【課題を解決するための手段】
【0010】
上記の目的を達成するため、本発明においては、複数のキャッシュサーバの中から、端末にネットワーク上の距離の近いキャッシュサーバを通知する装置のキャッシュサーバ解決方法であって、装置は、ネットワーク上の複数の中継装置と、複数のキャッシュサーバそれぞれとのネットワーク上の距離を測定し、複数の中継装置各々に距離の近いキャッシュサーバを決定した結果を保持し、端末へのネットワーク上の経路上の中継装置を調査し、保持された端末に最も近い中継装置に近いキャッシュサーバを取得し、端末に最も近い中継装置に近いキャッシュサーバが保持されていない場合は、端末から次に近い中継装置に近い前記キャッシュサーバを探索して取得することを繰返すキャッシュサーバ解決方法を提供する。
【0011】
また、上記の目的を達成するため、本発明においては、処理部と記憶部とを備え、複数のキャッシュサーバの中から、端末にネットワーク上の距離の近いキャッシュサーバを通知する解決装置であって、記憶部に、ネットワーク上の複数の中継装置と、複数のキャッシュサーバそれぞれとのネットワーク上の距離を測定し、複数の中継装置各々に距離の近いキャッシュサーバを決定した結果を保持し、処理部は、端末を識別する識別子を入力し、端末へのネットワーク上の経路上の中継装置を調査し、記憶部に記憶された端末に最も近い中継装置に近いキャッシュサーバを取得し、端末に最も近い中継装置に近いキャッシュサーバが記憶部に保持されていない場合は、端末から次に近い中継装置に近いキャッシュサーバを探索して取得することを再帰的に繰返す解決装置を提供する。
【0012】
更に、上記の目的を達成するため、本発明においては、端末と、複数のキャッシュサーバと、端末にネットワーク上の距離の近いキャッシュサーバを通知する解決装置とを備えるキャッシュサーバシステムであって、解決装置は、ネットワーク上の複数の中継装置と、複数のキャッシュサーバそれぞれとのネットワーク上の距離を測定し、複数の中継装置各々に距離の近いキャッシュサーバを決定した結果を保持し、端末を識別する識別子を入力し、ネットワーク上の経路上の中継装置を調査し、保持した端末に最も近い中継装置に近いキャッシュサーバを取得し、端末に最も近い中継装置に近いキャッシュサーバが保持されていない場合は、端末から次に近い中継装置に近いキャッシュサーバを探索して取得することを順次繰返し、取得した前記キャッシュサーバを出力するキャッシュサーバシステムを提供する。
【発明の効果】
【0013】
不特定多数のエンドユーザに対して、エンドユーザ近傍のキャッシュサーバを解決できるようになる。
【図面の簡単な説明】
【0014】
【図1】実施例1のキャッシュサーバ解決システムの全体図である。
【図2】実施例1に係る、traceroute結果からルータ配列を作る例を示す図である。
【図3】実施例1に係る、ping結果から距離を求める例を示す図である。
【図4】実施例1に係る、リゾルブ マネージャ(Resolve Manager)とリゾルブ エージェント(Resolve Agent)の一構成を示す図である。
【図5】実施例1に係る、初期近傍キャッシュ表構築処理のシーケンス図である。
【図6】実施例1に係る、Resolve Managerの初期近傍キャッシュ表構築処理フローの一例を示す図である。
【図7】実施例1に係る、Resolve Agentの経路調査処理フローを示す図である。
【図8】実施例1に係る、Resolve Agentの距離測定処理フローの一例を示す図である。
【図9】実施例1に係る、リゾルブ処理のシーケンスの一例を示す図である。
【図10】実施例1に係る、リゾルブ処理で最近傍キャッシュが見つからなかった場合のシーケンスの一例を示す図である。
【図11】実施例1に係る、Resolve Managerの近傍キャッシュ探索処理フローの一例を示す図である。
【図12】実施例1に係る、キャッシュ追加処理のシーケンスの一例を示す図である。
【図13】実施例1に係る、キャッシュ削除処理のシーケンスを示す図である。
【図14】実施例1に係る、Resolve Managerのキャッシュ追加処理フローを示す図である。
【図15】実施例1に係る、Resolve Managerのキャッシュ削除処理フローを示す図である。
【図16】実施例1に係る、Resolve Managerの全体フローの一例を示す図である。
【図17】実施例1に係る、Resolve Agentの全体フローの一例を示す図である。
【図18】実施例2に係る、キャッシュサーバ解決システムの全体図である。
【図19】実施例2に係る、Resolve ManagerとHTTP Data (Origin) の構成を示す図である。
【図20】実施例2に係る、リゾルブ処理のシーケンスの一例を示す図である。
【図21】実施例2に係る、Resolve Managerのリゾルブ処理フローを示す図である。
【発明を実施するための形態】
【0015】
以下、本発明の種々の実施例を図面に従い説明する。
【実施例1】
【0016】
第一の実施例として、エンドユーザ近傍キャッシュサーバ解決システムを用いたVODシステムについて説明する。
【0017】
図1に本実施例のVODシステムの全体構成の一例を示す。
データセンタ(Data Center:DC)1011にはResolve Manager1012とVOD Portal1013、VOD DRM(Digital Rights Management)1014、VOD Data(Origin)1015がある。Resolve Manager1012は本実施例のエンドユーザ近傍キャッシュサーバ解決システムのメインコンポーネントである。VOD Portal 1013、VOD DRM1014、VOD Data(Origin)1015はそれぞれ、VODシステムのコンポーネントである。VOD Portal 1013は番組表の表示などコンテンツ視聴の前にユーザが利用するポータルサイトを表示するコンポーネントである。VOD DRM1014は暗号化されたコンテンツを復号するための鍵を配信するコンポーネントである。VOD Data(Origin)1015は実際にコンテンツを配信するコンポーネントである。
【0018】
DC1011からネットワーク上の距離が離れた所にキャッシュサーバ1021、1031、1041を置く。キャッシュサーバ1021、1031、1041にはResolve Agent1022、1032、1042とVOD Data(Cache)1023、1033、1043がある。Resolve Agent1022、1032、1042は本実施例のエンドユーザ近傍キャッシュサーバ解決システムのコンポーネントであり、Resolve Manager1012と連携して動作する。VOD Data(Cache)1023、1033、1043はVOD Data(Origin)1015と同等の機能およびコンテンツを持ち、実際にコンテンツを配信するコンポーネントである。
【0019】
なお、本実施例ではネットワーク上の距離を測る指針としてRTT(Round Trip Time、往復遅延時間)を用いる。インターネットプロトコルの下では、RTTはICMP(Internet Control Message Protocol)で計測できる。また、他のプロトコルであってもRTTを計測する手段があれば本実施例を適用可能である。
【0020】
DC1011とキャッシュサーバ1021、1031、1041はネットワークで結ばれる。本実施例ではインターネットを想定している。インターネットプロトコル(IP)の下では、ネットワークは複数の中継装置であるルータ1051〜1058によって構成される。なお、イントラネットやその他閉域網(Closed IP Network)であってもインターネットプロトコル(IP)のネットワークであれば本実施例と同様のキャッシュシステムを構成できる。また、他のプロトコルのネットワークであっても、ルータに準ずる中継装置を用いるネットワークであれば本実施例と同様のキャッシュシステムを構成できる。
【0021】
DC1011およびキャッシュサーバ1021、1031、1041とネットワークで結ばれた先に例えばテレビ(TV)、パーソナルコンピュータ(PC)などの情報処理端末1061、1062、1063がある。この情報処理端末1061,1062,1063は、本VODシステムの視聴用クライアントが入っている。なお、VODシステムに関する本実施例においては、視聴用クライアントが動作すれば、情報処理端末1061、1062、1063は、TV、PCやスマートフォンなどハードウエアは問わない。便宜上、図面上では”TV”表示とする場合があるが、限定されるものではない。
【0022】
図4に図1のResolve Manager1012とResolve Agent1022、1032、1042の詳細構成の一例を示す。
【0023】
図4上段に示されたResolve Manager1012は、コンピュータ構成を備え、処理部である中央処理部(Central Processing Unit:CPU)4011、記憶部である主記憶4012と二次記憶4013を含む。主記憶4012の上にはマネージャモジュール4021と近傍キャッシュ表4022とキャッシュサーバ一覧表4023がある。マネージャモジュール4021は、Resolve Managerをコントロールするプログラムの実行時イメージである。マネージャモジュール4012の動作の詳細は図16等を用いて後述する。近傍キャッシュ表4022はネットワーク上のルータごとの最近傍キャッシュサーバと2番目に近いキャッシュサーバを保持する表である。
【0024】
図4の中段に示した近傍キャッシュ表4022はネットワーク上のルータを識別するルータIPアドレス列4041、アクセス頻度を表すCounter列4042、最近傍キャッシュを保持するキャッシュサーバ1列4043とそのルータからの距離を表す距離1列4044、さらに最近傍キャッシュサーバがメンテナンスなどで一次停止中である場合を表す停止フラグ4045、同じく2番目に近いキャッシュサーバに関する3列4046、4047、4048がある。なお、近傍キャッシュ表4022の主キーはルータIPアドレス列4041であり、ルータIPアドレス列を用いて特定の1行を限定する事ができる。
【0025】
また、図4中段のキャッシュサーバ一覧表4023はネットワーク上の使用可能なキャッシュサーバの一覧である。キャッシュサーバ一覧表4023には通し番号であるID列4051と、キャッシュサーバを識別するキャッシュサーバIPアドレス列4052と、Resolve Agentを識別するResolve Agent IPアドレス列4053がある。なお、キャッシュサーバ一覧表4023にはID=0番にオリジナルサーバであるVOD Data(Origin)1015のエントリも含む。VOD Data(Origin)には対応するResolve Agentがないため、Resolve Agent IPアドレス列4053は空欄とする。また、キャッシュサーバ一覧表4023の主キーはID列4051であり、ID列を用いて特定の1行を限定する事ができる。また、キャッシュサーバIPアドレス列4052とResolve Agent IPアドレス列4053もユニーク列であり、それぞれの値を用いて特定の1行を限定する事ができる。二次記憶4013にはマネージャモジュールプログラム4031が含まれる。Resolve Manager動作時にはマネージャモジュールプログラム4031を主記憶4012上に展開し、マネージャモジュール4021として実行する。
【0026】
図4下段のResolve Agent1022は、コンピュータ構成を備え、処理部であるCPU4061、記憶部である主記憶4062と二次記憶4063を含む。主記憶4062にはエージェントモジュール4071がある。エージェントモジュール4071はResolve Agentをコントロールするプログラムの実行時イメージである。エージェントモジュールの動作の詳細は図17等を用いて後述する。二次記憶4063にはエージェントモジュールプログラム4081が含まれる。Resolve Agent動作時にはエージェントモジュールプログラム4081を主記憶4062上に展開し、エージェントモジュール4071として実行する。
【0027】
続いて、エンドユーザ近傍キャッシュサーバ解決システムを用いた本実施例のVODシステムの動作詳細を示す。具体的にはシステム開始時の初期近傍キャッシュ表構築処理と、定常状態時の動作である情報処理端末がコンテンツを視聴する際の処理、システムに新たなキャッシュサーバを追加する際の処理と削除する際の処理である。
【0028】
図5にシステム開始時の初期近傍キャッシュ表構築処理のシーケンスを示す。本処理はResolve Manager1012とResolve Agent1022、1032、1042の間で執り行われる。
まずResolve Manager1012が全Resolve Agent1022、1032、1042に対し、Resolve Manager1012および全Resolve Agent1022、1032、1042との間の経路調査指示5001を出す。この結果、Resolve Manager1012−Resolve Agent1022間、Resolve Manager1012−Resolve Agent1032間、Resolve Manager1012−Resolve Agent1042間、Resolve Agent1022−Resolve Agent1032間、Resolve Agent1022−Resolve Agent1042間、Resolve Agent1032−Resolve Agent1042間の計6本の経路上のルータが明らかになる。
【0029】
続いてこれらのルータを重複排除などして1つのリストにする(5002)。続いてリストの先頭のルータを取りだしルータAとし(5003)、全Resolve Agent1022、1032、1042にルータAとの距離測定指示5004を出す。その結果を集計し、距離の近い上位2件のルータを近傍キャッシュ表4022に追加する。なお、ここではカウンター列4042の値は0、停止フラグ1(4045)および2(4048)はオフとする。以後、リストの終端まで処理を繰り返し(5006、5007、...)、初期近傍キャッシュ表を構築する。以下、本処理に関わる各モジュールの処理フローを説明する。
【0030】
図6にシステム開始時の初期近傍キャッシュ表構築処理のうち、Resolve Manager1012の処理部分のフローチャートを示す。Resolve Manager1012は初期近傍キャッシュ表構築処理開始(6001)後、全Resolve Agent1022、1032、1042に経路調査指示を出す。詳細には、以下の疑似コードで示す手順で、全Resolve Agent1022、1032、1042に指示を出す。
【0031】
n = rows_of(キャッシュサーバ一覧表)
for a in {1, 2, …, n - 1}
for b in {0, 1, …, n - 1}
if b < a
router_array.add(ResolveAgent${a}.経路調査
(ResolveAgent${b}))
fi
done
done
続いて全Resolve Agent1022、1032、1042からの経路調査の結果をルータの配列として受け取り、重複排除したルータの配列を作る(6003)。続いてルータ配列の先頭を変数ルータAにコピー(6004)し、ルータ配列の先頭要素を削除(6005)し、全Resolve Agent1022、1032、1042にルータAとの間の距離測定指示を出す(6006)。続いて全Resolve Agent1022、1032、1042からの距離調査の結果を受け取り、距離の近い上位2件を選び、近傍キャッシュ表にレコード登録(6007)する。ここではCount列4042の値は0、二つの停止フラグ4045、4048の値はオフとする。続いてルータ配列に続きがあるか否か判断(6008)し、続きがあれば手順6004に戻る。続きがなければ処理を終える(6009)。
【0032】
図7にシステム開始時の初期近傍キャッシュ表構築処理のうち、Resolve Agent1022、1032、1042の経路調査処理部分のフローチャートを示す。Resolve Agent1022、1032、1042はルータXとの経路調査処理開始(7001)後、ルータXにtracerouteを発行(7002)して経路を測定し、その結果をResolve Manager1012に返し(7003)、処理を終了(7004)する。
【0033】
図2に、手順7003の具体例を示す。図2ではaaa.example.com [a1.a2.a3.a4]からzzz.example.com [z1.z2.z3.z4]にtracerouteを発行した例である。tracerouteの結果、4つのルータを経由してzzz.example.comに到着する事が判る。この結果から、ルータ配列として、[b1.b2.b3.b4][c1.c2.c3.c4][d1.d2.d3.d4][e1.e2.e3.e4]が得られる。
【0034】
なお、ここでは経路を取得する手段として広く用いられているtracerouteプログラムを用いたが、同様の機能を持った別のプログラムを用いてもいい。
【0035】
図8にシステム開始時の初期近傍キャッシュ表構築処理のうち、Resolve Agent1022、1032、1042の距離測定処理部分のフローチャートを示す。Resolve Agent1022、1032、1042はルータXとの距離測定処理開始(8001)後、ルータXにpingを発行(8002)して経路を測定し、その結果をResolve Manager1012に返し(8003)、処理を終了(8004)する。
【0036】
図3に、手順8003の具体例を示す。図3ではaaa.example.com [a1.a2.a3.a4]からzzz.example.com [z1.z2.z3.z4]にpingを発行した例である。pingの結果、RTTの4回平均が11msであることが判る。この結果から、距離として11msが得られる。なお、ここでは距離を測定する手段として広く用いられているpingプログラムを用いたが、同様の機能を持った別のプログラムを用いてもいい。
【0037】
なお、ここではキャッシュサーバ間の経路上のルータを発見し登録したが、他にも既知のルータを手動登録することが考えられる。特にIX(Internet Exchange)など複数のコネクションを集約する個所にあるルータを登録しておく事が考えられる。ここまでの処理で、システム開始時に初期近傍キャッシュ表が構築できる。
【0038】
続いて図9に定常状態時の動作である情報処理端末がコンテンツを視聴する際の処理シーケンスを示す。本処理では、まず情報処理端末1061がVOD Portal1013に接続し番組表などを閲覧(9001)する。その裏で、VOD Portal1013はResolve Manager1012から近傍キャッシュアドレスを取得する。ここではResolve Manager1012が情報処理端末106)にtracerouteし、情報処理端末1061の近傍ルータを調査(9003)し、近傍キャッシュ表を用いて近傍キャッシュサーバのアドレスを返す。その後、情報処理端末1061が視聴する番組を決めた際に番組のメタデータ要求(9004)がある。VOD Portal1013は番組のメタデータとして、コンテンツのURL(Uniform Resource Locator)とコンテンツに対するDRMキーのURLを返す。このとき、コンテンツのURLとして手順9002で取得した近傍キャッシュサーバ内のURLを返す。その後、番組のメタデータを受けた情報処理端末1061が適当なキャッシュにコンテンツを要求(9005)し、またVOD DRM1014にDRMキーを要求する。
【0039】
なお、手順9002において、常に情報処理端末1061近傍のキャッシュサーバを返す事ができるわけではない。そのため、手順9002において情報処理端末1061近傍のキャッシュサーバを返す事が出来なかった場合は、図10に示す処理シーケンスに基づき代替キャッシュサーバを返し、さらに情報処理端末1061の近傍キャッシュを探索しておく。本処理では、まず情報処理端末1061がVOD Portal1013に接続し番組表などを閲覧(9001)する。その裏で、VOD Portal1013はResolve Manager1012から近傍キャッシュアドレスを取得する。ここではResolve Manager1012が情報処理端末1061にtracerouteし、情報処理端末1061の近傍ルータを調査(9003)し、近傍キャッシュ表を用いて近傍キャッシュサーバを探索するが見つからず、2番目に近いルータの最近傍キャッシュサーバを返す(10001)。その後、情報処理端末1061が番組のメタデータ要求(9004)し、適当なキャッシュにコンテンツを要求(9005)し、またVOD DRM1014にDRMキーを要求するのだが、その裏でResolve Manager1012は全Resolve Agent1022、1032、1042に情報処理端末1061最近傍のルータとの距離測定指示(10002)を出し、近傍キャッシュサーバを決定してレコードを作成(10003)する。この処理の結果、情報処理端末1061が再び番組を見る時や、他の近くにある情報処理端末1062、1063が番組を見るときに、最近傍のキャッシュサーバを使えるようになる。
【0040】
以下、本処理に関わる各モジュールの処理フローを説明する。
図11に定常状態時の動作である情報処理端末がコンテンツを視聴する際の処理のうち、Resolve Manager1012の処理部分のフローチャートを示す。Resolve Manager1012は情報処理端末の近傍キャッシュ探索処理開始(11001)後、情報処理端末1061にtracerouteしルータ配列を取得(11002)する。続いて変数ルータAにルータ配列の末尾をコピー(11003)する。ルータ配列の末尾とは、すなわち情報処理端末1061に最も近いルータである。
【0041】
続いて近傍キャッシュ表からルータAのレコードを探索(11004)し、見つかったか否か判断(11005)する。見つかった場合は同レコード内の停止フラグ1がオフか否か判断(11006)する。オフであった場合、すなわちキャッシュサーバ1が稼働中である場合はキャッシュサーバ1のURLを返す(11007)。停止フラグ1がオンであった場合は、続いて停止フラグ2の判断(11008)を行う。停止フラグ2がオフであればキャッシュサーバ2のURLを返す(11009)。停止フラグ2もオンであれば、判断11005で見つからなかった場合と同じく、ルータ配列に続きがあるか否か判断(11010)し、続きがあればルータAを本処理内で用いる一時領域である探索配列に追加(11012)し、ルータ配列の末尾を削除(11013)し、手順11003に戻る。判断11010でルータ配列に続きがない場合はVOD Data(Origin)1015のURLを返す(11010)。ここまでの処理で、現時点で最善のキャッシュサーバ(オリジンサーバを含む)をVOD Portal1013に返す事ができる。続いて図10で説明した最近傍ルータの近傍キャッシュサーバ探索処理を行う。まず一時領域である探索配列に要素があるか否か判断(11014)し、要素がない場合はそのまま処理を終了(11019)する。要素があった場合は変数ルータAに探索配列の先頭をコピー(11015)し、探索配列の先頭を削除(11016)し、全Resolve Agent1022、1032、1042にルータAとの距離測定指示(11017)を出す。続いて全Resolve Agent1022、1032、1042からの距離調査の結果を受け取り、距離の近い上位2件を選び、近傍キャッシュ表にレコード登録(11018)し、手順11014に戻る。
【0042】
なお、ルータによってはICMPメッセージを返さず、どの経路を通ったか特定できない場合がある。その場合には、そのようなルータはルータ配列から除いて上記処理を実行する。また、経路上のすべてのルータがICMPメッセージを返さなかった場合は、情報処理端末に最も近いキャッシュサーバを探索し、返す。
【0043】
ここまでの処理で、定常状態時の動作である情報処理端末がコンテンツを視聴する際の近傍キャッシュサーバを解決できる。
【0044】
続いて図12にシステムに新たなキャッシュサーバを追加する際の処理、同じく図13システムからキャッシュサーバを削除する際の処理シーケンスを示す。
【0045】
システムに新たなキャッシュサーバを追加する際の処理はResolve Manager1012と新たに追加されるキャッシュサーバ12001のResolve Agent12002の間で執り行われる。まずResolve Agent12002がResolve Manager1012に対しキャッシュ追加処理指示(12004)を出す。続いてResolve Manager1012はキャッシュサーバ一覧表4023にキャッシュサーバ12001に関するレコードを追加(12005)する。続いて近傍キャッシュ表4022の1行目のルータを取りだしルータAとし(12006)、Resolve Agent12002にルータAとの距離測定指示(12007)を出し、ここではその結果が近傍キャッシュ表4022のレコード中の距離よりも近いためレコードを更新する(12008)。続いて近傍キャッシュ表4022の2行目のルータを取りだしルータAとし(12009)、Resolve Agent12002にルータAとの距離測定指示(12010)を出し、ここではその結果が近傍キャッシュ表4022のレコード中の距離よりも遠いためレコードを更新しない。以後、近傍キャッシュ表4022の3行目(12011)から近傍キャッシュ表の最後まで同じ処理を続ける。
【0046】
一方でシステムからキャッシュサーバを削除する際の処理はResolve Manager1012と全てのResolve Agent1022、1032、1042、12002の間で執り行われる。まずこれから削除されるキャッシュサーバ12001のResolve Agent12002がResolve Manager1012に対しキャッシュ削除処理指示(13001)を出す。続いてResolve Manager1012はキャッシュサーバ一覧表4023からこれから削除されるキャッシュサーバ12001に関するレコードを削除(13002)する。続いて近傍キャッシュ表4022のうちこれから削除されるキャッシュサーバ12001に関する複数の行のうちの1行目のルータを取りだしルータAとし(13003)、これから削除されるキャッシュサーバ12001のResolve Agent1022、1032、1042にルータAとの距離測定指示(13004)を出し、その結果を用いてレコードを更新する(12008)。以後、同じ処理をこれから削除されるキャッシュサーバ12001に関する複数の行のうちの2行目(13006〜13008)、3行目(13009)から近傍キャッシュ表の最後まで同じ処理を続ける。
【0047】
図14にシステムに新たなキャッシュサーバを追加する際の処理のうち、Resolve Manager1012の処理部分のフローチャートを示す。Resolve Manager1012はキャッシュサーバCの追加処理開始(14001)後、まずキャッシュサーバ一覧表4023にキャッシュサーバCに関するレコードを追加(14002)する。続いて近傍キャッシュ表4022から全レコードのルータIPアドレス列4041を取りだしルータ配列を作る(14003)。続いて変数ルータAにルータ配列の先頭をコピー(14004)し、ルータ配列の先頭を削除(14005)し、キャッシュサーバCのResolve AgentにルータAとの距離測定指示(14006)を出し、結果を受け取る。その距離と近傍キャッシュ表4022のルータAに関する行のうちキャッシュサーバ1よりも近いか否か判断(14007)し、近い場合は近傍キャッシュ表4022のルータAに関する行のキャッシュサーバ2および距離2を現在のキャッシュサーバ1および距離1の値で更新(14008)し、続いて近傍キャッシュ表4022のルータAに関する行のキャッシュサーバ1および距離1をキャッシュサーバCのIPアドレスと距離で更新する(14009)。判断14007において遠い場合は続いてキャッシュサーバCとルータAの距離と近傍キャッシュ表4022のルータAに関する行のうちキャッシュサーバ2よりも近いか否か判断(14010)し、近い場合は近傍キャッシュ表4022のルータAに関する行のキャッシュサーバ2および距離2をキャッシュサーバ1および距離1をキャッシュサーバCのIPアドレスと距離で更新する(14011)。続いてルータ配列に続きがあるか否か判断(14012)し、あれば手順14004に戻り、なければ処理を終える(14013)。
【0048】
図15にシステムからキャッシュサーバを削除する際の処理のうち、Resolve Manager1012の処理部分のフローチャートを示す。Resolve Manager1012はキャッシュサーバCの削除処理開始(15001)後、まずキャッシュサーバ一覧表4023からキャッシュサーバCに関するレコードを削除(15002)する。続いて近傍キャッシュ表4022からキャッシュCを含む全レコードのルータIPアドレス列4041を取りだしルータ配列を作る(15003)。続いて変数ルータAにルータ配列の先頭をコピー(15004)し、ルータ配列の先頭を削除(15005)し、キャッシュサーバC以外の全Resolve Agent1022、1032、1042にルータAとの距離測定指示(15006)を出し、結果を受け取る。その結果から距離の近い上位2件を選び、近傍キャッシュ表4022のルータAに関するレコードを更新(15007)する。続いてルータ配列に続きがあるか判断(15008)し、あれば手順15004に戻り、なければ処理を終了(15009)する。
ここまでの処理で、システムに新たなキャッシュサーバを追加および削除できる。
【0049】
最後に、これまでに説明した個々の処理手順を統合して、Resolve Managerの動作を図16に、またResolve Agentの動作を図17に示す。
Resolve Managerは起動(16001)後、キャッシュサーバ一覧表にキャッシュサーバを登録(16002)する。これは初期値として与えるキャッシュサーバの一覧であり、ここでは人手で入力する。他にも設定ファイルに書いたりResolve Agentのキャッシュ追加処理指示を受けたりといった方法が考えられる。続いてマネージャモジュールを起動(16003)し、図6の初期近傍キャッシュ表構築処理を実行(16004)する。これ以降は処理依頼を待ちうける。近傍キャッシュの問い合わせがあった場合は(16005)、図11の情報処理端末の近傍キャッシュ探索処理を実行(16006)する。また、キャッシュサーバ追加処理依頼があった場合は(16007)、図14のキャッシュCの追加処理を実行(16008)する。また、キャッシュサーバ削除処理依頼があった場合は(16009)、図15のキャッシュCの削除処理を実行(16010)する。またキャッシュサーバのメンテナンス報告があった場合は(16011)、それがメンテナンス中報告であれば近傍キャッシュ表(4022)のうち、報告のあったキャッシュサーバのIPアドレスをキャッシュサーバ1列(4043)に含む行は停止フラグ1(4045)を、キャッシュサーバ2列(4046)に含む行は停止フラグ2(4048)をオンに操作(16012)する。同じくメンテナンス終了報告であればオフにする。
【0050】
Resolve Agentは起動(17001)後、エージェントモジュールを起動(17002)し、Resolve Managerにキャッシュ追加処理を指示(17003)する。これ以降は処理の依頼を待ちうける。経路調査依頼があった場合は(17004)図7のルータXとの経路調査処理を実行(17005)し、距離調査依頼があった場合は(17006)図8のルータXとの距離測定処理を実行(17007)する。この待ち受け中に管理者から明示的に終了指示があった場合(17008)はResolve Managerにキャッシュ削除処理を指示(17009)し、Resolve Agentを終了(17010)する。
【実施例2】
【0051】
ここでは本実施例のエンドユーザ近傍キャッシュ解決システムを用いたWEBコンテンツ配信システムについて説明する。WEBコンテンツ配信システムではVODの場合と異なり、エンドユーザからのコンテンツ要求に対して即座にコンテンツを返す必要がある。そのためtracerouteなど時間がかかる処理を行う事ができないと言う特徴がある。そこで本実施例ではこの特徴に合わせてResolve Managerの構成や動作に変更を加えている。
【0052】
図18に本実施例の全体構成を示す。
DC1011には変更されたResolve Manager18001とWEBコンテンツ配信コンポーネントであるコンテンツ配信装置としてのHTTP Data(Origin)18002がある。
【0053】
キャッシュサーバ1021、1031、1041にはResolve Agent1022、1032、1042とHTTP Data(Cache)18003、18004、18005がある。Resolve Agent1022、1032、1042は実施例1と同じものを用いる。またHTTP Data(Cache)18003、18004、18005はHTTP Data(Origin)18002と同等の機能およびコンテンツを持ち、実際にコンテンツを配信するコンポーネントである。ただし、コンテンツのうち、AタグやIMGタグなどリンクを持つタグのURLが絶対パスを持っている場合は、各HTTP Data(Cache)のURLに置き換えられている。
また、本実施例でPC18006、18007、18008がクライアントであり、クライアントプログラムには一般的なWEBブラウザを想定している。なおWEBブラウザが動作すれば、PCやスマートフォンなど情報処理端末のハードウェアは問わない。
【0054】
図19に変更されたResolve Manager18001とHTTP Data(Origin)18002の詳細構成を示す。
Resolve Manager18001はCPU19011、主記憶19012、二次記憶19013を含む。主記憶19012の上にはマネージャモジュール19021と近傍キャッシュ表19022とキャッシュサーバ一覧表19023とtraceroute表19024を含む。このうち、マネージャモジュール19021は実施例1のマネージャモジュール4021を変更したものである。また近傍キャッシュ表19022とキャッシュサーバ一覧表19023はそれぞれ実施例1の近傍キャッシュ表4022とキャッシュサーバ一覧表4023と同じものである。traceroute表19024はPCアドレス列19041とルータ配列列19042を持ち、あるPCまでの経路上のルータを保存しておく。
【0055】
なお、traceroute表19024の主キーはPCアドレス列19041であり、PCアドレス列を用いて特定の1行を限定する事ができる。また二次記憶19013にはマネージャモジュールプログラム19031が含まれる。Resolve Manager18001動作時にはマネージャモジュールプログラム19031を主記憶19012上に展開し、マネージャモジュール19021として実行する。
【0056】
HTTP Data(Origin)18002はCPU1905、主記憶1905、二次記憶19053を含む。主記憶19052の上にはHTTPサーバ19061とリライトモジュール19062を含む。このうち、HTTPサーバ19061は汎用のHTTPサーバ19061を用いる。またリライトモジュールはHTTPサーバ19061とPC18006、18007、18008の間に入り、コンテンツ中のAタグやIMGタグなどリンクを持つタグのURLを書き換える機能を持つ。二次記憶19053にはHTTPサーバプログラム19071とリライトモジュールプログラム19072が含まれる。HTTP Data(Origin)18002動作時にはHTTPサーバプログラム19071とリライトモジュールプログラム19072を主記憶19052上に展開し、HTTPサーバ19061とリライトモジュール19062として実行する。
【0057】
続いて、エンドユーザ近傍キャッシュ解決システムを用いたWEBコンテンツ配信システムの動作詳細を示す。ただし、システム開始時の初期近傍キャッシュ表構築処理と、システムに新たなキャッシュサーバを追加する際の処理と削除する際の処理は実施例1と同様であるため、ここでは定常状態時の動作であるPCがコンテンツを取得する際の処理を示す。
【0058】
図20に定常状態時の動作であるPCがコンテンツを取得する際の処理シーケンスを示す。本処理では、まずPC18006がHTTP Data(Origin)18002に接続しトップページを要求(20001)する。続いてHTTP Data(Origin)18002はResolve Manager18001から近傍キャッシュアドレスを取得(20002)するが、ここではResolve Manager18001はtraceroute表19024を探索してもPC18006のレコードが見つからなかった(20003)ためHTTP Data(Origin)18002のアドレスを返す(20004)このため、HTTP Data(Origin)18002はPC18006にコンテンツ中のアドレスの書き換えをしないでコンテンツを返す(20005)。その裏で、Resolve Manager18001はPC18006にtracerouteし、結果をtraceroute表19024に登録(20006)しておく。続いてPC18006が続きのページを要求(20007)すると、再びHTTP Data(Origin)18002はResolve Manager18001から近傍キャッシュアドレスを取得(20008)するが、この時は手順20006でtraceroute結果をtraceroute表19024に登録してあるため、traceroute表を探索するとレコードが見つかる(20009)。そのためそのレコードを用いて近傍キャッシュサーバを解決し、近傍キャッシュサーバのアドレスを返す(20010)。続いてHTTP Data(Origin)18002は近傍キャッシュサーバのアドレスを用いてコンテンツ中のアドレスを書き換えてコンテンツを返す(20011)。これ以降のPC18006からのコンテンツ要求は、ここではキャッシュサーバ1(1021)上のHTTP Data(Cache)1(18003)に向かう(20012)。
【0059】
図21に定常状態時の動作であるPCがコンテンツを取得する際の処理シーケンスのうち、Resolve Manager18001の処理部分であるPCの近傍キャッシュ探索処理のフローチャートを示す。本実施例では、本処理で図16のResolve Manager全体処理のうち情報処理端末の近傍キャッシュ探索処理(16006)を置き変える。Resolve Manager18001はPCの近傍キャッシュ探索処理開始(21001)後、まずtraceroute表にPCのエントリがあるか否か判断(21002)する。判断の結果エントリがなかった場合はHTTP Data(Origin)18002のURLを返し(21003)、その後PC18006にtracerouteして得られたルータ配列からレコードを作成してtraceroute表(19024)に追加(21004)し、処理を終える(21005)。一方判断21002の結果エントリがあった場合はtraceroute表のエントリからルータ配列を取得する(21006)。これ以降の処理は図11の処理11003〜11018と等しいため説明を省く。
ここまでの処理で、定常状態時の動作であるPCがコンテンツを取得する際の近傍キャッシュサーバを解決できる。
【0060】
なお、Resolve Manager18001が用いる近傍キャッシュ表4022、キャッシュサーバ一覧表18022、traceroute表19024のうち、近傍キャッシュ表4022とtraceroute表19024はレコード数が際限なく大きくなる可能性がある。これに対して、レコード数に上限を持たせて、重要度の低いレコードを削除する方法が有効である。重要度の低いレコードは、近傍キャッシュ表4022の場合はアクセス回数を表すcounter列4042の値が小さいものである。そこで、この場合はLRU(Least Recently Used)アルゴリズムに基づきcouter列4042の値が小さい順に削除する。また、traceroute表19024のようにアクセス回数が判らない表であれば、FIFO(First In First Out)アルゴリズムに基づき、古い行すなわち表の上の方にある行は重要度が低いと判断する。
【0061】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0062】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウエアで実現してもよい。また、上記の各構成、機能等は、それぞれの機能を実現するプログラムを実行することによりソフトウェアで実現する場合を例示して説明したが、各機能を実現するプログラム、テーブル、ファイル等の情報はメモリのみならず、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体におくことができるし、必要に応じてネットワーク等を介してダウンロード、インストールすることも可能である。
【0063】
以上説明した本発明の開示の内容には、特許請求の範囲の各項に記載の発明以外に種々の発明が含まれている。その一例を示すと下記のとおりである。
例1:ある装置Aを識別するIDを入力し、同じ機能を持った別のいくつかの装置の中から装置Aにネットワーク上の距離の近い別の装置Bを識別するIDを返す装置解決方法であって、
予めネットワーク上の幾つかの中継装置と、同じ機能を持った別の幾つかの装置それぞれとの距離を測定し、ネットワーク上の幾つかの中継装置にネットワーク上の距離の近い別の装置を決定してリストとして保持しておき、
装置Aを識別するIDを入力したら装置Aまでのネットワーク上の経路上の中継装置を調査し、中継装置の配列とし、
装置Aに最も近い中継装置を前記予め保持したリストから探索し、装置Aに最も近い中継装置に最も近い別の装置Bを取得し、
もし装置Aに最も近い中継装置が前記予め保持したリストに含まれない場合は、装置Aから二番目に近い中継装置を用いて前記予め保持したリストから探索し、装置Aから二番目に近い中継装置に最も近い別の装置Bを取得し、
同様に再帰的に装置Aにn番目に近い中継装置前記予め保持したリストに含まれない場合は、装置Aからn+1番目に近い中継装置を用いて前記予め保持したリストから探索し、装置Aからn+1番目に近い中継装置に最も近い別の装置Bを取得し、装置Bを返す、
装置解決方法。
【符号の説明】
【0064】
1011 データセンタ(DC)
1012、18001 リゾルブマネージャ
1013 VOD Portal
1014 VOD DRM
1015 VOD Data(Origin)
1021、1031、1041 キャッシュ サーバ
1022、1032、1042 リゾルブ エージェント
1023、1033、1043 VOD Data(Cache)
1051、1052、1053、1054、1055、1056、1058、1059 ルータ
1061、1062、1063 情報処理端末
4011、4061、19011、19051 CPU
4012、4062、19012、19052 主記憶
4013、4063、19013、19053 二次記憶
4021、19021 マネージャモジュール
4022、19022 近傍キャッシュ表
4023、19023 キャッシュサーバ一覧表
4031、19031 マネージャモジュールプログラム
4041 ルータIP
4042 カウンタ
4043、4046 キャッシュサーバ
4044、4047 距離
4045、4048 停止フラグ
4051 ID
4052 キャッシュサーバIP
4053 リゾルブ エージェント IP
4081 エージェントモジュールプログラム
18002、18003、18004、18005 HTTP Data (Cache)
18006、18007、18008 パーソナルコンピュータ(PC)
19041 PCアドレス
19042 ルータ配列
19061 HTTPサーバ
19062 リライトモジュール
19071 HTTPサーバプログラム
19072 リライトモジュールプログラム

【特許請求の範囲】
【請求項1】
複数のキャッシュサーバの中から、端末にネットワーク上の距離の近いキャッシュサーバを通知する装置のキャッシュサーバ解決方法であって、
前記装置は、
前記ネットワーク上の複数の中継装置と、複数の前記キャッシュサーバそれぞれとのネットワーク上の距離を測定し、複数の前記中継装置各々に距離の近い前記キャッシュサーバを決定した結果を保持し、
前記端末へのネットワーク上の経路上の前記中継装置を調査し、
保持された前記端末に最も近い前記中継装置に近い前記キャッシュサーバを取得し、前記端末に最も近い前記中継装置に近いキャッシュサーバが保持されていない場合は、前記端末から次に近い前記中継装置に近い前記キャッシュサーバを探索して取得することを繰返す、
ことを特徴とするキャッシュサーバ解決方法。
【請求項2】
請求項1に記載のキャッシュサーバ解決方法であって、
前記装置は、
予め前記端末までのネットワーク上の経路上の前記中継装置を調査し、その結果を前記中継装置の配列のリストとして保持し、
前記端末を識別する識別子が入力されたら、予め保持した前記中継装置の配列のリストから探索する、
ことを特徴とするキャッシュサーバ解決方法。
【請求項3】
請求項2に記載のキャッシュサーバ解決方法であって、
前記装置は、
前記端末にtracerouteすることにより、前記端末近傍の前記中継装置を調査する、
ことを特徴とするキャッシュサーバ解決方法。
【請求項4】
請求項1に記載のキャッシュサーバ解決方法であって、
前記端末は、動画配信システムの視聴用クライアントを備え、
前記キャッシュサーバは、前記動画配信システムの動画データをキャッシュする、
ことを特徴とするキャッシュサーバ解決方法。
【請求項5】
請求項1に記載のキャッシュサーバ解決方法であって、
前記端末は、コンテンツ配信装置にコンテンツ配信要請するためのクライアントプログラムを備え、
前記装置は、
前記端末が前記コンテンツ配信装置に配信要請してきた際、前記端末近傍の前記キャッシュサーバを探索できない場合、前記コンテンツ配信装置からコンテンツを返し、前記端末までのネットワーク上の経路上の前記中継装置を調査して結果を保持する、
ことを特徴とするキャッシュサーバ解決方法。
【請求項6】
処理部と記憶部とを備え、複数のキャッシュサーバの中から、端末にネットワーク上の距離の近いキャッシュサーバを通知する解決装置であって、
前記記憶部に、
前記ネットワーク上の複数の中継装置と、複数の前記キャッシュサーバそれぞれとのネットワーク上の距離を測定し、複数の前記中継装置各々に距離の近い前記キャッシュサーバを決定した結果を保持し、
前記処理部は、
前記端末を識別する識別子を入力し、当該端末へのネットワーク上の経路上の前記中継装置を調査し、
前記記憶部に記憶された前記端末に最も近い中継装置に近い前記キャッシュサーバを取得し、前記端末に最も近い中継装置に近い前記キャッシュサーバが前記記憶部に保持されていない場合は、前記端末から次に近い中継装置に近い前記キャッシュサーバを探索して取得することを再帰的に繰返す、
ことを特徴とする解決装置。
【請求項7】
請求項6に記載の解決装置であって、
前記記憶部は、前記結果として、前記中継装置のIPアドレスと、前記キャッシュサーバのIPアドレスと、前記中継装置と前記キャッシュサーバのネットワーク上の距離を保持するテーブルを記憶する、
ことを特徴とする解決装置。
【請求項8】
請求項6に記載の解決装置であって、
前記処理部は、
前記端末にtracerouteすることにより、前記端末近傍の前記中継装置を調査する、
ことを特徴とする解決装置。
【請求項9】
請求項6に記載の解決装置であって、
前記端末は、ビデオオンデマンド(以下、VOD)システムの視聴用クライアントを備え、
前記キャッシュサーバは、前記VODシステムのVODデータをキャッシュする、
ことを特徴とする解決装置。
【請求項10】
請求項9に記載の解決装置であって、
前記処理部は、
再帰的な探索によって前記VODデータをキャッシュする前記キャッシュサーバが見つからない場合、前記VODデータのオリジナルのURLを返す、
ことを特徴とする解決装置。
【請求項11】
端末と、複数のキャッシュサーバと、前記端末にネットワーク上の距離の近い前記キャッシュサーバを通知する解決装置とを備えるキャッシュサーバシステムであって、
前記解決装置は、
前記ネットワーク上の複数の中継装置と、複数の前記キャッシュサーバそれぞれとのネットワーク上の距離を測定し、複数の前記中継装置各々に距離の近い前記キャッシュサーバを決定した結果を保持し、
前記端末を識別する識別子を入力し、ネットワーク上の経路上の前記中継装置を調査し、
保持した前記端末に最も近い中継装置に近い前記キャッシュサーバを取得し、前記端末に最も近い中継装置に近い前記キャッシュサーバが保持されていない場合は、前記端末から次に近い中継装置に近い前記キャッシュサーバを探索して取得することを順次繰返し、取得した前記キャッシュサーバを出力する、
ことを特徴とするキャッシュサーバシステム。
【請求項12】
請求項11に記載のキャッシュサーバシステムであって、
前記解決装置は、前記結果として、前記中継装置のIPアドレスと、前記キャッシュサーバのIPアドレスと、前記中継装置と前記キャッシュサーバのネットワーク上の距離を保持する、
ことを特徴とするキャッシュサーバシステム。
【請求項13】
請求項11に記載のキャッシュサーバシステムであって、
前記解決装置は、
前記端末にtracerouteすることにより、前記端末近傍の前記中継装置を調査する、
ことを特徴とするキャッシュサーバシステム。
【請求項14】
請求項11に記載のキャッシュサーバシステムであって、
動画配信システムの番組表を配信可能なポータル配信装置を更に備え、
前記端末は、前記動画配信システムの視聴用クライアントを備え、
前記キャッシュサーバは、前記動画配信システムの動画データをキャッシュ可能であり、
前記解決装置は、取得した前記キャッシュサーバを、前記ポータル配信装置に出力し、
前記ポータル配信装置は、前記端末から動画配信要請を受信した場合、前記当該キャッシュサーバを前記端末に返し、
前記端末は当該キャッシュサーバから動画を受信する、
ことを特徴とするキャッシュサーバシステム。
【請求項15】
請求項11に記載のキャッシュサーバシステムであって、
コンテンツを配信するためのコンテンツ配信装置を更に備え、
前記端末は、前記コンテンツ配信装置にコンテンツ配信要請するためのクライアントプログラムを備え、
前記解決装置は、
前記端末が前記コンテンツ配信装置に配信要請してきた際、前記端末近傍の前記キャッシュサーバを解決できない場合、前記コンテンツ配信装置からコンテンツを返し、前記端末までのネットワーク上の経路上の前記中継装置を調査し、その結果を保持する、
ことを特徴とするキャッシュサーバシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2013−90277(P2013−90277A)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願番号】特願2011−231815(P2011−231815)
【出願日】平成23年10月21日(2011.10.21)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】