JP3913508B2 - データ転送装置およびデータ転送方法 - Google Patents
データ転送装置およびデータ転送方法 Download PDFInfo
- Publication number
- JP3913508B2 JP3913508B2 JP2001299132A JP2001299132A JP3913508B2 JP 3913508 B2 JP3913508 B2 JP 3913508B2 JP 2001299132 A JP2001299132 A JP 2001299132A JP 2001299132 A JP2001299132 A JP 2001299132A JP 3913508 B2 JP3913508 B2 JP 3913508B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- identification information
- server
- request
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Description
【発明の属する技術分野】
本発明は、他の装置のためにデータ転送を行うデータ転送装置およびデータ転送方法に関する。
【0002】
【従来の技術】
ネットワークを介して様々なサービスを提供するサーバと、所望のサービスをサーバに対して要求するクライアントとから構成される、クライアント・サーバ型の情報システムが広く利用されている。特に、インターネット上でHTTPプロトコルを使って通信するWEBサーバとクライアントとからなるWORLD WIDE WEBシステム(あるいは単にWEBとも呼ばれる)は、大変広く利用されているクライアント・サーバ型の情報システムである。通常、サーバ上ではサーバ・プログラムが動作し、クライアント上ではブラウザなどの所定のツール(プログラム)が動作する。インターネット上で提供されるサービスの内容も多岐に渡っており、ネットワーク経由で文字、静止画像、動画像、音声等の情報(例えば、ホームページ、電子メール、デジタルコンテンツなど)や、プログラムなどを提供、配信あるいは転送などするサービス、また商品を販売するための電子店舗サービス、座席や部屋等の予約サービス、種々の契約の仲介サービスなど、種々のサービスが既に存在し、また次々と新たな形態のサービスが出現している。
【0003】
ところで、WEBのようなクライアント・サーバ型の情報システムにおいては、提供されるサービスがどのような形態のものであろうと、基本的にはクライアント・サーバ間でデータ転送が行われることによってサービスが提供される。したがって、クライアントとサーバとの間で通信に用いるネットワークの容量(バンド幅)が、システム全体のボトルネックになりやすい。そこで、通常、ネットワークの負荷を軽減させるためにキャッシュ技術が用いられる。
【0004】
WEBシステムの場合、クライアント上で動作するブラウザ等はキャッシュ機構を使用するものが多く、最近アクセスしたデータをキャッシュしている。WEBではURLと呼ばれる名前で情報やサービスを指定してアクセスがなされるので、クライアント上のキャッシュは、過去にWEBサーバに要求した情報やサービスの結果として返されるデータのうちでキャッシュ可能なものを、そのURLと対応させてキャッシュに記録している。この場合、キャッシュ内にあるものと同じURLの情報やサービスのリクエストがあった際に、そのキャッシュ内の応答データが古くなっていないと判断できるならば、そのデータを返すことで、WEBサーバとの間の通信を無くすことができる。
【0005】
企業のオフィス内のLANあるいは研究機関におけるLANあるいは家庭内のLANなどで複数のユーザがいる場合、該LANとインターネットとの間にプロキシサーバを置き、プロキシサーバにキャッシュ機構を設けるようにすることも多い。クライアント内のキャッシュ(例えば、ブラウザのキャッシュ)は、当該クライアント・ユーザに専用のキャッシュとして動作するが、LAN上のプロキシサーバのキャッシュは、複数のクライアント・ユーザに共有のキャッシュとして動作する。そのため、後者では、過去に他人(他クライアント)がアクセスしたURLに対してアクセスする際にもキャッシュが効く。
【0006】
さて、WEBにおいて、クライアントとサーバとの間は、HTTPと呼ぶプロトコルで通信が行われる。HTTPプロトコルは、クライアントからサーバへ送る「リクエストメッセージ」と、それに答えてサーバからクライアントへ応答を返す「リプライメッセージ」とが組になっている。
【0007】
リクエストメッセージは、「リクエストヘッダ」と「リクエストボディ」からなる。リクエストヘッダには、アクセスしたい情報やサービスを指定するURLやアクセスの種類を示すメソッド名、その他アクセスに必要な各種の情報が入る。リクエストボディには、サーバに送るデータを入れる。リクエストボディに入っているデータを「リクエストデータ」とも呼ぶ。
【0008】
リプライメッセージは、「リプライヘッダ」と「リプライボディ」からなる。
リプライヘッダには、処理結果のステータスなどの情報が入り、リプライボディには要求された情報や要求されたサービスの処理結果などのデータが入る。リプライボディに入っているデータを「リプライデータ」とも呼ぶ。 リクエストメッセージのメソッドとしては、サーバ上の情報を読み出す「GETメソッド」、ユーザの持つデータをサーバに書き込む「PUTメソッド」、リクエストに応じて処理した結果を送り返してもらう「POSTメソッド」が、情報やサービスのアクセスに用いられる主要なものである。その他、DELETEなどのメソッドが定義されている。
【0009】
多くの場合、GETメソッドのリクエストメッセージのリクエストボディ、PUTメソッドのリプライメッセージのリプライボディは空である。POSTメソッドのリクエストメッセージのリクエストボディには、必要に応じてサーバ側での処理に用いる情報が入り、POSTメソッドのリプライメッセージのリプライボディには、その処理の結果のデータが入る。
【0010】
GETメソッドでサーバから読み出すデータは、読み出す毎にサーバ側で生成する「動的データ」と、既にサーバ側で記憶しているデータをそのまま送り返す「静的データ」に分けることができる。これらのうち、動的データについては、同じURLでも読み出す度に内容が異なる可能性があるので、多くの場合、サーバはキャッシュ不可の指定をそのリプライメッセージのヘッダに入れて送り返す。したがって、WEBのデータでキャッシュの対象になるのは、静的データの部分である。この静的データは、不特定多数のユーザが参照して構わない「共有データ」と、ユーザ認証することで特定のユーザだけがアクセスできるようにアクセス制御を行う「プライベートデータ」に分けることができる。前者の共有データは、どのようなキャッシュでもキャッシュ可能である。しかしながら、後者のプライベートデータは、プロキシサーバなどの共有キャッシュでは、キャッシュ不可である(プライベートデータは必ずサーバでユーザを認証して送り返す必要があるので)。ただし、ブラウザなどの個人専用のキャッシュの場合には、プライベートデータでもキャッシュは可能である。
【0011】
POSTメソッドは、サーバ側で処理をした結果を返すので、一般的にサーバはキャッシュ不可の指定をリプライメッセージのヘッダに入れて結果を送り返す。そのため、通常はキャッシュの対象にはならない。
【0012】
PUTメソッドは、データをサーバに送るものなので、キャッシュは何も処理をしない。
【0013】
【発明が解決しようとする課題】
従来のWEBのキャッシュは、静的コンテンツをキャッシュの対象にしている。かつては、WEBで公開される情報やサービスには、情報の更新頻度がそれほど高くなく、不特定多数の人に公開されているものが多かったため、静的コンテンツの割合は非常に高く、従来のキャッシュ技術でもネットワークの負荷の軽減に有効であった。
【0014】
しかしながら、WEBベースのASP(Application Service Provider)のように、ユーザがWEBブラウザを使って、ネットワーク経由でサーバ上の情報やサービスにアクセスするシステムが普及するにつれて、下記のように従来のキャッシュ技術では対応できないデータが増加している。
【0015】
・ユーザの認証を行い、アクセスできるユーザを制限しているので、プライベートデータが多い。
【0016】
・バックエンドのデータベースを参照して生成する動的データが多い。
【0017】
・帳票処理や検索などPOSTメソッドを使う場合が多い。
【0018】
・グループ内の情報共有のためにPUTメソッドを使う場合が多い。
【0019】
この結果、キャッシュ技術のみではネットワークの負荷を軽減する手法として有効に機能しなくなってきている。
【0020】
本発明は、上記事情を考慮してなされたもので、データ転送装置間を接続するネットワークの負荷をより軽減することができるキャッシュ技術・圧縮技術を備えたデータ転送装置、データ転送方法及びプログラムを提供することを目的とする。
【0021】
【課題を解決するための手段】
本発明のデータ転送方法は、所望のデータを示す第1のデータ識別情報を含む第1の情報要求と、前記第1のデータ識別情報を含む第2の情報要求と、を第1の装置から受信し、前記第1の情報要求を第2の装置宛に送信し、前記第1の情報要求に対する返答であり、前記データを保持する第3の装置の識別情報である装置識別情報と前記第1のデータ識別情報と前記データとを含む情報返答を受信し、前記装置識別情報と前記第1のデータ識別情報とを前記情報返答から抽出し関連付けて記憶し、前記データを示し前記第1のデータ識別情報とは別の第2のデータ識別情報を決定し、前記データと前記第2のデータ識別情報を関連付けて第2の情報記憶手段に記憶し、前記情報返答を前記第1の装置宛に送信し、前記第1のデータ識別情報を含む第2の情報要求を前記第1の装置から受信し、前記記憶された前記データ識別情報に関連付けられた前記装置識別情報を前記第2の情報要求に書き込んだ第3の情報要求を前記第2の装置宛に送信するようにした。
【0022】
また、本発明のデータ転送装置は、所望のデータを示す第1のデータ識別情報を含む第1の情報要求と、前記第1のデータ識別情報を含む第2の情報要求と、を第1の装置から受信する第1の受信手段と、前記第1の情報要求に対する返答であり、前記データを保持する第3の装置の識別情報である装置識別情報と前記第1のデータ識別情報と前記データとを含む情報返答を受信する第2の受信手段と、前記装置識別情報と前記第1のデータ識別情報とを前記情報返答から抽出し関連付けて記憶する第1の情報記憶手段と、前記データを示し前記第1のデータ識別情報とは別の第2のデータ識別情報を決定する識別情報決定手段と、前記データと前記第2のデータ識別情報を関連付けて記憶する第2の情報記憶手段と、前記情報返答を前記第1の装置宛に送信する第2の送信手段と、前記第1の情報記憶手段に記憶された前記データ識別情報に関連付けられた前記装置識別情報を前記第2の情報要求に書き込んだ第3の情報要求を出力する装置識別情報書き込み手段と、前記第1の情報要求と、前記第3の情報要求と、を前記第2の装置宛に送信する第1の送信手段とを備えるようにした。
【0023】
また、本発明のデータ転送装置は、所望のWebコンテンツに対応するURLを含む第1のリクエストメッセージをクライアント端末から受信するLAN側受信手段と、前記第1のリクエストメッセージをロードバランサ宛に送信するWAN側送信手段と、前記第1のリクエストメッセージに対するリプライであり、前記Webコンテンツを持っていたサーバのIPアドレスであるサーバIPアドレスと前記URLと前記Webコンテンツとを含むリプライメッセージを受信するWAN側受信手段と、前記サーバIPアドレスと前記URLとを前記リプライメッセージから抽出して記憶するホスト情報保存部と、前記WebコンテンツのFPを求めるFP圧縮処理部と、前記Webコンテンツと前記FPとを関連付けて記憶するFPキャッシュと、前記リプライメッセージを前記クライアント端末宛に送信するLAN側送信手段と、前記URLを含む第2のリクエストメッセージを前記クライアント端末から受信する前記LAN側受信手段と、前記ホスト情報保存部に保持された前記URLに対応する前記サーバIPアドレスを第2のリクエストメッセージに書き込むヘッダ付加部と、前記サーバIPアドレスが書き込まれた前記第2のリクエストメッセージを、前記ロードバランサ宛に送信する前記WAN側送信手段とを備えるようにした。
【0024】
このように、本願発明は装置に係る本発明としても方法に係る発明としても成立する。
【0025】
また、装置または方法に係る本発明は、コンピュータに当該発明に相当する手順を実行させるための(あるいはコンピュータを当該発明に相当する手段として機能させるための、あるいはコンピュータに当該発明に相当する機能を実現させるための)プログラムとしても成立し、該プログラムを記録したコンピュータ読取り可能な記録媒体としても成立する。
【0026】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
【0027】
以下では、WANがインターネットであり、クライアントは支社4内のLANに接続されたものであり、HTTPプロトコルが使用されるような場合を例にとって説明するが、もちろん、本発明は、WANがインターネット以外のものであっても、クライアントが支社以外の例えば家庭内LAN等に設置されたものであっても、HTTPプロトコル以外のプロトコルが使用されるものであっても適用可能である。
【0028】
図1は、本発明を適用するコンピュータ・ネットワーク・システムの全体構成例を示すものである。
【0029】
ASPサーバセンター2内のローカルエリアネットワーク(LAN)18と、支社4内のLAN16との間はそれぞれ、インターネットや専用回線などの広域ネットワーク(WAN)14と接続され、またASPサーバセンター2内において、前記LAN18と各サーバと各LAN12との間には、ロードバランサ70とサーバ側プロキシ30を介して接続されており、ASPサーバセンター2内の各サーバ20と、各支社4内のクライアント50とが、通信可能になっている。
ASPサーバセンター2内の各LAN12には1または複数のサーバが接続され、支社内LAN16には1または複数のクライアントが接続される。また、ASPサーバセンター2内のLAN18には、1または複数のロードバランサが接続され、またサーバ側プロキシ等も接続可能である。
【0030】
WEBベースのASPは、サーバセンター2に設置したサーバ20から、WAN14を介して、様々なアプリケーションプログラムによるサービスを各会社へ提供し、ユーザは支社4内に設置されたクライアント上のWEBブラウザ等を使ってそれらのサービスにアクセスする。
【0031】
このような利用形態においては、ユーザオフィス内LAN16とサーバセンター内LAN18との間のネットワークのうち、特にインターネットなどの広域ネットワーク14の実効的な通信容量(バンド幅)は、サーバセンター内LAN12、LAN18やユーザオフィス内LAN16よりも低く、そこが性能上のボトルネックになって通信遅延が発生し、アプリケーションの応答性能が低下するという問題が発生する。
【0032】
そこで、本実施形態では、サーバ20とクライアント50との間の両端に、サーバ側プロキシ30およびクライアント側プロキシ40という2つのモジュールを設置し、それらの間で後述するフィンガープリント圧縮(FP圧縮)を行って通信データ量を低減することで、広域ネットワーク40のボトルネックを解消する。
【0033】
本実施形態のサーバ20、サーバ側プロキシ30、クライアント側プロキシ40、クライアント50、ロードバランサ70は、いずれも、計算機上でソフトウェア(サーバ・プログラム、サーバ側プロキシ・プログラム、クライアント側プロキシ・プログラム、クライアント・プログラム、ロードバランサ・プログラム)を動作させる形で実現することができる。この場合に、必要に応じて計算機所望の機能を有するOSやドライバソフト、パケット通信用ソフト、暗号ソフト等といったソフトウェア、あるいは通信インタフェース装置や外部記憶装置や入出力装置等といったハードウェアが搭載あるいは接続される。また、この場合に、ユーザあるいは管理者からの情報の入力やユーザへの情報の呈示等のために、グラフィカル・ユーザ・インタフェース(GUI)を用いると好ましい。
【0034】
サービスを利用するためにユーザが使用するクライアント50上では、その目的に応じて例えばWEBブラウザ等のプログラムが動作する。ユーザは、例えば、WEBブラウザからインターネットを介し情報転送あるいは注文受付等の所望のサービスを提供するサーバにリクエストメッセージを出し、リプライメッセージを受けることによって、またはこれを適宜繰り返すことによって、サービスを利用する。もちろん、WEBブラウザ等の汎用のソフトウェアではなく、特定のサービスを利用するための専用のソフトウェアなどの他のものが用いられても構わない。また、クライアントは、汎用の計算機ではなく、例えばインターネット機能を有する携帯電話端末等でもよい。
【0035】
サーバ20上では、所定のサーバ・プログラムが動作し、クライアント20のユーザに対して、当該サーバ・サイトに固有のサービスを提供する。
【0036】
サーバ側プロキシ30は、図1のように、サーバセンター内LAN12とロードバランサ70との両方に接続し、トランスペアレント・プロキシとして動作するように設置して実施することができる。また、図2(a)のように、サーバセンター内LAN12上に設置して実施することもできる。また、図3(a)のように、サーバ側プロキシ30の機能をサーバ20に内蔵するように実施することもできる。
【0037】
同様に、クライアント側プロキシ40は、図1のように、支社内LAN16とWAN14との両方に接続し、トランスペアレント・プロキシとして動作するように設置して実施することができる。また、図2(b)のように、支社内LAN16上に設置して実施することもできる。また、図3(b)のように、クライアント側プロキシ40の機能をクライアント50上で動作するブラウザ等に内蔵するように実施することもできる。あるいは、ブラウザ等の動作するクライアント50上に、個人用のクライアント側プロキシ40を動作させるように実施することもできる。
【0038】
上記のコンピュータ・ネットワーク・システムにおいて、本実施の形態の概念的なフローについて、図4及び図5を用いて説明する。
【0039】
図4は、サーバ20上のWebコンテンツをサーバ側プロキシ30およびクライアント側プロキシ40へキャッシュする際の動作フローを示している。
【0040】
まず、ユーザは、支店4内のクライアント50のブラウザから、所望のサーバ20に記憶されるWebコンテンツを読み出すために、そのWebコンテンツのURLを指定して、リクエストを行う。
【0041】
このリクエストは、ネットワークを介して、サーバ20へ通知される(図4−1)。この通知を受け取ったサーバ20はリクエストされたWebコンテンツを読み出して、サーバ側プロキシ30へ送信する(図4−2)。サーバ側プロキシ30は、受け取ったWebコンテンツのフィンガープリント(FP)を計算する(図4−3)。計算されたFPをWebコンテンツと対応で受けて保存する(図4−4)。また、サーバ側プロキシ30は受け取ったWebコンテンツを支社へリプライする(図4−5)。
【0042】
クライアント側プロキシ40は、受け取ったWebコンテンツのフィンガープリント(FP)を計算する(図4−6)。計算されたFPをWebコンテンツと対応で受けて保存する(図4−7)。クライアント側プロキシ40は、Webコンテンツをクライアント50へ送信する(図4−8)。以上により、Webコンテンツがサーバ側プロキシ30およびクライアント側プロキシ40へそれぞれキャッシュされる。
【0043】
次に、図5は、Webコンテンツがサーバ側プロキシ30およびクライアント側プロキシ40に、既にキャッシュされている際の動作フローを示している。
【0044】
まず、ユーザは、支店4内のクライアント50のブラウザから、所望のサーバ20に記憶されるWebコンンテンツを読み出すために、そのWebコンテンツのURLを指定して、リクエストを行う。
【0045】
このリクエストは、ネットワークを介して、サーバ20へ通知される(図5−1)。この通知を受け取ったサーバ20はリクエストされたWebコンテンツを読み出して、サーバ側プロキシ30へ送信する(図5−2)。サーバ側プロキシ30は、受け取ったWebページのフィンガープリント(FP)を計算する(図5−3)。計算されたFPと同じFPが既にサーバ側プロキシ30内に保存されているか否かの検索を行う(図5−4)。ここでは、計算されたFPと同じFPが保存済みであるため、サーバ側プロキシ30は、受け取ったWebコンテンツを支店へ送信するのではなく、代わりに、そのFPを支店へリプライする(図5−5)。クライアント側プロキシ40は、受け取ったFPで自装置内を検索する(図5−6)。検索されて見つかったFPに対応付けて保存されるWebコンテンツを読み出す(図5−7)。クライアント側プロキシ40は、自装置内から読み出したWebページをクライアント50へ送信する(図5−8)。以上により、サーバ側プロキシ30からクライアント側プロキシ40へ送信されるべきWebコンテンツを少量のFPに替えて送るから、特に、広域ネットワークのボトルネックを解消できる。
【0046】
さて、ここでフィンガープリントについて、詳細に説明する。
【0047】
本実施形態のサーバ側プロキシ30およびクライアント側プロキシ40は、いずれも、フィンガープリント・キャッシュ(FPキャッシュ)と呼ぶキャッシュ機構を持つ。フィンガープリントキャッシュは、フィンガープリント(FP)と呼ぶ名前によって、HTTPプロトコルでやりとりされるデータを記録・管理する。
【0048】
フィンガープリントは、図6に例示するように、HTTPプロトコルでやり取りされるデータ(図6の例ではコンテンツ)の内容から、あらかじめ決められた計算方法(図6の例ではハッシュ関数)で決定される、短い数値である。この数値は、可変長でもよいが、処理の容易さの観点では、固定長の数値の方が扱いやすい。
【0049】
フィンガープリントを計算する方法としては、良く知られているMD−5やSHA−1などのハッシュ関数を用いることができる。これらのハッシュ関数は、データに対する電子署名などに使われており、任意のデータが与えられると、MD−5の場合は128ビットの数値に、SHA−1の場合は160ビットの数値に、変換することができる。これらのハッシュ関数の特徴は、2つのデータX1,X2が与えられ、データX1とデータX2とが同じであれば、データX1に対して計算したハッシュ値とデータX2に対して計算したハッシュ値とは等しくなるが、異なる2つのデータA,Bが与えられた場合には、データAに対して計算したハッシュ値とデータBに対して計算したハッシュ値とは、非常に高い確率で異なるものになることである(原理上は、異なる2つのデータA,Bに対してそれぞれ計算したハッシュ値が同じになる場合があるが、その確率は実用上無視できるくらいに小さい)。
【0050】
図7に示すように、サーバ側プロキシ30やクライアント側プロキシ40の持つフィンガープリント・キャッシュ(図中の60)は、過去にHTTPプロトコルでやり取りされたデータ本体(図中の61)を、そのデータから計算して求めたフィンガープリントの値(図中の62)を名前として、記録・管理している。
【0051】
例えばHTTPプロトコルでサーバ側プロキシ30からクライアント側プロキシ40へデータを転送するときに、サーバ側プロキシ30は、当該データのフィンガープリントを計算し、そのフィンガープリントに対応するデータがフィンガープリントキャッシュに入っていれば、当該データ(と同じ内容のデータ)は過去に転送したことがあるので、当該データを転送せずに、対応するフィンガープリントの値を転送する。フィンガープリントを受け取ったクライアント側プロキシ40は、当該フィンガープリントの値に対応するデータをフィンガープリントキャッシュから取り出すことで、転送すべきデータを再現することができる。このような方式(すなわち、データ圧縮→データ転送→データ解凍)により、過去に送ったものと同じデータならばフィンガープリントの値を送るだけでよいので、ネットワークを流れるデータ量を大幅に削減することができる。もちろん、クライアント側プロキシ40からサーバ側プロキシ30へデータを転送するときも同様である。
【0052】
説明上、サーバ側プロキシ30とクライアント側プロキシ40との間でのデータ転送にあたり、フィンガープリントキャッシュを利用してメッセージ・ボディーのデータをフィンガープリントに置き換えて転送情報量を圧縮することを、フィンガープリント圧縮(FP圧縮)と呼ぶものとする。
【0053】
なお、サーバ側プロキシ30とクライアント側プロキシ40との間において、すべてのメッセージを、FP圧縮を適用する対象(すなわち、フィンガープリントキャッシュを利用してデータをフィンガープリントに置き換えるための処理を行う対象)としてもよいが、例えばフィンガープリントキャッシュの効果が期待できないものなどに対する適用を除外するために、予め定められた条件を満たすメッセージについては、これをFP圧縮の適用対象外とする(常にFP圧縮しないで転送する)ようにしてもよい。
【0054】
この場合の予め定められた条件とは、例えば、メッセージ・ヘッダに予め定められた情報が記述されていることである。具体的には、例えば、メッセージ・ヘッダにGETメソッドを示す情報およびリクエストを示す情報が記述されていることである。また、予め定められた条件の他の例としては、転送されるデータが空(null)あるいは非常に短いサイズであることである。
【0055】
もちろん、それらの他にも種々のバリエーションがある。また、複数の条件を組み合わせて使用するようにしてもよい。
【0056】
ところで、図1の本発明を適用するコンピュータ・ネットワーク・システムにおいては、LAN18と複数のサーバ側プロキシ30との間にロードバランサ70が介在している。ロードバランサ70は、LAN18から受ける処理要求に対する処理を軽減するために、複数のサーバ20を設けて、処理内容や、各サーバの負荷などに応じて、適宜、要求を処理するサーバ20を選択し、選択したサーバ20に処理を供給するものである。従って、ここでは各サーバ20は同じ情報(コンテンツ)を保存していることが望ましい。
【0057】
このようなロードバランサ70を備えた図1の本発明を適用するコンピュータ・ネットワーク・システムにおいては、支社4のクライアント側プロキシ40とASPサーバセンター2のサーバ側プロキシ30で、上記で説明したようなフィンガープリント技術を適用するだけでは、以下のような問題が生じる。
a)あるコンテンツに対して、複数回リクエストがあった時、ロードバランサ70は、通常各回ごとに独立してサーバ側プロキシ30を選択するので、同じコンテンツをそれぞれ異なるサーバプロキシで処理することが起きて、FPキャッシュの効率が落ちてしまう。
b)FPを受信したクライアント側プロキシ50は、自身のキャッシュを検索した際、例えば記憶容量の関係で既にキャッシュにコンテンツが無い場合に、再リクエストメッセージをサーバ側プロキシへ発行するが、このときに直前のリクエストメッセージの処理を行ったサーバ側プロキシ30で処理を行わないと、正常なデータ取得ができなくなってしまう恐れがある。
【0058】
そこで、本実施の形態のサーバ側プロキシ30及びクライアント側プロキシ40は、これらの問題点を解決するようにした。
【0059】
図8、図9、及び図10に、本実施の形態のクライアント側プロキシ40、ロードバランサ70及びサーバ側プロキシ30の機能ブロック図を示し、詳細に説明する。なお、図8、図9および図10は、クライアント側プロキシ40、ロードバランサ70及びサーバ側プロキシ30の間のデータ転送の際の機能構成を中心に示してある。
【0060】
ここで、まず、リクエストメッセージおよびリプライメッセージについて説明する。
【0061】
リクエストメッセージは、[従来の技術]欄で示したようにリクエストヘッダとリクエストボディからなっており、リクエストヘッダには、予め決められた情報が格納される領域の他に、利用者によって書き込む情報が定義可能な領域を含んでいる。本実施の形態では、この利用者によって定義可能な領域に、(FPキャッシュミスによる)リクエストメッセージが再送である旨を示す情報を書き込めるようにした。ここではRETRYと書き込むようにし、これをRETRYヘッダと呼ぶこととしている。また、本実施の形態では、この利用者によって定義可能な領域に、利用すべきサーバ側プロキシ30のIPアドレスを書き込めるようにした。この領域をIPアドレスヘッダと呼ぶこととする。
【0062】
リプライメッセージは、[従来の技術]欄で示したようにリプライヘッダとリプライボディからなっており、リプライヘッダには、予め決められた情報が格納される領域の他に、利用者によって書き込む情報を定義可能な領域を含んでいる。本実施の形態では、この利用者によって定義可能な領域に、リクエストヘッダと同様に、利用されたサーバ側プロキシ30のIPアドレスを書き込むようにした。この領域をIPアドレスへッダと呼ぶこととする。また、本実施の形態では、この利用者によって定義可能な領域に、リクエストヘッダと同様に、(FPキャッシュミスによる)リクエストメッセージが再送である旨を示す情報を書き込めるようにした。ここではRETRYと書き込むようにし、これをRETRYヘッダと呼ぶこととしている。なお、リプライヘッダは、基本的にはリクエストヘッダを踏襲しており、ここではリプライヘッダのIPアドレスへッダとRETRYヘッダはリクエストヘッダ時に付加されたものそのまま消去することなく利用していると考えて良い。
【0063】
以下に、クライアント側プロキシ40の構成を説明する。
【0064】
受信部401は、クライアント50からのリクエストメッセージを受信するものである。ヘッダ解析部402は、受け取ったリクエストメッセージのリクエストヘッダを解析し、ユーザが要求した要求先のURLを取り出して、ホスト情報保存部403を参照し、そのURLと一致するURLが保存されているか否かを検索する。これにより、一致するURLが見つかった際にはこのURLに対応して保存されるIPアドレスをホスト情報保存部403より読み出す。
ヘッダ付加部404は、その読み出されたIPアドレスをリクエストメッセージのIPアドレスヘッダに書き込み、送信部405へ送る。一方、一致するURLが見つからなかった際には、リクエストメッセージをそのまま、送信部405へ送る。送信部405は、ヘッダ解析部402またはヘッダ付加部404から送られてきたリクエストメッセージを、WAN14を介してロードバランサ70へ送信する。
【0065】
受信部406は、リクエストメッセージに対する応答であるリプライメッセージを受信するものである。ヘッダ解析部407は、リプライメッセージのリプライヘッダを解析し、URLとIPアドレスを取得し、対応付けてホスト情報保存部403へ保存する。ホスト情報保存部403は、このように過去にリクエストされたURLが、どのサーバ側プロキシ30で処理されたかを保存しておくものである。
【0066】
FP圧縮判定部408は、受け取ったリプライメッセージに含まれるFP圧縮フラグによって、そのリプライメッセージがFP圧縮されたものか否かを判定するものである。FP圧縮されていればFPキャッシュ管理部409へ、FP圧縮されていなければFP圧縮処理部414にリプライメッセージを送る。
【0067】
FPキャッシュ管理部409は、そのリプライメッセージ内のFPでFPキャッシュ411を検索し、検索されたFPに対応するコンテンツを得て、送信部413へ送るものである。ここで、FPキャッシュ411には、本来全てのFPがあるはずだが、キャッシュメモリの容量不足により、ここでは古いものから少しずつ削除されるような構成としている。そのため、キャッシュミスが起きる場合が有る。その場合には、FPキャッシュ管理部409は、リプライメッセージを再リクエスト生成部415へ送る。
【0068】
再リクエスト生成部415は、再度、同じURLへコンテンツを要求するリクエストメッセージを生成する。このとき、再リクエスト生成部415は、リクエストヘッダにRETRYヘッダを付加する。この生成されたリクエストメッセージは、先に説明したヘッダ解析部402に送られる。
【0069】
FP圧縮処理部414は、FP圧縮判定部408からリプライメッセージを受け取り、そのリプライデータ(=コンテンツ)をFP圧縮するものである。FP登録部410は、 FP圧縮処理部414で圧縮されたFPとリプライメッセージのリプライデータ(コンテンツ)とを対応付けてFPキャッシュ411に登録する。そして、リプライメッセージを送信部413へ送る。送信部413は、受信した情報をクライアント50へ送信するものである。
【0070】
なお、機能ブロックとして、受信部401と受信部406、送信部405と送信部413、を別々のブロック構成として図示したが、同じ構成であっても良く、また受信部401と送信部413、受信部405と受信部406、を送受信部として同じ構成としても良いことは勿論である。
【0071】
次に、図9のロードバランサ70について説明する。ロードバランサ70は、受信部701にて、クライアント側プロキシ40からのリクエストメッセージを受信する。ヘッダ解析部702は、受信部701にて受信したリクエストメッセージのリクエストヘッダを解析し、IPアドレスヘッダを確認し、もし、IPアドレスが書き込まれていれば、そのIPアドレスのサーバ側プロキシ30へ送信部703を介し、送信する。受信部704は、各サーバ側プロキシ30と接続され、サーバ側プロキシ30からのリプライメッセージを受信し、送信部705からクライアント側プロキシ40へリプライメッセージを転送する。
【0072】
次に、図10に示すサーバ側プロキシ30の構成を説明する。
【0073】
受信部301は、リクエストメッセージを受信する。ヘッダ解析部312は、受信したリクエストメッセージにRETRYヘッダが含まれているか否かを確認する。もし、RETRYヘッダが含まれていれば、その旨をヘッダ情報保存部313へ書き込む。
【0074】
リクエストメッセージは、そのまま送信部304へ送られ、送信部304からサーバ20へ転送する。
【0075】
受信部305は、サーバ20からのリプライメッセージを受信するものである。ヘッダ判定部306は、受信部305からリプライメッセージを受けると、ヘッダ情報保存部313に、このリプライメッセージに対応するリクエストメッセージにRETRYヘッダを含んでいたか否かを判定する。ヘッダ判定部306は、RETRYヘッダがあったと判定した場合には、再リクエストに対する応答であるため、そのままリプライメッセージを送信部311へ送る。これは、再びクライアント側プロキシ40でキャッシュミスとなることを防ぐためであり、また、サーバ側プロキシ30のFPキャッシュ309において既に登録されているからである。ヘッダ判定部306は、RETRYヘッダが無かったと判断した場合は、リプライメッセージをFP圧縮処理部307へ送る。
【0076】
FP圧縮処理部307は、先に説明したFP圧縮の方法で、リプライデータ(=コンテンツ)を圧縮し、FPを生成するものである。リプライメッセージと生成されたFPとをFPキャッシュ管理・登録部308へ送る。FPキャッシュ管理・登録部308は、受け取ったFPでFPキャッシュ309を検索し、見つかった際にはリプライメッセージのリプライデータをFPに変えて、ヘッダ付加部310へ送る。見つからなければFPとコンテンツとを対応付けてFPキャッシュ309へ記憶するとともに、コンテンツを、ヘッダ付加部310へ送る。ヘッダ付加部310は、このサーバ側プロキシのIPアドレスを、リプライメッセージのIPアドレスヘッダに付加し、送信部311へ送る。
【0077】
以上が、サーバ側プロキシ30の構成である。
【0078】
図11は、クライアントからの一つのリクエストメッセージを受けた際のクライアント側プロキシ40の処理手順の一例を示している。
【0079】
クライアント側プロキシ40は、受信部401、またはクライアント側プロキシ40内の再リクエスト生成部415より(図14の(A)より)、リクエストメッセージを受ける(ステップS101)。ヘッダ解析部402は、リクエストメッセージのリクエストヘッダを解析し、クライアント50にて要求されたURLを取得する(ステップS102)。取得したURLがホスト情報保存部403に保存されているか否かを確認する(ステップS103)。
【0080】
ステップS103の結果、ホスト情報保存部403にURLがあった場合、ヘッダ情報保存部403に保存されるURLに対応するIPアドレスを取り出し、ヘッダ付加部404で、リクエストメッセージのリクエストヘッダのIPアドレスヘッダにそのIPアドレスを書き込み、送信部405によってそのリクエストメッセージをロードバランサ70へ送信する(ステップS104)。一方、ステップS103の結果、ホスト情報保存部403にURLがなければ、送信部405によってリクエストメッセージをそのまま、ロードバランサ70へ送信する(ステップS105)。
【0081】
図12は、一つのリクエストメッセージを受けたロードバランサ70の処理手順の一例を示している。
【0082】
ロードバランサ70は、受信部701により、リクエストメッセージを受信する(ステップS201)。ヘッダ解析部702は、受信したリクエストメッセージのリクエストヘッダを解析し、IPアドレスヘッダが付加されているか否かを検出する(ステップS202)。ステップS202の結果、IPアドレスヘッダが付加されていれば、送信部703は、このIPアドレスを用いて、リクエストメッセージを送信する(ステップS203)。ステップS202の結果、IPアドレスヘッダが付加されていなければ、ロードバランサ70は、所定の方法(例えば、各サーバの負荷のもっとも小さなもの、等)にてサーバ側プロキシ30を決定し、送信部703は、そのサーバ側プロキシ30へリクエストメッセージを送信する(ステップS204)。
【0083】
これによって、サーバ側プロキシ30を介し、サーバ20は、リクエストメッセージを受け、クライアント50の所望のコンテンツを読み出して、リクエストメッセージが発行されたクライアント50へ向けて、リプライメッセージを送信する。なお、図10の説明でも示したためフローチャートを用いた説明は省略するが、サーバ側プロキシ30の処理手順は、1)リクエストメッセージを解析し、2)RETRYヘッダの有無を判断し、3)RETRYヘッダがあった場合に、ヘッダ情報保存部313にその旨保存する、4)リクエストメッセージをサーバ20へ送信する、ように動作する。
【0084】
図13は、サーバ20から一つのリプライメッセージを受けた際のサーバ側プロキシ30の処理手順の一例を示している。
【0085】
サーバ側プロキシ30は、受信部305により、サーバ20からリプライメッセージを受信する(ステップS301)。ヘッダ判定部306は、ヘッダ情報保存部313にRETRYヘッダが付加されているか否かを判定する(ステップS302)。
【0086】
ステップS302の結果、RETRYヘッダが付加されていると判断すると、送信部311によってリプライメッセージをロードバランサ70へ送信する(ステップS310)。
【0087】
ステップS302の結果、RETRYヘッダが付加されていないと判断すると、FP圧縮処理部307は、リプライメッセージのリプライデータ(=コンテンツ)のFPを求める(ステップS303)。そして、FPキャッシュ管理・登録部308にて、求められた該FPをキーとしてフィンガープリントキャッシュ309を検索し(ステップS304)、該フィンガープリントの値とこれに対応するデータとの組がFPキャッシュ309に登録されているかいないかを判断する(ステップS305)。
【0088】
ステップS305の結果、FPキャッシュ309にFPが登録されていれば、リプライメッセージのリプライデータをこのFPに変更する(ステップS306)。このとき、リプライヘッダにFP圧縮した旨のヘッダを付加する。
【0089】
ステップS305の結果、FPキャッシュ309にFPが登録されていなければ、FPキャッシュ管理・登録部308は、該フィンガープリントの値と、該リプライデータとを対応付けて(フィンガープリントの値をキーとして)、フィンガープリントキャッシュ309に登録する(ステップS307)。
【0090】
ヘッダ付加部310は、リプライメッセージのヘッダにサーバ側プロキシ自身のIPアドレスを付加する(ステップS308)。そして、送信部311は、リプライメッセージを、ロードバランサ70へ送信する(ステップS309)。
【0091】
次に、特に図示しないが、ロードバランサ70は、サーバ側プロキシ30からのリプライデータをクライアント側プロキシ40に転送する。
【0092】
次に、図14に、一つのリプライメッセージを受けた際のクライアント側プロキシ40の処理手順の一例を示している。
【0093】
クライアント側プロキシ40は、受信部406により、リプライメッセージを受信する(ステップS401)。ヘッダ解析部407は、このリプライメッセージのリプライヘッダを解析し、URLと、IPアドレスヘッダからIPアドレスを取得し、これらを対応づけてホスト情報保存部403へ保存する(ステップS402)。次に、FP圧縮判定部408は、リプライヘッダにFP圧縮フラグの有無を確認することによって、リプライデータがFP圧縮されているか否かを判定する(ステップS403)。
【0094】
ステップS403の結果、FP圧縮されていれば、リプライメッセージのリプライデータはFPであるから、FPキャッシュ管理部409にて、該リプライデータ(=FP)をキーとしてフィンガープリントキャッシュ411を検索し(ステップS404)、FPがFPキャッシュ411にあるか否かを判断する(ステップS405)。この検索によって、対応するフィンガープリントがあった場合、該フィンガープリントに対応するコンテンツを読み出し、リプライメッセージのリプライデータをこのコンテンツに変更する(ステップS406)。送信部413は、この変更されたリプライメッセージをクライアント50へ向けて送信する(ステップS407)。
【0095】
ステップS405の結果、対応するFPが無かった場合、再リクエスト生成部415は、リクエストメッセージを生成し、再リクエストである旨のRETRYヘッダを付加して、送信する(ステップS408)。
【0096】
ステップS403の結果、リプライデータが圧縮されていなければ、FP圧縮処理部414は、リプライデータをFP圧縮し、FPを求める(S409)。
FPキャッシュ登録部410は、求めた該フィンガープリントと、該リプライデータとを対応付けて(フィンガープリントの値をキーとして)、フィンガープリントキャッシュ411に登録する(ステップS410)。
【0097】
送信部413は、そのままのリプライメッセージを、クライアント50へ向けて送信する(ステップS411)。
【0098】
以上本発明の実施の形態によれば、クライアン側プロキシ40と複数のサーバ側プロキシ30との間に、ロードバランサ70を備えたとしても、初めにあるURLに対し、クライアント側プロキシ40から発したリクエストメッセージと、次回にそのURLに対して発したリクエストメッセージとが同じサーバ側プロキシ30へ送られて処理されるから、2度目のリクエストの際に、FPが利用できるようになった。
【0099】
また、本実施の形態のサーバ側プロキシ30は、送信するリプライメッセージにデータまたはFP値の何れかのみを付加して送付するようにしていたが、FP値を保存しデータを送信する場合(S305のNOの場合)、FP値もリプライメッセージに付けて送るようにしても良い。このような構成にすれば、クライアント側プロキシ40内には、受信したリプライメッセージからFP値を抽出する機能を有する必要があるが、FP圧縮を行う機能は不要となり、全体の速度の高速化が可能になるだろう。
【0100】
ところで、これまでは、1つのメッセージに含まれるデータ全体をFP圧縮する対象(フィンガープリントキャッシュに登録する対象)にしていたが、例えば、1つのメッセージに含まれるデータが所定の単位のデータの集合で構成される場合には、1つのメッセージに含まれる一部の単位データのみFP圧縮する対象(フィンガープリントキャッシュに登録する対象)にする構成も可能である。
【0101】
なお、以上の各機能は、ソフトウェアとして実現可能である。
【0102】
また、本実施形態は、コンピュータに所定の手段を実行させるための(あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるための)プログラムとして実施することもでき、該プログラムを記録したコンピュータ読取り可能な記録媒体として実施することもできる。
【0103】
なお、この発明の実施の形態で例示した構成は一例であって、それ以外の構成を排除する趣旨のものではなく、例示した構成の一部を他のもので置き換えたり、例示した構成の一部を省いたり、例示した構成に別の機能あるいは要素を付加したり、それらを組み合わせたりすることなどによって得られる別の構成も可能である。また、例示した構成と論理的に等価な別の構成、例示した構成と論理的に等価な部分を含む別の構成、例示した構成の要部と論理的に等価な別の構成なども可能である。また、例示した構成と同一もしくは類似の目的を達成する別の構成、例示した構成と同一もしくは類似の効果を奏する別の構成なども可能である。
【0104】
また、この発明の実施の形態で例示した各種構成部分についての各種バリエーションは、適宜組み合わせて実施することが可能である。
【0105】
また、この発明の実施の形態は、個別装置としての発明、関連を持つ2以上の装置についての発明、システム全体としての発明、個別装置内部の構成部分についての発明、またはそれらに対応する方法の発明等、種々の観点、段階、概念またはカテゴリに係る発明を包含・内在するものである。
【0106】
従って、この発明の実施の形態に開示した内容からは、例示した構成に限定されることなく発明を抽出することができるものである。
【0107】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0108】
【発明の効果】
本発明によれば、データ転送装置間でデータとその名前との対応を保持し、この対応を保持しているデータについては、データを転送する代わりに対応する名前を転送することで、データ転送装置間の転送データ量を削減することができる。そして、特にロードバランサを備えた複雑なシステム構成であっても、実現できる。
【図面の簡単な説明】
【図1】 本発明の一実施形態に係るコンピュータ・ネットワーク・システムの構成例を示す図。
【図2】 同実施形態に係るコンピュータ・ネットワーク・システムの他の構成例を示す図。
【図3】 同実施形態に係るコンピュータ・ネットワーク・システムのさらに他の構成例を示す図。
【図4】 同実施形態に係るコンピュータ・ネットワーク・システムの基本概念を示す図。
【図5】 同実施形態に係るコンピュータ・ネットワーク・システムの基本概念を示す図。
【図6】 同実施の形態のフィンガープリントを示す図。
【図7】 同実施の形態のフィンガープリントキャッシュを示す図。
【図8】 同実施の形態のクライアント側プロキシの機能ブロック図。
【図9】 同実施の形態のロードバランサの機能ブロック図。
【図10】 同実施の形態のサーバ側プロキシの機能ブロック図。
【図11】 同実施形態に係るクライアント側プロキシの手順例を示すフローチャート。
【図12】 同実施形態に係るロードバランサの手順例を示すフローチャート。
【図13】 同実施形態に係るサーバ側プロキシの手順例を示すフローチャート。
【図14】 同実施形態に係るクライアント側プロキシの手順例を示すフローチャート。
【符号の説明】
2…ASPサーバセンター
4…支社
12、16、18…LAN
14…WAN
16…ユーザオフィス内LAN
20…サーバ装置
30…サーバ側プロキシ装置
40…クライアント側プロキシ装置
50…クライアント装置
70…ロードバランサ装置
301,305,401,406,701,704…受信部
402,407,702…ヘッダ解析部
403…ホスト情報保存部
304,311,405,413,703,705…送信部
306…ヘッダ判定部
307,414…FP圧縮処理部
308…フィンガープリントキャッシュ管理・登録部
409…フィンガープリントキャッシュ管理部
309,411…FPキャッシュ
310,404…ヘッダ付加部
312,410…フィンガープリントキャッシュ登録部
408…フィンガープリント圧縮判定部
415…再リクエスト生成部
Claims (3)
- 所望のデータを示す第1のデータ識別情報を含む第1の情報要求と、前記第1のデータ識別情報を含む第2の情報要求と、を第1の装置から受信し、
前記第1の情報要求を第2の装置宛に送信し、
前記第1の情報要求に対する返答であり、前記データを保持する第3の装置の識別情報である装置識別情報と前記第1のデータ識別情報と前記データとを含む情報返答を受信し、
前記装置識別情報と前記第1のデータ識別情報とを前記情報返答から抽出し関連付けて記憶し、
前記データを示し前記第1のデータ識別情報とは別の第2のデータ識別情報を決定し、
前記データと前記第2のデータ識別情報を関連付けて第2の情報記憶手段に記憶し、
前記情報返答を前記第1の装置宛に送信し、
前記第1のデータ識別情報を含む第2の情報要求を前記第1の装置から受信し、
前記記憶された前記データ識別情報に関連付けられた前記装置識別情報を前記第2の情報要求に書き込んだ第3の情報要求を前記第2の装置宛に送信することを特徴とするデータ転送方法。 - 所望のデータを示す第1のデータ識別情報を含む第1の情報要求と、前記第1のデータ識別情報を含む第2の情報要求と、を第1の装置から受信する第1の受信手段と、
前記第1の情報要求に対する返答であり、前記データを保持する第3の装置の識別情報である装置識別情報と前記第1のデータ識別情報と前記データとを含む情報返答を受信する第2の受信手段と、
前記装置識別情報と前記第1のデータ識別情報とを前記情報返答から抽出し関連付けて記憶する第1の情報記憶手段と、
前記データを示し前記第1のデータ識別情報とは別の第2のデータ識別情報を決定する識別情報決定手段と、
前記データと前記第2のデータ識別情報を関連付けて記憶する第2の情報記憶手段と、
前記情報返答を前記第1の装置宛に送信する第2の送信手段と、
前記第1の情報記憶手段に記憶された前記データ識別情報に関連付けられた前記装置識別情報を前記第2の情報要求に書き込んだ第3の情報要求を出力する装置識別情報書き込み手段と、
前記第1の情報要求と、前記第3の情報要求と、を前記第2の装置宛に送信する第1の送信手段と、
を備えることを特徴とするデータ転送装置。 - 所望のWebコンテンツに対応するURLを含む第1のリクエストメッセージをクライアント端末から受信するLAN側受信手段と、
前記第1のリクエストメッセージをロードバランサ宛に送信するWAN側送信手段と、
前記第1のリクエストメッセージに対するリプライであり、前記Webコンテンツを持っていたサーバのIPアドレスであるサーバIPアドレスと前記URLと前記Webコンテンツとを含むリプライメッセージを受信するWAN側受信手段と、
前記サーバIPアドレスと前記URLとを前記リプライメッセージから抽出して記憶するホスト情報保存部と、
前記WebコンテンツのFPを求めるFP圧縮処理部と、
前記Webコンテンツと前記FPとを関連付けて記憶するFPキャッシュと、
前記リプライメッセージを前記クライアント端末宛に送信するLAN側送信手段と、
前記URLを含む第2のリクエストメッセージを前記クライアント端末から受信する前記LAN側受信手段と、
前記ホスト情報保存部に保持された前記URLに対応する前記サーバIPアドレスを第2のリクエストメッセージに書き込むヘッダ付加部と、
前記サーバIPアドレスが書き込まれた前記第2のリクエストメッセージを、前記ロードバランサ宛に送信する前記WAN側送信手段と、
を備えるデータ転送装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001299132A JP3913508B2 (ja) | 2001-09-28 | 2001-09-28 | データ転送装置およびデータ転送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001299132A JP3913508B2 (ja) | 2001-09-28 | 2001-09-28 | データ転送装置およびデータ転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003108462A JP2003108462A (ja) | 2003-04-11 |
JP3913508B2 true JP3913508B2 (ja) | 2007-05-09 |
Family
ID=19119932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001299132A Expired - Fee Related JP3913508B2 (ja) | 2001-09-28 | 2001-09-28 | データ転送装置およびデータ転送方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3913508B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004093394A1 (ja) * | 2003-04-14 | 2004-10-28 | Fujitsu Limited | データ中継装置、データ中継方法、データ中継プログラム、サービス選択装置、サービス選択方法、及びサービス選択プログラム |
US20080133271A1 (en) * | 2006-11-30 | 2008-06-05 | Fujifilm Corporation | Job dispatcher for medical intelligent server architecture |
JP5131915B2 (ja) * | 2008-03-31 | 2013-01-30 | 国立大学法人 東京大学 | パケット符号化方法および装置ならびに復号方法および装置 |
KR102030733B1 (ko) * | 2013-01-02 | 2019-10-10 | 삼성전자주식회사 | 메모리 시스템 및 이의 구동 방법 |
-
2001
- 2001-09-28 JP JP2001299132A patent/JP3913508B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003108462A (ja) | 2003-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10798203B2 (en) | Method and apparatus for reducing network resource transmission size using delta compression | |
JP3990115B2 (ja) | サーバ側プロキシ装置及びプログラム | |
US8024484B2 (en) | Caching signatures | |
US7383348B2 (en) | Data transfer scheme using caching technique for reducing network load | |
US7636765B2 (en) | Data transfer scheme using caching technique for reducing network load | |
EP1429517A1 (en) | Access relaying apparatus | |
JP2004164630A (ja) | クライアント/サーバ通信システム | |
JP3984086B2 (ja) | キャッシュサーバ、データ転送装置及びプログラム | |
JP3848209B2 (ja) | データ転送装置、データ転送方法及びプログラム | |
JP4053269B2 (ja) | データ転送装置およびデータ転送方法 | |
JP4031516B2 (ja) | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム | |
JP3913508B2 (ja) | データ転送装置およびデータ転送方法 | |
JP3983987B2 (ja) | サーバ側プロキシ装置、データ転送方法及びプログラム | |
JP3943867B2 (ja) | サーバ側プロキシ、データ転送方法及びプログラム | |
JP3943868B2 (ja) | サーバ側プロキシ、データ転送方法及びプログラム | |
JP4041157B2 (ja) | クライアント側プロキシ装置、データ転送方法及びプログラム | |
JP4300220B2 (ja) | データ転送装置およびデータ転送方法 | |
JP2003108464A (ja) | データ転送装置およびデータ転送方法 | |
JP3977601B2 (ja) | サーバ側プロキシ装置、クライアント側プロキシ装置及びプログラム | |
JP4157585B2 (ja) | サーバ側プロキシ装置、クライアント側プロキシ装置、データ転送方法及びプログラム | |
JP3977651B2 (ja) | データ転送方法、サーバ側プロキシ装置、クライアント側プロキシ装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050414 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050606 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060331 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060530 |
|
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: 20070130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070131 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110209 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120209 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120209 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140209 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |