(57)【要約】ユーザが通信ネットワーク上のリモートサーバ（例えばインターネット上のウェブサーバ）から要求される情報を待つために必要とする時間を減らすためのシステム及び方法が提供される。例示的な実施態様において、このシステムはユーザ中心であり、ゴールは、ユーザーが必要とする全てのデータをできるだけユーザの近くに保持することである。ユーザの特性と使用法はキャッシュすべきものとその期間、プリフェッチすべきもの、リフレッシュすべきもの及び検索すべきものを決定するために用いられる。さらに、情報を分割して、並列通信チャネルを利用することによって、ラストマイルを通じてのデータ転送を著しく増大できる。【選択図】図５
2004535631.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを通してブラウザまたはアプリケーション・プログラムによって使用するためにデータをキャッシュする方法であって、前記ブラウザまたはアプリケーション・プログラムによってサーバから検索されたキャッシュにあるデータの項目を記憶すること、前記ブラウザまたはアプリケーション・プログラムによる何らかのアクションがないとき、前記キャッシュ内の前記項目を自動的に更新すること、前記ブラウザまたはアプリケーション・プログラム上の前記キャッシュからの前記更新された項目を示すことを含むデータをキャッシュする方法。
【請求項２】
前記自動的に更新することが前記項目が前記サーバによって変更されるとき起こる請求項１の方法。
【請求項３】
前記自動的に更新することが前記項目のキャッシュ寿命以上になるとき起こる請求項１の方法。
【請求項４】
前記項目を前記自動的に更新することは前記更新された項目を存在点（PoP）にあるもう一つのキャッシュから検索することを含む請求項１の方法。
【請求項５】
前記自動的に更新することは前記コンピュータがデータを要求もしくは検索していないかまたはそれらの組み合わせのときに実行される請求項１の方法。
【請求項６】
第１のコンピュータシステムと第２のコンピュータシステムが通信ネットワークによって接続されているとき、第１のコンピュータシステムのキャッシュにある第１のデータを第２のコンピュータシステムにある第２のデータからリフレッシュする方法であって、前記第１のコンピュータシステムが使用中でないとき、前記第１のデータのためのリフレッシュ要求を前記第２のコンピュータシステムに送ること、前記リフレッシュ要求を用いて前記第２のデータをさがすこと、前記第２のデータが前記第１のデータのより新しいバージョンであるとき、前記第２のデータを前記第１のコンピュータシステムに送ること、及び前記第１のデータを前記キャッシュにある前記第２のデータと取り替えることを含む一つのコンピュータシステムのキャッシュにあるデータを別のコンピュータシステムにあるデータからリフレッシュする方法。
【請求項７】
前記第２のデータをさがすことができないとき、前記通信ネットワークによって前記第２のコンピュータシステムに接続されている第３のコンピュータに前記リフレッシュ要求を転送することを含む請求項６の方法。
【請求項８】
前記第２のデータが前記第１のデータのより新しいバージョンであるとき、前記第１のコンピュータシステムの通信ネットワーク・アドレスを前記第２のデータと関連づけることを更に含む請求項６の方法。
【請求項９】
前記通信ネットワーク・アドレスがIPアドレスである請求項７の方法。
【請求項１０】
選択されたデータをホスト・サーバから通信ネットワーク上の複数のキャッシュ全体にわたって分配するシステムであって、前記ホスト・サーバに接続され、前記選択されたデータの第１のレプリカを有する前記複数のキャッシュの第１のキャッシュ、前記第１のキャッシュに存在点アクセス装置を経て接続され、ユーザPCに接続された前記複数のキャッシュの第２のキャッシュ、及びまず前記第２のレプリカを用いることによって前記選択されたデータを検索するために前記ユーザPCで実行するブラウザを備え、前記第２のキャッシュは、前記選択されたデータの第２のレプリカを有し、前記第２と第１のレプリカは結び合わされていることを特徴とする選択されたデータの分配システム。
【請求項１１】
前記第２のレプリカが前記第２のキャッシュのアイドル時間の間または予め定められた周期の間に前記第１のレプリカからリフレッシュされる請求項１０の方法。
【請求項１２】
前記選択されたデータは、ユーザ使用法プロファイルから決定される請求項１０の方法。
【請求項１３】
第１のコンピュータシステムがキャッシュを有する第２のコンピュータシステムからデータを求めるユーザ要求に応答する方法であって、前記第２のコンピュータシステムからデータを求める前記ユーザの要求を受けること、前記ユーザの要求に対応する応答データを検索すること、前記キャッシュの中の前記応答データとともに前記第２のコンピュータシステムのためのネットワーク・アドレスを記憶すること及び前記第２のコンピュータシステムに前記応答データを送ることを含むユーザー要求に応答する方法。
【請求項１４】
前記ネットワーク・アドレスが動的に割り当てられたIPアドレスであるとき、前記第２のコンピュータシステムの名前をさらに記憶する請求項１３の方法。
【請求項１５】
第３コンピュータシステムが前記キャッシュの中の前記応答データと関連した前記ネットワーク・アドレスを有するとき、前記応答データは、前記第３のコンピュータシステムへマルチキャストされる請求項１３の方法。
【請求項１６】
通信ネットワークを経て第２のコンピュータシステムから第１のコンピュータシステムにおけるユーザのためのデータをプリフェッチする方法であって、前記第２のコンピュータシステムから選択されたデータに対して前記第１のコンピュータによって送られたユーザ要求の頻度を決定すること、及び前記頻度より高い数で前記第１のコンピュータによって前記選択されたデータを要求することを含み、対応するユーザー要求が送られる前に、前記選択されたデータの１項目が前記第１のコンピュータシステムで利用可能であるであることを特徴とするデータをプリフェッチする方法。
【請求項１７】
公衆通信ネットワークを経て第１のコンピュータと第２のコンピュータの間に仮想施設ネットワークを設ける方法であって前記第１のコンピュータのアドレスと前記第２のコンピュータのアドレスを含む集中許可テーブルを用いて前記第１のコンピュータと前記第２のコンピュータの間にVPNを確立すること、及び前記第１のコンピュータが前記第２のコンピュータへの複数の並列通信リンクを有するとき、前記第１と第２のコンピュータの間のデータフローを大きくするために前記複数の並列の通信リンクをチーム化することを含む公衆通信ネットワークを経て仮想私設ネットワーク（VPN）を設ける方法。
【請求項１８】
第１のコンピュータから第２のコンピュータへのデータ通信量を調整する方法で、前記データ通信量は、前記第２のコンピュータのコンピュータ・モニタ上のグラフィックスをサポートするために必要であり、前記第１のコンピュータにインチ当たりピクセルの第１の数を含んでいる前記コンピュータ・モニタの表示特性を送ること、グラフィック項目のためのインチ当たりピクセルの第２の数を評価すること、前記第２の数が前記第１の数より大きいとき、インチ当たりピクセルの減少した数で前記グラフィック項目から変更グラフィック項目を作ること及び前記第２のコンピュータに前記変更グラフィック項目を送ること
を含むデータ通信量調整方法。
【請求項１９】
コンピュータのためのプロキシ・スタック内の複数のプロキシサーバーから一つのプロキシサーバーを選択する方法であって、中央プロキシ・スタック・マネージャによって前記プロキシ・スタックのプロキシサーバーの前記複数のプロキシサーバーための順序を設定すること及び前記複数のプロキシサーバーの中の一つに対する要求が前記コンピュータによって行われるたびに、前記プロキシ・スタックの中の順序が次の前記複数のプロキシサーバーの一つのプロキシサーバーを選択することを含む複数のプロキシサーバーから一つのプロキシサーバーを選択する方法。
【請求項２０】
前記複数のプロキシサーバーから選択された第１のプロキシサーバーがタイムアウトになるとき、前記プロキシ・スタックの次の順序である前記複数のプロキシサーバーの第２のプロキシサーバーを選択することをさらに含む請求項１９の方法。
【請求項２１】
コンピュータで実行するブラウザに動的データ及び静的グラフィックスを含むウェブ・コンテンツを与えるシステムであって、前記ブラウザに前記静的グラフィックスのかなりの部分を与えるためのキャッシュ、前記キャッシュは、ローカル・エリア・ネットワークによって前記コンピュータへ接続されており、及び前記ブラウザに前記動的データのかなりの部分を与えるためのウェブサーバへの仮想回路接続を備えるコンピュータで実行するブラウザにウェブ・コンテンツを与えるシステム。
【請求項２２】
第１のコンピュータから前記第１と第２のコンピュータの間の複数の通信リンクを経て第２のコンピュータへ転送されるデータのロードバランスをとる方法であって、前記複数の通信リンクの各通信リンクのためのTCP/IP接続を確立すること及び前記データの転送時間をかなり減らすためのファクタに基づいて前記複数の通信リンク間の前記データを分割することを含む転送されるデータのロードバランスをとる方法。
【請求項２３】
前記ファクタは、前記複数の通信リンクの相対速度、各通信リンク上の現在のロード、各通信リンクのサービスの質及び用いられた最後の通信リンクまたはそれの任意の組合せを含む請求項２２の方法。
【請求項２４】
第１のコンピュータと第２のコンピュータの間にファイルまたはデータブロックを複数の通信リンクを経て転送する時間を減らす方法であって、前記複数の通信リンクの第１のリンクを用いる前記第１のコンピュータによって前記ファイルまたはデータブロックを送ること、前記複数の通信リンクの第２のリンクを用いる前記第１のコンピュータによって前記ファイルまたはデータブロック一部分を送ること,及び前記第２のコンピュータが、前記ファイルまたはデータブロックの全てではなく前記一部分の全てを受けた後に、前記ファイルまたはデータブロックを復元することを含むファイルまたはデータブロックを転送する時間を減らす方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にいえば通信分野に関し、そして、特にコンピュータ・ネットワーク上の情報の効率的な伝達に関する。
【背景技術】
【０００２】
インターネットは、政府及び大学の間で調査ネットワークから企業及び個人の両方による個人的及び商業的取引を行う手段まで過去の数十年にわたってその使用範囲において著しく増大した。インターネットは当初の設計が体系化されていなかったので、故障の場合には通信が終わりになる確率が高かった。情報を転送する方法は、郵便を通して手紙を送ることと同様の概念に基づいている。メッセージは、多数のＴＣＰ／ＩＰパケット（すなわち手紙）に分割されて、受取人に送られる。手紙の様に、各パケットは受取人の所に着くために異なる経路をとることができる。多経路アプローチを介する多数の小パケットは、ユーザが、例えば、多くのウェブサイトに比較的安価にアクセスできるようにするが、それは、ユーザとウェブサイトの間のポイント・ツー・ポイント接続よりかなり遅い。
【０００３】
図１は、従来技術のインターネットへのユーザ接続を示しているブロック図である。一般に、ユーザ１１０がインターネット・サービス・プロバイダー（ＩＳＰ）によって従来のやり方で操作されるポイント・オブ・プレゼンス（ＰｏＰ）１１２を経てインターネットに接続する。ＰｏＰは、ＩＳＰのバックボーン・ネットワーク１１４（例えばＩＳＰ１）に接続されている。多数のＩＳＰバックボーン・ネットワーク（例えばＩＳＰ１及びＩＳＰ２）は、ネットワーク・アクセス・ポイント（例えばＮＡＰ１７０）によってつなぎ合わされてインターネット「クラウド（雲）」１６０を形成する。
【０００４】
より詳しくいえば、パソコン（ＰＣ）１２０における単一ユーザには、例えば直接の加入者回線（ＤＳＬ）モデム１２２、ＴＶケーブル・モデム１２４、標準ダイヤルアップ・モデム１２６又は固定ワイヤレスＰＣ又は携帯電話上のワイヤレス・トランシーバ１２８などのＰｏＰ１１２に接続するいくつかの選択がある。用語パソコン又はＰＣは、プロセッサ及びメモリを有するどんな装置をも記載するために本願明細書において用いられて、従来のデスクトップＰＣに限られない。ＰｏＰ１１２には、各タイプのモデム（又はトランシーバ）が、データをユーザ１１０から受信／へ送信するための対応するアクセス装置があるだろう。ＤＳＬモデム１２２の場合、ＰｏＰ１１２は、そのアクセス装置としてデジタル加入者回線アクセス・マルチプレクサ（ＤＳＬＡＭ）を有する。テーブル・モデム１２４の場合、ＰｏＰ１１２は、そのアクセス装置としてケーブル・モデム成端装置（ＣＴＭＳ）ヘッドエンドを有する。ＤＳＬ及びケーブル・モデム接続は数百キロビット／秒（Ｋｂｐｓ）を可能にし、データがダイヤルアップ遠隔アクセスサーバー（ＲＡＳ）１３４によってＰｏＰ１１２で受けられる標準ダイヤルアップ・モデム１２６よりかなり速い。ワイヤレス・トランシーバ１２８は、携帯情報端末（ＰＤＡ）又は携帯電話の一部であってもよく、ＰｏＰ１１２においてワイヤレ・ストランシーバ１３６（例えば基地局）に接続される。
【０００５】
企業ユーザ（又はホームオフィスをもつ人）がローカルエリア・ネットワーク（ＬＡＮ）（例えばイーサネット・リンクによってＬＡＮサーバー１４４に接続されたＰＣ１４０及び１４２）を備えことができる。企業ユーザは、ＰｏＰ１１２にＴ１（１．５４４Ｍｂｐｓ）、部分Ｔ１接続又は高速接続を持つことができる。例えば、ＬＡＮサーバー１４４からのデータは、ルーター（図示せず）を経てデジタル接続装置、例えば、チャネル・サービス・ユニット／データ・サービス・ユニット（ＣＳＵ／ＤＳＵ）１４６に送られ、デジタル接続装置は、次に、デジタルデータをＴ１（又は部分Ｔ１）ラインを経てＰｏＰ１１２にあるＣＳＵ／ＤＳＵに送る。
【０００６】
ＰｏＰ１１２は、ＤＳＬＡＭ１３０、ＣＴＭＳヘッドエンド１３２、ＲＡＳ  １３４、ワイヤレ・ストランシーバ１３６又はＣＳＵ／ＤＳＵ１５０が接続されるＩＳＰサーバー１５２を含む。ＩＳＰサーバー１５２は、ユーザ・サービス（例えば電子メール、ユースネット（Ｕｓｅｎｅｔ）又はドメイン・ネーム・サービス（ＤＮＳ）を与える。あるいは、ＤＳＬＡＭ１３０、ＣＴＭＳヘッドエンド  １３２、ＲＡＳ１３４、ワイヤレス・トランシーバ１３６又はＣＳＵ／ＤＳＵ  １５０は、ＩＳＰサーバー１５２をバイパスして、直接ルーター１５４（点線）に接続される。サーバー１５２は、ＰｏＰ１１２を例えば、ルーター１６２、１６４、１６６及び１６８を有するＩＳＰ１のバックボーンに接続するルーター１５４に接続されている。ＩＳＰ１のバックボーンは、例えば、ＮＡＰ１７０を経て、例えばルーター１７２、１７４及び１７６を有するもう一つのＩＳＰのバックボーン（ＩＳＰ２）に接続されている。ＩＳＰ２は、競争しているユーザにサービス（例えば電子メール及びユーザ・ウェブ・ホスティング）を提供するＩＳＰ２サーバー１８０を有する。インターネット「クラウド」１６０に接続されているのは、ウェブサーバー１８２及び１８４であって、それらがユーザ１１０にオンライン・コンテンツを与える。
【０００７】
インターネットは、企業及び個人の両方のための商取引を行うための基本的機能性を与えるが、例えば、ウェブサーバーと企業又は個人ユーザの間の情報の転送におけるかなりの時間遅れは、重要な問題である。例えば、ＰＣ１２０のユーザが、ウェブサーバー１８２にあるウェブサイトから情報を望む。データがウェブサーバー１８２からユーザＰＣ１２０まで戻るために多くの「ホップ」がある。また、情報がパケットの形で「郵送で」戻されるので、パケットは、普通異なる経路を経て戻る。これらの異なる経路は、他のユーザパケットと共有され、いくつかの経路は遅いことがある。それゆえに、ウェブサーバー１８２とユーザ１２０の間の全てのリンクに充分な容量があったとしても、かなりの時間遅れがある。しかし、隘路（すなわち、そこでは通信量が容量を上回る）もあるので、なお一層の遅延がある。
【０００８】
二つの主要隘路は、最後及び最後から２番目のマイル（通信回線）である。ラストマイルは、ＰｏＰ１１２からユーザ１１０に至るものである。例えば、ＬＡＮサーバー１４４、ＰＣ１４０及びＰＣ１４２を有するローカル・エリア・ネットワーク及びコアＩＳＰバックボーン１１４は非常に速く動作する。ローカル・エリア・ネットワークが普通１０／１００メガビット／秒（Ｍｂｐｓ）で動作する。コアＩＳＰ  バックボーンは、例えば、オプティカル・キャリア（ＯＣ）４８、すなわち１秒につき２．５ギガビット（Ｇｂｐｓ）又はＯＣ−１９２、すなわち、１０Ｇｂｐｓで作動する。５６Ｋｂｐｓで普通動作する大部分のラストマイル・アクセスは、ダイヤルアップである。約５１２ＫｂｐｓのＤＳＬモデムでさえ、グラフィックスをダウンロードすることは、不愉快なほど遅くなることがある。
【０００９】
最後から２番目のマイルは、ＩＳＰ間にある。ＰｏＰ１１２をもつＩＳＰは、それのバックボーン１１４を経て領域内／全国的／全地球的受信可能範囲を得るためにより高レベルのＩＳＰ（図示せず）に接続することができる。より高水準ＩＳＰへのバンド幅の増加がローカルＩＳＰの経費を大きくするので、例えばＰｏＰ１１２を有するローカルＩＳＰは、代わりにユーザ１１０に利用できる帯域の量を減らしてもよい。効果は、ウェブサーバー１８２とＰＣ１２０の間のリンク容量より多くの通信量があるということであり、したがってかなりの遅延問題がある。今日の速いペースの世界において、この問題は、商用伝達手段としてインターネットを使用することを非常に妨げている。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
したがって、通信ネットワーク（例えばインターネット）から、情報のためのユーザの待ち時間を減らすためのニーズがある。
【課題を解決するための手段】
【００１１】
本発明は、ユーザーが通信ネットワーク（例えばインターネット上のウェブサーバー）上の遠隔サーバーから要求された情報を待つために必要とする時間を減らすシステムと方法を提供する。例示的な実施態様において、本システムはユーザ中心であって、目的は、ユーザーが必要とする全てのデータをできるだけユーザの近くに保持することである。ユーザの特性と使用法パターンは、何を取り入れるべきか，どの位の期間、何をプリフェッチすべきか、何をリフレッシュすべきか、そして何を検索すべきかを決定するために用いられる。さらに、情報を分割して並列通信路を利用することによって、ラストマイルにわたるデータ転送をかなり大きくできる。
【００１２】
本発明の一実施態様がコンピュータ上のブラウザによって用いるためのデータをフェッチするための方法を含む。本方法は、ブラウザによってサーバーからフェッチされるキャッシュ内のデータの項目を記憶すること、ブラウザによるどんな作用もなしに、自動的にキャッシュの項目を更新すること、ブラウザ上のキャッシュから更新された項目を示すことを含む。
【００１３】
本発明のもう一つの実施態様は第１のコンピュータシステムのキャッシュにある第１のデータを第２のコンピュータシステムにある第２のデータからリフレッシュする方法を含み、この場合、第１のコンピュータシステムは、第２のコンピュータシステムへ通信ネットワークによって接続されている。この方法は、第１のコンピュータシステムが使用中でないとき、第１のデータに対するリフレッシュ要求を第２のコンピュータシステムに送ること、リフレッシュ要求を用いて、第２のデータを探すこと、第２のデータが第１のデータのより新しいバージョンであるとき、第２のデータを第１のコンピュータシステムに送ること及び第１のデータをキャッシュの第２のデータと取り替えることを含む。
【００１４】
本発明のさらにもう一つの実施態様には、選択されたデータを通信ネットワーク上の複数のキャッシュにわたってホスト・サーバーから分配するためのシステムがある。このシステムには、ホスト・サーバーに接続され、選択されたデータの第１のレプリカを有する複数のキャッシュの中の第１のキャッシュと、存在点（Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｃｅ（ＰｏＰ））のアクセス装置を経て第１のキャッシュに接続されて、ユーザＰＣに接続された複数のキャッシュの第２のキャッシュ、（ここで、第２のキャッシュは選択されたデータの第２のレプリカを有し、第２と第１のレプリカは、結び合わされている）及び最初に第２のレプリカを用いることによって選択されたデータを検索するためにユーザＰＣで実行するブラウザがある。
【００１５】
本発明の更なる実施態様は、第１のコンピュータシステムがキャッシュを有する第２のコンピュータシステムからデータを求めるユーザ要求へ応答するための方法を含む。本方法は、データに対するユーザの要求を第２のコンピュータシステムから受けること、ユーザの要求に対応する応答データを検索すること、応答データを有する第２のコンピュータシステムのためのネットワーク・アドレスをキャッシュに記憶すること及び応答データを第２のコンピュータシステムに送ることを含む。
【００１６】
本発明のもう一つの実施態様は、第１のコンピュータシステムがキャッシュを有する第２のコンピュータシステムからデータを求めるユーザ要求に応答する方法を含む。この方法は、第２のコンピュータシステムからデータを求めるユーザの要求を受けること、ユーザの要求に対応する応答データを検索すること、キャッシュ内の応答データを付けた第２のコンピュータシステムのためのネットワーク・アドレスを記憶すること及び応答データを第２のコンピュータシステムに送ることを含む。
【００１７】
本発明の一実施態様は、通信ネットワークを介して第２のコンピュータシステムから、第１のコンピュータシステムにいるユーザのためにデータをプリフェッチするための方法を含む。この方法は、第２のコンピュータシステムから選択されたデータに対する第１のコンピュータによって送られたユーザ要求の回数を決定すること及び対応するユーザ要求が送られる前に、選択されたデータの１項目が第１のコンピュータシステムで利用できるようにその回数より高い値で第１のコンピュータによって選択されたデータを要求すること含む。
【００１８】
本発明のもう一つの実施態様は、第１のコンピュータと第２のコンピュータの間に公衆通信ネットワークを経て仮想私設ネットワーク（ＶＰＮ）を設けるための方法を含む。この方法は、第１のコンピュータのアドレス及び第２のコンピュータのアドレスを含んでいる集中許可テーブルを用いて第１のコンピュータと第２のコンピュータの間にＶＰＮを確立すること及び第１のコンピュータが第２のコンピュータへの複数の並列通信リンクを有するとき、第１と第２のコンピュータの間のデータフローを大きくするために複数の並列通信リンクのチーム化（（ｔｅａｍｉｎｇ）組にすること）を含む。
【００１９】
本発明の更なる実施態様は，第１のコンピュータから第２のコンピュータへのデータ通信量を調整するための方法を含み、データ通信量は、グラフィックスを第２のコンピュータのコンピュータ・モニタに維持するために必要である。この方法は、第１のピクセル／インチ数を含んでいるコンピュータ・モニタの表示特性をグラフィック項目のための第２のピクセル／インチ数を評価する第１のコンピュータに送ること、第２の数が第１の数より大きいとき、低減ピクセル／インチを有するグラフィック項目から変更グラフィック項目を作ること及び変更グラフィック項目を第２のコンピュータに送ることを含む。
【００２０】
本発明のもう一つの実施態様は、プロキシサーバーを一つのコンピュータのためのプロキシスタックの複数のプロキシサーバーから選択するための方法を含む。この方法は、中央プロキシスタック・マネージャによってプロキシスタック内の複数のプロキシサーバーのための順序を設定すること及び複数のプロキシサーバーの中の一つのプロクシサーバーに対する要求がコンピュータによって作られるたびに、プロキシスタック内の次の順序にある複数のプロキシサーバーの中の一つのプロキシサーバーを選択することを含む。
【００２１】
本発明の一実施態様は、動的データと静的グラフィックスを含むウェブコンテンツをコンピュータで実行するブラウザへ与えるためのシステムを含む。このシステムは、静的グラフィックスのかなりの部分をブラウザに与えるためのキャッシュ（この場合キャッシュは、ローカル・エリア・ネットワークによるコンピュータへ接続されている）及び動的データのかなりの部分をブラウザに与えるためのウェブサーバーへの仮想回路接続を含む。
【００２２】
本発明のもう一つの実施態様は、第１と第２のコンピュータの間の複数の通信リンクを経て第１のコンピュータから第２のコンピュータへ転送されたデータのロードバランスをとる方法を含む。この方法は、複数の通信リンクの各通信リンクのためのＴＣＰ／ＩＰ接続を確立すること及びデータの転送時間をかなり減らすための要因に基づいて複数の通信リンクの間のデータを分けることを含む。
【００２３】
本発明のさらにもう一つの実施態様は、第１のコンピュータと第２のコンピュータの間の複数の通信リンクを経てファイルを転送するための時間を減らす方法を含む。この方法は、複数の通信リンクの第１のリンクを用いる第１のコンピュータによってファイルを送ること、複数の通信リンクの第２のリンクを用いて第１のコンピュータによってファイルの一部分を送ること及び第２のコンピュータがファイルのその一部の全て（しかし、ファイルの全てではない）を受けた後に、ファイルを再構成することを含む。
【００２４】
本発明のこれら及びその他の実施態様、特徴、態様及び利点は、以下の説明、添付の請求の範囲及び添付図面に関してより十分によく理解されるようになる。
【発明を実施するための最良の形態】
【００２５】
以下の説明において、多数の具体的な詳細が本発明の特定の実施態様のより完全な説明を与えるために記載される。しかし、本発明が以下の全ての具体的な詳細なしで実施できることは、当業者にとって明らかである。他のいくつかの場合において、周知の機構は、本発明を不明瞭にしないために詳述しなかった。
【００２６】
個人及び企業が有効な商用伝達手段としてインターネットを用いるためには、ユーザが情報を要求して受け取るための時間は、今日生じている典型的な時間に比べて著しく減らされなければならない。本発明は、インターネット基盤の諸部分に重ねられることができる「スーパー」装置及びネットワークの情報の流れを大きくするための技術の両方を提供し、それらは、別々に又は組合せて、例えば、ウェブサイト又は他のユーザからの情報に対するユーザの待ち時間を著しく減らす。
【００２７】
図２は、図１の簡略化されているが、拡張されたブロック図であって本発明を説明するのを助けるために用いられる。適用できる場合、図１の同じ符号は図２においても用いられている。モデム２１０は、図１のＤＳＬモデム１２２、ケーブルモデム１２４、ダイヤルアップ・モデム１２６及びワイヤレス・トランシーバ１２８を備えている。同様に、アクセス装置２２０には、図１の対応するＤＳＬＡＭ１３０、ＣＭＴＳヘッドエンド１３２、ＲＡＳ１３４及びワイヤレス・トランシーバ１３６がある。デジタル接続装置２１２と２２２には、ＣＳＵ／ＤＳＵ装置１４６と１５０があり、追加でサテライト、ＩＳＤＮ又はＡＴＭ接続装置がある。図２は、ＬＡＮがデジタル接続装置２１２の他にＰｏＰ１１２に接続するためのもう一つのオプションを例示するために、ＬＡＮサーバー１４４とモデム２１０の間に追加の接続を有する。図２に示されるコンピュータとネットワーク装置の大部分は、標準化されたＴＣＰ／ＩＰを用いて通信する。
【００２８】
図３は、本発明の実施態様のブラウザとウェブサーバーの間の通信経路のブロック図である。ブラウザ５１２を用いているユーザがウェブサーバー１８２からウェブページ５１４を要求するとき、ブラウザ５１２とウェブサーバー１８２の間の従来の交換は上述した。本発明の実施態様は、ブラウザ５１２とウェブサーバー１８２の間のデータを交換するための代替スーパー高速道路経路を与える複数の「スーパー」モジュール（スーパー・ユーザー５４０、スーパー・アプライアンス５３２、スーパー・セントラル・オフィス（ＣＯ）サーバー５３４、スーパーＣＯコンセントレータ５３、及びスーパー・ホスト５３８を含む）を作る。
ウェブページ５１４のためのユーザー要求は、ＰＣ１４０で実行するブラウザ５１２によってやはりＰＣ１４０で実行するスーパー・ユーザーのソフトウェア５３０に送られる。スーパー・ユーザー ５３０は、次にＬＡＮサーバ１４４で実行している（又は別の実施例ではそれ固有のサーバーで実行している）スーパー・アプライアンスのソフトウェア５３２にユーザ要求を送る。スーパー・アプライアンス５３２は、次にスーパーＣＯサーバー５３４にユーザー要求を送り、それはその要求をスーパーＣＯコンセントレータ５３６に送る。スーパーＣＯサーバー５３４、及び、スーパーＣＯコンセントレータ５３６は、独立型サーバーでああってもよいし又はそれがＰｏＰサーバー１５２で実行するソフトウェアであってもよい。スーパーＣＯコンセントレータ５３６は、ユーザー要求をインターネット１６０を経てそれ自身のサーバーを有することができるスーパー・ホスト５３８（又は、別の実施例では、スーパー・ホスト５３８はそれがウェブサーバー１８２で実行するソフトウェアである）に送る。ユーザー要求はスーパー・ホスト５４８からウェブサーバー１８２へ進み、それはウェブサーバー１８２で実行しているウェブサイトからウェブ・ページ１５４を検索する（ウェブサーバー１８２は、サーバーのウェブ・ファーム及び多数のウェブサイトを含むことがある）。ウェブ・ページ５１４は、それからスーパー・ホスト５３８、スーパーＣＯコンセントレータ５３６、スーパーＣＯサーバー５３４、スーパー・アプライアンス５３２及びスーパー・ユーザー５３０を経てブラウザ５１２へ戻る。
【００２９】
他の実施例では、一つ以上の、スーパー・モジュール（例えば、スーパー・アプライアンス５３２）が欠けていることがある。欠けているスーパー・アプライアンス５３２の場合、スーパーＣＯサーバー５３４は情報をＬＡＮサーバー１４４を通してスーパー・ユーザー５３０と交換する。もう一つの例は、スーパー・ホスト５４８が無かった場合、ウェブサーバー１８２は情報をスーパーＣＯコンセントレータ５３６と交換することである。したがって、スーパー・モジュールが欠けている場合、対応する通常モジュール（例えばＰＣ１４０、ＬＡＮサーバー１４４、ＰｏＰサーバー１５０、ＰｏＰルーター１５４及びウェブ・サーバー１８２）が代わりに用いられる。全て又はいくつかのスーパー・モジュールが用いられることができ、少なくとも二つの異なるスーパー・モジュールの間の少なくとも一つの通信リンクがある限り、リンク全体にわたる情報流れはかなり改善される。
【００３０】
図４は、本発明の実施態様の図２の従来の装置に挿入されたスーパー・モジュールのブロック図である。装置が同じ又は類似している図２におけるのと同じ符号を図４において用いている。スーパー・ユーザー５４０が、モデム２１０を通してＰｏＰサーバー１５２へアクセス装置２２０を介して接続されている。スーパー・ユーザー５３０、スーパー・ユーザー５４２及びスーパー・アプライアンス５３２を有するローカル・エリア・ネットワークは、モデム２１０又はデジタル接続装置２１２に接続されている。デジタル接続装置２１２は、ＰｏＰサーバー１５２へデジタル接続装置２２２によって接続されている。スーパー・アプライアンス５３２は、ＬＡＮサーバー１４４で実行するソフトウェアを含む。サーバー１５２はスイッチ４２０を経てルーター１５４に接続され、そのスイッチはスーパーＣＯサーバー５３４とスーパーＣＯコンセントレータ５３６にパケット通信量を迂回させる。ルーター１５４は、インターネット・クラウド１６０へ接続されている。インターネット１６０から通信量はウェブ・サーバー１８２に接続されたスーパー・ホスト５３８に又はウェブ・サーバー１８４に接続されたスーパー・ホスト５５０に行くことができる。
【００３１】
「スーパー・システム構成要素」
図４のスーパー装置の構成要素（スーパー・ユーザー５４０、スーパー・アプライアンス５３２、スーパーＣＯサーバー５３４、スーパーＣＯコンセントレータ５３６及びスーパー・ホスト５３８を含む）の各々の一実施例を以下に説明する。
【００３２】
スーパー・ユーザー５３０は、ユーザのＰＣ（例えばＰＣ１４０）にあるソフトウェアを含む。データを求める全てのブラウザ要求がスーパー・ユーザー５３０から供給されるので、ブラウザ（例えばマイクロソフトのインタネット・エクスプローラ）がスーパー・ユーザー５３０に代わって設定される。さらに、ブラウザを経た全てのユーザ要求は、スーパー・ユーザー５３０に送られる。それゆえ、ブラウザは、スーパー・ユーザーによってネットワークの残りから隔離される。スーパー・ユーザーは、ユーザがユーザのＰＣでローカル・キャッシュにおいて要求した全てのデータを取り入れるので、ユーザが再びデータを要求するとき、それをローカル・キャッシュ（利用できるならば）から局所的に検索する。
取り入れられるデータが予め定められたファイル・サイズを超える場合、スーパー・ユーザーは、ローカル・キャッシュ内の全てのデータを分析し、が取り入れるそれからと削除を上回る場合、最も使われそうでないデータを削除する。例えば、従来の最近用いられたことが最も少ないアルゴリズムを古いデータを捨てるために用いることができる。スーパー・ユーザー５４０のソフトウェア機能の一部は、以下の通りである。
【００３３】
１．キャッシング：ブラウザがローカル・キャッシュにあるデータを要求し、データがキャッシュ寿命要件に合えば、そのデータはローカル・キャッシュから供給される。さもなければ、データは最も近いスーパー・モジュール・キャッシュ（例えばスーパー・アプライアンス５３２又はスーパーＣＯサーバー５３４）スーパーＣＯコンセントレータ５３６又はスーパー・ホスト５３８）から検索され、そこでは更新されたデータは、利用できるか又は任意のスーパー・キャッシュから利用できなければ、ウェブ・サーバーから利用できる。各データ・エレメントはキャッシュ寿命を有する、すなわち、それがリフレッシュされることが必要になる前に、どれだけの期間それをキャッシュから用いることができるかである。
【００３４】
２．キャッシュ・リフレッシュ：スーパー・ユーザーＰＣが働いていない（インターネットからデータを能動的に検索していない）とき、スーパー・ユーザーは、ローカル・キャッシュを点検して、それのキャッシュ寿命に達しているデータを自動的にリフレッシュする。人工知能（ＡＩ）又は他の技術を用いるスーパー・ユーザーは、ユーザが要求しそうであると決定したものに基づいてリフレッシュすることの優先順位を決める。例えば、スーパー・ユーザーは、ユーザがウェブ・ページにアクセス頻度の数を保存できる。カウントが多ければユーザが将来そのウェブ・ページをもっと多く要求しそうなことを示すだろうし、スーパー・ユーザーは自動的にそのページをリフレッシュするであろう。
【００３５】
３．プリフェッチング：ＡＩ又は他の技術を用いることによって、スーパー・ユーザーは、アイドル・タイムの間、ユーザによって必要とされる確率の高いウェブ・ページをプリフェッチする（すなわち、ユーザがまだ求めなかったウェブ・ページを検索する）。例えば、ユーザがカタログ・サイト上のいくつかのページを調べている場合、ユーザが同じカテゴリーのサイト上の他のページを調べる確率が高い。スーパー・ユーザーはこれらのページをプリフェッチするだろう。プリフェッチングは、ユーザがローカル・キャッシュからデータを得るという確率を大きくする。
【００３６】
４．クーリエ・パケット（後述する）は纏められて、纏められたデータはスーパー・アプライアンス又はスーパーＣＯサーバーに送られる前にスーパー・ユーザーによって圧縮される。クーリエ・パケットはばらされると、ばらされたデータはブラウザに送られる前にスーパー・ユーザーによって解凍される。
【００３７】
スーパー・アプライアンス５３２は、ＬＡＮサーバー１４４で実行するソフトウェアを含む。スーパー・アプライアンス５３２によって実行されたいくつかの機能は、ファイア・ウォール・セキュリティ、大域的キャッシング、チーム化、スマートなホスティング及び電子メール管理を含む。スーパー・アプライアンスソフトウェアによって実行される更なる機能は、以下を含む。
【００３８】
１．スーパー・アプライアンスがスーパーＣＯサーバーに添付される場合、それらの間に送られる全てのデータは圧縮されて、クーリエ・パケットに纏められ、さもなければ、標準インターネット要求が用いられ、応答がスーパー・ユーザーに送られる前に、応答はクーリエ・パケットに纏められる。
【００３９】
２．スーパー・アプライアンスはまた、ユーザによって頻繁に用いられるウェブサイトを自動的にレプリカして保持する。
【００４０】
３．スーパー・アプライアンスがスーパーＣＯサーバーに添付される場合、それは、スーパーＣＯサーバーから変化を知らせられるときだけ、ウェブ・サイトのそれのコピーを更新する。スーパー・アプライアンスがスーパーＣＯサーバーに添付されない場合、それは、アイドル・タイムの間及び／又は周期的に予め定められた間隔の間にウェブサイトの更新の有無を検査する。
【００４１】
４．スーパー・ユーザーがスーパー・アプライアンスに添付される場合、全てのデータ応答はスーパー・ユーザーに圧縮フォーマットで送られる。正規ユーザがスーパー・アプライアンスに添付される場合、データ応答はスーパー・アプライアンスにおいて解凍されてユーザに送られる。スーパー・ユーザーがウェブ・サイトを維持している場合、ウェブ・ページがスーパー・アプライアンスで更新されるときはいつでも、スーパー・ユーザーが変更を要求するように、通知がスーパー・ユーザーに送られる。
【００４２】
５．スーパー・ユーザーはまた、スーパー・アプライアンスにユーザのＰＣモニタ密度に関する情報を知らせて、ローカルエリア・ネットワークを通じて送られるグラフィックスに調整を行うことができるようにする。グラフィックスを表示することができないモニターに、高密度のグラフィックスを送ることは、ネットワーク・リソースの浪費である。スーパー・アプライアンスのソフトウェアは、データを送る前にグラフィックス密度を調整する。
【００４３】
６．二つ以上のスーパー・ユーザーが同じデータを要求する場合、スーパー・アプライアンスは要求を爆縮させて、次のスーパー・モジュール（例えばスーパーＣＯサーバー）に、一つだけの要求を送る。もう一つのスーパー・モジュールがスーパー・アプライアンスとウェブ・サイトの間にない場合、要求はなお爆縮されて、標準のＴＣＰ／ＩＰ要求が作られる。爆縮された要求に対する応答が受けられるとき、データはスーパー・アプライアンスによって爆増されて、データは適当なスーパー・ユーザーに送られる。
【００４４】
スーパー・アプライアンスに保持されるウェブサイトが多ければ多いほど、ウェブ・ページのためのアクセス速度は、ローカルエリア・ネットワーク速度に大きく近づく。スーパー・ユーザーに保存されたウェブ・ページが多ければ多いほど、ウェブ・アクセス速度は、ハードディスク・アクセス速度に大きく接近する。スーパー・アプライアンス及びスーパー・ユーザーでコピー及び保存できるウェブ・ページが多ければ多いほど、ラストマイルは、応答時間の間の隘路になり方が少なくなる。
【００４５】
スーパーＣＯサーバー５３４は、インターネット・バックボーン１１４とユーザ１１０の間の橋である。スーパーＣＯサーバー５３４の一つの目的は、ユーザとインターネットの間の通信量を最小化することである。スーパーＣＯサーバーは、これをスーパー・ユーザー又は通常ユーザによってスーパーＣＯサーバーを介してアクセスされたウェブサイトをコピーすることによって達成する。スーパーＣＯサーバー上に処理されるウェブ・サイトが多ければ多いほど、ネットワークは、ネットワーク全体に渡るデータの移動を減らすことによってより多く最適化される。スーパーＣＯサーバーに処理されるウェブ・サイトがスーパーＣＯコンセントレータ５３６に記憶されたウェブサイトから来る場合、ウェブ・ページが変わったスーパーＣＯコンセントレータ５３６によって通知されるときはいつでも、スーパーＣＯサーバー５３４は更新されたウェブ・ページを要求する。スーパーＣＯコンセントレータ５３６からのウェブ・ページは、圧縮されて纏め直されたフォーマットで記憶される。スーパーＣＯサーバー上にホストされるウェブサイトがスーパーＣＯコンセントレータに記憶されない場合、スーパーＣＯサーバーはホスティング・ウェブ・サーバーにあるウェブサイトの変化を予め定められた間隔で調べる。スーパーＣＯサーバーは、スーパー・アプライアンス５３２キャッシュごとに処理されるウェブサイトのログを保存する。あるスーパー・アプライアンス・キャッシュ上に存在するウェブサイトに変化が起こるとき、そのスーパー・アプライアンスに対して変化が起こったということ及びそのスーパー・アプライアンスが変更されたウェブ・ページの更新コピーを要求すべきであることを知らせる通知が送られる。データが非スーパーＣＯコンセントレータ・サイトから受けられるとき、それは圧縮され、纏められてスーパーＣＯサーバーに記憶される。スーパーＣＯサーバーは、それの要求からそれのユーザによってアクセスされているウェブサイトを決定し、スーパーＣＯサーバー５３４キャッシュでコピーして保持すべきウェブ・サイトがどれかを決める。スーパーＣＯサーバーは、また、用いられていないサイトを削除するだろう。ウェブサイトが記憶され保存されていない場合、ウェブ・ページは、それが再び要求される場合、それを大域的キャッシュから供給できるように、独立した大域的キャッシュに保存される。正しいバランスが大域的キャッシュとウェブ・ホスティングの間に保持される必要がある。大域的キャッシュとスーパーＣＯサーバーは、一つのキャッシュとして実現して別々に管理すること又は二つの独立したキャッシュとして実現することができる。あるウェブ・ページがスーパー・アプライアンスから要求される場合、ウェブ・ページは超圧縮して纏め直されたフォーマットで送られ、さもなければ、ウェブ・ページは解凍されて要求しているユーザに送られる。それがネイティブ形式でユーザに送られるように、ユーザに最も近いスーパー・モジュールはどの纏め直されたフォーマットをもばらしてデータを解凍する。ユーザに最も近いスーパー・モジュールは、また、非圧縮でばらばらのフォーマットで情報を取り入れる。用いられる最適化は、可変データ（通常テキスト）に加えられる圧縮の量とウェブ・ページ上の可変データの量に関係する。インターネット上で用いられるリッチ・データ・フォーマットが多ければ多いほど、より多くの最適化が達成される。フラッシュ・ソフトウェア、ファイル、ジャバ・プログラム、ジャバ・スクリプトその他は、全てスーパーＣＯサーバーに記憶される。
【００４６】
スーパーＣＯサーバーキャッシュによって満たされないスーパー・アプライアンスからのデータ要求が要求されるＵＲＬ（ウェブサイト）を手入れする責任のあるスーパーＣＯコンセントレータ５３６に送られる。その要求は、最適化計画って纏められ圧縮されて爆縮される。一つの実施例において、データ爆縮の第１のレベルは、スーパーＣＯサーバーで起こる。別の実施例においては、爆縮はスーパー・アプライアンスによってなされる。領域的に用いるように向けられている重複使用特性を要求のあり次第爆縮し、応答のあり次第爆増することができるように、スーパーＣＯサーバーはＩＳＰ地理学によって編成される。スーパーＣＯサーバーのキャッシュのデータによって応答されることができない全ての要求と爆縮された要求は、スーパーＣＯコンセントレータに通される。
【００４７】
スーパーＣＯコンセントレータ５３６は、ウェブ・サイト（ＵＲＬのもの）によって編成される。これは、ユーザが必要とするウェブサイト・データがＣＯコンセントレータのキャッシュにある確率を大きくする。また、要求を爆縮させることができ、ネットワーク通信量を減らすことができる確率を大きくする。各スーパーＣＯコンセントレータは、キャッシングとスーパー・ホスト（例えば５３８）及びその他の非スーパー・ホスト・ウェブサイトとインタフェースで接続する役割を果たす。非スーパー・ホスト・ウェブサイトの場合、スーパーＣＯコンセントレータ５３６は、遭遇する第１のスーパー・モジュールであり、最初の纏め直し、最初の圧縮、最後の爆縮、最初の爆増、全てのグラフィックスの最適化圧縮フォーマットへの変換（ＰＮＧ又は有標圧縮アルゴリズム）及びスーパー・キャッシングの最初のレベルが発生する。これはまた、全てのチェックとリフレッシュが他のスーパー・モジュールのために起こる場合である。ウェブサイトからのデータがリフレッシュされて更新されるとき、スーパーＣＯサーバーは、全てのキャッシュを更新してリフレッシュすることができるように通知される。
【００４８】
ウェブ・サーバーは、インターネットに付属する一つ以上のウェブ・サイトを処理する。スーパー・ホスト（すなわちスーパー・ホスト５３８）は、スーパー  ＣＯコンセントレータ（例えば５３６）からなされた要求に答える。要求がウェブ・サーバーで処理される任意のウェブ・サイトのダウンロードのために作られるたびに、スーパー・ホスト５３８は、ウェブ・ページをウェブ・サーバーから検索して、要求元スーパーＣＯコンセントレータにその要求を送る前に、コンテンツを圧縮して纏める。これは、ウェブ輸送の効率を有効な圧縮率によるとともに全ての要求されたウェブ・ページ・データに対して単一データブロックを送ることによってよくなる。情報の各部分は、分析されて、データの特定の形式のために最もよく機能を果たす技術を用いて圧縮される。各スーパーＣＯコンセントレータ要求が受けられると、スーパー・ホストはスーパーＣＯコンセントレータのＩＰアドレスを記録する。スーパー・ホストは、ウェブ・サーバーに含まれるウェブ・サイトを点検して歴史的にウェブ・サイトからデータを要求したいすべてのスーパーＣＯコンセントレータにすべての変更ウェブ・ページの通知を送る。
これは、ウェブ・サイトのバージョンをリフレッシュすることを必要とし、スーパーＣＯコンセントレータがスーパーＣＯコンセントレータのキャッシュ内のウェブ・ページのそれのバージョンから直接にウェブ・ページに対するユーザ要求サービスをすることができるようにすることによってウェブ通信量を最小化するときをスーパーＣＯコンセントレータが分かるようにする。ウェブ・ページのスーパーＣＯコンセントレータのバージョンがリフレッシュされるために必要とする唯一の時は、それが変化した時である。これは、ウェブ・ホスティング・サイトからＩＳＰサイトへの最小化された通信量を可能にする。各ウェブサイトでデータにアクセスする多くのＩＳＰサイトがある。これは、ウェブサイトをインターネットの外側縁へ動かして、圧縮し纏めてインターネットの内部機構にすることにおけるステップである。ウェブサイトをインターネットの外側縁に動かす挑戦は、データが最新のものであることを確かめることであり、スーパー・モジュール・キャッシュを連結することはこれを保証する。
【００４９】
「キャッシング」
今日のウェブサイトのコンテンツ及びグラフィックスの豊富な性質のために、ウェブサーバーからユーザのウェブ・ブラウザへの情報の送出は、相当な時間をとることがある。結果は、多くの場合に、ユーザーが失望して、待ち続けるのではなくウェブサイトを放棄するようになることである。これは電子商取引ウェブサイト・オペレータがジレンマに陥り、その人は低解像度画像（あるとしても）を有する単純なテキストを用いるか又はユーザを失う危険を冒すことを強いられる可能性がある。
【００５０】
ＩＳＰにおいてキャッシュ・サーバーを導入することによって問題を解決する試みがいくつかなされた。キャッシュ・サーバーがユーザ待ち時間にいくらかの低減をすることに成功したと証明した。その理由は、それらはそのユーザ及び他のユーザによって最近検索されたウェブ・ページのコピーを保持しているからである。しかし、キャッシング・サーバーは新規なウェブ・ページ（すなわち以前に要求されことがなかったウェブ・ページ）の要求には何の利益もないし、それらは、ウェブサーバーで何らかの変更をされて局所的に保存されたウェブ・ページを更新しない（すなわち、ウェブ・ページは新鮮味がなくなる）。さらに、キャッシング・サーバーは、記憶サイズが制限されているので、より新しいコンテンツを保持するために古いコンテンツを捨てなければならない。この「先入れ先出し」（ＦＩＦＯ）に基づいた方法論のために、キャッシュに入れられたかもしれないコンテンツは、それが再び必要となるときまで、廃棄される可能性がある。
【００５１】
上記の問題に対する解決案は、ユーザが必要とするデータをユーザがそれを必要とするだけ長くユーザにできるだけ近く保持する目的を有する本発明の一実施態様を含んでいる。スーパー・ユーザーの必要なデータ又はスーパー・キャッシュを経てスーパー・アプライアンスを記憶することを最大にしようとすることによって、ラストマイルを通じて転送されたデータの量、従ってユーザの待ち時間はかなり減少する。これを達成するために、それらのスーパー・キャッシュを有するスーパー・モジュールは、選択されたウェブサイト又はそれの部分を自続連結されたミラーを事実上保持する。ミラー情報のコンテンツは、ユーザ・ニーズに基づいており、アイドル・タイムの間又は計画時間の間自動更新によって現状を維持される。それゆえに、変更又は修正がメイン・ウェブサイトに起こる場合、変更又は修正はスーパー・キャッシュを通して伝播される。さらに、以前に要求されたウェブサイトの断片を保持するだけであるキャッシュ・サーバーとは異なり、スマートなキャッシュがウェブサイトの一つ以上のリンク・レベル（あまり用いられないリンクさえ）を含む。リンク・レベルの使用は選択される。それは、ユーザが同じレベル上のもう一つのリンクを用いることがありえるからである。例えば、リンク・レベル０は、その埋め込みオブジェクト（例えばグラフィックス及びファイル）へのそれのリンクとともにホームページである。リンク・レベル１は、ホームページから連結されるウェブ・ページ及びこれらのウェブ・ページ上の埋め込みオブジェクトへのリンクを含む。それゆえ、リンク・レベルは、リンク・レベル０を頂点とした三角形のリンクを形成する。リンク・レベルの数が更に大きくなるにつれて、リンクされたページの量及びそれらの関連のリンクされたオブジェクトは、最終的には、全ウェブサイトが検索されるまで増え続ける。したがって、ウェブサイトの全部又は部分が繰り返される。別の実施例において、ありうるリンクの選択するときに、幅第１のアルゴリズムではなく深さ第１のアルゴリズムが用いられる可能性がある。更に、削除されるスーパー・キャッシュの唯一の部分は、人工知能又はユーザがもはや必要としない他の手段によって決定される部分である。例えば、ユーザによる訪問の数によって重み付けされた最近の使用頻度が最少のアルゴリズムがウェブ・ページを廃棄すべき時を決定するために用いられることがある。
【００５２】
最後に、スーパー・キャッシュ及びキャッシング・サーバーは排他的でなく、それらは調和して働いてユーザにすべてのものの中の最良のものを与えるだろう。
要求されたウェブ・ページがたまたまスーパー・キャッシュの中の一つ（例えばスーパー・キャッシュ６４４（図５））にない場合、その要求は、次に、キャッシング・サーバー（例えばＩＳＰキャッシュ６３０を有するＩＳＰサーバー１５２）に送り届けられる。要求されたウェブ・ページがスーパー・キャッシュ又は、キャッシング・サーバーのどちらにもない場合、その要求は次にウェブサイトに進められる。
【００５３】
スーパー・キャッシュは、ネットワーク内のあらゆる点にある。スーパー・キャッシュはＬＡＮサーバーに配置できるので、ＬＡＮ上の全てのネットワーク化ユーザによって共有できる。スーパー・キャッシュは、また、シングル・ユーザのＰＣに置くことができる。スマートなキャッシュはユーザに近ければ近いほど、キャッシュのコンテンツをより速くユーザに送ることができる。スーパー・ユーザー又はスーパー・アプライアンス・スーパー・モジュールを経るスーパー・キャッシュは、ユーザがダイヤルアップ、ケーブルモデム、ＤＳＬ及び他のいかなるネットワークをも含むインターネットにアクセスできる任意の形式の接続を介して作動できる（図１を参照）。
【００５４】
図５は、本発明の実施態様のスーパー・キャッシュ構造の一例を示す。図５には、存在点（ＰｏＰ）に接続された二つのユーザー・リクエスタ・グループ６１０と６１２がある。ＰｏＰ６１４は、データ・プロバイダ・グループ６１６に、インターネット（図示せず）経由で接続されている。データ・リクエスタ・グループ６１０は、スーパー・キャッシュ６２２を有するスーパー・ユーザー５４０に接続されたブラウザ６２０を備えている。データ・リクエスタ・グループ６１２は、選択できるスーパー・キャッシュ６３２を有するスーパー・ユーザー５３０に接続されたブラウザ５１２を有する。スーパー・ユーザー５３０は、また、スーパー・キャッシュ６４２を有するスーパー・アプライアンス５３２に接続されている。ＰｏＰ６１４には、ＩＳＰキャッシュ６３０を有するＩＳＰサーバー１５２があって、ＩＳＰサーバー１５２は、スーパー・キャッシュ６４４を有するスーパー・セントラル・オフィス（ＣＯ）サーバー５３４へ接続されている。スーパーＣＯサーバー５３４は、スーパー・キャッシュ６４６を有するスーパーＣＯコンセントレータ５３６へ接続されている。データ・プロバイダ・グループ６１６にはスーパー・キャッシュ６４８を有するスーパー・ホスト５３８があり、スーパー・ホスト５３８は、ウェブサーバー１８２へ接続されている。
【００５５】
スーパー・キャッシュ６４２、６４４、６４６及び６４８は、それらが現在のデータの共通のセット（例えば、ウェブサーバー１８２におけるウェブサイトのいくつか又は全部）を保持するように、一つに相互連結されている（それぞれ仮想リンク６５０、６５４及び６５６で）。スーパー・ユーザー５４０のためのスーパー・キャッシュ６２２は、スーパー・キャッシュ６４４と選択的に相互連結される（仮想リンク６５２）。また、スーパー・ユーザー５３０のスーパー・キャッシュ６３２が存在するとき、スーパー・キャッシュ６３２は選択的にスーパー・キャッシュ６４２に連結されてもよい（仮想リンク６３４）。
【００５６】
スーパー・ユーザー５３０又は５４０は、ユーザがどのウェブサイトを必要とするかを人工知能又は他の手段によって決定すし、これらのウェブサイトをユーザのスーパー・キャッシュ６３２又は６２２（又はスーパー・アプライアンス６４２）へロードする。例えば、ユーザが必要とするウェブサイトは、現在及び過去のユーザの使い方から決定されてもよい。大部分の人々は時間の８０％をウェブサイトの２０％に用いており、それは、スーパー・ユーザー（又はスーパー・アプライアンス）キャッシュがユーザのＰＣに保持されることができる合理的な有限サイズを持つべきであることを意味する。スーパー・ユーザーがユーザのＰＣにスーパー・キャッシュをロードして保持すると、同じウェブ・ページは他のスーパー・キャッシュ（例えば６４２、６４１、６４６及び６４８）に記憶される。
【００５７】
一旦最初のウェブ・ページが結びついているスーパー・キャッシュにロードされると、それらは最新状態、すなわち、リフレッシュ又は更新された状態に保たれなければならない。図６は、本発明の一実施例のスーパー・キャッシュ・システムのためのリフレッシュ・プロセスを示す簡略例である。ユーザーグループ６１２、ＰｏＰ６１４（ＩＳＰサーバー１５２及びＩＳＰキャッシュ６３０を除く）及びデータ・プロバイダ６１６は、図５に図示したのと同じである。リフレッシュ要求流れ６６０（個々のリフレッシュ要求６６２、６６４、６６６、６６８及び６６９を含む）はスーパー・ユーザー５３０で始まってウェブサーバー１８２へ進む。データ応答流れ６７０（個々のデータ応答６７２、６７４、６７６、６８７及び６７９を含む）は、ウェブサーバー１８２で始まってスーパー・ユーザー５３０へ進む。説明を助けるために、各スーパー・キャッシュはレベル番号（すなわち、スーパー・キャッシュ６３２はレベル１（Ｌ１）にあり、スーパー・キャッシュ６４２はレベル２（Ｌ２）にあり、スーパー・キャッシュ６４４はレベル３（Ｌ３）にあり、スーパー・キャッシュ６４６はレベル４（Ｌ４）にあり、そしてスーパー・キャッシュ６４８はレベル５（Ｌ５）にある）を与えられる。
レベルが高ければ高いほど、スーパー・キャッシュはウェブサーバー１８２により近く、逆に、レベルが低ければ低いほど、スーパー・キャッシュはブラウザ５１２に近い。
【００５８】
リフレッシュはプロセッサが優先順位のより高い作業（例えば、ユーザがデータを要求するか又はデータ応答を受けるか又はアプリケーション命令もしくは何らかの他のユーザ要求を実行する）を遂行していない間に起こる。スーパー・ユーザーが独立のもの（他のスーパー・モジュールが全くない）である場合、スーパー・ユーザーのソフトウェアが、当業者に周知の任意の従来の手順を用いてインターネットから、データを検索し、ユーザのスーパー・キャッシュ６３２をリフレッシュする。スーパー・ユーザー５３０がスーパー・アプライアンス５３２に取り付けられるとき、リフレッシュ要求はスーパー・アプライアンス・スーパー・キャッシュ６４２へ行く（スーパー・ユーザー（例えば、５４０）が図５にあるようにスーパーＣＯサーバー５３４に取り付けられる場合は、リフレッシュ要求はスーパー・キャッシュ６４４に送られる）。各スーパー・モジュールは、それのより低レベルのスーパー・モジュールからリフレッシュ要求を受ける。要請されるデータがそれのキャッシュの中で最新である場合、応答スーパー・モジュールは要求を果たすためにそれのキャッシュを用いる。応答スーパー・ユーザーのキャッシュが最新でない場合、リフレッシュ要求は次の高レベルのスーパー・モジュールに進められる。このプロセスは、より高いレベルのスーパー・モジュールがなくなるまで繰り返される。その次に、このレベルは、リフレッシュ要求を満たすためにウェブサーバーにリフレッシュ要求を送るために標準のインターネット・プロトコルへ戻る。このプロセスは、スーパー・キャッシュのレベル全体にわたってスーパー・キャッシュを最新に保つ。
【００５９】
図７は、本発明の実施態様のスーパー・キャッシュの自動リフレッシュ・プロセスのフローチャートである。レベルＮ（ここで、Ｎは整数である）のスーパー・キャッシュ６８０は、レベルＮ＋１のスーパー・キャッシュ６８２からリフレッシュを要求する。ステップ６８４で、レベルＮのキャッシュ６８０を有する第１のスーパー・モジュールは、例えば、予め定められた計画時間、期限切れのキャッシュの寿命、又はレベルＮ＋１のスーパー・キャッシュを有する第２のスーパー・モジュールからの更新通知の受信に基づいてデータのリフレッシュを要求する。判断結節点６８６で第１のスーパー・モジュールが使用中の場合、待ちループが結節点６８５へ行くことによって起こる。第１のスーパー・モジュールがステップ６８８でアイドルのとき、リフレッシュ要求はレベルＮ＋１のスーパー・キャッシュ６８２に送られる。ステップ６９０で、リフレッシュ要求は、第２のスーパー・モジュールによって受けられ、ステップ６９２で第２のスーパー・モジュールは、それのキャッシュを要求されたデータがレベルＮ＋１のスーパー・キャッシュにあって最新であるかどうかを調べるために検査する。要求されたデータがそのスーパー・キャッシュにないし最新でもない場合、第２のスーパー・モジュールがアイドルのとき、第２のリフレッシュ要求がレベルＮ＋２のスーパー・キャッシュを有する第３のスーパー・モジュールに送られる（ステップ６９６）。第２のスーパー・モジュールがスーパー・ホスト５３８であるとき、リフレッシュ要求はウェブサーバー１８２に送られる。要求されたデータがキャッシュの中で最新である場合、ステップ６９８で第１のスーパー・モジュールのＩＰアドレスが要求されたデータとともにレベルＮ＋１のスーパー・キャッシュに記憶される。ステップ７００で、要求されたデータはＮ＋１レベルのキャッシュから検索され、ステップ７０２でデータは第１のスーパー・モジュールに送られる。第１のスーパー・モジュールは、データ応答を受けて（ステップ７０４）、それのスーパー・キャッシュのデータを更新する（ステップ７０６）。選択的に、必要に応じて、更新通知は、レベルＮ−１のキャッシュを有する前のスーパー・モジュールに送られる（選択ステップ７０８）。
【００６０】
図６のスーパー・ホスト５３８（又はそれがない場合、スーパーＣＯコンセントレータ５３６又はスーパーＣＯサーバー５３４）は、ウェブサーバー１８２上のウェブサイトを能動的に記憶してモニターする。ウェブサイトに変更があるとき、スーパー・ホスト５３８はそれのレベル５のスーパー・キャッシュ６４８を更新する。スーパー・ホスト５３８は、次にスーパーＣＯコンセントレータ５３６に更新通知６５２（図６）を送る。アイドルのとき、スーパーＣＯコンセントレータ５３６はスーパー・ホスト５３８にリフレッシュ要求６６８を送る。スーパー・ホスト５３８は、ウェブサイトの変化をそれのスーパー・キャッシュ６４８に記憶させて、データ応答６７４をスーパーＣＯコンセントレータ５３６に戻す。スーパーＣＯコンセントレータ５３６は、それのスーパー・キャッシュ６４６を更新して、次に、スーパーＣＯサーバー５３４に更新通知６７６を送る。プロセスは、より低いレベルへ行く更新通知６５０、より高いレベルへ行くリフレッシュ要求６６６及びより低いレベルへ行く応答データ要求を、スーパー・ユーザーのレベル１のスーパー・キャッシュ６３２がその変更で更新されるまで、繰り返す。一つのウェブサイトに対して多くのユーザがあるので、ある一つの変更の１対多数のマルチキャスティングはユーザー・キャッシュを更新する効率的な方法である。
【００６１】
本発明の一実施態様において、ユーザ要求ＩＰパケット内のセンダーのＩＰソース・アドレスは、受信スーパー・モジュールのスーパー・キャッシュ内のユーザ要求に応答してデータとともに記憶される。データ要求がスーパー・キャッシュ・レベル繰り上げる（すなわちレベル数が増加する）と、アドレスを識別する要求元スーパー・モジュール（例えばレベルＮ）は、受信スーパー・モジュール・スーパー・キャッシュ（例えばレベルＮ＋１）内の応答データとともに記憶される。更新は全てより低いレベルのキャッシュに広められる。これは１対多数の活動なので、キャッシュを新鮮に保つ効率が非常に良い。
【００６２】
図８は、受信スーパー・モジュールのキャッシュにある多数のユーザ要求及びリクエスタＩＰアドレスからの記憶データの例である。図８は、四つのスーパー・モジュール、すなわち、スーパー・キャッシュ７１２を有するスーパー・モジュール７１０、スーパー・キャッシュ７１６を有する「スーパー・モジュール２」  ７１４、スーパー・キャッシュ７１７を有する「スーパー・モジュール３」７１５及びスーパー・キャッシュ７２０を有する「スーパー・モジュール４」７１８を示す。スーパー・モジュール７１０、７１４及び７１５は、「スーパー・モジュール４」７１８に接続されている。「スーパー・モジュール１」７１０は、ユーザー１の要求７３０を通信リンク７３２を経て「スーパー・モジュール４」７１８へ送る。「スーパー・モジュール４」７１８は、ユーザー１の要求７３０を実行して「応答データ１」７６２を検索する。「スーパー・モジュール４」７１８は、「応答データ１」７６２をユーザー１の要求７３０のＩＰソースユーザー１のアドレス７６６（例えばデータ構造７４０の列７４２にある例えば「スーパー・モジュール１」７１０にあるＩＰアドレス）と関連づける。「スーパー・モジュール４」  ７１８は「スーパー・モジュール１  」７１０に「応答データ１」７５０を返し、それはデータをそれのスーパー・キャッシュ７１２に記憶する。同様に、「スーパー・モジュール２」７１４はユーザー２の要求７３４をリンク７３６を経て「スーパー・モジュール４」７１８に送り、「スーパー・モジュール３」７１５はユーザー３の要求７３５をリンク７３７を経て「スーパー・モジュール４」７１８に送る。「スーパー・モジュール４」７１８は、ユーザ要求を同様に処理し、「応答データ２」７６４−１を有するデータ構造７２０の列７４４内にユーザー２の  ＩＰアドレス７６８を作り、「応答データ２」７６４−２（すなわち「応答データ２」７６４−１のレプリカ）を有する列７４６にユーザー３のＩＰアドレス７６９を作る。同様に、「スーパー・モジュール４」７１８は、７５４−１及び７５４−２内の同じ応答データ２をそれぞれスーパー・モジュール７１４及び７１５に送る。応答データ２（７６４−１及び７６４−２）を変えるときは、ユーザー２のＩＰアドレス７６８及びユーザー３のＩＰアドレス７６９に更新通知を送る必要があることをデータ構造７２０が示していることに注意。したがって、キャッシュ・レベルを介して更新を繰り下げることができる。
【００６３】
動的ＩＰアドレスを使用するシステムの場合、７４０のデータ構造は、ユーザーＩＤがスーパー・キャッシュの性能を最大にするための追加のエントリ（例えばユーザー１ＩＤ７７０、ユーザー２ＩＤ７７２及びユーザー３ＩＤ７７４）を含む。レベルＮのスーパー・キャッシュが動的に割り当てられたＩＰアドレスでレベルＮ＋１のスーパー・キャッシュに接続するたびに、スーパー・キャッシュＮ＋１は、ユニークなユーザーＩＤを新しい動的に割り当てられたＩＰアドレスに合わせるためのそれのデータ・テーブル７４０を調べて、ＩＰアドレス欄が常に最新である（例えばユーザー２のＩＤ７７２がユーザー２のＩＰアドレス６８をもっている）ことを確かめる。この方法は、ユーザIPアドレスが変化していても、スーパー・キャッシュN+1が各ユーザに対して以前に取り入れられた情報のユーザを動的に割り当てられたIPアドレスと一緒にできるようにする。一つの実施例は、データ構造７４０（例えばユーザＩＤ７７０、７７２及び７７４）のユーザーＩＤ欄を含むこと又は独立したデータ構造を作ることである。
【００６４】
もう一つの実施態様において、スーパー・ユーザー（又はスーパー・アプライアンス）は人工知能又は他の手段によって要求されなかったウェブ・ページへユーザーが行く確率を決定する。例えば、ユーザがスーパー・ユーザーのスーパー・キャッシュにすでに記憶されたウェブ・ページに対するリンクへ行くという十分な確率又はユーザによって以前に訪問されたことが全くないウェブサイトのページにあるいくつかのリンクを用いる十分な確率はあるかも知れない。アイドル・タイムの間、次に、スーパー・ユーザーは、ユーザがそれのスーパー・ユーザー・キャッシュ（またはスーパー・アプライアンス・キャッシュ）から将来くる要求を満たすことができる確率を大きくしようとしてウェブ・ページをプリフェッチできる。プリフェッチ要求はそれらが最低の優先権（すなわちユーザー要求、更新及びリフレッシュ要求より下）を持っていることを除いて、リフレッシュ要求と同様に扱われる。プリフェッチされたウェブ・ページはまた、他のいかなる活動もネットワークにない場合以外は、リフレッシュされない
【００６５】
ユーザが検索するウェブ・ページを調べるときは、ウェブ・ページはテキスト式データ及びグラフィックスを含む。テキスト圧縮のための効率的で簡単なアルゴリズムがあるが、グラフィック・データの圧縮はずっとむずかしい。幸いにも、多くのウェブ・ページ・グラフィックスは、あまり変わらない。本発明の別の態様において、グラフィックスはスーパー・ユーザー・スーパー・キャッシュもしくはスーパー・アプライアンス・スーパー・キャッシュのいずれか又は両方にあるユーザーの近くに記憶される。
【００６６】
図９は、グラフィックス及びテキスト又は本発明の一態様のインターネットを通じてのユーザとウェブサーバーの間の動的データのためのデータフローの一例を示す。図９は、スーパー・ユーザー５３０、スーパー・キャッシュ６４２を有するスーパー・アプライアンス５３２、ＰｏＰ８１０及びインターネット８１２を経てウェブサーバー８１４に接続されているブラウザ５３２を示す。スーパー・キャッシュ６４２は、一般的に変化しないで低い圧縮比を有するウェブ・ページ上にグラフィックスを記憶する。これらのウェブ・グラフィックスは、経路８２０を経てスーパー・キャッシュ６４２によってブラウザ５１２に供給される。
一般に変化し圧縮するのが容易で、高圧縮比を有するテキスト及び動的要求は、ウェブサーバー８１４に経路８２２を通じてブラウザによって要求される。
【００６７】
上記の方法は、電子商取引支援ウェブサイトにおけるオンライン購買と協力して働く。ユーザはウェブサイトの製品を描いている高解像度、動画３Ｄグラフィックスを受けるためにスーパー・キャッシュ６４２と対話する。このコンテンツがスーパー・キャッシュ６４２からユーザのブラウザに送られるだけしか必要でなく、インターネットを通して送信される必要がないので、対話はきびきびして迅速である。ユーザが確実な購入品又はアクティブ・サーバー・ページに設けられたデータベース索引を必要とする要求をするとき、スーパー・キャッシュ６４２は、その要求を扱わず、その代わりに、それはウェブサーバー８１４に経路８２２を経て直接に通される。ほとんどの要求が小さいので、それらはウェブサーバー８１４へ迅速に戻り、それがそれの標準処理を実行する。結果は、スーパー・ユーザー５３０を通してユーザへ送られる。
【００６８】
図９が示すように、動的データ及びキャッシュ不能としてタグを付けられたデータは通常キャッシュに保存されないが、それはウェブ・ページ要求ごとにリフレッシュされる必要があるからである。動的データのための頻繁な（予想だが）要求をもつ多数のユーザーがいるスーパー・アプライアンスの場合、予想又は平均頻度より高い頻度でデータを要求することが必要となる前にデータをプリフェッチしてユーザの待ち時間を減らす。データが１人以上によって何度も要求されるとき、動的プリフェッチリストが人工知能又はその他の手段を用いて作られる。諸パラメータを頻度及びタイミングを定めるために入力できる。
【００６９】
本発明の別の態様において、高性能モジュールは、流動ファイルをそれが普通のウェブ・ページ・データをキャッシュするのと同じ方法でキャッシュする。ストリーミング・データがリアルタイムでなければ、流動データはできるだけユーザに近くスーパー・キャッシュにキャッシュされる。非実時間流動ファイルが要求される次回には、それがユーザの近くに存在するので、配信に必要なネットワーク資源をかなり減らす。
【００７０】
「チーム化」
本発明の実施例において、任意の形式の複式接続をより高いバンド幅を与えるように一つに「チーム化」できる。このより高いバンド幅は、ウェブ・ページ、グラフィックス及びファイルのダウンロードの検索を同じ形式の単一接続の場合より速くする。チーム化は、一つ以上の宛先へ行く二つ以上の通信リンクを有するスーパー・モジュールを必要とする。スーパー・モジュールのソフトウェアが従来の通信ソフト（例えば標準モデムのソフトウェア）の上にあるので、スーパー・モジュールは、たとえ各通信リンクが異なる通信プロトコルを有する場合であっても、アプリケーション・データを二つ以上の通信リンクの各々と交換できる。
【００７１】
チーム化は、普通、二つ以上の通信リンクを有する二つのスーパー・モジュールの間で生じる。ロード・バランシング・アルゴリズムがＴＣＰ／ＩＰパケットの通信量を動的に調整してデータの転送時間を最小にしようとする。ロード・バランシング・アルゴリズムで用いられたファクターには接続の速度、接続上の最新のロード、接続のサービスの質及び用いられた最後の接続があるが、これに限定されるものではない。例えば、スーパー・モジュールへの速いＤＳＬ接続及び遅いダイヤルアップ・モデム接続があって、両方が用いられていない場合、まず速いＤＳＬ接続が用いられる可能性がある。
【００７２】
接続のチーム化がやはり多数の接続を結合する標準マルチリンク・ポイント・ツー・ポイント・プロトコル（ＭＬＰＰＰ）と異なる。ＭＬＰＰＰは、多数の接続を単一のパイプとして取り扱う。送信側のＭＬＰＰＰは、高い方の層のプロトコル又はアプリケーションからネットワーク・プロトコル・データ・ユニット（ＰＤＵ）を受けて、より小さいパケットにこれらのＰＤＵを分解し、ＭＬＰＰＰヘッダを各ピースに追加して、全ての利用可能なリンクを通じてそれらを送る。受受信端では、ＭＬＰＰＰソフトウェアは、断片化パケットを異なるリンクから取り、それらをそれらのＭＬＰＰＰヘッダに基づいてそれらの正しい順序にし、そそれらをそれらの元のネットワーク層ＰＤＵに復帰させる。ＭＬＰＰＰ規格は、通信量がこれらのメンバーＰＰＰリンクを通じて釣り合わせる方法を要求しない。他方、接続のチーム化は、標準ＴＣＰ／ＩＰプロトコルの他にもう一つの特殊な通信プロトコル（すなわちポイント・ツー・ポイント・プロトコル（ＰＰＰ））を必要とせず、チーム化は利用可能なリンク（そしていくつかを用いないことがある）を知的に用いる。
【００７３】
図１０は、本発明の実施態様の接続のチーム化の一例を示す。ブラウザ９０８を有するスーパー・ユーザー９１０は、二つのダイヤルアップ接続回線９１２及び９１４を経てＰｏＰ９３５へ接続されている。ブラウザ９２０はスーパー・ユーザー９２２に接続され、ブラウザのソフトウェア及びスーパー・ユーザーのソフトウェアの両方がユーザのＰＣで実行する。スーパー・ユーザー９２２は、スーパー・キャッシュ９２６を有するスーパー・アプライアンス９２４へ接続されている。スーパー・アプライアンス９２４は、ＰｏＰ９３５へ行く高速リンク９２８及び二つの低速モデム・リンク９３０と９３２を有する。ＰｏＰ９３５は、高速データリンク９３７によってインターネット９４０へ接続されている。ウェブサーバー９４２は、また、インターネット９４０に接続されている。
【００７４】
例えば、スーパー・ユーザー９１０とスーパーＣＯサーバー５３４（図示せず）を有するＰｏＰ９３５の間のチーム化接続９１２と９１４を見られたい。接続９１２と９１４の両方は、同時に、オンラインになっていることを必要とする。これは、アナログモデムが用いられる場合、二つのモデム、二つの電話回線及び通常二つのＩＳＰアカウント（又は同時ログインを支える単一のＩＳＰアカウント）があることを必要とすることを意味する。他の実施態様においては異なる形式の三つ以上の接続を用いることができる。
【００７５】
どのようにチーム化が働くかについて説明するために、スーパー・ユーザー９２２、スーパー・アプライアンス９２４、ＰｏＰ９３５及びインターネット９４０を経てブラウザ９２０とウェブサーバー９４２の間を行き来するサンプル経路を使用する。ユーザが彼のブラウザ９２０（例えばｈｔｔｐ：／／ｗｗｗ．ｇｍ．ｃｏｍ．）に、単一の要求を入力する。要求は、サンプル経路を通じてウェブサーバー９４２に送られる。ウェブサーバー９４２は、単一のＨＴＭＬファイルをブラウザ９２０へ送り返すことによって応答する。そのＨＴＭＬファイルは、普通のウェブ・ページを構成する埋め込みグラフィック画像のための多くの追加のリンクを含む。ウェブ・ブラウザ９２０は、それらのリンクのための要求を自動的に生成し、その要求は時には数十に達することがある。例えば、スーパー・アプライアンス９２４における接続のチーム化のソフトウェアは、多くの関連の要求がウェブ・ブラウザ９２０によって生成されているという事実を感知する。ロード・バランシングを用いるスーパー・アプライアンス９２４は、これらの要求を利用可能な接続９２８、９３０及び９３２のいくつか又は全部にわたって分配するか又は大部分の要求を高速接続９２８を通じて送り、残りを低速接続９３０と９３２の間に分割することができる。
【００７６】
ゼネラル・モーターズ（ＧＭ）のホームページの例を用いると、３６以上の埋め込みグラフィック要求を自動的に生成できる。接続のティーム化なしでは、一つの接続が３６の要求全てを単独で処理しなければならないだろう。二つの接続を有する接続のティーム化を用いることによって、各接続は、１８の要求を扱わなければならないだけである。四つの接続が接続のティーム化に利用可能な場合、負荷は、さらに１接続につき９要求だけになるであるだろう。それゆえに、接続を並列に用いることは、かなりデータの転送時間を減らした。
【００７７】
「ファイル転送マルチプライア」
スーパー・アプライアンスは、それがエンドユーザのアプリケーション（例えばウェブ・ブラウザ）から、受けるＨＴＴＰ、ＨＴＴＰ−ＦＴＰ又はＦＴＰ要求に基づく決定を行うための知能を含む。これらの決定は、特にラストマイルを通じてファイル及びウェブ・ページ・グラフィックスを転送するためのインターネットの接続性能を劇的に改良することができる。ＨＴＴＰ、ＨＴＴＰ−ＦＴＰ及びＦＴＰに加えて、スーパー・モジュールは何らかのアプリケーションがかなりの量のデータを転送するための時間を減らすためにファイル転送マルチプライアを使用する。
【００７８】
エンドユーザ・アプリケーション（例えばウェブ・ブラウザ）がそれのＨＴＴＰ及びＨＴＴＰ−ＦＴＰ要求をスーパー・アプライアンスに転送するように構成されている。エンドユーザが彼のブラウザ９２０にあるリンクにアドレス又はクリックを入力するとき、特定のＨＴＴＰ又はＨＴＴＰ−ＦＴＰサーバーから情報を受けるための要求は、ブラウザ９２０によって生成されて、スーパー・アプライアンス（通常のＰＣ又はスーパー・ユーザーどちらかを経て）に転送される。
この要求を受けると、スーパー・アプライアンスはウェブサーバー９４２と交信して、ファイルにある若干の初期データ（すなわち１．要求されたファイルが宛先サーバーから利用可能であるという肯定応答、２．要求されたファイルの「タイムスタンプ」（すなわち日付及び時間）、３．要求されたファイルのバイトのサイズ、４．宛先サーバーによって支援されたプロトコル（具体的には、それが「部分受信」関数を支援するＨＴＴＰ１．１プロトコル又は「転送リスタート」特徴を支援するＦＴＰプロトコルを実行しているかどうかを調べるために）及び５．ファイ又はファイルの一部を送ることができる代替サーバーがあるかどうかを含むファイル情報）を得る。
【００７９】
スーパー・アプライアンスがこのファイル情報を受けるとき、それは実際のファイルを検索するに当たっていくつかの決定をする。
【００８０】
１．要求されたファイルがスーパー・アプライアンスのスーパー・キャッシュ９２６に存在してウェブサーバー９から送られたファイル情報と同じタイムスタンプを有する場合、スーパー・アプライアンス９２４はスーパー・キャッシュ９２６から直接にエンドユーザのブラウザ９２０にファイルの写しを配信する。これは、同じファイルをインターネットを通じて検索するためのニーズを省いて、エンドユーザの性能をかなり改善する。
【００８１】
２．ウェブサーバー９４２からのファイル情報がスーパー・アプライアンスにあるものよりさらに最近のタイムスタンプを有するか、又はファイルがスーパー・アプライアンスのキャッシュ９２６にまだ存在しない場合、スーパー・アプライアンス９２４は他のスーパー・キャッシュ（図６を参照）又はウェブサーバー９４２からラストマイルを通じてそのファイルを検索する。この場合、ファイル転送マルチプライア技術（それはこの発明の一実施例の一部であって以下に説明する）は、ラストマイルを通じてファイルを転送する効率を改善するために必要である。
【００８２】
ファイル転送マルチプライア技術は、ＨＴＴＰ１．１対応ウェブサーバーにある特徴及び「転送リスタート」と呼ばれるＦＴＰサーバーにある特徴を利用する。これらの特徴の各々は、同じ基本的能力を与え、それらによってスーパー・モジュールがファイルのどの部分をダウンロードすべきかについて特定できる。ファイル転送マルチプライア技術は、要求が大きなグラフィック画像をウェブ・ページに表示することか、又はＨＴＴＰ−ＦＴＰプロトコル（ウェブ・ブラウザによって生成されるＦＴＰの形式）を用いるファイル転送であるかどうかに関係なく働く。ユーザの観点から、それらはスーパー・アプライアンス９２４に進められるそれらのブラウザ９２０から単に一つの要求を行うだけである。スーパー・アプライアンス９２４は、次に、要求を処理する次のレベルのスーパー・モジュール・キャッシュ又はウェブもしくはＦＴＰサーバーがＨＴＴＰ１．１又はＦＴＰ転送リスタート特徴をサポートするかどうかを決定する。その場合は、スーパー・アプライアンス９２４は一つ以上の接続を通じてファイルの異なる部分を要求する。ウェブ又はＦＴＰサーバーがファイルを分割可能にする必要な特徴をサポートしない場合、スーパー・アプライアンス９２４は、それが通常なされたであろうように、一つの接続を通じてそのファイルを受ける。
【００８３】
より詳しくは、スーパー・アプライアンス９２４はファイルのための多重要求を生成する。第１の要求は、ウェブ／ＦＴＰサーバー（又はもう一つのスーパー・モジュール）が全ファイルを送ることを求める。他の要求は、ウェブ／ＦＴＰサーバー、例えばウェブサーバー９４２（又はもう一つのスーパー・モジュール）、がファイルの他のセグメントを送ることを求める。スーパー・アプライアンス９２４は、ファイルの第１のセグメント及び他のセグメントの両方を並列に受ける。ファイルの第１のセグメントがスーパー・アプライアンスによって受けられると、それは直ちにスーパー・ユーザー９２２を経てブラウザ９２０上に進められ、まさにブラウザが予想する通りである。ファイルの他のセグメントは、それらが受けられている通りにスーパー・アプライアンスＰＣに記憶され、直ちに又はわずかに遅れて、ブラウザに転送されてもよい。一般に、ＬＡＮネットワーク速度がラストマイル・リンクより大きいので、ユーザはより短い時間で全ファイルを受ける。いずれにせよ、ファイルの他のセグメントに対する要求が失敗するか又は第１の要求より遅いペースで受けられている場合、スーパー・アプライアンスは他の要求を取り消して、第１の要求が全ファイルを受けることができるようにする。ファイルを送ることができる複数サーバーがある場合、スーパー・アプライアンスは異なるサーバーからファイルの異なる部分を要求できるので、通信量のロードバランスをとってより速い配信を達成する。
【００８４】
ファイル転送逓倍が一つのファイルの複数セグメントを並列に送ることによってそれの性能が向上する。インターネットへの接続が単一である環境においてファイル転送逓倍を用いるとき、性能の向上がその単一接続のより良い利用によって受けられる。単一要求の処理量がISPによって「速度を落される」ことはまれでないので、ISPのバンド幅は、それの多くのユーザに対する多くの要求全体にわたって広げられることができる。例えば、エンドユーザのPCとISPの間に４１６Kbps DSL接続があってもよい。ISPは、何らかの唯一の要求がバンド幅の２００超のKbps値を受けてはならないという制限を加えることがある。ファイル転送逓倍がなければ、その結果、一つのファイルを求める単一要求が２００Kbpsでできるより速く行くことは決してなく、２１６Kbpsのバンド幅のものが使われないで残る。ファイル転送逓倍があれば、複数要求がそのファイルのために行われる（ファイルの第１のセグメントとファイルの第２のセグメントに対して一つの要求）。１要求につき２００Kbpsという同じ制限を有する環境において、ファイルの各要求は２００Kbpsのバンド幅を得て、それらは、結合されると、４００Kbpsとなってファイルの前半と後半を下げる。これは、使われていないバンド幅をかなり大きくする。
【００８５】
複数接続を管理しているスーパー・アプライアンスの接続のチーム化特徴を有する環境においてファイル転送逓倍を用いるとき、性能の利得は、一つ以上の要求を一つの接続で送り、他の要求を他の接続で送ることによって高められる。ISPによる「減速」がない場合には、全ての要求がファイルのセグメントを下げるために各接続の全バンド幅を得るだろう。減速が起こる場合には、残りのバンド幅は他のユーザのための他の要求を処理するスーパー・アプライアンスによってまたは他のサーバからいくつかの部分を要求することによって用いられる。
【００８６】
図１１は、本発明の態様のファイル転送逓倍による時間節約の例を与える。水平軸１０１０には「０」スタート時間１０１２、時間「T」１０１４及び時間「２T」１０１６、すなわち、（２x T）、の時間表示がある。通信リンク９３０（図１０）を通じて伝播するファイルが「２T」１０１６の時間をとると仮定する。ファイル１０２０を半分に分割してファイル１０２０の第１のセグメント１０４４をリンク９３０（図１０）経由で送り、ファイル１０２０の第２のセグメント１０３２を第２のリンク９３２（図１０）経由で同時に送ることによって、全ファイル１０２０を転送するのにかかる時間は、Tであるかまたは時間が半分になる。また、全ファイル１０２０はリンク９３０を通じて送られ、一方、並行して、第２のセグメント１０３２が回線９３２を通じて送られてもよい。第２のセグメント１０３２がうまく到達する場合、リンク９３０上の伝送の第２部分は必要でない。一つのリンクが高速DSLリンク９２８（図１０）で第２のリンク９３０（図１０）がダイヤルアップ・モデム・リンクである場合、ファイル１０２０を不均等に分けることができる。第１の大きいセグメント１０４０はDSLリンク９２８を通じて送られ、ファイル１０２０の残りの小さな部分１０４２は遅いリンク９３０を通じて送られる。
【００８７】
上記は、アプリケーション・サーバとユーザから最も遠いスーパー・モジュールの間の「外部」のプロセスを概説している。外部ファイル転送マルチプライアは、アプリケーション・サーバがファイル分割規格（例えばHTTP１．１部分受信またはFTP転送リスタート）をサポートすることを必要とする。スーパー・モジュールはまた、「内部ファイル転送マルチプライア」をアプリケーション・サーバがファイル分割特徴をサポートするかどうかに関係なく、スーパー・モジュール間の配信時間を減らすために用いる。これを達成するために、各スーパー・モジュール・サポートは、スーパー・モジュール間で送られた情報を次のスーパー・モジュールに直列ではなく並列に転送されるいくつかのブロックに分割できるようにするデータ分割関数をサポートする。アプリケーションに関係ないほかに、内部ファイル転送マルチプライアは、複数ソースからのデータの配信を速めることができる。内部ファイル転送マルチプライアは、単一の高速回線を通じてまたはチーム化が情報を送るために用いられる場合、次のスーパー・モジュールに複数回線を通じて転送されるデータのための伝送時間を改良する。内部ファイル転送マルチプライアは、双方向性であって、例えば遠隔サーバからのファイル転送などのデータ・ダウンロードと同様に、例えば大きな添付資料のある電子メールを送信するようなデータアップロードを改善する。
【００８８】
図１１に示されているように、異なる速度のアクセス接続間のクーリエ・パケットまたはファイルを分割するとき、データは一般に等しいサイズのファイルに分けられないで、代わりに、データは全ての伝送が同時に終わるようにアクセスの速度に合うファイルに分割される。別の例として、スーパー・モジュールを一つの回線が他のものより４倍速い２回線を通じて「n」バイトのデータを転送する必要があると仮定すると、そのときは、速い回線は、転送すべきデータのサイズの４／５のファイルを持ち、遅い方の回線は転送されるべきデータのサイズの１／５のファイルを持つことになるだろう。これは、転送をほぼ同じ時間に終えることを可能にする。ファイルが均一に分割された場合、速い回線は完了するだろうし、遅い回線は実効応答時間を遅らせる。
【００８９】
ファイルの分割とファイル・セグメントの並列伝送は、いかなる数の回線でも行うことができる。要求元スーパー・モジュールには送信元スーパー・モジュールから要求しているデータのサイズが分からないので、この情報は、アクセス回線の速度を用いる要求元モジュールによって推測されなければならない。送信元スーパー・モジュールが分割される必要があるファイルのための要求を受けるとき、それは、ファイルをセグメントが送られるアクセス回線の速度に基づくサイズを持つセグメントに分割する。セグメントは、それらの対応する回線を通して送られるので、要求元スーパー・モジュールが回線線の速度によってセグメント転送を調整することができる。この技術は、回線が遅いので転送の完了を待つことをなくす。データが大きなクーリエ・パッケージに纏め直されるとき、これは特に貴重である。
【００９０】
「モニター分解能」
本発明の一実施態様において、スーパー・ユーザー５４０又はスーパー・アプライアンス５３２がスーパーＣＯサーバー５３４にPCモニターの特性（例えば、サポートされるピクセル／インチ数、最大解像度、最大色数）を知らせる。例えば、モニターのピクセル／インチがグラフィックスのピクセル／インチより少ない場合、画像のグラフィックスのピクセル／インチはスーパーＣＯサーバー５３４からスーパー・ユーザー５４０又はスーパー・アプライアンス５３２へ送られる前に減少する。会社がまた、サポートすることを望むモニター特性を選択することができ、スーパーＣＯサーバー５３４はウェブ・ページの全てのグラフィックス要素がこれらのパラメータに合うように調整する。
【００９１】
「プロキシ・スタック」
プロキシサーバーは、例えば、ユーザのＰＣ（例えばブラウザ）上のアプリケーションとインターネット上のサーバーの間に置かれる中間コンピュータである。
プロキシサーバーは、サーバーへの全ての要求を遮断して要求そのものを果たそうとする。それができない場合は、要求は、サーバーに転送される。例えば、ユーザが彼のブラウザを通じてウェブサイトを訪問するとき、ブラウザは割り当てられたプロキシサーバーに要求を送る。プロキシサーバーが最近そのサイト（もう一人のユーザがすでにそこに行ったので）を訪問した場合、プロキシサーバーは、きっと同じウェブ・ページをそれのハードドラブに記憶したであろう。それで、これらのページをウェブサーバーからダウンロードすることを必要とする代わりに、ユーザのＰＣは、これらのページをプロキシサーバーからダウンロードし、したがってアクセス時間を速める。いくつかの主要オンラインサービス、例えばコンピューサーブ及びアメリカ・オンライン（ＡＯＬ）は、プロキシサーバーのアレーを使用する。
【００９２】
本発明の更なる実施態様において、二つ以上のプロキシサーバーを有するプロキシスタックが用いられている。各スーパー・ユーザーは二つ以上の一次プロキシサーバー（例えばスーパー・アプライアンス）を有し、それを優先順で用いるか又は各ユーザ要求を切り替えできる。そして、各スーパー・アプライアンスは、プロキシサーバー（例えばスーパーＣＯサーバー）として二つ以上を有する。ユーザーは、インターネットに達する前に、少なくとも２台のプロキシサーバー（すなわちスーパーＣＯプロキシサーバーに接続されたスーパー・アプライアンス・プロキシサーバー）を通過する。
【００９３】
図１２は、本発明の実施態様のプロキシ・スタックを用いる例である。三つのスーパー・ユーザー１１１０、１１１２及び１１１４がスーパー・アプライアンス１１２０と１１２２でプロキシサーバーへスイッチ１１１６によって接続されている。スーパー・アプライアンス１１２０は、更にスイッチ１１２４を経てスーパーＣＯサーバー１１３０と１１３２の上の二つの他のプロキシサーバーに接続されている。そして、スーパー・アプライアンス１１２２はスイッチ１１２６を経てスーパーＣＯサーバー１１３０と１１３２上のプロキシサーバーに接続されている。スーパー・ユーザー１１１０は、スーパー・アプライアンス１１２２のプロキシがスタックとなって続くスーパー・アプライアンス１１２０のプロキシを有する第１のプロキシ・スタックを備えている。スーパー・ユーザー１１１０は、スーパー・アプライアンス１１２２のプロキシがスタックとなって続くスーパー・アプライアンス１１２０のプロキシを有する第２のプロキシ・スタックを備えている。スーパー・ユーザー１１１０は、スーパー・アプライアンス１１２２のプロキシがスタックとなって続くスーパー・アプライアンス１１２０のプロキシを有する第３のプロキシ・スタックを備えている。スーパー・ユーザー１１２０は、スーパーＣＯサーバー１１３０のプロキシがスタックとなって続くスーパーＣＯサーバー１１３２のプロキシを有する第４のプロキシ・スタックを備えている。スーパー・ユーザー１１２０は、スーパーＣＯサーバー１１３０のプロキシがスタックとなって続くスーパーＣＯサーバー１１３２のプロキシを有する第５のプロキシ・スタックを備えている。
【００９４】
キャッシュ・サーバーが一般にプロキシサーバーなので、スーパー・キャッシュを有する各スーパー・モジュールはプロキシサーバーとして役立つことができる。それゆえ、プロキシサーバーの例は、スーパー・アプライアンス又はスーパーＣＯサーバーに限らないで、スーパーＣＯコンセントレータ及びスーパー・ホストを含む。
【００９５】
一実施例には、スタック・マネージャがネットワークにあるスーパー・モジュールの各々のプロキシ・スタックを管理するプロキシ・レゾルバという中央プロキシ・スタックがある。集中プロキシ・レゾルバの場所で、プロキシ・スタック・リストを変更することによって、ネットワーク内のスーパー・モジュールの各々のためのプロキシ・スタックは、変更されることがある。実施の好適な方法は、スーパー・モジュールが用いているはずであるプロキシ・スタックを検索するために、最初の又は特定の間隔にプロキシ・レゾルバに接続するアルテラ（Ａｒｔｅｒａ）システムのためにある。これによって、スーパー・モジュールのためのプロキシ鮮明度が中央制御装置から更新されることができる。
【００９６】
上記の図１２の例において、各スーパー・ユーザーは二つ以上の一次プロキシサーバー（例えばスーパー・アプライアンス）を有し、それを優先順に用いるか又は各ユーザ要求を切り替えできる。サーバーが時間切れの場合、スタック内の次のプロキシサーバーが用いられるが、これはフォールト・トレラントである（ノンストップの）システムを作る。要求が行われるたびに、スタック上の次のプロキシサーバーが用いられる場合、ロード・バランシングを達成できる。スーパー・アプライアンスはまた、用いるべき二つ以上のスーパーＣＯサーバーのプロキシ・スタックを持つことができる。このアプライアンス・スタックは、優先順に用いられるように構成又は要求ごとに切り替えできる。優先順に用いられて、次のプロキシがバックアップとして用いられる場合、優先プロキシは、タイムアウトのはずである。交替に用いられる場合、それはプロキシ間のネットワークのロードを釣り合わせる。いつでも、プロキシ・レゾルバは、アルテラ・アプライアンス上に新しいプロキシリストをロードでき、それによってネットワークの処理性質を変える。
【００９７】
「ＶＰＮ」
仮想プライベート・ネットワーク（ＶＰＮ）は、例えばインターネットのような公衆ネットワーク資源を用いる例えば企業内イントラネットのような私設ネットワークである。ＶＰＮの二つの典型的形式は、サイト・ツー・サイト・アクセス及び遠隔アクセスである。各形式はＶＰＮゲートウェーを利用し、それは信頼できる私設ネットワークと信頼できない公衆ネットワークの間のゲートキーパー（一般に専門ハードウェア）である。ゲートキーパーは、信頼できる私設ネットワークにアクセスする者の「ゲスト」リストを有する。パケットがリストに載っていない場合、アクセスがない。
【００９８】
図１３は、従来のサイト・ツー・サイトＶＰＮ１４４０及び従来の遠隔ＶＰＮ  １４４６の例を示す。サイト・ツー・サイトＶＰＮ１４４０の場合は、ＰＣ１４１２、ＰＣ１４１４及びＬＡＮサーバー１４１６を有する第１のイントラネットがＶＰＮゲートウェー１４２０によってインターネット１５３０へデジタル接続装置１５２６及びＰｏＰ１５１４を介して接続される。インターネット１５３０から、ＶＰＮ１４４０は、ＰＣ１４３４、ＰＣ１４３６及びＬＡＮサーバー１４３２を有する第２のイントラネットに、そして、ＰｏＰ１５４０、モデム１５４２及びＶＰＮゲートウェー１４３０を経て接続される。従って、第１のイントラネットと第２のイントラネットは、インターネットを経てつなぎ合わされ、複合イントラネットを形成する。遠隔ＶＰＮ１４４６の場合は、遠隔ＰＣにいるユーザがモデム１５３４を経てＰｏＰ１５３２にダイヤルインして、インターネット１５３０、ＰｏＰ１５４０、モデム１５４２及びＶＰＮゲートウェー１４３０を経てＬＡＮサーバー１４３２にアクセスする。ＰＣは、ＶＰＮクライアント・ソフトウェアを有し、動的ＤＮＳ／ＵＲＬサービスによって供給される固定ＩＰアドレス又は動的ＩＰアドレスを持っていてもよく、それはＰＣによって用いられるＵＲＬ（ｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ）を与える。動的ＤＮＳ／ＵＲＬサービスがＶＰＮゲートウェー１４３０にＰＣのＩＰアドレスを知らせるので、ＰＣがＬＡＮサーバー１４３２にアクセスする。
【００９９】
図１３に図示されている従来のＶＰＮには、いくつかの限界がある。第１に、特殊なゲートウェー・ハードウェアが一般に必要である。そして、第２には、ユーザーが多数のＶＰＮへアクセスできない。本発明の実施態様がこれらの問題を克服する。どのスーパー・モジュールサイトのグループ化も一つ以上のＶＰＮを形成することができる。どのスーパー・モジュールがどの他のスーパー・モジュールにアクセスできるか、すなわち、誰が誰にアクセスすることができるか、の許可テーブルを有する中央サイト１５３８（図１４）がある。
【０１００】
図１４は、本発明の実施態様の二つの仮想私設ネットワーク（ＶＰＮ）の例を示す。スーパー・ユーザー１５１０がＶＰＮ１５５２及びＶＰＮ１５５０に属している。スーパー・ユーザー１５１０は、遠隔ＶＰＮ１５５０を経てスーパー・アプライアンス１５２４に遠隔接続されており、ここでスーパー・アプライアンス１５２４は、ＬＡＮサーバー１４１６で実行するソフトウェア・ゲートウェーである。スーパー・アプライアンス１５２４及びスーパー・アプライアンス１５４４が立ち上がると、それらは中央サイト１５３８にある許可テーブルにそれらのＩＰアドレスを送る。スーパー・ユーザー１５１０は、モデム１５１２を経てＰｏＰ１５１４にダイヤルインし、ＰｏＰは、ＩＰアドレスをスーパー・ユーザーに割り当てる。次に、中央サイトはスーパー・ユーザー１５１０によってログインされ、スーパー・ユーザー１５１０はそのＩＰアドレスを中央サイトに報告する。スーパー・ユーザー１５１０がスーパー・アプライアンス１５２４を経てＰＣ１４１２にアクセスしたいとき、許可テーブルを確かめる。スーパー・ユーザー１５１０にはアクセス権があるので、スーパー・ユーザー１５１０ＩＰアドレスとスーパー・アプライアンス１５２４ＩＰアドレスの間のトンネル（すなわち，ＶＰＮ１５５０）が確立される。スーパー・ユーザー１５１０は、また、中央サイト１５３８にある許可テーブルによって指示されるようにスーパー・ユーザー１５３６とスーパー・アプライアンス１５４４にアクセスするので、ＶＰＮ  １５５２が確立される。したがって、一つのスーパー・ユーザーが多数のＶＰＮ及び他のスーパー・ユーザーにアクセスできる。
【０１０１】
別の実施例において、スーパー・ユーザー１５３６はまた、遠隔ユーザであってもよく、ＶＰＮ１５５２がつくられるとき、ログオンされてはいけない。スーパー・ユーザー１５３６がログインするとき、それはＩＰアドレスを割り当てられて、許可テーブルに従って３ウェーＶＰＮ（スーパー・ユーザー１５３６、スーパー・ユーザー  １５１０及びスーパー・アプライアンス１５４４を含む）が確立される。
【０１０２】
スーパー・トランスポート・システムに関して上述した最適化は、スーパー・アプライアンス・モジュールがＶＰＮの両方の側面上に設置される限り、本発明の実施態様のどのＶＰＮにわたっても適用できる。例えば、二つのスーパー・モジュールは、ＶＰＮを用いて接続でき、例えば、全てのデータ転送は、それらがファイル、イーメール又はウェブ・ページであるかどうかに拘わらず、上述のようにファイル転送マルチプライア及びチーム化を用いる。具体的には、例えば、２のスーパー・ユーザー１５１０からＰｏＰ１５１４へのモデム回線が一つではなく二つあれば、スーパー・ユーザー１５１０からＶＰＮ  １５５０を経てＰｏＰ１５１４へのデータ転送はかなり大きくなるだろう。それはＰｏＰ  １５１４からスーパー・アプライアンス１５２４へ、スーパー・アプライアンス１５２４に対する、高速デジタル接続があるからである。
【産業上の利用可能性】
【０１０３】
本発明の特定の実施態様を説明したが、種々の改造、変更、代替構造及び等価物はまた、本発明の範囲内に含まれる。記載した発明は、ある特定のデータ処理環境内の動作に制限されないで、複数のデータ処理環境内で自由に作動できる。さらに、本発明を特定のシリーズの取引及びステップを用いて説明したが、本発明の範囲が記載されたシリーズの取引及びステップに限られないことは当業者にとって明らかなはずである。
【０１０４】
更に、本発明をハードウェア及びソフトウェアの特定の組合せを用いて説明したが、ハードウェア及びソフトウェアの他の組合せもまた、本発明の範囲内であると認められるべきである。本発明は、ハードウェアだけで又はソフトウェアだけで又はそれらの組合せを用いて実現されてもよい。
【０１０５】
明細書及び図面は、したがって、制限的な意味ではなく例示的意味で考えられるべきである。しかし、追加、控除、削除及び他の改変と変更が各請求項で説明した本発明のより広い精神と範囲から逸脱することなくなされうることは、明白である。
【図面の簡単な説明】
【０１０６】
【図１】従来技術のインターネットへのユーザ接続を示しているブロック図である。
【図２】図１を簡略して拡大したブロック図である。
【図３】本発明の一実施態様のブラウザとウェブサーバーの間の通信経路のブロック図である。
【図４】本発明の一実施態様の図２の従来のシステムに挿入されるスーパー・モジュールのブロック図である。
【図５】本発明の一実施態様のスーパー・キャッシュの構造の例を示す。
【図６】本発明の一実施例のスーパー・キャッシュのシステムのためのリフレッシュプロセスを示している簡略化例である。
【図７】本発明の一実施態様のスーパー・キャッシュの自動リフレッシュ・プロセスのフローチャートである。
【図８】受信スーパーモジュールのキャッシュにおける複数ユーザ要求からの記憶データ及びリクエスタIPアドレスの例である。
【図９】本発明の一実施態様のインターネットを通じてのユーザとウェブサーバーの間のグラフィックス及びテキスト又は動的データのデータフローのー例を示す。
【図１０】本発明の一実施態様の接続チーム化の一例を示す。
【図１１】本発明の一実施態様のファイル転送乗数による時間節約の例を与える。
【図１２】本発明の一実施態様のプロキシスタックを用いる例である。
【図１３】従来のサイト・ツー・サイト VPN及び従来の遠隔VPNの例を示す。
【図１４】本発明の実施態様の二つの仮想私設ネットワーク（VPN）の例を示す。
【図１】
2004535631.tif 000003
【図２】
2004535631.tif 000004
【図３】
2004535631.tif 000005
【図４】
2004535631.tif 000006
【図５】
2004535631.tif 000007
【図６】
2004535631.tif 000008
【図７】
2004535631.tif 000009
【図８】
2004535631.tif 000010
【図９】
2004535631.tif 000011
【図１０】
2004535631.tif 000012
【図１１】
2004535631.tif 000013
【図１２】
2004535631.tif 000014
【図１３】
2004535631.tif 000015
【図１４】
2004535631.tif 000016
【国際公開パンフレット】
2004535631.tif 000017
2004535631.tif 000018
2004535631.tif 000019
2004535631.tif 000020
2004535631.tif 000021
2004535631.tif 000022
2004535631.tif 000023
2004535631.tif 000024
2004535631.tif 000025
2004535631.tif 000026
2004535631.tif 000027
2004535631.tif 000028
2004535631.tif 000029
2004535631.tif 000030
2004535631.tif 000031
2004535631.tif 000032
2004535631.tif 000033
2004535631.tif 000034
2004535631.tif 000035
2004535631.tif 000036
2004535631.tif 000037
2004535631.tif 000038
2004535631.tif 000039
2004535631.tif 000040
2004535631.tif 000041
2004535631.tif 000042
2004535631.tif 000043
2004535631.tif 000044
2004535631.tif 000045
2004535631.tif 000046
2004535631.tif 000047
2004535631.tif 000048
2004535631.tif 000049
2004535631.tif 000050
2004535631.tif 000051
2004535631.tif 000052
2004535631.tif 000053
2004535631.tif 000054
2004535631.tif 000055
2004535631.tif 000056
2004535631.tif 000057
2004535631.tif 000058
2004535631.tif 000059
2004535631.tif 000060
2004535631.tif 000061
2004535631.tif 000062
2004535631.tif 000063
2004535631.tif 000064
2004535631.tif 000065
2004535631.tif 000066
2004535631.tif 000067
2004535631.tif 000068
2004535631.tif 000069
2004535631.tif 000070
【国際公開パンフレット（コレクトバージョン）】
2004535631.tif 000071
2004535631.tif 000072
【国際調査報告】
2004535631.tif 000073