JP2004511852A - ネットワークデータの転送高速化システム及び方法 - Google Patents

ネットワークデータの転送高速化システム及び方法 Download PDF

Info

Publication number
JP2004511852A
JP2004511852A JP2002534984A JP2002534984A JP2004511852A JP 2004511852 A JP2004511852 A JP 2004511852A JP 2002534984 A JP2002534984 A JP 2002534984A JP 2002534984 A JP2002534984 A JP 2002534984A JP 2004511852 A JP2004511852 A JP 2004511852A
Authority
JP
Japan
Prior art keywords
web
data
web resource
remote client
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002534984A
Other languages
English (en)
Inventor
ルールー, イスラエル
ペイファー, クリストファー
Original Assignee
レッドライン ネットワークス, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by レッドライン ネットワークス, インコーポレイテッド filed Critical レッドライン ネットワークス, インコーポレイテッド
Publication of JP2004511852A publication Critical patent/JP2004511852A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)

Abstract

コンピュータネットワーキングのための、システム、方法、及びデバイス。本発明の一つの実施例によると、前記方法は、描画可能な及び描画不可能なデータを有するウェブリソースの要求を遠隔クライアントから受信することを含む。前記方法は、さらに前記要求されたウェブリソースからの前記描画不可能なデータの少なくとも一部をフィルタすることを含み、それによって修正されたウェブリソースを生成する。前記方法は、また、前記修正されたウェブリソースを前記遠隔クライアントへ送信することを含む。描画不可能なデータは、余白、コメント、ハードリターン、メタタグ、キーワード、又はブラウザによってウェブページを提示するのに用いられないその他のデータを含み得る。
【選択図】図1

Description

【0001】
【発明の属する技術分野】本発明は一般的にコンピュータネットワーク上のデータ伝送に関するものであり、更に詳細に言えば、コンピュータネットワーク上のウェブリソースの伝送の高速化に関するものである。
【0002】
【従来の技術及び発明が解決しようとする課題】
インターネットは、最近、爆発的な成長を経験してきている。ワールドワイドウェブの出現は、世界中の何百万人ものユーザが、テキスト、グラフィックス、ビデオ、そして音声を有するウェブページを、家で、職場で、あるいは無線デバイスを介して遠隔地にいながら、簡易にダウンロードすることを可能にしてきた。これらのウェブページはしばしばサイズが大きく、それゆえにダウンロードするのに長い時間を要し、ユーザにとって遅延及び欲求不満の原因となっている。遅延はしばしばユーザが要求したウェブページを諦め、他のウェブページに移ってしまう原因となり、収益の損失及び損害を多くの商業ウェブサイトにもたらす結果となる。
【0003】
ウェブページのダウンロードの遅延の原因には多くの要因がある。サーバでは、大量のページの要求はサーバの許容能力を超え、要求に対する応答なし又は遅い応答の原因となる。コンピュータネットワーク内で、ネットワークの輻輳及び限られた帯域幅はデータ伝送の遅延の原因となり得る。特に、問題となるのは多くのホームユーザと彼らのインターネットサービスプロバイダとの間のいわゆる「最後のマイル」である。ほとんどのインターネットユーザにとって、最後のマイルは、大抵、56Kボーか又はより遅いスピードで動作するように構成される電話モデムによる接続である。これらのユーザにとって、大きなウェブページをダウンロードするには苦痛を感じるほど長い時間が掛かる。
【0004】
遅延を減らし、ユーザに対してより快適な体験を提供するために、コンピュータネットワーク上のデータ伝送を高速化するシステム及び方法を提供することは望ましいことである。
【0005】
【課題を解決するための手段】
コンピュータネットワーキングのための、システム、方法、及びデバイスが提供される。前記方法は通常遠隔クライアントからウェブリソースの要求を受信するとともに、その要求されたウェブリソースに対応するオリジナルウェブリソースを取得することを含む。前記方法は、通常、オリジナルウェブリソースよりも小さいファイルサイズであるサイズが最適化されたウェブリソースを形成するため、オリジナルウェブリソースの少なくとも一部を処理することをさらに含む。前記方法は、また、通常遠隔クライアントへサイズが最適化されたウェブリソースを送信するとともに、遠隔クライアントに、サイズが最適化されたオリジナルウェブリソースの少なくとも一部を、オリジナルの無修正の状態で送信することを含む。ウェブリソースは、画像データ、ウェブページソースデータ、又はその他のウェブリソースであってもよい。
【0006】
本発明のもう一つの態様によれば、前記方法は、遠隔クライアントから、ウェブリソースの要求を受信することを含む。ウェブリソースは、通常、描画可能な及び描画不可能なデータを含む。前記方法は、さらに、要求されたウェブリソースから描画不可能なデータの少なくとも一部をフィルタすることによって修正されたウェブリソースを生成することを含む。前記方法は、また、修正されたウェブリソースを遠隔クライアントへ送信することを含む。描画不可能なデータは、余白、コメント、ハードリターン、メタタグ、キーワード、又はブラウザによってウェブページを提示するのに使用されないその他のデータを含み得る。
【0007】
本発明のもう一つの態様によれば、前記方法は、遠隔クライアントからウェブリソースの要求を受信するとともに、要求されたウェブリソースに基づいて修正されたウェブリソースを実時間で生成することを含む。修正されたウェブリソースは、通常、要求されたウェブリソースより小さいサイズである。前記方法は、修正されたウェブリソースを遠隔クライアントへ送信することをさらに含む。
【0008】
前記デバイスは、通常、ウェブサーバと遠隔クライアントとを有するコンピュータネットワーク上で利用される。遠隔クライアントは、コンピュータネットワークを介して、ウェブサーバからウェブリソースをダウンロードするように構成される。デバイスは、通常、遠隔クライアントからウェブリソースの要求を受信し、それに応じて、ウェブサーバから要求されたウェブリソースを取得するように構成されるコントローラを含む。コントローラは、さらに、コンピュータネットワークを介してウェブサーバから遠隔クライアントへのウェブリソースの伝送を実時間で高速化するように構成される。要求されたウェブリソースは、描画不可能なデータを含み、コントローラは描画不可能なデータの少なくとも一部をフィルタで除去することによってコンピュータネットワークを介する遠隔クライアントへのウェブリソースの伝送を高速化するように構成され得る。
【0009】
本発明のもう一つの態様によれば、前記デバイスは、コンピュータネットワーク上で、遠隔クライアントからウェブリソースの要求を受信し、関連するウェブサーバからウェブリソースを取得し、ウェブリソースを実時間で圧縮し、圧縮されたウェブリソースを遠隔クライアントへ送信するように構成されるコントローラを含む。
【0010】
前記システムは、通常コンピュータネットワークを介してウェブサーバからウェブリソースをダウンロードするように構成されたコンピュータネットワーク、ウェブサーバ、遠隔クライアントを含む。前記システムは、さらに、通常コンピュータネットワーク上でウェブサーバと遠隔クライアントとの間に位置付けられた高速化デバイスを含む。この高速化デバイスは、ウェブサーバから遠隔クライアントへのウェブリソースの伝送を高速化するように構成される。このウェブリソースは、ウェブページソースデータ、画像データ、又はその他のファイルであり得る。高速化デバイスは、通常、ウェブページソースデータからの描画不可能なデータの少なくとも一部をフィルタすることによってウェブページソースデータの伝送を高速化する。高速化デバイスは、通常、画像データのより小さいバージョンを生成し、そのより小さいバージョンを遠隔クライアントへ送信することによって、画像データの伝送を高速化する。画像データのオリジナルバージョンは、より小さいバージョンの後に遠隔クライアントへ送信し得る。ウェブソースは、また、伝送の前に高速化デバイスによって圧縮し得る。
【0011】
【発明の実施の形態】
図1をまず参照すれば、本発明の一つの実施例に準じるコンピュータネットワーキングシステムが10で概して示されている。システム10は、通常コンピュータ16を介してサーバ14からデータをダウンロードするように構成される複数の遠隔クライアント12を有している。遠隔クライアント12は,通常、パーソナルコンピュータ(PCs)、携帯情報端末(PDAs)、ウェブ使用可能な無線電話、メインフレームコンピュータ等の演算デバイスである。
【0012】
システム10は、さらに、それぞれの遠隔クライアント12とサーバ14との間に位置する高速化デバイス18を有する。高速化デバイス18は、サーバ14と遠隔クライアント12との間のデータの伝送を高速化するように構成される。高速化デバイス18は、あるいは、本明細書においてネットワーキングデバイス18と呼ばれる。
【0013】
通常、高速化デバイス18は、コンピュータネットワーク16にリンクされるスタンドアロンの電気器具である。本発明の別の実施例によると、システム10はサーバ14’に一体化される高速化デバイス18’を有し得る。高速化デバイス18は、示されているように、一対一の関係又は一対多の関係でサーバ14に接続され得る。一つの高速化デバイス18がいくつかのサーバ14とリンクされるときは、遠隔クライアント12からの要求を多くのサーバ14に分配する機能を果たし、それによって、それぞれのサーバに課せられた負担をほぼ均等化する。
【0014】
通常、高速化デバイス18は、構内ネットワーク(LANs)20を介して14に接続され、インターネットのような、通常広域ネットワーク(WAN)であるコンピュータネットワーク16を介して、遠隔クライアント12に接続される。遠隔クライアント12は、ブロードバンド接続24を介して、又は、インターネットサービスプロバイダ(ISP)22を介して、直接WAN 16に接続され得る。通常、遠隔クライアント12及びISP 22は公衆交換電話網(PSTN)26に通じたモデム接続を介してリンクされる。PSTNモデム接続26の通常の通信速度は略56Kビット毎秒(bps)かそれ以下であるが、一方、直接ブロードバンド接続24の通常の通信速度は約256Kbpsと10Mbps との間であり、それ以上であり得る。
【0015】
遠隔サーバ28は、コンピュータネットワーク16を介して、遠隔クライアント12に追加のデータを提供するために設けられ得る。このデータは本文では遠隔より提供されるコンテントとして参照され、ウェブサーバ14と遠隔サーバ28とが異なるコンテントプロバイダによって運用されている場合は、本明細書ではサードパーティのコンテントとして参照され得る。遠隔より提供されるコンテントは図15と16に42で示されている。通常、遠隔サーバ28は、遠隔クライアント12に広告を提供するように構成される広告サーバ28である。広告に付け加えて、遠隔に提供されるコンテントは、ニュース、気象、株式市況等のその他の実質的にはどのようなタイプの情報であってもよいし、グラフィックス、テキスト、画像、ビデオ、及び/又は、音声を含み得る。遠隔サーバ28の機能はさらに後述されるだろう。
【0016】
サーバ14, 28は、通常、図14の30で示されるように、遠隔クライアント12により実行されるブラウザプログラム34にウェブリソースを提供するウェブサーバ14, 28である。模範的なブラウザプログラム34はカリフォルニア州サンタクララにあるネットスケープコミュニケーションズ社から市販されているネットスケープブラウザと、ワシントン州レッドモンドにあるマイクロソフト社から市販されているインターネットエクスプローラとを含む。ウェブサーバ及びブラウザは、通常、ハイパーテキスト転送プロトコル(HTTP)を利用して通信する。ウェブリソースはウェブページソースデータ32、画像データ33、音声データ、ビデオデータ、グラフィックスデータ、ジャバスクリプトアプレットのような埋め込みコード、スタイルシート、又は実質的にはユニフォームリソースインジケータ(URI)を介してブラウザが利用でき解釈できるその他のどのようなリソースでもよい。
【0017】
図2においては、本発明に準じたコンピュータネットワーキングシステムのもう一つの実施例が10’ で示されている。コンピュータネットワーキングシステム10’は、通常、図1の高速化デバイス18に対して上述されているように同じ場所に位置付けられているサーバ側高速化デバイス18aを有する。コンピュータネットワーキングシステム10’は、また通常、コンピュータネットワーク16と個々の遠隔クライアント12との間に位置付けられている遠隔クライアント側高速化デバイス18bを有する。通常、高速化デバイス18bは、ダイアルアップISP 22aに又はブロードバンドISP 22bに位置付けされている。
【0018】
図2内で示されている実施例では、高速化デバイス18a, 18bは、後述する方法で機能し、またバイナリプロトコルを利用して相互に通信する付加的な能力を有し、それによって、HTTPのような標準ASCIIプロトコルを用いるのを回避し、ウェブリソースの伝送に必要なビット数を減らしている。付け加えて言えば、高速化デバイス18a, 18bは、インターネットプロトコール(IP)レベルの接続を確立する能力、及び伝送制御プロトコル(TCP)を利用せずにバイナリプロトコルで通信する能力を有する。TCPは、ハンドシェイク、及び、貴重な時間を必要とし、そして全般的なデータ伝送速度を減速するその他の処理を含む。故に、TCPの使用を回避することはデータが転送される速度を効果的に向上させる。最後に、高速化デバイス18a, 18bは、相互に持続的な接続を確立する能力を有する。持続的な接続とは、一度確立されると常にオープンの状態を維持するソケット上のネットワーク接続のことである。接続をオープンにしておくことにより、高速化デバイスはソケットをオープンに及びクローズドにすることに関連する繰り返しのタスクを回避し、それによって、貴重な時間をセーブするとともに全般的なデータ伝送速度を向上させる。
【0019】
図14を参照すれば、ウェブリソース30は、通常、ウェブページソースデータ32と関連する画像データ33とを含む。ウェブリソース30は、また、ビデオファイル、音声ファイル、グラフィックアニメーションファイル、ジャバスクリプトアプレット及びカスケードスタイルシート(CSS)等のような埋め込みコードファイル等のその他のタイプのファイルを含む。ウェブページソースデータ32は、通常、ハイパーテキストマークアップ言語(HTML)のようなマークアップ言語を利用して符号化されるが、一方、画像データ34は、通常、JPEG、GIF、又はアニメーションGIF画像形式のような標準画像形式で符号化される。その他の適切なファイル形式がウェブページソースデータ及び画像データに利用でき得ることは理解されるであろう。
【0020】
ウェブページソースデータ32は、描画可能(renderable)なデータ36と描画不可能(non−renderable)なデータ38とを含む。描画可能なデータ36とは、ブラウザ34がウェブリソース30を利用してウェブページ40を描画するとき解釈するように構成されるデータである。即ち、描画可能なデータ36とは、ウェブページ40の対話式機能のみならず、ウェブページ40の視覚的及び聴覚的なコンテント並びに配置を提示する方法に影響を与えるデータである。描画可能なデータ36は、テキスト、画像、配置、及び形式の指示、背景の色、ハイパーリンク、グラフィックアニメーション、音声などを含むが、これらに限定されるものではない。
【0021】
描画不可能なデータ38とは、ウェブページ40の視覚的若しくは聴覚的なコンテント、配置、又は対話式機能に影響を与える方法では解釈されないデータである。例えば、余白、ハードリターン、コメント、メタタグ、キーワード等は描画不可能なデータの例である。描画不可能なデータ38は、また、遠隔クライアント12上のブラウザ34が解釈するようには構成されていないHTMLのタグのような形式の指示も含む。画像データ33は作者、表題、コメント、そして生成日のデータのような描画不可能なデータも含み得る。
【0022】
以下で詳述するように、高速化デバイス18は、通常、ウェブリソースの修正されサイズが最適化されたバージョン30aを生成するようにウェブリソース30を処理することにより、サーバ14から遠隔クライアント12へのウェブリソース30の伝送を高速化するように構成される。サイズが最適化されたバージョン30aは、オリジナルのウェブリソース30よりもファイルサイズが小さく、故に、コンピュータネットワーク16を介して転送するのにより少ない時間で済む。
【0023】
ウェブリソース30がウェブページソースデータ32を有する場合では、オリジナルウェブリソース30のサイズが最適化されたバージョン30aは、通常、オリジナルウェブページソースデータ32から描画不可能なデータ38の少なくとも一部をフィルタすることによって生成されるフィルタされたウェブページソースデータ32aを有する。ウェブリソース30が画像データ33を含む場合では、オリジナルデータのサイズが最適化されたバージョン30aは、後述するように、画像データの画像パラメータを変更することにより、及び/又は、画像データの形式を修正することにより生成される画像データのより小さなバージョン33aを含み得る。
【0024】
今度は図15及び16を参照すると、ウェブリソース30に基づいてブラウザ34によって描画されたウェブページが40で示されている。ウェブページ40は、通常、見出し44、インライン画像46、及びテキスト48等と同様に、遠隔サーバ28によって提供される遠隔から提供されるコンテント42を含む。ウェブページ40のテキスト及び形式設定は、タグとしても参照される形式設定指示とウェブページソースデータ32内に含まれるテキストデータとによって決定される。ウェブページ40の最終的な視覚的及び聴覚的な提示は、通常、高速化デバイス18がウェブページソースデータ32から描画不可能なデータ38の全て、又は一部をフィルタすることによって変更されないことは理解されるであろう。
【0025】
ウェブページソースデータ32は、図17内の36gで示されるように、遠隔から提供されるコンテント42のため、遠隔サーバ28へのハイパーリンクを含んでいる。ハイパーリンク36gは、通常、ユニフォームリソースロケータ(URL)を含み、遠隔サーバ28からの遠隔から提供されるコンテントの画像データを要求するようにブラウザ34に指示する。ウェブページソースデータ32は、また、図17内の36i及び図18内の36kで示されるように、インライン画像46へのハイパーリンクを含んでいる。ハイパーリンク36iは、ウェブサーバ14からのインライン画像46に対応する画像データ33を要求するようにブラウザ34に指示する。
【0026】
後述するように、本発明の一つの実施例によると、画像データをブラウザが要求すると、高速化デバイスは、サイズが最適化されたインライン画像46aとして提供されている画像データのより小さなバージョン33aを送信するように構成される。サイズが最適化されたインライン画像46aが表示された後、ウェブサーバは、通常、画像データのオリジナル無修正バージョン33を要求するようにブラウザ34に指示する。画像データのオリジナルバージョン33は、最終的には、ブラウザ34を介してオリジナル無修正インライン画像46として表示される。通常、ウェブサーバはウェブページ40のウェブページソースデータ32内にスクリプト(通常、ジャバスクリプト)又はその他の実行可能なコードを埋め込むことにより、画像データのオリジナルバージョン33をダウンロードするようにブラウザに指示する。このスクリプトはブラウザメモリ内のウェブページを書き換えるように構成されており、その結果、画像データのより小さいバージョン33aを指すのに用いられるリンク36kが、画像データのオリジナルバージョン33を指すのに用いられるリンク36mと交換される。
【0027】
ウェブページ40にアクセスするため、遠隔クライアント12のユーザは、通常、ISP 22を介してコンピュータネットワーク16への接続を確立し、そして、ウェブサーバ14によって提供されている所望のウェブページ40のユニフォームリソースロケータ(URL)をブラウザ34に入力する。ブラウザ34は、通常、その所望のウェブページを提供するためにウェブサーバ14に要求を送信する。通常、高速化デバイスはそのウェブサーバのURLの中に含まれるIPアドレスで位置付けられている。高速化デバイス18は、後述するように、ウェブサーバ14へ送信された要求を受信及び処理し、ウェブサーバ14から遠隔クライアント12へのウェブリソース30の伝送を高速化するように構成される。
【0028】
図3に示されるように、高速化デバイス18は、バス56によってリンクされる、メモリ52を有するコントローラ50と中央処理装置(CPU)54とを有する。高速化デバイス18は、また通常、通信プログラム60とキャシュ62とを有する大容量記憶装置58を有する。通信プログラム60は、図6から図13に示され、そして、後述する方法で、遠隔クライアント12からのウェブリソース30の要求を処理するように構成される。キャシュ62は、遠隔クライアント12によって前に要求されたウェブページソースデータ32、フィルタされたウェブページソースデータ32a、及び画像データ33, 33aのようなウェブリソース30を格納するように構成される。
【0029】
高速化デバイス18は、通常、バス56と、コンピュータネットワーク16への外部ネットワークコネクションとに接続されているネットワークインターフェイス64もまた含む。ネットワークインターフェイス64は、高速化デバイス18がコンピュータネットワーク16を介してデータを送信及び受信することを可能にする。適切なネットワークインターフェイスの一つの例は、オレゴン州のヒルズボロにあるインテル社から市販されているインテルイーサネットプロ100である。高速化デバイス18は、また、図10から図12で詳細に後述する方法で、実時間で画像データ33のより小さいバージョン33aを生成するように構成されるデジタル信号処理装置(DSP)66を有し得る。DSP 66として用いるのに適切な市販されている例は、テキサス州ダラスにあるテキサスインスツルメント社から市販されているテキサスインスツルメント6501/6503デジタル信号処理装置である。
【0030】
図4に、本発明に準ずる高速化デバイスのもう一つの実施例が、概して18’’で示されている。高速化デバイス18’’は、通常、単一集積回路基板68を有する。この集積回路基板は、ネットワークインターフェイス72、メモリ74、CPU 76、特定用途向け集積回路(ASIC)78、大容量記憶装置80を収納している。ASIC 78は、通常、通信プログラム60を含み、一方、大容量記憶装置80は、通常、上述されているキャッシュ62を含む。高速化デバイス18, 18’’の実施例は、スタンドアロンのネットワーク装置18であり得るし、又は、図1内の18で示されるようにウェブサーバ14と一体化され得る。ASIC 78、CPU 76、及びメモリ74は、後述する方法で、ウェブリソースの要求を処理するよう構成されるコントローラ82を形成する。
【0031】
図6には、本発明に準じた高速化デバイスのさらにもう一つの実施例が概して18’’’で示されている。高速化デバイス18’’’は、通常、バス94によって相互にリンクするとともに、RAM 88、不揮発性メモリ90、及びネットワークインターフェイス92とリンクする複数の補助処理CPUs 84, 86を有する。構成部品84から94は、通常、回路基板96に取り付けられる。不揮発性メモリは、通常、フラッシュメモリ又はROMのような半導体メモリであり、上述されている通信プログラム60を含む。Ram 88は、CPUs が後述する方法でウェブの要求を処理するとき、データの一時的な格納場所としてCPUs 84, 86に用意されている。代案として、大容量記憶装置及びキャッシュは含み得るが、高速化デバイス18’’’は、通常、大容量記憶装置又はキャッシュを含まない。構成部品84, 86, 88 及び90とは、後述する方法でウェブリソースの要求を処理するように構成されるコントローラを形成する。
【0032】
今度は図6を参照すると、本発明の一つの実施例による方法が、概して100で示されている。方法100は、通常、102で、ウェブリソース30の要求を高速化デバイス102で待機(listening)することを含む。前記方法は、104で、通常、遠隔クライアントのブラウザ12からのウェブリソース30の要求を受信することを含む。通常、その要求は、遠隔クライアントのブラウザ12から遠隔クライアントのブラウザがウェブサーバ14に関連付けているIPアドレスへ送信されるが、それは実際には付随する高速化デバイス18に割り当てられたものである。前記要求は、通常、高速化デバイス18で受信される。
【0033】
前記方法は、さらに106で、ウェブサーバ14から要求されたウェブリソースに対応するオリジナルウェブリソースを取得することを含む。通常、オリジナルウェブリソースは高速化デバイス18によって取得される。あるいは、高速化デバイス18は、要求されたウェブリソースがキャッシュされているかどうかを判定し、そして、キャッシュ62から要求されたウェブリソースを取得してもよい。
【0034】
108で、前記方法は、通常、高速化デバイス18でオリジナルウェブリソース30の少なくとも一部を処理することを含み、その結果、前記オリジナルウェブリソース30よりも小さいファイルサイズである、サイズが最適化されたウェブリソース30aを形成する。通常、ウェブリソース30は、図7及び図8内に示されるステップでそのファイルのタイプに基づいて処理される。
【0035】
110で、前記方法は、さらに、遠隔クライアント12にサイズが最適化されたウェブリソース30aを送信することを含む。通常、サイズが最適化されたウェブリソース30aは、高速化デバイス18から、コンピュータネットワーク16を介して、要求をしている遠隔クライアント12へ送信される。前記サイズが最適化されたウェブページは遠隔クライアント12よって受信され、そして、遠隔クライアント12に関係する表示部12a上で表示される。
【0036】
112で、前記方法は、さらに、オリジナルの無修正な状態で、サイズが最適化されたオリジナルのウェブリソース30の少なくとも一部を、遠隔クライアントへ送信することを含む。故に、方法100は、オリジナルの無修正な状態で、オリジナルウェブリソース30の全てを高速化デバイス18から遠隔クライアント12へ送信することを含んでもよいし、又は、オリジナルの無修正な状態で、オリジナルウェブリソース30の一部だけを送信することを含んでもよい。本発明の一つの実施例によれば、ウェブリソース30はウェブページソースデータ32及び画像データ33を含み得るし、112で、前記方法は、オリジナルの無修正な状態で、オリジナル画像データ33だけを送信することを含み得る。
【0037】
今度は図7及び8を参照すると、図6の方法100が非常に詳細に示されている。方法100は、通常、上述されているように、102で待機し、104でウェブリソース30の要求を受信し、106で要求されたウェブリソース30を取得することを含む。105では、前記方法は遠隔クライアントのハードウエア構成を判定することを含む。ハードウエア構成とは、通常、表示部12aの解像度とともに表示部12aによってサポートされている色数のことである。ハードウエア構成は、通常、ウェブページソースデータ内の埋め込みファイルを送信することにより検査でき、このファイルは、次の通信でハードウエア構成をウェブサーバへ送信するようにブラウザに指示するように構成される。ハードウエア構成は、後述するように、遠隔クライアント12へ送信される画像データの最適な画像データ形式を判定するのに利用され得る。
【0038】
ウェブリソース30を処理するステップが詳細に図7から図11内に108で示されている。ウェブリソース処理108は、通常、114で、遠隔クライアントのブラウザタイプ及び/又はブラウザが解釈可能なファイルタイプを判定することを含む。通常、遠隔クライアントのブラウザは、上述されているネットスケープブラウザ若しくはインターネットエクスプローラブラウザのどちらかか、又はこれら二つのブラウザの一つに互換性のあるブラウザかである。勿論、その他のブラウザタイプもまた検出され得ることは理解されるであろう。遠隔クライアントのブラウザタイプは、ステップ124及び128でデータを圧縮するための圧縮アルゴリズムを決定するのに用いられる。ブラウザが解釈可能なファイルタイプは、通常、遠隔クライアント12から要求ヘッダで送信され、GZIP、DEFLATE、WAVELET圧縮、及びその他のファイル形式のようなファイルタイプを含み得る。
【0039】
ウェブリソース処理108は、また通常、116で、ウェブリソース30のコンテントタイプを判定することも含む。通常、ウェブリソースは、HTMLのようなウェブページソースデータ32であるか、又は画像データ33である。前記方法は、通常、html、jpg、gif等のようなファイルの拡張子を検査することによりウェブリソースのコンテントタイプを判定する。
【0040】
118で、ウェブリソース30のコンテントタイプがウェブリソース30は画像データ33であることを示している場合、方法100は図8のステップ132に進み、ウェブリソース30のコンテントタイプがウェブリソースはウェブページソースデータ32であることを示している場合、方法100はステップ122に進む。
【0041】
122で、処理108は、さらに、ウェブページソースデータ32をフィルタすることを含み、それによってオリジナルウェブページソースデータ32より小さなサイズの修正されたウェブページソースデータ32aを生成する。修正されたウェブページソースデータ32aは、また、本明細書においてフィルタされたウェブページソースデータ32aとしても参照される。通常、前記方法は、要求を受信した後で、及びフィルタされたウェブページソースデータが遠隔クライアント12へ送信される前に、ウェブページソースデータ32を実時間でフィルタすることを含む。
【0042】
通常、ウェブページソースデータをフィルタすることは、ウェブページソースデータ32から描画不可能なデータ38の少なくとも一部をフィルタすることにより達成される。本発明の一つの実施例では、描画不可能なデータ38の全てがウェブページソースデータ32からフィルタされる。別の選択としては、前記描画不可能なデータの一部だけが前記ウェブページソースデータからフィルタされる。
【0043】
通常、描画不可能なデータは図9に示されるプロセスによってフィルタされる。146では、フィルタステップ122は、通常、ウェブページソースデータから余白をフィルタするサブステップを含む。ここで用いられているように、項目「余白」はスペース、タブ、及び図17内の38bと38cで示されているように、ウェブページ40に描画されないウェブページソースデータ32の中のその他のキャラクタを参照している。
【0044】
148で、フィルタステップ122は、通常、ウェブページソースデータ32からコメントをフィルタするサブステップを含む。コメントは図17内の38hで示されている型式でウェブページソースデータ32に現れる。
【0045】
150で、フィルタステップ122は、通常、ウェブページソースデータ32から、図17内の38aで示されるように、ハードリターンをフィルタするサブステップを含んでいる。HTMLでは、リターン又はパラグラフタグは、ファイル内でハードリターンを入力するようにブラウザ34に指示するのに用いられる。しかし、ASCIIでは、リターンはキャリッジリターンキャラクタ(CR)及び/又はラインフィードキャラクタ(LF)のどちらかで達成される。通常、CR及びLFのASCIIキャラクタはブラウザ34によって描画されない。故に、これらのキャラクタのどちらか一方又は両方がウェブページソースデータ32からフィルタされる。本発明の一つの実施例では、前記方法は、二つの連続したCRLFキャラクタの組み合わせの内、第二番目だけをフィルタし除外することを含む。故に、ウェブページソースデータ32内にCRLF CRLFが現れるときは、その第2番目のCRLFがフィルタで除外され、第1番目は修正されたウェブページソースデータ32a内にそのまま残っている。ブラウザタイプ間の型式の相違によって、前記方法は、ステップ114で検出されたブラウザタイプに基づいた方法でハードリターンを削除することも含み得る。
【0046】
152で、フィルタステップ122は、通常、図17内の38dで示されるように、メタタグをフィルタするサブステップを含んでいる。メタタグ38dとは、ウェブページ40を分類し指標を付けるためにインターネットの検索エンジンによって用いられるキーワード38gを含むタグのことである。これらのメタタグ38d及びそこに含まれるキーワード38gはブラウザ34によって描画されず、故に通常、ウェブページソースデータ32からフィルタされ除去される。作者及びメタタグ38d内のその他のデータもまたフィルタされ除去され得る。
【0047】
154で、フィルタステップ122は、タグを小文字で書き換えることによりタグをフィルタすることを含んでいる。タグを小文字で書き換えることは、GZIP又はDEFLATEのような方法で圧縮した後画像データのサイズを減少させる傾向がある。故に、タグを小文字で書き換えることは、オリジナルウェブページソースデータ32よりも小さなファイルサイズを有するフィルタされたウェブページソースデータ32aを得る結果となる。
【0048】
さらに、122でウェブページソースファイルをフィルタすることは描画可能なデータをより少ない損失でフィルタすることを含み得る。例えば、前記方法は、ウェブページソースデータから描画可能なデータの一部をフィルタし、その描画可能なデータの一部を、サイズが小さくその交換される描画可能なデータと描画可能性の点において等価な代替の描画可能なデータと交換することを含み得る。描画可能性の点において等価なデータとは、ブラウザ34によって視覚的に、聴覚的に、及び対話式的に同一の方法で解釈されるデータのことである。描画可能性の点において等価なデータに置き換える一つの例は、一セットの形式設定命令を等価のスタイルシートと置き換えるということである。故に、ここでは、ウェブページソースデータ32内で、一セットの形式設定命令をスタイルシートに置き換えることを含み得る。
【0049】
図7に戻ると、ひとたびフィルタされたウェブページソースデータ32aが生ずると、方法100はステップ124に戻り、そこで、フィルタされたウェブページソースデータ32aは高速化デバイスにて実時間で圧縮される。ステップ114から検出されたブラウザタイプがインターネットエクスプローラである場合、フィルタされたウェブページソースデータ32aは、通常、GZIP圧縮アルゴリズムを用いて圧縮される。もし、ステップ114から検出されたブラウザタイプがネットスケープである場合、フィルタされたウェブページソースデータ32aは、通常、DEFLATE圧縮アルゴリズムを用いて圧縮される。あるいは、前記方法は、114で、GZIP、DEFLATE、又はその他の圧縮アルゴリズムがブラウザで解釈可能なファイルタイプなのかを検出することを含み得る。
【0050】
126で、前記方法は、ブラウザ34を介して、表示するために、圧縮されフィルタされたウェブページソースデータ32aを高速化デバイス18から遠隔クライアント12へ送信することをさらに含む。前記方法は、また、自動的に又はユーザからの要求に応じてのどちらかで、圧縮されフィルタされたウェブページソースデータ32aを遠隔クライアントのブラウザへ送信した後、オリジナルウェブページソースデータ32をそのブラウザへ送信することも含む。
【0051】
120で、ウェブリソース30がウェブページソースデータ32ではないと判定された場合、100は、通常、上述されているように、ブラウザタイプ又はブラウザが解釈可能なファイル形式に基づいて選択された圧縮アルゴリズムを用いて、実時間で、オリジナルの無修正な状態でウェブソース30を圧縮することを含む。130では、前記方法は、コンピュータネットワーク16を介して、圧縮されたオリジナルのウェブソース30を遠隔クライアント12へ送信することをさらに含む。
【0052】
118で、ウェブソース30が画像データ33であると判定された場合、方法100は、通常、132で、画像データのより小さいバージョン33aがキャッシュ62上でキャッシュされているかどうか判定する。画像データのより小さいバージョン33aが既にキャッシュ62上に格納されている場合、前記方法は、キャッシュ62からその小さいバージョン33aを検索し、134で、ブラウザ34を介して、ウェブページ40上により小さい画像46aとして表示するため、より小さいバージョン33aを遠隔クライアント12へ送信することを含む。ステップ134は図6のステップ110を達成する一つの模範的な方法である。
【0053】
136では、前記方法は、通常、ブラウザ34にオリジナル画像データ33を要求するように指示することを含む。通常、これはウェブページソースデータ32内のハイパーリンクを書き換えるか又は取り替えることにより達成される。そのハイパーリンクは、図18内の36kで書き換える前が、又は図19内の36mで書き換えた後が示されている。書き換える前に、ハイパーリンク36kは画像データのより小さなバージョン33aを指し、書き換えた後に、ハイパーリンク36mはオリジナル画像データ33を指す。ハイパーリンクの書き換えはブラウザ34に画像データ33のオリジナルバージョンを要求するように指示する。
【0054】
この要求に応じて、前記方法は、138で、遠隔クライアント12に画像データ33のオリジナル無修正バージョンを送信することを含む。遠隔クライアント12上のブラウザ34はウェブページ40a上にオリジナル無修正画像46としてオリジナル画像データを表示する。後述するステップ138及びステップ140は図6内のステップ112を達成する二つの例示的な方法である。ステップ138から、前記方法は、通常、図7内のステップ102において、新しいウェブリソースの要求の待機に戻る。
【0055】
ステップ132で、画像データのより小さなバージョン33aがキャッシュされていないと判定された場合、方法100は、通常140遠隔クライアント12上のブラウザ34に、オリジナル画像データ33を送信することを含む。ブラウザ34はウェブページ上に画像46としてオリジナル画像データ33を表示する。故に、高速化デバイス18が特定の画像データ33の要求に出会う最初のときには、通常、その画像データのより小さなバージョン33aを最初に送信することなく、前記画像データが該画像データを要求している遠隔クライアントへ送信される。これは、本発明の好適な実施例の一つによると、遠隔クライアント12に要求された画像データを提供する際の待ち時間を減らすために、画像処理は実時間で実行されないからである。
【0056】
あるいは、本発明のもう一つのより好適な実施例によると、画像データ33は高速化デバイス18のDSP 66によって実時間で処理され得る。本発明のこの実施例によると、画像データのより小さなバージョン33aは実時間で生成され遠隔クライアント12へ送信され、その後少したって、オリジナル画像データ33が遠隔クライアント12へ送信される。
【0057】
オリジナル画像データが140で送信された後、前記方法は、142で、オリジナル画像データ33のより小さいバージョン33aを生成し、144で、キャッシュ62上でそのより小さいバージョン33aをキャッシュすることを含む。その小さなバージョン33aをキャッシュしたあと、前記方法は、その後、図7内の102で、新しいウェブリソースへの要求を待機する状態に戻る。
【0058】
図10に示されているように、画像データのより小さいバージョン33aを生成するステップは、通常156で、一つ又はそれ以上の画像パラメータを判定することで達成される。画像パラメータは、色数、色の類似性、ファイルサイズ、解像度、又はその他の画像パラメータを含み得る。158で、前記方法は、通常、114で判定されたブラウザが解釈できるデータ形式、105で判定された遠隔クライアント12のハードウエア構成、及び156で判定された画像パラメータに基づいて、画像データの最適なデータ形式を選択することを含む。例えば、もしユーザの表示部12aが256色だけで表示するように構成されていて、オリジナル画像データ33が何百万色も含む場合、本方法はその画像データのファイル形式を256色ファイル形式に変換し、より小さなバージョン33aとして遠隔クライアントに256色画像を送信するように構成される。この例によって、画像ファイルのより小さなバージョン33aは損失のより少ない圧縮の方法で生成され得ることは理解されるであろう。即ち、そのユーザのハードウエア構成が、オリジナル画像46の色又は解像度を十分に表示するように構成されていないために、より小さな画像46aは、遠隔クライアント12にはオリジナル画像46と同一に見えることになる。
【0059】
160では、前記方法は、さらに、画像データがすでに最適なファイル形式で格納されているかどうか判定することを含む。もしそうならば、前記方法は図11に進む。もしそうでなければ、前記方法は、162で、最適なデータ形式にオリジナル画像データの形式を修正することをさらに含む。故に、高速化デバイス18は、例えば、JPEGのような一つの形式で画像データを受信し、要求している遠隔クライアント12に画像を送信する前に、GIFのようなもう一つの最適な形式に画像データを変換するように構成される。この変換は、DSPにより実時間で実行され得るし、又は、将来の要求のために最適の形式で画像ファイルをキャッシュするとともに、現在要求している遠隔クライアント12に無修正の形式で画像ファイルを送信することによってオフラインで実行し得る。
【0060】
図11に示されているように、画像データのより小さなバージョン33aを生成するステップ142は、通常168で、オリジナルデータ33がアニメーション(アニメーションGIFファイルのような)であるかどうか判定し、もしそうならば、170でその画像のフレームを抽出することによってさらに達成される。実質的にはいかなる適切なフレームでも抽出され得るが、通常、第1番目のフレームが抽出される。第1番目のフレームは、それから、画像データのより小さなバージョン33aとしてキャッシュされる。第1番目のフレームは、後述するように、色数を減らすか又は第1番目のフレームに関連する品質パラメータを減らすことによりサイズをさらに減少することができる。
【0061】
172では、前記方法は、さらに、オリジナル画像データ33がJPEG形式であるかどうか判定することを含む。もしそうならば、前記方法は、さらに174で、JPEG画像33に関連する品質パラメータを減少することを含む。これは、JPEG画像33の全体としてのファイルサイズを減少させる。結果としての画像データは、画像データ33のより小さなバージョン33aとしてキャッシュされる。
【0062】
176では、前記方法は、さらに、オリジナル画像データ33がGIF形式であるかどうか判定することを含む。もしそうならば、前記方法は、さらに178で、GIF画像データの色数を減らすことを含む。これは、GIF画像33の全体としてのファイルサイズを減少させる。結果としての画像データは画像データ33のより小さなバージョン33aとしてキャッシュされる。
【0063】
今度は図12を参照すると、本発明のもう一つの実施例による画像データの伝送のための方法が、概して200で示されている。方法200は、通常202で、ウェブリソース30への遠隔クライアント12からの要求を待機することを含む。方法200内のその他の全てのステップと同様に、202での待機は、通常、上述されているように、高速化デバイス18によって実行される。204では、前記方法は、通常、遠隔クライアント12上のブラウザ34からオリジナル画像データ33の要求を受信することを含む。
【0064】
206では、前記方法は、通常、オリジナル画像データ33又は関連するより小さなバージョン33aがキャッシュ62上でキャッシュされているかどうか判定する。もしそうでなければ、前記方法は208に進み、そこでは前記方法はウェブサーバ14から要求されたオリジナル画像データ33を取得することを含む。
【0065】
210では、前記方法は、さらに、画像データ33のより小さなバージョン33aを生成することを含む。通常、これは、211で,画像データを最適な形式に修正し、212でアニメーション画像データのフレームを抽出し、214で画像データに関連する品質パラメータを減らし、及び/又は、216で画像データに関連する色数を減らすことによって達成される。これらのステップは詳細に上述されている。
【0066】
218では、前記方法は、通常、ウェブページ40上により小さな画像46aとして表示するため、遠隔クライアント12のブラウザ34に画像データ33のより小さなバージョン33aを送信することを含む。前記方法は、また、上述されているように、通常ハイパーリンクを書き換えることによって、画像データのオリジナルバージョン33を要求するようにブラウザ34に指示することも含む。220では、前記方法は、通常、ウェブページ40a内にオリジナル画像46として表示するために、ブラウザ34に画像データのオリジナルバージョン33を送信することを含む。
【0067】
あるいは、方法200は、208でウェブサーバ14からオリジナル画像を取得してからすぐ、220でそのオリジナル画像を遠隔クライアント12へ送信することに直接進み得るし、そうすることにより高速化デバイス18での待ち処理時間を減少させ得る。この実施例においては、前記方法は、通常、220でオリジナル画像33が遠隔クライアント12へ送信された後、ステップ218に準じてより小さいバージョン33aを生成し、キャッシュ62上でそのより小さなバージョン33aをキャッシュすることを含む。この方法はその後202で待機に戻る。
【0068】
206で、オリジナル画像33とステップ210に準じて前に生成された画像の関連するより小さいバージョン33aとがキャッシュされていると判定された場合、前記方法は、通常、ステップ222でそのキャッシュからオリジナル及びより小さなバージョン33、33aを検索し、ステップ218、220でオリジナル及びより小さなバージョン33、33aを遠隔クライアント12へ送信することをさらに含む。前記方法はその後202で待機に戻る。
【0069】
今度は図13を参照すると、本発明のもう一つの実施例に準ずるウェブページソースデータを伝送する方法が、300で概して示されている。方法300は、通常302で、遠隔クライアント12からのウェブページソースデータ32の要求を待機することを含む。方法300の全てのその他のステップと同様に待機ステップは、通常、上述されているように、高速化デバイス18によって実行される。
【0070】
304では、前記方法は、通常、遠隔クライアント12上のブラウザ34からHTMLファイルのようなウェブページソースデータ32の要求を受信することを含む。306では、前記方法は、さらに、関連するウェブサーバ14から要求したウェブページソースデータ32を取得することをさらに含む。そのウェブページソースデータは、また、それがキャッシュ62上に格納されている静止ウェブページソースデータである場合、そこから取得され得る。
【0071】
通常、ウェブページソースデータ32は上述されているように描画可能なデータ36及び描画不可能なデータ38を有している。306では、前記方法は、通常、そのウェブページソースデータから描画不可能なデータ38の少なくとも一部をフィルタし、それによってそのオリジナルウェブページソースデータの修正されフィルタされたバージョン32aを生成することを含む。修正されたウェブページソースデータ32aはオリジナルウェブページソースデータ32よりファイルサイズが小さい。
【0072】
通常、308でフィルタすることは、一つ又はそれ以上のフィルタサブステップ310−316によって達成される。310では、前記方法は、上述されているように、ウェブページソースデータ32から余白をフィルタすることを含み得る。312では、前記方法は、上述されているように、そのウェブページソースデータからコメントをフィルタすることを含み得る。314では、前記方法は、上述されているように、そのウェブページソースデータからハードリターンをフィルタすることを含み得る。316では、前記方法は、上述されているように、タグを小文字で書き換えることによりそのウェブページソースデータからそのタグをフィルタすることを含み得る。さらに、前記方法は、ブラウザ34が解釈できないHTMLタグのような描画不可能なコマンドをフィルタすることを含み得る。
【0073】
318では、前記方法は、通常、遠隔クライアント12上のブラウザ34に、修正されフィルタされたウェブページソースデータ32aを送信することを含む。前記方法は、また、その修正されたウェブページソースデータ32aを送信する前に、修正されたウェブページソースデータ32aを圧縮することを含み得る。修正されたウェブページソースデータを圧縮するのに用いられる圧縮アルゴリズムは、上述されているように、検出されたブラウザタイプ及び/又はブラウザが解釈可能なデータ形式に基づいて選択され得る。
【0074】
ブラウザ34は、ウェブページ40として修正されたウェブページソースデータ32aを表示するように構成される。ブラウザ34を介する修正されたウェブページソースデータ32aの視覚的及び聴覚的な提示は、通常、ブラウザ34を介するオリジナルウェブページソースデータ32の視覚的及び聴覚的な提示と同一である。即ち、二つのファイル32、32aは、ブラウザ34のユーザにとっては、同じように見え、聞こえ、対話する。
【0075】
今度は図17を参照すると、オリジナルウェブページソースデータの一つの例が32で概して示されている。通常、ウェブページソースデータ32はHTML形式であり、そして静止ファイルであり得るし、また、動的に出力され得る。ウェブページソースデータ32は、通常、上述されているように、描画可能なデータ36及び描画不可能なデータ38を含む。描画可能なデータ36は、通常、HTMLタグ36a、HEADタグ36b、TITLEタグ36c、BODYタグ36d、CENTERタグ36e、アンカ(A)タグ36f、画像(IMG)タグ36g、36i、及び見出し(H1)タグ36hのような言語と形式とに関連したHTMLタグを含む。描画可能なデータ36は、また、テキストデータ36j及びリンクされた画像データを含む。画像タグ36iは画像データのオリジナルバージョン33へのハイパーリンクである。
【0076】
描画不可能なデータ38は、通常、ハードリターン38a並びにタブ38b及びスペース38cのような余白を含む。描画不可能なデータ38は、さらに、作者パラメータ36eとコンテントパラメータ36fとのようなパラメータを有するメタタグ36dを含む。コンテントパラメータ36fは、通常、ウェブページ40を分類し指標を付けるために検索エンジンによって用いられるキーワード36gを含む。描画不可能なデータ36は、さらに、コメント36hを含む。いかなる及び/又は全ての描画不可能なデータ36は、本発明の実施例に準じて、ウェブページソースデータ32からフィルタで除去され得る。
【0077】
図18は、画像データ33のより小さなバージョン33aへのハイパーリンク36kを伴うフィルタされたウェブページソースデータ32aを示している。余白、ハードリターン、メタタグ(作者及びコンテントに関連するキーワードを含む)、及びコメントは取り除かれている。ブラウザ34は、遠隔クライアント12上にウェブページ40(より小さな画像46aを有する)を表示するようにウェブページソースデータ32aを解釈する。ウェブページソースデータ32aは、該ウェブページソースデータからフィルタされる描画不可能なデータを有しており、より小さい画像ファイル33aへのハイパーリンクを有するので、ウェブページソースデータ32よりもダウンロードするのにより少ない時間で済む。故に、ユーザは従来の方法を使うよりも本明細書で記載されている伝送方法を用いるほうが、ウェブページ40をより早く見ることができる。
【0078】
図19は、オリジナル画像データ33へのハイパーリンク36mを伴う、フィルタされたウェブページソースデータ32a’を示している。通常、埋め込みコード(通常アプレット)は、上述されているように、ウェブページソースデータ32に挿入され、32a’で示される形式に、フィルタされたウェブページソースデータ32aをブラウザ34に書き換えさせる。ブラウザ34はウェブページソースデータ32a’を解釈し、ウェブページ40aを遠隔クライアント12上に表示する。故に、ウェブページ40を迅速にダウンロードできるという恩恵を有し、そのうえユーザは、最終的に、画像データ33のオリジナルバージョン46を見ることができる。
【0079】
ここまで記載された発明は、遅延を減少するとともに、ユーザにより快適な体験を提供するために、コンピュータネットワーク上でのデータの伝送を高速化するのに利用され得る。
【0080】
本発明は、特に、前記のより好ましい実施例を引用して示されるとともに記載されてきたが、当業者は、特許請求の範囲で定義されるように、本発明の精神及び範疇を逸脱することなく、多くの変更がその中に加えられることは理解できるであろう。本発明の内容は本明細書で記載されている全ての新規であり及び非自明である要素の組み合わせを含むことは理解されるべきであり、特許請求の範囲は、本願又は後の出願における、いかなる新規であり及び非自明である要素の組み合わせに対してにでも提示され得る。前記の実施例は例示であり、単一の特徴又は要素は、本願又は後の出願で主張され得る全ての可能な組み合わせに対して絶対不可欠なものではない。特許請求の範囲に「一つの」若しくは「第1番目の」要素、又は、それに相当することが記載されている場合では、そのような特許請求の範囲は、一つ又はそれ以上のそのような要素が、二つ又はそれ以上のそのような要素について要求も除外もせず、組み入れられていることを含むと理解されるべきである。
【図面の簡単な説明】
【図1】
本発明の一つの実施例に準じたネットワークデータ高速化システムの概略図である。
【図2】
本発明のもう一つの実施例に準じたネットワークデータ高速化システムの概略図である。
【図3】
本発明の一つの実施例に準じたネットワークデータ高速化デバイスの概略図である。
【図4】
本発明のもう一つの実施例に準じたネットワークデータ高速化デバイスの概略図である。
【図5】
本発明のさらにもう一つの実施例に準じたネットワークデータ高速化デバイスの概略図である。
【図6】
本発明の一つの実施例に準じたコンピュータネットワーキングの方法のフローチャートである。
【図7】
本発明のもう一つの実施例に準じたコンピュータネットワーキングの方法のフローチャートである。
【図8】
図7のフローチャートの続きである。
【図9】
図7に示されているウェブページソースデータをフィルタするステップを達成するための方法の一つの実施例のフローチャートである。
【図10】
図8に示されている画像データのより小さなバージョンを生成するステップを達成するための方法の一つの実施例のフローチャートである。
【図11】
図10のフローチャートの続きである。
【図12】
本発明の一つの実施例に準じた、コンピュータネットワーク上で画像データを転送する方法のフローチャートである。
【図13】
本発明の一つの実施例に準じた、コンピュータネットワーク上でウェブページソースデータを転送する方法のフローチャートである。
【図14】
本発明の一つの実施例に準じたデータフローの概略図である。
【図15】
本発明の一つの実施例に準じたウェブページであり、画像データのより小さなバージョンとともに示されている。
【図16】
図15の画像データのオリジナル無修正バージョンとともに示されている図15のウェブページである。
【図17】
オリジナルウェブページソースデータのリストである。
【図18】
本発明の一つの実施例に準じてフィルタされた、インライン画像のより小さなバージョンへのハイパーリンクを含むフィルタされたウェブページソースデータのリストである。
【図19】
インライン画像のオリジナルバージョンへのハイパーリンクを含むように書き換えられている図18のフィルタされたウェブページソースデータのリストである。
【符号の説明】
10 コンピュータネットワーキングシステム
12 遠隔クライアント
14、28 サーバ
16 コンピュータネットワーク(WANs)
18 高速化デバイス
20 構内ネットワーク(LANs)
22 インターネットサービスプロバイダ(ISP)
24 ブロードバンド
26 公衆交換電話網(PSTN)
30 ウェブリソース
32 ウェブページソースデータ
33 画像データ
34 ブラウザプログラム
36 描画不可能なデータ(renderable)
38 描画可能なデータ(non−rederable)
40 ウェブページ
42 提供されるコンテント
44 見出し
46 インライン画像
48 テキスト
54, 76, 84, 86 中央処理装置(CPU)
56 バス
58, 80 大容量記憶装置
60 通信プログラム
62 キャッシュ
64, 72, 92 ネットワークインターフェイス
66 デジタル信号処理装置(DSP)
68 単一集積回路基板
74, 90 メモリ
78 特定用途向け集積回路(ASIC)
82 コントローラ
88 RAM
100, 200, 300 方法

Claims (102)

  1. 遠隔クライアントからウェブリソースの要求を受信し、
    該要求されたウェブリソースに対応するオリジナルウェブリソースを取得し、
    該オリジナルウェブリソースよりも小さいファイルサイズであるサイズが最適化されたウェブリソースを形成するため、前記オリジナルウェブリソースの少なくとも一部を処理し、
    前記遠隔クライアントへ該サイズが最適化されたウェブリソースを送信し、
    オリジナルの無修正な状態で、前記遠隔クライアントに、前記サイズが最適化されたオリジナルウェブリソースの前記少なくとも一部を送信すること
    を含むコンピュータネットワーキング方法。
  2. 前記ウェブリソースが画像データである請求項1に記載の方法。
  3. 前記画像データの最適な画像データ形式を判定することをさらに含む請求項2に記載の方法。
  4. ブラウザが解釈可能なファイル形式を判定し、該ブラウザが解釈可能なファイル形式の少なくとも一部に基づいて前記最適な画像データ形式を選択することをさらに含む請求項3に記載の方法。
  5. 画像パラメータを判定し、該画像パラメータの少なくとも一部に基づいて前記最適な画像データ形式を選択することをさらに含む請求項3に記載の方法。
  6. 前記画像パラメータが、色数、色の類似性、及びファイルサイズからなるグループから選択される請求項5に記載の方法。
  7. オリジナルの前記画像データ形式を前記最適なデータ形式に修正することをさらに含む請求項3に記載の方法。
  8. 前記オリジナルウェブリソースの少なくとも一部の処理が、前記画像データのより小さいバージョンを生成することを含む請求項2に記載の方法。
  9. 前記画像データのより小さいバージョンの生成が、JPEG形式の画像データの品質パラメータを減少させることを含む請求項8に記載の方法。
  10. 前記画像データのより小さいバージョンの生成が、GIF形式の画像データの色数を減少させることを含む請求項8に記載の方法。
  11. 前記画像データがアニメーションである請求項8に記載の方法。
  12. 前記アニメーション画像データのより小さいバージョンの生成が、前記アニメーション画像データのフレームを抽出することを含む請求項11に記載の方法。
  13. 前記抽出されたフレームがGIF形式であり、より小さいバージョンの生成が第1番目のフレームの色数を減少させること含む請求項12に記載の方法。
  14. 前記画像データのより小さいバージョンを生成した後、前記画像データのより小さいバージョンがキャッシュされることを含む請求項1に記載の方法。
  15. 前記遠隔クライアントに無修正の前記オリジナルウェブリソースを要求するように指示することをさらに含む請求項1に記載の方法。
  16. 前記遠隔クライアントに無修正の前記オリジナルウェブリソースを要求するように指示することが、無修正の前記オリジナルウェブリソースへのハイパーリンクを含めるようにウェブページソースデータを書き直すことによって達成される請求項1に記載の方法。
  17. 前記ウェブリソースがウェブページソースデータである請求項1に記載の方法。
  18. 前記オリジナルウェブリソースの少なくとも一部の処理が、ウェブページソースをフィルタすることによって修正されたウェブページソースデータをより小さいサイズで生成することを含む請求項17に記載の方法
  19. 前記ウェブページソースデータが描画不可能なデータを含み、フィルタすることが前記ウェブページソースデータの該描画不可能なデータの少なくとも一部をフィルタすることを含む請求項18に記載の方法。
  20. 前記描画不可能なデータが、前記遠隔クライアントが解釈できない、余白、コメント、ハードリターン、キーワード、メタタグ、及びコマンドからなるグループから選択される請求項19に記載の方法、
  21. 前記ウェブページソースデータをフィルタすることが、小文字でタグを書き換えることによりタグをフィルタすることを含む請求項20に記載の方法。
  22. 前記修正されたウェブページソースデータを生成した後、前記修正されたウェブページソースデータがキャッシュされる請求項20に記載の方法。
  23. 遠隔クライアントからウェブリソースの要求を受信することが、コンピュータネットワークを介して、遠隔クライアントのブラウザから要求を受信することを含む請求項1に記載の方法。
  24. 前記コンピュータネットワークがWANである請求項23に記載の方法。
  25. WANがインターネットである請求項24に記載の方法。
  26. 前記要求されたウェブリソースに対応するオリジナルウェブリソースを取得することが、ウェブサーバから該オリジナルウェブリソースを要求し受信することを含む請求項25に記載の方法。
  27. オリジナルウェブリソースがLANを介して前記ウェブサーバから受信される請求項26に記載の方法。
  28. 前記要求されたウェブリソースに対応するオリジナルウェブリソースを取得することが、キャッシュから前記オリジナルウェブリソースを検索することを含む請求項27に記載の方法。
  29. 前記オリジナルウェブリソースの少なくとも一部を処理することが、実時間で前記ウェブリソースを圧縮することを含む請求項1に記載の方法。
  30. ブラウザが解釈可能なデータ形式を検出し、該検出されたブラウザが解釈可能なデータ形式に基づいて圧縮アルゴリズムを選択することをさらに含む請求項29に記載の方法。
  31. 前記ウェブリソースを圧縮することが、GZIP圧縮アルゴリズムを用いて圧縮することを含む請求項29に記載の方法。
  32. 前記ウェブリソースを圧縮することが、DEFLATE圧縮アルゴリズムを用いて圧縮することを含む請求項29に記載の方法。
  33. コンピュータネットワークで使用する方法であって、該方法が
    遠隔クライアントから、描画可能な及び描画不可能なデータを含むウェブリソースの要求を受信し、
    前記要求されたウェブリソースから描画不可能なデータの少なくとも一部をフィルタすることによって修正されたウェブリソースを生成し、
    前記修正されたウェブリソースを前記遠隔クライアントへ送信すること
    を含むコンピュータネットワークで使用する方法。
  34. 前記遠隔クライアントがブラウザを有し、前記描画不可能なデータが該ブラウザによって描画できない請求項33に記載の方法。
  35. 前記ウェブリソースが画像データである請求項33に記載の方法。
  36. 前記ウェブリソースがウェブページソースデータである請求項33に記載の方法。
  37. 前記描画不可能なデータのフィルタされた部分が余白を含む請求項35に記載の方法。
  38. 前記描画不可能なデータのフィルタされた部分がコメントを含む請求項35に記載の方法。
  39. 前記描画不可能なデータのフィルタされた部分がハードリターンを含む請求項35に記載の方法。
  40. 前記描画不可能なデータのフィルタされた部分がメタタグを含む請求項35に記載の方法。
  41. 前記描画不可能なデータのフィルタされた部分が、検索エンジンが解釈可能なように構成されたキーボードを含む請求項35に記載の方法。
  42. フィルタすることが、小文字でタグを書き換えることによって前記ウェブページソースデータの該タグをフィルタすることをさらに含む請求項35に記載の方法。
  43. フィルタすることが、前記遠隔クライアントが解釈するように構成されていない描画可能なデータをフィルタすることを含む請求項35に記載の方法。
  44. 前記遠隔クライアント上で実行されるブラウザのブラウザタイプを検出し、
    該ブラウザが解釈するように構成されていないHTMLタグを判定し、
    該解釈されないHTMLタグをフィルタすること
    をさらに含む請求項43に記載の方法。
  45. 前記ウェブページソースデータから前記描画可能なデータの一部をフィルタし、前記描画可能なデータの一部を、サイズが小さく、前記描画可能なデータと描画可能という点において等価な代替の描画可能なデータと置き換えることをさらに含む請求項35に記載の方法。
  46. 前記代替の描画可能なデータがスタイルシートを含む請求項35に記載の方法。
  47. 前記要求されたウェブリソースのオリジナルでフィルタされていないバージョンを、前記遠隔クライアントへ送信することをさらに含む請求項33に記載の方法。
  48. 前記要求されたウェブリソースの前記オリジナルでフィルタされていないバージョンを、前記オリジナルでフィルタされていないバージョンに対する遠隔クライアントからの後の要求に応じて、前記遠隔クライアントへ送信することを含む請求項51に記載の方法。
  49. 前記遠隔クライアントへ送信する前に、前記修正されたウェブリソースを圧縮することを含む請求項33に記載の方法。
  50. 前記修正されたウェブリソースが、損失のより少ない圧縮を用いて圧縮される請求項49に記載の方法。
  51. コンピュータネットワークで使用する方法であって、該方法が、
    遠隔クライアントからウェブリソースの要求を受信し、
    該要求されたウェブリソースに基づいて前記要求されたウェブリソースより小さいサイズである修正されたウェブリソースを実時間で生成し、
    該修正されたウェブリソースを前記遠隔クライアントへ送信すること
    を含むコンピュータネットワークで使用する方法。
  52. 前記要求が高速化デバイスで受信される請求項51に記載の方法。
  53. 前記高速化デバイスがLANを介して関連するウェブサーバにリンクされ、に前記修正されたウェブリソースを生成する前に前記ウェブリソースを前記ウェブサーバからプロキシサーバへ転送することを含む請求項51に記載の方法。
  54. 前記ウェブリソースがウェブページソースデータである請求項51に記載の方法。
  55. 前記ウェブリソースが画像データである請求項51に記載の方法。
  56. 前記遠隔クライアントに前記要求されたウェブリソースのオリジナル無修正バージョンを送信することをさらに含む請求項51に記載の方法。
  57. 前記要求されたウェブページの前記オリジナル無修正バージョンが、前記オリジナル無修正バージョンに対する前記遠隔クライアントからの後の要求に応じて、前記遠隔クライアントへ送信される請求項51に記載の方法。
  58. 遠隔クライアントが、コンピュータネットワークを介して、ウェブサーバからウェブリソースをダウンロードするように構成されており、該ウェブサーバと該遠隔クライアントとを有するコンピュータネットワーク上で利用されるネットワーキングデバイスであって、該デバイスは、
    前記遠隔クライアントから前記ウェブリソースの要求を受信し、それに応じて前記ウェブサーバから前記要求されたウェブリソースを取得し、前記コンピュータネットワークを介して前記ウェブサーバから前記遠隔クライアントへの前記ウェブリソースの伝送を実時間で高速化するように構成されるコントローラを有するネットワーキングデバイス。
  59. 前記コントローラが、ASIC上に格納されたネットワーク通信プログラムロジックを有する請求項58に記載のネットワーキングデバイス。
  60. 前記コントローラが、メモリに接続されたCPUと、メモリに格納され前記CPUで実行可能なネットワーク通信プログラムとを有する請求項58に記載のネットワーキングデバイス。
  61. 前記要求されたウェブリソースが描画不可能なデータを含むウェブページソースデータを有しており、前記コントローラが該描画不可能なデータの少なくとも一部をフィルタで除去することによって前記コンピュータネットワークを介する前記遠隔クライアントへの前記ウェブページソースデータの伝送を高速化する請求項58に記載のネットワーキングデバイス。
  62. 前記コントローラが、前記遠隔クライアントへ前記フィルタされたウェブページソースデータの送信後、前記遠隔クライアントへ前記ウェブページソースデータのオリジナルでフィルタされていないバージョンを送信するようにさらに構成される請求項61に記載のネットワーキングデバイス。
  63. 前記要求されたウェブリソースが画像データを含んでおり、前記コントローラが該画像データのより小さいバージョンを生成することによって前記コンピュータネットワークを介して前記ウェブリソースの前記遠隔クライアントへの伝送を高速化するように構成されている請求項62に記載のネットワーキングデバイス。
  64. 前記コントローラが、前記遠隔クライアントへ前記画像データのより小さいバージョンを送信した後、前記画像データのオリジナル無修正バージョンを前記遠隔クライアントへ送信するようにさらに構成される請求項63に記載のネットワーキングデバイス。
  65. コンピュータネットワーキング内で利用するシステムであって、該システムが、
    コンピュータネットワークと、
    ウェブサーバと、
    前記コンピュータネットワークを介して前記ウェブサーバからウェブリソースをダウンロードするように構成される遠隔クライアントと、
    前記ウェブサーバから前記遠隔クライアントへの前記ウェブリソースの伝送を高速化するように構成され、前記コンピュータネットワーク上で前記ウェブサーバと前記遠隔クライアントとの間に位置付けられる高速化デバイスと
    を含むシステム。
  66. 前記高速化デバイスが、前記遠隔クライアントから要求されたウェブリソースの要求を受信するように構成され、前記ウェブサーバ又はキャッシュから該要求されたウェブリソースを取得するようにさらに構成される請求項65に記載のシステム。
  67. 前記ウェブサーバと前記高速化デバイスとがLANを介して接続される請求項65に記載のシステム。
  68. 前記コンピュータネットワークがWANである請求項65に記載のシステム。
  69. WANがインターネットである請求項67に記載のシステム。
  70. 前記遠隔クライアントが前記ウェブサーバからウェブリソースをダウンロードするように構成されるウェブブラウザを含む請求項65に記載のシステム。
  71. 前記高速化デバイスが、前記オリジナルウェブリソースよりも小さいファイルサイズを有するサイズが最適化されたウェブリソースを形成するために、前記オリジナルウェブリソースの少なくとも一部を処理することによって伝送を高速化するように構成される請求項65に記載のシステム。
  72. 前記オリジナルウェブリソースの少なくとも一部が画像データである請求項71に記載のシステム。
  73. 前記高速化デバイスが前記画像データの最適な画像データ形式を判定するように構成される請求項72に記載のシステム。
  74. 前記高速化デバイスが、ブラウザが解釈可能なファイル形式を判定し、該ブラウザが解釈可能なファイル形式の少なくとも一部に基づいて前記最適な画像データ形式を選択するように構成された請求項73に記載のシステム。
  75. 前記高速化デバイスが、画像パラメータを判定し、該画像パラメータの少なくとも一部に基づいて前記最適な画像データを選択するようにさらに構成される請求項73に記載のシステム。
  76. 前記画像パラメータが、前記画像データの色数、色の類似性、及びファイルサイズからなるグループから選択される請求項75に記載のシステム。
  77. 前記高速化デバイスが、前記オリジナル画像データ形式を前記最適なデータ形式に修正するようにさらに構成される請求項73に記載のシステム。
  78. 前記高速化デバイスが、前記画像データのより小さいバージョンを生成することによって前記サイズが最適化されたウェブリソースを形成するように構成される請求項72に記載のシステム。
  79. 前記画像データがJPEGファイルであり、前記高速化デバイスが該JPEGファイルの品質パラメータを減少させるように構成される請求項78に記載のシステム。
  80. 前記画像データがGIFファイルであり、前記高速化デバイスが該GIFファイルの多数の色を減少させるように構成される請求項78に記載のシステム。
  81. 前記画像がアニメーションであり、前記高速化デバイスが該アニメーション画像データからフレームを抽出するように構成される請求項78に記載のシステム。
  82. 前記抽出されたフレームが、前記アニメーションン画像データの第1番目のフレームである請求項81に記載のシステム。
  83. 前記アニメーション画像データが、アニメーションGIF画像であり、前記高速化デバイスが前記第1番目のフレーム内の色数を減少させることによって前記アニメーション画像データのより小さいバージョンを生成するように構成される請求項82に記載のシステム。
  84. 前記高速化デバイスが、前記画像データのより小さいバージョンをキャッシュするように構成される請求項78に記載のシステム。
  85. 前記高速化デバイスが、前記遠隔クライアントに前記画像データのより小さいバージョンを送信後、前記遠隔クライアントに前記画像データのオリジナル無修正バージョンを送信するように構成される請求項78に記載のシステム。
  86. 前記ウェブリソースの少なくとも一部が、ウェブページソースデータであり、該ウェブページソースデータが描画可能なデータと描画不可能なデータとを含む請求項71に記載のシステム。
  87. 前記高速化デバイスが、前記描画不可能なデータの少なくとも一部をフィルタすることによって前記オリジナルウェブページソースデータより小さいサイズの修正されたウェブページソースデータを生成するように構成される請求項81に記載のシステム。
  88. 前記描画不可能なデータのフィルタされた部分が余白を含む請求項87に記載のシステム。
  89. 前記描画不可能なデータのフィルタされた部分がコメントを含む請求項87に記載のシステム。
  90. 前記描画不可能なデータのフィルタされた部分がハードリターンを含む請求項87に記載のシステム。
  91. 前記描画不可能なデータのフィルタされた部分がメタタグを含む請求項87に記載のシステム。
  92. 前記描画不可能なデータのフィルタされた部分が検索エンジンによって解釈されるように構成されるキーワードを含む請求項87に記載のシステム。
  93. 前記高速化デバイスが、小文字で前記ウェブページソースデータのタグを書き換えることによってタグをフィルタするように構成される請求項87に記載のシステム。
  94. 前記高速化デバイスが、前記修正されたウェブページソースデータをキャッシュするように構成される請求項87に記載のシステム。
  95. 前記高速化デバイスが、前記修正されたウェブページソースデータを送信後、前記遠隔クライアントに前記ウェブページソースデータのオリジナル無修正バージョンを送信するように構成される請求項87に記載のシステム。
  96. 前記高速化デバイスが、前記遠隔クライアントに伝送する前に、前記ウェブリソースを実時間で圧縮するように構成される請求項65に記載のシステム。
  97. 遠隔クライアントによって実行されるブラウザとウェブサーバとを接続するコンピュータネットワーク上で、データを転送するのに利用されるデバイスであって、
    該デバイスは、
    通信プログラムを実行するように構成されるコントローラを有しており、
    該通信プログラムが、
    前記遠隔クライアントからウェブリソースの要求を受信し、
    前記ウェブサーバから該ウェブリソースを取得し、
    実時間で該ウェブリソースを圧縮し、
    該圧縮されたウェブリソースを前記遠隔クライアントへ送信するように構成されるデバイス。
  98. 前記通信プログラムが、前記ウェブリソースの前記要求を読み取り、ブラウザが解釈できる圧縮形式を判定するように構成される請求項97に記載のデバイス。
  99. 前記コントローラが、前記ブラウザが解釈できる圧縮形式を用いて、前記ウェブリソースを圧縮するように構成される請求項98に記載のデバイス。
  100. 前記コントローラにリンクされるネットワークインターフェイスをさらに有する請求項97に記載のデバイス。
  101. 前記ネットワークインターフェイスがLANを介して前記ウェブサーバに接続するように構成される請求項100に記載のデバイス。
  102. 前記ネットワークインターフェイスがWANを介して前記遠隔クライアントに接続するように構成される請求項100に記載のデバイス。
JP2002534984A 2000-10-06 2001-08-31 ネットワークデータの転送高速化システム及び方法 Pending JP2004511852A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/680,675 US6834297B1 (en) 2000-10-06 2000-10-06 Web resource transfer acceleration system and method
PCT/US2001/027164 WO2002031668A1 (en) 2000-10-06 2001-08-31 Network data transfer acceleration system and method

Publications (1)

Publication Number Publication Date
JP2004511852A true JP2004511852A (ja) 2004-04-15

Family

ID=24732045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002534984A Pending JP2004511852A (ja) 2000-10-06 2001-08-31 ネットワークデータの転送高速化システム及び方法

Country Status (7)

Country Link
US (2) US6834297B1 (ja)
EP (1) EP1323047A4 (ja)
JP (1) JP2004511852A (ja)
KR (1) KR20020048398A (ja)
AU (1) AU2001286975A1 (ja)
CA (1) CA2385225A1 (ja)
WO (1) WO2002031668A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107487A (ja) * 2004-09-29 2006-04-20 Internatl Business Mach Corp <Ibm> ネットワークを介してコンテンツを提供するための方法、システム及びプログラム
JP2009530706A (ja) * 2006-03-15 2009-08-27 マイクロソフト コーポレーション 代替的グラフィック・セットの効率的な符号化

Families Citing this family (93)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6832215B2 (en) * 2000-07-21 2004-12-14 Microsoft Corporation Method for redirecting the source of a data object displayed in an HTML document
US6766376B2 (en) 2000-09-12 2004-07-20 Sn Acquisition, L.L.C Streaming media buffering system
US8595372B2 (en) 2000-09-12 2013-11-26 Wag Acquisition, Llc Streaming media buffering system
US7716358B2 (en) 2000-09-12 2010-05-11 Wag Acquisition, Llc Streaming media buffering system
US7249196B1 (en) * 2000-10-06 2007-07-24 Juniper Networks, Inc. Web page source file transfer system and method
US7380250B2 (en) * 2001-03-16 2008-05-27 Microsoft Corporation Method and system for interacting with devices having different capabilities
US20020138526A1 (en) * 2001-03-20 2002-09-26 International Business Machines Corporation Javascript code optimizer
US20020184363A1 (en) * 2001-04-20 2002-12-05 Steven Viavant Techniques for server-controlled measurement of client-side performance
US20020184362A1 (en) * 2001-05-31 2002-12-05 International Business Machines Corporation System and method for extending server security through monitored load management
US7009938B2 (en) * 2001-06-27 2006-03-07 International Business Machines Corporation Reduction of server overload
US7127503B2 (en) * 2001-10-10 2006-10-24 Juniper Networks, Inc. Computer networking system, device, and method for improved speed in web page rendering
KR100453724B1 (ko) * 2002-01-28 2004-10-20 드림인텍 주식회사 네트워크 시스템 및 그 제어방법
JP2003330822A (ja) * 2002-05-09 2003-11-21 Alps System Integration Co Ltd ウェブ接続/データ中継規制機能を有するデータ中継システム及びその規制制御方法
US7558198B2 (en) * 2002-08-19 2009-07-07 Motorola, Inc. Method and apparatus for data transfer
US7574653B2 (en) * 2002-10-11 2009-08-11 Microsoft Corporation Adaptive image formatting control
US7542471B2 (en) 2002-10-30 2009-06-02 Citrix Systems, Inc. Method of determining path maximum transmission unit
US8233392B2 (en) 2003-07-29 2012-07-31 Citrix Systems, Inc. Transaction boundary detection for reduction in timeout penalties
US8270423B2 (en) 2003-07-29 2012-09-18 Citrix Systems, Inc. Systems and methods of using packet boundaries for reduction in timeout prevention
US7616638B2 (en) * 2003-07-29 2009-11-10 Orbital Data Corporation Wavefront detection and disambiguation of acknowledgments
US7630305B2 (en) 2003-07-29 2009-12-08 Orbital Data Corporation TCP selective acknowledgements for communicating delivered and missed data packets
US20040103215A1 (en) * 2002-11-26 2004-05-27 Bmc Software, Inc. Selective compression of web-based data transmissions
EP1429533A3 (en) 2002-12-12 2005-12-07 Seiko Epson Corporation Image processing method and image processing system using the same
US20040205249A1 (en) * 2003-03-17 2004-10-14 Post Point Software, Inc. Methods and systems for determining whether to compress computer communications
US8238241B2 (en) 2003-07-29 2012-08-07 Citrix Systems, Inc. Automatic detection and window virtualization for flow control
US7656799B2 (en) 2003-07-29 2010-02-02 Citrix Systems, Inc. Flow control system architecture
US7698453B2 (en) * 2003-07-29 2010-04-13 Oribital Data Corporation Early generation of acknowledgements for flow control
US8437284B2 (en) 2003-07-29 2013-05-07 Citrix Systems, Inc. Systems and methods for additional retransmissions of dropped packets
US8432800B2 (en) 2003-07-29 2013-04-30 Citrix Systems, Inc. Systems and methods for stochastic-based quality of service
US9026578B2 (en) 2004-05-14 2015-05-05 Microsoft Corporation Systems and methods for persisting data between web pages
GB2415066A (en) * 2004-06-09 2005-12-14 Symbian Software Ltd Selecting most suitable plug-in
US8001175B2 (en) * 2004-10-22 2011-08-16 International Business Machines Corporation Facilitating server response optimization
US7610400B2 (en) 2004-11-23 2009-10-27 Juniper Networks, Inc. Rule-based networking device
US8732653B1 (en) * 2005-09-05 2014-05-20 Yongyong Xu System and method of providing resource modification in a virtual community
US7979509B1 (en) 2005-09-15 2011-07-12 Juniper Networks, Inc. Clustered network acceleration devices having shared cache
US7676554B1 (en) 2005-09-15 2010-03-09 Juniper Networks, Inc. Network acceleration device having persistent in-memory cache
US7644108B1 (en) 2005-09-15 2010-01-05 Juniper Networks, Inc. Network acceleration device cache supporting multiple historical versions of content
AU2012200858B2 (en) * 2006-03-15 2013-08-15 Microsoft Technology Licensing, Llc Efficient encoding of alternative graphic sets
US8004973B2 (en) 2006-04-25 2011-08-23 Citrix Systems, Inc. Virtual inline configuration for a network device
US20080072325A1 (en) * 2006-09-14 2008-03-20 Rolf Repasi Threat detecting proxy server
KR100818776B1 (ko) * 2006-11-30 2008-04-01 삼성네트웍스 주식회사 Wan 가속기 및 tcp 성능 향상을 통한 wan 가속방법
CN101202906A (zh) * 2006-12-11 2008-06-18 国际商业机器公司 在数字视频广播系统中对视频流进行处理的方法和设备
KR101451851B1 (ko) * 2007-01-03 2014-10-23 삼성전자주식회사 웹서버 및 그 웹 서비스 방법
US7706266B2 (en) 2007-03-12 2010-04-27 Citrix Systems, Inc. Systems and methods of providing proxy-based quality of service
US8416788B2 (en) * 2007-04-26 2013-04-09 Microsoft Corporation Compression of data packets while maintaining endpoint-to-endpoint authentication
US8156179B2 (en) 2007-04-26 2012-04-10 Platform Computing Corporation Grid-enabled, service-oriented architecture for enabling high-speed computing applications
KR100959759B1 (ko) * 2007-11-07 2010-05-25 (주) 엘지텔레콤 모바일 인터넷의 서버 지원형 웹가속 서비스 시스템 및 그방법
JP4739369B2 (ja) * 2008-05-15 2011-08-03 ソフトバンクモバイル株式会社 ウェブコンテンツ変換編集システム
US8204964B2 (en) 2008-08-06 2012-06-19 Microsoft Corporation Efficient size optimization of visual information or auditory information
KR101476200B1 (ko) * 2008-10-30 2014-12-24 엘지전자 주식회사 이동단말기 및 그 제어 방법
US8843829B2 (en) * 2008-11-25 2014-09-23 Samsung Electronics Co., Ltd. Method and system for web browsing
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
US10880340B2 (en) 2008-11-26 2020-12-29 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
US8180891B1 (en) 2008-11-26 2012-05-15 Free Stream Media Corp. Discovery, access control, and communication with networked services from within a security sandbox
US9986279B2 (en) 2008-11-26 2018-05-29 Free Stream Media Corp. Discovery, access control, and communication with networked services
US10567823B2 (en) 2008-11-26 2020-02-18 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9026668B2 (en) 2012-05-26 2015-05-05 Free Stream Media Corp. Real-time and retargeted advertising on multiple screens of a user watching television
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US9961388B2 (en) 2008-11-26 2018-05-01 David Harrison Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements
US10334324B2 (en) 2008-11-26 2019-06-25 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9519772B2 (en) 2008-11-26 2016-12-13 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US10977693B2 (en) 2008-11-26 2021-04-13 Free Stream Media Corp. Association of content identifier of audio-visual data with additional data through capture infrastructure
US8260877B2 (en) 2008-12-31 2012-09-04 Apple Inc. Variant streams for real-time or near real-time streaming to provide failover protection
US8156089B2 (en) 2008-12-31 2012-04-10 Apple, Inc. Real-time or near real-time streaming with compressed playlists
AU2013202695B2 (en) * 2008-12-31 2016-01-28 Apple Inc. Real-time or near real-time streaming
US20100169458A1 (en) 2008-12-31 2010-07-01 David Biderman Real-Time or Near Real-Time Streaming
US8578272B2 (en) 2008-12-31 2013-11-05 Apple Inc. Real-time or near real-time streaming
US8495171B1 (en) * 2012-05-29 2013-07-23 Limelight Networks, Inc. Indiscriminate virtual containers for prioritized content-object distribution
US9633217B2 (en) * 2009-08-03 2017-04-25 Limelight Networks, Inc. Indiscriminate virtual containers for prioritized content-object distribution
US9058402B2 (en) 2012-05-29 2015-06-16 Limelight Networks, Inc. Chronological-progression access prioritization
US20110029899A1 (en) 2009-08-03 2011-02-03 FasterWeb, Ltd. Systems and Methods for Acceleration and Optimization of Web Pages Access by Changing the Order of Resource Loading
US8346784B1 (en) 2012-05-29 2013-01-01 Limelight Networks, Inc. Java script reductor
US8805963B2 (en) 2010-04-01 2014-08-12 Apple Inc. Real-time or near real-time streaming
GB201105502D0 (en) 2010-04-01 2011-05-18 Apple Inc Real time or near real time streaming
US8560642B2 (en) 2010-04-01 2013-10-15 Apple Inc. Real-time or near real-time streaming
TWI451279B (zh) 2010-04-07 2014-09-01 Apple Inc 即時或接近即時串流傳輸之內容存取控制
US8849899B1 (en) * 2011-01-30 2014-09-30 Israel L'Heureux Accelerated delivery of media content via peer caching
US8843586B2 (en) 2011-06-03 2014-09-23 Apple Inc. Playlists for real-time or near real-time streaming
US8856283B2 (en) 2011-06-03 2014-10-07 Apple Inc. Playlists for real-time or near real-time streaming
US9600350B2 (en) * 2011-06-16 2017-03-21 Vmware, Inc. Delivery of a user interface using hypertext transfer protocol
US9514242B2 (en) 2011-08-29 2016-12-06 Vmware, Inc. Presenting dynamically changing images in a limited rendering environment
US9549045B2 (en) 2011-08-29 2017-01-17 Vmware, Inc. Sharing remote sessions of a user interface and/or graphics of a computer
KR20140052703A (ko) * 2012-10-25 2014-05-07 삼성전자주식회사 프록시 서버를 이용한 웹 서비스 가속 방법 및 장치
CN103873918B (zh) * 2012-12-14 2017-08-29 腾讯科技(深圳)有限公司 图片处理方法、装置及终端
US9015348B2 (en) 2013-07-19 2015-04-21 Limelight Networks, Inc. Dynamically selecting between acceleration techniques based on content request attributes
EP2998912A1 (en) * 2014-09-19 2016-03-23 Siemens Aktiengesellschaft Method, system and web application for monitoring a manufacturing process
CN104794165B (zh) * 2015-03-26 2018-08-10 百度在线网络技术(北京)有限公司 一种页面展现方法、装置及系统
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US11093574B2 (en) 2018-07-26 2021-08-17 Palo Alto Networks, Inc. Encoding-free javascript stringify for clientless VPN
US10831836B2 (en) 2018-07-26 2020-11-10 Palo Alto Networks, Inc. Browser storage for clientless VPN
US10951588B2 (en) * 2018-07-26 2021-03-16 Palo Alto Networks, Inc. Object property getter and setter for clientless VPN

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10228437A (ja) * 1996-06-03 1998-08-25 Webtv Networks Inc 分散ネットワークにおける文書の代理処理とトランスコーディングの方法および装置
JPH10283233A (ja) * 1997-04-07 1998-10-23 Pfu Ltd Html文書形式アプリケーションの実行方法及びhtml文書変換ツール記憶媒体
JP2000076155A (ja) * 1998-09-01 2000-03-14 Mitsubishi Materials Corp Htmlドキュメント圧縮・展開・表示方式
JP2000090001A (ja) * 1998-08-05 2000-03-31 Spyglass Inc 変換設定を使用した電子デ―タの変換方法およびシステム
JP2000194612A (ja) * 1998-12-28 2000-07-14 Spyglass Inc 電子デ―タの内容を無線装置用に変換する方法およびシステム

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727159A (en) 1996-04-10 1998-03-10 Kikinis; Dan System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers
US6081835A (en) 1996-04-04 2000-06-27 British Telecommunications Public Limited Company Internet server and method of controlling an internet server
JP3061765B2 (ja) 1996-05-23 2000-07-10 ゼロックス コーポレイション コンピュータベースの文書処理方法
US6304676B1 (en) 1996-10-03 2001-10-16 Mark A. Mathews Apparatus and method for successively refined competitive compression with redundant decompression
US6029182A (en) 1996-10-04 2000-02-22 Canon Information Systems, Inc. System for generating a custom formatted hypertext document by using a personal profile to retrieve hierarchical documents
US5867153A (en) 1996-10-30 1999-02-02 Transaction Technology, Inc. Method and system for automatically harmonizing access to a software application program via different access devices
US5838927A (en) * 1996-11-22 1998-11-17 Webtv Networks Method and apparatus for compressing a continuous, indistinct data stream
US6049821A (en) * 1997-01-24 2000-04-11 Motorola, Inc. Proxy host computer and method for accessing and retrieving information between a browser and a proxy
US6122657A (en) 1997-02-04 2000-09-19 Networks Associates, Inc. Internet computer system with methods for dynamic filtering of hypertext tags and content
US5864366A (en) 1997-02-05 1999-01-26 International Business Machines Corporation System and method for selecting video information with intensity difference
JPH10224523A (ja) 1997-02-06 1998-08-21 Nikon Corp 情報処理システム、伝送装置、および、伝送方法
JPH10285502A (ja) 1997-04-01 1998-10-23 Nikon Corp 情報処理システム、情報処理装置、情報処理方法、および、記憶媒体
JPH10254888A (ja) 1997-03-10 1998-09-25 Canon Inc 情報処理装置及びその処理方法
JPH10301943A (ja) 1997-04-24 1998-11-13 Canon Inc 画像処理装置及びその制御方法
IL121071A0 (en) 1997-03-27 1997-11-20 El Mar Software Ltd Automatic conversion server
US6075926A (en) 1997-04-21 2000-06-13 Hewlett-Packard Company Computerized method for improving data resolution
US6564250B1 (en) * 1997-08-21 2003-05-13 Planetweb, Inc. Miniclient for internet appliance
JPH11126209A (ja) 1997-10-23 1999-05-11 Toshiba Corp 情報処理装置及び方法並びに情報処理プログラムを記録した記録媒体
US6049342A (en) 1997-10-27 2000-04-11 International Business Machines Corporation System and method for controlling the downloading and display of an animated sequence from a network
US6311223B1 (en) 1997-11-03 2001-10-30 International Business Machines Corporation Effective transmission of documents in hypertext markup language (HTML)
US6157924A (en) 1997-11-07 2000-12-05 Bell & Howell Mail Processing Systems Company Systems, methods, and computer program products for delivering information in a preferred medium
US6275829B1 (en) 1997-11-25 2001-08-14 Microsoft Corporation Representing a graphic image on a web page with a thumbnail-sized image
US6058428A (en) 1997-12-05 2000-05-02 Pictra, Inc. Method and apparatus for transferring digital images on a network
US6122666A (en) 1998-02-23 2000-09-19 International Business Machines Corporation Method for collaborative transformation and caching of web objects in a proxy network
US6247048B1 (en) 1998-04-30 2001-06-12 Openwave Systems Inc Method and apparatus for transcoding character sets between internet hosts and thin client devices over data networks
US6578073B1 (en) * 1998-05-13 2003-06-10 Hewlett-Packard Development Company, L.P. Accelerated content delivery over a network using reduced size objects
US6810409B1 (en) * 1998-06-02 2004-10-26 British Telecommunications Public Limited Company Communications network
US6266369B1 (en) 1998-06-09 2001-07-24 Worldgate Service, Inc. MPEG encoding technique for encoding web pages
US6128655A (en) 1998-07-10 2000-10-03 International Business Machines Corporation Distribution mechanism for filtering, formatting and reuse of web based content
US6563517B1 (en) 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
KR100415996B1 (ko) * 1998-10-12 2004-01-31 삼성전자주식회사 웹서버에 의한 html문서의 제공방법
US6405222B1 (en) * 1998-12-17 2002-06-11 International Business Machines Corporation Requesting concurrent entries via bookmark set
US6345279B1 (en) 1999-04-23 2002-02-05 International Business Machines Corporation Methods and apparatus for adapting multimedia content for client devices
JP2002544597A (ja) * 1999-05-07 2002-12-24 アーゴウ インターラクティブ リミテッド リンクデータアイテムに対するディスプレイテキスト修正
US6993476B1 (en) * 1999-08-26 2006-01-31 International Business Machines Corporation System and method for incorporating semantic characteristics into the format-driven syntactic document transcoding framework
IL132284A0 (en) * 1999-10-08 2001-03-19 Menachem Reinschmidt System and method for content analysis and minimization
US6449658B1 (en) * 1999-11-18 2002-09-10 Quikcat.Com, Inc. Method and apparatus for accelerating data through communication networks
US6728785B1 (en) * 2000-06-23 2004-04-27 Cloudshield Technologies, Inc. System and method for dynamic compression of data
US7047281B1 (en) * 2000-08-08 2006-05-16 Fineground Networks Method and system for accelerating the delivery of content in a networked environment
US6631298B1 (en) 2002-07-31 2003-10-07 Smar Research Corporation System and method for providing information in a particular format

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10228437A (ja) * 1996-06-03 1998-08-25 Webtv Networks Inc 分散ネットワークにおける文書の代理処理とトランスコーディングの方法および装置
JPH10283233A (ja) * 1997-04-07 1998-10-23 Pfu Ltd Html文書形式アプリケーションの実行方法及びhtml文書変換ツール記憶媒体
JP2000090001A (ja) * 1998-08-05 2000-03-31 Spyglass Inc 変換設定を使用した電子デ―タの変換方法およびシステム
JP2000076155A (ja) * 1998-09-01 2000-03-14 Mitsubishi Materials Corp Htmlドキュメント圧縮・展開・表示方式
JP2000194612A (ja) * 1998-12-28 2000-07-14 Spyglass Inc 電子デ―タの内容を無線装置用に変換する方法およびシステム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107487A (ja) * 2004-09-29 2006-04-20 Internatl Business Mach Corp <Ibm> ネットワークを介してコンテンツを提供するための方法、システム及びプログラム
JP2009530706A (ja) * 2006-03-15 2009-08-27 マイクロソフト コーポレーション 代替的グラフィック・セットの効率的な符号化
US8244051B2 (en) 2006-03-15 2012-08-14 Microsoft Corporation Efficient encoding of alternative graphic sets
JP2012198882A (ja) * 2006-03-15 2012-10-18 Microsoft Corp 代替的グラフィック・セットの効率的な符号化
US8351716B2 (en) 2006-03-15 2013-01-08 Microsoft Corporation Efficient encoding of alternative graphic sets

Also Published As

Publication number Publication date
US6834297B1 (en) 2004-12-21
KR20020048398A (ko) 2002-06-22
EP1323047A1 (en) 2003-07-02
US7308490B2 (en) 2007-12-11
CA2385225A1 (en) 2002-04-18
US20050080876A1 (en) 2005-04-14
AU2001286975A1 (en) 2002-04-22
WO2002031668A1 (en) 2002-04-18
EP1323047A4 (en) 2005-03-16

Similar Documents

Publication Publication Date Title
US6834297B1 (en) Web resource transfer acceleration system and method
US7249196B1 (en) Web page source file transfer system and method
US6662218B2 (en) Method of transcoding documents in a network environment using a proxy server
US5778372A (en) Remote retrieval and display management of electronic document with incorporated images
US8312074B2 (en) Method for multipart encoding
US6421733B1 (en) System for dynamically transcoding data transmitted between computers
US6957260B1 (en) Method of improving access to services provided by a plurality of remote service providers
US20040168122A1 (en) System, method and computer readable medium for transferring and rendering a web page
US20070226612A1 (en) Server-side html customization based on style sheets and target device
JP2002229842A (ja) Httpアーカイブ・ファイル
JP2004518218A (ja) マルチメディア・コンテンツを動的に最適化してネットワーク配信する方法及び装置
KR20010111380A (ko) 인터넷 서비스 장치 및 서비스 방법
EP1041497B1 (en) Information fetching control scheme using data type dependent strategy for reducing user response time
US20030106025A1 (en) Method and system for providing XML-based web pages for non-pc information terminals
JP2004005655A (ja) インターネット・ダウンロード方法
US7447738B1 (en) Component download selection mechanism for web browsers
KR20020003856A (ko) 콘텐트 분석 및 최소화를 위한 시스템 및 방법
EP2400719A1 (en) Pre-fetching system comprising content preprocessor
US7003584B1 (en) Apparatus and method for accessing request header information using a transcoding filter servlet
KR100351478B1 (ko) 웹 브라우저의 개인기호 설정 및 사용방법
JP2000090000A (ja) クライアントコンピュ―タの操作方法
EP1701508B1 (en) Method for dynamically transcoding data transmitted between computers
JP2005327150A (ja) 情報配信システムおよび情報配信方法
WO2002029585A1 (en) Image transfer system and method
JP2000020415A (ja) Wwwサーバプロキシとwwwブラウザプロキシおよびwwwシステム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060131

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060228