(57)【要約】【課題】オリジナルコンテンツの更新頻度が高く、さらにクライアントから不特定多数のサーバへの情報提供要求が出力される場合において、その平均レスポンスタイムを向上させる。【解決手段】ネットワーク121上に配置され、クライアント計算機からのデータ提供要求をサーバ計算機へ転送し、サーバ計算機からの提供データをクライアント計算機へ転送する中継機能を有する情報中継装置122において、クライアント計算機から過去にデータ提供要求されたサーバ計算機上のデータについて、データ提供要求と非同期に、その要求データを複製し保持するレプリケーション手段113,110,109,111,108と、クライアント計算機からデータ提供要求されたとき、レプリケーション手段が保持する複製データ110をクライアント計算機に返す複製返却手段113とを備えた情報中継装置。【選択図】      図１
2004280847.tif 000002
【特許請求の範囲】
【請求項１】
情報提供者となるサーバ計算機と情報利用者となるクライアント計算機の間を繋ぐネットワーク上に配置され、クライアント計算機からのデータ提供要求をサーバ計算機へ転送し、サーバ計算機からの提供データをクライアント計算機へ転送する中継機能を有する情報中継装置において、
前記クライアント計算機から過去にデータ提供要求されたサーバ計算機上のデータについて、データ提供要求と非同期に、その要求データを複製し保持するレプリケーション手段と、
前記クライアント計算機からデータ提供要求されたとき、前記レプリケーション手段が保持する複製データを前記クライアント計算機に返す複製返却手段と
を備えたことを特徴とする情報中継装置。
【請求項２】
前記レプリケーション手段は、設定された時間間隔で複製データを最新状態に更新することを特徴とする請求項１記載の情報中継装置。
【請求項３】
複数の複製データについての各々の更新時間間隔を、各データに対するクライアント計算機からのデータ提供要求の頻度に基づいて変更するレプリケーション間隔決定手段を備えたことを特徴とする請求項２記載の情報中継装置。
【請求項４】
複数の複製データについての各々の更新時間間隔を、各データに関するサーバ計算機上でのデータ変更頻度に基づいて変更するレプリケーション間隔決定手段を備えたことを特徴とする請求項２又は３記載の情報中継装置。
【請求項５】
前記データ提供要求を受けた場合に、前記レプリケーション手段が保持する複製データが有効期限内のものであるか否かを判断するレプリカ利用判定手段を備え、
前記レプリケーション手段は、前記レプリカ利用判定手段により複製データが有効期限外と判定された場合には、サーバ計算機に複製データに対応したデータの属性情報を問い合わせ、その属性情報から該当データがサーバ計算機上で更新されていると判断したときには、サーバ計算機からデータを取得し直すとともに、その取得データを前記中継機能に引き渡すことを特徴とする請求項１乃至４のうち何れか１項記載の情報中継装置。
【請求項６】
前記サーバ計算機は、提供用のデータに変更が起きた場合、データ提供登録されたデータについてその登録を行ったデータ提供対象に、更新後のデータを送信するものである場合に、
前記レプリケーション手段は、クライアント計算機から複製データを保持していないデータについてのデータ提供要求を受けると、前記サーバ計算機に、要求されたデータをデータ提供するよう登録することを特徴とする請求項１記載の情報中継装置。
【請求項７】
前記レプリケーション手段は、前記複製データとともにその複製データについてのアクセス制限情報を取得し保持するとともに、
前記複製返却手段は、前記アクセス制限情報に基づき、アクセス許可されるクライアントからのデータ提供要求にのみ複製データを返すことを特徴とする請求項１乃至６のうち何れか１項記載の情報中継装置。
【請求項８】
情報提供者となるサーバ計算機と情報利用者となるクライアント計算機の間を繋ぐネットワーク上に配置され、クライアント計算機からのデータ提供要求をサーバ計算機へ転送し、サーバ計算機からの提供データをクライアント計算機へ転送する中継機能を有する情報中継装置を制御するプログラムであって、
コンピュータに、
前記クライアント計算機から過去にデータ提供要求されたサーバ計算機上のデータについて、データ提供要求と非同期に、その要求データを複製させ保持させるレプリケーション手段と、
前記クライアント計算機からデータ提供要求されたとき、前記レプリケーション手段が保持させる複製データを前記クライアント計算機に返させる複製返却手段と
と有するプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【請求項９】
前記レプリケーション手段は、設定された時間間隔で複製データを最新状態に更新させることを特徴とする請求項８記載の記憶媒体。
【請求項１０】
前記サーバ計算機は、提供用のデータに変更が起きた場合、データ提供登録されたデータについてその登録を行ったデータ提供対象に、更新後のデータを送信するものである場合に、
前記レプリケーション手段は、クライアント計算機から複製データを保持していないデータについてのデータ提供要求を受けると、前記サーバ計算機に、要求されたデータをデータ提供するよう登録させることを特徴とする請求項８記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は情報中継装置及び記憶媒体、更に詳しくは、ネットワーク上のサーバ計算機で生成される情報について、これを参照するクライアント計算機と間にあって両者の情報授受を中継する情報中継装置及び記憶媒体に関する。
【背景技術】
【０００２】
ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）やＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）サービスに代表される分散計算機システムでは、一塊の情報（以下、コンテンツと呼ぶ）を特定するユニークな識別文字列がＵＲＬという形でコンテンツ毎に関連付けられている。クライアントシステム（以下、クライアントという）からはＵＲＬを指定することでサーバシステム（以下、サーバという）からコンテンツを引き出すことができる。
【０００３】
このようなシステムを利用する際、クライアントとサーバの間にプロキシ（Ｐｒｏｘｙ）サーバと呼ばれる情報中継装置を介在させる場合がある。プロキシサーバはいくつかの機能を持つが、その１つにキャッシング機能がある。
【０００４】
このキャッシング機能を利用することにより、クライアントが一度参照したコンテンツがプロキシサーバを通過する際にそのキャッシュエリアに格納される。
【０００５】
このデータキャッシュにより、クライアントから再びそのコンテンツを見たいという要求が出されたとき、キャッシュ内のデータを返すためプロキシサーバとサーバ間のネットワークデータ転送を省くことができ、クライアントの要求に高速に答えることができる。
【０００６】
現在実現されている一般的なキャッシングプロキシサーバの動作は以下のようになる。ここではＷＷＷの例を示す。
【０００７】
１．クライアントからの表示要求を受け、キャッシュエリアを調べる。
【０００８】
２．キャッシュエリアにクライアントから要求されたコンテンツの複製が存在する場合には、複製が有効期限内であればそれを返す。有効期限は、サーバからコンテンツを取得する際に一緒に送られてくる。
【０００９】
３．有効期限をすぎている場合、それが最新のものかどうかを確認するため、オリジナルが置かれているＷＷＷサーバに当該コンテンツの最終更新日時を問い合わせる。
【００１０】
４．オリジナルの最終更新日時が複製の更新日時と一致した場合は、キャッシュ内のコンテンツをクライアントに返す。
【００１１】
５．オリジナルの最終更新日時がキャッシュより新しい場合は、改めてオリジナルのコンテンツをダウンロードし、クライアントに返すと共に、キャッシュを更新する。
【００１２】
以下、上記２または４の状況を「キャッシュがヒットした」と表現する。
【００１３】
ここで、クライアントからの情報提供要求に対し、キャッシュがヒットするための条件を整理すると以下のようになる。
【００１４】
・要求されたＵＲＬのコンテンツがキャッシュに存在する（以下、存在性という）。
【００１５】
・キャッシュに存在する当該コンテンツがサーバと同じものである（以下、最新性という）。
【００１６】
これらの条件の性質からして、キャッシュ上の複製データに存在性と最新性の両条件が成り立ったときのみ、キャッシュがヒットすることになる。
【００１７】
一方、データベースのレプリケーションシステムやプッシュ（Ｐｕｓｈ）テクノロジーと呼ばれる技術では、あらかじめ設定したコンテンツに対し、サーバ上のコンテンツに内容更新が起こった時点で複製を持つクライアントに変更が通知され、複製が最新状態に変更される。
【００１８】
プロキシサーバのキャッシュ管理にプッシュ技術を利用することにより、あらかじめ設定されたＵＲＬのコンテンツに対しては常に最新状態のものがキャッシュエリアに保持される。このため、一般的なプロキシサーバよりもクライアントからの要求に対するキャッシュのヒット確率が高くなり、クライアントから見た平均レスポンス時間が短くなる効果がある。サーバ上のコンテンツが頻繁に更新される場合、この効果が顕著になる。
【００１９】
また、厳密にいえばプッシュ技術とはいえないが、一般にプッシュ技術といわれているものにインテリジェントプル（ｐｕｌｌ）と呼ばれる技術がある。上記したプッシュ技術ではサーバ側から積極的にコンテンツを送るのに対し、このインテリジェントプルではクライアント側から定期的にコンテンツを取得することで見かけ上プッシュ技術を用いたのと同様な状態を実現しようとする。
【００２０】
このインテリジェントプル技術をプロキシサーバに適用した例として、米国Ｍａｒｉｍｂａ社のＣａｓｔａｎｅｔがある。
【００２１】
Ｍａｒｉｍｂａ社のＣａｓｔａｎｅｔはサーバ機能を持つトランスミッタとクライアント機能を持つチューナから構成される。チューナはあらかじめチューナ上で設定したＵＲＬのコンテンツがトランスミッタ上で更新されたかを定期的にチェックし、更新があったコンテンツをダウンロードして、チューナ上の複製ファイルを更新する。
【００２２】
ユーザからコンテンツの参照要求があると、チューナ上の複製コンテンツを表示する。したがって、チューナをＷＷＷブラウザのプロキシサーバとして利用すると、高速なレスポンスが実現できる。この場合、ＷＷＷブラウザからの参照要求が、チューナ上にキャッシュされているコンテンツなら複製が返され、そうでない場合はオリジナルのサーバからコンテンツをダウンロードする。
【００２３】
チューナにキャッシュされているコンテンツは定期的に最新状態に更新されているため、一般的なプロキシサーバを利用する場合に比べ、キャッシュの最新性が成立する確率が高くなる。
【００２４】
また、特開平１０−２１１３４には、２つのプロキシのプロセスを用意しておき、１つ目のプロキシのプロセスは通常のプロキシの機能を有し、２つ目のプロキシは１つ目のプロキシが生成するアクセスログに記載されているＵＲＬを順にＷｅｂサーバにあるオリジナルから読み込んでキャッシュに記憶させる技術が記載されている。つまり、プロキシのキャッシュにクライアントが取得しようとしている目的のコンテンツが見つからない場合、もしくは見つかっても有効期限が切れている場合はオリジナルを読み込んできて、目的のコンテンツで、有効期限内のコンテンツを見つけた場合は、そのままクライアントに返すのである。
【発明の開示】
【発明が解決しようとする課題】
【００２５】
ところが、上述のキャッシングプロキシサーバのキャッシング機能を用いた場合は、サーバに置かれているオリジナルコンテンツの内容更新頻度が低い場合、キャッシングプロキシサーバのキャッシュ機能は有効に働く。しかし、オリジナルコンテンツの更新頻度が高い場合、キャッシュの最新性が成立する確率は低くなるため、キャッシュのヒット率が下がり、プロキシサーバがキャッシングする効果が低くなるという問題がある。
【００２６】
また、上記プッシュ技術やインテリジェントプル技術を用いた場合においては、あらかじめ設定されたコンテンツしか複製が作られない。したがって、ＷＷＷのようにオリジナルコンテンツが不特定なシステムではキャッシュの存在性が成立する確率が下がり、ヒット率が低くなる問題がある。仮に、十分多くのコンテンツをあらかじめプッシュ対象に設定することによって存在性を向上させた場合、必要なキャッシュの大きさが大きくなりすぎるという問題が発生し、現実的とはいえない。
【００２７】
さらに、特開平１０−２１１３４記載の技術では、コンテンツをキャッシュするタイミングが、１つ目のプロキシのアクセスログが増加するタイミングでアクセスログに基づいて行われるため、クライアントからのリクエストが無い限り、キャッシュの更新は行われず、有効期限内にオリジナルのコンテンツが変更されていても、クライアントには新しいコンテンツをクライアントが入手できない場合が生じうる。
【００２８】
本発明は、このような実情を考慮してなされたもので、オリジナルコンテンツの更新頻度が高く、さらにクライアントから不特定多数のサーバへの情報提供要求が出力される場合において、その平均レスポンスタイムを向上させることができる情報中継装置及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【００２９】
上記課題を解決するために、請求項１に対応する発明は、情報提供者となるサーバ計算機と情報利用者となるクライアント計算機の間を繋ぐネットワーク上に配置され、クライアント計算機からのデータ提供要求をサーバ計算機へ転送し、サーバ計算機からの提供データをクライアント計算機へ転送する中継機能を有する情報中継装置についてなされたものである。
【００３０】
この情報中継装置においては、レプリケーション手段により、クライアント計算機から過去にデータ提供要求されたサーバ計算機上のデータについて、データ提供要求と非同期に、その要求データが複製され保持される。
【００３１】
また、クライアント計算機からデータ提供要求されたときには、複製返却手段によって、レプリケーション手段が保持する複製データがクライアント計算機に返される。
【００３２】
本発明では、このようなに、データ提供要求とは非同期な複製更新を行うことから、オリジナルコンテンツの更新頻度が高い場合でも適切な複製返却を可能とすることができ、また、過去に要求されたデータについて、複製を行うようにしているので、クライアントから不特定多数のサーバへの情報提供要求が出力される場合にその平均レスポンスタイムを向上させることができる。
【００３３】
次に、請求項２に対応する発明は、請求項１に対応する発明において、レプリケーション手段は、設定された時間間隔で複製データを最新状態に更新する。
【００３４】
したがって、より効率的に、複製データの返却を行うことができる。
【００３５】
次に、請求項３に対応する発明は、請求項２に対応する発明において、レプリケーション間隔決定手段が設けられ、同間隔決定手段によって、複数の複製データについての各々の更新時間間隔が、各データに対するクライアント計算機からのデータ提供要求の頻度に基づいて変更される。
【００３６】
したがって、データ要求頻度に応じて適切な複製更新を行うことができる。
【００３７】
次に、請求項４に対応する発明は、請求項２又は３に対応する発明において、レプリケーション間隔決定手段によって、複数の複製データについての各々の更新時間間隔が、各データに関するサーバ計算機上でのデータ変更頻度に基づいて変更される。
【００３８】
したがって、クライアントの要求のみならず、サーバ側での状況をも考慮した複製更新を行うことができる。
【００３９】
次に、請求項５に対応する発明は、請求項１〜４に対応する発明において、レプリカ利用判定手段によって、データ提供要求を受けた場合に、レプリケーション手段が保持する複製データが有効期限内のものであるか否かが判断されるようになっている。
【００４０】
このレプリカ利用判定手段により複製データが有効期限外と判定された場合には、さらに、レプリケーション手段により、サーバ計算機に複製データに対応したデータの属性情報が問い合わせられ、その属性情報から該当データがサーバ計算機上で更新されていると判断されたときに、サーバ計算機からデータが取得し直されるとともに、その取得データが前記中継機能に引き渡される。
【００４１】
したがって、実際にはサーバ側のデータが変更されていない場合に、サーバ〜中継装置間で重複してデータ送信されることを防止することができ、効率的なデータ転送を行うことができる。
【００４２】
次に、請求項６に対応する発明は、請求項１に対応する発明において、サーバ計算機は、提供用のデータに変更が起きた場合、データ提供登録されたデータについてその登録を行ったデータ提供対象に、更新後のデータを送信するものである場合に情報中継装置に適用されるものである。なお、このサーバ計算機は例えばプッシュ技術が使用されたものである。
【００４３】
この場合に、レプリケーション手段は、クライアント計算機から複製データを保持していないデータについてのデータ提供要求を受けると、サーバ計算機に、要求されたデータをデータ提供するよう登録する。
【００４４】
したがって、情報中継装置からプッシュ技術等を用いたサーバ計算機にプッシュ対象データを登録するよう働きかけることで、請求項１の発明と同様な効果を奏することができる。
【００４５】
次に、請求項７に対応する発明は、請求項１に対応する発明において、レプリケーション手段によって、複製データとともにその複製データについてのアクセス制限情報が取得され保持されるようになっている。
【００４６】
さらに、複製返却手段によって、アクセス制限情報に基づき、アクセス許可されるクライアントからのデータ提供要求にのみ複製データが返されるようになっている。
【００４７】
したがって、アクセス権限を有するクライアントに対してのみ、データ返却することが可能となる。
【００４８】
次に、請求項８に対応する発明は、請求項１に対応する発明をコンピュータに実現させるプログラムを記憶した記憶媒体である。
【００４９】
この記憶媒体から読み出されたプログラムにより制御されるコンピュータは、請求項１の情報中継装置として機能する。
【００５０】
次に、請求項９に対応する発明は、請求項２に対応する発明をコンピュータに実現させるプログラムを記憶した記憶媒体である。
【００５１】
この記憶媒体から読み出されたプログラムにより制御されるコンピュータは、請求項２の情報中継装置として機能する。
【００５２】
次に、請求項１０に対応する発明は、請求項６に対応する発明をコンピュータに実現させるプログラムを記憶した記憶媒体である。
【００５３】
この記憶媒体から読み出されたプログラムにより制御されるコンピュータは、請求項６の情報中継装置として機能する。
【発明の効果】
【００５４】
以上詳記したように本発明によれば、オリジナルコンテンツの更新頻度が高く、さらにクライアントから不特定多数のサーバへの情報提供要求が出力される場合において、その平均レスポンスタイムを向上させることができる情報中継装置及び記憶媒体を提供することができる。
【発明を実施するための最良の形態】
【００５５】
以下、本発明の実施の形態について説明する。
【００５６】
（発明の第１の実施の形態）
図１は本発明の第１の実施形態に係る情報中継装置を適用したプロキシサーバを含むネットワークシステムの構成例を示すブロック図である。
【００５７】
このネットワークシステムは、公衆回線１２１を介して多数のサーバノード１１４やクライアントノード１０１が接続されてなるインターネットである。また、クライアントノード１０１はプロキシサーバノード１０３を介して公衆回線１２１に接続され、サーバノード１１４に対するコンテンツ要求をプロキシサーバ１０３に行うようになっている。このプロキシサーバノード１０３に本実施形態の情報中継装置１２２が組み込まれている。
【００５８】
本実施形態では、各ノード１０１，１０３，１１４が接続されている場合について説明するが、ネットワークが介在することは発明の必須要件ではなく、例えばクライアントノード１０１と情報中継装置が同一のコンピュータ内のソフトウェアプロセスとして存在することも可能である。
【００５９】
また、図１では各ノード１０１，１０３，１１４が１つしか記載されていないが、クライアントノード１０１及びサーバノード１１４は同一の構成を持つ複数の装置が存在していてもよい。さらに、各ノード１０１，１０３，１１４は、通信機能を有する計算機システムからなり、そのＣＰＵやメモリ等のハードウエア資源、並びに制御プログラム等のソフトウエア資源から図１に示す種々の機能実現手段を構成する。また、図１においては機能実現に必要な各種のデータが示されているが、これらは図示しない各計算機内のメモリやハードディスク等の記憶手段（図示せず）に記憶されるものである。
【００６０】
以下に、上記各要素の構成について説明する。
【００６１】
クライアントノード１０１には、ＷＷＷブラウザ等の情報表示機能を有するコンテンツ表示部１０２が設けられる。コンテンツ表示部１０２は、クライアントからサーバに向けてのコンテンツ取得リクエスト１１７を出力するとともに、サーバから送られてきたコンテンツを表示する。
【００６２】
次に、サーバノード１１４は、ＷＷＷサーバ等の情報発信機能を有するコンテンツ送信部１１５及びコンテンツデータ１１６を備えている。
【００６３】
コンテンツ送信部１１５は、クライアントもしくはプロキシサーバ１０３からのリクエスト１１７もしくは１１８を受けて、対応するコンテンツを送信する。
【００６４】
コンテンツデータ１１６は、クライアントもしくは情報中継装置からのリクエスト１１７もしくは１１８を受けて、コンテンツ送信部１１５から送信されるコンテンツの集合であり、図示しない記憶手段に格納されている。また、個別のコンテンツを識別するＩＤ（ＷＷＷの場合はＵＲＬ）とコンテンツ内容実体との組で１つのコンテンツが表現される。以下の説明では、ＩＤがＵＲＬである場合について説明する。
【００６５】
図２はＵＲＬと送信元のＩＤの一例を示す図である。
【００６６】
同図に示す情報は、クライアントノード１０１が取得したいコンテンツを指定するリクエストデータ１１７や１１８に含まれる識別情報の形態例である。
【００６７】
次にプロキシサーバノード１０３は、クライアントノード１０１の代理としてインターネットとの通信等を行うサーバであって、本実施形態では、この中に情報中継装置１２２が設けられている。
【００６８】
情報中継装置１２２は、入力情報統計データ１０５，レプリケーション戦略知識１０７，レプリカコンテンツＵＲＬ１０９，ＵＲＬ別レプリケーション間隔１０８及びレプリカコンテンツデータ１１０の各データを保持する。また、これらの各データ及びリクエストデータ１１７に基づき、所定の処理を実行する入力解析部１０４，レプリケーション戦略決定部１０６，レプリカ利用判定部１１２，リクエスト／コンテンツ転送部１１３及びレプリカ更新部１１１を備えている。
【００６９】
ここでまず、入力解析部１０４は、クライアントから送られたリクエスト１１７を解析し、入力情報統計データ１０５を作成する。また、リクエストの全情報をレプリカ利用判定部１１２に送る。
【００７０】
入力情報統計データ１０５は、図示しない記憶手段に過去のリクエストの解析情報等が保存されてなるものである。例えば図３（ａ）の項目に付いて、図４に示す形態でリクエストの統計情報を保持する。
【００７１】
図３は入力情報統計データ及びレプリケーション戦略決定部で使用されるデータの内容例を示す図である。
【００７２】
図４は入力情報統計データの保存形態の一例を示す図である。
【００７３】
なお、図３（ａ）に示す各項目のうち、ＵＲＬ（１）、最新リクエスト発行時刻（２）、総リクエスト回数（３）、リクエスト発生頻度（４）については、入力解析部１０４が受信したリクエスト１１７に基づき、解析あるいは計算されて更新されるものである。また、レプリカ使用回数（５）については、後述するレプリカ利用判定部１１２によってレプリカが使用されたときにインクリメントされる。
【００７４】
レプリケーション戦略決定部１０６は、レプリケーション戦略知識１０７に基づいて入力情報統計データ１０５を利用し、どのコンテンツをレプリケーションの対象にし、どの程度の間隔でレプリカを最新状態に更新するか等を決定し、その結果をＵＲＬ別レプリケーション間隔１０８に出力する。ここで、レプリケーション戦略知識１０７は、レプリケーション戦略決定部１０６で利用する知識データであり、例えば図５に示す形態で知識を保持する。
【００７５】
図５はレプリケーション戦略知識の内容例を示す図である。
【００７６】
同図に示すレプリケーション戦略知識１０７の各例に対応して、レプリケーション戦略決定部１０６がどのようなレプリケーション間隔決定を行うかを説明すると以下の通りである。
【００７７】
レプリケーション戦略決定部１０６は、各ＵＲＬに対応するレプリカが図５に示す処理＃１〜＃４のうち、何れかの処理条件を満たすか否かを調べ、条件を満たす場合には、その処理に規定されたレプリケーション間隔をＵＲＬ別レプリケーション間隔１０８に出力する。また、レプリケーション登録削除の場合には、レプリカコンテンツＵＲＬ１０９から対応するＵＲＬを削除する。
【００７８】
また、レプリケーション戦略決定部１０６は、レプリケーション戦略決定処理に先立ち、図３（ｂ）に示すレプリカ使用率（６）を計算し、当該戦略決定処理の間、これを保持する。
【００７９】
さて、図５における処理＃１は、最新リクエスト発行時刻（２）が現在時刻から３時間より前であって、かつ、レプリカ使用率（６）が０．５より大きい場合には、そのＵＲＬについてのレプリケーション間隔を５時間とするものである。この条件で比較的長時間である５時間と間隔設定するのは、リクエスト頻度の割には情報中継装置１２２が保持するレプリカは高確率でそのまま使用されることから、サーバノード１１４における対応コンテンツの変更頻度が相対的に低いと予想できるからである。別のいい方をすれば、この場合はコンテンツの変更頻度に比べてリクエスト頻度が相対的に高いということになる。
【００８０】
図５における処理＃２は、最新リクエスト発行時刻（２）が現在時刻から３時間より前であって、かつ、レプリカ使用率（６）が０．５以下の場合には、そのＵＲＬについてのレプリケーション間隔を２時間とするものである。この条件で比較的短い時間である２時間と間隔設定するのは、リクエスト頻度の割には情報中継装置１２２が保持するレプリカの使用率は低く、サーバノード１１４における対応コンテンツの変更頻度が相対的に高いと予想できるからである。別のいい方をすれば、この場合はコンテンツの変更頻度に比べてリクエスト頻度が相対的に低いということになる。
【００８１】
図５における処理＃３は、単位時間あたりのリクエスト発生頻度（４）が５より大きく、かつ、レプリカ使用率（６）が０．８より小さい場合には、そのＵＲＬについてのレプリケーション間隔を頻度計測単位時間の１／３とするものである。これは、レプリケーション間隔を単なる時間で設定するのではなくリクエスト発生頻度やレプリカ使用率といった概念に対応させて規定するものである。また、この処理＃３の場合は、リクエスト要求が高くかつサーバ側におけるコンテンツ変更頻度が高い場合に対応している。
【００８２】
図５における処理＃４は、現在時刻から３日以上リクエストがない場合には、レプリケーションを終了させるものである。この場合は、レプリケーション登録削除の場合であり、レプリケーション戦略決定部１０６はレプリカコンテンツＵＲＬ１０９，ＵＲＬ別レプリケーション間隔１０８及びレプリカコンテンツデータ１１０からそのＵＲＬについての関連情報を削除する。
【００８３】
なお、図５に示すレプリケーション戦略知識１０７は、種々考えられる戦略知識の例示であって、その他の戦略知識を適用させることもできる。例えば処理＃４にＡＮＤ条件で”固定でないコンテンツであるか否か”という条件を加え、これらの両条件が成立したときのみ”レプリケーション終了”とさせてもよい。この場合には、３日リクエストされずかつクライアントが固定的にリクエストするコンテンツでない場合にのみ、レプリケーションが登録削除されることになる。
【００８４】
ＵＲＬ別レプリケーション間隔１０８は、レプリケーション戦略決定部１０６で決定された，ＵＲＬ毎のレプリケーション間隔のデータが保持されたものである。例えば図６に示す形態でＵＲＬ毎のレプリケーション間隔の値を保持する。
【００８５】
図６はＵＲＬ別レプリケーション間隔の内容例を示す図である。
【００８６】
レプリカコンテンツＵＲＬ１０９は、レプリケーション戦略決定部１０６で決定された，レプリケーション対象となるコンテンツのＵＲＬリストが保持されているものである。例えば図７に示すような形態でレプリケーション対象コンテンツのＵＲＬを保持する。
【００８７】
図７はレプリカコンテンツＵＲＬの一例を示す図である。
【００８８】
レプリカコンテンツデータ１１０は、レプリカコンテンツＵＲＬ１０９にリストアップされているＵＲＬに対応するコンテンツのレプリカ実体が保持されたものである。例えば図８に示す形態でレプリカコンテンツ実体を保持する。
【００８９】
図８はレプリカコンテンツデータの一例を示す図である。
【００９０】
レプリカ更新部１１１は、ＵＲＬ別レプリケーション間隔１０８に記述されている間隔で各ＵＲＬについてのレプリカコンテンツデータ１１０を更新するように、リクエスト／コンテンツ転送部１１３を介してサーバノードにコンテンツを要求する。
【００９１】
レプリカ利用判定部１１２は、リクエストデータ１１７に含まれる時刻と、レプリカコンテンツデータ１１０中のリクエストと対応するコンテンツ実体の有効期限もしくは更新時刻とを比較し、クライアントノード１０１に対してレプリカを返すかサーバノード１１４から新たに取得してデータを返すかを判定する。また、レプリカをクライアントノード１０１に返すように判断した場合には、対応するＵＲＬについて、入力情報統計データ１０５におけるレプリカ使用回数をインクリメントする。
【００９２】
リクエスト／コンテンツ転送部１１３は、レプリカ利用判定部１１２の判定結果に基づいて、サーバノード１１４にコンテンツ取得リクエスト１１８を送出し、サーバノード１１４から返されるコンテンツデータをクライアントノード１０１に返す。レプリカ利用判定部１１２にてレプリカを返すように判断されたときには、クライアントノード１０１にレプリカを返す。
【００９３】
また、リクエスト／コンテンツ転送部１１３は、サーバノード１１４から取得したコンテンツデータをレプリカコンテンツデータ１１０及びレプリカコンテンツＵＲＬ１０９に格納する。したがって、リクエスト／コンテンツ転送部１１３は、レプリカ更新のみならず、新規にリクエストされたコンテンツの格納及びＵＲＬ保持も行う。
【００９４】
なお、請求項におけるレプリケーション手段は、例えばレプリカ更新部１１１，ＵＲＬ別レプリケーション間隔１０８，レプリカコンテンツデータ１１０，レプリカコンテンツＵＲＬ１０９及びリクエスト／コンテンツ転送部１１３等が対応し、複製返却手段は、レプリカ利用判定部１１２及びリクエスト／コンテンツ転送部１１３等が対応する。
【００９５】
次に、以上のように構成された本実施形態における情報中継装置の動作について、図９，図１０及び図１１を用いて説明する。
【００９６】
図９は本実施形態におけるリクエスト中継処理を説明する流れ図である。
【００９７】
図１０は本実施形態におけるレプリケーション戦略決定処理を説明する流れ図である。
【００９８】
図１１は本実施形態におけるレプリカ更新処理を説明する流れ図である。
【００９９】
これら各処理のうち、リクエスト中継処理及びレプリケーション戦略決定処理と、レプリカ更新処理とは独立に進む非同期な動作となる。
【０１００】
まずリクエスト中継処理について説明する。
【０１０１】
このリクエスト中継処理は、図９に示すように、クライアントノード１０１からリクエストデータ１１７が発行された場合に主に情報中継装置１２２にて行われる処理である。
【０１０２】
まず、コンテンツ表示部１０２に対して利用者がＵＲＬを指定することにより、コンテンツ表示要求がクライアントノード１０１から出力される（Ｓ１）。
【０１０３】
利用者から出された上記表示要求は、リクエストデータ１１７の形態でコンテンツ表示部１０２から情報中継装置１２２の入力解析部１０４へ送信される（Ｓ２）。
【０１０４】
リクエストデータ１１７の内容は入力解析部１０４により解析され、リクエストを受け取った時刻の情報を元に、入力情報統計データ１０５の内容（１）〜（４）が更新される（Ｓ３）。入力情報統計データ更新後は（Ｓ３）、後述するレプリケーション戦略決定処理へ進む。
【０１０５】
一方、ステップＳ２の処理を受けて、入力解析部１０４を介して受信した要求容に基づき、レプリカコンテンツデータ１１０に格納されている当該ＵＲＬのレプリカコンテンツの有効期限がレプリカ利用判定部１１２によって算出される（Ｓ４）。
【０１０６】
ここで、有効期限の算出方法は種々の方法が利用可能である。例えばサーバノード１１４からコンテンツが送信される際、有効期限時刻が添付されるか、最終変更時刻が添付されるため、その値から算出する方法が採用される。
【０１０７】
次に、リクエストに対応するレプリカコンテンツが有効期限内であった場合（Ｓ５）、対応するレプリカコンテンツがレプリカコンテンツデータ１１３より読み出される。この読出コンテンツは、リクエスト／コンテンツ転送部１１３からクライアントノード１０１に返される（Ｓ６）。
【０１０８】
さらに、レプリカ利用判定部１１２によって入力情報統計データ１０６におけるレプリカ使用回数（５）が”１”増やされ（Ｓ７）、レプリケーション戦略決定処理となる。
【０１０９】
また、リクエストに対応するレプリカコンテンツが有効期限を過ぎていた場合、又はレプリケーションされていないコンテンツに対するリクエストである場合（Ｓ５）、リクエストデータ１１７に含まれるサーバノード名に基づいて、リクエスト／コンテンツ転送部１１３からサーバノード１１４にリクエストデータ１１８が転送される。サーバノード１１４からはリクエストデータ１１８で指定されたコンテンツが情報中継装置１０３に返される（Ｓ８）。
【０１１０】
サーバノード１１４から返されたコンテンツは、情報中継装置１２２のリクエスト／コンテンツ転送部１１３からクライアントノード１０１に転送されるとともに（Ｓ９）、リクエスト／コンテンツ転送部１１３の処理により、レプリカコンテンツデータ１１０の内容が同コンテンツで更新される（Ｓ１０）。なお、レプリケーションされていないコンテンツの場合には、新たなレプリケーション対象としてデータ（コンテンツ、ＵＲＬ）保持され、以降レプリケーションされることになる。
【０１１１】
なお、レプリカコンテンツデータ１１０の内容が更新された後は（Ｓ１０）、レプリケーション戦略決定へと処理が進む。
【０１１２】
次に、レプリケーション戦略決定処理の流れについて説明する。レプリケーション戦略決定処理はリクエスト中継処理の図９；Ｓ３若しくはＳ７，Ｓ１０の処理を受けて開始する。
【０１１３】
まず、図９のステップＳ３若しくはＳ７，Ｓ１０の後に、入力情報統計データ１０５及びレプリケーション戦略知識１０７をもとに、レプリケーション戦略決定部１０６によってＵＲＬ別レプリケーション間隔１０８が生成される（ｔ１）。
【０１１４】
具体的には、例えば図４のような入力情報統計データと図５のようなレプリケーション戦略知識の場合には以下のようにレプリケーション間隔が決定される。
【０１１５】
まず、リクエストデータ１１７で指定されるＵＲＬの入力情報統計データが取り出される。例えばリクエストデータでｈｔｔｐ：／／ｗｗｗ／ｆｏｏ．ｈｔｍｌが指定された場合、図４の１行目の情報が取り出される。
【０１１６】
次に、レプリケーション戦略決定部１０６によってレプリカ使用率（６）が計算されるとともに、取り出した入力情報統計データにマッチする条件を持つ知識がレプリケーション戦略知識１０７から検索される。例えば現在時刻が１９９８／０９／０７／１０：００であった場合、図４の１行目のデータについて検索すると、図５の１行目の知識がマッチする。
【０１１７】
次に、見つかった知識に記されているレプリケーション間隔を当該ＵＲＬのレプリケーション間隔とし、ＵＲＬ別レプリケーション間隔１０８がレプリケーション戦略決定部１０６によって更新される。
【０１１８】
以上が新たなレプリケーション間隔を設定する場合である。なお、他の処理に該当する場合については上記したとおりである。
【０１１９】
これに対して、見つかった知識に記されているレプリケーション間隔がレプリケーションの終了を示している場合には、レプリケーション戦略決定部１０６によって、当該ＵＲＬ及び対応するレプリカコンテンツデータがＵＲＬ別レプリケーション間隔１０８，レプリカコンテンツＵＲＬ１０９，レプリカコンテンツデータ１１０の各データから削除される（ｔ２）。
【０１２０】
また、レプリケーションを終了させる他の方法として、レプリカコンテンツデータ１１０が定められた大きさよりも大きくなった場合には、コンテンツの優先度情報（図示せず）を参照し、必要性の低いコンテンツをレプリケーション対象から除外するようにしてもよい。この優先度情報としては、例えば最新リクエスト発行時刻が用いられる。また、使用者が別途優先度を設定するようにしてもよい。さらに、この場合には、優先度の低いレプリカを削除する，プロキシサーバノード１０３のレプリカ削除機能を利用し、レプリカコンテンツ等を削除するようにしても良い。
【０１２１】
なお、本実施形態ではルールベースによるレプリケーション間隔の決定方法を説明したが、入力情報統計データとレプリケーション戦略知識の形態はこれに限るものではなく、入力情報統計データの多変量解析によるレプリケーション間隔値の算出等も考えられる。
【０１２２】
次に、レプリカ更新処理の流れについて説明する。レプリカ更新処理はリクエスト中継処理及びレプリケーション戦略決定処理とは非同期に動作するものである。
【０１２３】
まず、レプリカコンテンツＵＲＬ１０９に格納されている最終レプリカ作成時刻と、ＵＲＬ別レプリケーション間隔１０８に格納されているレプリケーション間隔とがレプリカ更新部１１１により比較される。この結果、現在時刻が最終レプリカ作成時刻からレプリケーション間隔の時間以上経過しているＵＲＬがあれば、そのコンテンツをサーバノード１１４からダウンロードするように、レプリカ更新部１１１からリクエスト／コンテンツ転送部１１３に要求される。
【０１２４】
リクエスト／コンテンツ転送部１１３によってコンテンツがダウンロードされ、レプリカコンテンツデータ１１０がダウンロードデータで置き換えられ、レプリカが更新される（ｕ１）。
【０１２５】
レプリカ更新後、レプリカ更新部１１１は一定時間停止し、その後、ステップｕ１の処理が繰り返される（ｕ２）。
【０１２６】
上述したように、本発明の実施の形態に係る情報中継装置は、レプリカ更新部１１１を設け、リクエスト中継処理と非同期にレプリケーション処理を実行して、予めレプリカコンテンツを更新しておくようにしたので、情報中継装置内のレプリカコンテンツデータが最新のものに保たれている確率を高くすることができ、クライアントリクエストに対するヒット率を向上させることができる。
【０１２７】
また、レプリケーション戦略決定部１０６を設け、リクエストの頻度に応じてレプリカ対象コンテンツを増減させるようにしているので、限られた容量のレプリカ記憶領域に対し、クライアントリクエスト頻度の高いコンテンツがレプリケーションされるようになり、クライアントからの不特定なコンテンツ取得要求に対するヒット率を向上させることができる。
【０１２８】
また、今までのＰｕｓｈプラットフォーム（Ｃａｓｔａｎｅｔ等）では、あらかじめ設定したコンテンツだけがＰｕｓｈの対象となり、クライアント側の要求の変化に柔軟に対応できないが、本発明では、レプリカコンテンツデータ１１０に入っていなかったコンテンツは、以降自動的にＰｕｓｈ対象になるため、柔軟なキャッシング処理（レプリケーション）を実現させることができる。
【０１２９】
さらに、今までのＰｕｓｈプラットフォームでは、キャッシュエリアが足りなくならないように、必要なくなったコンテンツを全て手作業でＰｕｓｈ対象から外す必要があった。これに対して、本発明では、コンテンツ毎に設定される優先度に基づいて自動的にＰｕｓｈ対象から外すようにしたので、キャッシュエリア（レプリカコンテンツデータ１１０）が溢れることがない。
【０１３０】
（発明の第２の実施の形態）
第１の実施形態では、レプリカ利用判定部１１２にてレプリカが有効期限を過ぎていると判定された場合には、リクエスト１１７を無条件にサーバノード１１４へリクエスト１１８として転送していた。
【０１３１】
これに対し、本実施形態では、レプリカコンテンツがサーバノード上のオリジナルコンテンツと同一であるかどうかを確認することにより、サーバノード１１４からの無駄なコンテンツのダウンロードを無くすようにしたものである。
【０１３２】
本実施形態の情報中継装置は、リクエスト／コンテンツ転送部１１３の処理が修正される他、第１の実施形態と同様に構成されている。
【０１３３】
リクエスト／コンテンツ転送部１１３は、第１の実施形態と同様に構成される他、サーバノード１１４からコンテンツをダウンロードする際、まず、コンテンツ属性情報のみを取得し、当該コンテンツ属性情報に基づきレプリカコンテンツが最新でない場合にのみコンテンツの全体を取得するようになっている。
【０１３４】
このためのリクエストデータ１１８の内容として、図１２，図１３に示すように２種類が用意されている。
【０１３５】
図１２は本発明の第２の実施形態にて使用されるコンテンツ属性情報だけを取得するリクエスト例を示す図である。
【０１３６】
同図のリクエストでは、リクエストのタイプが「属性情報のみ」であって、そのＵＲＬが「ｈｔｔｐ：／／ｗｗｗ．ａａａ．ｂｂｂ／ｆｏｏ．ｈｔｍｌ」であることを示している。
【０１３７】
ここで、コンテンツの属性情報としては、少なくとも「コンテンツの最終変更時刻（新規コンテンツの場合は作成時刻）」が含まれている。
【０１３８】
図１３はコンテンツ全体を取得するリクエスト例を示す図である。
【０１３９】
同図のリクエストでは、リクエストのタイプが「コンテンツ全体」であって、そのＵＲＬが「ｈｔｔｐ：／／ｗｗｗ．ａａａ．ｂｂｂ／ｆｏｏ．ｈｔｍｌ」であることを示している。
【０１４０】
また、リクエスト／コンテンツ転送部１１３は、入力情報統計データ１０５にオリジナルコンテンツの変更頻度情報を追加する。この情報は例えば以下の式によって求められる。
【０１４１】
変更頻度情報＝コンテンツの全体取得リクエスト回数÷コンテンツの属性取得リクエスト回数
レプリケーション戦略知識１０７は、オリジナルコンテンツの変更頻度を条件に含むことができる。例えばオリジナルコンテンツの変更頻度が所定値範囲の条件であれば、レプリケーション間隔をある値に設定する等の処理である。
【０１４２】
次に、以上のように構成された本実施形態における情報中継装置の動作について、図１４を用いて説明する。
【０１４３】
図１４は本実施形態におけるリクエスト中継処理を説明する流れ図である。
【０１４４】
本実施形態の動作においては第１の実施形態と比較してリクエスト中継処理が変更される。
【０１４５】
まず、レプリカコンテンツが有効期限内である場合には、第１の実施形態と同様な処理が実行される（ｖ１〜ｖ７）。すなわち図９に示すステップＳ１〜Ｓ７と、ステップｖ１〜ｖ７とは同様であるため、その説明は省略する。
【０１４６】
次に、レプリカが有効期限を過ぎていると判定された場合（ｖ５）、リクエス／コンテンツ転送部１１８によりサーバノード１１４にコンテンツ属性取得リクエスト１１８が送信され、当該コンテンツの属性情報が取得される（ｖ８）。
【０１４７】
取得した属性情報に含まれる最終変更時刻と、対応するレプリカの最終レプリカ作成時刻とがリクエスト／コンテンツ転送部１１３にて比較され、オリジナルコンテンツがレプリカより新しいかが判定される（ｖ９）。
【０１４８】
オリジナルコンテンツがレプリカより新しいと判定された場合（ｖ９）、サーバからコンテンツ全体が取得され（ｖ１０）、レプリカコンテンツデータ１１０が更新され（ｖ１１）、さらに、当該ＵＲＬに関する入力情報統計データが変更される。
【０１４９】
また、コンテンツ全体が取得された後（ｖ１０）、当該コンテンツがクライアントノードに返される（ｖ１２）。
【０１５０】
一方、ステップｖ９において、最終レプリカ作成時刻がオリジナルコンテンツの最終変更時刻より遅い場合、レプリカは最新のオリジナルコンテンツと同一であると判定され、レプリカコンテンツがクライアントノード１０１へ返される（ｖ１３）。その後、レプリカ使用回数がインクリメントされる（ｖ１４）。
【０１５１】
上述したように、本発明の実施の形態に係る情報中継装置は、レプリカコンテンツがサーバノード上のオリジナルコンテンツと同一であるかどうかを確認するようにしたので、サーバノード１１４からの無駄なコンテンツのダウンロードを無くすことができ、有効期限を過ぎても変化が無いコンテンツに対するレスポンス時間の短縮が期待できる。
【０１５２】
また、オリジナルコンテンツの更新頻度に基づきレプリケーション間隔を調整することが可能であるので、有効期限が明示的に設定されていないコンテンツのレプリカ更新間隔を確率的な意味で適切に設定することができ、リクエスト中継処理中にコンテンツ全体を取得しなければならない状況が起きにくくなる。
【０１５３】
なお、本実施形態では属性情報の事前要求をクライアントノード１０１からリクエスト１１７があった場合についてのみ説明したが、この属性情報の事前要求は、リクエスト中継処理のみならず、レプリカ更新処理の場合に適用しても良い。この場合、レプリカ更新部１１１がレプリカ更新すべきと判断したときに、属性情報の事前要求が行われ、コンテンツが変更しているときのみダウンロードされることになる。
【０１５４】
（発明の第３の実施の形態）
第１，第２の実施形態は、いわゆるインテリジェントプルと呼ばれる技術を応用したものであるが、本実施形態ではプッシュ技術を利用する。このプッシュ技術利用と関連し、リクエスト／コンテンツ転送部とコンテンツ送信部の間の通信路にマルチキャスト技術が利用されており、これによりサーバノードから複数の情報中継装置に対し能動的にデータを送信することができるようになっている。
【０１５５】
図１５は本発明の第３の実施形態に係る情報中継装置を適用したプロキシサーバを含むネットワークシステムの構成例を示すブロック図である。なお、同図に示す情報中継装置２０３はプロキシサーバに含まれるものであるが、両者の関係は第１の実施形態の場合と同様であるので、ここではプロキシサーバの表示を省略している。
【０１５６】
本実施形態に用いられるネットワーク自体や、クライアントノード２０１、プロキシサーバノード及びサーバノード２１１間の関係、さらにはこれら各部の基本的な機能は、第１の実施形態の各ノード１０１，１０３及び１１４の場合と同様であるのでここでは詳細説明を省略する。
【０１５７】
まず、クライアントノード２０１はクライアントノード１０１と同一の構成である。また、クライアントノードから送られるリクエストデータ２０８もリクエストデータ１１７と同一である。
【０１５８】
情報中継装置２０３は、レプリケーション対象ＵＲＬ２０６，レプリカコンテンツデータ２０７，レプリケーション戦略知識２２１及び入力情報統計データ２２２の各データを図示しない記憶手段に保持する。また、これらの各データ及びリクエストデータ２０８に基づき、所定の処理を実行するレプリカ利用判定部２０４，リクエスト／コンテンツ転送部２０５及び登録削除判断部２２３を備えている。
【０１５９】
ここでまず、レプリカ利用判定部２０４は、リクエストデータ２０８に含まれるＵＲＬのコンテンツがレプリケーション対象ＵＲＬ２０６に存在すればレプリカコンテンツデータ２０７から当該コンテンツをクライアントノードに返し、存在しなければレプリケーション対象ＵＲＬ２０６に当該ＵＲＬを追加し、サーバノード２１１に新規レプリケーション対象コンテンツとして登録するリクエスト２０９を送る。
【０１６０】
また、レプリカ利用判定部２０４は、リクエストデータ２０８に基づき、そのＵＲＬ別に、最新リクエスト発行時刻を入力情報統計データ２２２として保持させる。
【０１６１】
リクエスト／コンテンツ転送部２０５は、サーバノード２１１から送られて来たコンテンツデータ２１０のうち、レプリケーション対象ＵＲＬ２０６に登録されているＵＲＬのコンテンツのみをレプリカコンテンツデータ２０７に記録する。
【０１６２】
レプリケーション対象ＵＲＬ２０６は、情報中継装置２０３がレプリケーション対象とするコンテンツのＵＲＬを記録するデータエリアである。例えば図１６の形態のデータ構造を持つ。
【０１６３】
図１６は本実施形態におけるレプリケーション対象ＵＲＬのデータ構造例を示す図である。
【０１６４】
レプリカコンテンツデータ２０７は、レプリカコンテンツを記録するデータエリアである。例えば図１７の形態のデータ構造を持つ。
【０１６５】
図１７は本実施形態におけるレプリカコンテンツデータのデータ構造例を示す図である。
【０１６６】
レプリケーション戦略知識２２１には、レプリカコンテンツデータ２０７内のレプリカコンテンツを削除する条件を示すデータである。この条件は、「最新のリクエスト発生が現在時刻の３日前」や「最新のリクエスト発生が現在時刻の３日前 ＡＮＤ 当該ＵＲＬが固定コンテンツでない」等である。
【０１６７】
登録削除判断部２２３は、入力情報統計データ２２２の最新リクエスト発行時刻及びレプリケーション戦略知識２２１の登録削除条件から登録削除すべきＵＲＬを判断する。同判断部２２３は、あるレプリカコンテンツを登録削除すべきと判断したときには、レプリケーション対象ＵＲＬ２０６及びレプリカコンテンツデータ２０７から対応するデータを削除するとともに、サーバノード２１１に登録削除データを送信する。
【０１６８】
一方、サーバノード２１１は、コンテンツデータ２１４，レプリケーション対象ＵＲＬ２１６及びレプリケーション配送先装置名２１７の各データを図示しない記憶手段に保持するとともに、これらのデータに関連して一定の処理を行うコンテンツ送信部２１２，更新検出部２１３及びレプリケーション対象ＵＲＬ登録部２１５を備えている。
【０１６９】
レプリケーション対象ＵＲＬ登録部２１５は、リクエストデータ２０９に含まれるＵＲＬをレプリケーション対象ＵＲＬ２１６に登録するとともに、リクエストデータ２０９の送信元の情報中継装置名をレプリケーション配送先装置名２１７に登録する。
【０１７０】
また、レプリケーション対象ＵＲＬ登録部２１５は、情報中継装置２０３の登録削除判断部２２３から削除要求データ２２４を受けると、当該データ２２４に含まれるＵＲＬをレプリケーション対象ＵＲＬ２１６から削除し、対応するデータをレプリケーション配送先装置名２１７から削除する。
【０１７１】
レプリケーション対象ＵＲＬ２１６は、サーバノード２１１から情報中継装置２０３にレプリケーションのために送信するコンテンツのＵＲＬリストである。複数の情報中継装置２０３からリクエストデータ２０９を受けている場合、各情報中継装置を区別せず記録する。例えば情報中継装置のレプリケーション対象ＵＲＬ２０６と同様な図１６の形態を持つ。
【０１７２】
コンテンツデータ２１４は、サーバノード２１１がオリジナルデータを持つコンテンツデータの集合である。
【０１７３】
更新検出部２１３は、コンテンツデータ２１４の変化を検知し、それがレプリケーション対象ＵＲＬ２１６に含まれていれば、ＵＲＬとコンテンツデータ実体をコンテンツ送信部２１２へ送る。
【０１７４】
更新検出部２１３におけるコンテンツデータの変化を検知する方法としては、例えば以下のような何種類かの方法が考えられる。
【０１７５】
Ａ．一定時間毎に全てのコンテンツの最終更新時刻を確認し、前回の確認時刻よりも後に更新が起きたコンテンツを見つける。
【０１７６】
Ｂ．コンテンツを変更する時に使用するツールから、変更後のコンテンツをコンテンツデータ２１４に記録する際に更新検出部２１３に知らせる。
【０１７７】
Ｃ．ＯＳやハードウェアで、記憶装置上でデータの変化があったことを検出する機能が備わっている場合、データ変化を検出した時点で更新検出部２１３に知らせる。
【０１７８】
コンテンツ送信部２１２は、更新検出部２１３から送られたＵＲＬとコンテンツの組を、レプリケーション配送先装置名２１７に登録されている全ての情報中継装置２０３に向けて送信する。
【０１７９】
次に、以上のように構成された本実施形態における情報中継装置の動作について、図１８、図１９、図２０及び図２１を用いて説明する。
【０１８０】
図１８は本実施形態におけるリクエスト中継処理を説明する流れ図である。
【０１８１】
図１９は本実施形態におけるレプリカ対象登録処理を説明する流れ図である。
【０１８２】
図２０は本実施形態におけるレプリカ配信処理を説明する流れ図である。
【０１８３】
図２１は本実施形態における登録削除処理を説明する流れ図である。
【０１８４】
ここで、図１８及び図１９の処理は一連の流れとして処理が進むが、図２０及び図２１は独立した処理の流れとなる。
【０１８５】
まず、図１８、図１９の動作の流れを説明する。
【０１８６】
ステップｗ１は図９のステップＳ１と同一の処理になる。
【０１８７】
次に、クライアントノード２０１からのリクエストデータ２０８は、レプリカ利用判定部２０４にて受信され（ｗ２）、リクエストに含まれるＵＲＬがレプリケーション対象ＵＲＬ２０６に登録済みかが調べられる（ｗ３）。
【０１８８】
既に登録済みであった場合には（ｗ３）、レプリカ利用判定部２０４によってレプリカコンテンツデータ２０７のレプリカがクライアントノード２０１に返され（ｗ４）、終了する。
【０１８９】
一方、登録済みでなかった場合（ｗ３）、レプリケーション対象ＵＲＬ２０６に、リクエストに含まれるＵＲＬが追加される（ｗ５）。さらに、サーバノード２１１に対し、レプリケーション対象ＵＲＬ登録及びコンテンツ取得のリクエスト２０９が送信される（ｗ６）。
【０１９０】
サーバノード２１１のコンテンツ送信部２１２によって、リクエスト２０９に含まれるＵＲＬのコンテンツが情報中継装置２０３に返され、さらに情報中継装置２０３によりクライアントノード２０１に転送される。（ｗ７）
このリクエスト中継処理に連動してレプリカ対象登録処理が図１９に示すようにして実行される。
【０１９１】
まず、リクエスト２０９に含まれるＵＲＬはレプリケーション対象ＵＲＬ登録部２１５に引き渡され、このＵＲＬがサーバノード２１１のレプリケーション対象ＵＲＬに追加される（ｘ１）。さらに、リクエスト２０９の送信元装置の識別名がレプリケーション対象ＵＲＬ登録部２１５によりレプリケーション配信先装置名２１７に追加される（ｘ２）。
【０１９２】
次にレプリカ配信処理について説明する。
【０１９３】
まず、コンテンツデータ２１４内のコンテンツの内容変更もしくは新規作成が更新検出部２１３で検知される（ｙ１）。
【０１９４】
変化を検知したコンテンツがレプリケーション対象ＵＲＬ２１６に含まれるコンテンツか否か更新検出部２１３により判断される（ｙ２）。
【０１９５】
ここで、レプリケーション対象であった場合には、コンテンツ送信部２１２を通じてレプリケーション配送先装置名２１７に登録されている装置にコンテンツ２１０が送信される（ｙ３）。この送信の際には、マルチキャスト技術が利用され、これによりサーバノードから複数の情報中継装置２０３に対し能動的にデータ送信が行われる。図１５に示すのはこの複数の情報中継装置２０３のうちの一つである。
【０１９６】
情報中継装置２０３においては、サーバノード２１１から送られて来たコンテンツ２１０のＵＲＬが、レプリケーション対象ＵＲＬ２０６に含まれるかどうかがリクエスト／コンテンツ転送部２０５によって判定される（ｙ４）。レプリケーション対象ＵＲＬに含まれる場合には、レプリカコンテンツデータ２０７はコンテンツ２１０によって更新される（ｙ５）。
【０１９７】
このように、レプリカ対象登録処理によって、レプリカ対象がプッシュ技術を利用したサーバノード２１１に登録され、さらに、その登録ＵＲＬについてレプリカ配信処理によって情報中継装置２０３に配布される。
【０１９８】
ここで、サーバノード２１１に登録されるレプリケーション対象ＵＲＬが増えすぎないようにするために、情報中継装置２０３によって登録削除処理が実行される。
【０１９９】
図２１に示す登録削除処理では、まず、登録削除判断部２２３によって登録削除判断が開始され、そのために、入力情報統計データ２２２の最新リクエスト発行時刻及びレプリケーション戦略知識２２１の登録削除条件が読み出される（ｚ１）。
【０２００】
つづいて、最新リクエスト発行時刻に基づき、各ＵＲＬについて、登録削除条件を満たしているか否かが判断される（ｚ２）。
【０２０１】
その結果、登録削除条件を満たすＵＲＬがあれば、そのＵＲＬに関連したレプリケーション対象ＵＲＬ２０６及びレプリカコンテンツデータ２０７が削除され（ｚ３）、サーバノード２１１に対して削除要求データ２２４が出力される（ｚ４）。
【０２０２】
サーバノード２１１においては、削除要求データ２２４を受け取ったレプリケーション対象ＵＲＬ登録部２１５により、同データ２２４に含まれるＵＲＬについてのレプリケーション対象ＵＲＬ２１６及びレプリケーション配送先装置名２１７についての情報が削除される（ｚ５）。
【０２０３】
上述したように、本発明の実施の形態に係る情報中継装置は、サーバノード２１１におけるオリジナルコンテンツデータの変更と連動してレプリケーション処理が起きるようになっているので、情報中継装置中のレプリカコンテンツデータは常に最新状態に保たれ、クライアントノードからのリクエストに迅速に対応することができる。
【０２０４】
すなわち今までのＰｒｏｘｙサーバは一度取得したコンテンツはそのまま保持するだけなので、オリジナルが更新されたら、次回のブラウザからのアクセス時にもう一度サーバから転送し直さなければならなかった。しかし本発明では、常にＰｒｏｘｙの持つコンテンツが最新であるため、ブラウザから見た平均レスポンス時間の向上を見込むことができる。
【０２０５】
なお、本実施形態では、サーバノード２１１上でコンテンツデータ２１４の変更が起きた時点で変更されたコンテンツ自体を情報中継装置２０３に送信するようにしたが、本発明はこのような形態に限られるものではない。例えば第２の実施形態と組み合わせ、コンテンツデータ２１４の変更時にはコンテンツ自体でなく、その属性情報のみをリクエスト／コンテンツ転送部２０５に送信する。そして、同転送部２０５にてレプリカコンテンツが最新のものであるか否かを判断した上で、レプリカが最新でない場合にのみ、リクエスト／コンテンツ転送部２０５から同コンテンツのリクエスト１１８を発行し、レプリカを更新するようにしてもよい。
【０２０６】
（発明の第４の実施の形態）
第１，第２及び第３の実施形態では、コンテンツのＵＲＬ及び実体のみについてのレプリケーションについて説明しているが、本実施形態では、コンテンツ毎に設定されているアクセスコントロール情報をレプリカコンテンツと共に保存する場合を説明する。
【０２０７】
本実施形態の情報中継装置は、アクセスコントロール判断部が設けられ、レプリカコンテンツデータ１１０，２０７にアクセスコントロール情報が保持されるようになっている他、第１〜第３の実施形態と同様に構成されている。
【０２０８】
ここで、アクセスコントロール情報とは、「Ａというユーザはこのコンテンツを見ることができる」といった内容の情報であり、これによりクライアントノードの利用者毎にアクセスできるコンテンツを制限することができる。
【０２０９】
アクセスコントロール判断部は、このアクセスコントロール情報に基づいて、コンテンツアクセス制限を実行する。
【０２１０】
このように構成された本実施形態の情報中継装置の動作としては、まず、クライアントからのリクエストデータにユーザ識別名が加わる。
【０２１１】
情報中継装置内のレプリカコンテンツデータに登録されたアクセスコントロール情報と、クライアントユーザ識別名とがアクセスコントロール判断部により比較される。その結果、アクセスが許されたユーザにのみレプリカコンテンツが返される。
【０２１２】
上述したように、本発明の実施の形態に係る情報中継装置は、コンテンツと共にアクセスコントロール情報を付加して配布するようにしたので、アクセスコントロールが必要なコンテンツに対しても、クライアントから見た時のレスポンスタイムを短縮することができる。
【０２１３】
なお、同様な場合、第１〜第３の実施形態では、ユーザ毎のアクセスコントロール情報を得るためにはサーバノードに問い合わせる必要がある。
【０２１４】
（発明の第５の実施の形態）
上記第１〜第４の実施形態は、情報中継装置をインターネットのプロキシサーバに適用する例で説明したが、本実施形態ではファイルサーバシステムに適用する場合を説明する。
【０２１５】
図２２は本発明の第５の実施形態に係る情報中継装置を適用するファイルサーバシステムの全体構成例を示す図である。
【０２１６】
このシステムは、本社３０１に大規模ファイルサーバ３０２が設置され、これが第１〜第４の実施形態のサーバノード１１４，２１１に対応する。この大規模ファイルサーバ３０２は、比較的低速なＬＡＮを介して本社３０１内の各部門に設けられた小規模ファイルサーバ３０３，３０４に接続され、また公衆回線を介して各支社の小規模ファイルサーバ３０５，３０６に接続されている。
【０２１７】
これらの小規模ファイルサーバ３０３〜３０６に情報中継装置１２２，２０３が設けられる。
【０２１８】
各小規模ファイルサーバ３０３〜３０６は、比較的小規模の容量のファイルサーバであり、高速ＬＡＮでその部門若しくは支社内のクライアントにファイル情報を提供できるようになっている。また、自己が有しない情報を要求された場合には、同情報を大規模ファイルサーバ３０２に請求する。この情報が第１〜第４実施形態のコンテンツに相当する。また、ファイル検索情報がＵＲＬに相当する。
【０２１９】
また、大規模ファイルサーバ３０２は、全ての情報を格納するものであり、小規模ファイルサーバ３０３〜３０６からの要求に応じてデータを送信するようになっている。
【０２２０】
このように構成されたファイルサーバシステムでは、クライアント〜小規模ファイル〜大規模ファイルサーバ間が、第１〜第４の実施形態におけるクライアントノード〜プロキシサーバノード〜サーバノード間と同様な関係となる。
【０２２１】
したがって、その部門や支社においてある程度以上の頻度で使用される情報は、容量の少ない小規模データベースに格納され、使用しない情報は小規模データベースから排除されていくことになる。
【０２２２】
上述したように、本発明の実施の形態に係る情報中継装置は、第１〜第４の実施形態と同様な構成をファイルサーバシステムに設けたので、元のファイルサーバに、セクション毎に設けられた小ファイルサーバが問合せに行くような場合でも、第１〜第４の実施形態と同様な効果が得られる。
【０２２３】
また、本発明の適用範囲は、インターネットやファイルサーバシステムに限られるものでなく、実施形態に示した状況と類似する状況が生じる計算機・通信システムに対しては種々適用することが可能である。例えばＦＴＰ等にも適用可能である。
【０２２４】
さらに、実施形態に説明した装置は、記憶媒体に格納したプログラムをコンピュータに読み込ませることで実現させることができる。
【０２２５】
ここで本発明における記憶媒体としては、磁気ディスク、フロッピーディスク、ハードディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、半導体メモリ等、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。
【０２２６】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行してもよい。
【０２２７】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
【０２２８】
また、記憶媒体は１つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何らの構成であってもよい。
【０２２９】
なお、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
【０２３０】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【図面の簡単な説明】
【０２３１】
【図１】本発明の第１の実施形態に係る情報中継装置を適用したプロキシサーバを含むネットワークシステムの構成例を示すブロック図。
【図２】ＵＲＬと送信元のＩＤの一例を示す図。
【図３】入力情報統計データ及びレプリケーション戦略決定部で使用されるデータの内容例を示す図。
【図４】入力情報統計データの保存形態の一例を示す図。
【図５】レプリケーション戦略知識の内容例を示す図。
【図６】ＵＲＬ別レプリケーション間隔の内容例を示す図。
【図７】レプリカコンテンツＵＲＬの一例を示す図。
【図８】レプリカコンテンツデータの一例を示す図。
【図９】同実施形態におけるリクエスト中継処理を説明する流れ図。
【図１０】同実施形態におけるレプリケーション戦略決定処理を説明する流れ図。
【図１１】同実施形態におけるレプリカ更新処理を説明する流れ図。
【図１２】本発明の第２の実施形態にて使用されるコンテンツ属性情報だけを取得するリクエスト例を示す図。
【図１３】コンテンツ全体を取得するリクエスト例を示す図。
【図１４】同実施形態におけるリクエスト中継処理を説明する流れ図。
【図１５】本発明の第３の実施形態に係る情報中継装置を適用したプロキシサーバを含むネットワークシステムの構成例を示すブロック図。
【図１６】同実施形態におけるレプリケーション対象ＵＲＬのデータ構造例を示す図。
【図１７】同実施形態におけるレプリカコンテンツデータのデータ構造例を示す図。
【図１８】同実施形態におけるリクエスト中継処理を説明する流れ図。
【図１９】同実施形態におけるレプリカ対象登録処理を説明する流れ図。
【図２０】同実施形態におけるレプリカ配信処理を説明する流れ図。
【図２１】同実施形態における登録削除処理を説明する流れ図。
【図２２】本発明の第５の実施形態に係る情報中継装置を適用するファイルサーバシステムの全体構成例を示す図。
【符号の説明】
【０２３２】
１０１…クライアントノード、１０３…プロキシサーバノード、１０４…入力解析部、１０５…入力情報統計データ、１０６…レプリケーション戦略決定部、１０７…レプリケーション戦略知識、１０８…ＵＲＬ別レプリケーション間隔、１０９…レプリカコンテンツＵＲＬ、１１０…レプリカコンテンツデータ、１１１…レプリカ更新部、１１２…レプリカ利用判定部、１１３…リクエスト／コンテンツ転送部、１１４…サーバノード、１１５…コンテンツ送信部、１１６…コンテンツデータ、１１７，１１８…コンテンツ取得リクエスト、１２１…公衆回線、１２２…情報中継装置、２０１…クライアントノード、２０２…コンテンツ表示部、２０３…情報中継装置、２０４…レプリカ利用判定部、２０５…リクエスト／コンテンツ転送部、２０６…レプリケーション対象ＵＲＬ、２０７…レプリカコンテンツデータ、２０８…リクエストデータ、２０９…リクエストデータ、２１０…コンテンツデータ、２１１…サーバノード、２１２…コンテンツ送信部、２１３…更新検出部、２１４…コンテンツデータ、２１５…レプリケーション対象ＵＲＬ登録部、２１６…レプリケーション対象ＵＲＬ、２１７…レプリケーション配送先装置名、２２１…レプリケーション戦略知識、２２２…入力情報統計データ、２２３…登録削除判断部、３０１…本社、３０２…大規模ファイルサーバ、３０３，３０４，３０５，３０６…小規模ファイルサーバ
【図１】
2004280847.tif 000003
【図２】
2004280847.tif 000004
【図３】
2004280847.tif 000005
【図４】
2004280847.tif 000006
【図５】
2004280847.tif 000007
【図６】
2004280847.tif 000008
【図７】
2004280847.tif 000009
【図８】
2004280847.tif 000010
【図９】
2004280847.tif 000011
【図１０】
2004280847.tif 000012
【図１１】
2004280847.tif 000013
【図１２】
2004280847.tif 000014
【図１３】
2004280847.tif 000015
【図１４】
2004280847.tif 000016
【図１５】
2004280847.tif 000017
【図１６】
2004280847.tif 000018
【図１７】
2004280847.tif 000019
【図１８】
2004280847.tif 000020
【図１９】
2004280847.tif 000021
【図２０】
2004280847.tif 000022
【図２１】
2004280847.tif 000023
【図２２】
2004280847.tif 000024