(57)【要約】【課題】  キャッシュ効率が低下しやすいことを解決するキャッシュ装置、サーバ、キャッシュシステム、キャッシュ方法、及びプログラムを提供する。【解決手段】  本発明のキャッシュ装置は、ファイルを、ファイルの種類に応じて異なるキャッシングアルゴリズムで保存する。【選択図】      図１
2008293281.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存することを特徴とするキャッシュ装置。
【請求項２】
前記ファイルの種類に応じて、前記ファイルを検索又は保存するキャッシュを決定するキャッシュ振分け部
を備えることを特徴とする請求項１に記載のキャッシュ装置。
【請求項３】
前記ファイルを、前記ファイルの種類に応じて、それぞれ異なるキャッシングアルゴリズムで保存する複数のキャッシュ
を備えることを特徴とする請求項２に記載のキャッシュ装置。
【請求項４】
前記ファイル振分け部は、
前記ファイルの種類と前記キャッシュとの対応表
を含むことを特徴とする請求項３に記載のキャッシュ装置。
【請求項５】
前記ファイルを保存するＷｅｂサーバと、
前記Ｗｅｂサーバ上の前記ファイルを要求するクライアントと、
前記クライアントが接続され、前記クライアントの代理としてＷｅｂサーバとの接続を行なうプロキシサーバと、
前記Ｗｅｂサーバと前記プロキシサーバとが接続されたネットワークと
を備えたキャッシュシステムにおいて、
前記キャッシュ装置は、前記プロキシサーバを含むこと
を特徴とする請求項４に記載のキャッシュ装置。
【請求項６】
前記プロキシサーバは、
前記キャッシュが前記ファイルを保存している場合、前記ファイルを前記クライアントに送信し、
前記キャッシュが前記ファイルを保存していなかった場合、前記Ｗｅｂサーバから前記ファイルを受信し、前記クライアントに転送すること
を特徴とする請求項５に記載のキャッシュ装置。
【請求項７】
前記Ｗｅｂサーバから前記プロキシサーバへの前記ファイルの送信はHTTPプロトコルで行われ、
前記プロキシサーバは、
前記ファイルの拡張子に対応するHTTPプロトコルのContent-Typeを決定するファイル種類判別部と、
を備えることを特徴とする請求項６に記載のキャッシュ装置。
【請求項８】
前記ファイル種別判別部は、
拡張子とContent-Typeの対応表
を含むことを特徴とする請求項７に記載のキャッシュ装置。
【請求項９】
前記ファイルの種類と前記キャッシュの対応表は、
Content-Typeとキャッシュ番号の対応表を含み、
前記キャッシュ振分け部は、
前記ファイルのContent-Typeに対応するキャッシュ番号のキャッシュを決定し、
前記キャッシュに前記ファイルが存在するか検索すること
を特徴とする請求項８に記載のキャッシュ装置。
【請求項１０】
前記キャッシュ振分け部は、前記キャッシュが、前記ファイルに設定された有効期限を利用する設定であるか判断すること
を特徴と請求項２乃至９のいずれかに記載のキャッシュ装置。
【請求項１１】
前記キャッシュ振分け部は、
前記キャッシュと当該キャッシュが有効期限を利用する設定であるかを示すフラグとの対応表
を含むことを特徴とする請求項１０に記載のキャッシュ装置。
【請求項１２】
前記キャッシュが有効期限を利用する設定であるかを示すフラグは、前記キャッシュが前記Ｗｅｂサーバから受信した前記ファイルのHTTPプロトコルにおけるExpiresフィールドの値を利用する設定であるかを示すフラグであること
を特徴とする請求項１１に記載のキャッシュ装置。
【請求項１３】
ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存すること
を特徴とするサーバ。
【請求項１４】
ファイルを保存するＷｅｂサーバと、
前記Ｗｅｂサーバ上の前記ファイルを要求するクライアントと、
前記クライアントが接続され、前記クライアントの代理としてＷｅｂサーバとの接続を行なうプロキシサーバを備えたキャッシュ装置と、
前記Ｗｅｂサーバと前記プロキシサーバとが接続されたネットワークと
を備え、
前記キャッシュ装置は、
前記ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存すること
を特徴とするキャッシュシステム。
【請求項１５】
ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存すること
を特徴とするキャッシュ方法。
【請求項１６】
前記ファイルの種類に応じて、前記ファイルを検索又は保存する前記キャッシュを決定すること
を特徴とする請求項１５に記載のキャッシュ方法。
【請求項１７】
クライアントが、Ｗｅｂサーバ上の前記ファイルを要求し、
前記ファイルが存在するＵＲＬ（Uniform Resource Locator）のファイル名に付された拡張子から前記ファイルの拡張子を判別し、
前記ファイルの拡張子が拡張子-Content-Type対応表に登録されているか判断し、
前記ファイルの拡張子が拡張子-Content-Type対応表に登録されている場合、前記ファイルの拡張子に対応するHTTPプロトコルのContent-Typeを決定し、
前記Content-Typeに対応するキャッシュ番号のキャッシュを決定し、
前記キャッシュに前記ファイルが存在するか検索すること
を特徴とする請求項１６に記載のキャッシュ装置。
【請求項１８】
前記キャッシュが、前記ファイルに設定された有効期限を利用する設定であるか判断すること
を特徴と請求項１７に記載のキャッシュ方法。
【請求項１９】
前記ファイルが決定された前記キャッシュに存在する場合は、前記キャッシュがExpiresフィールドの値を利用する設定であるか判断し、
前記キャッシュがExpiresフィールドの値を利用する設定である場合は、前記ファイルのExpiresパラメータを取得し、現在の時刻が前記ファイルのExpiresパラメータの値を超えているか判断し、
前記キャッシュがExpiresフィールドの値を利用する設定ではない場合、又は、現在の時刻が前記ファイルのExpiresパラメータの値を超えていない場合、
前記キャッシュに設定されたアルゴリズムに従い、前記キャッシュ中の前記ファイルの前記キャッシュ内の価値パラメータを増大させ、
前記ファイルを前記キャッシュから前記クライアントに転送すること
を特徴とする請求項１８に記載のキャッシュ方法。
【請求項２０】
前記ファイルの拡張子が拡張子-Content-Type対応表に登録されていない場合、前記ファイルが決定された前記キャッシュに存在しない場合、又は、前記ファイルが決定された前記キャッシュに存在する場合で、前記キャッシュがExpiresフィールドの値を利用する設定であり、現在の時刻が前記ファイルのExpiresパラメータの値を超えている場合であって、前記キャッシュ中の前記ファイルを削除した場合、
前記Ｗｅｂサーバへアクセスを行い、
前記Ｗｅｂサーバ上の前記ファイルのhttpヘッダを取得し、
前記httpヘッダよりContent-Typeを取得し、
前記Content-Typeが拡張子とContent-Typeの対応表に登録されているか判断し、
前記Content-Typeが拡張子とContent-Typeの対応表に登録されている場合は、前記Content-Typeとキャッシュ番号の対応表から前記ファイルのContent-Typeに対応するキャッシュ番号のキャッシュを決定し、
前記Content-Typeが前記拡張子とContent-Typeの対応表に登録されていない場合は、前記拡張子とContent-Typeの対応表に前記Content-Typeを登録した後、前記Content-Typeとキャッシュ番号の対応表から前記ファイルのContent-Typeに対応するキャッシュ番号のキャッシュを決定し、
前記Ｗｅｂサーバから、前記ファイルを取得し、
前記ファイルを前記クライアントに転送し、
前記ファイルを決定された前記キャッシュに転送し、
前記キャッシュに設定されたアルゴリズムに従い、前記ファイルの前記キャッシュ内の価値パラメータを設定し、
前記キャッシュがExpiresフィールドの値を利用する設定である場合、前記キャッシュ中のExpiresパラメータに前記httpヘッダのExpiresフィールドの値を設定する
ことを特徴とする請求項１９に記載のキャッシュ方法。
【請求項２１】
コンピュータに、
ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存すること
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、キャッシュ装置、サーバ、キャッシュシステム、キャッシュ方法、及びプログラムに関し、特に、ファイルを、ファイルの種類に応じて異なるキャッシングアルゴリズムで保存するキャッシュ装置、サーバ、キャッシュシステム、キャッシュ方法、及びプログラムに関する。
【背景技術】
【０００２】
キャッシュコンピュータを備えたファイルの送受信システムの一例が、特許文献１に記載されている。このファイルの送受信システムにおけるキャッシュコンピュータは、キャッシュファイルの種類を判断する。そして、キャッシュコンピュータは、キャッシュファイルの種類ごとに定められた削除の順序にもとづいて、キャッシュファイルの中から所定個数のキャッシュファイルを選択し、削除する。
【０００３】
【特許文献１】特開２０００−３５７１１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述したファイル送受信システムにおけるキャッシュコンピュータは、キャッシュファイルの種類に応じた処理を行っている。しかしながら、要求されるファイルのサイズ等の特性にばらつきがある状況では、キャッシュ効率が低下しやすいという問題点があった。その理由は、上述したキャッシュコンピュータは、キャッシュファイルの種類ごとに削除の順序を定めている特定のアルゴリズムを使用しているが、キャッシュファイルの種類ごとに異なるアルゴリズムを使用していないためである。
【０００５】
例えば、特許文献１に記載のファイル送受信システムでは、文書ファイルの削除の順序を画像ファイルの削除の順序より先にするアルゴリズムを使用する。しかしながら、文書ファイルに対するキャッシングアルゴリズムと、画像ファイルに対するキャッシングアルゴリズムとをそれぞれ別々に持っているわけではない。
【０００６】
ここで、例えば、キャッシュ上のファイル削除順序（ファイル置換順序）を決定するための計算量が多いアルゴリズムが、文書ファイルと画像ファイルの両方に対して使用されているとする。この場合、文書ファイルのようなサイズの小さいファイルが頻繁に要求されるようなときでも、そのアルゴリズムが適用されることになる。その結果、キャッシュ上のファイル削除順序を決定するための計算に時間がかかり、文書ファイルのダウンロード時間よりもキャッシュにおけるアルゴリズム処理時間の方が大きくなることが起こりうる。
【０００７】
本発明の目的は、上述した関連技術の課題であるキャッシュ効率が低下しやすいことを解決するキャッシュ装置、サーバ、キャッシュシステム、キャッシュ方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明のキャッシュ装置は、ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存することを特徴とする。
【０００９】
本発明のサーバは、ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存することを特徴とする。
【００１０】
本発明のキャッシュシステムは、ファイルを保存するＷｅｂサーバと、前記Ｗｅｂサーバ上の前記ファイルを要求するクライアントと、前記クライアントが接続され、前記クライアントの代理としてＷｅｂサーバとの接続を行なうプロキシサーバを備えたキャッシュ装置と、前記Ｗｅｂサーバと前記プロキシサーバとが接続されたネットワークとを備え、前記キャッシュ装置は、前記ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存することを特徴とする。
【００１１】
本発明のキャッシュ方法は、ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存することを特徴とする。
【００１２】
本発明のプログラムは、コンピュータに、ファイルを、前記ファイルの種類に応じて異なるキャッシングアルゴリズムで保存することを実行させることを特徴とする。
【発明の効果】
【００１３】
本発明は、キャッシュ効率を向上させることができるという効果を有している。その理由は、ファイルを、ファイルの種類に応じて異なるキャッシングアルゴリズムで保存するためである。
【発明を実施するための最良の形態】
【００１４】
次に、本発明の第１の実施例について図面を参照して詳細に説明する。
【００１５】
図１は、本発明の第１の実施例におけるキャッシュシステム１００１の構成を示す図である。キャッシュシステム１００１は、クライアント１００、クライアント１１０、クライアント１２０、キャッシュ装置２００、及びインターネット４００を備える。また、キャッシュシステム１００１は、World Wide Webサーバ５００（以下、Ｗｅｂサーバ５００と称す）、画像（静止画、又は動画）ファイル５１０、文書ファイル５２０を備える。クライアント１００〜１２０、キャッシュ装置２００、Ｗｅｂサーバ５００は、プロセッサを備えた情報処理装置であり、プログラム記憶媒体に記憶されたプログラムを実行することにより後述の機能を実現する。クライアント１００〜１２０の数は例として３つであるが、それより多くても少なくてもよい。以後クライアント１００をクライアント１００〜１２０の代表として説明する。
【００１６】
クライアント１００は、Ｗｅｂサーバ５００上の画像ファイル５１０、文書ファイル５２０等のファイルを後述のプロキシサーバ２１０、インターネット４００を介して要求する端末である。
【００１７】
インターネット４００は、プロキシサーバ２１０を含むキャッシュ装置２００とＷｅｂサーバ５００とが接続されたネットワークである。
【００１８】
Ｗｅｂサーバ５００は、画像ファイル５１０、文書ファイル５２０等のファイルを保存、管理するサーバである。Ｗｅｂサーバ５００は、インターネット４００を介してこれらファイルの提供を行う。
【００１９】
キャッシュ装置２００は、クライアント１００〜１２０、インターネット４００に接続された装置である。キャッシュ装置２００は、プロキシサーバ２１０、複数のキャッシュ（本実施例では、キャッシュディスク３００〜３２０を例として示す。キャッシュディスク３００〜３２０はハードディスクに限らず、半導体メモリからなるキャッシュを使用してもよい。）を備える。キャッシュディスク３００〜３２０の数は例として３つであるが、それより多くても少なくてもよい。
【００２０】
プロキシサーバ２１０には、クライアント１００〜１２０、キャッシュディスク３００〜３２０が接続されている。プロキシサーバ２１０は、クライアント１００〜１２０を代理してインターネット４００を介してＷｅｂサーバ５００に対する接続を行なう。プロキシサーバ２１０は、キャッシュディスク３００〜３２０が、クライアント１００が要求するファイルを保存している場合、そのファイルをクライアント１００に送信する。キャッシュディスク３００〜３２０がそのファイルを保存していなかった場合、Ｗｅｂサーバ５００からファイルを受信し、クライアント１００に転送する。
【００２１】
プロキシサーバ２１０は、ファイル種別判別部２１１、キャッシュディスク振分け部２１２を備える。
【００２２】
ファイル種別判別部２１１は、ファイルの拡張子に対応するHyperText Transfer Protocol（以下、HTTPプロトコルと称す）のContent-Typeを決定する。ファイル種別判別部２１１は、拡張子-Content-Type対応表２１１１を備える。図２は、拡張子-Content-Type対応表２１１１の一例を示す図である。初期状態ですでに一般的な対応が登録されているものとする。
【００２３】
キャッシュディスク振分け部２１２は、Content-Type-キャッシュディスク番号対応表２１２１、キャッシュディスク番号-Expiresフィールド対応表２１２２を備える。
【００２４】
キャッシュディスク振分け部２１２は、Content-Type-キャッシュディスク番号対応表２１２１を参照し、クライアント１００から要求されたファイルのContent-Typeに対応するキャッシュディスク番号のキャッシュディスクを決定する。例えば、キャッシュディスク３００（キャッシュディスク番号１のキャッシュディスク）が、クライアント１００から要求されたファイルのContent-Typeに対応するものであったとする。キャッシュディスク振分け部２１２は、キャッシュディスク番号-Expiresフィールド対応表２１２２を参照して、キャッシュディスク３００がファイルに設定された有効期限を利用する設定であるかどうかを判断する。
【００２５】
図３はContent-Type-キャッシュディスク番号対応表２１２１であり、図４はキャッシュディスク番号-Expiresフィールド対応表２１２２である。本実施例では、キャッシュディスク番号１，２，３は、それぞれキャッシュディスク３００，３１０，３２０に対応するものとする。キャッシュディスク番号-Expiresフィールド対応表２１２２は、それぞれのキャッシュディスク３００〜３２０に対応して、それぞれのキャッシュディスク３００〜３２０（のキャッシュディスク番号）が有効期限を利用する設定であるかどうかを示すフラグ（Expiresフィールドを使うか？  Yes/No）を保存している。
【００２６】
また、キャッシュディスク番号-Expiresフィールド対応表２１２２は、それぞれのキャッシュディスク３００〜３２０が使用するアルゴリズムの番号を保存している。拡張子-Content-Type対応表２１１１、Content-Type-キャッシュディスク番号対応表２１２１、及びキャッシュディスク番号-Expiresフィールド対応表２１２２はプロキシサーバ管理者が設定可能である。
【００２７】
キャッシュディスク３００〜３２０は、キャッシュディスク番号-Expiresフィールド対応表２１２２に従い、それぞれ異なるキャッシングアルゴリズム（キャッシュの置換アルゴリズム）でファイルを保存する。例えば、キャッシュディスク３００とキャッシュディスク３１０は、ＬＲＵ(Least Recently Used)アルゴリズムでファイルを保存し、キャッシュディスク３２０は、Landlord Algorithmでファイルを保存する。また、キャッシュディスク３００〜３２０は、保存するそれぞれのファイルのファイル名と、それぞれのファイルのExpiresパラメータ、価値パラメータ（前述のＬＲＵ、Landlord  Algorithm等における価値パラメータ）、Expiresパラメータ、格納領域を示すアドレス、Ｗｅｂサーバ５００のURLと、の対応表を備える（図示せず）。
【００２８】
次に、本発明の第１の実施例の動作について、図５及び図６のフローチャートを参照して詳細に説明する。
【００２９】
図５は、クライアント１００からＷｅｂサーバ５００にあるファイルの取得要求を受けたときのキャッシュ装置２００の動作を示したフローチャートである。
【００３０】
まず、図５のフローチャートを参照すると、クライアント１００がＷｅｂサーバ５００にある画像ファイル５１０又は、文書ファイル５２０を要求する（ステップ１００）。ここでは例として、クライアント１００は、文書ファイル５２０を要求したものとする。クライアント１００からの要求には文書ファイル５２０が存在するUniform Resource Locator（ＵＲＬ）が含まれている。プロキシサーバ２１０はこのＵＲＬのファイル名に付された拡張子を参照し、文書ファイル５２０の拡張子を判別する（ステップ１０１）。そして、プロキシサーバ２１０は、ファイル種別判別部２１１が持つ拡張子-Content-Type対応表２１１１を参照し、当該文書ファイル５２０の拡張子が拡張子-Content-Type対応表２１１１に登録されているか判断する（ステップ１０２）。
【００３１】
当該文書ファイル５２０の拡張子が拡張子-Content-Type対応表２１１１に登録されている場合（ステップ１０２、Yes）、当該文書ファイル５２０に対応するHTTPプロトコルにおけるContent-Typeを決定する（ステップ１０３）。
【００３２】
キャッシュディスク振分け部２１２は、Content-Type-キャッシュディスク番号対応表２１２１を備えている。プロキシサーバ２１０は、Content-Type-キャッシュディスク番号対応表２１２１を参照し、Content-Typeを元に当該Content-Typeに対応するキャッシュディスクを決定する（ステップ１０４）。ここではキャッシュディスク３１０が当該Content-Typeに対応するキャッシュディスクであったとする。プロキシサーバ２１０は、キャッシュディスク３１０において文書ファイル５２０を検索する（ステップ１０５）。即ち、キャッシュディスク３１０が備える対応表において、プロキシサーバ２１０は、文書ファイル５２０のファイル名とＷｅｂサーバ５００のＵＲＬをキーに検索を行う。プロキシサーバ２１０は、同じファイル名が複数存在した場合に備え、Ｗｅｂサーバ５００のＵＲＬについても平行して検索を行い、検索結果の積を取る。
【００３３】
文書ファイル５２０がキャッシュディスク３１０に存在したとする（ステップ１０６、Yes）。キャッシュディスク振分け部２１２は、キャッシュディスク番号-Expiresフィールド対応表２１２２を参照してキャッシュディスク３１０がExpiresフィールドを利用する設定であるか調べる（ステップ１０７）。キャッシュディスク３１０がExpiresフィールドを利用する設定であったとする（ステップ１０７、Yes）。すると、キャッシュディスク振分け部２１２は、当該文書ファイル５２０のExpiresパラメータを取得する。即ち、キャッシュディスク振分け部２１２からExpiresパラメータ取得要求を受けたキャッシュディスク３１０は、キャッシュディスク３１０が保存する各々のファイルのファイル名と各々のファイルのExpiresパラメータとの対応表を参照する。そして、キャッシュディスク３１０は、当該文書ファイル５２０に対応するExpiresパラメータをキャッシュディスク振分け部２１２に転送する（ステップ１０８）。
【００３４】
現在の時刻が文書ファイル５２０のExpiresパラメータの値を超えていた場合（ステップ１０９、Yes）、キャッシュディスク振分け部２１２は、キャッシュディスク３１０中の文書ファイル５２０を削除し（ステップ１１２）、ステップA（図６のステップ２００）へ進む。また、文書ファイル５２０の拡張子が拡張子-Content-Type対応表２１１１に登録されていない場合も（ステップ１０２、No）、ステップA（図６のステップ２００）へ進む。文書ファイル５２０がキャッシュディスク３００〜３２０に存在しなかった場合も（ステップ１０６、No）、ステップA（図６のステップ２００）へ進む。
【００３５】
キャッシュディスク３００がExpiresフィールドを利用する設定では無い場合（ステップ１０７、No）、もしくは  現在の時刻が文書ファイル５２０のExpiresパラメータの値を超えていなかった場合であったとする（ステップ１０９、No）。キャッシュディスク３１０は、キャッシュディスク３１０に対して設定されたアルゴリズムを用いて、キャッシュディスク３１０中の文書ファイル５２０のキャッシュディスク３１０内の価値パラメータを増大させる（ステップ１１０）。例えば、キャッシュディスク３１０は、ＬＲＵアルゴリズムにおいて、当該文書ファイル５２０を最も最近使われたファイルとして、キャッシュディスク３１０が備える対応表の価値パラメータの欄に設定する。プロキシサーバ２１０は、キャッシュディスク３１０から当該文書ファイル５２０をクライアント１００に転送する（ステップ１１１）。
【００３６】
図６は、図５のフローチャートにおいて、キャッシュディスク３１０にクライアント１００が要求する文書ファイル５２０がなく、元の文書ファイル５２０をＷｅｂサーバ５００からダウンロードする場合における、キャッシュ装置２００の動作を示したフローチャートである。若しくは、図６は、現在の時刻が文書ファイル５２０のExpiresパラメータの値を超えていた場合におけるキャッシュ装置２００の動作を示したフローチャートである。
【００３７】
プロキシサーバ２１０は、Ｗｅｂサーバ５００へアクセスを行う（ステップ２００）。プロキシサーバ２１０は、文書ファイル５２０を実際に取得する要求を行う前に、文書ファイル５２０のhttpヘッダ情報だけを取得する要求をＷｅｂサーバ５００に対し行う。そして、プロキシサーバ２１０は、Ｗｅｂサーバ５００からクライアント１００が要求する文書ファイル５２０のhttpヘッダを取得する（ステップ２０１）。プロキシサーバ２１０は、ステップ２００で取得したhttpヘッダより当該文書ファイル５２０のContent-Typeを取得する（ステップ２０２）。
【００３８】
ステップ２０１で得た文書ファイル５２０のContent-Typeと文書ファイル５２０の拡張子の対応が、ファイル種類判別部２１１の持っている拡張子-Content-Type対応表２１１１に存在しなかったとする（ステップ２０３、No）。ファイル種類判別部２１１は、新しい対応として拡張子-Content-Type対応表２１１１に登録を行う（ステップ２０４）。
【００３９】
ステップ２０１で得た文書ファイル５２０のContent-Typeと文書ファイル５２０の拡張子の対応が、ファイル種類判別部２１１の持っている拡張子-Content-Type対応表２１１１に存在したとする（ステップ２０３、Yes）。又は、新しい対応として拡張子-Content-Type対応表２１１１に登録を行ったとする（ステップ２０４）。この両方の場合、キャッシュディスク振分け部２１２は、ステップ２０２で得たContent-Typeより、Content-Typeに対応するキャッシュディスク番号のキャッシュディスク３１０を決定する（ステップ２０５）。ここでは例として、キャッシュディスク３１０が該当するものとする。
【００４０】
そして、プロキシサーバ２１０はＷｅｂサーバ５００より実際に文書ファイル５２０を取得する（ステップ２０６）。プロキシサーバ２１０はクライアント１００に文書ファイル５２０を転送する（ステップ２０７）。プロキシサーバ２１０は文書ファイル５２０をキャッシュディスク３１０に転送し、キャッシュディスク３１０に設定されているアルゴリズムを元に文書ファイル５２０の価値パラメータを設定する（ステップ２０８）。例えば、ＬＲＵアルゴリズムにおいては、文書ファイル５２０が、最も最近使われたファイルとしてキャッシュディスク３１０に設定される。キャッシュディスク３００がExpiresフィールドを利用する設定であったとする（ステップ２０９、Yes）。プロキシサーバ２１０はキャッシュディスク３００中のExpiresパラメータに、ステップ２００で取得した文書ファイル５２０のhttpヘッダのExpiresフィールドの値（Expiresパラメータ）を設定する（ステップ２１０）。以上で本発明の第１の実施例に係る動作が終了する。
【００４１】
上述の本発明の第１の実施例では、プロキシサーバ２１０がファイル種別判別部２１１とキャッシュディスク振分け部２１２とを備えたが、ファイル種別判別とキャッシュディスク振分けの機能だけ別のサーバに移した構成としてもよい。図７は、キャッシュシステム１００１の構成の変形例である。図１と比較し、プロキシサーバ２１０がプロキシサーバ２１０とキャッシュサーバ２２０に分かれていることが異なる点である。
【００４２】
動作の相違点としては、図５に示したフローチャートにおいては、ステップ１０１とステップ１０２との間に、プロキシサーバ２１０からキャッシュサーバ２２０へ要求された文書ファイル５２０の情報を転送するステップが入る。図６に示したフローチャートにおいては、ステップ２０６が変更となり、キャッシュサーバ２２０がプロキシサーバ２１０を介して、Ｗｅｂサーバ５００から文書ファイル５２０を取得することになる。
【００４３】
第１の実施例における発明は、例えば、キャッシュ効率を向上させることができるという効果を有している。その理由は、ファイルを、ファイルの種類に応じて異なるキャッシングアルゴリズムで保存するためである。インターネット４００に存在するファイルには画像、動画、文書等種類があり、種類に応じてファイルサイズ、ダウンロード時間、要求される頻度、更新頻度など、その特性に差が認められる。本発明は、ファイルの種類を判別し、ファイルの種類に応じて異なるキャッシングアルゴリズムで保存する。この結果、例えば、キャッシュの効果が増大することにより、平均ダウンロード待ち時間が減少するという効果を有する。また、例えば、キャッシュの効果が増大することにより、通信料が減少するという効果を有する。
【００４４】
また、キャッシュディスク３００〜３２０がファイルに設定された有効期限を利用するか否かを設定（例えば、httpヘッダに含まれるExpiresフィールドの値を利用するか否かを設定）できることも、キャッシュ効率を向上させることができる理由の一つである。
【００４５】
例えば、文書ファイルは一般に頻繁に更新されるため、キャッシュは、httpヘッダに含まれるExpiresフィールドの値を超過した新鮮で無い文書ファイルを破棄する必要がある。しかし、動画ファイルや音声ファイルは一般にアップロードされた後は不変のため、Expiresフィールドの値は重要ではないことも多くある。動画ファイルや音声ファイルにおいてExpiresフィールドの値を利用しないことによって、有効期限が切れてはいるが実際には破棄する必要の無いファイルをキャッシュに残すことが可能となり、キャッシュ効率を向上させることができる。
【００４６】
次に、本発明の第２の実施例について図面を参照して説明する。本発明の第２の実施例では、ファイル種類判別にContent-Typeではなく拡張子のみを用いる。
【００４７】
まず、本発明の第２の実施例における構成を説明する。図８は、本発明の第２の実施例におけるキャッシュシステム１００１の構成を示す図である。図１に示された本発明の第１の実施例におけるキャッシュシステム１００１と比較して、ファイル種別判別部２１１が存在しない点が異なる。また、キャッシュディスク振分け部２１２内のContent-Type-キャッシュディスク番号対応表２１２１の代わりに、拡張子-キャッシュディスク番号対応表２１２３を備える点が異なる。
【００４８】
次に、本発明の第２の実施例における動作を説明する。第１の実施例における動作を示したフローチャートである図５、図６からの変更点を説明する。
【００４９】
図５に示したフローチャートにおいては、ステップ１０２、１０３、１０４の処理が変更となり、ファイルの拡張子に対応するキャッシュディスク番号のキャッシュディスク３００〜３２０を決定する処理を行う。図６に示したフローチャートにおいては、ステップ２０２、２０３、２０４の処理が不要となる。また、ステップ２０５の処理が変更となり、ファイルの拡張子に対応するキャッシュディスク番号のキャッシュディスク３００〜３２０を決定することになる。
【００５０】
第２の実施例における発明は、ファイルのキャッシュディスク３００〜３２０への振分け等において高速化を図ることができる、という効果を有する。その理由は、例えば、拡張子とContent-Typeの対応関係を調べないためである。そして、要求されたファイル名の拡張子を見て、拡張子から直接、捜索すべきキャッシュディスク３００〜３２０、またはキャッシュするキャッシュディスク３００〜３２０を決定することができるためである。
【産業上の利用可能性】
【００５１】
本発明は、例えば、企業や学校等のローカルネットワークとインターネットの中間のプロキシサーバといった用途に適用できる。また、本発明は、例えば、インターネットサービスプロバイダにおいてユーザに代わってインターネットに接続するプロキシサーバといった用途にも適用可能である。
【図面の簡単な説明】
【００５２】
【図１】本発明の第１の実施例におけるキャッシュシステム１００１の構成を示す図である。
【図２】拡張子-Content-Type対応表２１１１の一例を示す図である。
【図３】Content-Type-キャッシュディスク番号対応表２１２１である。
【図４】キャッシュディスク番号-Expiresフィールド対応表２１２２である。
【図５】クライアント１００からＷｅｂサーバ５００にあるファイルの取得要求を受けたときのキャッシュ装置２００の動作を示したフローチャートである。
【図６】図５のフローチャートにおいて、キャッシュディスク３００にクライアント１００が要求するファイルがなく、元ファイルをＷｅｂサーバ５００からダウンロードする場合における、キャッシュ装置２００の動作を示したフローチャートである。
【図７】キャッシュシステム１００１の構成の変形例である。
【図８】本発明の第２の実施例におけるキャッシュシステム１００１の構成を示す図である。
【符号の説明】
【００５３】
１００    クライアント
１１０    クライアント
１２０    クライアント
１００１    キャッシュシステム
２００    キャッシュ装置
２１０    プロキシサーバ
２１１    ファイル種別判別部
２１１１    拡張子-Content-Type対応表
２１２    キャッシュディスク振分け部
２１２１    Content-Type-キャッシュディスク番号対応表
２１２２    キャッシュディスク番号-Expiresフィールド対応表
２１２３    拡張子-キャッシュディスク番号対応表
３００    キャッシュディスク
３１０    キャッシュディスク
３２０    キャッシュディスク
４００    インターネット
５００    Ｗｅｂサーバ
５１０    画像ファイル
５２０    文書ファイル
【図１】
2008293281.tif 000003
【図２】
2008293281.tif 000004
【図３】
2008293281.tif 000005
【図４】
2008293281.tif 000006
【図５】
2008293281.tif 000007
【図６】
2008293281.tif 000008
【図７】
2008293281.tif 000009
【図８】
2008293281.tif 000010