(57)【特許請求の範囲】
【請求項１】
ＷＷＷサーバからＷＷＷクライアントの代理として取得したＷＷＷオブジェクトを記憶するための主記憶部及び二次記憶部と、
前記主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、
前記オブジェクトグループ構築部にて構築されたオブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、
前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づいて、前記主記憶部に記憶された前記オブジェクトグループの前記二次記憶部への書き込み、及び前記二次記憶部からの前記オブジェクトグループの消去を管理する二次記憶管理部と、を有してなるＷＷＷプロキシ装置であって、
前記オブジェクトグループ構築部は、複数のＦＱＤＮが登録されたＦＱＤＮ管理テーブルと、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を判定する類似ＦＱＤＮ判定部と、を有し、前記類似ＦＱＤＮ判定部における判定結果に基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに類似するＦＱＤＮを持つＷＷＷオブジェクトを同一オブジェクトグループとして構築することを特徴とするＷＷＷプロキシ装置。
【請求項２】
前記類似ＦＱＤＮ判定部は、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を、ドメイン名の後方の一致部分の長さによって判定することを特徴とする、請求項１に記載のＷＷＷプロキシ装置。
【請求項３】
前記類似ＦＱＤＮ判定部は、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を、スタック管理法でＦＱＤＮを管理した場合のスタック上の位置関係によって判定することを特徴とする、請求項１に記載のＷＷＷプロキシ装置。
【請求項４】
ＷＷＷサーバからＷＷＷクライアントの代理として取得したＷＷＷオブジェクトを記憶するための主記憶部及び二次記憶部と、
前記主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、
前記オブジェクトグループ構築部にて構築されたオブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、
前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づいて、前記主記憶部に記憶された前記オブジェクトグループの前記二次記憶部への書き込み、及び前記二次記憶部からの前記オブジェクトグループの消去を管理する二次記憶管理部と、を有してなるＷＷＷプロキシ装置であって、
前記オブジェクトグループ構築部は、複数のＦＱＤＮが登録されたＦＱＤＮ管理テーブルを有し、該ＦＱＤＮ管理テーブルに基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに同一のＦＱＤＮを持つＷＷＷオブジェクトを、ＷＷＷサーバから取得した順番に同一オブジェクトグループとして構築することを特徴とするＷＷＷプロキシ装置。
【請求項５】
ＷＷＷサーバからＷＷＷクライアントの代理として取得したＷＷＷオブジェクトを記憶するための主記憶部及び二次記憶部と、
前記主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、
前記オブジェクトグループ構築部にて構築されたオブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、
前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づいて、前記主記憶部に記憶された前記オブジェクトグループの前記二次記憶部への書き込み、及び前記二次記憶部からの前記オブジェクトグループの消去を管理する二次記憶管理部と、を有してなるＷＷＷプロキシ装置であって、
前記オブジェクトグループ構築部は、複数のＦＱＤＮが登録されたＦＱＤＮ管理テーブルを有し、該ＦＱＤＮ管理テーブルに基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに同一のＦＱＤＮを持つＷＷＷオブジェクトを、優先順位の低いものから順番に同一オブジェクトグループとして構築することを特徴とするＷＷＷプロキシ装置。
【請求項６】
ＷＷＷサーバからＷＷＷクライアントの代理として取得したＷＷＷオブジェクトを記憶するための主記憶部及び二次記憶部と、
前記主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、
前記オブジェクトグループ構築部にて構築されたオブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、
前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づいて、前記主記憶部に記憶された前記オブジェクトグループの前記二次記憶部への書き込み、及び前記二次記憶部からの前記オブジェクトグループの消去を管理する二次記憶管理部と、を有してなるＷＷＷプロキシ装置であって、
前記オブジェクトグループ構築部は、複数のＦＱＤＮが登録されたＦＱＤＮ管理テーブルを有し、該ＦＱＤＮ管理テーブルに基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに同一のＦＱＤＮを持つＷＷＷオブジェクトを同一オブジェクトグループとして構築する際に、今後参照される可能性が最も低いＦＱＤＮをグループ化の対象として選択することを特徴とするＷＷＷプロキシ装置。
【請求項７】
ＷＷＷサーバからＷＷＷクライアントの代理として取得したＷＷＷオブジェクトを記憶するための主記憶部及び二次記憶部と、
前記主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、
前記オブジェクトグループ構築部にて構築されたオブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、
前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づいて、前記主記憶部に記憶された前記オブジェクトグループの前記二次記憶部への書き込み、及び前記二次記憶部からの前記オブジェクトグループの消去を管理する二次記憶管理部と、を有してなるＷＷＷプロキシ装置であって、
前記オブジェクトグループ構築部は、複数のＦＱＤＮが登録されたＦＱＤＮ管理テーブルを有し、該ＦＱＤＮ管理テーブルに基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに同一のＦＱＤＮを持つＷＷＷオブジェクトを同一オブジェクトグループとして構築する際に、優先順位が最も小さなＷＷＷオブジェクトを持つＦＱＤＮをグループ化の対象として選択することを特徴とするＷＷＷプロキシ装置。
【請求項８】
前記オブジェクトグループ構築部は、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を判定する類似ＦＱＤＮ判定部を有し、所定の条件下では、前記類似ＦＱＤＮ判定部における判定結果に基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに類似するＦＱＤＮを持つＷＷＷオブジェクトを同一オブジェクトグループとして構築することを特徴とする、請求項４乃至７のいずれか１項に記載のＷＷＷプロキシ装置。
【請求項９】
前記類似ＦＱＤＮ判定部は、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を、ドメイン名の後方の一致部分の長さによって判定することを特徴とする、請求項８に記載のＷＷＷプロキシ装置。
【請求項１０】
前記類似ＦＱＤＮ判定部は、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を、スタック管理法でＦＱＤＮを管理した場合のスタック上の位置関係によって判定することを特徴とする、請求項８に記載のＷＷＷプロキシ装置。
【請求項１１】
前記二次記憶部は、複数のディスク装置から構成され、
前記二次記憶管理部は、前記二次記憶部内のディスク装置ごとに、当該ディスク装置に記憶されているオブジェクトグループの優先順位を、前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づき管理するための優先順位管理表を有し、前記二次記憶部から前記オブジェクトグループを消去する場合、前記優先順位管理表に基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置から当該オブジェクトグループを消去することを特徴とする、請求項１乃至１０のいずれか１項に記載のＷＷＷプロキシ装置。
【請求項１２】
前記二次記憶管理部は、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表に基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする、請求項１１に記載のＷＷＷプロキシ装置。
【請求項１３】
前記二次記憶管理部は、前記二次記憶部内のディスク装置への書き込み判定を行なうためのデータ構造を有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記データ構造に基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする、請求項１２に記載のＷＷＷプロキシ装置。
【請求項１４】
前記二次記憶管理部は、前記データ構造として、前記二次記憶部内のディスク装置ごとに当該ディスク装置に記憶されているＷＷＷオブジェクトのデータ量を示すカウンタを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記カウンタに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする、請求項１３に記載のＷＷＷプロキシ装置。
【請求項１５】
前記二次記憶管理部は、前記データ構造として、前記二次記憶部内のディスク装置ごとに当該ディスク装置におけるアクセス回数を示すカウンタを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記カウンタに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする、請求項１３に記載のＷＷＷプロキシ装置。
【請求項１６】
前記二次記憶管理部は、前記データ構造として、前記二次記憶部内のディスク装置ごとに、当該ディスク装置と前記主記憶部との間で転送されたデータ量、及び当該ディスク装置におけるアクセス回数を示すカウンタを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記カウンタに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする、請求項１３に記載のＷＷＷプロキシ装置。
【請求項１７】
前記二次記憶管理部は、前記データ構造として、前記二次記憶部内の複数のディスク装置をディスク番号で管理するリンク結合されたリストを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記リストに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする、請求項１３に記載のＷＷＷプロキシ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＷＷＷ（World Wide Web）上において、クライアントの代理として目的のＷＷＷサーバからＷＷＷオブジェクトを取得し、取得したＷＷＷオブジェクトをクライアントに返送するとともに、一時的に装置内部に記憶するＷＷＷプロキシ装置（もしくはネットワーク・キャッシュ装置）に関する。
【０００２】
【従来の技術】
ＷＷＷプロキシ装置は、一般に、図５に示すように、ネットワークを介して複数のＷＷＷクライアント１−１〜１−ｎ（ｎは自然数）及び複数のＷＷＷサーバ３−１〜３−ｍ（ｍは自然数）と接続されている。なお、図５においては、ＷＷＷクライアント１−１〜１−ｎが、ＷＷＷプロキシ装置２を経由してＷＷＷサーバ３−１〜３−ｍ上のＷＷＷページを参照する例が示されている。
【０００３】
図５に示したＷＷＷプロキシ装置２は、ＷＷＷクライアント１−１〜１−ｎからＷＷＷページの参照要求を受けると、参照要求のあったＷＷＷページを構成するＷＷＷオブジェクト（文章、写真、図、グラフ、アイコン等）を、目的のＷＷＷサーバ３−１〜３−ｍから取得し、取得したＷＷＷオブジェクトを内部に設けられたメモリ等の主記憶部もしくはディスク等の二次記憶部に一旦格納し、その後、ＷＷＷクライアント１−１〜１−ｎに返送する。
【０００４】
なお、ＷＷＷプロキシ装置２では、ネットワークを介して取得したＷＷＷオブジェクトが、通常、最初に主記憶部に記憶され、主記憶部に十分な空き領域がなくなった場合に、二次記憶部に記憶される。このようなＷＷＷオブジェクトの管理に用いられる方法としては、「Junho Shim, Peter Scheuermann, and Radek Vingralek 著、Proxy Cache Design: Algorithms, Implementation and Performance, IEEE Transactions on Knowledge and Data Engineering, Vol.11, No.4, July/August 1999, pp.549-562.」（以下、文献１と称する）に記載されているように、ＷＷＷオブジェクトごとに優先順位を算出し、その優先順位に基づいてＷＷＷオブジェクト単位の管理を行う方法が知られている。
【０００５】
また、他の方法としては、「Donghee Lee, Jongmoo Choi, and Jong-Hun Kim 著、On the Existence of a Spectrum of Policies that Subsumes the Least Recently Used (LRU) and Least Frequently Used (LFU) Policies, Proceedings of the 1999 ACM SIGMETRICS Conference, pp.134-143.」（以下、文献２と称する）に記載されているように、ＬＲＵ（Least Recently Used）法とＬＦＵ（Least Frequently Used）法との中間的な性質を有する方法等が知られている。
【０００６】
ここで、二次記憶部のディスク上でのＷＷＷオブジェクトの管理は、通常、ブロック単位で行われており、例えば、ブロックサイズよりも大きなサイズのＷＷＷオブジェクトを管理する場合には複数のブロックが割り当てられ、逆に、ブロックサイズよりも小さなＷＷＷオブジェクトを管理する場合には１つのブロックが割り当てられる。ブロックサイズよりも大きなＷＷＷオブジェクトを効率的に管理するためには、例えば、特開平７−３２５６６９号公報に開示されているようなファイルアクセスの高速化や記憶媒体の断片化を回避する手法を、ＷＷＷオブジェクトの管理に適用することが考えられる。
【０００７】
図５に示したＷＷＷプロキシ装置２においては、ユーザ側のＷＷＷクライアントから参照要求を受けたＷＷＷプロキシ装置が、そのＷＷＷオブジェクトを既に装置内部に記憶している場合、そのＷＷＷオブジェクトをＷＷＷクライアントに返送する。
【０００８】
しかしながら、この方法では、ＷＷＷオブジェクトがＷＷＷプロキシ装置内の主記憶部に記憶されている場合は、そのＷＷＷオブジェクトを直ちにＷＷＷクライアントに返送することができるが、主記憶部ではなく二次記憶部に記憶されている場合は、そのＷＷＷオブジェクトを二次記憶部から主記憶部に読み込み、その後、ＷＷＷクライアントに返送する必要がある。
【０００９】
一方、１つのＷＷＷページは、通常、図６に示すように、複数のＷＷＷオブジェクトから構成されており、ユーザがＷＷＷクライアント上の画面にＷＷＷページを表示するためには、そのＷＷＷページを構成する複数のＷＷＷオブジェクトをＷＷＷサーバから参照する必要がある。
【００１０】
従って、ＷＷＷクライアント上の画面に以前に表示したＷＷＷページを再度表示しようとした時に、そのＷＷＷページを構成するＷＷＷオブジェクトがＷＷＷプロキシ装置内の二次記憶部に全て記憶されている場合には、それらのＷＷＷオブジェクトを二次記憶部から主記憶部に再度読み込み、その結果をＷＷＷクライアントに返送することになる。
【００１１】
【発明が解決しようとする課題】
ＷＷＷオブジェクトには、比較的サイズの小さなものが多いことが知られている。「西川記史、細川貴史、森靖英、吉田健一、辻洋：ＷＷＷトラフィックに基づくキャッシュ方式の提案、情報処理学会論文誌、Vol.41, No.9, September 2000, pp.2625-2637」（以下、文献３と称する）によれば、３ｋバイト以下のＷＷＷオブジェクトが全体の６０％を占め、５ｋバイト以下のＷＷＷオブジェクトが全体の７３％を占めていると報告されている。
【００１２】
一方、ＷＷＷプロキシ装置内の二次記憶部のディスク上においてＷＷＷオブジェクトの管理をブロック単位で行う場合、そのディスクブロックのサイズを８ｋバイト以上、或いは１６ｋバイト以上にすることにより、スループットの向上を図れることが一般に知られている。
【００１３】
このように、ＷＷＷオブジェクトのサイズと、ディスクブロックのサイズとの間には差異が生じることになるが、従来技術では、小さなＷＷＷオブジェクトを管理する場合、そのＷＷＷオブジェクトを二次記憶部上に記憶するために、そのＷＷＷオブジェクトに１ブロックを割り当てるという方法が用いられており、このために次のような問題が生じてしまう。
【００１４】
例えば、ディスクブロックのサイズが１６ｋバイトで、ＷＷＷオブジェクトのサイズが３ｋバイトである場合、３ｋバイトのＷＷＷオブジェクトを記憶するためにはディスク上の１６ｋバイト分の領域を消費してしまうことになる。このため、二次記憶部内には、使用されずに無駄になる領域が生じ、結果的に二次記憶部の利用効率が悪化してしまう。
【００１５】
なお、二次記憶部の利用効率の悪化を防止する方法としては、ブロックサイズを小さくする方法がある。しかしながら、上述したように、ブロックサイズが大きいほど二次記憶部のスループットの向上が図れるため、ブロックサイズをあまり小さくすることは性能面で好ましくない。
【００１６】
また、ＷＷＷクライアントからのアクセス要求を受けて、アイコンのような比較的サイズの小さなＷＷＷオブジェクトを複数個参照してＷＷＷページを表示する際に、それらのＷＷＷオブジェクトが主記憶部上ではなく二次記憶部上に記憶されている場合には、参照するＷＷＷオブジェクトに対応する全ブロックを二次記憶部から主記憶部に読み込む必要がある。この場合、二次記憶部上のブロック位置が大きく離れていると、ディスクアームのシークが複数回発生することになり、読み込むＷＷＷオブジェクトのサイズの割には読み込みに要する時間が長くなってしまう。このため、ＷＷＷクライアントからのアクセス要求に対する平均レスポンス時間が長くなってしまう。
【００１７】
また、二次記憶部の利用効率の悪化を防止する他の方法としては、複数のＷＷＷオブジェクトを同一ブロックにまとめることで、二次記憶部への読み書きを行う頻度を下げる方法がある。しかしながら、この方法では、ＷＷＷオブジェクトを二次記憶部から主記憶部に読み込む際に、ＷＷＷオブジェクト単位ではなくブロック単位で読み込みを行っているため、ブロックとしてのまとめ方が悪い場合には、当面参照される可能性が低いＷＷＷオブジェクトをも同時に主記憶部中に読み込むおそれがあり、この場合には主記憶部の利用効率が悪化してしまう。
【００１８】
また、二次記憶部が複数のディスクで構成されている場合には、ディスク間でのアクセス負荷や記憶されているＷＷＷオブジェクトのデータ量が不均一となり、結果的に性能ボトルネックを引き起こしてしまうおそれがある。
【００１９】
本発明は、上述したような従来の技術が有する問題点に鑑みてなされたものであって、二次記憶部のスループットを低下させることなく、二次記憶部の利用効率の向上を図ることができるとともに、二次記憶部へのアクセス回数を低減することでＷＷＷクライアントからのアクセス要求に対する平均レスポンス時間の短縮化を図ることができるＷＷＷプロキシ装置を提供することを目的とする。
【００２０】
また、他の目的は、二次記憶部が複数のディスクで構成されている場合に、ディスク間でのアクセス負荷や記憶されているＷＷＷオブジェクトのデータ量を均等にすることで性能ボトルネックの発生を防止し、システム全体としてのトータルな性能を向上させることにある。
【００２１】
【課題を解決するための手段】
上記目的を達成するために本発明は、ＷＷＷサーバからＷＷＷクライアントの代理として取得したＷＷＷオブジェクトを記憶するための主記憶部及び二次記憶部を少なくとも有してなるＷＷＷプロキシ装置であって、
前記主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、
前記オブジェクトグループ構築部にて構築されたオブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、
前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づいて、前記主記憶部に記憶された前記オブジェクトグループの前記二次記憶部への書き込み、及び前記二次記憶部からの前記オブジェクトグループの消去を管理する二次記憶管理部とを有することを特徴とする。
【００２２】
また、前記オブジェクトグループ構築部は、複数のＦＱＤＮが登録されたＦＱＤＮ管理テーブルを有し、該ＦＱＤＮ管理テーブルに基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに同一のＦＱＤＮを持つＷＷＷオブジェクトを同一オブジェクトグループとして構築することを特徴とする。
【００２３】
また、前記オブジェクトグループ構築部は、前記ＦＱＤＮ管理テーブルに登録された複数のＦＱＤＮ間の類似性を判定する類似ＦＱＤＮ判定部を有し、所定の条件下では、前記類似ＦＱＤＮ判定部における判定結果に基づいて、前記主記憶部に記憶されたＷＷＷオブジェクトのうち互いに類似するＦＱＤＮを持つＷＷＷオブジェクトを同一オブジェクトグループとして構築することを特徴とする。
【００２４】
また、前記二次記憶部は、複数のディスク装置から構成され、
前記二次記憶管理部は、前記二次記憶部内のディスク装置ごとに、当該ディスク装置に記憶されているオブジェクトグループの優先順位を、前記オブジェクトグループ優先順位判断部におけるオブジェクトグループ間の優先順位の判断結果に基づき管理するための優先順位管理表を有し、前記二次記憶部から前記オブジェクトグループを消去する場合、前記優先順位管理表に基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置から当該オブジェクトグループを消去することを特徴とする。
【００２５】
また、前記二次記憶管理部は、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表に基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする。
【００２６】
また、前記二次記憶管理部は、前記二次記憶部内のディスク装置への書き込み判定を行なうためのデータ構造を有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記データ構造に基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする。
【００２７】
また、前記二次記憶管理部は、前記データ構造として、前記二次記憶部内のディスク装置ごとに当該ディスク装置に記憶されているＷＷＷオブジェクトのデータ量を示すカウンタを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記カウンタに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする。
【００２８】
また、前記二次記憶管理部は、前記データ構造として、前記二次記憶部内のディスク装置ごとに当該ディスク装置におけるアクセス回数を示すカウンタを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記カウンタに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする。
【００２９】
また、前記二次記憶管理部は、前記データ構造として、前記二次記憶部内のディスク装置ごとに、当該ディスク装置と前記主記憶部との間で転送されたデータ量、及び当該ディスク装置におけるアクセス回数を示すカウンタを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記カウンタに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする。
【００３０】
また、前記二次記憶管理部は、前記データ構造として、前記二次記憶部内の複数のディスク装置をディスク番号で管理するリンク結合されたリストを有し、前記オブジェクトグループを前記二次記憶部に書き込む場合、前記優先順位管理表及び前記リストに基づいて前記二次記憶部内の複数のディスク装置のいずれかを選択し、選択したディスク装置に当該オブジェクトグループを書き込むことを特徴とする。
【００３１】
（作用）
上記のように構成された本発明においては、オブジェクトグループ構築部において、主記憶部に記憶された１つ以上のＷＷＷオブジェクトからなるオブジェクトグループが構築され、オブジェクトグループ優先順位判断部において、オブジェクトグループ間の優先順位が判断され、二次記憶管理部において、オブジェクトグループ間の優先順位の判断結果に基づいて、オブジェクトグループの二次記憶部への書き込み、及びオブジェクトグループの二次記憶部からの消去が行われる。
【００３２】
これにより、二次記憶部への書き込み及び二次記憶部からの消去をオブジェクトグループ単位で行うことが可能となるとともに、ＦＱＤＮが同一である等の相関の高いＷＷＷオブジェクト同士をまとめてオブジェクトグループを構築することが可能となる。
【００３３】
従って、サイズの小さなＷＷＷオブジェクトであっても、これらをまとめてオブジェクトグループとして二次記憶部に書き込むことが可能であるため、二次記憶部のブロックサイズを大きく保つことが可能となり、これにより、二次記憶部のスループットの低下を防止することが可能となる。
【００３４】
また、サイズの小さなＷＷＷオブジェクトに二次記憶部の入出力単位である１ブロックを割り当てることで二次記憶部内で使用されずに無駄となる領域が発生してしまう等の問題が回避されるため、二次記憶部の利用効率の向上が図れる。
【００３５】
【発明の実施の形態】
以下に、本発明の実施の形態について図面を参照して説明する。
【００３６】
本発明のＷＷＷプロキシ装置は、図５に示したように、インターネット等のネットワークを介して複数のＷＷＷクライアント１−１〜１−ｎ及び複数のＷＷＷサーバ３−１〜３−ｍと接続されており、ＷＷＷサーバ３−１〜３−ｍ上のＷＷＷページのアクセス要求をＷＷＷクライアント１−１〜１−ｎから受けると、アクセス要求のあったＷＷＷページを構成するＷＷＷオブジェクトを目的のＷＷＷサーバ３−１〜３−ｍから代理で取得し、取得したＷＷＷオブジェクトを内部に設けられたメモリ等の主記憶部もしくはディスク等の二次記憶部に一旦格納し、その後、ＷＷＷクライアント１−１〜１−ｎに返送するものである。なお、１つのＷＷＷページは、通常、図６に示したように複数のＷＷＷオブジェクトから構成されており、そのＷＷＷページをＷＷＷクライアント１−１〜１−ｎ上の画面に表示するためには、そのＷＷＷページを構成する複数のＷＷＷオブジェクトをＷＷＷサーバ３−１〜３−ｍから取得する必要がある。
【００３７】
また、本発明のＷＷＷプロキシ装置は、ＵＲＬ（Uniform Resource Locator）をＩＤ（識別子）として用い、例えば、ハッシュ法等によりＷＷＷオブジェクトの管理を行う。また、ＷＷＷクライアント１−１〜１−ｎのＩＰ（Internet Protocol）アドレス情報やクッキー情報（ＷＷＷサーバ３−１〜３−ｍとのセッション状態を示す情報）をＵＲＬに付加したものをＩＤとして用いることもできる。
【００３８】
図１は、本発明のＷＷＷプロキシ装置の実施の一形態を示す図である。
【００３９】
図１に示すように本実施形態におけるＷＷＷプロキシ装置は、オブジェクトグループ構築部２１１及びオブジェクトグループ優先順位判断部２１２を具備するオブジェクト管理部２１と、主記憶部２２と、二次記憶管理部２３と、二次記憶部２４とから構成されている。
【００４０】
なお、オブジェクト管理部２１内に設けられたオブジェクトグループ構築部２１１は、後述するＦＱＤＮ（Fully Qualified Domain Name）管理テーブル２１３を具備しており、このＦＱＤＮ管理テーブル２１３を用いて動作を行う。
【００４１】
以下に、上記のように構成されたＷＷＷプロキシ装置の概略の動作について説明する。
【００４２】
ＷＷＷサーバ３−１〜３−ｍからネットワークを介して取得されたＷＷＷオブジェクトは、まず、主記憶部２２に記憶される。
【００４３】
オブジェクト管理部２１内のオブジェクトグループ構築部２１１では、主記憶部２２に記憶されている複数のＷＷＷオブジェクトからなるオブジェクトグループが構築される。なお、本発明では、条件によっては１つのＷＷＷオブジェクトからなるものも、便宜的にオブジェクトグループと称することとする。
【００４４】
ここで、主記憶部２２にＷＷＷオブジェクトを記憶するための記憶領域がなくなった場合、オブジェクト管理部２１内のオブジェクトグループ優先順位判断部２１２では、オブジェクトグループ構築部２１１にて構築されたオブジェクトグループ間の優先順位が判断され、続いて、二次記憶管理部２３では、オブジェクトグループ優先順位判断部２１２にて優先順位が最も低いと判断されたオブジェクトグループを主記憶部２２から消去する。なお、二次記憶管理部２３では、主記憶部２２からオブジェクトグループを消去する前（或いは、同時）の適当なタイミングで、主記憶部２２から消去したオブジェクトグループを二次記憶部２４に書き込む。
【００４５】
また、二次記憶部２４にＷＷＷオブジェクトを記憶するための記憶領域がなくなった場合、二次記憶管理部２３では、オブジェクトグループ優先順位判断部２１２にて優先順位が最も低いと判断されたオブジェクトグループを二次記憶部２４から消去する。
【００４６】
以下に、オブジェクト管理部２１内のオブジェクトグループ構築部２１１におけるオブジェクトグループの構築方法、オブジェクト管理部２１内のオブジェクトグループ優先順位判断部２１２におけるオブジェクトグループの優先順位の判断方法、及び二次記憶管理部２３における二次記憶部２４の管理方法（オブジェクトグループの書き込み及び消去方法）について詳細に説明する。
【００４７】
まず、オブジェクト管理部２１内のオブジェクトグループ構築部２１１におけるオブジェクトグループの構築方法について説明する。
【００４８】
オブジェクトグループ構築部２１１は、ＷＷＷサーバ３−１〜３−ｍからネットワークを介して取得したＷＷＷオブジェクトのサイズが一定の値（例えば、ディスクブロックサイズ）以下であれば、そのＷＷＷオブジェクトのうち同一ＦＱＤＮを持つＷＷＷオブジェクトをまとめてオブジェクトグループを構築する。
【００４９】
この構築方法は、例えば、図２に示すように、ＦＱＤＮ管理テーブル２１３を用いてＦＱＤＮをテーブルとして管理し、ＷＷＷオブジェクトをリンク結合されたリストとして主記憶部２２上で管理することで実現することができる。
【００５０】
なお、図２においては、「www.nec.co.jp」、「www.abc.co.jp」というＦＱＤＮがＦＱＤＮ管理テーブル２１３に登録され、「www.nec.co.jp」というＦＱＤＮを持つ３つのＷＷＷオブジェクト２２０〜２２２と、「www.abc.co.jp」というＦＱＤＮを持つ２つのＷＷＷオブジェクト２２３，２２４とが、ＷＷＷサーバ３−１〜３−ｍから取得された順番に応じて、ＦＱＤＮ管理テーブル２１３を経由したリスト構造で主記憶部２２上に管理されていることが示されている。従って、図２に示した３つのＷＷＷオブジェクト２２０〜２２２は、例えば、ＷＷＷサーバ３−１〜３−ｍから比較的短い時間間隔で取得されたＷＷＷオブジェクトであるとみなすことができる。なお、「NULL」はリストの終端を示している。
【００５１】
上述したように、ＷＷＷサーバ３−１〜３−ｍから取得された順番と、ＦＱＤＮ管理テーブル２１３に登録されているＦＱＤＮとによってＷＷＷオブジェクトの管理を行うことで、互いに相関のあるＷＷＷオブジェクトを同一のオブジェクトグループにまとめることができる。
【００５２】
なお、オブジェクトグループ内で同一ＦＱＤＮを持つＷＷＷオブジェクトの数が一定の個数を超えた場合や、そのオブジェクトグループのサイズが一定の値を超えた場合や、そのオブジェクトグループに同一ＦＱＤＮを持つＷＷＷオブジェクトを新たに追加する際にオブジェクトグループのサイズが一定の値を超えた場合に、オブジェクトグループ構築部２１１は、超えた分のＷＷＷオブジェクトを新たな１つのオブジェクトグループとして構築する。これらの場合には、新たなオブジェクトグループが構築された後、そのオブジェクトグループに属するＷＷＷオブジェクトをＦＱＤＮ管理テーブル２１３上のリンクから削除する。なお、オブジェクトグループのサイズとは、そのオブジェクトグループに属する全てのＷＷＷオブジェクトのサイズの総和として定義されるものである。
【００５３】
また、オブジェクトグループ構築部２１１におけるＷＷＷオブジェクトのグループ化の条件を次のように変更することもできる。
【００５４】
ＷＷＷプロキシ装置２内の主記憶部２２の記憶容量が足りなくなるの理由等により、主記憶部２２に記憶されているＷＷＷオブジェクトが消去（置換え）の対象となった場合、オブジェクトグループ構築部２１１は、そのＷＷＷオブジェクトと同一ＦＱＤＮを持ちＦＱＤＮ管理テーブル２１３を経由して管理されているＷＷＷオブジェクトの中から複数個のＷＷＷオブジェクトを選択し、それらをまとめてオブジェクトグループを構築する。この場合にも、オブジェクトグループが構築された後、そのオブジェクトグループに属するＷＷＷオブジェクトをＦＱＤＮ管理テーブル２１３上のリンクから削除する。なお、同一ＦＱＤＮを持つ複数個のＷＷＷオブジェクトを選択する時には、二次記憶部２４のディスクブロックのサイズを考慮し、複数個のＷＷＷオブジェクトのサイズの総和がブロックサイズ以下になるようにＷＷＷオブジェクトを選択する。また、ＷＷＷオブジェクトを選択する際には、ＷＷＷオブジェクトの優先順位の低いものから順番に選択していく。このようにグループ化の条件を変更することにより、同程度の優先順位を持つＷＷＷオブジェクトを同一のオブジェクトグループにまとめることができる。
【００５５】
更に、オブジェクトグループ構築部２１１におけるＷＷＷオブジェクトのグループ化の条件を次のように変更することもできる。
【００５６】
ＦＱＤＮ管理テーブル２１３に登録されているＦＱＤＮのエントリ数が一定数を超えた時、或いはＦＱＤＮ管理テーブル２１３を経由して主記憶部２２上で管理されているＷＷＷオブジェクトの数やサイズが一定値を超えた時には、ＷＷＷオブジェクトが消去（置換え）の対象とならない場合であっても、オブジェクトグループ構築部２１１は、その時点でリスト結合されているＷＷＷオブジェクトをまとめて１つのオブジェクトグループを構築するようにする。なお、グループ化の対象とするＦＱＤＮを選択する場合には、例えば、ＬＲＵ法、ＬＦＵ法、或いはそれらの中間的な方法（上記文献２参照）を用いてＦＱＤＮだけを管理することにより、今後参照される可能性が最も低いＦＱＤＮを決定し、そのＦＱＤＮをグループ化の対象として選択する。もしくは、リンク結合されたＷＷＷオブジェクトの優先順位の最小値を利用し、その最小値が最も小さいＦＱＤＮをグループ化の対象として選択する。
【００５７】
更に、オブジェクトグループ構築部２１１を図３に示す構成とすることによって、オブジェクトグループ構築部２１１におけるＷＷＷオブジェクトのグループ化の条件を次のように変更することもできる。なお、図３に示すオブジェクトグループ構築部２１１は、図２に示したオブジェクトグループ構築部に対して、ＦＱＤＮ管理テーブル２１３に登録されたＦＱＤＮの類似性を判定する類似ＦＱＤＮ判定部２１４を設けた点が異なる。
【００５８】
ＦＱＤＮ管理テーブル２１３に登録されているＦＱＤＮのエントリ数が一定値を超えた場合、或いはＦＱＤＮ管理テーブル２１３を経由して主記憶部２２上で管理されているＷＷＷオブジェクトの数が一定値を超えた場合、或いはこれらのＷＷＷオブジェクトのサイズの総和が一定値を超えた場合に、オブジェクトグループ構築部２１１は、ＦＱＤＮ管理テーブル２１３に登録されたＦＱＤＮのうち類似ＦＱＤＮ判定部２１４にて類似性が最も高いと判定されたＦＱＤＮを持つＷＷＷオブジェクトをまとめて１つのオブジェクトグループを構築する。
【００５９】
類似ＦＱＤＮ判定部２１４における類似性の判定方法としては、２つのドメイン名を後ろの方から最長一致させる方法がある。例えば、ＦＱＤＮ管理テーブル２１３に登録されているＦＱＤＮがＤ１＝「www.jp.nec.com」、Ｄ２＝「www.nec.com」、Ｄ３＝「www.jp.nec.com」の３つである場合を考える。Ｄ１とＤ２、またＤ２とＤ３とでは、ドメイン名の後ろの部分「nec.com」が一致している。一方で、Ｄ１とＤ３とでは、「jp.nec.com」の部分が一致している。ドメイン名は階層的に管理されているため、「nec.com」よりも「jp.nec.com」の方がより一致部分が長いと考えられ、従って、この場合にはＤ１とＤ３との類似度が最も高いと判定される。または、ＦＱＤＮ部分を、ＬＲＵ法、或いはＬＦＵ法、或いはそれらの中間的な方法（上記文献２参照）を用いてスタックで管理した場合に、スタック上での位置が近いものの類似度が最も高いと判定することもできる。
【００６０】
オブジェクトグループ構築部２１１では、上述したような各種の条件で、互いに相関のある１つ以上のＷＷＷオブジェクトからなるオブジェクトグループが構築され、以降、このオブジェクトグループが主記憶部２２と二次記憶部２４との入出力の単位となる。ただし、ＷＷＷオブジェクトのサイズが一定の値を超えていた場合は、そのＷＷＷオブジェクト１つでオブジェクトグループを構築するものと便宜的に考える。
【００６１】
次に、オブジェクト管理部２１内のオブジェクトグループ優先順位判断部２１２におけるオブジェクトグループの優先順位の判断方法について説明する。
【００６２】
ＷＷＷオブジェクトのそれぞれには、アクセス時刻、アクセス回数、オブジェクトサイズ、アクセスコスト、現在時刻等に基づく優先順位が付けられている。オブジェクトグループ構築部２１１にて構築されたオブジェクトグループは、１つ以上のＷＷＷオブジェクトから構築されているため、オブジェクトグループ優先順位判断部２１２は、オブジェクトグループに属する全てのＷＷＷオブジェクトの優先順位を用いてそのオブジェクトグループ全体としての優先順位を算出し、この算出結果に基づいてオブジェクトグループ間の優先順位を判断する必要がある。
【００６３】
このため、オブジェクトグループ優先順位判断部２１２は、オブジェクトグループに属する全てのＷＷＷオブジェクトの優先順位の最大値、最小値、平均値、中間値、下位ｎ％値、上位ｎ％値等の統計値を利用してそのオブジェクトグループ全体としての優先順位を算出する。
【００６４】
オブジェクトグループ優先順位判断部２１２では、上述したようにオブジェクトグループの優先順位が算出され、この算出結果に基づきオブジェクトグループ間の優先順位が判断され、以降、主記憶部２２内のオブジェクトグループが消去される際には、オブジェクトグループ優先順位判断部２１２における優先順位の判断結果に基づいて、優先順位が最も低いオブジェクトグループが消去される。
【００６５】
次に、二次記憶管理部２３における二次記憶部２４の管理方法（オブジェクトグループの書き込み及び消去方法）について説明する。
【００６６】
二次記憶管理部２３は、オブジェクトグループ構築部２１１にて構築されたオブジェクトグループを二次記憶部２４に書き込む場合、オブジェクトグループ構築部２１１にてオブジェクトグループが構築された直後のタイミング、或いはそのオブジェクトグループを主記憶部２２から消去する直前（若しくは同時）のタイミング、或いはそれらの間の任意のタイミングで、オブジェクトグループを二次記憶部２４に書き込む。
【００６７】
また、二次記憶管理部２３は、二次記憶部２４からオブジェクトグループを消去する場合、二次記憶部２４の記憶容量が足りなくなったタイミングで、オブジェクトグループ優先順位判断部２１２にて優先順位が最も低いと判断されたオブジェクトグループから順番に消去していく。
【００６８】
なお、二次記憶部２４が複数のディスクで構成されている場合には、二次記憶管理部２３におけるオブジェクトグループの書き込み及び消去方法を次のように変更することもできる。ここでは、一例として、図４に示すように、二次記憶部２４が、オブジェクトグループとして複数のＷＷＷオブジェクトを記憶している２台のディスク装置２４１，２４２から構成されているものとして説明する。
【００６９】
二次記憶管理部２３は、このような状況下でディスク装置２４１，２４２に記憶されている全てのＷＷＷオブジェクトを１つの管理表で管理しようとすると、ＷＷＷオブジェクトの増加に伴いＷＷＷオブジェクトの優先順位を管理する手間が次第に増加してしまうことがある。
【００７０】
そこで、本発明では、図４に示すように、二次記憶管理部２３内に、ディスク装置２４１，２４２ごとに、当該ディスク装置に記憶されているオブジェクトグループの優先順位を、オブジェクトグループ優先順位判断部２１２におけるオブジェクトグループ間の優先順位の判断結果に基づき管理するための優先順位管理表２３５，２３６を用意し、二次記憶管理部２３において、この優先順位管理表２３５，２３６を用いてディスク装置２４１，２４２のそれぞれに記憶されているオブジェクトグループの優先順位の管理を行うこととしている。
【００７１】
なお、二次記憶管理部２３は、ディスク装置２４１，２４２にてオブジェクトグループの書き込み或いは消去が行われる度に、優先順位管理表２３５，２３６を更新するとともに、この優先順位管理表２３５，２３６を、オブジェクトグループをソートして或いはヒープを用いて管理し、優先順位の最も低いオブジェクトグループが即座に分かるようにしておく。なお、ソートあるいはヒープを用いた管理方法に関しては、R.セジウィック著、野下浩平、星守、佐藤創、田口東、共訳：「アルゴリズム C++」(近代科学社)にその詳細が述べられている。
【００７２】
ディスク装置２４１，２４２からオブジェクトグループを消去する場合、二次記憶管理部２３は、優先順位管理表２３５，２３６を用いてディスク装置２４１，２４２のそれぞれに記憶されているオブジェクトグループの中で優先順位の値が最も低いオブジェクトグループを探索し、その値をディスク装置２４１，２４２間で比較し、最も小さな値を持つオブジェクトグループが記憶されているディスク装置を消去対象ディスクとして選択し、そのディスク装置上の該当するオブジェクトグループを消去する。
【００７３】
上述したようにディスク装置ごとに優先順位管理表を設けることで、１つのディスク装置に対応する優先順位管理表の規模が小さくなるため、オブジェクトグループを消去する際に優先順位管理表を更新する手間が軽減される。
【００７４】
また、ディスク装置２４１，２４２にオブジェクトグループを書き込む場合、二次記憶管理部２３は、ディスク装置間でのアクセス負荷或いは記憶されているＷＷＷオブジェクトのデータ量が均等になるように、書き込みを行うディスク装置を次の方法で選択することができる。
【００７５】
書き込みディスクを選択する第１の方法としては、近い将来にオブジェクトグループの消去が行われる可能性の高いディスク装置に優先的に書き込みを行う方法がある。この方法は、図４に示すように、ディスク装置２４１，２４２ごとに設けられた優先順位管理表２３５，２３６を用いてディスク装置２４１，２４２のそれぞれに記憶されているオブジェクトグループの中で優先順位の値が最も低いオブジェクトグループを探索し、その値をディスク装置２４１，２４２間で比較し、最も小さな値を持つオブジェクトグループが記憶されているディスク装置を書き込み対象ディスクとして選択することで実現可能となる。第１の方法を実現可能とするための二次記憶管理部２３の構成としては、ディスク装置２４１，２４２ごとに優先順位管理表２３５，２３６を設ける必要がある。
【００７６】
また、書き込みディスクを選択する第２の方法としては、最近オブジェクトグループの消去が実際に行われたディスク、もしくは最近オブジェクトグループの書き込みが行われていないディスクに優先的に書き込みを行う方法がある。この方法は、図４に示すように、二次記憶管理部２３内に、ディスク装置２４１，２４２のそれぞれのディスク番号を管理するリンク結合されたリスト（書き込み判定リスト２３３）を用意し、消去が行われたディスク装置はリンクの先頭方向に移動させ、書き込みが行われたディスク装置はリンクの最後尾方向に移動させる操作を行うことで実現可能となる。この方法では、書き込み判定リスト２３３の先頭にあるディスク装置ほど優先順位が高いことになるため、その時点で先頭にあるディスク装置に対して書き込みを行うことになる。第２の方法を実現可能とするための二次記憶部２３の構成としては、優先順位管理表２３５，２３６に加えて、データ構造として書き込み判定リスト２３３を設ける必要がある。
【００７７】
また、書き込みディスクを選択する第３の方法としては、ディスク装置間でのアクセス回数が同程度になるように優先的に書き込みを行う方法がある。この方法は、図４に示すように、二次記憶管理部２３内に、ディスク装置２４１，２４２ごとに当該ディスク装置の優先順位を示すための書き込み判定カウンタ２３１，２３２を用意し、このカウンタ値をオブジェクトグループの消去或いは書き込みが行われる度に増加或いは減少させる操作を行い、その時点でカウンタ値の大きなディスク装置に対して書き込みを行うことで実現可能となる。第３の方法を実現可能とするための二次記憶部２３の構成としては、優先順位管理表２３５，２３６に加えて、ディスク装置２４１，２４２ごとに、データ構造として書き込み判定カウンタ２３１，２３２を設ける必要がある。
【００７８】
また、書き込みディスクを選択する第４の方法としては、ディスク装置間でのＷＷＷオブジェクトの記憶量が同程度になるように優先的に書き込みを行う方法がある。この方法は、図４に示すように、ディスク装置２４１，２４２に記憶されているＷＷＷオブジェクトの個数もしくは使用されているブロック数を示すために書き込み判定カウンタ２３１，２３２を使用し、このカウンタ値がディスク装置間で均等になるように書き込みを行なうことで実現可能となる。すなわち、その時点で、カウンタ値の小さなディスク装置に対して優先的に書き込みを行えば良い。また、この第４の方法は、ディスク装置２４１，２４２における単位時間あたりのディスクアクセス回数やディスク装置２４１，２４２と主記憶部２２との間で転送されたデータ量を示すために書き込み判定カウンタ２３１，２３２を使用し、そのカウンタ値が小さなディスク装置に対して優先的に書き込むことでも実現可能となる。第４の方法を実現可能とするための二次記憶部２３の構成としては、第３の方法と同様に、優先順位管理表２３５，２３６に加えて、ディスク装置２４１，２４２ごとに、データ構造として書き込み判定カウンタ２３１，２３２を設ける必要がある。
【００７９】
なお、優先順位管理表２３５，２３６は、本来、二次記憶部２４の記憶領域が足りなくなった時に、どのオブジェクトグループを消去するかという判断に使用されるものである。しかしながら、優先順位管理表２３５，２３６を用いて上述した第１〜第４の方法により書き込みを行う場合には、複数のディスク装置２４１，２４２間の負荷分散をも同時に実現することができる。
【００８０】
【発明の効果】
以上説明したように本発明においては、主記憶部に記憶された１つ以上のＷＷＷオブジェクトから構成されるオブジェクトグループを構築するオブジェクトグループ構築部と、オブジェクトグループ間の優先順位を判断するオブジェクトグループ優先順位判断部と、オブジェクトグループ間の優先順位の判断結果に基づいて、オブジェクトグループの二次記憶部への書き込み、及びオブジェクトグループの二次記憶部からの消去を行う二次記憶管理部とを設けた構成としたため、二次記憶部への書き込み及び二次記憶部からの消去をオブジェクトグループ単位で行うことができるとともに、ＦＱＤＮが同一である等の相関の高いＷＷＷオブジェクト同士をまとめてオブジェクトグループを構築することができる。
【００８１】
従って、サイズの小さなＷＷＷオブジェクトをまとめてオブジェクトグループとして二次記憶部に書き込むことができるため、二次記憶部のブロックサイズを大きく保つことができ、これにより、スループットの低下等の二次記憶部の性能低下を防止することができる。
【００８２】
また、サイズの小さなＷＷＷオブジェクトに二次記憶部の入出力の単位である１ブロックを割り当てることで二次記憶部内で使用されずに無駄となる領域が発生してしまう等の問題を回避することができ、これにより、二次記憶部の利用効率の向上を図ることができる。また、二次記憶部への書き込み回数を低減することができる。
【００８３】
また、ＷＷＷクライアントから、二次記憶部に記憶されているオブジェクトグループに属するＷＷＷオブジェクトのアクセス要求を受けた際には、そのオブジェクトグループ全体が二次記憶部から主記憶部に読み込まれることになるが、読み込まれたオブジェクトグループは互いに相関性のあるＷＷＷオブジェクトから構成されているため、以降、そのオブジェクトグループに属する他のＷＷＷオブジェクトのアクセス要求を受ける可能性が高くなる。
【００８４】
主記憶部に既に読み込まれているＷＷＷオブジェクトのアクセス要求を受けた場合には、二次記憶部にアクセスする必要がないため、結果的に、二次記憶部へのアクセス回数が低減され、二次記憶部を参照する手間が軽減され、これにより、ＷＷＷクライアントからのアクセス要求に対する平均レスポンス時間を短縮することができる。なお、実際には、主記憶部は二次記憶部よりもはるかに高速に動作するものであるため、二次記憶部へのアクセス回数が低減されることで、上述した平均レスポンス時間は大幅に短縮されることになる。
【００８５】
また、二次記憶部から主記憶部に読み込まれたオブジェクトグループに属する他のＷＷＷオブジェクトは、上述したように、以降、アクセス要求を受ける可能性が高いものであるため、当面参照される可能性の低いＷＷＷオブジェクトが二次記憶部から主記憶部に読み込まれるという問題を回避することができ、これにより、主記憶部の利用効率の向上を図ることができる。
【００８６】
また、二次記憶部が複数のディスク装置で構成されている場合に、優先順位管理表や、カウンタ等のデータ構造を用いることで、ディスク装置間でのアクセス回数や記憶されているＷＷＷオブジェクトのデータ量を均等になるように、ディスク装置への書き込みを行なうことができるため、特定のディスク装置が性能的にボトルネックとなることを回避することができ、これにより、システム全体として高性能化を達成することができる。
【図面の簡単な説明】
【図１】本発明のＷＷＷプロキシ装置の実施の一形態を示す図である。
【図２】図１に示したオブジェクトグループ構築部の一構成例を示す図である。
【図３】図１に示したオブジェクトグループ構築部の他の構成例を示す図である。
【図４】図１に示した二次記憶管理部の一構成例を示す図である。
【図５】ＷＷＷプロキシ装置のＷＷＷクライアント及びＷＷＷサーバとの一接続例を示す図である。
【図６】複数のＷＷＷオブジェクトから構成されるＷＷＷページの一例を示す図である。
【符号の説明】
１−１〜１−ｎ    ＷＷＷクライアント
２    ＷＷＷプロキシ装置
２１    オブジェクト管理部
２１１    オブジェクトグループ構築部
２１２    オブジェクトグループ優先順位判断部
２１３    ＦＱＤＮ管理テーブル
２１４    類似ＦＱＤＮ判定部
２２    主記憶部
２２０〜２２４    ＷＷＷオブジェクト
２３    二次記憶管理部
２３１，２３２    書き込み判定カウンタ
２３３    書き込み判定リスト
２３５，２３６    優先順位管理表
２４    二次記憶部
２４１，２４２    ディスク装置
３−１〜３−ｍ    ＷＷＷサーバ
【図１】
0004035683.tif 000002
【図２】
0004035683.tif 000003
【図３】
0004035683.tif 000004
【図４】
0004035683.tif 000005
【図５】
0004035683.tif 000006
【図６】
0004035683.tif 000007