JP2003233524A - Data transfer method, data transfer device, and program - Google Patents

Data transfer method, data transfer device, and program

Info

Publication number
JP2003233524A
JP2003233524A JP2002031909A JP2002031909A JP2003233524A JP 2003233524 A JP2003233524 A JP 2003233524A JP 2002031909 A JP2002031909 A JP 2002031909A JP 2002031909 A JP2002031909 A JP 2002031909A JP 2003233524 A JP2003233524 A JP 2003233524A
Authority
JP
Japan
Prior art keywords
data
identification information
calculation method
calculation
data transfer
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
Application number
JP2002031909A
Other languages
Japanese (ja)
Other versions
JP3977651B2 (en
Inventor
Hideaki Sato
英昭 佐藤
Tatsunori Kanai
達徳 金井
Hideki Yoshida
英樹 吉田
Toshibumi Seki
俊文 關
Kenichiro Yoshii
謙一郎 吉井
Takayuki Miyazawa
隆幸 宮澤
Yasuhiro Kimura
康浩 木村
Haruhiko Toyama
春彦 外山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2002031909A priority Critical patent/JP3977651B2/en
Publication of JP2003233524A publication Critical patent/JP2003233524A/en
Application granted granted Critical
Publication of JP3977651B2 publication Critical patent/JP3977651B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To provide a proxy device capable of reducing a load on a network. <P>SOLUTION: In transfer of a reply data with new contents from a server side proxy 30 to a client side proxy 40, a hash function used in both proxies is decided, and the data, the hash function name, and a fingerprint calculated using the hash function are associated with each other and registered in a fingerprint cache. In transfer of the data registered in the fingerprint cache from the server side proxy 30 to the client side proxy 40, the hash function and the fingerprint are transferred instead of the reply data. <P>COPYRIGHT: (C)2003,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、他の装置のために
データ転送を行うデータ転送方法、データ転送装置及び
プログラムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data transfer method, a data transfer device and a program for transferring data for another device.

【0002】[0002]

【従来の技術】ネットワークを介して様々なサービスを
提供するサーバと、所望のサービスサーバに対して要求
するクライアントとから構成される、クライアント・サ
ーバ型の情報システムが広く利用されている。特に、イ
ンターネット上でHTTPプロトコルを使って通信する
WEBサーバとクライアントとからなるWORLD W
IDE WEBシステム(あるいは単にWEBとも呼ば
れる)は、大変広く利用されているクライアント・サー
バ型の情報システムである。通常、サーバ上ではサーバ
プログラムが動作し、クライアント上ではブラウザなど
の所定のツール(プログラム)が動作する。インターネ
ット上で提供されるサービスの内容も多岐に渡ってお
り、ネットワーク経由で文字、静止画像、動画像、音声
等の情報(例えば、ホームページ、電子メール、デジタ
ルコンテンツなど)や、プログラムなどを提供、配信あ
るいは転送などするサービス、また商品を販売するため
の電子店舗サービス、座席や部屋等の予約サービス、種
々の契約の仲介サービスなど、種々のサービスが既に存
在し、また次々と新たな形態のサービスが出現してい
る。
2. Description of the Related Art A client-server type information system is widely used, which comprises a server that provides various services via a network and a client that requests a desired service server. In particular, a WORLD W that consists of a WEB server and a client that communicate using the HTTP protocol on the Internet.
The IDE WEB system (or simply called WEB) is a client / server type information system which is very widely used. Normally, a server program runs on the server, and a predetermined tool (program) such as a browser runs on the client. The contents of services provided on the Internet are also wide-ranging, and information such as characters, still images, moving images, and audio (such as websites, e-mails, digital contents, etc.) and programs are provided via the network. Various services such as distribution or transfer services, electronic store services for selling products, reservation services for seats, rooms, etc., intermediary services for various contracts already exist, and new services one after another. Has appeared.

【0003】ところで、WEBのようなクライアント・
サーバ型の情報システムにおいては、提供されるサービ
スがどのような形態のものであろうと、基本的にはクラ
イアント・サーバ間でデータ転送が行われることによっ
てサービスが提供される。したがって、クライアントと
サーバとの間で通信に用いるネットワークの容量(バン
ド幅)が、システム全体のボトルネックになりやすい。
そこで、通常、ネットワークの負荷を軽減させるために
キャッシュ技術が用いられる。
By the way, a client such as WEB
In the server type information system, basically, regardless of the form of the provided service, the data is transferred between the client and the server to provide the service. Therefore, the capacity (bandwidth) of the network used for communication between the client and the server is likely to become the bottleneck of the entire system.
Therefore, cache technology is usually used to reduce the load on the network.

【0004】WEBシステムの場合、クライアント上で
動作するブラウザ等はキャッシュ機構を使用するものが
多く、最近アクセスしたデータをキャッシュしている。
WEBではURLと呼ばれる名前で情報やサービスを指
定してアクセスがなされるので、クライアント上のキャ
ッシュは、過去にWEBサーバに要求した情報やサービ
スの結果として返されるデータのうちでキャッシュ可能
なものを、そのURLと対応させてキャッシュに記録し
ている。この場合、キャッシュ内にあるものと同じUR
Lの情報やサービスのリクエストがあった際に、そのキ
ャッシュ内の応答データが古くなっていないと判断でき
るならば、そのデータを返すことで、WEBサーバとの
間の通信を無くすことができる。
In the WEB system, many browsers and the like operating on the client use a cache mechanism, and cache recently accessed data.
On the WEB, since information and services are specified by the name called URL, access is performed, so the cache on the client can cache the data returned as a result of the information and services requested to the WEB server in the past. , Is recorded in the cache in association with the URL. In this case, the same UR that is in the cache
When it is possible to determine that the response data in the cache is not outdated when there is a request for L information or a service, the data can be returned to eliminate communication with the WEB server.

【0005】企業のオフィス内のLANあるいは研究機
関におけるLANあるいは家庭内のLANなどで複数の
ユーザがいる場合、該LANとインターネットとの間に
プロキシサーバを置き、プロキシサーバにキャッシュ機
構を設けるようにすることも多い。クライアント内のキ
ャッシュ(例えば、ブラウザのキャッシュ)は、当該ク
ライアント・ユーザに専用のキャッシュとして動作する
が、LAN上のプロキシサーバのキャッシュは、複数の
クライアント・ユーザに共有のキャッシュとして動作す
る。そのため、後者では、過去に他人(他クライアン
ト)がアクセスしたURLに対してアクセスする際にも
キャッシュが効く。
When there are a plurality of users in a LAN in a company office, a LAN in a research institution, a LAN in a home, etc., a proxy server is placed between the LAN and the Internet, and a cache mechanism is provided in the proxy server. I often do it. The cache in the client (for example, the cache of the browser) operates as a cache dedicated to the client user, while the cache of the proxy server on the LAN operates as a cache shared by a plurality of client users. Therefore, in the latter case, the cache is effective even when the URL accessed by another person (other client) in the past is accessed.

【0006】さて、WEBにおいて、クライアントとサ
ーバとの間は、HTTPと呼ぶプロトコルで通信が行わ
れる。HTTPプロトコルは、クライアントからサーバ
へ送る「リクエストメッセージ」と、それに答えてサー
バからクライアントへ応答を返す「リプライメッセー
ジ」とが組になっている。
[0006] In the WEB, communication between the client and the server is performed by a protocol called HTTP. The HTTP protocol is composed of a "request message" sent from the client to the server and a "reply message" for returning a response from the server to the client.

【0007】リクエストメッセージは、「リクエストヘ
ッダ」と「リクエストボディ」からなる。リクエストヘ
ッダには、アクセスしたい情報やサービスを指定するU
RLやアクセスの種類を示すメソッド名、その他アクセ
スに必要な各種の情報が入る。リクエストボディには、
サーバに送るデータを入れる。リクエストボディに入っ
ているデータを「リクエストデータ」とも呼ぶ。
The request message consists of a "request header" and a "request body". In the request header, U that specifies the information or service you want to access
The RL, the method name indicating the type of access, and other various information necessary for access are entered. In the request body,
Enter the data to send to the server. The data contained in the request body is also called "request data".

【0008】リプライメッセージは、「リプライヘッ
ダ」と「リプライボディ」からなる。リプライヘッダに
は、処理結果のステータスなどの情報が入り、リプライ
ボディには要求された情報や要求されたサービスの処理
結果などのデータが入る。リプライボディに入っている
データを「リプライデータ」とも呼ぶ。
The reply message is composed of a "reply header" and a "reply body". The reply header contains information such as the status of the processing result, and the reply body contains data such as the requested information and the processing result of the requested service. The data contained in the reply body is also called “reply data”.

【0009】リクエストメッセージのメソッドとして
は、サーバ上の情報を読み出す「GETメソッド」、ユ
ーザの持つデータをサーバに書き込む「PUTメソッ
ド」、リクエストの応じて処理した結果を送り返しても
らう「POSTメソッド」が、情報やサービスのアクセ
スに用いられる主要なものである。その他、DELET
Eなどのメソッドが定義されている。
As the method of the request message, there are a "GET method" for reading out information on the server, a "PUT method" for writing user's data to the server, and a "POST method" for sending back the result processed in response to the request. , Is the main one used to access information and services. Others, DELET
Methods such as E are defined.

【0010】多くの場合、GETメソッドのリクエスト
メッセージのリクエストボディ、PUTメソッドのリプ
ライメッセージのリプライボディは空である。POST
メソッドのリクエストメッセージのリクエストボディに
は、必要に応じてサーバ側での処理に用いる情報が入
り、POSTメソッドのリプライメッセージのリプライ
ボディには、その処理の結果のデータが入る。
In many cases, the request body of the GET method request message and the reply body of the PUT method reply message are empty. POST
The request body of the request message of the method contains information used for processing on the server side as necessary, and the reply body of the reply message of the POST method contains data of the result of the processing.

【0011】GETメソッドでサーバから読み出すデー
タは、読み出す毎にサーバ側で生成する「動的データ」
と、既にサーバ側で記憶しているデータをそのまま送り
返す「静的データ」に分けることができる。これらのう
ち、動的データについては、同じURLでも読み出す度
に内容が異なる可能性があるので、多くの場合、サーバ
はキャッシュ不可の指定をそのリプライメッセージのヘ
ッダに入れて送り返す。したがって、WEBのデータで
キャッシュの対象になるのは、静的データの部分であ
る。この静的データは、不特定多数のユーザが参照して
構わない「共有データ」と、ユーザ認証することで特定
のユーザだけがアクセスできるようにアクセス制御を行
う「プライベートデータ」に分けることができる。前者
の共有データは、どのようなキャッシュでもキャッシュ
可能である。しかしながら、後者のプライベートデータ
は、プロキシサーバなどの共有キャッシュでは、キャッ
シュ不可である(プライベートデータは必ずサーバでユ
ーザを認証して送り返す必要があるので)。ただし、ブ
ラウザなどの個人専用のキャッシュの場合には、プライ
ベートデータでもキャッシュは可能である。
The data read from the server by the GET method is "dynamic data" generated on the server side each time the data is read.
Then, the data already stored on the server side can be divided into “static data” that is sent back as it is. Of these, the dynamic data may have different contents each time the same URL is read, so in most cases, the server sends back a non-cacheable designation in the header of the reply message. Therefore, it is only the static data that is cached in the WEB data. This static data can be divided into "shared data" that may be referred to by an unspecified number of users, and "private data" that controls access so that only certain users can access by authenticating the user. . The former shared data can be cached in any cache. However, the latter private data cannot be cached by a shared cache such as a proxy server (since private data must be authenticated by the server and sent back to the user). However, private data such as a browser can be cached even with private data.

【0012】POSTメソッドは、サーバ側で処理をし
た結果を返すので、一般的にサーバはキャッシュ不可の
指定をリプライメッセージのヘッダに入れて結果を送り
返す。そのため、通常はキャッシュの対象にはならな
い。
Since the POST method returns the result of processing on the server side, the server generally sends a result by putting a non-cacheable designation in the header of the reply message. Therefore, it is usually not cached.

【0013】PUTメソッドは、データをサーバに送る
ものなので、キャッシュは何も処理をしない。
Since the PUT method sends data to the server, the cache does nothing.

【0014】[0014]

【発明が解決しようとする課題】従来のWEBのキャッ
シュは、静的コンテンツをキャッシュの対象にしてい
る。かつては、WEBで公開される情報やサービスに
は、情報の更新頻度がそれほど高くなく、不特定多数の
人に公開されているものが多かったため、静的コンテン
ツの割合は非常に高く、従来のキャッシュ技術でもネッ
トワークの負荷の軽減に有効であった。
In the conventional WEB cache, static contents are cached. In the past, information and services published on the WEB were not frequently updated, and many were published to an unspecified number of people, so the proportion of static content was very high, and The cache technology was also effective in reducing the load on the network.

【0015】しかしながら、WEBベースのASP(A
pplication Service Provid
er)のように、ユーザがWEBブラウザを使って、ネ
ットワーク経由でサーバ上の情報やサービスにアクセス
するシステムが普及するにつれて、下記のように従来の
キャッシュ技術では対応できないデータが増加してい
る。 ・ユーザの認証を行い、アクセスできるユーザを制限し
ているので、プライベートデータが多い。 ・バックエンドのデータベースを参照して生成する動的
データが多い。 ・帳票処理や検索などPOSTメソッドを使う場合が多
い。 ・グループ内の情報共有のためにPUTメソッドを使う
場合が多い。 この結果、キャッシュ技術のみではネットワークの負荷
を軽減する手法として有効に機能しなくなってきてい
る。
However, the WEB-based ASP (A
application Service Provid
As described above, as a system in which a user uses a WEB browser to access information and services on a server via a network has become widespread, the amount of data that the conventional cache technology cannot handle is increasing as described below. -There are many private data because the users are authenticated and the users who can access are restricted. -Many dynamic data are generated by referring to the back-end database. -The POST method is often used for form processing and retrieval. -The PUT method is often used to share information within the group. As a result, the cache technology alone is no longer effectively functioning as a method for reducing the load on the network.

【0016】本発明は、上記事情を考慮してなされたも
ので、データ転送装置間を接続するネットワークの負荷
をより軽減することができるキャッシュ技術・圧縮技術
を備えたデータ転送方法、データ転送装置及びプログラ
ムを提供することを目的とする。
The present invention has been made in consideration of the above circumstances, and a data transfer method and a data transfer apparatus equipped with a cache technology / compression technology capable of further reducing the load of a network connecting the data transfer apparatuses. And to provide a program.

【0017】[0017]

【課題を解決するための手段】本発明は、データを圧縮
するための計算方法を複数備える第1データ転送装置
と、データを圧縮するための計算方法を複数備える第2
データ転送装置とが、通信路を介して接続されており、
該第1データ転送装置から該第2データ転送装置へデー
タ要求を行なうことにより、該第1データ転送装置で要
求したデータを取得可能なデータ転送方法であって、該
第1データ転送装置が備える複数の計算方法と第2デー
タ転送装置が備える複数の計算方法とから、両データ転
送装置で備える一計算方法を決定し、該第2データ転送
装置は、該第1データ転送装置からのデータ要求に対応
したデータを取得し、このデータを該決定された一計算
方法で圧縮し、該第2データ転送装置に備える記憶装置
に該一計算方法で圧縮されたデータが記憶済みか否かを
確認し、この確認結果が記憶否の場合には、該記憶装置
へ該データと該圧縮されたデータと該一計算方法とを対
応付けて記憶するとともに、該データを第1データ転送
装置へ転送し、該確認結果が記憶済みの場合には、該圧
縮されたデータを第1データ転送装置へ転送するように
したデータ転送方法である。
The present invention provides a first data transfer device having a plurality of calculation methods for compressing data, and a second data transfer apparatus having a plurality of calculation methods for compressing data.
The data transfer device is connected via a communication path,
A data transfer method capable of acquiring data requested by the first data transfer device by making a data request from the first data transfer device to the second data transfer device, the data transfer method comprising: From the plurality of calculation methods and the plurality of calculation methods included in the second data transfer apparatus, one calculation method included in both data transfer apparatuses is determined, and the second data transfer apparatus requests the data request from the first data transfer apparatus. To obtain data corresponding to the above, compress the data by the determined one calculation method, and confirm whether or not the data compressed by the one calculation method has been stored in the storage device provided in the second data transfer device. If the confirmation result indicates that the data is not stored, the data, the compressed data, and the one calculation method are stored in the storage device in association with each other, and the data is transferred to the first data transfer device. , The If certification result already stored is the data transfer method to forward the compressed data to the first data transfer device.

【0018】より好ましくは、該一計算方法の決定は、
該第1データ転送装置で、該第2データ転送装置からの
該第2データ転送装置で備える複数の計算方法のそれぞ
れを示す識別情報を受信し、該第1データ転送装置が備
える複数の計算方法のそれぞれを示す識別情報と一致す
るものの中から1つ決定し、この決定された識別情報を
該第2データ転送装置へ送信するようにすればよい。
More preferably, the determination of the one calculation method is
The first data transfer apparatus receives identification information from the second data transfer apparatus, the identification information indicating each of the plurality of calculation methods included in the second data transfer apparatus, and the plurality of calculation methods included in the first data transfer apparatus. It is only necessary to determine one from among those that match the identification information indicating each of the above, and transmit the determined identification information to the second data transfer device.

【0019】また、本発明は、複数の計算方法のそれぞ
れでデータを圧縮可能な圧縮手段と、該複数の計算方法
を示す識別情報を予め記憶する記憶手段とを備えるデー
タ転送装置が第1通信路を介して他のデータ転送装置と
の間でデータ転送を行なうデータ転送方法であって、該
通信路から、該他のデータ転送装置の複数の計算方法を
示す識別情報を受信し、前記記憶手段に記憶される複数
の計算方法の識別情報と、前記受信した複数の計算方法
の識別情報とから、一致する計算方法の識別情報の1つ
を選択し、該識別情報が示す計算方法を利用する計算方
法として決定し、該決定された計算方法の識別情報を該
第1通信路へ送出し、該第1通信路から、データまたは
そのデータを前記決定された計算方法で処理された圧縮
データを受信し、この受信がデータであった場合には、
前記決定された計算方法に従って前記圧縮手段で該デー
タを圧縮し、該計算方法と圧縮された圧縮データと該デ
ータとを対応付けてデータ転送装置が備えるキャッシュ
手段に格納し、この受信が圧縮データであった場合に
は、前記決定された計算方法と該処理データとに基づい
て、前記キャッシュ手段から対応するデータを取得し、
該第1通信路から受信したデータまたは、該取得された
データを第2通信路へ送信するようにしたデータ転送方
法である。なお、方法に係る本発明は装置に係る発明と
しても、コンピュータに当該発明に相当する手順を実行
させるための(あるいはコンピュータを当該発明に相当
する手段として機能させるための、あるいはコンピュー
タに当該発明に相当する機能を実現させるための)プロ
グラムとしても成立する。
Further, according to the present invention, the data transfer device is provided with a first communication in which the data transfer device is provided with a compression means capable of compressing data by each of a plurality of calculation methods, and a storage means for storing identification information indicating the plurality of calculation methods in advance. A data transfer method for performing data transfer with another data transfer device via a communication path, wherein identification information indicating a plurality of calculation methods of the other data transfer device is received from the communication path, and the storage information is stored. One of the identification information of the matching calculation method is selected from the identification information of the plurality of calculation methods stored in the means and the received identification information of the plurality of calculation methods, and the calculation method indicated by the identification information is used. Which is determined as the calculation method to be performed, and the identification information of the determined calculation method is transmitted to the first communication path, and data or compressed data obtained by processing the data from the first communication path by the determined calculation method. Received this If the received data was data,
The data is compressed by the compression means according to the determined calculation method, and the calculation method, the compressed data compressed and the data are stored in the cache means provided in the data transfer device in association with each other. If it is, based on the determined calculation method and the processing data, to obtain the corresponding data from the cache means,
The data transfer method is such that the data received from the first communication path or the acquired data is transmitted to the second communication path. Note that the present invention related to a method is also an invention related to an apparatus, for causing a computer to execute a procedure corresponding to the present invention (or for causing a computer to function as a unit corresponding to the present invention, or for a computer according to the present invention. It also holds as a program) to realize the corresponding function.

【0020】本発明によれば、データ転送装置間でデー
タとその圧縮データとその圧縮データを生成した方式名
とを対応付けて保持し、これらの対応を保持しているデ
ータについては、データを転送する代わりにその圧縮デ
ータと方式名を転送することで、特に、方式のバージョ
ンアップや複数の方式名が混在する場合であっても、デ
ータ転送装置間の転送データ量を削減することができ
る。
According to the present invention, the data, the compressed data thereof, and the name of the method by which the compressed data is generated are held in association with each other between the data transfer devices, and for the data holding these correspondences, the data is stored. By transferring the compressed data and the method name instead of transferring the method, it is possible to reduce the amount of transfer data between the data transfer devices, even when the method is upgraded or a plurality of method names are mixed. .

【0021】[0021]

【発明の実施の形態】以下、図面を参照しながら発明の
実施の形態を説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings.

【0022】以下では、WANがインターネットであ
り、クライアントはユーザオフィスLANに接続された
ものであり、HTTPプロトコルが使用されるような場
合を例にとって説明するが、もちろん、本発明は、WA
Nがインターネット以外のものであっても、クライアン
トがオフィス以外の例えば家庭内LAN等に設置された
ものであっても、HTTPプロトコル以外のプロトコル
が使用されるものであっても適用可能である。
The case where the WAN is the Internet, the client is connected to the user office LAN, and the HTTP protocol is used will be described below as an example. Of course, the present invention is not limited to the WA.
Even if N is other than the Internet, the client is installed in a home LAN other than the office, or a protocol other than the HTTP protocol is used, it is applicable.

【0023】図1に本発明を適用するコンピュータ・ネ
ットワーク・システムの基本的な構成例を示す。この構
成例では、ASPサーバセンター2内のローカルエリア
ネットワーク(LAN)12と、ユーザオフィス4内の
ローカルエリアネットワーク(LAN)16との間が、
インターネットや専用回線などの広域ネットワーク(W
AN)14を介して接続されており、ASPサーバセン
ター2内のサーバ20と、ユーザオフィス4内のクライ
アント50とが、LAN12・WAN14・LAN16
を介して通信可能になっている。ASPサーバセンター
内LANには1または複数のサーバが接続され、ユーザ
オフィス内LANには1または複数のクライアントが接
続される。
FIG. 1 shows a basic configuration example of a computer network system to which the present invention is applied. In this configuration example, between the local area network (LAN) 12 in the ASP server center 2 and the local area network (LAN) 16 in the user office 4,
Wide area network (W
The server 20 in the ASP server center 2 and the client 50 in the user office 4 are connected to each other via the LAN 12, WAN 14, LAN 16
It is possible to communicate via. One or a plurality of servers are connected to the LAN in the ASP server center, and one or a plurality of clients are connected to the LAN in the user office.

【0024】WEBベースのASPは、サーバセンター
2に設置したサーバ20から、WAN14を介して、様
々なアプリケーションプログラムによるサービスを提供
し、ユーザはオフィス4に設置されたクライアント上の
WEBブラウザ等を使ってそれらのサービスにアクセス
する。
The WEB-based ASP provides services by various application programs from the server 20 installed in the server center 2 via the WAN 14, and the user uses a WEB browser or the like on the client installed in the office 4. To access those services.

【0025】このような利用形態においては、ユーザオ
フィス内LAN16とサーバセンター内LAN12とを
つなぐネットワーク、特にインターネットなどの広域ネ
ットワーク14の実効的な通信容量(バンド幅)は、サ
ーバセンター内LAN12やユーザオフィス内LAN1
6よりも低く、そこが性能上のボトルネックになって通
信遅延が発生し、アプリケーションの応答性能が低下す
るという問題が発生する。
In such a usage mode, the effective communication capacity (bandwidth) of the network connecting the LAN 16 in the user office and the LAN 12 in the server center, particularly the wide area network 14 such as the Internet, is determined by the LAN 12 in the server center and the user. LAN 1 in the office
It is lower than 6, which causes a bottleneck in performance, causes communication delay, and causes a problem that application response performance is degraded.

【0026】そこで、本実施形態では、図2に示すよう
に、サーバセンター内LAN12とユーザオフィス内L
AN16とをつなぐ広域ネットワーク14の両端に、サ
ーバ側プロキシ30およびクライアント側プロキシ40
という2つのモジュールを設置し、それらの間で後述す
るフィンガープリント圧縮(FP圧縮)を行って通信デ
ータ量を低減することで、広域ネットワークのボトルネ
ックを解消する。
Therefore, in this embodiment, as shown in FIG. 2, the LAN 12 in the server center and the L in the user office.
At both ends of the wide area network 14 connecting to the AN 16, a server side proxy 30 and a client side proxy 40 are provided.
These two modules are installed, and the fingerprint compression (FP compression) described later is performed between them to reduce the communication data amount, thereby eliminating the bottleneck of the wide area network.

【0027】本実施形態のサーバ20、サーバ側プロキ
シ30、クライアント側プロキシ40、クライアント5
0は、いずれも、計算機上でソフトウェア(サーバ・プ
ログラム、サーバ側プロキシ・プログラム、クライアン
ト側プロキシ・プログラム、クライアント・プログラ
ム)を動作させる形で実現することができる。この場合
に、必要に応じて計算機所望の機能を有するOSやドラ
イバソフト、パケット通信用ソフト、暗号ソフト等とい
ったソフトウェア、あるいは通信インタフェース装置や
外部記憶装置や入出力装置等といったハードウェアが搭
載あるいは接続される。また、この場合に、ユーザある
いは管理者からの情報の入力やユーザへの情報の呈示等
のために、グラフィカル・ユーザ・インタフェース(G
UI)を用いると好ましい。
The server 20, the server-side proxy 30, the client-side proxy 40, and the client 5 of this embodiment
Each of 0 can be realized by operating software (server program, server-side proxy program, client-side proxy program, client program) on a computer. In this case, software such as an OS having a desired function of the computer, driver software, packet communication software, encryption software, or hardware such as a communication interface device, an external storage device, an input / output device, or the like is mounted or connected as necessary. To be done. Further, in this case, in order to input information from the user or the administrator or to present the information to the user, the graphical user interface (G
UI) is preferably used.

【0028】サービスを利用するためにユーザが使用す
るクライアント50上では、その目的に応じて例えばW
EBブラウザ等のプログラムが動作する。ユーザは、例
えば、WEBブラウザからインターネットを介し情報転
送あるいは注文受付等の所望のサービスを提供するサー
バにリクエストメッセージを出し、リプライメッセージ
を受けることによって、またはこれを適宜繰り返すこと
によって、サービスを利用する。もちろん、WEBブラ
ウザ等の汎用のソフトウェアではなく、特定のサービス
を利用するための専用のソフトウェアなどの他のものが
用いられても構わない。また、クライアントは、汎用の
計算機ではなく、例えばインターネット機能を有する携
帯電話端末等でもよい。
On the client 50 used by the user to use the service, for example, W is used according to the purpose.
A program such as an EB browser operates. The user uses the service, for example, by issuing a request message from a WEB browser to a server that provides a desired service such as information transfer or order reception via the Internet and receiving a reply message, or by repeating this as appropriate. . Of course, instead of general-purpose software such as a WEB browser, other software such as dedicated software for using a specific service may be used. Moreover, the client may be, for example, a mobile phone terminal having an Internet function, instead of a general-purpose computer.

【0029】サーバ20上では、所定のサーバ・プログ
ラムが動作し、クライアント20のユーザに対して、当
該サーバ・サイトに固有のサービスを提供する。
A predetermined server program operates on the server 20 to provide the user of the client 20 with a service unique to the server site.

【0030】サーバ側プロキシ30は、図2のように、
サーバセンター内LAN12とWAN14との両方に接
続し、トランスペアレント・プロキシとして動作するよ
うに設置して実施することができる。また、図3のよう
に、サーバセンター内LAN12上に設置して実施する
こともできる。また、図4のように、サーバ側プロキシ
30の機能をサーバ20に内蔵するように実施すること
もできる。
The server side proxy 30 is, as shown in FIG.
It can be implemented by connecting to both the LAN 12 and the WAN 14 in the server center and being installed so as to operate as a transparent proxy. Further, as shown in FIG. 3, it may be installed on the LAN 12 in the server center for implementation. Further, as shown in FIG. 4, the function of the server-side proxy 30 may be incorporated in the server 20.

【0031】同様に、クライアント側プロキシ40は、
図2のように、ユーザオフィス内LAN16とWAN1
4との両方に接続し、トランスペアレント・プロキシと
して動作するように設置して実施することができる。ま
た、図3のように、ユーザオフィス内LAN16上に設
置して実施することもできる。また、図4のように、ク
ライアント側プロキシ40の機能をクライアント50上
で動作するブラウザ等に内蔵するように実施することも
できる。あるいは、ブラウザ等の動作するクライアント
50上に、個人用のクライアント側プロキシ40を動作
させるように実施することもできる。
Similarly, the client side proxy 40 is
As shown in FIG. 2, the LAN 16 in the user office and the WAN 1
4 and can be installed and implemented to operate as a transparent proxy. Further, as shown in FIG. 3, it can be installed and implemented on the LAN 16 in the user office. Further, as shown in FIG. 4, the function of the client-side proxy 40 may be incorporated into a browser or the like operating on the client 50. Alternatively, the client-side proxy 40 for personal use may be operated on the operating client 50 such as a browser.

【0032】なお、サーバ側プロキシ30とクライアン
ト側プロキシ40とは、図2〜図4などのように同じ形
態であってもよいし、異なる形態であってもよい。
The server side proxy 30 and the client side proxy 40 may have the same form as shown in FIGS. 2 to 4 or the like, or may have different forms.

【0033】本実施形態のサーバ側プロキシ30および
クライアント側プロキシ40は、いずれも、フィンガー
プリント・キャッシュ(FPキャッシュ)と呼ぶキャッ
シュ機構を持つ。フィンガープリント・キャッシュは、
フィンガープリント(FP)と呼ぶ名前によって、HT
TPプロトコルでやりとりされるデータを記録・管理す
る。
Each of the server side proxy 30 and the client side proxy 40 of this embodiment has a cache mechanism called a fingerprint cache (FP cache). The fingerprint cache is
By the name called Fingerprint (FP), HT
Records and manages data exchanged by the TP protocol.

【0034】フィンガープリントは、図5に例示するよ
うに、HTTPプロトコルでやり取りされるデータ(図
5の例ではコンテンツ)の内容から、あらかじめ決めら
れた計算方法(図5の例ではハッシュ関数)で決定され
る、短い数値である。この数値は、可変長でもよいが、
処理の容易さの観点では、固定長の数値の方が扱いやす
い。
As shown in FIG. 5, the fingerprint is calculated by a predetermined calculation method (hash function in the example of FIG. 5) from the content of data (content in the example of FIG. 5) exchanged by the HTTP protocol. It is a short number that is determined. This number may be variable length,
From the viewpoint of ease of processing, fixed-length numbers are easier to handle.

【0035】フィンガープリントの計算方法としては、
良く知られている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に対してそれぞれ計算したハッシュ値
が同じになる場合があるが、その確率は実用上無視でき
るくらいに小さい)。
The fingerprint calculation method is as follows:
Well-known hash functions such as MD-5 and SHA-1 can be used. These hash functions are
It is used for digital signatures on data, and given arbitrary data, it can be converted to a 128-bit numerical value for MD-5 and a 160-bit numerical value for SHA-1. The characteristics of these hash functions are:
If two data X1 and X2 are given and the data X1 and the data X2 are the same, the hash value calculated for the data X1 and the hash value calculated for the data X2 are equal, but two different Given that the data A and B are given, the hash value calculated for the data A and the hash value calculated for the data B will differ with a very high probability (in principle , Different 2
The calculated hash value may be the same for each of the two data A and B, but the probability is small enough to be ignored in practice).

【0036】本実施形態において、全てのサーバ側プロ
キシ30と全てのクライアント側プロキシ40に、単一
の(所定の)フィンガープリントの計算方法を適用する
ことができれば、該計算方法を意識することなく、扱え
る。しかしながら、現実的には、先に示したようにWA
N14は、開かれた世界であるインターネットを想定し
ているから、本実施形態のサーバ側プロキシ30やクラ
イアント側プロキシ40以外の様々な装置が接続された
り、また、本実施形態のサーバ側プロキシ30やクライ
アント側プロキシ40が接続されたとしても、個々の事
情により、該計算方法が異なるものが用いられる可能性
が高い。
In the present embodiment, if a single (predetermined) fingerprint calculation method can be applied to all the server-side proxies 30 and all the client-side proxies 40, the calculation method need not be considered. I can handle it. However, in reality, as shown above, WA
Since N14 is assumed to be the open world Internet, various devices other than the server-side proxy 30 and the client-side proxy 40 of the present embodiment are connected, and the server-side proxy 30 of the present embodiment is connected. Even if the client-side proxy 40 is connected, there is a high possibility that different calculation methods will be used depending on individual circumstances.

【0037】そこで、図6(a)に示すように、サーバ
側プロキシ30やクライアント側プロキシ40の持つフ
ィンガープリント・キャッシュ(図中の60)は、過去
にHTTPプロトコルでやり取りされたデータ本体(図
中の61)を、そのデータから計算して求めたフィンガ
ープリントの値(図中の62)を名前として、記録・管
理するとともに、更に、どのフィンガープリント方式で
計算されたかを示すフィンガープリント方式(図中の6
3)も同時に管理している。図6(a)では、フィンガ
ープリント62とデータ本体61ごとにフィンガープリ
ント方式63を管理しているが、この方式に限定される
ものではなく、例えば図6(b)のようにフィンガープ
リント方式63ごとにフィンガープリント62とデータ
本体61を管理する方式でもよい。図6(b)の方式で
はフィンガープリント62からデータ本体61を検索す
る場合、フィンガープリントの計算方式が分かれば、異
なる計算方式のデータを検索する必要がないためより高
速な処理が可能となる。
Therefore, as shown in FIG. 6A, the fingerprint cache (60 in the figure) of the server-side proxy 30 and the client-side proxy 40 has a data body (FIG. 6) exchanged in the past by the HTTP protocol. 61) is recorded and managed with the fingerprint value (62 in the figure) calculated from the data as a name, and the fingerprint method (fingerprint method indicating which fingerprint method was used). 6 in the figure
3) is also managed at the same time. In FIG. 6A, the fingerprint method 63 is managed for each of the fingerprint 62 and the data body 61, but the fingerprint method 63 is not limited to this method, and for example, the fingerprint method 63 as shown in FIG. 6B. A method of managing the fingerprint 62 and the data body 61 for each may be used. In the method of FIG. 6B, when the data body 61 is searched from the fingerprint 62, if the calculation method of the fingerprint is known, it is not necessary to search for the data of the different calculation method, and thus faster processing is possible.

【0038】このようなフィンガープリント・キャッシ
ュ方式を適用し、例えばHTTPプロトコルでサーバ側
プロキシ30からクライアント側プロキシ40へデータ
を転送するときに、サーバ側プロキシ30は、当該デー
タのフィンガープリントを指定された計算方式で計算
し、そのフィンガープリントに対応するデータがフィン
ガープリント・キャッシュに入っていれば、当該データ
(と同じ内容のデータ)は過去に転送したことがあるの
で、当該データを転送せずに、対応するフィンガープリ
ントの値と計算方式とを転送する。フィンガープリント
の値と計算方法とを受け取ったクライアント側プロキシ
40は、当該計算方法で当該フィンガープリントの値に
対応するデータをフィンガープリント・キャッシュから
取り出すことで、転送すべきデータを再現することがで
きる。このような方式(すなわち、データ圧縮→データ
転送→データ解凍)により、過去に送ったものと同じデ
ータならば計算方法とフィンガープリントの値を送るだ
けでよいので、ネットワークを流れるデータ量を大幅に
削減することができる。
When the fingerprint cache method is applied and the data is transferred from the server-side proxy 30 to the client-side proxy 40 by the HTTP protocol, for example, the server-side proxy 30 is designated with the fingerprint of the data. If the data corresponding to the fingerprint is stored in the fingerprint cache, the data (data with the same contents) has been transferred in the past, so do not transfer the data. To the corresponding fingerprint value and calculation method. The client-side proxy 40 that has received the fingerprint value and the calculation method can reproduce the data to be transferred by fetching the data corresponding to the fingerprint value from the fingerprint cache by the calculation method. . With this method (that is, data compression → data transfer → data decompression), if the same data as the one sent in the past is used, all that is required is to send the calculation method and the fingerprint value, so that the amount of data flowing through the network is greatly increased. Can be reduced.

【0039】説明上、サーバ側プロキシ30とクライア
ント側プロキシ40との間でのデータ転送にあたり、フ
ィンガープリント・キャッシュを利用してメッセージ・
ボディーのデータをフィンガープリントに置き換えて転
送情報量を圧縮することを、フィンガープリント圧縮
(FP圧縮)と呼ぶものとする。
For the sake of explanation, when transferring data between the server side proxy 30 and the client side proxy 40, a message cache is used by using the fingerprint cache.
The compression of the transfer information amount by replacing the body data with the fingerprint is called fingerprint compression (FP compression).

【0040】なお、サーバ側プロキシ30とクライアン
ト側プロキシ40との間において、すべてのメッセージ
をFP圧縮の適用対象(すなわち、フィンガープリント
・キャッシュを利用してデータをフィンガープリントに
置き換えるための処理を行う対象)としてもよいが、例
えばフィンガープリント・キャッシュの効果が期待でき
ないものなどに対する適用を除外するために、予め定め
られた条件を満たすメッセージについては、これをFP
圧縮の適用対象外とする(常にFP圧縮しないで転送す
る)ようにしてもよい。
It should be noted that, between the server side proxy 30 and the client side proxy 40, all messages are subjected to FP compression (that is, a process for replacing data with a fingerprint using a fingerprint cache is performed. However, in order to exclude the application to those for which the effect of fingerprint cache cannot be expected, for example, the message that satisfies a predetermined condition is set to FP
It may be excluded from the application of compression (always transferred without FP compression).

【0041】この場合の予め定められた条件とは、例え
ば、メッセージ・ヘッダに予め定められた情報が記述さ
れていることである。具体的には、例えば、メッセージ
・ヘッダにGETメソッドを示す情報およびリクエスト
を示す情報が記述されていることである。また、予め定
められた条件の他の例としては、転送されるデータが空
(null)あるいは非常に短いサイズであることであ
る。
The predetermined condition in this case is that predetermined information is described in the message header, for example. Specifically, for example, information indicating a GET method and information indicating a request are described in the message header. Another example of the predetermined condition is that the transferred data is null or has a very short size.

【0042】もちろん、それらの他にも種々のバリエー
ションがある。また、複数の条件を組み合わせて使用す
るようにしてもよい。
Of course, there are various variations other than the above. Further, a plurality of conditions may be combined and used.

【0043】次に、図7〜図13を参照しながら、サー
バ側プロキシ30とクライアント側プロキシ40との間
でデータ転送する際の(FP圧縮の適用対象のメッセー
ジについての)プロキシ間メッセージ・フォーマットに
ついて説明する。
Next, referring to FIGS. 7 to 13, the inter-proxy message format (for the message to which the FP compression is applied) at the time of data transfer between the server side proxy 30 and the client side proxy 40. Will be described.

【0044】サーバ側プロキシ30とクライアント側プ
ロキシ40との間でデータ転送する場合、FP圧縮の適
用対象のメッセージには、データがFP圧縮されてフィ
ンガープリントに置き換えられたメッセージ(圧縮時の
メッセージ)と、FP圧縮されておらず、データが搭載
されているメッセージ(非圧縮時のメッセージ)とがあ
る。
When data is transferred between the server-side proxy 30 and the client-side proxy 40, the message to which FP compression is applied is a message in which the data is FP-compressed and replaced with a fingerprint (a message at the time of compression). And a message that is not FP-compressed but carries data (a message when uncompressed).

【0045】非圧縮時のメッセージ・フォーマットは、
メッセージに含まれるデータがフィンガープリントキャ
ッシュに登録されていない場合に使用される。一方、圧
縮時のメッセージ・フォーマットは、メッセージに含ま
れるデータがフィンガープリントキャッシュに登録され
ている場合に使用される。
The message format at the time of non-compression is
Used when the data contained in the message is not registered in the fingerprint cache. On the other hand, the message format at the time of compression is used when the data included in the message is registered in the fingerprint cache.

【0046】解凍側(受信側)では、非圧縮時のフォー
マットのメッセージを受信したことを契機として、当該
データについてフィンガープリントキャッシュへの登録
を行うことができる。
On the decompression side (reception side), the reception of the message in the uncompressed format allows the data to be registered in the fingerprint cache.

【0047】図7に、メッセージ・フォーマットの一例
を示す。(a)は非圧縮時のメッセージであり、(b)
は圧縮時のメッセージである。各ヘッダ部には、通常の
リプライ・メッセージで用いられる各種ヘッダ情報の他
に、このメッセージがFP方式によって圧縮されたもの
で有るか否かを示す識別情報を含んでいる。この例にお
いては、(a)の識別情報が非圧縮時のメッセージを示
す、“0”であり、(b)の識別情報が圧縮時のメッセ
ージを示す、“1”となっている。一方、ボディ部は、
非圧縮時と圧縮時とでは異なっている。すなわち、図7
(a)の非圧縮時のボディ部は、データが載せられ、図
7(b)の圧縮時のボディー部は、データの代わりにF
Pの計算方式を示すFP方式とその計算方式で求められ
たフィンガープリント(FP)値とが載せられる。
FIG. 7 shows an example of the message format. (A) is the uncompressed message, (b)
Is the message at the time of compression. Each header portion includes various header information used in a normal reply message, and identification information indicating whether or not this message is compressed by the FP method. In this example, the identification information of (a) is "0" indicating a message at the time of non-compression, and the identification information of (b) is "1" indicating a message at the time of compression. On the other hand, the body part
There is a difference between uncompressed and compressed. That is, FIG.
Data is placed in the uncompressed body portion of FIG. 7A, and F instead of the data of the compressed body portion of FIG. 7B.
The FP method indicating the P calculation method and the fingerprint (FP) value obtained by the calculation method are listed.

【0048】また、非圧縮時には、図7(a)に代え
て、図7(a’)に示すようにボディー部のデータに加
えてフィンガープリント方式とフィンガープリントとを
含ませるようにしてもよい。このようにすれば、解凍側
で当該データについてフィンガープリント・キャッシュ
の登録を行う際に、該フィンガープリントを利用するこ
とによって、あらためて当該データからフィンガープリ
ントを求める手間が省ける。
Further, at the time of non-compression, instead of FIG. 7A, a fingerprint method and a fingerprint may be included in addition to the data of the body portion as shown in FIG. 7A '. . In this way, when the decompression side registers the fingerprint cache for the data, by using the fingerprint, it is possible to save the trouble of newly obtaining the fingerprint from the data.

【0049】また、クライアント側プロキシ40が、メ
ッセージ・フォーマットの転送時に利用される所定のF
P方式がわかっている場合には、図7(a’)のメッセ
ージ・フォーマットからFP方式を除いたメッセージ・
フォーマット(図示しない)にしても良い。同様に図7
(b)のメッセージ・フォーマットからFP方式を除い
たメッセージ・フォーマット(図示しない)にしても良
い。
Also, the client side proxy 40 uses a predetermined F used when transferring the message format.
If the P method is known, the message format excluding the FP method from the message format of FIG.
It may be in a format (not shown). Similarly, FIG.
A message format (not shown) obtained by removing the FP method from the message format of (b) may be used.

【0050】ここで、図8に図7(a)のフォーマット
のメッセージの具体例を示し、図9に図7(a’)のフ
ォーマットのメッセージの具体例を示し、図10に図7
(b)のフォーマットのメッセージの具体例を示す。各
図のヘッダ部中の“Fingerprint−Mod
e:…”が識別情報に相当し、図9、図10のボディ部
中の“Fingerprint−Type:…”がFP
方式に、ボディ部中の“6E39…0128”がフィン
ガープリントに相当する。
Here, FIG. 8 shows a concrete example of a message in the format of FIG. 7A, FIG. 9 shows a concrete example of a message in the format of FIG. 7A ', and FIG.
The specific example of the message of the format of (b) is shown. "Fingerprint-Mod" in the header of each figure
“E: ...” corresponds to the identification information, and “Fingerprint-Type: ...” In the body portion of FIGS. 9 and 10 is FP.
In the method, “6E39 ... 0128” in the body part corresponds to the fingerprint.

【0051】図11に、メッセージ・フォーマットの他
の例を示す。(a)は非圧縮時のメッセージであり、
(b)は圧縮時のメッセージである。図11(a)は、
図7(a)と同じフォーマット形式で、ボディ部にはデ
ータが載せられるが、図11(b)ではメッセージ・ボ
ディーは空(null)である。また、図11(b)は
ヘッダ部にフィンガープリント(FP)の計算方式と、
FP値が記述される。通常のヘッダ情報とFP圧縮の有
無を識別可能とする識別情報とについては上記の例と同
様である。
FIG. 11 shows another example of the message format. (A) is a message when uncompressed,
(B) is a message at the time of compression. FIG. 11A shows
Data is placed in the body part in the same format as in FIG. 7A, but the message body is null in FIG. 11B. Further, FIG. 11B shows a calculation method of fingerprint (FP) in the header part,
The FP value is described. The normal header information and the identification information that makes it possible to identify the presence or absence of FP compression are the same as in the above example.

【0052】また、非圧縮時には図11(a)に代え、
FP方式及びフィンガープリントをヘッダ部に備える図
11(a’)のメッセージ・フォーマットを用いる方法
もある。
When not compressed, instead of FIG. 11 (a),
There is also a method of using the message format of FIG. 11 (a ') in which the header portion is provided with the FP method and the fingerprint.

【0053】なお、クライアント側プロキシ40がメッ
セージ・フォーマットの転送時に利用されるFP方式が
わかっている場合には、図11(a’)のメッセージ・
フォーマットからFP方式を除いたメッセージ・フォー
マット(図示しない)にしても良い。同様に図11
(b)のメッセージ・フォーマットからFP方式を除い
たメッセージ・フォーマット(図示しない)にしても良
い。
If the client side proxy 40 knows the FP method used when transferring the message format, the message shown in FIG.
A message format (not shown) obtained by removing the FP method from the format may be used. Similarly, FIG.
A message format (not shown) obtained by removing the FP method from the message format of (b) may be used.

【0054】図11(a)のフォーマットのメッセージ
の具体例は、先に示した図8と同じとなる。また、図1
1(b)のフォーマットのメッセージの具体例を図12
で示し、図11(a‘)のフォーマットのメッセージの
具体例を、図13で示す。
A specific example of the message in the format shown in FIG. 11A is the same as that shown in FIG. Also, FIG.
A specific example of the message in the format of 1 (b) is shown in FIG.
, And a specific example of the message in the format of FIG. 11 (a ') is shown in FIG.

【0055】以下では、上記で説明してきた本発明の実
施形態を具現化したシステム構成例を説明する。
In the following, a system configuration example that embodies the embodiment of the present invention described above will be described.

【0056】クライアント50からサーバ20のWeb
ページへアクセスされる場合、クライアント50とサー
バ20とのコネクションが確立した後、サーバ20とク
ライアント50との間で、大きく分けると図14に示す
ように3つの処理が行なわれる。
Web from client 50 to server 20
When the page is accessed, after the connection between the client 50 and the server 20 is established, roughly divided between the server 20 and the client 50, three processes are performed as shown in FIG.

【0057】まず、クライアント50とサーバ20との
間の各装置間(ここでは、クライアント50−クライア
ント側プロキシ間40、クライアント側プロキシ40−
サーバ側プロキシ間30、サーバ側プロキシ30−サー
バ20間)では、接続に必要な各種情報の交換等の初期
化処理が行なわれる。
First, between each device between the client 50 and the server 20 (here, between the client 50 and the client side proxy 40, the client side proxy 40-
Between the server-side proxy 30 and between the server-side proxy 30 and the server 20), initialization processing such as exchange of various information necessary for connection is performed.

【0058】次に、クライアント50からサーバ20へ
Webページのコンテンツを要求するためのリクエスト
・メッセージ処理(以下、リクエスト処理)が行なわれ
る。このリクエスト処理は、クライアント50からサー
バ20への一方向へ、リクエスト・メッセージが転送さ
れるものである。
Next, request message processing (hereinafter referred to as request processing) for requesting the content of the Web page from the client 50 to the server 20 is performed. In this request processing, a request message is transferred in one direction from the client 50 to the server 20.

【0059】このリクエスト・メッセージに対応して、
サーバ20からクライアント50への一方向へ、要求の
あったWebページのコンテンツを転送するリプライ・
メッセージ処理が行なわれる。
In response to this request message,
A reply that transfers the requested Web page content from the server 20 to the client 50 in one direction.
Message processing is performed.

【0060】なお、上記の各処理が上手く行かなかった
ときには、別の処理が行なわれる(例えば、リプライ・
メッセージ処理が上手く行かなかったときに、再リクエ
スト・メッセージ処理が行なわれる)が、本発明の実施
形態には直接関係するものではないので、説明を省略す
る。
If each of the above processes is not successful, another process is performed (for example, reply
If the message processing is not successful, re-request message processing is performed), but since it is not directly related to the embodiment of the present invention, the description thereof will be omitted.

【0061】以下では、上記の初期化処理およびリクエ
スト処理と、リプライ処理とに分けて、サーバ側プロキ
シ30およびクライアント側プロキシ40間の本発明に
係る点について詳細に説明する。なお、各処理におい
て、サーバ側プロキシ30およびクライアント側プロキ
シ40間を除いては、従来から行なわれている各処理と
何ら変更がない(既存通りの)ため説明を省略する。
In the following, the points relating to the present invention between the server side proxy 30 and the client side proxy 40 will be described in detail by dividing into the above initialization processing, request processing and reply processing. In each process, except for between the server-side proxy 30 and the client-side proxy 40, there is no change (conventional) from each process that has been conventionally performed, and the description thereof will be omitted.

【0062】まず、初期化処理およびリクエスト処理の
際の、本発明の実施形態に係る部分について、図15〜
図18にて機能ブロックをそれぞれ例示し、説明する。
First, FIG. 15 to FIG. 15 will be used to describe a portion according to the embodiment of the present invention during initialization processing and request processing.
The functional blocks will be illustrated and described with reference to FIG.

【0063】図15において、クライアント側プロキシ
40は、自身が所有するフィンガープリントの計算方式
が示されているFP方式リストを記憶するFPリスト記
憶部71を備えている。このクライアント側プロキシ4
0のFP方式リストは、クライアント側プロキシ40に
新たなフィンガープリント計算方式が図示しない記憶装
置に記憶(インストール)される際にそのFP方式名が
追加され、クライアント側プロキシ40の該記憶装置に
記憶されているフィンガープリント計算方式を削除(ア
ンインストール)する際にFP方式名も削除される。
In FIG. 15, the client side proxy 40 is provided with an FP list storage unit 71 for storing an FP method list showing the fingerprint calculation method owned by itself. This client side proxy 4
The FP method list of 0 is added with the FP method name when a new fingerprint calculation method is stored (installed) in the storage device (not shown) in the client side proxy 40 and stored in the storage device of the client side proxy 40. When deleting (uninstalling) the existing fingerprint calculation method, the FP method name is also deleted.

【0064】同様に、サーバ側プロキシ30も、自身が
所有するフィンガープリントの計算方式が示されている
FP方式リストを記憶するFPリスト記憶部75を備え
ている。このサーバ側プロキシ30のFP方式リスト
も、サーバ側プロキシ30に新たなフィンガープリント
計算方式が図示しない記憶装置に記憶(インストール)
される際にそのFP方式名が追加され、サーバ側プロキ
シ30の該記憶装置に記憶されているフィンガープリン
ト計算方式をプリント計算方式を削除(アンインストー
ル)する際にFP方式名も削除される。
Similarly, the server-side proxy 30 also has an FP list storage unit 75 for storing an FP method list in which the fingerprint calculation method owned by itself is stored. The FP method list of this server-side proxy 30 is also stored (installed) in a storage device (not shown) in which a new fingerprint calculation method for the server-side proxy 30 is stored.
The FP method name is added when this is performed, and the FP method name is also deleted when the fingerprint calculation method stored in the storage device of the server-side proxy 30 is deleted (uninstalled).

【0065】初期化処理時には、サーバ側プロキシ30
とクライアント側プロキシ40との間で、本接続時にお
ける、リプライ・メッセージの転送時に新たなメッセー
ジをフィンガープリントを行なう場合のフィンガープリ
ントの計算方式の取り決めがなされる。
During initialization processing, the server side proxy 30
Between the client side proxy 40 and the client-side proxy 40, a fingerprint calculation method is agreed upon when a new message is fingerprinted when the reply message is transferred during the main connection.

【0066】図15において、まず、クライアント側プ
ロキシ40のFPリスト記憶部71からクライアント側
プロキシ40のFP方式リストを読み出し、送信部72
により、サーバ側プロキシ30へ送信する。サーバ側プ
ロキシ30は、このクライアント側プロキシ40のFP
方式リストを受信部73で受信し、FP方式決定部74
へ供給する。また、FPリスト記憶部75からサーバ側
プロキシ30のFP方式リストをFP方式決定部74へ
供給する。
In FIG. 15, first, the FP method list of the client side proxy 40 is read from the FP list storage section 71 of the client side proxy 40, and the transmission section 72 is used.
Is transmitted to the server side proxy 30. The server side proxy 30 is the FP of this client side proxy 40.
The receiving unit 73 receives the method list, and the FP method determining unit 74 receives the method list.
Supply to. Further, the FP method storage unit 75 supplies the FP method list of the server-side proxy 30 to the FP method determination unit 74.

【0067】FP方式決定部74は、サーバ側プロキシ
30のFP方式リストと、クライアント側プロキシ40
のFP方式リストとから、両者で一致するフィンガープ
リント計算方式名を1つ選択する。この選択は、例え
ば、クライアント側プロキシ40が保有するFP方式リ
スト72内の各FP方式に優先度を予め付けておき、前
記で選択可能なもの中から一番優先度の高いものを選択
するようにすればよい。また、両者で一致するものがな
い場合には、無しを意味する“Null”を選択する。
なお、ここでは一つ選択するとしたが、優先度を付加し
て複数選択するようにしても良い。
The FP method deciding unit 74 is provided with the FP method list of the server side proxy 30 and the client side proxy 40.
From the FP method list of No. 1, one fingerprint calculation method name that matches both is selected. In this selection, for example, each FP method in the FP method list 72 held by the client side proxy 40 is given a priority in advance, and the one having the highest priority is selected from the selectable ones. You can do this. If there is no match between the two, "Null" which means none is selected.
Although one is selected here, a plurality of selections may be made by adding a priority.

【0068】選択したフィンガープリントの計算方式名
(Nullを含む)は、FP方式登録部76へ一時登録
する。また、この選択した計算方式名を送信部77を介
して、クライアント側プロキシ40へ通知する。
The selected fingerprint calculation method name (including Null) is temporarily registered in the FP method registration unit 76. Further, the selected calculation method name is notified to the client side proxy 40 via the transmission unit 77.

【0069】クライアント側プロキシ40の受信部78
は、この選択された計算方式をFP方式登録部79へ一
時登録(Nullを含む)する。これにより、クライア
ント側プロキシ40とサーバ側プロキシ30とは、本接
続時に用いるフィンガープリントの計算方式(もしくは
一致するFP方式が無いこと)がわかるようになる。
Receiving unit 78 of client-side proxy 40
Temporarily registers (including Null) the selected calculation method in the FP method registration unit 79. This allows the client-side proxy 40 and the server-side proxy 30 to understand the fingerprint calculation method (or that there is no matching FP method) used during the main connection.

【0070】初期化処理が終了するとリクエスト処理が
行なわれる。クライアント側プロキシ40は、クライア
ント50からのリクエスト・メッセージを受信部80で
受信し、そのまま、送信部81からサーバ側プロキシ3
0へ転送する。サーバ側プロキシ30は、転送されたリ
クエスト・メッセージを受信部82で受信し、そのま
ま、送信部83を介して、サーバ20へ転送する。ここ
で示したリクエスト処理は、従来の構成における処理と
同等である。
When the initialization process is completed, the request process is performed. The client-side proxy 40 receives the request message from the client 50 at the receiving unit 80, and directly receives the request message from the transmitting unit 81.
Transfer to 0. The server-side proxy 30 receives the transferred request message at the receiving unit 82 and transfers the request message to the server 20 via the transmitting unit 83 as it is. The request processing shown here is equivalent to the processing in the conventional configuration.

【0071】なお、便宜上、サーバ側プロキシ30の受
信部73と受信部82とは異なるブロックで記載してい
るが、同じもので構成してよいことは勿論である。更
に、サーバ側プロキシ30の送信部77と送信部83も
異なるブロックで記載しているが、同じもので構成して
よいことは勿論である。また、クライアント側プロキシ
40の各受信部78、80および各送信部72、81に
ついても同様であって良い。
Note that, for convenience, the receiving section 73 and the receiving section 82 of the server side proxy 30 are described as different blocks, but it goes without saying that they may be configured by the same block. Furthermore, although the transmitting unit 77 and the transmitting unit 83 of the server-side proxy 30 are also described in different blocks, it goes without saying that they may be configured by the same block. The same applies to the receiving units 78 and 80 and the transmitting units 72 and 81 of the client-side proxy 40.

【0072】図16は、初期化処理およびリクエスト処
理の際の、本発明の実施形態に係る部分について、図1
5とは異なる別の例を示したものである。
FIG. 16 shows a portion relating to the embodiment of the present invention at the time of initialization processing and request processing.
5 shows another example different from No. 5.

【0073】図16の初期化処理は、図15の初期化処
理と比較して、サーバ側プロキシ30にて、決定したフ
ィンガープリントの計算方式名をサーバ側プロキシ30
で一時登録しない点が異なっている。代わりに、クライ
アント側プロキシ40は、リクエスト処理時に、初期化
処理時に決定され登録されたFP方式名をFP方式登録
部79から読み出して、このFP方式名をクライアント
50からのリクエスト・メッセージに付加するFP方式
付加部84を新たに備えている。FP方式付加部84に
てFP方式名が付加されたリクエスト・メッセージは、
サーバ側プロキシ30に新たに追加したFP方式分離部
85で、FP方式名が分離される。分離されたFP方式
名は、図15と同様のサーバ側プロキシ30のFP方式
登録部76に一時登録される。
In the initialization processing of FIG. 16, compared with the initialization processing of FIG. 15, the server side proxy 30 uses the determined fingerprint calculation method name as the server side proxy 30.
It is different in that it is not temporarily registered in. Instead, at the time of request processing, the client side proxy 40 reads the FP method name determined and registered at the time of initialization processing from the FP method registration unit 79, and adds this FP method name to the request message from the client 50. An FP system addition unit 84 is newly provided. The request message to which the FP method name is added by the FP method adding unit 84 is
The FP method separating unit 85 newly added to the server-side proxy 30 separates the FP method name. The separated FP method name is temporarily registered in the FP method registration unit 76 of the server-side proxy 30 as in FIG.

【0074】なお、この図16の場合には、リクエスト
処理が行なわれて初めて、サーバ側プロキシ30が、決
定されたフィンガープリントの計算方式を知ることにな
る。また、両者で一致するFP方式がない場合には、N
ullとして扱うことは図15の説明と同様である。ま
た、FP方式名を一つ選択するとしたが、図15の説明
と同様に優先度を付加して複数選択するようにしても良
い。
In the case of FIG. 16, the server side proxy 30 becomes aware of the determined fingerprint calculation method only after the request processing is performed. Also, if there is no FP method that agrees with both, N
The handling as “ull” is the same as the description of FIG. Further, although one FP method name is selected, a plurality of FP method names may be selected by adding a priority as in the description of FIG.

【0075】図17は、初期化処理およびリクエスト処
理の際の、本発明の実施形態に係る部分について、図1
5および図16とは異なる更なる別の例を示したもので
ある。
FIG. 17 shows a portion according to the embodiment of the present invention at the time of initialization processing and request processing.
17 shows yet another example different from FIG. 5 and FIG. 16.

【0076】図17の初期化処理は、図15の初期化処
理と比較して、サーバ側プロキシ30にて、決定したフ
ィンガープリントの計算方式名を、クライアント側プロ
キシ40へ送信しない点(かつ登録しない点)が異なっ
ている。また、リクエスト処理は、何ら変更点がない。
なお、両者で一致するFP方式がない場合には、Nul
lとして扱うことは図15と同様である。また、FP方
式名を一つ選択するとしたが、図15の説明と同様に優
先度を付加して複数選択するようにしても良い。
The initialization process of FIG. 17 is different from the initialization process of FIG. 15 in that the server side proxy 30 does not transmit the determined fingerprint calculation method name to the client side proxy 40 (and registration). The difference). There is no change in request processing.
If there is no FP method that matches with both, Nul
Handling as l is the same as in FIG. Further, although one FP method name is selected, a plurality of FP method names may be selected by adding a priority as in the description of FIG.

【0077】この図17の場合には、リクエスト処理が
終了しても、クライアント側プロキシ40は、決定され
ているフィンガープリントの計算方式名を知らないこと
になる。なお、フィンガープリントの計算は、後述する
リプライ処理時に行なわれるので、その計算時までにわ
かれば良い。
In the case of FIG. 17, even if the request processing is completed, the client side proxy 40 does not know the determined fingerprint calculation method name. The fingerprint calculation is performed at the time of reply processing, which will be described later, so it is sufficient to know it by the time of the calculation.

【0078】なお、図15〜図17は、何れもサーバ側
プロキシ30でFP方式を決定していたが、これとは全
く逆で、サーバ側プロキシ30のFP方式リストをクラ
イアント側プロキシ40へ送信し、クライアント側プロ
キシ30でFP方式を決定するようにしても良いこと
は、勿論である。
15 to 17, the FP method is determined by the server-side proxy 30 in all cases, but the opposite is true, and the FP method list of the server-side proxy 30 is transmitted to the client-side proxy 40. However, it goes without saying that the client side proxy 30 may determine the FP method.

【0079】図18は、上記で説明した図15〜図17
のように初期化処理時に、特に利用するフィンガープリ
ントの計算方式を決定しない、別の実施形態を示してい
る。
FIG. 18 shows the above-described FIGS.
As described above, another embodiment is shown in which the fingerprint calculation method to be used in particular is not determined during the initialization processing.

【0080】図18では、初期化処理は、この後のリク
エスト、リプライ処理の前処理となるユーザ認証処理な
どが行なわれているだけであり、そのために何ら処理を
図示していない。
In FIG. 18, the initialization process is performed only for the subsequent request and the user authentication process which is the preprocess of the reply process, and therefore no process is shown.

【0081】サーバ側プロキシ30とクライアント側プ
ロキシ40は、それぞれ自身が所有するフィンガープリ
ントの計算方式が示されているFP方式リストを記憶す
るFPリスト記憶部71、75を備えている。なお、こ
のFP方式リストの追加および削除は、上記した方法と
同様でよい。
The server-side proxy 30 and the client-side proxy 40 are respectively provided with FP list storage units 71 and 75 for storing the FP method list in which the fingerprint calculation method owned by each server is shown. The addition and deletion of this FP method list may be the same as the above-mentioned method.

【0082】リクエスト処理時において、クライアント
側プロキシ40は、クライアント50からのリクエスト
・メッセージを受信部80で受信する。クライアント側
プロキシ40は、FPリスト記憶部75に記憶される、
自身のFP方式リストの中から、所定の方法でフィンガ
ープリント計算方式名を1つ選択し、FP方式登録部7
9へ一時登録し、また、FP方式付加部84によって、
この一時登録されたFP方式名を読み出して、受信した
リクエスト・メッセージへ付加する。この選択は、例え
ば、クライアント側プロキシ40自身が保有するFP方
式リスト内の各FP方式に優先度を予め付けておき、一
番優先度の高いものを選択するようにすればよい。
At the time of request processing, the client side proxy 40 receives the request message from the client 50 at the receiving unit 80. The client side proxy 40 is stored in the FP list storage unit 75,
From the FP method list of its own, select one fingerprint calculation method name by a predetermined method, and select the FP method registration unit 7
9 and the FP method addition unit 84
This temporarily registered FP method name is read and added to the received request message. For this selection, for example, each FP method in the FP method list held by the client side proxy 40 itself is given a priority in advance, and the one having the highest priority may be selected.

【0083】FP計算の方式名が付加されたリクエスト
メッセージは、サーバ側プロキシ30のFP方式分離部
85で、FP方式名が分離される。分離されたFP方式
名は、サーバ側プロキシ30のFPリスト記憶部71に
予め備えるサーバ側プロキシ30が備えるFP方式の名
前が記載されるFP方式リストから一致するものがある
か否かを確認する。一致するものがあれば、そのFP方
式名は、FP方式登録部76に一時登録される。一方、
一致するものが無い場合には、Nullとして扱い、F
P方式登録部76へ登録しない、あるいは無いことを示
す情報を一時登録する。また、この実施形態ではFP方
式名を一つ選択するとしたが、図15の説明と同様に優
先度を付加して複数選択するようにしても良い。
The request message to which the method name of FP calculation is added is separated by the FP method separating unit 85 of the server side proxy 30. The separated FP method name is checked whether or not there is a match from the FP method list in which the name of the FP method included in the server-side proxy 30 is included in the FP list storage unit 71 of the server-side proxy 30. . If there is a match, the FP method name is temporarily registered in the FP method registration unit 76. on the other hand,
If there is no match, it is treated as Null and F
Information indicating that there is no registration or no registration is temporarily registered in the P system registration unit 76. Further, in this embodiment, one FP system name is selected, but a plurality of FP system names may be selected by adding a priority as in the description of FIG.

【0084】サーバ側プロキシ40は、分離したリクエ
スト・メッセージを送信部83を介して、サーバ20へ
転送する。
The server side proxy 40 transfers the separated request message to the server 20 via the transmitting unit 83.

【0085】次に、リプライ・メッセージ処理につい
て、図19〜図22を用いて説明する。
Next, the reply message processing will be described with reference to FIGS.

【0086】まず、サーバ側プロキシ30がサーバ20
からのリプライメッセージを受信した場合について説明
する。
First, the server side proxy 30 sets the server 20
The case of receiving a reply message from is described.

【0087】図19に示されるように、本サーバ側プロ
キシ30は、サーバセンター内LAN12または広域ネ
ットワーク14から転送メッセージを受信するための処
理を行う受信部131、転送メッセージに含まれるデー
タに対してFP圧縮を施すための処理部132、サーバ
センター内LAN12または広域ネットワーク14へ転
送メッセージを送信するための処理を行う送信部13
3、フィンガープリントとそのもととなったデータとを
対応付けて記憶するためのフィンガープリント・キャッ
シュ(FPキャッシュ)134、既説明の初期化処理お
よびリクエスト処理時にFP方式名を一時登録したFP
方式登録部76を備える。また、処理部132は、転送
メッセージに含まれるデータを圧縮対象とすべきか否か
を判定するためのフィンガープリント(FP)圧縮判定
部135、FP方式登録部76を参照してどの計算方式
でフィンガープリントを計算するかを決定するFP方式
決定部136、フィンガープリント・キャッシュ134
に対する検索や登録などを行うためのフィンガープリン
ト・キャッシュ(FPキャッシュ)管理部137、転送
メッセージに含まれるデータを対応するフィンガープリ
ントで置き換えるなどの処理を行うためのフィンガープ
リント(FP)圧縮処理部139を含む。また、既説明
の初期化処理およびリクエスト処理時が図17、図18
の場合には、リプライ処理時には、更にFPの計算に用
いたFP方式をメッセージに付加するFP方式付加部1
38を備える。
As shown in FIG. 19, the server-side proxy 30 receives the transfer message from the LAN 12 in the server center or the wide area network 14, and a receiving unit 131 for processing the data included in the transfer message. The processing unit 132 for performing the FP compression, the transmission unit 13 for performing the processing for transmitting the transfer message to the LAN 12 in the server center or the wide area network 14.
3. A fingerprint cache (FP cache) 134 for storing the fingerprint and the data that is the basis of the fingerprint in association with each other, and the FP that temporarily registered the FP method name during the initialization processing and the request processing described above.
A method registration unit 76 is provided. Further, the processing unit 132 refers to the fingerprint (FP) compression determination unit 135 and the FP method registration unit 76 for determining whether or not the data included in the transfer message should be the compression target, and which calculation method is used for the fingerprint. FP method determination unit 136 that determines whether to calculate a print, fingerprint cache 134
Fingerprint cache (FP cache) management unit 137 for performing search and registration with respect to, and fingerprint (FP) compression processing unit 139 for performing processing such as replacing data included in a transfer message with a corresponding fingerprint. including. In addition, the initialization process and the request process described above are performed in FIGS.
In the case of, in the reply processing, the FP method addition unit 1 for further adding the FP method used for the calculation of the FP to the message.
38.

【0088】図20に、サーバ側プロキシ30からクラ
イアント側プロキシ40へリプライメッセージを転送す
る際のサーバ側プロキシ30の処理手順の一例を示す。
なお、図20は、一つのリプライメッセージを受けたと
きの処理を記述しているが、実際はサーバ側プロキシ3
0が受け取ったリプライメッセージ全てに対して、図2
0に例示する処理を行う。
FIG. 20 shows an example of the processing procedure of the server side proxy 30 when transferring the reply message from the server side proxy 30 to the client side proxy 40.
Note that FIG. 20 describes the processing when one reply message is received, but in reality, the server-side proxy 3
0 for all reply messages received by 0
The process illustrated in 0 is performed.

【0089】サーバ側プロキシ30は、受信部131に
より、サーバ20からリプライメッセージを受信する
(ステップS1)。
The server side proxy 30 receives the reply message from the server 20 by the receiver 131 (step S1).

【0090】FP圧縮判定部135は、該リプライメッ
セージのリプライデータがFP圧縮対象のものであるか
否か調べ、判断する(ステップS2)。リプライデータ
がFP圧縮対象外のものと判断されたならば(ステップ
S2)、受信したリプライメッセージを送信部133か
らクライアント側プロキシ40へ転送する(ステップS
12)。
The FP compression determination unit 135 checks and determines whether or not the reply data of the reply message is for FP compression (step S2). When it is determined that the reply data is not the object of FP compression (step S2), the received reply message is transferred from the transmission unit 133 to the client side proxy 40 (step S).
12).

【0091】ステップS2にて該リプライメッセージの
リプライデータがFP圧縮対象のものであると判断され
たならば、FP方式決定部136はFP方式登録部76
を参照し(ステップS3)、一時登録されるFP方式名
のFP方式を、利用するFP方式として決定する(ステ
ップS4)。次に、FPキャッシュ管理部137にて、
ステップS4にて決定したFP方式を用いて該リプライ
データのフィンガープリントの値を計算し(ステップS
5)、該フィンガープリントの値と計算方式をキーとし
てフィンガープリント・キャッシュ34を検索する(ス
テップS6)。
If it is determined in step S2 that the reply data of the reply message is for FP compression, the FP method determination unit 136 causes the FP method registration unit 76.
(Step S3), the FP method of the FP method name temporarily registered is determined as the FP method to be used (step S4). Next, in the FP cache management unit 137,
The fingerprint value of the reply data is calculated using the FP method determined in step S4 (step S
5) The fingerprint cache 34 is searched by using the fingerprint value and the calculation method as a key (step S6).

【0092】そして、該フィンガープリントの値とこれ
に対応するデータとの組がフィンガープリント・キャッ
シュ134に登録されていたならば(ステップS7)、
FP圧縮処理部139にて、受信したリプライメッセー
ジを、該フィンガープリントの値を用いてFP圧縮時の
フォーマットにし、送信部133から、クライアント側
プロキシ40へ送信する(ステップS9)。なお、既説
明の初期化処理およびリクエスト処理時が図17または
図18の場合には、ステップS9の際に、更にFP方式
決定部136にて決定されたFP方式をメッセージに付
加するようにすることが必要である(ステップS8)。
なお、FP方式決定部136にて決定されたFP方式と
キャッシュに保存されていたFP方式が異なった場合、
(1)FP方式決定部136にて決定されたFP方式で
再度FPを計算しなおす、(2)キャッシュに保存され
ていたFP方式を用いるなどの方法でメッセージに付加
するFP方式を決定する。この場合のフォーマットは、
例えば、図7(b)等である。なお、既説明の初期化処
理およびリクエスト処理時が図15や図16の場合に
も、このステップS8を実施しても構わない。
Then, if the set of the fingerprint value and the corresponding data is registered in the fingerprint cache 134 (step S7),
The FP compression processing unit 139 converts the received reply message into a format for FP compression using the fingerprint value, and transmits it from the transmission unit 133 to the client side proxy 40 (step S9). When the initialization process and the request process described above are in FIG. 17 or 18, the FP method determined by the FP method determining unit 136 is added to the message in step S9. It is necessary (step S8).
If the FP method determined by the FP method determining unit 136 is different from the FP method stored in the cache,
The FP method to be added to the message is determined by a method such as (1) recalculating the FP again with the FP method determined by the FP method determining unit 136, or (2) using the FP method stored in the cache. The format in this case is
For example, FIG. 7B and the like. It should be noted that this step S8 may be performed even when the initialization process and the request process described above are performed in FIGS. 15 and 16.

【0093】また、ステップS9のとき、必要に応じ
て、リプライヘッダ内のデータ長を表すフィールド(C
ontent−Length:フィールド)の値を、F
P圧縮時のフォーマットにあわせて設定する。
In step S9, if necessary, a field (C
the value of the ontent-Length: field) is F
Set according to the P compression format.

【0094】一方、ステップS6の検索の結果、該フィ
ンガープリントの値とこれに対応するデータとの組がフ
ィンガープリント・キャッシュ134に登録されていな
かったならば(ステップS7)、次の2つの作業を行
う。
On the other hand, as a result of the search in step S6, if the pair of the fingerprint value and the corresponding data is not registered in the fingerprint cache 134 (step S7), the following two operations are performed. I do.

【0095】(1)FP圧縮処理部139にて、受信し
たリプライメッセージを、(必要に応じて該フィンガー
プリントの値と計算方式を用いて)非FP圧縮時のフォ
ーマットにして(例えば図7(a)等)、送信部133
から、クライアント側プロキシ40へ送信する(ステッ
プS10)。
(1) The FP compression processing unit 139 converts the received reply message into a format for non-FP compression (using the fingerprint value and the calculation method as necessary) (see, for example, FIG. a) and the like), the transmission unit 133
To the client-side proxy 40 (step S10).

【0096】(2)FPキャッシュ管理部137にて、
該フィンガープリントの値と、計算方式、該リプライデ
ータとを対応付けて(フィンガープリントの値をキーに
して)、フィンガープリント・キャッシュ134に登録
する(ステップS11)。
(2) In the FP cache management unit 137,
The fingerprint value, the calculation method, and the reply data are associated with each other (using the fingerprint value as a key) and registered in the fingerprint cache 134 (step S11).

【0097】なお、上記の(1)と(2)は、いずれを
先に行ってもよいし、並行して行ってもよい。
Any of the above (1) and (2) may be performed first, or may be performed in parallel.

【0098】図21に示されるように、本クライアント
側プロキシ40は、ユーザオフィス内LAN16または
広域ネットワーク14から転送メッセージを受信するた
めの処理を行う受信部141、転送メッセージに含まれ
るデータに対してFP解凍を施すための処理部142、
ユーザオフィス内LAN16または広域ネットワーク1
4へ転送メッセージを送信するための処理を行う送信部
143、フィンガープリントとそのもととなったデータ
とを対応付けて記憶するためのフィンガープリント・キ
ャッシュ(FP・キャッシュ)144を備えている。ま
た、処理部142は、転送メッセージに含まれるデータ
を圧縮対象とすべきか否かおよび転送メッセージに対す
るFP圧縮の有無を判定するためのフィンガープリント
(FP)圧縮判定部145、FP方式登録部79にて一
時記憶されているFP方式名を参照してFP圧縮方式を
決定するFP方式決定部146、フィンガープリント・
キャッシュ144に対する検索や登録などを行うための
フィンガープリント・キャッシュ(FPキャッシュ)管
理部147、FP圧縮された転送メッセージに含まれる
フィンガープリントから元のデータを解凍するなどの処
理を行うためのフィンガープリント(FP)解凍処理部
148を含む。なお、既説明の初期化処理およびリクエ
スト処理時が図17の場合には、FP方式登録部79は
無い(または一時登録されていない)ので、FP方式決
定部146は、リプライメッセージを解析し、該メッセ
ージ内に含まれるFP方式を参照して、FP方式を決定
するようにするものとする。また、図18の場合にも、
FP方式登録部79には、サーバ側プロキシ30でサポ
ートされるFP方式か否かを確認することなくFP方式
が登録されているため、FP方式決定部146は、リプ
ライメッセージを解析し、該メッセージ内に含まれるF
P方式を参照して、FP方式を確認するような構成とし
たほうがよい。
As shown in FIG. 21, the present client-side proxy 40 has a receiving unit 141 which performs processing for receiving a transfer message from the LAN 16 in the user office or the wide area network 14, and the data included in the transfer message. A processing unit 142 for performing FP decompression,
LAN 16 in user office or wide area network 1
4 is provided with a transmission unit 143 that performs processing for transmitting a transfer message to the No. 4, and a fingerprint cache (FP cache) 144 that stores the fingerprint and the data that is the source of the fingerprint in association with each other. The processing unit 142 also includes a fingerprint (FP) compression determination unit 145 and an FP method registration unit 79 for determining whether or not the data included in the transfer message should be compressed and whether or not the FP compression of the transfer message is performed. FP method determination unit 146 that determines the FP compression method by referring to the FP method name temporarily stored by
Fingerprint cache (FP cache) management unit 147 for searching and registering in the cache 144, fingerprint for performing processing such as decompressing original data from the fingerprint included in the FP-compressed transfer message The (FP) decompression processing unit 148 is included. When the initialization process and the request process described above are in FIG. 17, the FP system registration unit 79 does not exist (or is not temporarily registered), so the FP system determination unit 146 analyzes the reply message, It is assumed that the FP method is determined by referring to the FP method included in the message. Also in the case of FIG.
Since the FP method is registered in the FP method registration unit 79 without checking whether or not the FP method is supported by the server-side proxy 30, the FP method determination unit 146 analyzes the reply message and F included in
It is better to refer to the P method and to confirm the FP method.

【0099】次に、図22に、サーバ側プロキシ30か
らクライアント側プロキシ40へリプライメッセージを
転送する際のクライアント側プロキシ40の処理手順の
一例を示す。なお、図21は、1つのリクエストメッセ
ージを受けたときの処理を記述しているが、実際はクラ
イアント側プロキシ40が受け取ったリクエストメッセ
ージ全てに対して、図22に例示する処理を行う。
Next, FIG. 22 shows an example of the processing procedure of the client side proxy 40 when transferring the reply message from the server side proxy 30 to the client side proxy 40. Note that although FIG. 21 describes the processing when one request message is received, the processing illustrated in FIG. 22 is actually performed for all the request messages received by the client side proxy 40.

【0100】クライアント側プロキシ40は、受信部1
41により、サーバ側プロキシ30からリプライメッセ
ージを受信する(ステップS21)。
The client side proxy 40 includes the receiving unit 1
41 receives the reply message from the server-side proxy 30 (step S21).

【0101】FP圧縮判定部145は、該リプライメッ
セージのリプライデータがFP圧縮対象のものであるか
否か調べ、判断する(ステップS22)。リプライデー
タがFP圧縮対象外のものと判断されたならば(ステッ
プS22)、受信したリプライメッセージを送信部14
3からクライアント50へ転送する(ステップS3
1)。
The FP compression judgment unit 145 examines and judges whether or not the reply data of the reply message is for FP compression (step S22). When it is determined that the reply data is not the object of FP compression (step S22), the received reply message is transmitted by the transmission unit 14
3 to the client 50 (step S3)
1).

【0102】ステップS22にて該リプライメッセージ
のリプライデータがFP圧縮対象のものであると判断さ
れたならば、FP圧縮判定部145は、さらに、リプラ
イデータがFP圧縮されているか否か調べ、判断する
(ステップS23)。
If the reply data of the reply message is judged to be the object of FP compression in step S22, the FP compression judgment unit 145 further checks whether or not the reply data is FP compressed and judges. Yes (step S23).

【0103】ステップS23にて、該リプライメッセー
ジのリプライデータがFP圧縮されているものと判断さ
れたならば(例えば図7(b)等の場合)、FP方式登
録部76に一時記憶されるFP方式名から、利用するF
P方式を決定する(S24)。なお、ステップS24に
おいて、既説明の初期化処理およびリクエスト処理時が
図17および図18の場合には、リプライメッセージに
含まれるFP方式名から、利用するFP方式を決定する
(ステップS24)。図18の場合にも、ステップS2
4を行なう理由は、サーバ側プロキシ30で、クライア
ント側プロキシ40から選択したFP方式をサポートし
てない場合をも処理可能にするためである。
If it is determined in step S23 that the reply data of the reply message is FP-compressed (for example, in the case of FIG. 7B), the FP temporarily stored in the FP method registration unit 76. From the method name, use F
The P method is determined (S24). If the initialization process and the request process described above are performed in step S24 in FIGS. 17 and 18, the FP method to be used is determined from the FP method name included in the reply message (step S24). Also in the case of FIG. 18, step S2
The reason for performing No. 4 is to enable processing even when the server-side proxy 30 does not support the FP method selected from the client-side proxy 40.

【0104】次に、FPキャッシュ管理部147にて、
ステップS24で決定したFP方式で該リプライデータ
のフィンガープリントの値を求め(ステップS25)、
該フィンガープリントの値と計算方式をキーとしてフィ
ンガープリント・キャッシュ144を検索する(ステッ
プS26)。
Next, in the FP cache management unit 147,
The fingerprint value of the reply data is obtained by the FP method determined in step S24 (step S25),
The fingerprint cache 144 is searched using the fingerprint value and the calculation method as a key (step S26).

【0105】そして、FP解凍処理部148にて、受信
リプライメッセージに対して、フィンガープリント・キ
ャッシュ144から検索された該フィンガープリントの
値に対応するデータを付加し、プロキシ間で特別の情報
を使用する場合には該情報を削除した後に、これを送信
部43からクライアント50へ送信する(ステップS2
7)。このとき、必要に応じて、リプライヘッダ内のデ
ータ長を表すフィールド(Content−Lengt
h:フィールド)の値を、該フィンガープリントの値に
対応するデータの長さに設定する。
Then, the FP decompression processing unit 148 adds data corresponding to the value of the fingerprint retrieved from the fingerprint cache 144 to the received reply message and uses special information between the proxies. If so, the information is deleted and then transmitted from the transmitter 43 to the client 50 (step S2).
7). At this time, if necessary, a field (Content-Length) indicating the data length in the reply header.
The value of h: field) is set to the length of the data corresponding to the value of the fingerprint.

【0106】一方、ステップS23にて該リプライメッ
セージのリプライデータがFP圧縮されていないものと
判断されたならば(例えば図7(a)等の場合)、次の
2つの作業を行う。
On the other hand, if it is determined in step S23 that the reply data of the reply message is not FP-compressed (for example, in the case of FIG. 7A), the following two operations are performed.

【0107】(1)FP解凍処理部148にて、プロキ
シ間で特別の情報を使用する場合には受信リプライメッ
セージから該情報を削除した後に、これを送信部143
からクライアント50へ送信する(ステップS29)。
(1) When special information is used between the proxies in the FP decompression processing unit 148, this information is deleted from the received reply message, and then this is transmitted by the transmission unit 143.
To the client 50 (step S29).

【0108】(2)FPキャッシュ管理部147にて、
該リプライデータのフィンガープリントの値と計算方式
を求め(ステップS28)、該フィンガープリントの値
と、該リプライデータとを対応付けて(フィンガープリ
ントの値と計算方式をキーにして)、フィンガープリン
ト・キャッシュ144に登録する(ステップS30)。
(2) In the FP cache management unit 147,
The fingerprint value and the calculation method of the reply data are obtained (step S28), the fingerprint value and the reply data are associated with each other (using the fingerprint value and the calculation method as a key), and the fingerprint Register in the cache 144 (step S30).

【0109】上記の(1)と(2)は、いずれを先に行
ってもよいし、並行して行ってもよい。
Either of the above (1) and (2) may be performed first, or may be performed in parallel.

【0110】なお、前述のように異なる2つのデータか
ら得られるフィンガープリント値が一致する確率は実用
上無視できるくらい小さいが、もし異なる2つのデータ
から得られるフィンガープリント値が一致してしまった
場合、本発明の方式を用いて別のフィンガープリント計
算方式でフィンガープリントを計算することでこの問題
を解決することも可能である。
As described above, the probability that fingerprint values obtained from two different data items match is small enough to be ignored in practice, but if the fingerprint values obtained from two different data items match. It is also possible to solve this problem by calculating the fingerprint with another fingerprint calculation method using the method of the present invention.

【0111】以下では、図23(登録時すなわち非FP
圧縮時)および図24(FP圧縮時)を参照しながら、
フィンガープリント・キャッシュを利用したデータ転送
についてより具体的に説明する。なお、前提条件とし
て、初期化処理時にサーバ側プロキシ30およびクライ
アント側プロキシ40では、FP方式を一時登録する図
15のシステムとして説明する。
In the following, FIG.
While compressing) and FIG. 24 (when compressing FP),
The data transfer using the fingerprint cache will be described more specifically. Note that, as a prerequisite, the server-side proxy 30 and the client-side proxy 40 will be described as the system of FIG. 15 in which the FP method is temporarily registered during initialization processing.

【0112】まず、図23を参照しながら、サーバ側プ
ロキシ30からクライアント側プロキシ40へ、フィン
ガープリント・キャッシュ登録されていないデータを転
送するとともに、フィンガープリント・キャッシュ登録
する場合の動作について説明する。
First, with reference to FIG. 23, an operation in the case where data not registered in the fingerprint cache is transferred from the server side proxy 30 to the client side proxy 40 and the fingerprint cache is registered will be described.

【0113】(1)クライアント50上のブラウザ等
は、例えば“/A.cgi”というURLでサーバ20
に、POSTメソッドのリクエストメッセージを出した
とする。サーバ20へのリクエストメッセージは、ま
ず、クライアント側プロキシ40に送られるように、ブ
ラウザ等を設定しておく。
(1) The browser or the like on the client 50 uses the URL "/A.cgi", for example, as the server 20.
Then, it is assumed that a POST method request message is issued. A browser or the like is set in advance so that a request message to the server 20 is sent to the client side proxy 40.

【0114】(2)クライアント50からリクエストメ
ッセージを受け取ったクライアント側プロキシ40は、
そのリクエストメッセージをサーバ側プロキシ30に転
送する。
(2) The client side proxy 40, which has received the request message from the client 50,
The request message is transferred to the server side proxy 30.

【0115】(3)リクエストメッセージを受け取った
サーバ側プロキシ30は、そのリクエストメッセージを
サーバ50へ転送する。
(3) The server side proxy 30 having received the request message transfers the request message to the server 50.

【0116】(4)サーバ20は、該リクエストメッセ
ージに対する処理を行った後、サーバ側プロキシ30
に、そのリプライメッセージを送り返す。
(4) The server 20 processes the request message, and then, the server side proxy 30
The reply message is sent back to.

【0117】(5)リプライメッセージを受け取ったサ
ーバ側プロキシ30は、まず、受信したリプライメッセ
ージのに含まれるリプライデータを初期化処理時に決定
したフィンガープリント方式を用いて、フィンガープリ
ントを計算し、そのフィンガープリント名を持ったデー
タがフィンガープリント・キャッシュ34に入っている
かどうかを調べる。入っていなければ、初めてのデータ
(一旦フィンガープリント・キャッシュ登録されたもの
がその後に削除あるいは無効化されることがある構成の
場合に、一旦フィンガープリント・キャッシュ登録され
たが削除あるいは無効化され、その後において初めてで
ある場合を含む)であるので、そのデータをフィンガー
プリントを名前としてフィンガープリント・キャッシュ
34に入れる(登録する)。
(5) Upon receiving the reply message, the server-side proxy 30 first calculates the fingerprint using the fingerprint method determined during the initialization process for the reply data included in the received reply message, and then calculates the fingerprint. It is checked whether the data having the fingerprint name is stored in the fingerprint cache 34. If it does not exist, the first data (if the fingerprint cache is registered and then deleted or invalidated in some cases, fingerprint fingerprint is registered but deleted or invalidated, Since it is the first time thereafter), the data is stored (registered) in the fingerprint cache 34 with the fingerprint as a name.

【0118】(6)サーバ側プロキシ30は、リプライ
メッセージをクライアント側プロキシ40に転送する。
(6) The server side proxy 30 transfers the reply message to the client side proxy 40.

【0119】なお、前述したように、リプライデータか
ら計算したフィンガープリントの値を、リプライヘッダ
等に入れて送ると、クライアント側プロキシ40で再度
フィンガープリントを計算する手間を省くことが出来
る。
As described above, if the fingerprint value calculated from the reply data is sent in the reply header or the like, the client side proxy 40 can save the trouble of calculating the fingerprint again.

【0120】(7)リプライメッセージを受け取ったク
ライアント側プロキシ40は、初めてのデータであるの
で、リプライデータを、一時登録済みまたはリプライヘ
ッダ等に入れたフィンガープリント方式名を取り出し
て、併せてフィンガープリント・キャッシュ44に登録
する。なお、前述したように、リプライデータからフィ
ンガープリントを計算するか、あるいはサーバ側プロキ
シがリプライヘッダ等に入れたフィンガープリントを取
り出し、これを名前として入れる。
(7) Since the client side proxy 40 which has received the reply message is the first data, the fingerprint method name in which the reply data is temporarily registered or put in the reply header or the like is taken out, and the fingerprint is also printed. -Register in the cache 44. As described above, the fingerprint is calculated from the reply data, or the fingerprint put in the reply header or the like by the server-side proxy is taken out and put in as the name.

【0121】(8)クライアント側プロキシ40は、
(リプライヘッダ等にフィンガープリントの値などのサ
ーバ側プロキシ30とクライアント側プロキシ40との
間だけで使用される情報が存在する構成の場合には、こ
れを削除した後に、)リプライメッセージを、クライア
ント50(上で動作するブラウザ等)へ送り返す。
(8) The client side proxy 40
(In the case of a configuration in which information used only between the server-side proxy 30 and the client-side proxy 40 such as the fingerprint value in the reply header exists, after deleting this), the reply message is sent to the client. Send back to 50 (browser running on the above).

【0122】なお、サーバ側プロキシ30において、上
記の(5)のフィンガープリント・キャッシュ登録は、
(6)の動作の後に行っても構わない。また、クライア
ント側プロキシ40において、(7)のフィンガープリ
ント・キャッシュ登録は、(8)の動作の後に行っても
構わない。
In the server side proxy 30, the fingerprint cache registration of (5) above is performed by
It may be performed after the operation of (6). Further, in the client side proxy 40, the fingerprint cache registration of (7) may be performed after the operation of (8).

【0123】次に、図24を参照しながら、図23の動
作が行われてキャッシュ登録されているデータを、サー
バ側プロキシ30からクライアント側プロキシ40へ転
送する場合の動作について説明する。
Next, with reference to FIG. 24, the operation in the case where the operation shown in FIG. 23 is performed and the cached data is transferred from the server side proxy 30 to the client side proxy 40 will be described.

【0124】(1)〜(4)は、図23を参照して説明
した動作における(1)〜(4)と同様である。
(1) to (4) are the same as (1) to (4) in the operation described with reference to FIG.

【0125】(5)サーバ50からリプライメッセージ
を受け取ったサーバ側プロキシ40は、まず、受信リプ
ライメッセージの持つリプライデータのフィンガープリ
ントをコネクション時に既に決定済みのFP方式で計算
し、そのFP方式およびフィンガープリント名を持った
データがフィンガープリント・キャッシュ34に入って
いるかどうかを調べる。入っていれば、過去に送ったこ
とのあるデータ(フィンガープリント・キャッシュ登録
されているデータ)なので、(前述したように例えばフ
ィンガープリントの値をリプライヘッダに入れ且つリプ
ライボディを空にするなどして)リプライボディのデー
タをフィンガープリントで置き換える。
(5) Upon receiving the reply message from the server 50, the server side proxy 40 first calculates the fingerprint of the reply data of the received reply message by the FP method already determined at the time of connection, and the FP method and finger It is checked whether the data having the print name is stored in the fingerprint cache 34. If it is, it is the data that has been sent in the past (data that has been registered in the fingerprint cache), so (for example, enter the fingerprint value in the reply header and empty the reply body as described above. Replace the data in the reply body with the fingerprint.

【0126】(6)サーバ側プロキシ30は、リプライ
ボディをフィンガープリントで置き換えたリプライメッ
セージをクライアント側プロキシ40に転送する。
(6) The server side proxy 30 transfers the reply message in which the reply body is replaced with the fingerprint to the client side proxy 40.

【0127】(7)リプライメッセージを受け取ったク
ライアント側プロキシ40は、リプライデータがフィン
ガープリントで置き換えられていることを検出し、(前
述したように例えばリプライヘッダなどにて)指定され
たフィンガープリントを使ってフィンガープリント・キ
ャッシュ44から対応するデータを取り出し、これをリ
プライボディに入れる。
(7) Upon receiving the reply message, the client side proxy 40 detects that the reply data is replaced with the fingerprint, and the specified fingerprint (for example, in the reply header or the like as described above) is set. It is used to retrieve the corresponding data from the fingerprint cache 44 and place it in the reply body.

【0128】(8)そして、クライアント側プロキシ3
0は、(リプライヘッダ等にフィンガープリントの値な
どのサーバ側プロキシ30とクライアント側プロキシ4
0との間だけで使用される情報が存在する構成の場合に
は、これを削除した後に、)リプライメッセージを、ク
ライアント(上で動作するブラウザ等)へ送り返す。
(8) Then, the client side proxy 3
0 is (server side proxy 30 and client side proxy 4 such as fingerprint value in reply header)
In the case of a structure in which information used only between 0 and 0 exists, after deleting this, a reply message is sent back to the client (browser running on the above).

【0129】ところで、サーバ側プロキシ30およびク
ライアント側プロキシ40のフィンガープリント・キャ
ッシュは、その容量に上限があるため、所定のアルゴリ
ズムに従いガーベジコレクションを行って、例えば古い
データや使いそうに無いデータを消して行くのが好まし
い。
By the way, since the fingerprint caches of the server-side proxy 30 and the client-side proxy 40 have an upper limit in capacity, garbage collection is performed according to a predetermined algorithm to erase, for example, old data or data that is unlikely to be used. It is preferable to go.

【0130】ただし、このようにすると、サーバ側プロ
キシ30のフィンガープリント・キャッシュ34は持っ
ていてもクライアント側プロキシ40のフィンガープリ
ント・キャッシュ44では既に消されてしまっているデ
ータが発生し得ることになるので、上記の(7)で、ク
ライアント側プロキシ40において、フィンガープリン
トをもとにしてフィンガープリント・キャッシュ44か
らリプライデータを置き換えるべきデータを取り出そう
としたが、フィンガープリント・キャッシュ44に該当
するフィンガープリントとデータの組が存在しない場合
がある。このような場合には、例えば、クライアント側
プロキシ40は、サーバ側プロキシ30に対して、指定
したフィンガープリントのデータを送るように依頼し、
依頼されたサーバ側プロキシ30は、指定されたフィン
ガープリントのデータをフィンガープリント・キャッシ
ュ34から取り出して送り返すような仕組みを設ければ
よい。
However, in this case, the fingerprint cache 34 of the server side proxy 30 may have data which has already been deleted in the fingerprint cache 44 of the client side proxy 40. Therefore, in (7) above, the client-side proxy 40 tried to retrieve the data that should replace the reply data from the fingerprint cache 44 based on the fingerprint. The print / data pair may not exist. In such a case, for example, the client side proxy 40 requests the server side proxy 30 to send the data of the designated fingerprint,
The requested server-side proxy 30 may be provided with a mechanism for fetching the specified fingerprint data from the fingerprint cache 34 and sending it back.

【0131】なお、逆に、サーバ側プロキシ30のフィ
ンガープリント・キャッシュ34では既に消されてしま
っているがクライアント側プロキシ40のフィンガープ
リント・キャッシュ44はまだ持っていてるデータが存
在する場合には、図23を参照して説明した動作におけ
る(7)で、クライアント側プロキシ40において、フ
ィンガープリント/リプライデータをフィンガープリン
ト・キャッシュ44に登録する際に、その時点で登録さ
れていたフィンガープリント/リプライデータに対して
上書きしてもよい。
On the contrary, when the fingerprint cache 34 of the server side proxy 30 has already erased it, but the fingerprint cache 44 of the client side proxy 40 still has the data, At (7) in the operation described with reference to FIG. 23, when the fingerprint / reply data is registered in the fingerprint cache 44 in the client-side proxy 40, the fingerprint / reply data registered at that time. May be overwritten.

【0132】図24を参照して説明した動作における
(5)で、サーバ側プロキシ30において、リプライデ
ータのフィンガープリントを求め、該フィンガープリン
トがフィンガープリント・キャッシュ34に入っていれ
ば、当該リプライデータと同じデータが該フィンガープ
リントと組になってフィンガープリント・キャッシュ3
4に入っているものとみなして処理している。実用上、
異なるデータから同じフィンガープリントが生成されな
いことを前提にすれば、この方法で十分であるが、非常
に小さな確率で異なるデータのフィンガープリントが偶
々同じ値になってしまった場合に生じるエラーを取り除
くようにする方法もある。この場合には、リプライデー
タから求めたフィンガープリントがフィンガープリント
・キャッシュ34に入っているときに、該フィンガープ
リントと組になってフィンガープリント・キャッシュ3
4に入っているデータと、当該プライデータとを比較し
て、同じか否かを判断するようにすればよい。このと
き、もしフィンガープリントは同じであるが内容が異な
るデータが登録されていると判断された場合の処理は、
以下に例示するような方法が考えられる。 ・そのフィンガープリントは以降使用しないものとする
(そのフィンガープリントを与えるデータは以後キャッ
シュされないことになる)。 ・先に登録されているフィンガープリント/データを優
先する(登録中のフィンガープリントと同じ値のフィン
ガープリントを与える他のデータは、その登録中はキャ
ッシュされないことになる)。 ・現在登録対象となっているフィンガープリント/デー
タを優先する(登録中のフィンガープリント/データ
は、同じ値のフィンガープリントを与える他のデータに
よって次々と更新されていくことになる)。 ・別のフィンガープリント方式を用いて、圧縮して利用
する(優先度を付した複数のフィンガープリントが利用
可能に選択されている場合に、特に有効である)。
At (5) in the operation described with reference to FIG. 24, the server side proxy 30 obtains the fingerprint of the reply data, and if the fingerprint is in the fingerprint cache 34, the reply data is obtained. The same data as is paired with the fingerprint and the fingerprint cache 3
It is treated as if it is in No. 4. In practice,
This method is sufficient, provided that the different fingerprints do not produce the same fingerprint, but with a very small probability to eliminate the error that would occur if the fingerprints of the different data happen to have the same value. There is also a way to In this case, when the fingerprint obtained from the reply data is in the fingerprint cache 34, the fingerprint cache 3 is paired with the fingerprint cache 34.
The data stored in 4 and the ply data may be compared to determine whether they are the same. At this time, if it is determined that data with the same fingerprint but different contents is registered,
The following methods are possible. -The fingerprint is no longer used (the data giving the fingerprint will not be cached anymore). Prioritize previously registered fingerprints / data (other data that gives a fingerprint with the same value as the fingerprint being registered will not be cached during that registration). Priority is given to the fingerprint / data currently being registered (the fingerprint / data being registered will be updated one after another by other data giving the fingerprint of the same value). • Compress and use another fingerprinting scheme (especially useful if multiple prioritized fingerprints are selected for availability).

【0133】以上詳細に説明してきたように、本実施形
態は、データ転送装置間でデータとその圧縮データとそ
の圧縮データを生成した方式名とを対応付けて保持し、
これらの対応を保持しているデータについては、データ
を転送する代わりにその圧縮データと方式名を転送する
ことで、特に、方式のバージョンアップや複数の方式名
が混在する場合であっても、データ転送装置間の転送デ
ータ量を削減することができる。
As described above in detail, in the present embodiment, data, compressed data thereof, and the name of the method of generating the compressed data are held in association with each other between the data transfer devices,
Regarding the data that holds these correspondences, by transferring the compressed data and the method name instead of transferring the data, even when the method version is upgraded or a plurality of method names are mixed, The amount of transfer data between the data transfer devices can be reduced.

【0134】また、本実施形態のサーバ側プロキシ30
あるいはクライアント側プロキシ40に、URLとフィ
ンガープリントとの対応テーブル(URL・FPテーブ
ル)を設け、これとフィンガープリント・キャッシュと
を併用することで、プロキシサーバの共有キャッシュの
動作をも行うようにすることも可能である。
The server-side proxy 30 of this embodiment is also used.
Alternatively, the client side proxy 40 is provided with a correspondence table (URL / FP table) between the URL and the fingerprint, and by using this together with the fingerprint cache, the shared cache operation of the proxy server is also performed. It is also possible.

【0135】なお、以上の各機能は、ソフトウェアとし
て実現可能である。
Each of the above functions can be realized as software.

【0136】また、本実施形態は、コンピュータに所定
の手段を実行させるための(あるいはコンピュータを所
定の手段として機能させるための、あるいはコンピュー
タに所定の機能を実現させるための)プログラムとして
実施することもでき、該プログラムを記録したコンピュ
ータ読取り可能な記録媒体として実施することもでき
る。
Further, this embodiment is implemented as a program for causing a computer to execute a predetermined means (or for causing a computer to function as a predetermined means or for causing a computer to realize a predetermined function). It can also be implemented as a computer-readable recording medium recording the program.

【0137】なお、この発明の実施の形態で例示した構
成は一例であって、それ以外の構成を排除する趣旨のも
のではなく、例示した構成の一部を他のもので置き換え
たり、例示した構成の一部を省いたり、例示した構成に
別の機能あるいは要素を付加したり、それらを組み合わ
せたりすることなどによって得られる別の構成も可能で
ある。また、例示した構成と論理的に等価な別の構成、
例示した構成と論理的に等価な部分を含む別の構成、例
示した構成の要部と論理的に等価な別の構成なども可能
である。また、例示した構成と同一もしくは類似の目的
を達成する別の構成、例示した構成と同一もしくは類似
の効果を奏する別の構成なども可能である。
Note that the configurations illustrated in the embodiments of the present invention are examples, and the present invention is not intended to exclude other configurations, and some of the illustrated configurations may be replaced with other configurations or illustrated. Other configurations that are obtained by omitting a part of the configuration, adding another function or element to the exemplified configuration, or combining them are possible. Also, another configuration logically equivalent to the exemplified configuration,
Other configurations including a portion logically equivalent to the exemplified configuration, another configuration logically equivalent to the main part of the exemplified configuration, and the like are possible. Further, another configuration that achieves the same or similar purpose as the exemplified configuration, another configuration that achieves the same or similar effect as the exemplified configuration, and the like are possible.

【0138】また、この発明の実施の形態で例示した各
種構成部分についての各種バリエーションは、適宜組み
合わせて実施することが可能である。
The various variations of the various constituent parts exemplified in the embodiments of the present invention can be implemented in an appropriate combination.

【0139】また、この発明の実施の形態は、個別装置
としての発明、関連を持つ2以上の装置についての発
明、システム全体としての発明、個別装置内部の構成部
分についての発明、またはそれらに対応する方法の発明
等、種々の観点、段階、概念またはカテゴリに係る発明
を包含・内在するものである。
The embodiment of the present invention is an invention as an individual device, an invention as to two or more related devices, an invention as an entire system, an invention as to a component inside an individual device, or corresponding to them. The invention of various methods, steps, concepts, or categories, such as the invention of the method, is included or included.

【0140】従って、この発明の実施の形態に開示した
内容からは、例示した構成に限定されることなく発明を
抽出することができるものである。
Therefore, from the contents disclosed in the embodiments of the present invention, the invention can be extracted without being limited to the exemplified configuration.

【0141】本発明は、上述した実施の形態に限定され
るものではなく、その技術的範囲において種々変形して
実施することができる。
The present invention is not limited to the above-described embodiments, but can be implemented with various modifications within the technical scope thereof.

【0142】[0142]

【発明の効果】本発明によれば、データ転送装置間でデ
ータとその圧縮データとその圧縮データを生成した方式
名とを対応付けて保持し、これらの対応を保持している
データについては、データを転送する代わりにその圧縮
データと方式名を転送することで、特に、方式のバージ
ョンアップや複数の方式名が混在する場合であっても、
データ転送装置間の転送データ量を削減することができ
る。
According to the present invention, the data, the compressed data thereof, and the name of the method by which the compressed data is generated are held in correspondence between the data transfer devices, and the data holding the correspondence is By transferring the compressed data and the method name instead of transferring the data, even when the method version is upgraded or a plurality of method names are mixed,
The amount of transfer data between the data transfer devices can be reduced.

【図面の簡単な説明】[Brief description of drawings]

【図1】従来のコンピュータ・ネットワーク・システム
について説明するための図
FIG. 1 is a diagram for explaining a conventional computer network system.

【図2】本発明の一実施形態に係るコンピュータ・ネッ
トワーク・システムの構成例を示す図
FIG. 2 is a diagram showing a configuration example of a computer network system according to an embodiment of the present invention.

【図3】同実施形態に係るコンピュータ・ネットワーク
・システムの他の構成例を示す図
FIG. 3 is a diagram showing another configuration example of the computer network system according to the embodiment.

【図4】同実施形態に係るコンピュータ・ネットワーク
・システムのさらに他の構成例を示す図
FIG. 4 is a diagram showing still another configuration example of the computer network system according to the embodiment.

【図5】同実施形態で使用するフィンガープリントにつ
いて説明するための図
FIG. 5 is a view for explaining a fingerprint used in the same embodiment.

【図6】同実施形態で使用するフィンガープリント・キ
ャッシュについて説明するための図
FIG. 6 is a diagram for explaining a fingerprint cache used in the same embodiment.

【図7】同実施形態で使用するメッセージ・フォーマッ
トの一例を示す図
FIG. 7 is a diagram showing an example of a message format used in the same embodiment.

【図8】図7(a)のフォーマットのメッセージの具体
例を示す図
FIG. 8 is a diagram showing a specific example of a message in the format of FIG. 7 (a).

【図9】図7(b)のフォーマットのメッセージの具体
例を示す図
FIG. 9 is a diagram showing a specific example of a message in the format of FIG. 7 (b).

【図10】図7(a’)のフォーマットのメッセージの
具体例を示す図
FIG. 10 is a diagram showing a specific example of a message in the format of FIG. 7 (a ').

【図11】同実施形態で使用するメッセージ・フォーマ
ットの他の例を示す図
FIG. 11 is a diagram showing another example of a message format used in the same embodiment.

【図12】図11(b)のフォーマットのメッセージの
具体例を示す図
FIG. 12 is a diagram showing a specific example of a message in the format of FIG. 11 (b).

【図13】図11(a’)のフォーマットのメッセージ
の具体例を示す図
FIG. 13 is a diagram showing a specific example of a message in the format of FIG. 11 (a ').

【図14】同実施形態に係る3つの処理を示した図FIG. 14 is a diagram showing three processes according to the same embodiment.

【図15】同実施形態に係る初期化処理およびリクエス
ト処理に関する機能ブロック図
FIG. 15 is a functional block diagram related to initialization processing and request processing according to the same embodiment.

【図16】同実施形態に係る初期化処理およびリクエス
ト処理に関する、他の機能ブロック図
FIG. 16 is another functional block diagram relating to the initialization processing and the request processing according to the embodiment.

【図17】同実施形態に係る初期化処理およびリクエス
ト処理に関する、更なる他の機能ブロック図
FIG. 17 is still another functional block diagram relating to the initialization process and the request process according to the embodiment.

【図18】同実施形態に係る初期化処理およびリクエス
ト処理に関する、更なる他の機能ブロック図
FIG. 18 is yet another functional block diagram relating to initialization processing and request processing according to the same embodiment.

【図19】同実施形態に係るリプライ時のサーバ側プロ
キシ30の機能ブロック図。
FIG. 19 is a functional block diagram of the server-side proxy 30 at the time of reply according to the embodiment.

【図20】同実施形態に係るリプライ時のサーバ側プロ
キシ30の動作手順を示す図。
FIG. 20 is a view showing an operation procedure of the server side proxy 30 at the time of reply according to the embodiment.

【図21】同実施形態に係るリプライ時のクライアント
側プロキシ40の機能ブロック図。
FIG. 21 is a functional block diagram of the client side proxy 40 at the time of reply according to the embodiment.

【図22】同実施形態に係るリプライ時のクライアント
側プロキシ40の動作手順を示す図。
FIG. 22 is a view showing an operation procedure of the client side proxy 40 at the time of reply according to the embodiment.

【図23】同実施形態に係るサーバ側プロキシ30とク
ライアント側プロキシ40との間のデータ転送について
説明するための図
FIG. 23 is a view for explaining data transfer between the server side proxy 30 and the client side proxy 40 according to the same embodiment.

【図24】同実施形態に係るサーバ側プロキシ30とク
ライアント側プロキシ40との間のデータ転送について
説明するための図
FIG. 24 is a view for explaining data transfer between the server side proxy 30 and the client side proxy 40 according to the same embodiment.

【符号の説明】[Explanation of symbols]

2…ASPサーバセンター 4…ユーザオフィス 12…ASPサーバセンター内LAN 14…WAN 16…ユーザオフィス内LAN 20…サーバ装置 30…サーバ側プロキシ装置 40…クライアント側プロキシ装置 50…クライアント装置 71…FPリスト記憶部 72,77,81,83,133,143…送信部 73,78,80,82,131,141…受信部 74…FP方式決定部 75…FPリスト記憶部 76,79…FP方式登録部 84…FP方式付加部 85…FP方式分離部 132,142…処理部 134,144…フィンガープリント・キャッシュ 135,145…FP圧縮判定部 136,146…FP方式決定部 137,147…フィンガープリント・キャッシュ管理
部 138…FP方式付加部 139…FP圧縮処理部 148…FP解凍処理部
2 ... ASP server center 4 ... User office 12 ... ASP server center LAN 14 ... WAN 16 ... User office LAN 20 ... Server device 30 ... Server side proxy device 40 ... Client side proxy device 50 ... Client device 71 ... FP list storage Units 72, 77, 81, 83, 133, 143 ... Sending units 73, 78, 80, 82, 131, 141 ... Receiving unit 74 ... FP system determining unit 75 ... FP list storage unit 76, 79 ... FP system registering unit 84 FP method adding unit 85 FP method separating units 132 and 142 Processing units 134 and 144 Fingerprint caches 135 and 145 FP compression determining units 136 and 146 FP method determining units 137 and 147 Fingerprint cache management Unit 138 ... FP system addition unit 139 ... FP compression processing unit 148 ... FP decompression processing unit

───────────────────────────────────────────────────── フロントページの続き (72)発明者 吉田 英樹 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 關 俊文 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 吉井 謙一郎 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 宮澤 隆幸 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 木村 康浩 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 外山 春彦 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 Fターム(参考) 5B082 GA01 HA02 HA05 HA08    ─────────────────────────────────────────────────── ─── Continued front page    (72) Inventor Hideki Yoshida             1st Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa             Inside the Toshiba Research and Development Center (72) Inventor Shunbun             1st Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa             Inside the Toshiba Research and Development Center (72) Inventor Kenichiro Yoshii             1st Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa             Inside the Toshiba Research and Development Center (72) Inventor Takayuki Miyazawa             1st Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa             Inside the Toshiba Research and Development Center (72) Inventor Yasuhiro Kimura             1st Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa             Inside the Toshiba Research and Development Center (72) Inventor Haruhiko Toyama             1st Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa             Inside the Toshiba Research and Development Center F-term (reference) 5B082 GA01 HA02 HA05 HA08

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 データを圧縮するための計算方法を複数
備える第1データ転送装置と、データを圧縮するための
計算方法を複数備える第2データ転送装置とが、通信路
を介して接続されており、該第1データ転送装置から該
第2データ転送装置へデータ要求を行なうことにより、
該第1データ転送装置で要求したデータを取得可能なデ
ータ転送方法であって、 該第1データ転送装置が備える複数の計算方法と第2デ
ータ転送装置が備える複数の計算方法とから、両データ
転送装置で備える一計算方法を決定し、該第2データ転
送装置は、 該第1データ転送装置からのデータ要求に対応したデー
タを取得し、このデータを該決定された一計算方法で圧
縮し、 該第2データ転送装置に備える記憶装置に該一計算方法
で圧縮されたデータが記憶済みか否かを確認し、 この確認結果が記憶否の場合には、該記憶装置へ該デー
タと該圧縮されたデータと該一計算方法とを対応付けて
記憶するとともに、該データを第1データ転送装置へ転
送し、 該確認結果が記憶済みの場合には、該圧縮されたデータ
を第1データ転送装置へ転送するようにしたことを特徴
とするデータ転送方法。
1. A first data transfer device including a plurality of calculation methods for compressing data and a second data transfer device including a plurality of calculation methods for compressing data are connected via a communication path. By making a data request from the first data transfer device to the second data transfer device,
A data transfer method capable of acquiring data requested by the first data transfer apparatus, wherein both data are selected from a plurality of calculation methods included in the first data transfer apparatus and a plurality of calculation methods included in the second data transfer apparatus. The one calculation method provided in the transfer device is determined, the second data transfer device acquires data corresponding to the data request from the first data transfer device, and compresses this data by the determined one calculation method. It is confirmed whether or not the data compressed by the one calculation method is already stored in the storage device provided in the second data transfer device, and if the confirmation result is not stored, the data and the data are stored in the storage device. The compressed data and the one calculation method are stored in association with each other, the data is transferred to the first data transfer device, and if the confirmation result is already stored, the compressed data is stored as the first data. Transfer to transfer device Data transfer method is characterized in that so as to.
【請求項2】 該一計算方法の決定は、該第1データ転
送装置で、該第2データ転送装置からの該第2データ転
送装置で備える複数の計算方法のそれぞれを示す識別情
報を受信し、該第1データ転送装置が備える複数の計算
方法のそれぞれを示す識別情報と一致するものの中から
1つ決定し、 この決定された識別情報を該第2データ転送装置へ送信
するようにしたことを特徴とする請求項1記載のデータ
転送方法。
2. The determination of the one calculation method is performed by the first data transfer device receiving identification information indicating each of a plurality of calculation methods provided in the second data transfer device from the second data transfer device. , One of the identification information indicating each of the plurality of calculation methods provided in the first data transfer device is determined, and the determined identification information is transmitted to the second data transfer device. The data transfer method according to claim 1, wherein:
【請求項3】 該決定された識別情報の該第2データ転
送装置への送信は、該第1データ転送装置から該第2デ
ータ転送装置への要求メッセージに付加して送信するよ
うにしたことを特徴とする請求項2記載のデータ転送方
法。
3. The transmission of the determined identification information to the second data transfer device is performed by adding it to a request message from the first data transfer device to the second data transfer device. The data transfer method according to claim 2, wherein
【請求項4】 複数の計算方法のそれぞれでデータを圧
縮可能な圧縮手段と、該複数の計算方法を示す識別情報
を予め記憶する記憶手段とを備えるデータ転送装置が第
1通信路を介して他のデータ転送装置との間でデータ転
送を行なうデータ転送方法であって、 該通信路から、該他のデータ転送装置の複数の計算方法
を示す識別情報を受信し、 前記記憶手段に記憶される複数の計算方法の識別情報
と、前記受信した複数の計算方法の識別情報とから、一
致する計算方法の識別情報の1つを選択し、該識別情報
が示す計算方法を利用する計算方法として決定し、 該決定された計算方法の識別情報を該第1通信路へ送出
し、 該第1通信路から、データまたはそのデータを前記決定
された計算方法で処理された圧縮データを受信し、 この受信がデータであった場合には、前記決定された計
算方法に従って前記圧縮手段で該データを圧縮し、該計
算方法と圧縮された圧縮データと該データとを対応付け
てデータ転送装置が備えるキャッシュ手段に格納し、 この受信が圧縮データであった場合には、前記決定され
た計算方法と該処理データとに基づいて、前記キャッシ
ュ手段から対応するデータを取得し、 該第1通信路から受信したデータまたは、該取得された
データを第2通信路へ送信するようにしたことを特徴と
するデータ転送方法。
4. A data transfer device comprising: a compression unit capable of compressing data by each of a plurality of calculation methods; and a storage unit that stores in advance identification information indicating the plurality of calculation methods.
A data transfer method for performing data transfer with another data transfer device via one communication path, wherein identification information indicating a plurality of calculation methods of the other data transfer device is received from the communication path, From the identification information of the plurality of calculation methods stored in the storage unit and the received identification information of the plurality of calculation methods, one of the identification information of the matching calculation methods is selected, and the calculation method indicated by the identification information is selected. Is transmitted as the calculation method utilizing the above, and the identification information of the determined calculation method is transmitted to the first communication path, and the data or the data is processed by the determined calculation method from the first communication path. When the compressed data is received and the received data is the data, the compression means compresses the data according to the determined calculation method, and the calculation method is associated with the compressed data and the data. Data transfer If the received data is compressed data, the corresponding data is acquired from the cache means based on the determined calculation method and the processed data, A data transfer method characterized in that data received from a communication channel or the acquired data is transmitted to a second communication channel.
【請求項5】 複数の計算方法のそれぞれでデータを圧
縮可能な圧縮手段と、 該複数の計算方法を示す識別情報を予め記憶する記憶手
段と、 外部の第1通信路からの、複数の計算方法を示す識別情
報を受信する第1受信手段と、 前記記憶手段に記憶される複数の計算方法の識別情報
と、前記第1受信手段により受信される複数の計算方法
の識別情報とから、一致する計算方法の識別情報の1つ
を選択し、該識別情報が示す計算方法を利用する計算方
法として決定する計算方法決定手段と、 前記計算方法決定手段で決定された計算方法の識別情報
を一時登録する登録手段と、 前記計算方法決定手段で決定された計算方法の識別情報
を該第1通信路へ送出する第1送出手段と、 該第1通信路から、データまたはそのデータを前記送出
手段か送出した識別情報が示す計算方法で処理された圧
縮データを受信する第2受信手段と、 前記第2受信手段での受信がデータであったとき、前記
計算方法決定手段で決定された計算方法に従って前記圧
縮手段で該データを圧縮し、該計算方法と圧縮された圧
縮データと、該データとを対応付けて格納するキャッシ
ュ手段と、 前記第2受信手段での受信が圧縮データであったとき、
前記登録手段に一時登録される識別情報が示す計算方式
と該圧縮データとに基づいて、前記キャッシュ手段から
対応するデータを取得する取得手段と、 第1の通信路から受信したデータまたは、前記取得手段
で取得されたデータを第2の通信路へ送出する第2送出
手段とを備えたことを特徴とするデータ転送装置。
5. A compression means capable of compressing data by each of a plurality of calculation methods, a storage means for storing identification information indicating the plurality of calculation methods in advance, and a plurality of calculations from an external first communication path. The first receiving means for receiving identification information indicating the method, the identification information of the plurality of calculation methods stored in the storage means, and the identification information of the plurality of calculation methods received by the first receiving means Selecting one of the identification information of the calculation method to be determined and deciding as a calculation method using the calculation method indicated by the identification information; and temporarily identifying information of the calculation method determined by the calculation method determining means. Registration means for registering, first sending means for sending the identification information of the calculation method determined by the calculation method determining means to the first communication path, and data or the data for sending the data from the first communication path Or send Second receiving means for receiving the compressed data processed by the calculation method indicated by the identification information, and when the second receiving means receives the data, the second receiving means receives the data according to the calculation method determined by the calculation method determining means. When the data is compressed by the compression means, the calculation method, the compressed data compressed, and the cache means that stores the data in association with each other; and the reception by the second reception means is compressed data,
Acquisition means for acquiring corresponding data from the cache means based on the calculation method indicated by the identification information temporarily registered in the registration means and the compressed data; and data received from a first communication path or the acquisition A second transfer means for transmitting the data acquired by the means to the second communication path.
【請求項6】 第1通信路からデータ要求を受け、第2
通信路を介し接続される他のデータ転送装置へ該データ
要求を転送し、該データ要求に対応するデータを取得
し、該データを該第1通信路へ送出するデータ転送装置
であって、 複数の計算方法のそれぞれでデータを圧縮可能な圧縮手
段と、 該複数の計算方法を示す識別情報を予め記憶する記憶手
段と、 外部の第1通信路からの、複数の計算方法を示す識別情
報を受信する第1受信手段と、 前記記憶手段に記憶される複数の計算方法の識別情報
と、前記第1受信手段により受信される複数の計算方法
の識別情報とから、一致する計算方法の識別情報の1つ
を選択し、該識別情報が示す計算方法を利用する計算方
法として決定する計算方法決定手段と、 前記計算方法決定手段で決定された計算方法の識別情報
を一時登録する登録手段と、 前記計算方法決定手段で決定された計算方法の識別情報
を該第1通信路へ送出する第1送出手段と、 他のデータ転送装置へのデータ要求に応じて、該第1通
信路から、この要求に対応した、データまたはそのデー
タを前記送出手段か送出した識別情報が示す計算方法で
処理された圧縮データを受信する第2受信手段と、 前記第2受信手段での受信がデータであったとき、前記
計算方法決定手段で決定された計算方法に従って前記圧
縮手段で該データを圧縮し、該計算方法と圧縮された圧
縮データと、該データとを対応付けて格納するキャッシ
ュ手段と、 前記第2受信手段での受信が圧縮データであったとき、
前記登録手段に一時登録される識別情報が示す計算方式
と該圧縮データとに基づいて、前記キャッシュ手段から
対応するデータを取得する取得手段と、 第1の通信路から受信したデータまたは、前記取得手段
で取得されたデータを第2の通信路へ送出する第2送出
手段とを備えたことを特徴とするデータ転送装置。
6. The data request is received from the first communication path, and the second request is received.
A data transfer device that transfers the data request to another data transfer device connected via a communication path, acquires data corresponding to the data request, and sends the data to the first communication path. Compression means capable of compressing data by each of the calculation methods, storage means for storing in advance identification information indicating the plurality of calculation methods, and identification information indicating a plurality of calculation methods from an external first communication path. Identification information of a matching calculation method from first receiving means for receiving, identification information of a plurality of calculation methods stored in the storage means, and identification information of a plurality of calculation methods received by the first receiving means And a registration means for temporarily registering the identification information of the calculation method determined by the calculation method determination means; The total In response to a data request to the first transmission means for transmitting the identification information of the calculation method determined by the calculation method determination means to the first communication path, and to the other data transfer device, this request is sent from the first communication path. Second receiving means for receiving data or compressed data processed by the calculation method indicated by the identification information that sent the data from the sending means, and when the second receiving means receives the data A cache unit that compresses the data by the compression unit according to the calculation method determined by the calculation method determination unit, and stores the calculation method and the compressed data compressed and the data in association with each other; When the receiving means receives compressed data,
Acquisition means for acquiring corresponding data from the cache means based on the calculation method indicated by the identification information temporarily registered in the registration means and the compressed data; and data received from a first communication path or the acquisition A second transfer means for transmitting the data acquired by the means to the second communication path.
【請求項7】 データ転送装置としてコンピュータを機
能させるためのプログラムであって、 複数の計算方法と、該複数の計算方法を示す識別情報を
コンピュータの記憶部に予め記憶させる記憶手段と、 該コンピュータ外部の第1通信路からの、複数の計算方
法を示す識別情報を受信する第1受信手段と、 前記記憶部で記憶される複数の計算方法の識別情報と、
前記第1受信手段により受信される複数の計算方法の識
別情報とから、一致する計算方法の識別情報の1つを選
択し、該識別情報が示す計算方法を利用する計算方法と
して決定する計算方法決定手段と、 前記計算方法決定手段で決定された計算方法の識別情報
を該記憶部に一時登録する登録手段と、 前記計算方法決定手段で決定された計算方法の識別情報
を該第1通信路へ送出する第1送出手段と、 該第1通信路から、データまたはそのデータを前記送出
手段か送出した識別情報が示す計算方法で処理された圧
縮データを受信する第2受信手段と、 前記第2受信手段での受信がデータであったとき、前記
登録手段に登録された識別情報に対応する計算方法を記
憶部から読み出して該データを圧縮し、該計算方法の識
別情報と該圧縮された圧縮データと、該データとを対応
付けて前記記憶部へ格納するキャッシュ手段と、 前記第2受信手段での受信が圧縮データであったとき、
前記記憶部に一時登録される識別情報が示す計算方法と
該圧縮データとに基づいて、前記記憶部から対応するデ
ータを取得する取得手段と、 第1の通信路から受信したデータまたは、前記取得手段
で取得されたデータを第2通信路へ送出する第2送出手
段とをコンピュータに実現させるためのプログラム。
7. A program for causing a computer to function as a data transfer device, comprising: a plurality of calculation methods; storage means for storing identification information indicating the plurality of calculation methods in a storage unit of the computer in advance; First receiving means for receiving identification information indicating a plurality of calculation methods from an external first communication path; and identification information of the plurality of calculation methods stored in the storage unit,
A calculation method for selecting one of the identification information of the matching calculation method from the identification information of the plurality of calculation methods received by the first receiving means, and determining the calculation method indicated by the identification information as the calculation method. Determination means, registration means for temporarily registering the identification information of the calculation method determined by the calculation method determination means in the storage unit, and identification information of the calculation method determined by the calculation method determination means for the first communication path First transmitting means for transmitting to the first communication path, second receiving means for receiving data or compressed data processed by the calculation method indicated by the identification information transmitted from the transmitting means from the first communication path; 2 When the reception means receives data, the calculation method corresponding to the identification information registered in the registration means is read from the storage unit, the data is compressed, and the identification information of the calculation method and the compressed information are compressed. Pressure Compressed data and a cache unit that stores the data in association with each other in the storage unit; and when the second receiving unit receives the compressed data,
An acquisition unit for acquiring corresponding data from the storage unit based on the calculation method indicated by the identification information temporarily registered in the storage unit and the compressed data; and data received from a first communication path or the acquisition A program for causing a computer to realize second transmission means for transmitting the data acquired by the means to the second communication path.
JP2002031909A 2002-02-08 2002-02-08 Data transfer method, server side proxy device, client side proxy device and program Expired - Fee Related JP3977651B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002031909A JP3977651B2 (en) 2002-02-08 2002-02-08 Data transfer method, server side proxy device, client side proxy device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002031909A JP3977651B2 (en) 2002-02-08 2002-02-08 Data transfer method, server side proxy device, client side proxy device and program

Publications (2)

Publication Number Publication Date
JP2003233524A true JP2003233524A (en) 2003-08-22
JP3977651B2 JP3977651B2 (en) 2007-09-19

Family

ID=27775181

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002031909A Expired - Fee Related JP3977651B2 (en) 2002-02-08 2002-02-08 Data transfer method, server side proxy device, client side proxy device and program

Country Status (1)

Country Link
JP (1) JP3977651B2 (en)

Also Published As

Publication number Publication date
JP3977651B2 (en) 2007-09-19

Similar Documents

Publication Publication Date Title
JP3990115B2 (en) Server-side proxy device and program
US7636765B2 (en) Data transfer scheme using caching technique for reducing network load
US7383348B2 (en) Data transfer scheme using caching technique for reducing network load
EP1410247B1 (en) A network storage system
US8024484B2 (en) Caching signatures
CN104081739B (en) Compression and the data difference device and system in Intrusion Detection based on host/path of differentiation engine are utilized in overlay network
US20140250064A1 (en) Method and system for supporting off-line mode of operation and synchronization
JP3984086B2 (en) Cache server, data transfer device, and program
JP2003345708A (en) Device, method and program for transferring data
JP4031516B2 (en) Server side proxy device, client side proxy device, data transfer method and program
JP3983987B2 (en) Server-side proxy device, data transfer method, and program
JP2003108455A (en) Data transfer device and data transfer method
JP3943867B2 (en) Server-side proxy, data transfer method and program
JP2003108464A (en) Device and method for transferring data
JP3943868B2 (en) Server-side proxy, data transfer method and program
JP2003233524A (en) Data transfer method, data transfer device, and program
JP3913508B2 (en) Data transfer apparatus and data transfer method
JP4157585B2 (en) Server side proxy device, client side proxy device, data transfer method and program
JP3977601B2 (en) Server side proxy device, client side proxy device and program
JP2007287167A (en) Client side proxy device, data transfer method, and program
JP4300220B2 (en) Data transfer apparatus and data transfer method
JP2003316700A (en) Mail client terminal and mail server

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040225

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: 20061222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070525

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: 20070619

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070621

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110629

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120629

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120629

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130629

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees