(57)【要約】第１のコンピュータが第２のコンピュータに文書を要求する方法は、第１のユーザアクションに応答して、第１の文書に対する第１の要求を第２のコンピュータへ送信するステップと、第１の要求に応答して第２のコンピュータにより送信された第１の文書を受信するステップと、受信した第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、ユーザアクションの有無に関わりなく、識別された参照により参照されている第２の文書のうち少なくとも１つに対する第２の要求を自動的に送信するステップと、第２の要求により要求された第２の文書を受信し、受信した第２の文書を第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、第２の文書のうちの１つ以上に対するユーザ要求に応答して、まず上記ユーザ要求に上記ローカルな記憶装置から対応することを試み、上記第２の文書が上記ローカルな記憶装置に記憶されていない場合にのみ第２の文書に対して第３の要求を第２のコンピュータへ送信するステップとを備える。また、遠隔コンピュータによるWebサイトへのアクセスの要求に対応する方法は、Webサイトへのアクセスの要求を受信する受信ステップと、上記要求に応答して、アクセスされた上記Webサイトの第１のページを上記遠隔コンピュータへ送信する第１の送信ステップと、上記遠隔コンピュータに由来する、Webサイトの第２のページに対する後の要求の有無に関わりなく、上記遠隔コンピュータによる後の要求の予測、および／または、上記遠隔コンピュータにより以前にアクセスされた第２のページの履歴に基づき、少なくとも１つの選択された第２のページを上記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを備え得る。【特許請求の範囲】
【請求項１】
第１のコンピュータが第２のコンピュータに文書を要求する方法であって、
第１のユーザアクションに応答して、第１の文書に対する第１の要求を前記第２のコンピュータへ送信するステップと、
前記第１の要求に応答して前記第２のコンピュータにより送信された前記第１の文書を受信するステップと、
受信した前記第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、
ユーザアクションの有無に関わりなく、前記第１の文書の中で識別された前記参照により参照されている前記第２の文書のうち少なくとも１つに対する第２の要求を自動的に送信するステップと、
前記第２の要求により要求された前記少なくとも１つの第２の文書を受信し、受信した前記少なくとも１つの第２の文書を、前記第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、
前記第２の文書のうちの少なくとも１つに対するユーザ要求に応答して、まず前記ユーザ要求に前記ローカルな記憶装置から対応することを試み、前記第２の文書のうちの少なくとも１つが前記ローカルな記憶装置に記憶されていない場合にのみ前記第２の文書のうちの少なくとも１つに対して第３の要求を前記第２のコンピュータへ送信するステップとを備える、方法。
【請求項２】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＸＭＬ（eXtensible Markup Language）文書を含む、請求項１に記載の方法。
【請求項３】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＨＴＭＬ（Hypertext Markup Language）文書を含む、請求項１に記載の方法。
【請求項４】
前記第１の文書および前記第２の文書のうち少なくとも一方はWebページを含む、請求項１に記載の方法。
【請求項５】
前記第１の要求、前記第２の要求および前記第３の要求のうち少なくとも１つはＨＴＴＰ（Hypertext Transfer Protocol）要求を含む、請求項１に記載の方法。
【請求項６】
さらに、前記ユーザの要求した第２の文書の履歴を作成および維持して、前記第２のコンピュータへ前記履歴を送信するステップを備える、請求項１に記載の方法。
【請求項７】
コンピュータであって、コンピュータネットワーク経由で第２のコンピュータに文書を要求するように構成され、
少なくとも１つのプロセッサと、
少なくとも１つのデータ記憶装置と、
前記少なくとも１つのプロセッサにより生成される複数のプロセスとを備え、前記複数のプロセスは、
第１のユーザアクションに応答して、第１の文書に対する第１の要求を前記第２のコンピュータへ送信するステップと、
前記第１の要求に応答して前記第２のコンピュータにより送信された前記第１の文書を受信するステップと、
受信した前記第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、
ユーザアクションの有無に関わりなく、前記第１の文書の中で識別された前記参照により参照されている前記第２の文書のうち少なくとも１つに対する第２の要求を自動的に送
信するステップと、
前記第２の要求により要求された前記少なくとも１つの第２の文書を受信し、受信した前記少なくとも１つの第２の文書を、第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、
前記第２の文書のうちの少なくとも１つに対するユーザ要求に応答して、まず前記ユーザ要求に前記ローカルな記憶装置から対応することを試み、前記第２の文書のうちの少なくとも１つが前記ローカルな記憶装置に記憶されていない場合にのみ前記第２の文書のうちの少なくとも１つに対して第３の要求を前記第２のコンピュータへ送信するステップとのための処理ロジックを含む、コンピュータ。
【請求項８】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＸＭＬ（eXtensible Markup Language）文書を含む、請求項７に記載のコンピュータ。
【請求項９】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＨＴＭＬ（Hypertext Markup Language）文書を含む、請求項７に記載のコンピュータ。
【請求項１０】
前記第１の文書および前記第２の文書のうち少なくとも一方はWebページを含む、請求項７に記載のコンピュータ。
【請求項１１】
前記第１の要求、前記第２の要求および前記第３の要求のうち少なくとも１つはＨＴＴＰ（Hypertext Transfer Protocol）要求を含む、請求項７に記載のコンピュータ。
【請求項１２】
さらに、前記ユーザの要求した第２の文書の履歴を作成し維持して、前記第２のコンピュータへ前記履歴を送信するステップを備える、請求項７に記載のコンピュータ。
【請求項１３】
遠隔コンピュータによるWebサイトへのアクセスの要求に対応する方法であって、
前記Webサイトへのアクセスの前記要求を受信する受信ステップと、
前記要求に応答して、前記アクセスされたWebサイトの第１のページを前記遠隔コンピュータへ送信する第１の送信ステップと、
前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求の有無に関わりなく、
前記遠隔コンピュータによる後の要求の予測、および
前記遠隔コンピュータにより以前にアクセスされた前記Webサイトの第２のページの履歴
のうち少なくとも１つに基づき、前記Webサイトの少なくとも１つの選択された第２のページを前記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを備える、方法。
【請求項１４】
前記履歴は、前記遠隔コンピュータから検索されるファイル内に維持される、請求項１３に記載の方法。
【請求項１５】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に対応するステップを備える、請求項１３に記載の方法。
【請求項１６】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に基づき、前記以前にアクセスされた第２のページの履歴を更新するステップを備える、請求項１３に記載の方法。
【請求項１７】
前記更新するステップは、アクセスの頻度に基づき、前記後に要求された第２のページの各々に重み付け係数を割当てるステップを含み、前記重み付け係数は、前記第２の送信
ステップにて前記遠隔コンピュータへどの第２のページを先回りして送信するかを制御する、請求項１６に記載の方法。
【請求項１８】
前記予測は、前記遠隔コンピュータに接続されたポインティングデバイスについて検出された動きに基づく、請求項１３に記載の方法。
【請求項１９】
さらに、前記遠隔コンピュータからファイルを検索するステップを備え、前記ファイルは前記遠隔コンピュータを他の遠隔コンピュータから区別する、請求項１６に記載の方法。
【請求項２０】
前記ファイルはクッキーを含む、請求項１６に記載の方法。
【請求項２１】
コンピュータネットワーク経由で遠隔コンピュータによるWebサイトへのアクセスの要求に対応するように構成されたコンピュータであって、
少なくとも１つのプロセッサと、
少なくとも１つのデータ記憶装置と、
前記少なくとも１つのプロセッサにより生成される複数のプロセスとを備え、前記複数のプロセスは、
前記Webサイトへのアクセスの前記要求を受信する受信ステップと、
前記要求に応答して、前記アクセスされたWebサイトの第１のページを前記遠隔コンピュータへ送信する第１の送信ステップと、
前記遠隔コンピュータに由来するWebサイトの第２のページに対する後の要求の有無に関わりなく、
前記遠隔コンピュータによる後の要求の予測、および
前記遠隔コンピュータにより以前にアクセスされた前記Webサイトの第２のページの履歴
のうち少なくとも１つに基づき、前記Webサイトの少なくとも１つの選択された第２のページを前記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを実行するための処理ロジックを含む、コンピュータ。
【請求項２２】
前記履歴は、前記遠隔コンピュータから検索されるクッキーに維持される、請求項２１に記載のコンピュータ。
【請求項２３】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に対応するステップを備える、請求項２１に記載のコンピュータ。
【請求項２４】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に基づき、前記以前にアクセスされた第２のページの履歴を更新するステップを備える、請求項２１に記載のコンピュータ。
【請求項２５】
前記更新するステップは、アクセスの頻度に基づき、前記後で要求された第２のページの各々に重み付け係数を割当てるステップを含み、前記重み付け係数は、前記第２の送信ステップにて前記遠隔コンピュータへどの第２のページを先回りして送信するかを制御する、請求項２４に記載のコンピュータ。
【請求項２６】
前記予測は、前記遠隔コンピュータに接続されたポインティングデバイスについて検出された動きに基づく、請求項２１に記載のコンピュータ。
【請求項２７】
さらに、前記遠隔コンピュータからファイルを検索するステップを備え、前記ファイルは前記遠隔コンピュータを他の遠隔コンピュータから区別する、請求項２４に記載のコン
ピュータ。
【請求項２８】
前記ファイルはクッキーを含む、請求項２４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の背景
１．発明の分野
この発明は一般的にワールドワイドウェブ（以下「Web」と称す）に関する。より特定的に、この発明はWebサイト内での移動効率を向上させるための方法およびシステムに関する。
【背景技術】
【０００２】
２．関連技術の説明
Webは、単に静的なファイル（ＨＴＭＬ（Hypertext Markup Language）、ＧＩＦ（Graphic Interchange Format）など）の保管場所から、ありとあらゆる可能性に跨る極めて動的なWebサイトのシステムへと変貌を遂げており、この可能性には、音楽をオンデマンドで同時通信するマルチメディアサイトから、消費者と企業または企業同士をリンクする電子商取引Webサイトまでがある。このような利用形態の変貌に伴い、Webサイトが供給するコンテンツの性質にも相応の変化が生じている。実際、Webサイト、特に電子商取引関係のWebサイトおよびポータルにより供給されるWebページは、動的に生成されるものがその数を増加させている。
【０００３】
供給されるWebページが静的でも動的でも、Webサーバは傾向としてWebページをオンデマンドで配信する。すなわち、ユーザがハイパーリンクを選択（たとえばクリック）する度にこのリンクに対する要求がWebサーバに送信されて処理され、該当するWebページがユーザに返されて、典型的にはユーザのブラウザソフトウェアによりディスプレイ上に表示される。このプロセスは瞬間的なものではなく、ユーザは、要求をしたときから要求したページが配信されるまでの時間間隔を待たされることになる。この間隔は、ユーザのコンピュータからWebサーバへの送信時間と、要求の受信、処理、および要求したページの構築が行なわれるサーバ処理時間と、要求したページがユーザに送信される送信時間とを含む。この間隔は１秒だけのこともあれば１０秒を越えることもあり、これは要求したコンテンツ、ユーザのコンピュータとWebサーバとを接続するネットワーク上の通信量、およびWebサーバに対する負荷などの変動要因に依存する。そして、この後、ユーザの要求するページまたは文書ごとに上述の要求／応答サイクルが繰返される。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
図１は、ユーザのコンピュータ（クライアント／サーバアーキテクチャのクライアント）と遠隔サーバ（クライアント／サーバアーキテクチャのサーバ）との間における上述のような従来の要求／応答サイクルを例示する。ここに示すように、ユーザのコンピュータ１１８はコンピュータネットワーク１０１経由でWebサーバ１０２からのWebページ１１５にアクセスしている。Webサーバ１０２は、要求したWebページの構築の際にアクセスされるデータベース１０３に接続されることもある。Ｓ１に示すように、ユーザはコンピュータ１１８を介して、たとえばカーソル１１２を用いてページ１１５上のハイパーリンク１３５をクリックまたはその他で選択してページ３への要求を行なう。ページ３への要求はネットワーク１０１上を送信されてサーバ１０２に達し、ここで要求が処理され、アクセスデータベース１０３（および／またはその他たとえば広告を配信するためのデータベース）によってページ３が構築され、構築されたページ３がＳ２に示すようにユーザのコンピュータ１１８へ送信される。Ｓ１にてユーザがページ３を要求した時刻から、要求したページ３（参照番号１１６で示す）がユーザのコンピュータ１１８へと配信された時刻ま
で、ｔ２−ｔ１に等しい間隔が経過している。いくらかの時間間隔（ｔ３−ｔ２に等しい）の間、Webサーバ１０２に対してコンピュータ１１８による追加のページの要求がないことがあり得る。この間隔の間、ユーザは１１６に示すページ３を読むなど、その他のやり方で享受していることがあり得る。時刻ｔ３にて、この例におけるユーザは１３６で示すページ４へのハイパーリンクをクリックまたはその他で選択する。これに従いコンピュータ１１８はＳ３に示すようにページ４への要求を発行する。この要求はサーバ１０２で受信され処理されて、要求されたページ４（１１７で示す）が間隔ｔ４−ｔ３の間にＳ４でユーザのコンピュータに返される。いくらか後の時刻ｔ５にて、ユーザがページ５を見るためにハイパーリンク１３７をクリックすると、要求Ｓ５および応答Ｓ６が間隔ｔ６−ｔ５の間に生成される。破線で示すように、ｔ３とｔ２との間およびｔ５とｔ４との間の間隔は実質的に遊休時間である。すなわちユーザはこれらの期間中には要求したページを見ているのであり、要求されるWebページもなければサーバ１０２からユーザのコンピュータ１１８へ送信されるWebページもない。さらに、ユーザはWebページを要求する度に、要求が生成・送信・処理されて、サーバからの応答が受信されるのを待たなければならない。この待ち時間は長くかかることもあり、ユーザが苛立ちを覚えて、サーバによるWebサイトのサービスを閲覧する機会が減ってしまう恐れがある。商取引サイトの場合には、このように待ち時間が長い結果として、顧客がより効率のよいWebサイトへ走って取引が失われることもある。
【０００５】
したがって必要とされているのは、ユーザにコンテンツをより効率的に配信するための方法およびシステムである。より特定的に、必要とされているのは、現在十分に利用されていない時間および帯域幅の資源を効率的に利用する方法およびシステムである。
【課題を解決するための手段】
【０００６】
発明の概要
したがってこの発明の目的は、ユーザにコンテンツをより効率的に配信するための方法およびシステムを提供することである。より特定的に、必要とされているのは、現在十分に利用されていない時間および帯域幅の資源をより効率的に利用するための方法およびシステムである。この発明のさらなる目的は、Webサイト内でのユーザの移動を最適化することでユーザが閲覧する機会を増やすことである。上記の目的および以下に述べられて明らかとなる目的に従い、第１のコンピュータが第２のコンピュータに文書を要求する方法は、第１のユーザアクションに応答して、第１の文書に対する第１の要求を第２のコンピュータへ送信するステップと、第１の要求に応答して第２のコンピュータにより送信された第１の文書を受信するステップと、受信した第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、ユーザアクションの有無に関わりなく、第１の文書の中で識別された参照により参照されている第２の文書のうち少なくとも１つに対する第２の要求を自動的に送信するステップと、第２の要求により要求された少なくとも１つの第２の文書を受信し、受信した少なくとも１つの第２の文書を、第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、第２の文書のうちの少なくとも１つに対するユーザ要求に応答して、まず上記ユーザ要求に上記ローカルな記憶装置から対応することを試み、上記第２の文書のうちの少なくとも１つが上記ローカルな記憶装置に記憶されていない場合にのみ上記第２の文書のうちの少なくとも１つに対して第３の要求を第２のコンピュータへ送信するステップとを備え得る。
【０００７】
第１の文書、および／または第２の文書のうち１つ以上は、ＸＭＬ（eXtensible Markup Language）文書を含み得る。第１の文書、および／または第２の文書のうち１つ以上は、ＨＴＭＬ（Hypertext Markup Language）文書を含み得る。第１の文書および／または第２の文書はWebページを含み得る。第１の要求、第２の要求および／または第３の要求はＨＴＴＰ（Hypertext Transfer Protocol）要求を含み得る。この方法はさらに、ユーザの要求した第２の文書の履歴を維持して、第２のコンピュータへ上記履歴を送信するス
テップを備え得る。
【０００８】
この発明はまた、コンピュータであって、コンピュータネットワーク経由で第２のコンピュータに文書を要求するように構成されたものであり、少なくとも１つのプロセッサと、少なくとも１つのデータ記憶装置と、上記少なくとも１つのプロセッサにより生成（spawn）される複数のプロセスとを備え、上記複数のプロセスは、第１のユーザアクションに応答して、第１の文書に対する第１の要求を第２のコンピュータへ送信するステップと、第１の要求に応答して第２のコンピュータにより送信された第１の文書を受信するステップと、受信した第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、ユーザアクションの有無に関わりなく、第１の文書の中で識別された参照により参照されている第２の文書のうち１つ以上に対する第２の要求を自動的に送信するステップと、第２の要求により要求された少なくとも１つの第２の文書を受信し、受信した第２の文書を、第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、第２の文書のうちの１つ以上に対するユーザ要求に応答して、まず上記ユーザ要求に上記ローカルな記憶装置から対応することを試み、上記第２の文書が上記ローカルな記憶装置に記憶されていない場合にのみ上記第２の文書に対して第３の要求を第２のコンピュータへ送信するステップとのための処理ロジックを含む。
【０００９】
この発明は、その別の実施例に従うと、遠隔コンピュータによるWebサイトへのアクセスの要求に対応する方法であって、Webサイトへのアクセスの要求を受信する受信ステップと、上記要求に応答して、アクセスされたWebサイトの第１のページを上記遠隔コンピュータへ送信する第１の送信ステップと、上記遠隔コンピュータに由来するWebサイトの第２のページに対する後の要求の有無に関わりなく、上記遠隔コンピュータによる後の要求の予測、および／または、上記遠隔コンピュータにより以前にアクセスされたWebサイトの第２のページの履歴に基づき、Webサイトの１つ以上の選択された第２のページを上記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを備える。
【００１０】
上記履歴は、たとえば上記遠隔コンピュータから検索されるファイル内に維持され得る。この方法はさらに、上記遠隔コンピュータに由来するWebサイトの第２のページに対する後の要求に対応するステップを備え得る。この方法はさらに、上記遠隔コンピュータに由来するWebサイトの第２のページに対する後の要求に基づき、上記以前にアクセスされた第２のページの履歴を更新するステップを備え得る。上記更新するステップは、アクセスの頻度に基づき、後に要求された第２のページの各々に重み付け係数を割当てるステップを含み得る。このようにして、上記重み付け係数を用いて、上記第２の送信ステップにて遠隔コンピュータへどの第２のページを先回り送信するかを制御することができる。上記予測は、たとえば上記遠隔コンピュータに結合されたポインティングデバイスについて検出された動きに基づき得る。上記遠隔コンピュータからファイルを検索するステップもまた実行されることがあり、ここで上記ファイルは上記遠隔コンピュータを他の遠隔コンピュータから区別する。上記ファイルはクッキーを含み得る。
【００１１】
この発明はまた、コンピュータネットワーク経由で遠隔コンピュータによるWebサイトへのアクセスの要求に対応するように構成されたコンピュータであって、少なくとも１つのプロセッサと、少なくとも１つのデータ記憶装置と、上記少なくとも１つのプロセッサにより生成（spawn）される複数のプロセスとを備え、上記複数のプロセスは、Webサイトへのアクセスの要求を受信する受信ステップと、上記要求に応答して、アクセスされたWebサイトの第１のページを上記遠隔コンピュータへ送信する第１の送信ステップと、上記遠隔コンピュータに由来するWebサイトの第２のページに対する後の要求の有無に関わりなく、上記遠隔コンピュータによる後の要求の予測、および／または、上記遠隔コンピュータにより以前にアクセスされたWebサイトの第２のページの履歴に基づき、Webサイトの
１つ以上の選択された第２のページを上記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを実行するための処理ロジックを含む。
【発明を実施するための最良の形態】
【００１２】
発明の説明
用語
ページ：ここにおけるページとは、ＸＭＬまたはＨＴＭＬ文書（たとえばWebページ）などの文書であって、ＨＴＴＰ要求などクライアントからの単一の要求に応答してサーバ（たとえばWebサーバ）により生成されるものである。しかしこの発明の適用範囲はＨＴＭＬでの応答には限定されない。しかし、単に例示の目的で、ここにおける「ページ」とは、ＨＴＭＬまたは動的ＨＴＭＬ（ＤＨＴＭＬ）Webページなどの、サーバからの応答を意味する。このＨＴＭＬ文書は、クライアント側で解決され得る画像および／またはその他のリッチデータのソースへの参照を含むことがあり、クライアントは埋込まれた画像、音声、JavaScript（登録商標）コードスニペットなどを入手するために追加の要求を発行しなければならないことがある。
【００１３】
機能の説明
図２は、この発明の一実施例に従う先回りおよび予測してページをキャッシュするシステムおよび方法の各局面を例示する。図２は、時間軸２０１により示される開始時刻ｔ１から後の時刻ｔ７までのシステム２００の状態を例示する。システム２００はコンピュータ２１８を含み、これにはパーソナルコンピュータ、ワークステーション、移動計算装置またはその他の計算機器などがある。コンピュータ２１８はネットワーク１０１に接続され、これはインターネットおよび／または別のコンピュータネットワークを含み得る。さらにWebサーバ２０２がネットワーク１０１に接続される。Webサーバ２０２はさらに１つまたは複数のデータベース１０３に（直接またはネットワーク１０１経由で）接続されることがあり、ここからWebサーバ２０２は、コンピュータ２１８へ配信するためのWebページ（またはその一部）などの文書を構築することを可能にする情報を検索できる。具体的に、マウスクリックまたはＵＲＬ（Universal Resource Locator）の手動入力などのユーザアクションに応答して、コンピュータ２１８は、或るWebページに対するＨＴＴＰ（Hypertext Transfer Protocol）要求を、ネットワーク１０１経由でサーバ２０２へ送信できる。これに応答してWebサーバ２０２は要求を処理し、必要に応じてデータベース１３０へアクセスし、要求された文書（たとえばWebページ）をコンピュータ２１８に返すことができる。たとえば要求された文書は、図２の参照番号２１５で示唆するようにWebベンダのホームページを表わすことがあり得る。
【００１４】
ユーザが開始するＨＴＴＰ要求とサーバ２０２によるＨＴＭＬ応答とのシリアルサイクル（図１に示したものなど）に替えて、この発明では、その一実施例に従うと、ユーザアクションの有無に関わりなくコンピュータ２１８は１つまたは複数の文書（たとえばWebページ）を要求し、Webサーバ２０２がこれを提供する。具体的に、この発明の一実施例では、コンピュータ２１８は、始めに要求した文書の中で参照されている１つ以上の文書に対する要求を自動的に送信する。図２に示すように、例示のホームページ２１５は３つのWebページに対する参照（この場合ハイパーリンク）を含んでいる。すなわちホームページ２１５は、第１のページＰ１へのハイパーリンク（ＨＬ  Ｐ１）、第２のページＰ２へのハイパーリンク（ＨＬ  Ｐ２）、および第３のページＰ３へのハイパーリンク（ＨＬ
Ｐ３）を含んでいる。この発明に従うと、コンピュータ２１８はこれらのハイパーリンクＨＬ  Ｐ１，ＨＬ  Ｐ２，ＨＬ  Ｐ３の各々を識別し、２５０に示すように、識別されたハイパーリンクにより参照されるページＰ１，Ｐ２，Ｐ３のうち１つ以上を、ユーザに関わりなく要求することができる。この要求２５０に応答してWebサーバ２０２は、要求されたページＰ１、Ｐ２および／またはＰ３を検索および／または構築して（かつ場合によってはその過程でデータベース１０３にアクセスし）、２５２に示すように要求された
ページＰ１、Ｐ２および／またはＰ３をコンピュータ２１８へ送信する。この発明に従うとコンピュータ２１８は、ローカルな記憶装置にこれらのページＰ１、Ｐ２および／またはＰ３を記憶してもよい。図２ではこのローカルなメモリはキャッシュメモリ２２０として示される。この発明の一実施例に従うと、キャッシュメモリ２２０は、たとえばコンピュータ２１８のランダムアクセスメモリ（ＲＡＭ）内に維持されてもよい。または、ローカルな記憶装置はハードディスク上に維持されても、またはたとえばページング機構によりＲＡＭ内およびハードディスク上に維持されてもよい。当業者であればその他のローカルな記憶装置２２０の物理的実現例に思い至るであろう。間隔ｔ２−ｔ１の間、要求２５０がWebサーバ２０２へ送信され、要求されたページがコンピュータ２１８により受信される。その間、ユーザは、現在ダウンロードされているページ（この場合ホームページ２１５）を閲覧したり、読むなど、またはその他のやり方で享受している。したがって、ページＰ１、Ｐ２および／またはＰ３のダウンロードは、非同期的に、バックグラウンドで行なわれ、コンピュータ２１８とWebサーバ２０２との間の接続が遊んでいるどのような間隔も利用される。このようなサーバ２０２から遠隔コンピュータ２１８へのページの非同期ダウンロードは、コンピュータ２１８のユーザにより要求されることになる次の文書またはページが、キャッシュ２２０に記憶されたページの中にあるであろうという予想の下で実行される。したがって、コンピュータ２１８のユーザが実際に時刻ｔ３にて（たとえば現在表示されているページ上に現れているハイパーリンクをクリックすることで）次のページを選択したとき、所望のページは既にダウンロードされていて殆ど即座に見ることができるようになっており、従来のようにコンピュータ２１８とWebサーバ２０２との間における要求／応答の全サイクルに関わる期間を待つ必要がないであろう。
【００１５】
引続き図２に展開する例を参照して、ユーザは次に見たいと望むページとしてページＰ２を選択し、これに従い、時刻ｔ３に示すように、ポインティングデバイスを用いてカーソル１１２を操作し、ハイパーリンクＨＬ  Ｐ２をクリック（など）する。ページＰ２は先に時間間隔ｔ２−ｔ１の間にダウンロードされているため、ページＰ２（図２の２１６で示す）は、２５３で示すようにキャッシュ２２０から素早く検索されて、コンピュータ２１８において実行されているブラウザまたはその他の表示ソフトウェアにより表示され得る。同様に、ページＰ２は、（たとえば）ページＰ２１，Ｐ２２，Ｐ２３へのハイパーリンクＨＬ  Ｐ２１，ＨＬ  Ｐ２２，ＨＬ  Ｐ２３の形をとる参照を含む。したがってこの発明では、コンピュータ２１８はこれらのハイパーリンクＨＬ  Ｐ２１，ＨＬ  Ｐ２２，ＨＬ  Ｐ２３の各々を識別し、２５４で示すように、識別されたハイパーリンクにより参照されているページＰ２１，Ｐ２２，Ｐ２３のうち１つまたは複数を、ユーザに関わりなく要求する。この要求２５４に応答してWebサーバは、要求されたページＰ２１、Ｐ２２および／またはＰ２３を検索および／または構築して（かつ場合によってはその過程でデータベース１０３にアクセスし）、２５６に示すように要求されたページＰ２１、Ｐ２２および／またはＰ２３をコンピュータ２１８へ送信することができる。ハイパーリンクの識別と、識別されたハイパーリンクにより参照される文書に対する要求と、これのWebサーバによる送信およびその後のコンピュータ２１８による受信とは、間隔ｔ４−ｔ３内、すなわちユーザが現在表示されているページ（この場合Ｐ２）を閲覧している時間の間に行なわれ得る。この発明に従うと、コンピュータ２１８はこれらのページＰ２１、Ｐ２２および／またはＰ２３を、コンピュータ２１８にとってローカルな記憶装置すなわちキャッシュ２２０に記憶させ得る。そして、ユーザが次に見るページとしてページＰ２３を選択した場合、ページＰ２３は２５７で示すようにキャッシュ２２０から検索され、ページＰ２３（図２の２１７で示す）は素早く表示され得る。すなわち、従来発生していた、Webサーバ２０２からページを要求しその配信を待つのに関わる遅延はなくなっている。
【００１６】
同様に、２５８に示すように、ページＰ２３は、それぞれページＰ２３１，Ｐ２３２，Ｐ２３３へのハイパーリンクＨＬ  Ｐ２３１，ＨＬ  Ｐ２３２，ＨＬ  Ｐ２３３の形をとる参照を含む。これに従いこの発明では、コンピュータ２１８はこれらのハイパーリンク
ＨＬ  Ｐ２３１，ＨＬ  Ｐ２３２，ＨＬ  Ｐ２３３の各々を識別し、２５８に示すように、識別されたハイパーリンクにより参照されているページＰ２３１，Ｐ２３２，Ｐ２３３のうち１つまたは複数を、ユーザに関わりなく要求する。この要求２５８に応答してWebサーバ２０２は、要求されたページＰ２３１、Ｐ２３２および／またはＰ２３３を検索および／または構築して（かつ場合によってはその過程でデータベース１０３にアクセスし）、２６０に示すように、要求されたページＰ２３１、Ｐ２３２および／またはＰ２３３をコンピュータ２１８へ送信でき、これらすべては時間間隔ｔ７−ｔ６の間に実行される。この発明に従うと、コンピュータ２１８は、接続されているキャッシュ２２０の中にこれらのページＰ２３１、Ｐ２３２および／またはＰ２３３を記憶させ得る。そしてユーザが次に見るページとしてページＰ２３１、Ｐ２３２またはＰ２３３のうちいずれか１つを選択した場合、ページＰ２３１、Ｐ２３２および／またはＰ２３３はキャッシュ２２０から検索され、従来発生していた、ページをWebサーバから要求してその配信を待つのに関わる遅延なしに表示される。
【００１７】
要求されたページまたは文書がキャッシュ２２０内になければ、所望のページまたは文書をWebサーバ２０２から要求するための要求／応答サイクルがコンピュータ２１８において開始される。これは、ユーザがページ間を素早くジャンプ、すなわち素早く次々にハイパーリンクをクリックしてWebページおよび／または文書を要求した場合に該当する。実際、接続の早さ、ネットワーク通信量、および／または、Webサーバ２０２からコンピュータ２１８へ送信されるべきファイルのサイズ（および／またはその他の要因）に依存して、現在表示されているページの中で参照されているページまたは文書のいずれかまたはすべてをダウンロードするための時間が足りなくなることもある。しかしこの場合でも、システムの応答時間の問題がこの発明の実現されていない場合よりも悪化することはないであろう。実際、キャッシュ２２０を調べて、次の要求されたページがここにあるかどうかを判断するのに必要な時間は、コンピュータ２１８とWebサーバ２０２との間における従来の要求／応答サイクルに必要な時間と比較すると僅かなものである。図２を補完するものとして、コンピュータ２１８のユーザによりアクセスされてWebサーバ２０２により供給されているWebサイトのマップをデータベース１０３の右側に示し、現在表示されているページには斜線を入れて示す。
【００１８】
現在表示されているページにあるいくつかまたはすべての参照の識別と、この後になされる、識別された参照のうちいくつかまたはすべてに対する要求の生成とを可能にする機能は、コンピュータ２１８において実行されるブラウザソフトウェアのプラグインアプリケーションにより、またはたとえばアプレット（Webページと共にユーザへ送信され得る小プログラム）として実行される。現在のところアプレットによる実現が好ましいが、それは、プラグインアプリケーションの場合のようにコンピュータ２１８のユーザがプログラムをダウンロードする必要がないからである。この発明の一実施例に従うと、アプレットはユーザが見えるよう現れる必要はなく、単に機能アプレットであってもよい。そういったアプレットは、現在表示されているページにあるハイパーリンクにより参照されるページの各々すべてをダウンロードすることもあれば、選択されたページのみをダウンロードすることもある。Webページ（たとえば図２のWebページ２１５）の中には、JavaScript（登録商標）（など、但しこの発明はこれに限定されない）コード機能もまた埋込まれていてもよい。そういったJavaScript（登録商標）機能は、ハイパーリンクの目標のＵＲＬを指定する属性をパラメータとしてとるように構成される場合がある。たとえばWebページの含むJavaScript（登録商標）コード機能がpreemptivedwnld()と呼ばれ、これがパラメータとして、preemptivedwnld(href="http:www.homepage_Fig.2.html"）というＨＴＭＬｈｒｅｆ属性をとる場合がある。この場合には、コンピュータ２１８のユーザが図２のＨＬ  Ｐ２などのハイパーリンクをクリックすると、クリックされたハイパーリンクＨＬ
Ｐ２がパラメータとしてJavaScript（登録商標）機能へと通される。この機能の目的は、上記のアプレットを起動して、要求されたページＰ２がキャッシュ２２０内に存在する
かどうかを調べることである。要求されたページＰ２が実際にキャッシュ２２０に存在すれば、Ｐ２がキャッシュ２２０から提供される。要求されたページＰ２がキャッシュ２２０内に存在しなければ、アプレットはこれに対する要求を生成して、この要求をWebサーバ２０２へ送信する。次にこの要求されたページがコンピュータ２１８で受信され、キャッシュ２２０に記憶され、かつ／または、コンピュータ２１８において実行されているブラウザによって表示（もしくはその他コンピュータ２１８において実行されている好適なソフトウェアによって表示）され得る。アプレットとして実行される場合には、アプレットのセキュリティに関する懸念から、キャッシュ２２０はメモリ（コンピュータ２１８のＲＡＭ）の中にのみ常駐して、コンピュータ２１８のファイルシステムには常駐しないことがあり得る。アプレットの代わりにプラグインアプリケーションを利用する場合、コンピュータ２１８の固定ディスク（など）にあるブラウザ自身のキャッシュをキャッシュ２２０として利用することができる。他の実現例もまた可能であり、この発明はアプレットおよび／またはJavaScript（登録商標）を利用する実現例には限定されない。
【００１９】
キャッシュメモリ２２０のサイズは固定であっても、ブラウザおよび／またはユーザにより選択されてもよい。キャッシュメモリの内容を維持する殆どあらゆる方法が、その内容を確実に有効に保つために実現され得る。すなわち、キャッシュ２２０の内容（たとえばWebページ）の一貫性を維持するための或る機構が設けられることが好ましい。また、Webサイトは頻繁に変更されるため、キャッシュ２２０内の古い（新しくなく、他によって取って代わられた）エントリを無効化して、新しいエントリをこれに記憶させるための或る機構が設けられることが好ましい。当業者であれば、ここで実現され得るそのような機構は多数あることが理解されるであろう。たとえば、キャッシュ２２０内のエントリは特定の期間の経過後または特定の日までに無効化され、こうしてコンピュータ２１８がそのキャッシュ２２０からユーザに対して古いWebページを表示することを確実になくす。
【００２０】
Webサーバ２０２が供給してコンピュータ２１８のユーザが見るWebサイトのページは、その履歴が生成され維持されることがある。この履歴は或る期間に亘りユーザが見たWebページの識別を可能とする。このような履歴は、コンピュータ２１８のユーザが最初にWebサイトにログオンした際にコンピュータ２１８により生成されてWebサーバ２０２へ送られてもよい。すると、Webサーバ２０２は、履歴に記憶された履歴情報を用いて、選択されたページを遠隔のコンピュータ２１８へ先回りしてダウンロードさせることができる。そしてコンピュータ２１８はこれら先回りしてダウンロードされたページをキャッシュ２２０に記憶させるように構成され、これにより、ユーザが次に見るページとしてこれらキャッシュされたページのうち１つを選択した際に、これに対する即座の素早いアクセスを可能にすることができる。すなわちWebサーバ２０２は、Webサイトにおける履歴上最も頻繁にアクセスされた（たとえば見られた）ページのうち１つ以上をダウンロードさせることがあり得るが、これはユーザの過去の閲覧傾向に従って、次に表示されるべきページとして上記先回りしてダウンロードされたページのうちの１つのページを再び選択するであろうという予測によっている。
【００２１】
図３はWebサイト３００のマップを表わす階層構造を示す。ここに示すように、この階層構造は最上レベルのページ（典型的にはWebサイト３００のホームページＨＰ）および或る数の階層的に下のページＰ１〜Ｐ３２２を示す。ページ間の線は、或るページから階層的に下のページまたは或るその他階層的に関係しないページへのハイパーリンクを表わす。したがって、例示のWebサイト３００では、ホームページＨＰは４つのハイパーリンク、すなわちそれぞれページＰ１、ページＰ２、ページＰ３、およびページＰ４へのハイパーリンクを含む。ユーザが最初にこのWebサイトのホームページＨＰにログオンした際、コンピュータ２１８はホームページＨＰにより参照されるページのうち１つ以上を要求し得る。すなわちページＰ１〜Ｐ４から１つ以上を要求し、しかもこれをユーザアクションの有無に関わりなく行ない得る。次にこれらのページがユーザのコンピュータ２１８の
キャッシュ２２０内に記憶されて、ユーザに選択された際に、コンピュータ２１８上で実行されるブラウザまたはその他の表示ソフトウェアに与えられ得る。この後、このような実際にユーザの選択したページからなるリスト（ユーザの最近の閲覧履歴）がファイル（たとえばクッキー）に記憶され得るが、これはコンピュータ２１８のユーザが次にWebサイト３００にログオンした際にWebサイト２０２へ送信されてデータベース１０２に記憶されるように構成される。そしてこのようなファイルにより、このユーザが一意に識別され、この一意のユーザの最近の閲覧履歴について何らかの指示が与えられることになる。この履歴はコンピュータ２１８のユーザの閲覧履歴を表わしているため、これを販売活動、たとえば照準を絞った電子メールおよび広告の提供などの目的に用いることもできる。各々のユーザを他のユーザと一意に区別するあらゆる手段がこの発明との関連で実現可能である。
【００２２】
コンピュータ２１８のユーザがこの後Webサイト３００に訪れると、Webサーバ２０２は、コンピュータ２１８がこの後に行なうであろう要求についての予測に基づき、かつ／またはコンピュータ２１８により以前にアクセスされたページの履歴に基づき、１つ以上のページをコンピュータ２１８へ先回りしてダウンロードさせることができる。この予測は単にWebサイトにおける次の階層的に下にあるページに基づいて行なわれてもよい。たとえばコンピュータ２１８がページＰ２１１にアクセスしたところであれば、ユーザが次にページＰ２１１１および／またはＰ２１１２へアクセスしようと望むことが考えられるが、それはこれらのページがサイト３００における次の階層的に下にあるページだからである。しかしサイト３００（またはその他任意のサイト）のページの先回りダウンロードは、ユーザの閲覧体験を向上させるという目標を達成するものであればその他どのような予測に基づいてもよい。
【００２３】
これに代えて、コンピュータ２１８のユーザが後でWebサイト３００に訪れた際に、ユーザの以前の閲覧履歴が入っているファイルがWebサーバ２０２へ送信されてもよい。Webサーバ２０２はこの履歴を受信して、（この履歴により決定される）Webサイト３００における最も頻繁にアクセスされたページを、ユーザのコンピュータ２１８へ先回りしてダウンロードさせることができる。これら先回りしてダウンロードされたファイルはキャッシュ２２０に記憶されてもよく、これら先回りしてダウンロードされたページのうち１つ以上をユーザがやはり次に見るページとして選択した場合に、これを素早く表示することが可能となる。Webサーバ２０２からコンピュータ２１８へ先回りダウンロードすべきページはどれかを判断する助けとして、Webサイト３００における各々のページに重み付け係数が割当てられてもよい。各々の重み付け係数の値は、この重み付け係数が割当てられたページへのアクセスの頻度に基づいて決定されてもよい。このようにして重み付け係数により、どのページをコンピュータ２１８へ先回りして送信するかが制御されてもよい。この履歴はリンクされたリストなどとして構成されてもよく、たとえば、リスト内の各々の要素がページＨＰからページＰ３２２までのうち１つと一意に関連付けられ、各々の要素はこれと関連付けられた重み付け係数を含む。この発明の一実施例に従うと、ユーザがサイト３００のページにアクセスする度に、このアクセスされたページに関連付けられた重み付け係数の値は増加（または減少）する。そして、最大（または最小）の重み付け係数と関連付けられたページが、コンピュータ２１８へ先回りしてダウンロードされてもよい。
【００２４】
図４はサイト３００を示し、コンピュータ２１８により以前にアクセスされたページの履歴に基づいてWebサーバ２０２がコンピュータ２１８へ先回りしてダウンロードさせることのできるページを示す。図４において、塗りつぶした円のサイズはこのページに関連付けられている割当てられた重み付け係数の値の大きさと比例する。図４に例示する例では、ページＰ１，Ｐ３，Ｐ３２，Ｐ３２１，Ｐ３２２に関連付けられた重み付け係数は、その他サイト３００を構成するページに関連付けられた重み付け係数よりも大きいが、そ
れはコンピュータ２１８が以前このサイトに訪れた際にこれらのページに頻繁にアクセスしたことによる。したがってこれらのページは、コンピュータ２１８のユーザにより再び選択されることが考えられ得る候補である。そのため、これらすべては、Webサーバ２０２によりコンピュータ２１８へ先回りしてダウンロードされそのキャッシュ２２０内に記憶されてもよい。しかしながら、キャッシュ２２０内で利用可能な空間、コンピュータ２１８とWebサーバ２０２との間の接続の速さおよび／またはその他の考慮事項のため、先回りしてダウンロードされるページの数が制限されることが望ましいことがある。このため、重み付け係数のしきい値を規定して、先回りダウンロードの目的のための重み付け係数の最小値（または最大値）を規定してもよい。これに伴い、ページＰ１に関連付けられた重み付け係数の値の大きさが、予め規定された最小（または最大）しきい値を満たさない場合、コンピュータ２１８にはページＰ３，Ｐ３２，Ｐ３２１，Ｐ３２２のみが先回りしてダウンロードされる。これもやはりコンピュータ２１８および／またはそのユーザによる要求の有無に関わりなく行なわれる。コンピュータ２１８がWebサイト３００へアクセスする度に履歴が維持・更新されてもよい、これにより或る期間に亘るユーザの閲覧傾向を追跡し、要求されたページをコンピュータ２１８で表示できる速さを向上させることができる。
【００２５】
履歴から、以前にアクセスされたページだけでなく、このコンピュータ２１８のユーザによるマウスの動きなどその他のアクションが追跡されてもよい。実際、判明したユーザの関心に基づき、広告またはその他の文書を先回りダウンロードしてキャッシュ２２０に記憶させることもある。このような関心を測定するには、たとえば、コンピュータ２１８のディスプレイ上で見えるウインドウまたはハイパーリンクの特定のアクティブ区域の上にカーソル（図２の１１２で示すものなど）が動かされる回数を数えればよい。次に、この発明に従うと、このアクティブ区域に関連付けられた文書またはページがバックグラウンドでコンピュータ２１８へ先回りしてダウンロードされてもよい。これはユーザが最終的にこのアクティブ区域に関連付けられたページまたは文書を要求するであろうという予想による。当業者であれば先回りダウンロードする文書またはページを選択するその他の機構に思い至る筈であり、そのような機構はすべてこの発明の範囲内に属すると考えられる。
【００２６】
図５は、この発明の一実施例に従い第１のコンピュータがサーバなどの第２のコンピュータに文書を要求する方法を示すフローチャートである。図５は、図２の２１８で示すようなクライアント／サーバアーキテクチャのクライアントコンピュータの視点から示したものである。ここに示すように、ステップＳ５０にて、第１のユーザアクションに応答して第１の文書に対する第１の要求をサーバに送信する。第１のユーザアクションにはたとえばハイパーリンクのクリックまたは、所望のWebページのＵＲＬのブラウザへの入力が含まれ得る。次に、Ｓ５１に示すように、第１のコンピュータは要求した第１の文書（たとえばWebページ）をサーバから受信する。次に、この発明に従うと、ステップＳ５２にて第１のコンピュータは受信した第１の文書の中にある第２の文書へのすべての参照（たとえばハイパーリンク）を識別する。このような第２の文書は、第１の文書と同じWebサイトの階層的に下にあるWebページであることも、または、第１の要求で要求された（ステップＳ５０）Webサイトに関係しない文書を含んでいてもよい。次に、Ｓ５３に示すように、第１のコンピュータは、ステップＳ５２で識別された参照により参照される第２の文書のうち１つ以上に対する第２の要求を自動的に送信する。この発明に従うと、ステップＳ５３はユーザアクションの有無に関わりなく実行され、すなわちユーザのクリックもしくはその他でのハイパーリンクの選択、またはブラウザもしくはその他のソフトウェアへのＵＲＬの入力の有無に関わりなく実行され得る。ステップＳ５３で要求された第２の文書は、この後第１のコンピュータ（たとえば図２の２１８）により受信され、第１のコンピュータにとってローカルな記憶装置（たとえばキャッシュ２２０）に記憶される。この発明では次に、ステップＳ５５で概略を述べるように、この後ユーザによりなされる第
２の文書への要求に上記ローカルな記憶装置から対応することを試みる。すなわち、この発明に従うと、コンピュータ２１８は、まずユーザが後から要求した第２の文書をローカルな記憶装置（図２の２２０）で調べるように構成される。後から要求された第２の文書が実際にローカルな記憶装置内に存在し、かつ古くない（無効化されておらずその最新のバージョンである）場合、後から要求された第２の文書がローカルな記憶装置から直接提供されて第１のコンピュータのディスプレイに表示され、後に要求する文書をサーバから要求して受信する要求／応答サイクルに頼らなくてもない。ローカルな記憶装置内に後から要求された文書が存在しない場合にのみ、これに対して第３の要求をサーバへ送信することが必要となる。上述のように、要求された文書の履歴が生成されて維持され、後でWebサイトへアクセスされた際にサーバへ送信されてもよい。ステップＳ５３およびステップＳ５４はユーザの要求があればいつでも中断可能である。
【００２７】
図６は、この発明の別の実施例に従い、図２の２０２で示すクライアント／サーバアーキテクチャのサーバコンピュータの視点から見たWebサイトへのアクセスの要求に対応するプロセスを示すフローチャートである。まずステップＳ６１にて、WebサーバはWebサイトへのアクセスの要求を受信し、次に、ステップＳ６２に示すように、要求側の遠隔コンピュータ（たとえば図２のコンピュータ２１８）へWebサイトの第１のページ（たとえばホームページ）を送信する。ステップＳ６３に示すように、この後に第２のページに対する要求があるかどうかに関わりなく、この発明に従うとWebサーバは１つ以上の選択された第２のページを遠隔コンピュータへ先回りして送信する。遠隔コンピュータへ先回りして送信される第２のページは、たとえばこの後遠隔コンピュータによりなされる１つ以上の第２のページへの要求の予測、および／または、遠隔コンピュータにより以前にアクセスされた第２のページの履歴に基づいて選択されてもよい。遠隔コンピュータから、後になされる第２のページへの要求が受信された場合、その際履歴が更新されるが、これを行なうには、任意に、履歴における以前にアクセスされたページのリストに要素を加えたりなくしたりする、および／または、履歴を構成する要素に関連付けられた重み付け係数を変化させる。そして、この履歴はサーバ上で（たとえばサーバ２０２に結合されたデータベース１０３において）記憶されてもよく、かつ／またはクッキーなどのファイルの中で遠隔コンピュータへ送信して返されてもよい。
【００２８】
ハードウェアの説明
図７は、この発明の一実施例が実現され得る計算装置７００のブロック図を示す。計算装置７００は、バス７０１またはその他情報を通信するための通信機構と、バス７０１に接続され情報を処理するプロセッサ７０２とを備える。計算装置７００はさらにランダムアクセスメモリ（ＲＡＭ）またはその他の動的記憶装置７０４（主メモリと称す）を備え、これはバス７０１に接続されて、情報およびプロセッサ７０２が実行する命令を記憶する。主メモリ７０４はまた、プロセッサ７０２が命令を実行している間に一時的な変数またはその他の中間情報を保存するために用いられる。計算装置７００はさらに、バス７０１に接続されてプロセッサ７０２のための静的情報および命令を記憶する読出専用メモリ（ＲＯＭ）および／またはその他の静的記憶装置７０６を備えてもよい。バス７０１に接続されて情報および命令を記憶するための磁気ディスクまたは光ディスクなどのデータ記憶装置７０７が設けられていてもよい。バス７０１にはまたモデムまたはネットワーク（たとえばイーサネット（登録商標））カードなどの通信装置７０８が接続され、図２の１０１で示すようなネットワークへのアクセスを行なう。
【００２９】
計算装置７００はまたバス７０１を介して、情報をコンピュータユーザに対して表示するための陰極線管（ＣＲＴ）などの表示装置７２１に接続されてもよい。一般的には、英数字式キーおよびその他のキーを含む英数字入力装置７２２がバス７０１に接続されて情報およびコマンド選択をプロセッサ７０２に通信する。別の種類のユーザ入力装置として、マウス、トラックボールまたはカーソルキーなどの、ユーザ自身の音声による操作装置
またはカーソル操作装置７２３があり、これにより方向情報およびコマンド選択をプロセッサ７０２に通信し、ディスプレイ７２１におけるカーソルの動きを制御することができる。
【００３０】
この発明は、計算装置７００を用いて、第２のコンピュータに文書を要求し、かつ／または遠隔コンピュータによるWebサイトへのアクセスの要求に対応することに関する。一実施例に従うと、このような処理は、プロセッサ７０２が主メモリ７０４に入っている命令シーケンスを実行するのに応答して１つまたは複数の計算装置７０４により実行されてもよい。このような命令は、別のコンピュータ可読媒体たとえばデータ記憶装置７０７および／または或る遠隔に位置するサーバからメモリ７０４へ読込まれてもよい。メモリ７０４に入っている命令シーケンスが実行されることで、プロセッサ７０２において上述の機能が実現される。これに代わる実施例では、この発明を実現するために、ソフトウェアによる命令に代えて、またはこれと組合せて、ハードウェア回路が使用されてもよい。したがってこの発明はハードウェア回路およびソフトウェアの如何なる特定の組合せにも限定されない。
【００３１】
以上の詳細な説明にてこの発明の好ましい実施例を記載したが、上述の説明は例示的なものに過ぎず、ここに開示する発明を限定するものではないと理解されたい。当業者であればその他の代替実施例が認識されるであろうし、このような実施例はすべてこの発明の範囲内に属すると考えられる。したがってこの発明は前掲の特許請求の範囲によってのみ限定されるべきである。
【図面の簡単な説明】
【００３２】
【図１】ユーザのコンピュータと遠隔サーバとの間における従来の要求／応答サイクルを示す図である。
【図２】この発明の一実施例に従う、先回りおよび予測してページをキャッシュする方法の各局面を示す図である。
【図３】Webサイトのマップを例示する図である。
【図４】図３のWebサイトマップであって、後で遠隔コンピュータによってなされる要求の予測、および／または、遠隔コンピュータにより以前にアクセスされたページの履歴に基づいて、遠隔コンピュータへ先回りして送信され得るページを識別したものを示す図である。
【図５】この発明の一実施例を示すフローチャートである。
【図６】この発明の別の実施例を示すフローチャートである。
【図７】この発明が実施され得るコンピュータのブロック図である。
【図１】
2005535944.tif 000002
【図２】
2005535944.tif 000003
【図３】
2005535944.tif 000004
【図４】
2005535944.tif 000005
【図５】
2005535944.tif 000006
【図６】
2005535944.tif 000007
【図７】
2005535944.tif 000008
【手続補正書】
【提出日】平成17年7月27日(2005.7.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１のコンピュータが第２のコンピュータに文書を要求する方法であって、
第１のユーザアクションに応答して、第１の文書に対する第１の要求を前記第２のコンピュータへ送信するステップと、
前記第１の要求に応答して前記第２のコンピュータにより送信された前記第１の文書を受信するステップと、
受信した前記第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、
ユーザが以前に要求した第２の文書の履歴を作成して維持し、前記履歴を前記第２のコンピュータに送信するステップと、
前記第２のコンピュータに送信された前記履歴の中で参照される少なくとも１つの第２の文書を前記第２のコンピュータから受信し、受信した前記少なくとも１つの第２の文書を、前記第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、
前記第２の文書のうちの少なくとも１つに対するユーザ要求に応答して、まず前記ユーザ要求に前記ローカルな記憶装置から対応することを試み、前記第２の文書のうちの少なくとも１つが前記ローカルな記憶装置に記憶されていない場合にのみ前記第２の文書のうちの少なくとも１つに対して第３の要求を前記第２のコンピュータへ送信するステップとを備える、方法。
【請求項２】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＸＭＬ（eXtensible Markup Language）文書を含む、請求項１に記載の方法。
【請求項３】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＨＴＭＬ（Hypertext Markup Language）文書を含む、請求項１に記載の方法。
【請求項４】
前記第１の文書および前記第２の文書のうち少なくとも一方はWebページを含む、請求項１に記載の方法。
【請求項５】
前記第１の要求、前記第２の要求および前記第３の要求のうち少なくとも１つはＨＴＴＰ（Hypertext Transfer Protocol）要求を含む、請求項１に記載の方法。
【請求項６】
コンピュータであって、コンピュータネットワーク経由で第２のコンピュータに文書を要求するように構成され、
少なくとも１つのプロセッサと、
少なくとも１つのデータ記憶装置と、
前記少なくとも１つのプロセッサにより生成される複数のプロセスとを備え、前記複数のプロセスは、
第１のユーザアクションに応答して、第１の文書に対する第１の要求を前記第２のコンピュータへ送信するステップと、
前記第１の要求に応答して前記第２のコンピュータにより送信された前記第１の文書を受信するステップと、
受信した前記第１の文書の中にある、第２の文書へのすべての参照を識別するステップと、
ユーザが以前に要求した第２の文書の履歴を作成して維持し、前記履歴を前記第２のコンピュータに送信するステップと、
前記第２のコンピュータに送信された前記履歴の中で参照される少なくとも１つの第２の文書を前記第２のコンピュータから受信し、受信した前記少なくとも１つの第２の文書を、前記第１のコンピュータにとってローカルな記憶装置に記憶させるステップと、
前記第２の文書のうちの少なくとも１つに対するユーザ要求に応答して、まず前記ユーザ要求に前記ローカルな記憶装置から対応することを試み、前記第２の文書のうちの少なくとも１つが前記ローカルな記憶装置に記憶されていない場合にのみ前記第２の文書のうちの少なくとも１つに対して第３の要求を前記第２のコンピュータへ送信するステップとのための処理ロジックを含む、コンピュータ。
【請求項７】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＸＭＬ（eXtensible Markup Language）文書を含む、請求項６に記載のコンピュータ。
【請求項８】
前記第１の文書および前記少なくとも１つの第２の文書のうち少なくとも一方はＨＴＭＬ（Hypertext Markup Language）文書を含む、請求項６に記載のコンピュータ。
【請求項９】
前記第１の文書および前記第２の文書のうち少なくとも一方はWebページを含む、請求項６に記載のコンピュータ。
【請求項１０】
前記第１の要求、前記第２の要求および前記第３の要求のうち少なくとも１つはＨＴＴＰ（Hypertext Transfer Protocol）要求を含む、請求項６に記載のコンピュータ。
【請求項１１】
遠隔コンピュータによるWebサイトへのアクセスの要求に対応する方法であって、
前記Webサイトへのアクセスの前記要求を受信する受信ステップと、
前記要求に応答して、前記アクセスされたWebサイトの第１のページを前記遠隔コンピュータへ送信する第１の送信ステップと、
前記遠隔コンピュータが以前にアクセスした前記Webサイトの第２のページの履歴を前記遠隔コンピュータから検索するステップと、
前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求の有無に関わりなく、前記遠隔コンピュータが以前にアクセスした前記Webサイトの第２のページについての検索された前記履歴から、前記Webサイトの少なくとも１つの選択された第２のページを前記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを備える、方法。
【請求項１２】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に対応するステップを備える、請求項１１に記載の方法。
【請求項１３】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に基づき、前記以前にアクセスされた第２のページの履歴を更新するステップを備える、請求項１１に記載の方法。
【請求項１４】
前記更新するステップは、アクセスの頻度に基づき、前記後に要求された第２のページの各々に重み付け係数を割当てるステップを含み、前記重み付け係数は、前記第２の送信ステップにて前記遠隔コンピュータへどの第２のページを先回りして送信するかを制御する、請求項１３に記載の方法。
【請求項１５】
さらに、前記遠隔コンピュータからファイルを検索するステップを備え、前記ファイルは前記遠隔コンピュータを他の遠隔コンピュータから区別する、請求項１３に記載の方法。
【請求項１６】
前記ファイルはクッキーを含む、請求項１３に記載の方法。
【請求項１７】
コンピュータネットワーク経由で遠隔コンピュータによるWebサイトへのアクセスの要求に対応するように構成されたコンピュータであって、
少なくとも１つのプロセッサと、
少なくとも１つのデータ記憶装置と、
前記少なくとも１つのプロセッサにより生成される複数のプロセスとを備え、前記複数のプロセスは、
前記Webサイトへのアクセスの前記要求を受信する受信ステップと、
前記要求に応答して、前記アクセスされたWebサイトの第１のページを前記遠隔コンピュータへ送信する第１の送信ステップと、
前記遠隔コンピュータが以前にアクセスした前記Webサイトの第２のページの履歴を前記遠隔コンピュータから検索するステップと、
前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求の有無に関わりなく、前記遠隔コンピュータが以前にアクセスした前記Webサイトの第２のページについての検索された前記履歴から、前記Webサイトの少なくとも１つの選択された第２のページを前記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを実行するための処理ロジックを含む、コンピュータ。
【請求項１８】
前記履歴は、前記遠隔コンピュータから検索されるクッキーに維持される、請求項１７に記載のコンピュータ。
【請求項１９】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に対応するステップを備える、請求項１７に記載のコンピュータ。
【請求項２０】
さらに、前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求に基づき、前記以前にアクセスされた第２のページの履歴を更新するステップを備える、請求項１７に記載のコンピュータ。
【請求項２１】
前記更新するステップは、アクセスの頻度に基づき、前記後で要求された第２のページの各々に重み付け係数を割当てるステップを含み、前記重み付け係数は、前記第２の送信ステップにて前記遠隔コンピュータへどの第２のページを先回りして送信するかを制御する、請求項２０に記載のコンピュータ。
【請求項２２】
さらに、前記遠隔コンピュータからファイルを検索するステップを備え、前記ファイルは前記遠隔コンピュータを他の遠隔コンピュータから区別する、請求項２０に記載のコン
ピュータ。
【請求項２３】
前記ファイルはクッキーを含む、請求項２０に記載の方法。
【請求項２４】
遠隔コンピュータによるWebサイトへのアクセスの要求に対応する方法であって、
前記Webサイトへのアクセスの前記要求を受信する受信ステップと、
前記要求に応答して、前記アクセスされたWebサイトの第１のページを前記遠隔コンピュータへ送信する第１の送信ステップと、
前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求の有無に関わりなく、前記遠隔コンピュータによる後の要求の予測に基づいて、前記Webサイトの少なくとも１つの選択された第２のページを前記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを備え、前記予測は、前記遠隔コンピュータに結合されたポインティングデバイスについての検出された動きに基づく、方法。
【請求項２５】
コンピュータネットワーク経由で遠隔コンピュータによるWebサイトへのアクセスの要求に対応するように構成されたコンピュータであって、
少なくとも１つのプロセッサと、
少なくとも１つのデータ記憶装置と、
前記少なくとも１つのプロセッサにより生成される複数のプロセスとを備え、前記複数のプロセスは、
前記Webサイトへのアクセスの前記要求を受信する受信ステップと、
前記要求に応答して、前記アクセスされたWebサイトの第１のページを前記遠隔コンピュータへ送信する第１の送信ステップと、
前記遠隔コンピュータに由来する前記Webサイトの第２のページに対する後の要求の有無に関わりなく、前記遠隔コンピュータによる後の要求の予測に基づいて、前記Webサイトの少なくとも１つの選択された第２のページを前記遠隔コンピュータへ送信する第２の送信ステップを先回りして実行するステップとを実行するための処理ロジックを含み、前記予測は、前記遠隔コンピュータに結合されたポインティングデバイスについての検出された動きに基づく、コンピュータ。
【国際調査報告】
2005535944.tif 000009
2005535944.tif 000010
2005535944.tif 000011