(57)【要約】【課題】実行可能ファイルのような大きいファイルのダウンロードに関して、インターネット・ダウンロード効率を高めかつダウンロード操作中のバンド幅を管理する技術が必要とされている。【解決手段】ダウンロード対象のファイルの一部分を含む複数のデータ・セグメントが１組の画像ファイルにカプセル化される。１組の画像ファイルへの参照がウェブ・ページ定義に含まれる。ウェブ・ページ定義に関連したウェブ・ページの描画動作の間、ダウンロード対象のファイルのセグメントをカプセル化した画像ファイルがブラウザのキャッシュにダウンロードされる。画像ファイルから取り出したセグメント・データが組み立てられ、ダウンロード対象ファイルが再現される。対象のファイルが実行可能ファイルである場合、インストール操作が行われる。【選択図】　図１
2004005655.tif 000002
【特許請求の範囲】
【請求項１】
ダウンロード対象ファイルの一部分を含む１組のセグメントを１組の画像ファイルにカプセル化する段階と、
前記１組の画像ファイル内の画像ファイルのサブセットを、インターネットに接続されたコンピュータ・システムに対応するキャッシュにダウンロードする段階と、
前記サブセットの画像ファイル内にカプセル化されたセグメント・データを取り出して、前記ダウンロード対象ファイルの一部分を再現する段階とを含む方法。
【請求項２】
画像ファイルのダウンロード操作を管理するために、前記１組の画像ファイルに対応する参照とスクリプトに対応する参照のグループから１つの参照をウェブ・ページ定義に組み込む段階をさらに含む請求項１に記載の方法。
【請求項３】
前記１組の画像ファイルに対応する参照をウェブ・ページ定義に組み込む段階をさらに含み、少なくとも１つの画像ファイルを示す前記参照が、ウェブ・ページの描画操作中に、最低限に明瞭な形と不明瞭な形のグループのうちの１つの形で表示される請求項１に記載の方法。
【請求項４】
前記１組の画像ファイルに対応する参照をウェブ・ページ定義に組み込む段階をさらに含み、少なくとも１つの画像ファイルを示す前記参照が、ウェブ・ページの描画操作中に表示されないままである請求項１に記載の方法。
【請求項５】
前記ダウンロードする段階が、
次にダウンロードする画像ファイルを識別する段階と、
前記識別した画像ファイルを前記コンピュータ・システムに転送する段階と、
前記識別した画像ファイルがダウンロードされたことを示す情報を更新する段階とを含む請求項１に記載の方法。
【請求項６】
ダウンロードする段階と抽出する段階が、ダウンロード対象ファイルがコンピュータ・システム上に再現されるまで繰り返し実行される請求項１に記載の方法。
【請求項７】
実行可能ファイル、デバイス・ドライバおよびウィルス定義ファイルのグループのうちの１つの一部分を含む１組のセグメントを、１組の画像ファイルにカプセル化する段階と、
前記１組の画像ファイルを、インターネットに接続されたコンピュータ・システムに対応するキャッシュ内にダウンロードする段階と、
前記１組の画像ファイル内にカプセル化されたセグメント・データを抽出して、前記コンピュータ・システム上に前記ダウンロード対象ファイルを再現する段階とを含む方法。
【請求項８】
インターネットに接続されたブラウザが利用可能なコンピュータ・システム上で実行される方法であって、
サーバからウェブ・ページ定義を取り出す段階と、
ウェブ・ページ描画操作を開始する段階と、
前記ウェブ・ページ定義によって参照される１組の画像ファイルを取り出す段階と、
前記１組の画像ファイルをキャッシュ内に受け取る段階と、
前記１組の画像ファイルから、ダウンロード対象ファイルに対応する１組のセグメントを抽出する段階と、
前記抽出された１組のセグメントに従ってインストール操作とコンピュータ・システム更新操作のグループから１つの操作を実行する段階とを含み、前記ダウンロード対象ファイルが、表示用の画像データ以外のものを含む方法。
【請求項９】
サーバからのウェブ・ページ定義を取り出す段階と、
ウェブ・ページ描画操作を開始する段階と、
前記ウェブ・ページ定義によって参照される１組の画像ファイルを取り出す段階と、
前記１組の画像ファイルをキャッシュ内に受け取る段階と、
前記１組の画像ファイルから、ダウンロード対象ファイルに対応する１組のセグメントを抽出する段階とをコンピュータ・システムに実行させることができる命令を記憶し、
ダウンロード対象ファイルが、表示用の画像データ以外のものを含むコンピュータ可読媒体。
【請求項１０】
前記抽出した１組のセグメントに従ってインストール操作とコンピュータ・システム更新操作のグループのうちの１つの操作を実行するための命令をさらに記憶する請求項９に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に、インターネットのバンド幅を管理する技術に関する。より詳細には、本発明は、ブラウザがウェブ・ページを描画するときに、１つのファイルを１つまたは複数の画像ファイルに構成し、画像ファイルをキャッシュに転送する様々なシステムおよび方法を対象とする。
【０００２】
【従来の技術】
インターネットを利用する情報のダウンロードは、容易さと便利さにおける可能性を持っている。
【０００３】
【発明が解決しようとする課題】
しかしながら、大きなファイルのダウンロードは、高速なインターネット接続がない状態では、かなり時間がかかることがある。特に、従来のモデムを利用したインターネット接続によるアプリケーションのダウンロード、アプリケーションのアップグレード、アプリケーションの更新は、かなり時間がかかり、場合によっては約１時間もかかることもある。この時間の間、ダウンロードが、そのようなインターネット接続によって行うことができる実質的に唯一の作業であることがある。さらに、インターネット・ユーザが、接続時間に関して時間または類似の基準で課金される場合、ダウンロードは、コスト的に望ましくなくなることがある。したがって、特に実行可能ファイルのような大きいファイルのダウンロードに関して、インターネット・ダウンロード効率を高めかつダウンロード操作中のバンド幅を管理する技術が必要とされている。
【０００４】
【課題を解決するための手段】
ダウンロード対象のファイルの一部分を含む複数のデータ・セグメントが１組の画像ファイルにカプセル化される。１組の画像ファイルへの参照がウェブ・ページ定義に含まれる。ウェブ・ページ定義に関連したウェブ・ページの描画動作の間、ダウンロード対象のファイルのセグメントをカプセル化した画像ファイルがブラウザのキャッシュにダウンロードされる。画像ファイルから取り出したセグメント・データが組み立てられ、ダウンロード対象ファイルが再現される。対象のファイルが実行可能ファイルである場合、インストール操作が行われる。
【０００５】
【発明の実施の形態】
以下の説明は、当業者が本発明を実行しかつ使用できるようにするために提示される。本明細書に示した一般的な原理は、併記の特許請求の範囲に定義したような本発明の趣旨および範囲から逸脱することなく、以下に詳細に説明するもの以外の実施形態および用途にも適用することができる。本発明は、示した実施形態に限定されず、本明細書に開示した原理および特徴と一致する最も広い範囲が与えられるべきである。
【０００６】
本発明の実施形態は、インターネットによって情報をダウンロードする効率を高めるためのシステムおよび方法を含む。そのような情報は、任意のタイプのものでよく、また例えば実行可能ファイル、デバイス・ドライバ・ファイル、ウィルス定義ファイル、宣伝用資料、クーポン、広告および／またはその他のタイプの情報を含むことができる。本発明の１つの実施形態は、ダウンロードするために選択したファイルのセグメントを、例えばＧＩＦ（Ｇｒａｐｈｉｃｓ　Ｉｎｔｅｒｃｈａｎｇｅ　Ｆｏｒｍａｔ）ファイルやＰＮＧ（Ｐｏｒｔａｂｌｅ　Ｎｅｔｗｏｒｋ　Ｇｒａｐｈｉｃｓ）ファイルなどの１組の小さいかまたは概略小さい図形または画像ファイルにカプセル化することを含む。
【０００７】
１つの実施形態において、セグメントをカプセル化する画像またはイメージ・ファイルは、そのセグメント自体以上の追加または他のペイロード情報を含まないことがある。もう１つの実施形態において、セグメントをカプセル化する図形または画像ファイルは、本質的にダウンロードするように選択されたセグメントおよび／またはファイルの一部分でもなくまたそのようなセグメントおよび／またはファイルから構成もされない画像データなどの追加またはその他の情報を含むことができる。この実施形態は、ダウンロード対象ファイルに対応するセグメントを、電子透かしと適合する方式で、画像ファイル内の画像に符号化することを含む。
【０００８】
本発明の実施形態は、さらに、前述の画像ファイルへの参照を、ウェブ・ページを定義するハイパーテキスト・マークアップ言語（ＨＴＭＬ）コードに追加するかまたは組み込むことができる。インターネット・ユーザのブラウザが、そのようなウェブ・ページを描画するとき、前述の画像ファイルの１つまたは複数が、ブラウザ・キャッシュおよび／またはプロキシ・サーバ・キャッシュに転送されるかまたはダウンロードされることがある。本発明の実施形態は、次に、ファイル・セグメントがカプセル化された各画像ファイルを受け取った後で、ダウンロード対象ファイルを再現しかつ／または組み立てなおす。インターネット・ユーザが、ブラウジングまたはウェブ・サーフィンしているとき、本発明の実施形態は、空いているブラウジング期間にダウンロード操作を実行し、それにより利用可能なバンド幅をインテリジェントに管理する。
【０００９】
図１は、本発明の実施形態によるインターネット・ダウンロード用のシステム１００のブロック図である。１つの実施形態において、システム１００は、ファイル・セグメント化システム２００、セグメント配布サーバ３００、および少なくとも１つのセグメント統合システム４００を含み、これらはそれぞれ、インターネット１１０に接続されている。様々な実施形態は、複数のファイル・セグメント化システム２００および／または複数のセグメント配布サーバ３００を含む。任意の所定のファイル・セグメント化システム２００および／または任意の所定のセグメント統合システム４００は、インターネット１１０に接続されたローカルエリア・ネットワーク（ＬＡＮ）１２０、広域ネットワーク（図示せず）、および／または１つまたは複数の他のネットワークの状況内に存在することができる。プロキシ・サーバ１２２は、当業者によって理解される形でＬＡＮ１２０やその他のネットワークの状況内に存在することができる。さらに、１つまたは複数のファイル・セグメント化システム２００が、インターネット１１０への接続またはインターネット１１０による通信を容易にするインターネット・サービス・プロバイダ（ＩＳＰ）１３０に接続されることがある。
【００１０】
ファイル・セグメント化システム２００は、本発明に従って、ａ）ダウンロード対象ファイル２４０（図２）のセグメントを１つまたは複数の画像ファイルにカプセル化し、ｂ）その画像ファイルと関連したデータベース情報とウェブ・ページ定義を更新し、ｃ）データベース情報とウェブ・ページ定義をセグメント配布サーバ３００に転送またはアップロードして、ダウンロード対象ファイル２４０のセグメントを含む図形ファイルをウェブ・ブラウザのキャッシュに次に転送することを容易にできるコンピュータ・システムを構成する。
【００１１】
図２は、本発明の実施形態によるファイル・セグメント化システム２００のブロック図である。１つの実施形態において、ファイル・セグメント化システム２００は、処理装置２０２、データ記憶装置２０４、キーボードおよびマウス２０８に結合された入出力装置２０６、表示装置２１０、ネットワーク・インタフェース装置またはモデム２１２、およびメモリ２２０を含み、それぞれが共通バス２９０に接続されたコンピュータ・システムを含む。ネットワーク・インタフェース装置２７２は、さらに、（図１の）インターネット１１０に接続されている。
【００１２】
メモリ２２０は、オペレーティング・システム２２２、カプセル化データベース２２４、セグメント化モジュール２３０、および１つまたは複数のダウンロード対象ファイル２４０を含む。カプセル化データベース２２４の１つまたは複数の部分および／または任意の所定のダウンロード対象ファイル２４０は、データ記憶装置２０４上にある。オペレーティング・システム２２２は、ファイル・セグメント化システム２００と関連付けられたハードウェアおよび／またはソフトウェア・リソースへのアクセスを管理するプログラム命令を含む。セグメント化モジュール２３０は、図５と関連して本明細書で詳しく説明するように、本発明によるファイル・セグメント化操作を実行するプログラム命令を含む。
【００１３】
セグメント配布サーバ３００（図１）は、ダウンロード対象ファイル２４０（図２の）のセグメントを含む画像ファイルを配布するウェブ・サーバ・システムを含む。セグメント配布サーバ３００は、クライアントの要求に応じて、そのような画像ファイルを配布する。セグメント配布サーバ３００は、さらに、当業者によって容易に理解される形で、他のタイプのウェブ・コンテンツおよび／またはオブジェクトを配布する。
【００１４】
図３は、本発明の実施形態によるセグメント配布サーバ３００のブロック図である。１つの実施形態において、セグメント配布サーバ３００は、操作処理装置３０２、データ記憶装置３０４、キーボードおよびマウス３０８に結合された入出力装置３０６、表示装置３１０、ネットワーク・インタフェース装置３１２、およびメモリ３２０とを有し、それぞれが共通バス３９０に結合されたサーバまたはコンピュータ・システムを含む。さらに、ネットワーク・インタフェース装置３７２は、インターネット１１０（図１）に接続されている。
【００１５】
メモリ３２０は、オペレーティング・システム３２２、セグメント配布データベース３２４、およびウェブ・サーバ３３０を含む。１つの実施形態において、メモリ３２０は、さらに、セグメント転送モジュール３４０を含む。セグメント配布データベース３２４の１つまたは複数の部分は、データ記憶装置３０４上にある。ウェブ・サーバ３３０は、インターネットを介してクライアントから要求を受け取り、それに応答する従来のウェブ・サーバ・ソフトウェアを含む。セグメント転送モジュール３４０は、ダウンロード対象ファイル２４０（図２）のセグメントを含む１つまたは複数の画像ファイルを選択的に転送するプログラム言語および／またはスクリプト言語のステートメントまたは命令を含む。セグメント転送モジュール３４０は、例えば、共通ゲートウェイ・インタフェース（ＣＧＩ）スクリプトを使って実現することができる。ウェブ・サーバ３３０とセグメント転送モジュール３４０が、ダウンロード対象ファイル２４０の一部分を隠蔽（ｃａｍｏｕｆｌａｇｅ）またはカプセル化する画像ファイルを転送する方法は、図７と関連して後で詳しく説明する。
【００１６】
セグメント統合システム４００（図１）は、ウェブ・コンテンツを要求しかつ／または取り出すことができるブラウザ利用可能なコンピュータおよび／またはインターネット装置を含むことができる。セグメント統合システム４００は、画像ファイルを含む最近受け取ったウェブ・コンテンツをキャッシュに記憶し、そのような画像ファイルが、ダウンロード対象ファイル２４０一部分またはセグメントをカプセル化することができる。
【００１７】
図４は、本発明の実施形態によるセグメント統合システム４００のブロック図である。１つの実施形態において、セグメント統合システム４００は、操作処理装置４０２、データ記憶装置４０４、キーボードおよびマウス４０８に結合された入出力装置４０６、表示装置４１０、ネットワーク・インタフェース装置またはモデム４７２、およびメモリ４２０とを有し、それぞれが共通バス４９０に結合されることがあるブラウザ利用可能なコンピュータを含む。ネットワーク・インタフェース装置４１２は、さらに、インターネット１１０に接続されている。
【００１８】
メモリ４２０は、オペレーティング・システム４２２、セグメント・アセンブリ・データベース４２４、ウェブ・ブラウザ４３０、およびブラウザ・キャッシュ４３４を含む。セグメント・アセンブリ・データベース４２４および／またはブラウザ・キャッシュ４３４の１つまたは複数の部分は、当業者によって理解される形でデータ記憶装置４０４上にある。メモリ４２０は、また、セグメント配布サーバ３００が、ウェブ・ブラウザ要求に応じてウェブ・ページ４３２をセグメント統合システム４００に送付または転送した後で、本発明によるダウンロード対象ファイル２４０のセグメントを隠蔽またはカプセル化する１組の画像ファイルを参照するウェブ・ページ４３２を含む。
【００１９】
オペレーティング・システム４２２は、当業者によって理解される方式でセグメント統合システム・ハードウェアおよび／またはソフトウェア・リソースへのアクセスを管理するプログラム命令を含む。ウェブ・ブラウザ４３０は、当業者によって容易に理解される形でウェブ・サーフィン操作を容易にするＭｉｃｒｏｓｏｆｔ　Ｉｎｔｅｒｎｅｔ　Ｅｘｐｌｏｒｅｒ　（Ｍｉｃｒｏｓｏｆｔ　Ｃｏｒｐｏｒａｔｉｏｎ，　Ｒｅｄｍｏｎｄ，　ＷＡ）などの従来のウェブ・ブラウザを含む。ウェブ・ブラウザ４３０は、ウェブ・サーフィン操作中にセグメント配布サーバ３００からウェブ・ページ４３２を要求し、ウェブ・ページ４３２は、ＨＴＭＬおよび／またはＪａｖａｓｃｒｉｐｔステートメントを含むことができる。
【００２０】
ウェブ・ページ４３２は、ダウンロード対象ファイル２４０のセグメントを隠蔽またはカプセル化する１つまたは複数の画像ファイルに対するステートメントまたは参照を含むことができる。１つの実施形態において、ファイル・セグメントをカプセル化する画像ファイルは、取り出された後、表示されないままである。追加または代替として、ファイル・セグメントをカプセル化する画像ファイルは、取り出された後、不明瞭な形または最低限明瞭な形で表示されてもよい。以下に、画像ファイルをそのような方式で取り出す例示的なタイプのウェブ・ページ照会を提供する。
【００２１】
ブラウザ・キャッシュへの画像ファイルの取り込みを開始し、画像ファイルを隠蔽した形、不明瞭な形、またはほぼ不明瞭な形で表示することができるＨＴＭＬステートメントの例は、以下の通りである。
【００２２】
＜ｉｍｇ　ｓｒｃ＝“ｓｅｇｍｅｎｔ１．ｇｉｆ”　ｗｉｄｔｈ＝１，　ｈｅｉｇｈｔ＝１＞
【００２３】
上のＨＴＭＬステートメントによれば、「ｓｅｇｍｅｎｔ１　．ｇｉｆ」が、取り出され、ブラウザ・キャッシュ４３４に記憶され、１画素×１画素のサイズで表示される。そのようなＨＴＭＬステートメントは、例えば、ウェブ・ページ４３２上に参照付けられている最後またはほぼ最後のオブジェクトであり、その結果、ウェブ・ページ上で参照付けられた画像ファイルは、ユーザが見たり気づいたりしない領域に描画される。
【００２４】
次に画像ファイルを表示することなくブラウザ・キャッシュに画像ファイルを取り込み始めることができるＨＴＭＬステートメントの例は、次のとおりである。
【００２５】
＜ｉｍｇ　ｓｒｃ＝“ｓｅｇｍｅｎｔ１．ｇｉｆ”　ｗｉｄｔｈ＝０，　ｈｅｉｇｈｔ＝０＞
【００２６】
このＨＴＭＬステートメントは、表示された高さと幅がゼロになるように定義されたＧＩＦファイルを効果的に参照する。しかしながら、画像ファイルを従来通りに表示できる方式で参照するＨＴＭＬステートメントの方が強力な場合がある。
【００２７】
１つの実施形態において、ファイル・セグメントをカプセル化する１つまたは複数の図形または画像ファイルが、ウェブ・ページ４３２に通常の形で表示される。そのような実施形態において、ダウンロード対象ファイルのセグメントを含むかまたはそれに対応する少量またはほぼ少量のデータは、電子透かしと類似の形または実質的に類似の形で、表示用の画像に符号化される。セグメント・データは、ルミナシティ・チャネル（ｌｕｍｉｎｏｓｉｔｙ　ｃｈａｎｎｅｌ）を使用して、そのような画像（または、等価には画像を含む画像ファイル）から取り出される。したがって、表示用の画像データを含む画像ファイルならびにセグメント・データを、ユーザがそのセグメント・データに気づかないかまたはほとんど気づかないように、表示することができる。
【００２８】
本発明によれば、ダウンロード対象ファイル２４０は、大きいサイズのものでもよく、そのようなファイルの一部分またはセグメントをカプセル化する所定の画像ファイルは、例えば約５０キロバイト以下である。本発明は、様々な実施形態において、例えば３０、４０および／または６０キロバイトの他のカプセル化画像ファイル・サイズに対応することができる。
【００２９】
以上の事柄を考慮して、ダウンロード対象ファイル２４０を、複数の画像ファイルにセグメント化しカプセル化することができる。１つの実施形態において、本発明による複数の画像ファイルの取り出しは、ＣＧＩスクリプトによって容易に行うことができる。ダウンロード対象ファイル２４０をカプセル化する画像ファイルを送付するＣＧＩスクリプトを参照するＨＴＭＬステートメントは、次の通りである。
【００３０】
＜ｉｍｇ　ｓｒｃ＝“ｔｒａｎｓｆｅｒ．ｃｇｉ？ｃｍｄ＝ｇｉｆ”　ｂｏｒｄｅｒ＝“０”　ｗｉｄｔｈ＝１，　ｈｅｉｇｈｔ＝１＞
【００３１】
セグメント配布サーバ３００内で、セグメント転送モジュール３４０を構成するかまたはそれに対応するＣＧＩスクリプトは、前述のＨＴＭＬステートメントに応じて、１つまたは複数の画像ファイルを適宜、セグメント統合システム４００内のブラウザ・キャッシュ４３４に選択的に送付することができる。
【００３２】
他のタイプのステートメントで、ダウンロード対象ファイル２４０をブラウザ・キャッシュ４３４にカプセル化する１つまたは複数の画像ファイルの転送を実現することができる。そのようなステートメントは、例えば、以下のようなＪａｖａｓｃｒｉｐｔステートメントを含むことができる。
【００３３】
ｉｍｇ１＝ｎｅｗ　ｉｍａｇｅ（）；
ｉｍｇ１．ｓｒｃ＝“ｓｅｇｍｅｎｔ１．ｇｉｆ”
ｉｍｇ２＝ｎｅｗ　ｉｍａｇｅ（）；
ｉｍｇ２．ｓｒｃ＝“ｓｅｇｍｅｎｔ２．ｇｉｆ”
【００３４】
前述のＪａｖａｓｃｒｉｐｔステートメントを使用することによって、２つのＧＩＦファイルを、次に表示することなくキャッシュに入れることができる。当業者は、追加または代替の技術を使用して、本発明によるダウンロード対象ファイル２４０の一部分をカプセル化する画像ファイルの転送できることを理解されよう。
【００３５】
図４を再び参照すると、メモリ４２０は、さらに、セグメント管理モジュール４４０、インストレーション・モジュール４５０、さらに場合によってはシステム呼び掛け応答機４６０、およびダウンロード管理モジュール４７０を含む。セグメント管理モジュール４４０は、任意の所定のダウンロード対象ファイル２４０のセグメントをカプセル化する画像ファイルの受け取りを追跡し、セグメント・アセンブリ・データベース４２４を維持する。セグメント・アセンブリ・データベース４２４は、ダウンロード対象ファイル２４０を含むセグメントを画像ファイルの形で受け取った程度を示すことができる１組のウェブ・クッキーまたはほぼ同等な情報を含むことができる。追加または代替として、実施形態の詳細により、ＣＧＩスクリプトやサーバ側のセッション追跡モジュールなどのサーバ側のプロセスによって、セグメント・アセンブリ・データベース４２４の１つまたは複数の部分を、当業者によって理解される形で維持することができる。当業者は、さらに、本発明が他のセッション追跡技術を使用することができるので、実施の観点からはほぼ簡単であるが、クッキーを使用する必要がないことを理解されよう。セグメント管理モジュール４４０は、さらに、受け取った画像ファイルからファイル・セグメントを取り出し、それと関連するセグメントを選択的に組み立てかつ／または結合してダウンロード対象ファイル２４０の一部分を復元することができる。
【００３６】
ダウンロード対象ファイル２４０は、実行可能なプログラム・コードを含むことができる。インストール・モジュール４５０は、そのような実行可能プログラムコードのソフトウェア・インストール操作を管理することができる。システム呼び掛け応答機４６０は、セグメント統合システム４００内のハードウェアおよび／またはソフトウェア・リソースと関連した更新された情報が入手可能かどうかを定期的に判定することができる。システム呼び掛け応答機４６０は、ダウンロード管理モジュール４５０と通信して、本発明に従って１組の画像ファイルにカプセル化されたそのような更新された情報を取り出すことができる。ダウンロード管理モジュール４７０は、空きがあるかまたは休止中のウェブ・サーフィン期間中に、前述の更新された情報を取り出すことができる。
【００３７】
セグメント管理モジュール４４０、インストール・モジュール４５０、システム呼び掛け応答機４６０および／またはダウンロード管理モジュール４７０の１つまたは複数は、ブラウザ・プラグ・インを含むことができる。セグメント管理モジュール４４０、インストール・モジュール４５０、システム呼び掛け応答機４６０および／またはダウンロード管理モジュール４７０によって実行されかつ／または容易にされる動作については、図６、図８、および図９と関連して後で詳しく説明する。
【００３８】
本発明によれば、ダウンロード対象ファイル２４０が、１組のセグメントに分割または分配され、その１組のセグメントが、１組の画像ファイルにカプセル化される。ウェブ・ブラウザ４３２が、そのような画像ファイルに対する１つまたは複数の参照を含むウェブ・ページを描画するときに、画像ファイルをブラウザ・キャッシュ４３４に転送またはダウンロードすることができる。セグメント配布サーバ３００は、そのような画像ファイルを、１つまたは複数のプロキシ・サーバ１２２ならびにその中あるいはそれと関連したキャッシュに、当業者によって容易に理解される方式で転送し、それによりセグメント配布サーバ３００上の要求が緩和される。ダウンロード対象ファイル２４０に対応する１組の画像ファイル全部をすべて受け取った後で、ファイル・セグメントがそこから取り出され、組み立てられてファイルが再現される。本発明の実施形態が、ウェブ・サーフィン操作中の小さいかまたはほぼ小さい画像ファイルのダウンロードを容易にし、小さい画像ファイルからダウンロード対象ファイル２４０を再現するので、ファイル・ダウンロードは、ユーザにはほとんど瞬間的に感じる。
【００３９】
図５は、本発明の実施形態によるファイル・セグメント化操作を実行する手順５００のフローチャートである。手順５００は、図２に示したような、ファイル・セグメント化システム２００上で実行することができる。１つの実施形態において、手順５００は、最初に、ステップ５０２で、１つまたは複数の画像ファイルへセグメント化とカプセル化を必要とするダウンロード対象ファイル２４０を取り出す。次に、手順５００は、ステップ５０４で、ファイルの一部分またはセグメントを１組の画像ファイルにカプセル化する。ステップ５０４で、手順５００は、ダウンロード対象ファイル２４０の一部分をセグメントに分割し、そのようなセグメントを、実質的に任意の標準画像ファイル形式によって定義された画像ファイルのデータ・セクションにカプセル化することができる。
【００４０】
ステップ５０４に続いて、ステップ５０６で、手順５００は、カプセル化可能画像ファイルまたはそれに対応するスクリプトを参照するようにウェブ・ページ定義を更新する。次に、ステップ５０８で、手順５００は、セグメント化されていないファイルへの参照、対応する組のカプセル化可能画像ファイルへの参照、図４に関して前に説明したようなそのような画像ファイルを参照するウェブ・ページ４３２への参照、カプセル化可能画像ファイルとウェブ・ページが存在するセグメント配布サーバへの参照を含むように、カプセル化データベース２２４（図２）を更新する。
【００４１】
ステップ５０８に続いて、手順５００は、ステップ５１０のように、別のダウンロード対象ファイル２４０のセグメント化とカプセル化を必要とするかどうかを判定する。必要とする場合は、手順５００がステップ５０２に戻り、他の状況では、手順５００は、ステップ５１２で、カプセル化可能画像ファイルおよびそれに対応するウェブ・ページ４３２を、適切な一組のサーバにアップロードする。そのようなサーバは、カプセル化可能画像ファイルと場合によってはそれに対応するウェブ・ページが存在することができる１つまたは複数のセグメント配布サーバ３００を含むことができる。
【００４２】
図６は、本発明の実施形態によるカプセル化ファイル・セグメントを取り出す手順６００のフローチャートである。１つの実施形態において、手順６００は、最初に、ステップ６０２で、図４に関して前に説明したようなウェブ・ブラウザ４３０が、ウェブ・ページ４３２を要求する。ウェブ・ブラウザ４３０は、セグメント統合システム４００内に存在することができる。手順６００は、ステップ６０４で、ウェブ・ページ４３２を送付し、次に、ステップ６０６で、ウェブ・ブラウザ４３０が、表示装置４１０にウェブ・ページ４３２を描画し始める。
【００４３】
ステップ６１０で、手順６００は、次に、ウェブ・ページ４３２が、ダウンロード対象ファイル２４０に対応するセグメントをカプセル化する以前に取り出されていない画像ファイルを参照するかどうかを判定する。ステップ６１０で、図４に示したようなセグメント管理モジュール４４０は、セグメント・アセンブリ・データベース４２４および／またはブラウザ・キャッシュ４３４を調べて、ダウンロード対象ファイル２４０のセグメントが以前に取り出されたかどうかを判定する。次に、手順６００は、ステップ６１２で、１つまたは複数の適切なカプセル化可能画像ファイルの取り出しを開始する。ステップ６１２は、１つまたは複数のＨＴＭＬまたは他のタイプのステートメントを実行している間に実行されてもよい。次に、ステップ６１４で、ブラウザ・キャッシュ４３４に、１つまたは複数のカプセル化可能画像ファイルを受け取る。次に、手順６００は、ステップ６１６で、セグメント・アセンブリ・データベース４２４を適切に更新する。ステップ６１６に続いて、手順６００は、ステップ６２０で、別のカプセル化可能画像ファイルをダウンロードするかどうかを判定する。別のカプセル化可能画像ファイルをダウンロードする場合、手順６００は、ステップ６１２に戻り、そうでない場合、手順６００は終了する。
【００４４】
図７は、本発明の実施形態によりカプセル化されたセグメントを送付する手順７００のフローチャートである。手順７００は、図３に示したようなセグメント配布サーバ３００上でまたはそれと連携して実行することができる。１つの実施形態において、手順７００は、最初に、ステップ７０２で、ダウンロード対象ファイル２４０のセグメントをカプセル化する１つまたは複数の画像ファイルに対応するクライアント要求を受け取る。次に、手順７００は、ステップ７０４で、転送する１つまたは複数の画像ファイルを識別する。手順７００は、クライアント要求を調べかつ／または要求するクライアントからクッキーやその他の情報を取り出すか取得することによって、そのような識別を行うことができる。ステップ７０４に続いて、手順は、ステップ７０６で、適切なカプセル化可能画像ファイルを要求クライアントに転送し、次に、ステップ７０８で、画像ファイル転送情報を更新する。画像ファイル転送情報は、ローカルに存在しかつ／またはリモートでクライアント上に存在する。次に、手順７００は、ステップ７１０で、別のカプセル化可能画像ファイルが転送を必要とするかどうかを判定する。転送を必要とする場合は、手順は、ステップ７０４に戻り、そうでない場合は、手順７００は終了する。
【００４５】
図８は、本発明の実施形態によるセグメント統合操作を実行する手順８００のフローチャートである。手順８００は、図４に示したようなセグメント統合システム４００上で実行されてもよい。１つの実施形態において、手順８００は、最初に、ステップ８０２で、既にダウンロード対象ファイル２４０からどのセグメントを受け取ったかを判定する。ステップ８０２に続いて、ステップ８０４は、追加のセグメントが必要かどうか、すなわちダウンロード対象ファイル２４０を含む１組のセグメント全部を受け取ったかどうかを判定する。ステップ８０２および／または８０４は、セグメント・アセンブリ・データベース４２４および／またはブラウザ・キャッシュ４３４を調べて、そのような判定を行うセグメント管理モジュール４４０によってあるいはセグメント管理モジュール４４０と連携して実行することができる。
【００４６】
追加のセグメントが必要な場合、手順８００は、ステップ８０６で、必要なセグメントをカプセル化する画像ファイルの取り出しを開始する。ステップ８０６に続いて、あるいは追加のセグメントが必要ない場合はステップ８０４の後で、手順８００は、ステップ８０８で、取り出したセグメントを組み立てて、ダウンロード対象ファイル２４０を再現する。ステップ８０８で、手順８００は、そのようなセグメントをカプセル化する図形または画像ファイルからセグメント・データを取り出すかまたは読み取る。ステップ８０８に続いて、手順８００は、ステップ８１０で、インストールおよび／またはシステム更新操作を実行する。インストール操作は、再現されたファイル、すなわち組み立てられたセグメントが、実行可能ファイルに対応する場合に実行されることがある。システム更新操作は、組み立てられたセグメントが、デバイス・ドライバなどの更新されたシステム資源を提供するかまたはそれに対応する場合に実行されることがある。
【００４７】
図９は、本発明の実施形態による高効率の自動情報更新を実行する手順９００のフローチャートである。手順９００は、ウェブ・ブラウザ４３２が実行しているかインスタンス化されているときに自動的に定期的に実行される。１つの実施形態において、手順９００は、最初に、ステップ９０２で、ローカル・システム構成情報を調べ、更新を必要とする情報を識別する。そのようなシステム構成情報は、ファイル、デバイス・ドライバ、ウィルス定義ファイルおよび／または他の更新可能情報、ならびに対応する取り出し源および最新の取り出し日を指定することができる。代替の実施形態において、手順９００は、広告、クーポン、および／または宣伝資料などの情報の取り出しに適用することができる。
【００４８】
手順９００は、次に、ステップ９０６で、ウェブ・ブラウザが情報をフェッチしているかどうかを判定する。フェッチしている場合は、手順９００は、ステップ９０６に留まる。フェッチしていない場合、手順９００は、ステップ９０８で、最初または次の更新ソースを選択し、ステップ９１０でそのようなソースと通信して、更新された情報が入手可能かどうかを判定する。
【００４９】
更新された情報が入手可能な場合、手順９００は、ステップ９１２で、そのような情報の取り出す次のセグメントを決定する。手順９００は、次に、ステップ９１４で、ウェブ・ブラウザ４３２が現在、他の情報をフェッチしているかどうか判定する。他の情報をフェッチしている場合、手順９００は、ステップ９１４に留まり、そうでない場合は、手順９００は、ステップ９１６で取り出し要求を出し、それにより現行のセグメントをブラウザ・キャッシュ４３４にカプセル化する画像ファイルの取り出しを開始する。
【００５０】
次に、ステップ９１８で、手順９００は、取り出したセグメント・カウントを示すことができるクッキーなどの情報を更新する。手順９００は、次に、ステップ９２０で、別のセグメントを取り出す必要があるかどうかを判定する。別のセグメントを取り出す必要がある場合、手順９００は、ステップ９１２に戻り、そうでない場合は、手順９００は、ステップ９２２で、他の更新情報が必要かどうかを判定する。他の更新情報が必要な場合は、手順９００は、ステップ９０８に戻る。
【００５１】
手順９００は、次に、ステップ９３０で、更新可能な情報に対応する少なくとも１組のセグメントがすべて取り出されたかどうかを判定する。すべてが取り出されていない場合、手順９００は終了する。そうでない場合、手順９００は、ステップ９３２で、セグメント・アセンブル作業を実行する。手順９００は、次に、ステップ９３４で、それに応じてシステムおよび／または構成情報を更新し、その後で、手順９００は終了する。
【００５２】
以下に本発明の実施態様の例を列挙する。
〔実施態様１〕ダウンロード対象ファイルの一部分を含む１組のセグメントを１組の画像ファイルにカプセル化する段階と、
前記１組の画像ファイル内の画像ファイルのサブセットを、インターネットに接続されたコンピュータ・システムに対応するキャッシュにダウンロードする段階と、
前記サブセットの画像ファイル内にカプセル化されたセグメント・データを取り出して、前記ダウンロード対象ファイルの一部分を再現する段階とを含む方法。
〔実施態様２〕画像ファイルのダウンロード操作を管理するために、前記１組の画像ファイルに対応する参照とスクリプトに対応する参照のグループから１つの参照をウェブ・ページ定義に組み込む段階をさらに含む実施態様１に記載の方法。
〔実施態様３〕前記１組の画像ファイルに対応する参照をウェブ・ページ定義に組み込む段階をさらに含み、少なくとも１つの画像ファイルを示す前記参照が、ウェブ・ページの描画操作中に、最低限に明瞭な形と不明瞭な形のグループのうちの１つの形で表示される実施態様１に記載の方法。
〔実施態様４〕前記１組の画像ファイルに対応する参照をウェブ・ページ定義に組み込む段階をさらに含み、少なくとも１つの画像ファイルを示す前記参照が、ウェブ・ページの描画操作中に表示されないままである実施態様１に記載の方法。
〔実施態様５〕前記ダウンロードする段階が、
次にダウンロードする画像ファイルを識別する段階と、
前記識別した画像ファイルを前記コンピュータ・システムに転送する段階と、
前記識別した画像ファイルがダウンロードされたことを示す情報を更新する段階とを含む実施態様１に記載の方法。
〔実施態様６〕ダウンロードする段階と抽出する段階が、ダウンロード対象ファイルがコンピュータ・システム上に再現されるまで繰り返し実行される実施態様１に記載の方法。
〔実施態様７〕実行可能ファイル、デバイス・ドライバおよびウィルス定義ファイルのグループのうちの１つの一部分を含む１組のセグメントを、１組の画像ファイルにカプセル化する段階と、
前記１組の画像ファイルを、インターネットに接続されたコンピュータ・システムに対応するキャッシュ内にダウンロードする段階と、
前記１組の画像ファイル内にカプセル化されたセグメント・データを抽出して、前記コンピュータ・システム上に前記ダウンロード対象ファイルを再現する段階とを含む方法。
〔実施態様８〕インターネットに接続されたブラウザが利用可能なコンピュータ・システム上で実行される方法であって、
サーバからウェブ・ページ定義を取り出す段階と、
ウェブ・ページ描画操作を開始する段階と、
前記ウェブ・ページ定義によって参照される１組の画像ファイルを取り出す段階と、
前記１組の画像ファイルをキャッシュ内に受け取る段階と、
前記１組の画像ファイルから、ダウンロード対象ファイルに対応する１組のセグメントを抽出する段階と、
前記抽出された１組のセグメントに従ってインストール操作とコンピュータ・システム更新操作のグループから１つの操作を実行する段階とを含み、前記ダウンロード対象ファイルが、表示用の画像データ以外のものを含む方法。
〔実施態様９〕サーバからのウェブ・ページ定義を取り出す段階と、
ウェブ・ページ描画操作を開始する段階と、
前記ウェブ・ページ定義によって参照される１組の画像ファイルを取り出す段階と、
前記１組の画像ファイルをキャッシュ内に受け取る段階と、
前記１組の画像ファイルから、ダウンロード対象ファイルに対応する１組のセグメントを抽出する段階とをコンピュータ・システムに実行させることができる命令を記憶し、
ダウンロード対象ファイルが、表示用の画像データ以外のものを含むコンピュータ可読媒体。
〔実施態様１０〕前記抽出した１組のセグメントに従ってインストール操作とコンピュータ・システム更新操作のグループのうちの１つの操作を実行するための命令をさらに記憶する実施態様９に記載のコンピュータ可読媒体。
【図面の簡単な説明】
【図１】本発明の実施形態による高効率インターネット・ダウンロード・システムのブロック図である。
【図２】本発明の実施形態によるファイル・セグメント化システムのブロック図である。
【図３】本発明の実施形態によるセグメント配布サーバのブロック図である。
【図４】本発明の実施形態によるセグメント統合システムのブロック図である。
【図５】本発明の実施形態によるファイル・セグメント化操作を実行する手順のフローチャートである。
【図６】本発明の実施形態によるカプセル化ファイル・セグメントを取り出す手順のフローチャートである。
【図７】本発明の実施形態によるカプセル化セグメントを送付する手順のフローチャートである。
【図８】本発明の実施形態によるセグメント統合操作を実行する手順のフローチャートである。
【図９】本発明の実施形態による高効率自動情報更新の手順のフローチャートである。
【符号の説明】
１００　システム
１１０　インターネット
１２０　ローカルエリア・ネットワーク（ＬＡＮ）
１２２　プロキシ・サーバ
２００　ファイル・セグメント化システム
２４０　ダウンロード対象ファイル
３００　セグメント配布サーバ
４００　セグメント統合システム
７３０　インターネット・サービス・プロバイダ（ＩＳＰ）
【図１】
2004005655.tif 000003
【図２】
2004005655.tif 000004
【図３】
2004005655.tif 000005
【図４】
2004005655.tif 000006
【図５】
2004005655.tif 000007
【図６】
2004005655.tif 000008
【図７】
2004005655.tif 000009
【図８】
2004005655.tif 000010
【図９】
2004005655.tif 000011