JP2007293894A - サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム - Google Patents
サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム Download PDFInfo
- Publication number
- JP2007293894A JP2007293894A JP2007154535A JP2007154535A JP2007293894A JP 2007293894 A JP2007293894 A JP 2007293894A JP 2007154535 A JP2007154535 A JP 2007154535A JP 2007154535 A JP2007154535 A JP 2007154535A JP 2007293894 A JP2007293894 A JP 2007293894A
- Authority
- JP
- Japan
- Prior art keywords
- data
- fingerprint
- compression
- differential compression
- differential
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】サーバ側プロキシ230からクライアント側プロキシ240へ新たな内容のリプライデータを転送するにあたって、両プロキシ2にて、該データと該データにハッシュ関数を適用して算出したフィンガープリントとを対応付けて、フィンガープリント・キャッシュに登録しておく。サーバ側プロキシ230からクライアント側プロキシ240へフィンガープリント・キャッシュに登録されたフィンガープリントと同じフィンガープリントを持つリプライデータを転送するにあたっては、該リプライデータの代わりに該フィンガープリントを転送し、同じフィンガープリントが登録されていないが、他の登録データを参照データとして参照データのフィンガープリントを利用することによって転送すべきデータを圧縮して表現できるならば、圧縮データを転送する。
【選択図】 図1
Description
・ユーザの認証を行い、アクセスできるユーザを制限しているので、プライベートデータが多い。
・バックエンドのデータベースを参照して生成する動的データが多い。
・帳票処理や検索などPOSTメソッドを使う場合が多い。
・グループ内の情報共有のためにPUTメソッドを使う場合が多い。
この結果、キャッシュ技術のみではネットワークの負荷を軽減する手法として有効に機能しなくなってきている。
好ましくは、前記サーバ側プロキシ装置は、前記サーバ装置から前記データを受信する手段と、受信された前記データのフィンガープリントを生成する手段と、生成された前記フィンガープリントを、該フィンガープリントの元であった前記データに関連付けてサーバ側フィンガープリント・キャッシュとして保持する手段と、受信された前記データに基づいて生成された前記フィンガープリントが前記サーバ側フィンガープリント・キャッシュに保持されていない場合に、受信された前記データの一つの部分若しくは複数の部分について、当該部分ごとに、前記フィンガープリント・キャッシュに保持されている前記参照データのうち、当該部分と同一の内容を含む参照データに関連付けられたフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報を求め、該圧縮情報と、前記受信手段が受信した前記データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを生成する差分圧縮処理手段と、この差分圧縮処理手段が生成した前記差分圧縮表現データのデータ量につき、該差分圧縮表現データの元であった前記データのデータ量と該差分圧縮表現データのデータ量とにより算出される、圧縮の程度を示す値が、基準値以上であるか否かを判定する差分表現可否判定手段と、前記データを受信した際に、該データに基づいて生成された前記フィンガープリントが前記サーバ側フィンガープリント・キャッシュに保持されている場合には、該フィンガープリントの元であったデータの代わりに該フィンガープリントを含むフィンガープリント圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、該フィンガープリントが前記サーバ側フィンガープリント・キャッシュに保持されていない場合には、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上であると前記差分表現可否判定手段が判定したときは、該フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記サーバ側フィンガープリント・キャッシュに追加し、且つ、該差分圧縮表現データの元であったデータの代わりに該差分圧縮表現データを含む差分圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上でないと前記差分表現可否判定手段が判定したときは、該フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記サーバ側フィンガープリント・キャッシュに追加し、且つ、当該受信したデータを含む非圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信する手段とを有するものであるようにしてもよい。
・フィンガープリント・キャッシュに登録されているデータのうちの1つを参照データとする。プロキシ間では、参照データに対応するフィンガープリントの値と、転送データと参照データとの差分を示す情報とを転送する。
・上記の方法において、参照データとの差分の全部または一部についても、フィンガープリント・キャッシュに登録されているデータを利用する。あるいは、フィンガープリント・キャッシュに登録されているデータ(の全体または部分)を組み合わせることによって転送データの全部または一部を表現する。例えば、フィンガープリント・キャッシュに登録されているデータのうち任意数のものを参照データとする。プロキシ間では、参照データに対応するフィンガープリントの値と、参照データのうち転送データの復元に使用する部分を示す情報と、その部分をもとにした転送データの復元方法を示す情報とを転送する。
(1−1)差分圧縮処理部2324にて、受信したリプライメッセージを、(必要に応じて該フィンガープリントの値を用いて)差分圧縮時のフォーマットにして(例えば図15(b)等)、送信部233から、クライアント側プロキシ240へ送信する(ステップS209)。
(1−2)FPキャッシュ管理部2322にて、該フィンガープリントの値と、該リプライメッセージとを対応付けて(フィンガープリントの値をキーにして)、フィンガープリント・キャッシュ234に登録する(ステップS211)。
(2−1)差分圧縮処理部2324にて、受信したリプライメッセージを、非圧縮時のフォーマットにして(例えば図15(a)等)、送信部233から、クライアント側プロキシ240へ送信する(ステップS210)。
(2−2)FPキャッシュ管理部2322にて、該フィンガープリントの値と、該リプライメッセージとを対応付けて(フィンガープリントの値をキーにして)、フィンガープリント・キャッシュ234に登録する(ステップS211)。
(1−1)差分解凍処理部2424にて、(FPキャッシュ管理部2422によりし参照データを検索・取得した後に)差分圧縮データを解凍して元のリプライデータを復元し(ステップS218)、該復元したリプライデータをリプライメッセージに付加し、またプロキシ間で特別の情報を使用する場合には受信リプライメッセージから該情報を削除し、該リプライメッセージを送信部243からクライアント250へ送信する(ステップS219)。
(1−2)FPキャッシュ管理部2422にて、該リプライデータのフィンガープリントの値を求め(ステップS220)、該フィンガープリントの値と、該リプライメッセージとを対応付けて(フィンガープリントの値をキーにして)、フィンガープリント・キャッシュ234に登録する(ステップS223)。
(2−1)差分解凍処理部2424にて、プロキシ間で特別の情報を使用する場合には受信リプライメッセージから該情報を削除した後に、これを送信部243からクライアント250へ送信する(ステップS222)。
(2−2)FPキャッシュ管理部2422にて、該リプライデータのフィンガープリントの値を求め(ステップS221)、該フィンガープリントの値と、該リプライメッセージとを対応付けて(フィンガープリントの値をキーにして)、フィンガープリント・キャッシュ234に登録する(ステップS223)。
このハッシュ表を使って、差分圧縮したいデータの現在のポインタの位置から予め定められた長さの文字列のハッシュ値を求め、そのハッシュ値を使ってハッシュ表を引いて求めたデータが、ステップS233で選ぶべきデータの第1の候補になる。ここで、異なる文字列でも同じハッシュ値を生成する場合があるので、本当に同じかどうかは文字列を実際に比較して確認し、同じでなければ、履歴表のデータを順に見るなど方法で次の候補を探す。
もちろん、このように行を単位として比較する構成についても、上記のハッシュ技法を組み合わせることができる。この場合、連続する複数行を組み合わせて、予め定められた長さと同じか長くなる最少の行数を単位としてハッシュ表に登録すればよい。
・そのフィンガープリントは以降使用しないものとする(そのフィンガープリントを与えるデータは以後キャッシュされないことになる)。
・先に登録されているフィンガープリント/データを優先する(登録中のフィンガープリントと同じ値のフィンガープリントを与える他のデータは、その登録中はキャッシュされないことになる)。
・現在登録対象となっているフィンガープリント/データを優先する(登録中のフィンガープリント/データは、同じ値のフィンガープリントを与える他のデータによって次々と更新されていくことになる)。
また、本実施形態は、コンピュータに所定の手段を実行させるための(あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるための)プログラムとして実施することもでき、該プログラムを記録したコンピュータ読取り可能な記録媒体として実施することもできる。
また、この発明の実施の形態で例示した各種構成部分についての各種バリエーションは、適宜組み合わせて実施することが可能である。
従って、この発明の実施の形態に開示した内容からは、例示した構成に限定されることなく発明を抽出することができるものである。
230…サーバ側プロキシ装置、240…クライアント側プロキシ装置、250…クライアント装置、231,241…受信部、232,242…処理部、233,243…送信部、234,244…フィンガープリント・キャッシュ、2321,2421…FP圧縮判定部、2322,2422…フィンガープリント・キャッシュ管理部、2323…FP圧縮処理部、2423…FP解凍処理部、2324…差分圧縮処理部、2424…差分解凍処理部、2325,2425…FP解凍・解凍処理部、2326,2426…差分解凍・解凍処理部
Claims (23)
- サーバ装置から送信されたデータを受信し、該データをその宛先となるクライアント装置に通ずるクライアント側プロキシ装置へ送信するサーバ側プロキシ装置であって、
前記サーバ装置から前記データを受信する受信手段と、
この受信手段が受信したデータのフィンガープリントを生成するフィンガープリント生成手段と、
前記受信手段が受信した前記データを参照データとして、該参照データに基づいて前記フィンガープリント生成手段が生成した前記フィンガープリントを、該参照データに関連付けてフィンガープリント・キャッシュとして保持するための保持手段と、
前記受信手段が受信したデータに基づいて前記フィンガープリント生成手段が生成した前記フィンガープリントが、前記フィンガープリント・キャッシュに保持されているか否か判定する第1の判定手段と、
前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていないと前記第1の判定手段が判定した場合に、前記受信手段が受信した前記データの一つの部分若しくは複数の部分について、当該部分ごとに、前記フィンガープリント・キャッシュに保持されている前記参照データのうち、当該部分と同一の内容を含む参照データに関連付けられたフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報を求め、該圧縮情報と、前記受信手段が受信した前記データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを生成する差分圧縮処理手段と、
この差分圧縮処理手段が生成した前記差分圧縮表現データのデータ量につき、該差分圧縮表現データの元であった前記データのデータ量と該差分圧縮表現データのデータ量とにより算出される、圧縮の程度を示す値が、基準値以上であるか否かを判定する第2の判定手段と、
前記受信手段が前記データを受信した際に、前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていると前記第1の判定手段が判定した場合には、該フィンガープリントの元であったデータの代わりに該フィンガープリントを含むフィンガープリント圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていないと前記第1の判定手段が判定した場合には、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上であると前記第2の判定手段が判定したときは、前記フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該差分圧縮表現データの元であったデータの代わりに該差分圧縮表現データを含む差分圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上でないと前記第2の判定手段が判定したときは、前記フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記フィンガープリント・キャッシュに追加し、且つ、当該受信したデータを含む非圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信する送信手段とを備えたことを特徴とするサーバ側プロキシ装置。 - 前記送信手段は、前記差分圧縮時データ又は前記非圧縮時データを送信する際には、前記差分圧縮時データと前記非圧縮時データとの少なくとも一方について、前記差分圧縮時データにあっては該差分圧縮時データに含まれる差分圧縮表現データの元であったデータのフィンガープリントを付加し、前記非圧縮時データにあっては該非圧縮時データに含まれるデータのフィンガープリントを付加して送信することを特徴とする請求項1に記載のサーバ側プロキシ装置。
- 前記送信手段は、前記差分圧縮時データ又は前記非圧縮時データを送信する際には、前記差分圧縮時データと前記非圧縮時データとのいずれについても、前記フィンガープリントを付加しないで送信することを特徴とする請求項1に記載のサーバ側プロキシ装置。
- 前記差分圧縮時データに含まれる前記差分圧縮表現データは、前記圧縮情報として、1又は複数の前記参照データに対応する前記フィンガープリントと、当該各参照データからコピーすべき内容のオフセット及び長さを示す箇所情報とを含ものであるとともに、前記圧縮情報及び前記直接指定情報に加えて、当該各参照データからコピーした内容及び前記直接指定情報が示す内容の接続方法を示す情報を含むものであることを特徴とする請求項1に記載のサーバ側プロキシ装置。
- 前記差分圧縮時データに含まれる前記差分圧縮表現データは、前記圧縮情報として、1つの前記参照データに対応する前記フィンガープリントと、該参照データのうち該差分圧縮表現データの元となったデータと相違する部分を示す箇所情報とを含み、前記直接指定情報として、該相違する部分に嵌め込むべき内容を含むものであることを特徴とする請求項1に記載のサーバ側プロキシ装置。
- 前記サーバ側プロキシ装置は、ローカルエリアネットワークを介して前記サーバ装置と接続されたものであることを特徴とする請求項1に記載のサーバ側プロキシ装置。
- 前記サーバ装置から受信する前記データは、前記クライアント装置が送信し前記クライアント側プロキシ装置及び前記サーバ側プロキシ装置を介して該サーバ装置へ転送されたリクエストデータへの返答として、該サーバ装置が送信するリプライデータであることを特徴とする請求項1ないし6のいずれか1項に記載のサーバ側プロキシ装置。
- サーバ装置から送信されたデータをサーバ側プロキシ装置を介して受信し、該データをその宛先となるクライアント装置へ送信するクライアント側プロキシ装置であって、
前記データを参照データとして、該参照データのフィンガープリントを、該参照データに関連付けてフィンガープリント・キャッシュとして保持するための保持手段と、
前記サーバ側プロキシ装置から、前記データの代わりに当該データのフィンガープリントを含むフィンガープリント圧縮時データ、当該データの代わりに、該データの一つの部分若しくは複数の部分について、当該部分ごとに指定された、当該部分と同一の内容を含む参照データのフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報と、該データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを含む差分圧縮時データ、又は当該データを含む非圧縮時データを受信するための受信手段と、
この受信手段が受信したデータが、前記フィンガープリント圧縮時データであるか、前記差分圧縮時データであるか又は前記非圧縮時データであるかを判定する種別判定手段と、
前記受信手段が前記差分圧縮時データを受信したと、前記種別判定手段が判定した場合に、該差分圧縮時データに含まれる前記差分圧縮表現データが含む、該差分圧縮表現データの元であったデータにおける前記部分に対応する前記圧縮情報が含む前記フィンガープリントと前記箇所情報との組を参照して、当該部分ごとに、前記フィンガープリント・キャッシュから当該識別子及び当該箇所情報をもとに当該部分と同一の内容を取得し、取得した当該部分と同一の内容と、前記差分圧縮表現データが含む直接指定情報とを用いて、該差分圧縮表現データの元であったデータを復元する復元処理手段と、
前記受信手段が前記フィンガープリント圧縮時データを受信したと、前記種別判定手段が判定した場合には、該圧縮データに含まれるフィンガープリントに関連付けて前記フィンガープリント・キャッシュに保持されているデータを、前記宛先となる前記クライアント装置へ送信し、前記受信手段が前記差分圧縮時データを受信したと、前記種別判定手段が判定した場合には、前記復元処理手段が該差分圧縮時データに含まれる差分圧縮表現データに基づいて復元したデータを、該データに基づいて生成された前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該データを、前記宛先となる前記クライアント装置へ送信し、前記受信手段が前記非圧縮時データを受信したと、前記種別判定手段が判定した場合には、該非圧縮時データに含まれるデータを、該データに基づいて生成された前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該データを、前記宛先となる前記クライアント装置へ送信する送信手段とを備えたことを特徴とするクライアント側プロキシ装置。 - 前記サーバ側プロキシ装置は、
前記サーバ装置から前記データを受信する手段と、
受信された前記データのフィンガープリントを生成する手段と、
生成された前記フィンガープリントを、該フィンガープリントの元であった前記データに関連付けてサーバ側フィンガープリント・キャッシュとして保持する手段と、
受信された前記データに基づいて生成された前記フィンガープリントが前記サーバ側フィンガープリント・キャッシュに保持されていない場合に、受信された前記データの一つの部分若しくは複数の部分について、当該部分ごとに、前記フィンガープリント・キャッシュに保持されている前記参照データのうち、当該部分と同一の内容を含む参照データに関連付けられたフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報を求め、該圧縮情報と、前記受信手段が受信した前記データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを生成する差分圧縮処理手段と、
この差分圧縮処理手段が生成した前記差分圧縮表現データのデータ量につき、該差分圧縮表現データの元であった前記データのデータ量と該差分圧縮表現データのデータ量とにより算出される、圧縮の程度を示す値が、基準値以上であるか否かを判定する差分表現可否判定手段と、
前記データを受信した際に、該データに基づいて生成された前記フィンガープリントが前記サーバ側フィンガープリント・キャッシュに保持されている場合には、該フィンガープリントの元であったデータの代わりに該フィンガープリントを含むフィンガープリント圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、該フィンガープリントが前記サーバ側フィンガープリント・キャッシュに保持されていない場合には、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上であると前記差分表現可否判定手段が判定したときは、該フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記サーバ側フィンガープリント・キャッシュに追加し、且つ、該差分圧縮表現データの元であったデータの代わりに該差分圧縮表現データを含む差分圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上でないと前記差分表現可否判定手段が判定したときは、該フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記サーバ側フィンガープリント・キャッシュに追加し、且つ、当該受信したデータを含む非圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信する手段とを有するものであることを特徴とする請求項8に記載のクライアント側プロキシ装置。 - 前記受信手段が前記差分圧縮時データを受信したと、前記種別判定手段が判定した場合に、前記復元処理手段が該差分圧縮時データに含まれる差分圧縮表現データに基づいて復元したデータに基づいて、該データのフィンガープリントを生成し、前記受信手段が前記非圧縮時データを受信したと、前記種別判定手段が判定した場合に、該非圧縮時データに含まれるデータに基づいて、該データのフィンガープリントを生成するフィンガープリント生成手段を更に備え、
前記送信手段は、受信した前記差分圧縮時データについては、該差分圧縮時データに含まれる差分圧縮表現データに基づいて前記復元処理手段が復元したデータを、該データに基づいて前記フィンガープリント生成手段が生成したフィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、受信した前記非圧縮時データについては、該非圧縮時データに含まれるデータを、該データに基づいてフィンガープリント生成手段が生成したフィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加することを特徴とする請求項8または9に記載のクライアント側プロキシ装置。 - 前記受信手段が受信した前記差分圧縮時データには、該差分圧縮時データに含まれる差分圧縮表現データの元であったデータに基づいて生成されたフィンガープリントが含まれ、
前記クライアント側プロキシ装置は、前記受信手段が前記非圧縮時データを受信したと、前記種別判定手段が判定した場合に、該非圧縮時データに含まれる前記データに基づいて、該データのフィンガープリントを生成するフィンガープリント生成手段を更に備え、
前記送信手段は、受信した前記差分圧縮時データについては、該差分圧縮時データに含まれる差分圧縮表現データに基づいて前記復元処理手段が復元したデータを、該差分圧縮時データに含まれるフィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、受信した前記非圧縮時データについては、該非圧縮時データに含まれるデータを、該データに基づいてフィンガープリント生成手段が生成した前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加することを特徴とする請求項8または9に記載のクライアント側プロキシ装置。 - 前記受信手段が受信した前記非圧縮時データには、該非圧縮時データに含まれるデータに基づいて生成されたフィンガープリントが含まれ、
前記クライアント側プロキシ装置は、前記受信手段が前記差分圧縮時データを受信したと、前記種別判定手段が判定した場合に、該差分圧縮時データに含まれる差分圧縮表現データに基づいて前記復元処理手段が復元した前記データに基づいて、該データのフィンガープリントを生成するフィンガープリント生成手段を更に備え、
前記送信手段は、受信した前記圧縮縮データについては、該差分圧縮時データに含まれる差分圧縮表現データに基づいて前記復元処理手段が復元した前記データを、該データに基づいてフィンガープリント生成手段が生成した前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、受信した前記非圧縮時データについては、前記データを、該非圧縮時データに含まれる前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加することを特徴とする請求項8または9に記載のクライアント側プロキシ装置。 - 前記受信手段が受信した前記差分圧縮時データには、該差分圧縮時データに含まれる差分圧縮表現データの元であったデータに基づいて生成されたフィンガープリントが含まれ、
前記受信手段が受信した前記非圧縮時データには、該非圧縮時データに含まれるデータに基づいて生成されたフィンガープリントが含まれ、
前記送信手段は、受信した前記差分圧縮時データについては、該差分圧縮時データに含まれる差分圧縮表現データに基づいて前記復元処理手段が復元したデータを、該差分圧縮時データに含まれるフィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、受信した前記非圧縮時データについては、前記データを、該非圧縮時データに含まれる前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加することを特徴とする請求項8または9に記載のクライアント側プロキシ装置。 - 前記フィンガープリント圧縮時データは、それがフィンガープリント圧縮時データであることを示す識別情報を含むものであり、前記差分圧縮時データは、それが差分圧縮時データであることを示す識別情報を含むものであり、前記非圧縮時データは、それが非圧縮時データであることを示す識別情報を含むものであり、
前記種別判定手段は、前記識別情報に基づいて前記判定を行うことを特徴とする請求項8または9に記載のクライアント側プロキシ装置。 - 前記フィンガープリント圧縮時データは、そのヘッダに前記フィンガープリントを含み、そのボディーはNULLであり、前記差分圧縮時データは、それが差分圧縮時データであることを示す差分圧縮フラグをそのヘッダに含み、前記差分圧縮表現データをそのボディーに含み、且つ、そのヘッダとボディーのいずれにも前記フィンガープリントを含まないものであり、前記非圧縮時データは、それが非圧縮時データであることを示す非圧縮フラグをそのヘッダに含み、前記データをそのボディーに含み、且つ、そのヘッダとボディーのいずれにも前記フィンガープリントを含まないものであり、
前記種別判定手段は、前記ヘッダに前記フィンガープリントが含まれるか又は前記ボディーがNULLであることを検出した場合に、前記受信手段が受信したデータが、前記フィンガープリント圧縮時データであると判断し、前記ヘッダに前記差分圧縮フラグを検出した場合に、前記受信手段が受信したデータが、前記差分圧縮時データであると判断し、前記ヘッダに前記非圧縮フラグを検出した場合に、前記受信手段が受信したデータが、前記非圧縮時データであると判断することを特徴とする請求項8または9に記載のクライアント側プロキシ装置。 - 前記差分圧縮時データに含まれる前記差分圧縮表現データは、前記圧縮情報として、1又は複数の前記参照データに対応する前記フィンガープリントと、当該各参照データからコピーすべき内容のオフセット及び長さを示す箇所情報とを含ものであるとともに、前記圧縮情報及び前記直接指定情報に加えて、当該各参照データからコピーした内容及び前記直接指定情報が示す内容の接続方法を示す情報を含むものであることを特徴とする請求項8または9に記載のクライアント側プロキシ装置。
- 前記差分圧縮時データに含まれる前記差分圧縮表現データは、前記圧縮情報として、1つの前記参照データに対応する前記フィンガープリントと、該参照データのうち該差分圧縮表現データの元となったデータと相違する部分を示す箇所情報とを含み、前記直接指定情報として、該相違する部分に嵌め込むべき内容を含むものであることを特徴とする請求項8または9に記載のクライアント側プロキシ装置。
- 前記クライアント側プロキシ装置は、ローカルエリアネットワークを介して前記クライアント装置と接続されたものであることを特徴とする請求項8または9に記載のクライアント側プロキシ装置。
- 前記サーバ装置から受信する前記データは、前記クライアント装置が送信し前記クライアント側プロキシ装置及び前記サーバ側プロキシ装置を介して該サーバ装置へ転送されたリクエストデータへの返答として、該サーバ装置が送信するリプライデータであることを特徴とする請求項8ないし18のいずれか1項に記載のクライアント側プロキシ装置。
- サーバ装置から送信されたデータを受信し、該データをその宛先となるクライアント装置に通ずるクライアント側プロキシ装置へ送信するものであるとともに、前記データを参照データとして、該参照データのフィンガープリントを、該参照データに関連付けてフィンガープリント・キャッシュとして保持するための保持手段を備えたサーバ側プロキシ装置のデータ転送方法であって、
前記サーバ装置から前記データを受信し、
受信した前記データのフィンガープリントを生成し、
受信した前記データに基づいて生成された前記フィンガープリントが、前記フィンガープリント・キャッシュに保持されているか否か判定し、
前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていないと判定された場合に、受信した前記データの一つの部分若しくは複数の部分について、当該部分ごとに、前記フィンガープリント・キャッシュに保持されている前記参照データのうち、当該部分と同一の内容を含む参照データに関連付けられたフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報を求め、該圧縮情報と、受信した前記データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを生成し、
生成された前記差分圧縮表現データのデータ量につき、該差分圧縮表現データの元であった前記データのデータ量と該差分圧縮表現データのデータ量とにより算出される、圧縮の程度を示す値が、基準値以上であるか否かを判定し、
前記データを受信した際に、前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていると判定された場合には、該フィンガープリントの元であったデータの代わりに該フィンガープリントを含むフィンガープリント圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていないと判定された場合には、生成された前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上であると判定されたときは、前記フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該差分圧縮表現データの元であったデータの代わりに該差分圧縮表現データを含む差分圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、生成された前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上でないと判定されたときは、前記フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記フィンガープリント・キャッシュに追加し、且つ、当該受信したデータを含む非圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信することを特徴とするデータ転送方法。 - サーバ装置から送信されたデータをサーバ側プロキシ装置を介して受信し、該データをその宛先となるクライアント装置へ送信するものであるとともに、前記データを参照データとして、該参照データのフィンガープリントを、該参照データに関連付けてフィンガープリント・キャッシュとして保持するための保持手段を備えたクライアント側プロキシ装置のデータ転送方法であって、
前記サーバ側プロキシ装置から、前記データの代わりに当該データのフィンガープリントを含むフィンガープリント圧縮時データ、当該データの代わりに、該データの一つの部分若しくは複数の部分について、当該部分ごとに指定された、当該部分と同一の内容を含む参照データのフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報と、該データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを含む差分圧縮時データ、又は当該データを含む非圧縮時データを受信し、
受信された前記データが、前記フィンガープリント圧縮時データであるか、前記差分圧縮時データであるか又は前記非圧縮時データであるかを判定し、
前記差分圧縮時データを受信したと判定された場合に、該差分圧縮時データに含まれる前記差分圧縮表現データが含む、該差分圧縮表現データの元であったデータにおける前記部分に対応する前記圧縮情報が含む前記フィンガープリントと前記箇所情報との組を参照して、当該部分ごとに、前記フィンガープリント・キャッシュから当該識別子及び当該箇所情報をもとに当該部分と同一の内容を取得し、取得した当該部分と同一の内容と、前記差分圧縮表現データが含む直接指定情報とを用いて、該差分圧縮表現データの元であったデータを復元し、
前記フィンガープリント圧縮時データを受信したと判定された場合には、該圧縮データに含まれるフィンガープリントに関連付けて前記フィンガープリント・キャッシュに保持されているデータを、前記宛先となる前記クライアント装置へ送信し、前記差分圧縮時データを受信したと判定された場合には、該差分圧縮時データに含まれる差分圧縮表現データに基づいて復元された前記データを、該データに基づいて生成された前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該データを、前記宛先となる前記クライアント装置へ送信し、前記非圧縮時データを受信したと判定された場合には、該非圧縮時データに含まれるデータを、該データに基づいて生成された前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該データを、前記宛先となる前記クライアント装置へ送信することを特徴とするデータ転送方法。 - サーバ装置から送信されたデータを受信し、該データをその宛先となるクライアント装置に通ずるクライアント側プロキシ装置へ送信するサーバ側プロキシ装置としてコンピュータを機能させるためのプログラムであって、
前記サーバ装置から前記データを受信する受信手段と、
この受信手段が受信したデータのフィンガープリントを生成するフィンガープリント生成手段と、
前記受信手段が受信した前記データを参照データとして、該参照データに基づいて前記フィンガープリント生成手段が生成した前記フィンガープリントを、該参照データに関連付けてフィンガープリント・キャッシュとして保持するための保持手段と、
前記受信手段が受信したデータに基づいて前記フィンガープリント生成手段が生成した前記フィンガープリントが、前記フィンガープリント・キャッシュに保持されているか否か判定する第1の判定手段と、
前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていないと前記第1の判定手段が判定した場合に、前記受信手段が受信した前記データの一つの部分若しくは複数の部分について、当該部分ごとに、前記フィンガープリント・キャッシュに保持されている前記参照データのうち、当該部分と同一の内容を含む参照データに関連付けられたフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報を求め、該圧縮情報と、前記受信手段が受信した前記データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを生成する差分圧縮処理手段と、
この差分圧縮処理手段が生成した前記差分圧縮表現データのデータ量につき、該差分圧縮表現データの元であった前記データのデータ量と該差分圧縮表現データのデータ量とにより算出される、圧縮の程度を示す値が、基準値以上であるか否かを判定する第2の判定手段と、
前記受信手段が前記データを受信した際に、前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていると前記第1の判定手段が判定した場合には、該フィンガープリントの元であったデータの代わりに該フィンガープリントを含むフィンガープリント圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記フィンガープリントが前記フィンガープリント・キャッシュに保持されていないと前記第1の判定手段が判定した場合には、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上であると前記第2の判定手段が判定したときは、前記フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該差分圧縮表現データの元であったデータの代わりに該差分圧縮表現データを含む差分圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信し、前記差分圧縮処理手段が生成した前記差分圧縮表現データにつき、前記圧縮の程度を示す値が前記基準値以上でないと前記第2の判定手段が判定したときは、前記フィンガープリントと該フィンガープリントの元であったデータとを関連付けて前記フィンガープリント・キャッシュに追加し、且つ、当該受信したデータを含む非圧縮時データを、前記宛先となるクライアント装置宛として前記クライアント側プロキシ装置へ送信する送信手段としてコンピュータを機能させるためのプログラム。 - サーバ装置から送信されたデータをサーバ側プロキシ装置を介して受信し、該データをその宛先となるクライアント装置へ送信するクライアント側プロキシ装置としてコンピュータを機能させるためのプログラムであって、
前記データを参照データとして、該参照データのフィンガープリントを、該参照データに関連付けてフィンガープリント・キャッシュとして保持するための保持手段と、
前記サーバ側プロキシ装置から、前記データの代わりに当該データのフィンガープリントを含むフィンガープリント圧縮時データ、当該データの代わりに、該データの一つの部分若しくは複数の部分について、当該部分ごとに指定された、当該部分と同一の内容を含む参照データのフィンガープリントと、当該参照データにおいて当該同一の内容の存在する箇所を特定可能とする箇所情報との組からなる圧縮情報と、該データから該圧縮情報に対応する部分を除外した残りの内容を示す直接指定情報とを含む差分圧縮表現データを含む差分圧縮時データ、又は当該データを含む非圧縮時データを受信するための受信手段と、
この受信手段が受信したデータが、前記フィンガープリント圧縮時データであるか、前記差分圧縮時データであるか又は前記非圧縮時データであるかを判定する種別判定手段と、
前記受信手段が前記差分圧縮時データを受信したと、前記種別判定手段が判定した場合に、該差分圧縮時データに含まれる前記差分圧縮表現データが含む、該差分圧縮表現データの元であったデータにおける前記部分に対応する前記圧縮情報が含む前記フィンガープリントと前記箇所情報との組を参照して、当該部分ごとに、前記フィンガープリント・キャッシュから当該識別子及び当該箇所情報をもとに当該部分と同一の内容を取得し、取得した当該部分と同一の内容と、前記差分圧縮表現データが含む直接指定情報とを用いて、該差分圧縮表現データの元であったデータを復元する復元処理手段と、
前記受信手段が前記フィンガープリント圧縮時データを受信したと、前記種別判定手段が判定した場合には、該圧縮データに含まれるフィンガープリントに関連付けて前記フィンガープリント・キャッシュに保持されているデータを、前記宛先となる前記クライアント装置へ送信し、前記受信手段が前記差分圧縮時データを受信したと、前記種別判定手段が判定した場合には、前記復元処理手段が該差分圧縮時データに含まれる差分圧縮表現データに基づいて復元したデータを、該データに基づいて生成された前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該データを、前記宛先となる前記クライアント装置へ送信し、前記受信手段が前記非圧縮時データを受信したと、前記種別判定手段が判定した場合には、該非圧縮時データに含まれるデータを、該データに基づいて生成された前記フィンガープリントに関連付けて前記フィンガープリント・キャッシュに追加し、且つ、該データを、前記宛先となる前記クライアント装置へ送信する送信手段としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007154535A JP4157585B2 (ja) | 2007-06-11 | 2007-06-11 | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007154535A JP4157585B2 (ja) | 2007-06-11 | 2007-06-11 | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001069286A Division JP3990115B2 (ja) | 2001-03-12 | 2001-03-12 | サーバ側プロキシ装置及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007293894A true JP2007293894A (ja) | 2007-11-08 |
JP4157585B2 JP4157585B2 (ja) | 2008-10-01 |
Family
ID=38764387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007154535A Expired - Fee Related JP4157585B2 (ja) | 2007-06-11 | 2007-06-11 | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4157585B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011113443A (ja) * | 2009-11-30 | 2011-06-09 | Mitsubishi Electric Corp | ログ圧縮装置及びログ収集システム及びコンピュータプログラム及びログ圧縮方法 |
-
2007
- 2007-06-11 JP JP2007154535A patent/JP4157585B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011113443A (ja) * | 2009-11-30 | 2011-06-09 | Mitsubishi Electric Corp | ログ圧縮装置及びログ収集システム及びコンピュータプログラム及びログ圧縮方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4157585B2 (ja) | 2008-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3990115B2 (ja) | サーバ側プロキシ装置及びプログラム | |
US11647097B2 (en) | Providing access to managed content | |
US7636765B2 (en) | Data transfer scheme using caching technique for reducing network load | |
CN104081739B (zh) | 在覆盖网络中利用压缩和差异化引擎的基于主机/路径的数据差异化装置和系统 | |
US20090271527A1 (en) | Caching signatures | |
US20050027731A1 (en) | Compression dictionaries | |
JP2013512514A (ja) | キャッシュを利用した効率的なメディア配信のためのシステム及び方法 | |
US20090049243A1 (en) | Caching Dynamic Content | |
JP3848209B2 (ja) | データ転送装置、データ転送方法及びプログラム | |
JP2004310371A (ja) | ファイル共有システム及び方法、ファイル共有サーバ、ファイル共有サービスのクライアント端末、ファイル共有プログラム、ファイル共有プログラムを記録した記録媒体 | |
JP3984086B2 (ja) | キャッシュサーバ、データ転送装置及びプログラム | |
JP4031516B2 (ja) | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム | |
US20020107986A1 (en) | Methods and systems for replacing data transmission request expressions | |
JP3983987B2 (ja) | サーバ側プロキシ装置、データ転送方法及びプログラム | |
JP4053269B2 (ja) | データ転送装置およびデータ転送方法 | |
JP4157585B2 (ja) | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム | |
JP3943867B2 (ja) | サーバ側プロキシ、データ転送方法及びプログラム | |
JP3943868B2 (ja) | サーバ側プロキシ、データ転送方法及びプログラム | |
JP2003108464A (ja) | データ転送装置およびデータ転送方法 | |
JP3913508B2 (ja) | データ転送装置およびデータ転送方法 | |
JP4041157B2 (ja) | クライアント側プロキシ装置、データ転送方法及びプログラム | |
JP3977601B2 (ja) | サーバ側プロキシ装置、クライアント側プロキシ装置及びプログラム | |
JP4300220B2 (ja) | データ転送装置およびデータ転送方法 | |
JP3977651B2 (ja) | データ転送方法、サーバ側プロキシ装置、クライアント側プロキシ装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080415 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080616 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080708 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080711 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110718 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110718 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120718 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130718 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |