(57)【要約】【課題】３台以上のトランザクションアクセラレータが通信した場合にも、同一データに対するリファレンスの不一致を解決することで、キャッシュを有効利用し、通信の高速化を実現する。【解決手段】現行方式のように対向するトランザクションアクセラレータ間のみでリファレンス情報をもつだけではなく、複数のトランザクションアクセラレータ間でリファレンスの共有を実現するために、トランザクションアクセラレータで管理しているリファレンス情報を更新及び配信する機能を持つリファレンスディストリビュータ（ＲＥＦＥＲＥＮＣＥ  ＤＩＳＴＲＩＢＵＴＯＲ（ＲＤ））を備え、すでにキャッシュに存在するデータと同様のデータが異なるリファレンスで通信される場合に２つのリファレンス情報を関連付け、トランザクションアクセラレータ内の情報を更新すると共に配信先を適切に管理する。【選択図】図７
2008225833.tif 000002
【特許請求の範囲】
【請求項１】
クライアント・サーバ間で通信されるデータと、前記データに一意に対応するリファレンス情報をキャッシュに格納し、前記データの通信を中継するプロキシ機能を有するトランザクションアクセラレータにおいて、
前記クライアント・サーバ間の通信を中継する２以上の他のトランザクションアクセラレータと、同一の前記データに対応する前記リファレンス情報を共有することを特徴とするトランザクションアクセラレータ。
【請求項２】
前記他のトランザクションアクセラレータとの間で通信する同一の前記データに対応する前記リファレンス情報が相違する場合に、
前記データの送信側の前記トランザクションアクセラレータが有する前記リファレンス情報を共有することによって、同一の前記データに対応する前記リファレンス情報を同一にする手段を備えることを特徴とする請求項１に記載のトランザクションアクセラレータ。
【請求項３】
前記キャッシュに格納された情報に基づいて、受信した前記リファレンス情報に一意に対応する前記データを検出できない場合に、
受信した前記リファレンス情報に一意に対応する前記データを通信元の前記他のトランザクションアクセラレータに対して要求することを特徴とする請求項２に記載のトランザクションアクセラレータ。
【請求項４】
同一の前記データに対応する前記リファレンス情報を同一にする際に、前記リファレンス情報を更新した側の前記トランザクションアクセラレータは、
更新前の前記リファレンス情報を共有する前記他のトランザクションアクセラレータとの間で、更新後の前記リファレンス情報を共有するための更新命令を送信する手段を備えることを特徴とする請求項２に記載のトランザクションアクセラレータ。
【請求項５】
同一の前記データに対応する前記リファレンス情報を、受信した前記更新命令に基づいて所定の前記リファレンス情報に更新することを特徴とする請求項４に記載のトランザクションアクセラレータ。
【請求項６】
クライアント・サーバ間で通信されるデータと、前記データに一意に対応するリファレンス情報をキャッシュに格納し、前記データの通信を中継するプロキシ機能を有するトランザクションアクセラレータを備える通信システムにおいて、
前記クライアント・サーバ間の通信を中継する３以上の異なるトランザクションアクセラレータ間で、同一の前記データに対応する前記リファレンス情報を共有することを特徴とする通信システム。
【請求項７】
前記トランザクションアクセラレータは、
前記トランザクションアクセラレータ間で通信する同一の前記データに対応する前記リファレンス情報が相違するか否かを判定する手段と、
前記リファレンス情報が相違する場合に、
前記データの送信側の前記トランザクションアクセラレータが有する前記リファレンス情報を、受信側の前記トランザクションアクセラレータが共有することによって、同一の前記データに対応する前記リファレンス情報を同一にする手段とを備えることを特徴とする請求項６に記載の通信システム。
【請求項８】
前記トランザクションアクセラレータは、
前記キャッシュに格納された情報に基づいて、受信した前記リファレンス情報に一意に対応する前記データの有無を検出する手段と、
前記データを検出できない場合に、
受信した前記リファレンス情報に一意に対応する前記データを通信元の前記他のトランザクションアクセラレータに対して要求する手段とを備えることを特徴とする請求項７に記載の通信システム。
【請求項９】
同一の前記データに対応する前記リファレンス情報を同一にする際に、前記リファレンス情報を更新した側の前記トランザクションアクセラレータは、
更新前の前記リファレンス情報を共有する前記他のトランザクションアクセラレータとの間で、更新後の前記リファレンス情報を共有するための更新命令を送信する手段を備えることを特徴とする請求項７に記載の通信システム。
【請求項１０】
前記更新命令を受信した前記トランザクションアクセラレータは、
同一の前記データに対応する前記リファレンス情報を、受信した前記更新命令に基づいて所定の前記リファレンス情報に更新する手段を備えることを特徴とする請求項９に記載の通信システム。
【請求項１１】
クライアント・サーバ間で通信されるデータと、前記データに一意に対応するリファレンス情報をキャッシュに格納し、前記データの通信を中継するプロキシ機能を有するトランザクションアクセラレータ間の通信方法であって、
前記クライアント・サーバ間の通信を中継する２以上の他のトランザクションアクセラレータ間において、同一の前記データに対応する前記リファレンス情報を共有することを特徴とする通信方法。
【請求項１２】
前記トランザクションアクセラレータ間で通信する同一の前記データに対応する前記リファレンス情報が相違するか否かを判定するステップと、
前記リファレンス情報が相違する場合に、
前記データの送信側の前記トランザクションアクセラレータが有する前記リファレンス情報を、受信側の前記トランザクションアクセラレータが共有することによって、同一の前記データに対応する前記リファレンス情報を同一にするステップとを備えることを特徴とする請求項１１に記載の通信方法。
【請求項１３】
前記キャッシュに格納された情報に基づいて、受信した前記リファレンス情報に一意に対応する前記データの有無を検出するステップと、
前記データを検出できない場合に、
受信した前記リファレンス情報に一意に対応する前記データを通信元の前記他のトランザクションアクセラレータに対して要求するステップとを備えることを特徴とする請求項１２に記載の通信方法。
【請求項１４】
同一の前記データに対応する前記リファレンス情報を同一にする際に、前記リファレンス情報を更新した側の前記トランザクションアクセラレータにおいて、
更新前の前記リファレンス情報を共有する前記他のトランザクションアクセラレータとの間で、更新後の前記リファレンス情報を共有するための更新命令を送信するステップを備えることを特徴とする請求項１２に記載の通信方法。
【請求項１５】
前記更新命令を受信した前記トランザクションアクセラレータにおいて、
同一の前記データに対応する前記リファレンス情報を、受信した前記更新命令に基づいて所定の前記リファレンス情報に更新するステップを備えることを特徴とする請求項１４に記載の通信方法。
【請求項１６】
クライアント・サーバ間で通信されるデータと、前記データに一意に対応するリファレンス情報をキャッシュに格納し、前記データの通信を中継するプロキシ機能を有するトランザクションアクセラレータ上で実行されるプログラムであって、
前記トランザクションアクセラレータに、
前記クライアント・サーバ間の通信を中継する２以上の他のトランザクションアクセラレータと、同一の前記データに対応する前記リファレンス情報を共有する処理を実行させることを特徴とするプログラム。
【請求項１７】
前記トランザクションアクセラレータに、
前記トランザクションアクセラレータ間で通信する同一の前記データに対応する前記リファレンス情報が相違するか否かを判定する処理と、
前記リファレンス情報が相違する場合に、
前記データの送信側の前記トランザクションアクセラレータが有する前記リファレンス情報を共有することによって、同一の前記データに対応する前記リファレンス情報を同一にする処理とを実行させることを特徴とする請求項１６に記載のプログラム。
【請求項１８】
前記トランザクションアクセラレータに、
前記キャッシュに格納された情報に基づいて、受信した前記リファレンス情報に一意に対応する前記データの有無を検出する処理と、
前記データを検出できない場合に、
受信した前記リファレンス情報に一意に対応する前記データを通信元の前記他のトランザクションアクセラレータに対して要求する処理とを実行させることを特徴とする請求項１７に記載のプログラム。
【請求項１９】
同一の前記データに対応する前記リファレンス情報を同一にする際において、
前記リファレンス情報を更新した側の前記トランザクションアクセラレータに、
更新前の前記リファレンス情報を共有する前記他のトランザクションアクセラレータとの間で、更新後の前記リファレンス情報を共有するための更新命令を送信する処理を実行させることを特徴とする請求項１７に記載のプログラム。
【請求項２０】
前記更新命令を受信した前記トランザクションアクセラレータに、
同一の前記データに対応する前記リファレンス情報を、受信した前記更新命令に基づいて所定の前記リファレンス情報に更新する処理を実行させることを特徴とする請求項４に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多拠点間においてキャッシュリファレンス情報の同期をとるためのトランザクションアクセラレータ、通信システム、通信方法及びプログラムに関するものである。
【背景技術】
【０００２】
従来、特許文献１（米国特許２２９０１６号）で説明されているようなシステムを一例とする技術では、図１に示すように、インターネットを経由して通信するクライアントとサーバの通信をキャッシュデータを用いて高速化する目的で、クライアント−サーバシステムに対向するトランザクションアクセラレータ（ＴＡ(ＴＲＡＮＳＡＣＴＩＯＮ  ＡＣＣＥＬＥＲＡＴＯＲ)）１０００をクライアント１００側（ＣＬＩＥＮＴ−ＳＩＤＥ）のトランザクションアクセラレータ１０００（１０００‐１〜１０００‐ｎ）（ＣＴＡ）、サーバ２００側（SＥＲＶＥＲ−ＳＩＤＥ）のトランザクションアクセラレータ１０００（１０００‐１〜１０００‐ｎ）（ＳＴＡ）としてそれぞれインターネット３００を介して配置する。また、STAとサーバ２００の間に、STAとサーバ２００の間の通信データを管理してサーバ２００の付加分散等を行うサーバフォームマネジャ４００を配置してもよい。
【０００３】
ＴＡ１０００を介したクライアント１００とサーバ２００での通信では、はじめて流れたデータはキャッシュを使用せず通信される。通信されたデータはセグメントデータとしてＣＴＡ，ＳＴＡ内のキャッシュ領域に格納され、各セグメントに対して一意なリファレンスが設定される。ＣＴＡ，ＳＴＡ内のキャッシュ領域に格納されたセグメントデータと同一のデータが通信される場合はデータをリファレンスに変換して送信し、受信したＴＡ１０００がリファレンスからセグメントデータを復元する。
【０００４】
ＴＡ１０００内部の構造を図１５に示し、図１５を参照してＴＡ１０００の各構成要素の動作を以下に説明する。
【０００５】
クライアント１００側に接続するプロキシ（ＰＬＯＸＹ）１１００は、クライアント１００がサーバ２００への通信を行う際、クライアント１００からの要求を受け取り、サーバ２００への通信を代理して行う。複数のクライアント１００からの要求があった場合も同様に、クライアント１００側に接続するプロキシ１１００が一括して通信を管理する。
【０００６】
トランザクショントランスフォーマ（ＴＲＡＮＳＡＣＴＩＯＮ  ＴＲＡＮＳＦＯＲＭＥＲ（ＴＴ））１２００は、（１）クライアント１００側に接続するプロキシ１１００から流れてくるデータをセグメントデータに分割し、リファレンス情報と共にパーシステントセグメントストレージ(PERSISTENT SEGMENT STORAGE（ＰＳＳ）)１５００に格納する機能と、（２）クライアント１００側に接続するプロキシ１１００から流れてくるデータをＰＳＳ１５００に格納されたセグメントデータと比較し、同一のセグメントであればその部分をリファレンスに変換して送信する機能とを有する。
【０００７】
インバーストランザクショントランスフォーマ（ＩＮＶＥＲＳＥ  ＴＲＡＮＳＡＣＴＩＯＮ  ＴＲＡＮＳＦＯＲＭＥＲ（ＩＴＴ））１３００は、（１）対向するＴＡ１０００から送信されてきたデータをリファレンス情報と共にＰＳＳ１５００に格納する機能と、（２）対向するＴＡ１０００からの送信データのなかにリファレンスがある場合、そのリファレンスが参照するセグメントデータをリファレンスリゾルバ（ＲＥＦＥＲＥＮＣＥ  ＲＥＳＯＬＶＥＲ（ＲＲ））１４００に問い合わせ、送信されてきたデータ全体をリファレンスのない状態のデータに復元する機能とを有する。
【０００８】
リファレンスリゾルバ（ＲＲ）１４００は、（１）問い合わせのあったリファレンスが参照するセグメントデータがＰＳＳ１５００に存在する場合には、そのセグメントデータをレスポンスとして返す機能と、（２）問い合わせのあったリファレンスが参照するセグメントデータがＰＳＳ１５００に存在しない場合に、送信元のＴＡ１０００からセグメントデータを受信し、レスポンスとして返す機能とを有する。
【０００９】
サーバ２００側のプロキシ１１００は、サーバ２００がクライアント１００への通信を行う際、サーバ２００からの要求を受け取り、クライアント１００への通信を代理して行う。複数のサーバ２００からの要求があった場合も同様に、サーバ２００側のプロキシ１１１００が一括して通信を管理する。
【００１０】
ＰＳＳ１５００内でのキャッシュデータ１５１０は、リファレンスとセグメントデータの組という形で格納される（図２参照）。リファレンス情報はグローバルに一意な値が使用される。例えば対向するＴＡ１０００をＴＡ１、ＴＡ２とすると、リファレンス情報はＴＡ１につけられたグローバルで一意な値（例：ＭＡＣアドレス）とＴＡ２につけられたグローバルで一意な値、さらにシーケンシャル番号を組み合わせて作成される。
【００１１】
図３は、入力データがどのように変換されて出力されるかを示す図である。入力されたデータは、細かいセグメントデータに分割され、以前に通信されＰＳＳ１５００内にリファレンスが存在するセグメントデータに関しては当該リファレンスに置換され、出力データとして出力される。
【００１２】
次に、上記従来のクライアント−サーバシステムの動作を説明する。なお、各ＴＡ１０００の状態は、キャッシュされたデータを持たない状態を初期状態とする。
【００１３】
ＴＡ１がＴＡ２にデータ（セグメント（segment）１）を送信する際の動作を説明する（図４の通信１）。
【００１４】
ＴＡ１のプロキシ（クライアント側又はサーバ側のプロキシ）１１００がセグメント（segment）１をＴＴ１２００に渡す。（図１６の（１））
【００１５】
ＴＡ１のトランザクショントランスフォーマ１２００は、セグメント１をＰＳＳ１５００の中で探索する。上記初期状態により存在しないのでリファレンスＲ（１，２）を作成し、ＰＳＳ１５００にセグメント１を格納する。（図１６（２））
【００１６】
ＴＡ１のＴＴ１２００は、ＴＡ２のＩＴＴ１３００に対してセグメント１を送信する。（図１６（３））
【００１７】
ＴＡ２のＩＴＴ１３００では、リファレンスＲ（１，２）とセグメント１をＰＳＳ１５００に格納する。（図１６（４））
【００１８】
ＴＡ２のＩＴＴ１３００は、セグメント１をプロキシ１１００に渡す。（図１６（５））
【００１９】
図４の通信１の結果として、ＴＡ１とＴＡ２の両方でリファレンスＲ（１，２）とセグメント1がＰＳＳ１５００に格納される。
【００２０】
次いで、ＴＡ３がＴＡ４にセグメント１を送信する際の動作を説明する（図４の通信２）。
【００２１】
TA３のプロキシ１１００が、セグメント１をＴＴ１２００に渡す。（図１７（１））
【００２２】
ＴＡ３のＴＴ１２００は、セグメント１をＰＳＳ１５００の中で探索する。上記初期状態により存在しないのでリファレンスＲ（３，４）を作成し、ＰＳＳ１５００にセグメント１を格納する。（図１７（２））
【００２３】
ＴＡ３のＴＴ１２００は、ＴＡ４のＩＴＴ１３００に対してセグメント１を送信する。（図１７（３））
【００２４】
ＴＡ４のＩＴＴ１３００ではリファレンスＲ（３，４）とセグメント１をＰＳＳ１５００に格納する。（図１７（４））
【００２５】
ＴＡ４のＩＴＴ１３００は、セグメント１をプロキシ１１００に渡す。（図１７（５））
【００２６】
図４の通信２の結果として、ＴＡ３とＴＡ４の両方でリファレンスＲ（３，４）とセグメント１がＰＳＳ１５００に格納される。
【００２７】
次いで、ＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明する（図５の通信３）。
【００２８】
ＴＡ１のプロキシ１１００が、セグメント１をＴＴ１２００に渡す（図１８（１））。
【００２９】
ＴＡ１のＴＴ１２００は、セグメント１をＰＳＳ１５００の中で探索する。上記通信１によりデータが存在するのでセグメント（segment）１とリファレンスＲ（１，２）を変換する（図１８（２））。
【００３０】
ＴＡ１のＴＴ１２００は、Ｒ（１，２）をＴＡ３のＩＴＴ１３００に送信する（図１８（３））。
【００３１】
ＴＡ３のＩＴＴ１３００は、送られてきたものがリファレンスＲ（１，２）のため、ＲＲ１４００に処理を依頼する（図１８（４））。
【００３２】
ＴＡ３のＲＲ１４００は、ＰＳＳ１５００にリファレンスＲ（１，２）があるか調べる（図１８（５））。
【００３３】
Ｒ（１，２）は存在しないため、通信元であるＴＡ１のＲＲ１４００にＲ（１，２）を送ってリファレンスが指すデータの送信を依頼する（図１８（６））。
【００３４】
ＴＡ１のＲＲ１４００は、ＰＳＳ１５００からセグメント１を取り出し（図１８（７））、取り出したセグメント１をＴＡ３のＲＲ１４００に返す（図１８（８））。
【００３５】
ＴＡ３のＲＲ１４００は、返ってきたセグメント１をＩＴＴ１３００に返す（図１９（９））。
【００３６】
ＴＡ３のＩＴＴ１３００は、リファレンス（１，２）とセグメント１をＰＳＳ１５００に格納する。（図１９（１０））。
【００３７】
ＴＡ３のＩＴＴ１３００は、セグメント１をプロキシ１１００に渡す（図１９（１１））。
【００３８】
図５の通信３の結果として、ＴＡ３にリファレンスＲ（１，２）とセグメント１がＰＳＳ１５００に追加される。
【００３９】
これらの通信の結果、ＴＡ１−ＴＡ２間、ＴＡ３−ＴＡ４間、ＴＡ１−ＴＡ３間では次回の通信からキャッシュを使用し、通信の高速化をすることが可能である。
【００４０】
すなわち、上記従来のシステムは、複数のＴＡ１０００間におけるキャッシュに対するリファレンスが2つのＴＡ１０００間で独立して使用されるため、一度通信したＴＡ１０００同士では、同じリファレンスが同一データを指すことが保障されることから、キャッシュを利用することができる。このため、上記従来の技術を用いると、２つのＴＡ１０００間の通信において、１回目の通信で同じデータに同じリファレンスを作成することができることから、次回の通信からはリファレンスデータをやり取りすることが可能となる。
【特許文献１】米国特許２２９０１６号公報
【発明の開示】
【発明が解決しようとする課題】
【００４１】
しかし、上記従来のシステムは、一度も通信したことのないＴＡ１０００同士の通信では同じリファレンスを持たないためキャッシュを利用できないという問題があった。このことは、別のＴＡ１０００を介した間接的な通信で同じデータをキャッシュしている場合にも同様であり、リファレンスの相違からキャッシュを利用できないことがある。その結果として、リファレンスではなくデータの転送が行われ通信量が増加するという問題があった。
【００４２】
すなわち、上記従来のシステムは、３台以上のＴＡ１０００間で通信する際に同一のデータに対して複数のリファレンスが存在する可能性があるため、同一データをキャッシュデータに保持しているにもかかわらず、リファレンスを使用した通信ができない場合があった。
【００４３】
例えば、上記ＴＡ２とＴＡ４の間の通信では、ＴＡ２、ＴＡ４共にセグメント１をＰＳＳ１５００に格納しているにもかかわらず、リファレンスが相違するためにキャッシュ利用ができない。
【００４４】
（発明の目的）
本発明の目的は、３台以上のＴＡ１０００が通信した場合にも、同一データに対するリファレンスの不一致を解決することで、キャッシュを有効利用し、通信の高速化を実現するプロキシ、通信システム、通信方法及びプログラムを提供することである。
【課題を解決するための手段】
【００４５】
上記課題を解決するため本発明は、クライアント・サーバ間で通信されるデータと、前記データに一意に対応するリファレンス情報をキャッシュに格納し、前記データの通信を中継するプロキシにおいて、前記クライアント・サーバ間の通信を中継する２以上の他のプロキシと、同一の前記データに対応する前記リファレンス情報を共有することを特徴とする。
【００４６】
より詳細には、本発明は、現行方式のように対向するＴＡ１０００間のみでリファレンス情報をもつだけではなく複数のＴＡ１０００間でリファレンスの共有を実現するために、ＴＡ１０００で管理しているリファレンス情報を更新及び配信する機能を持つリファレンスディストリビュータ（ＲＥＦＥＲＥＮＣＥ  ＤＩＳＴＲＩＢＵＴＯＲ（ＲＤ））を備えることを特徴とする。
【００４７】
（作用）
このリファレンスディストリビュータを備えることによって、本発明は、すでにキャッシュに存在するデータと同様のデータが異なるリファレンスで通信される場合に２つのリファレンス情報を関連付け、ＴＡ１０００内の情報を更新すると共に配信先を適切に管理する機能を実現する。
【００４８】
本発明によるリファレンスディストリビュータ（ＲＥＦＥＲＥＮＣＥ  ＤＩＳＴＲＩＢＵＴＯＲ（ＲＤ））は、ＴＡ１０００が通信を行う際、対向するＴＡ１０００との間で同一データへのリファレンスに差異がある場合に一方のリファレンス情報を書き換えることで同期を取る機能と、リファレンスが再度変更されるときに相手に通知できるように、対向するＴＡ１０００の情報を格納しておく機能と、実際にリファレンスの書き換えが起こった場合には格納したＴＡ１０００情報に従って配信する機能とを持つ。配信された立場のＴＡ１０００はリファレンス情報を更新し、さらに配信すべき相手がいれば配信を行う。
【００４９】
すなわち、本発明によるリファレンスディストリビュータの機能概要は、以下のようになる。
【００５０】
（１）ＲＲ１４００によってリファレンスの参照するデータを対向するＴＡ１０００に要求したときに、要求により返されたセグメントデータが他のＴＡ１０００との通信によってすでにキャッシュに格納されていないかを探索する機能と、探索の結果としてキャッシュに存在する場合には、対向するＴＡ１０００との間で同一データへのリファレンスに差異があるということなので、ＴＡ１０００内に元からあった旧リファレンスを、送信されてきた新リファレンスに更新する機能とを持つ。
【００５１】
（２）実データを通信したことがあるＴＡ１０００に関する情報（ＩＰアドレス等）を、通信したデータへのリファレンスと対応させ、配信情報として配信情報データベースに保管する機能を持つ。保管する配信情報は、（ａ）初めて送受信するデータをやり取りした対向するＴＡ１０００の情報、（ｂ）リファレンスをやり取りしたが、受信側キャッシュ内で解決できず送受信を行った場合の対向するＴＡ１０００の情報とする。
【００５２】
（３）配信情報データベースに登録された配信情報に従って、リファレンスの情報を適切なＴＡ１０００に配信する機能を持つ。
【００５３】
（４）リファレンス情報を受信したＴＡ１０００内ＲＤは、自ＰＳＳ１５００内のリファレンス情報を変更するとともに、配信情報データベースの配信情報に従って、他のＴＡ１０００にも配信する機能を持つ。
【発明の効果】
【００５４】
本実施の形態によれば、以下の効果を達成できる。
【００５５】
第１に、複数のトランザクションアクセラレータ間でリファレンス情報を共有することにより、キャッシュヒット率を向上させ、通信の高速化を図ることができる。
【００５６】
第２に、同一データを異なるリファレンス情報とともに格納する可能性がなくなるため、キャッシュ領域の利用の効率化を図ることができる。
【００５７】
それらの理由は、クライアント・サーバ間で通信されるデータと、データに一意に対応するリファレンス情報をキャッシュに格納し、データの通信を中継するプロキシ機能を有するトランザクションアクセラレータにおいて、クライアント・サーバ間の通信を中継する２以上の他のプロキシと、同一のデータに対応するリファレンス情報を共有するからである。
【００５８】
より詳細には、ＴＡ１０００で管理しているリファレンス情報の配信及び更新を行う機能を持つリファレンスディストリビュータ（ＲＥＦＥＲＥＮＣＥ  ＤＩＳＴＲＩＢＵＴＯＲ（ＲＤ））を導入することにより、３台以上のＴＡ１０００が通信した場合にリファレンス情報を配信・更新し、同一データに対するリファレンスの不一致を解決するからである。
【発明を実施するための最良の形態】
【００５９】
本発明による第１の実施の形態を、図面を用いて詳細に説明する。
【００６０】
（第１の実施の形態の構成）
図１は、本実施の形態におけるクライアント−サーバシステムの全体構成を示すブロック図である。
【００６１】
本実施の形態おけるクライアント−サーバシステムの全体構成は、上述した図１に示す従来のクライアント−サーバシステムの全体構成と同様に、対向するトランザクションアクセラレータ（ＴＡ(ＴＲＡＮＳＡＣＴＩＯＮ  ＡＣＣＥＬＥＲＡＴＯＲ)）１０００をクライアント１００側（ＣＬＩＥＮＴ−ＳＩＤＥ）のトランザクションアクセラレータ１０００（１０００‐１〜１０００‐ｎ）（ＣＴＡ）、サーバ２００側（SＥＲＶＥＲ−ＳＩＤＥ）のトランザクションアクセラレータ１０００（１０００‐１〜１０００‐ｎ）（ＳＴＡ）としてそれぞれインターネット３００を介して配置する。また、STAとサーバ２００の間に、STAとサーバ２００の間の通信データを管理してサーバ２００の付加分散等を行うサーバフォームマネジャ４００を配置してもよい。
【００６２】
上述したように、ＴＡ１０００を介したクライアント１００とサーバ２００での通信では、はじめて流れたデータはキャッシュを使用せず通信され、通信されたデータはセグメントデータとしてＣＴＡ，ＳＴＡ内のキャッシュ領域に格納され、各セグメントに対して一意なリファレンスが設定される。ＣＴＡ，ＳＴＡ内のキャッシュ領域に格納されたセグメントデータと同一のデータが通信される場合はデータをリファレンスに変換して送信し、受信したＴＡ１０００がリファレンスからセグメントデータを復元する。
【００６３】
図６は、本実施の形態のＴＡの構成を示すブロック図である。
【００６４】
図６を参照すると、本実施の形態は、ＣＴＡが、クライアント１００側のプロキシ（ＰＬＯＸＹ）１１００と、トランザクショントランスフォーマ（ＴＲＡＮＳＡＣＴＩＯＮ  ＴＲＡＮＳＦＯＲＭＥＲ（ＴＴ））１２００と、インバーストランザクショントランスフォーマ（ＩＮＶＥＲＳＥ  ＴＲＡＮＳＡＣＴＩＯＮ  ＴＲＡＮＳＦＯＲＭＥＲ（ＩＴＴ））１３００と、リファレンスリゾルバ（ＲＥＦＥＲＥＮＣＥ  ＲＥＳＯＬＶＥＲ（ＲＲ））１４００と、パーシステントセグメントストレージ(PERSISTENT SEGMENT STORAGE（ＰＳＳ）)１５００と、リファレンスディストリビュータ（ＲＥＦＥＲＥＮＣＥ  ＤＩＳＴＲＩＢＵＴＯＲ（ＲＤ））１６００とを備え、ＳＴＡが、サーバ２００側のプロキシ（ＰＬＯＸＹ）１１００と、トランザクショントランスフォーマ（ＴＴ）１２００と、インバーストランザクショントランスフォーマ（ＩＴＴ）１３００と、リファレンスリゾルバ（ＲＲ）１４００と、パーシステントセグメントストレージＰＳＳ１５００と、リファレンスディストリビュータ（ＲＤ）１６００とを備える。
【００６５】
なお、上記ｊ構成は一例であり、ＣＴＡがサーバ２００側のプロキシ１１００をさらに備え、ＳＴＡがクライアント１００側のプロキシ１１００をさらに備えていてもよい。
【００６６】
クライアント１００側のプロキシ１１００は、クライアント１００がサーバ２００への通信を行う際、クライアント１００からの要求を受け取り、サーバ２００への通信を代理して行う。複数のクライアント１００からの要求があった場合も同様に、クライアント１００側のプロキシ１１００が一括して通信を管理する。
【００６７】
トランザクショントランスフォーマ（ＴＴ）１２００は、（１）クライアント１００側のプロキシ１１００から流れてくるデータをセグメントデータに分割し、リファレンス情報と共にＰＳＳ１５００に格納する機能と、（２）クライアント１００側のプロキシ１１００から流れてくるデータをＰＳＳ１５００に格納されたセグメントデータと比較し、同一のセグメントであればその部分をリファレンスに変換して送信する機能とを有する。
【００６８】
インバーストランザクショントランスフォーマ（ＩＴＴ）１３００は、（１）対向するＴＡ１０００から送信されてきたデータをリファレンス情報と共にＰＳＳ１５００に格納する機能と、（２）対向するＴＡ１０００からの送信データのなかにリファレンスがある場合、そのリファレンスが参照するセグメントデータをリファレンスリゾルバ（ＲＲ）１４００に問い合わせ、送信されてきたデータ全体をリファレンスのない状態のデータに復元する機能とを有する。
【００６９】
リファレンスリゾルバ（ＲＲ）１４００は、（１）問い合わせのあったリファレンスが参照するセグメントデータがＰＳＳ１５００に存在する場合には、そのセグメントデータをレスポンスとして返す機能と、（２）問い合わせのあったリファレンスが参照するセグメントデータがＰＳＳ１５００に存在しない場合に、送信元のＴＡ１０００からセグメントデータを受信し、レスポンスとして返す機能とを有する。
【００７０】
サーバ２００側のプロキシ１１００は、サーバ２００がクライアント１００への通信を行う際、サーバ２００からの要求を受け取り、クライアント１００への通信を代理して行う。複数のサーバ２００からの要求があった場合も同様に、サーバ２００側のプロキシ１１００が一括して通信を管理する。
【００７１】
ＰＳＳ１５００内でのキャッシュデータ１５１０は、リファレンスとセグメントデータの組という形で格納される（図２参照）。リファレンス情報はグローバルに一意な値が使用される。例えば対向するＴＡ１０００をＴＡ１、ＴＡ２とすると、リファレンス情報はＴＡ１につけられたグローバルで一意な値（例：ＭＡＣアドレス）とＴＡ２につけられたグローバルで一意な値、さらにシーケンシャル番号を組み合わせて作成される。
【００７２】
上述したように、図３は、入力データがどのように変換されて出力されるかを示す図である。入力されたデータは、細かいセグメントデータに分割され、以前に通信されＰＳＳ１５００内にリファレンスが存在するセグメントデータに関しては当該リファレンスに置換され、出力データとして出力される。
【００７３】
次に、本発明の特徴であるリファレンスディストリビュータ（ＲＤ）の構成について説明する。
【００７４】
図７は、本実施の形態によるリファレンスディストリビュータ（ＲＤ）の構成を示すブロック図である。
【００７５】
図７を参照すると、本実施の形態によるリファレンスディストリビュータ（ＲＤ）１６００は、Ｉ／Ｏ（入出力）処理部１６０１と、ＴＴリクエスト処理部１６０２と、配信情報追加処理部１６０３と、配信情報データベース（DB）１６０４と、ＩＴＴリクエスト処理部１６０５と、ＲＲリクエスト処理部１６０６と、ＰＳＳデータ処理部１６０７と、リファレンス情報計算処理部１６０８と、送信処理部１６０９と、受信処理部１６１０と、通信処理部１６１１とを備える。
【００７６】
Ｉ／Ｏ処理部１６０１は、ＴＡ１０００内の他の要素からのデータ送受信を行う機能を有する。
【００７７】
ＴＴリクエスト処理部１６０２は、ＴＴ１２００がＰＳＳ１５００に存在しないデータを送信するとき、Ｉ／Ｏ処理部１６０１を通してＴＴ１２００からリファレンスと通信情報（ＩＰアドレス）を受け取って配信情報追加処理部１６０３に渡す機能を有する。
【００７８】
配信情報追加処理部１６０３は、リファレンスと通信情報を配信情報データベース１６０４に格納する機能を有する。
【００７９】
配信情報データベース１６０４は記憶領域で、リファレンスと通信情報を格納する機能を有する。
【００８０】
ＩＴＴリクエスト処理部１６０５は、ＩＴＴ１３００がＰＳＳ１５００に存在しないデータを受信するとき、Ｉ／Ｏ処理部１６０１を通してＩＴＴ１３００からリファレンスと通信情報を受け取って配信情報追加処理部１６０３に渡す機能を有する。
【００８１】
ＲＲリクエスト処理部１６０６は、ＲＲ１４００がリファレンスでないデータを送信するとき、Ｉ／Ｏ処理部１６０１を通してＲＲ１４００からリファレンスと通信情報を受け取って配信情報追加処理部１６０３に渡す機能を有する。また、ＲＲリクエスト処理部１６０６は、ＲＲ１４００がリファレンスでないデータを受信するとき、Ｉ／Ｏ処理部１６０１を通してＲＲ１４００からリファレンスとそれが指すデータ、通信情報を受け取ってＰＳＳデータ処理部１６０７に渡す機能を有する。
【００８２】
ＰＳＳデータ処理部１６０７は、受け取ったデータをＰＳＳ１５００内で探索し、存在する場合は旧リファレンスを新しく受け取ったリファレンスに更新する機能を有し、また、新旧のリファレンスの更新の配信情報データベース１６０４内への適用をリファレンス情報計算処理部１６０８に依頼する機能を有する。
【００８３】
リファレンス情報計算処理部１６０８は、受け取った新旧リファレンスの更新を配信情報データベース１６０４内で実行する機能を有する。さらに、送信処理部１６０９にリファレンス更新の配信を依頼する機能を有する。
【００８４】
送信処理部１６０９は、通信処理部１６１１を通してリファレンス更新を行うためのデータを配信する機能を有する。
【００８５】
受信処理部１６１０は、通信処理部１６１１を通してリファレンス更新を行うためのデータを受け取ってリファレンス情報計算処理部１６０８に渡す機能を有する。
【００８６】
通信処理部１６１１は、他のＴＡ１０００のＴＤとの通信を行う機能を有する。
【００８７】
ここで、トランザクションアクセラレータ１０００（ＣＴＡ及びＳＴＡ）のハードウェア構成の説明をする。
【００８８】
図８は、本実施の形態によるクライアント−サーバシステムのトランザクションアクセラレータ（ＣＴＡ及びＳＴＡ）のハードウェア構成例を示すブロック図である。
【００８９】
図８を参照すると、本発明によるトランザクションアクセラレータ１０００は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１００１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメインメモリであり、データの作業領域やデータの一時退避領域に用いられる主記憶部１００２、インターネット３００を介してデータの送受信を行う通信制御部１００３、液晶ディスプレイ、プリンタやスピーカ等の提示部１００４、キーボードやマウス等の入力部１００５、周辺機器と接続してデータの送受信を行うインタフェース部１００６、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置である補助記憶部１００７、本情報処理装置の上記各構成要素を相互に接続するシステムバス１００８等を備えている。
【００９０】
本発明によるトランザクションアクセラレータ１０００は、その動作を、トランザクションアクセラレータ１０００内部にそのような機能を実現するプログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品からなる回路部品を実装してハードウェア的に実現することは勿論として、上記した各構成要素の各機能を提供するプログラムを、コンピュータ処理装置上のＣＰＵ１００１で実行することにより、ソフトウェア的に実現することができる。
【００９１】
すなわち、ＣＰＵ１００１は、補助記憶部１００７に格納されているプログラムを、主記憶部１００２にロードして実行し、トランザクションアクセラレータ１０００の動作を制御することにより、上述した各機能をソフトウェア的に実現する。
【００９２】
（第１の実施の形態の動作）
本実施の形態におけるクライアント−サーバシステムの動作を説明する。
【００９３】
各ＴＡ１０００の状態は、キャッシュされたデータを持たない状態を初期状態とする。
【００９４】
図９は、本実施の形態によるＴＡ１がＴＡ２にデータ（セグメント（segment）１）（セグメント１）を送信する際の動作を説明する図である
【００９５】
図９を用いて、ＴＡ１がＴＡ２にデータ（セグメント（segment）１）を送信する際の動作を説明する（図４の通信１参照）。
【００９６】
ＴＡ１のプロキシは、セグメント１をＴＴ１２００に渡す（図９（１））。
【００９７】
ＴＡ１のトランザクショントランスフォーマ（ＴＴ）は、セグメント１をＰＳＳ１５００の中で探索する。上記初期状態によりセグメント１は存在しないのでリファレンスＲ（１，２）を作成し、ＰＳＳ１５００にセグメント１を格納する。（図９（２））
【００９８】
ＴＡ１のＴＴ１２００は、ＲＤのＩ／Ｏ処理部１６０１を介してＴＴリクエスト処理部１６０２にリファレンスＲ（１，２）とＴＡ２のＩＰアドレスを渡す（図９（３）（４））。ＴＴリクエスト処理部１６０２はＲ（１，２）とＴＡ２のＩＰアドレスを配信情報追加処理部１６０３に渡し（図９（５））、配信情報追加処理部１６０３はＲ（１，２）とＴＡ２のＩＰアドレスを配信情報DB１６０４に格納する処理を行う（図９（６））。
【００９９】
ＴＡ１のＴＴ１２００は、ＴＡ２のＩＴＴ１３００に対してセグメント１を送信する。（図９（７））
【０１００】
ＴＡ２のＩＴＴ１３００ではセグメント１とリファレンスＲ（１，２）をＰＳＳ１５００に格納する。（図９（８））
【０１０１】
ＴＡ２のＩＴＴ１３００は、ＲＤのＩ／Ｏ処理部１６０１を通してＩＴＴリクエスト処理部１６０５にリファレンスＲ（１，２）とＴＡ１のＩＰアドレスを渡す（図９（９）（１０））。ＩＴＴリクエスト処理部１６０５はＲ（１，２）とＴＡ１のＩＰアドレスを配信情報追加処理部１６０３に渡し（図９（１１））、配信情報追加処理部１６０３はＲ（１，２）とＴＡ１のＩＰアドレスを配信情報DB１６０４に格納する処理を行う（図９（１２））。
【０１０２】
ＴＡ２のＩＴＴ１３００はセグメント１をプロキシに渡す（図９（１３））。
【０１０３】
上記説明した動作により、図４の通信１の結果として、ＴＡ１とＴＡ２の両方でリファレンスＲ（１，２）とセグメント１がＰＳＳ１５００に格納される。さらに、ＴＡ１、ＴＡ２の配信情報DB１６０４には、ファレンスＲ（１，２）とお互いのＩＰアドレスが格納される。
【０１０４】
次いで、ＴＡ３がＴＡ４にセグメント１を送信する際の動作を説明する（図４の通信２参照）。
【０１０５】
図１０は、本実施の形態によるＴＡ３がＴＡ４にセグメント１を送信する際の動作を説明するである。
【０１０６】
ＴＡ３のプロキシがセグメント１をＴＴ１２００に渡す。（図１０（１））
【０１０７】
ＴＡ３のＴＴ１２００はセグメント１をＰＳＳ１５００の中で探索する。上記初期状態によりセグメント１が存在しないのでリファレンスＲ（３，４）を作成し、ＰＳＳ１５００にセグメント１を格納する。（図１０（２））
【０１０８】
ＴＡ３のＴＴ１２００は、ＲＤのＩ／Ｏ処理部１６０１を通してＴＴリクエスト処理部１６０２にリファレンスＲ（３，４）とＴＡ４のＩＰアドレスを渡す（図１０（３）（４））。ＴＴリクエスト処理部１６０２はＲ（３，４）とＴＡ４のＩＰアドレスを配信情報追加処理部１６０３に渡し（図１０（５））、配信情報追加処理部１６０３はＲ（３，４）とＴＡ４のＩＰアドレスを配信情報DB１６０４に格納する処理を行う（図１０（６））。
【０１０９】
ＴＡ３のＴＴ１２００は、ＴＡ４のＩＴＴ１３００に対してセグメントを送信する（図１０（７））。
【０１１０】
ＴＡ４のＩＴＴ１３００ではセグメント１とリファレンスＲ（３，４）をＰＳＳ１５００に格納する。（図１０（８））
【０１１１】
ＴＡ４のＩＴＴ１３００は、リファレンスＲ（３，４）とＴＡ３のＩＰアドレスをＲＤのＩ／Ｏ処理部１６０１を通してＩＴＴリクエスト処理部１６０５に渡す（図１０（９）（１０））。ＩＴＴリクエスト処理部１６０５はＲ（３，４）とＴＡ３のＩＰアドレスを配信情報追加処理部１６０３に渡し（図１０（１１））、配信情報追加処理部１６０３はＲ（３，４）とＴＡ３のＩＰアドレスを配信情報DB１６０４ に格納する処理を行う（図１０（１２））。
【０１１２】
ＴＡ４のＩＴＴ１３００はセグメント１をプロキシに渡す（図１０（１３））。
【０１１３】
上記説明した動作により、図４の通信２の結果として、ＴＡ３とＴＡ４の両方でリファレンスＲ（３，４）とセグメント１がＰＳＳ１５００に格納される。さらに、ＴＡ３、ＴＡ４の配信情報DB１６０４には、ファレンスＲ（３，４）とお互いのＩＰアドレスが格納される。
【０１１４】
次いで、ＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明する（図５の通信３参照）。
【０１１５】
図１１〜図１４は、本実施の形態によるＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明するである。
【０１１６】
ＴＡ１のプロキシが、セグメント１をＴＴ１２００に渡す（図１１（１））。
【０１１７】
ＴＡ１のＴＴ１２００は、セグメント１をＰＳＳ１５００の中で探索する。上記通信１により存在するのでセグメント１とリファレンスＲ（１，２）を変換する（図１１（２））。
【０１１８】
ＴＡ１のＴＴ１２００は、リファレンスＲ（１，２）をＴＡ３のＩＴＴ１３００に送信する（図１１（３））。
【０１１９】
ＴＡ３のＩＴＴ１３００は、受信したリファレンスＲ（１，２）の解決をＲＲ１４００に依頼する（図１１（４））。
【０１２０】
ＴＡ３のＲＲ１４００は、リファレンスＲ（１，２）をＰＳＳ１５００の中で探索する（図１１（５））。
【０１２１】
ＰＳＳ１５００内にリファレンスＲ（１，２）が存在しないため、ＴＡ１のＲＲ１４００にリファレンスＲ（１，２）の解決を依頼する（図１１（６））。
【０１２２】
ＴＡ１のＲＲ１４００は、リファレンスＲ（１，２）が指すデータをＰＳＳ１５００内で探索する（図１１（７））。
【０１２３】
ＴＡ１のＲＲ１４００は、ＲＤのＩ／Ｏ処理部１６０１を介してＲＲリクエスト処理部１６０６にリファレンスＲ（１，２）とＴＡ３のＩＰアドレスを渡す（図１１（８）（９））。さらに、ＴＡ１のＲＲリクエスト処理部１６０６は、配信情報追加処理部１６０３にＲ（１，２）とＴＡ３のＩＰアドレスを渡す（図１１（１０））。
【０１２４】
配信情報追加処理部１６０３は、配信情報DB１６０４にＲ（１，２）とＴＡ３のＩＰアドレスを格納する。（図１２（１１））。
【０１２５】
ＴＡ１のＲＲ１４００は、セグメント１をＴＡ３のＲＲ１４００に返す（図１２（１２））。
【０１２６】
ＴＡ３のＲＲ１４００は、セグメント１をＩＴＴ１３００に返す（図１２（１３））。
【０１２７】
ＴＡ３のＩＴＴ１３００は、セグメント１をプロキシに返す（図１２（１４））。
【０１２８】
ＴＡ３のＲＲ１４００は、ＲＤのＩ／Ｏ処理部１６０１を介してＲＲリクエスト処理部１６０６にリファレンスＲ（１，２）とＴＡ１のＩＰアドレスを渡す（図１２（１５）（１６））。さらに、ＴＡ３のＲＲリクエスト処理部１６０６は、配信情報追加処理部１６０３にＲ（１，２）とＴＡ１のＩＰアドレスを渡す（図１２（１７））。
【０１２９】
配信情報追加処理部１６０３は、配信情報DB１６０４にＲ（１，２）とＴＡ１のＩＰアドレスを格納する（図１２（１８））。
【０１３０】
ＴＡ３のＲＲリクエスト処理部１６０６は、ＰＳＳデータ処理部１６０７にＲ（１，２）とセグメント１を渡す（図１２（１９））。
【０１３１】
ＴＡ３のＰＳＳデータ処理部１６０７は、Ｉ／Ｏ処理部１６０１を介してＰＳＳ１５００内にセグメント１が存在しないかを探索する。存在するのでリファレンスをＲ（３，４）からＲ（１，２）に更新する。（図１３（２０）（２１））。
【０１３２】
ＴＡ３のＰＳＳデータ処理部１６０７は、Ｒ（３，４）からＲ（１，２）への更新命令をリファレンス情報計算処理部１６０８に渡す（図１３（２２））。リファレンス情報計算処理部１６０８は、配信情報DB１６０４のＲ（３，４）をＲ（１，２）に更新する（図１３（２３））。
【０１３３】
ＴＡ３のリファレンス情報計算処理部１６０８は、ＴＡ４に向けて、Ｒ（３，４）からＲ（１，２）への更新命令を送ることを送信処理部１６０９に依頼する（図１３（２４））。送信処理部１６０９は、通信処理部１６１１を介してＴＡ４に対し命令を送信する（図１３（２５）（２６））。
【０１３４】
ＴＡ４の受信処理部１６１０は、Ｒ（３，４）からＲ（１，２）への更新命令をリファレンス情報計算処理部１６０８に渡す（図１４（２７）（２８））。リファレンス情報計算処理部１６０８は、配信情報DB１６０４のＲ（３，４）をＲ（１，２）に更新する（図１４（２９））。
【０１３５】
ＴＡ４のリファレンス情報計算処理部１６０８は、Ｒ（３，４）からＲ（１，２）への更新をＰＳＳデータ処理部１６０７に依頼する（図１４（３０））。ＰＳＳデータ処理部１６０７は、Ｉ／Ｏ処理部１６０１を通して、ＰＳＳ１５００内のリファレンスＲ（３，４）をＲ（１，２）に更新する（図１４（３１）（３２））。
【０１３６】
上記説明した動作により、ＴＡ１とＴＡ３間でセグメント１というデータが通信された結果として、ＴＡ３にデータ（セグメント１）がＲ（１，２）の参照データとしてＰＳＳ１５００に格納される。また、ＴＡ４にも同様にデータ（セグメント１）がＲ（１，２）の参照データとしてＰＳＳ１５００に格納される。
【０１３７】
（第１の実施の形態の効果）
本実施の形態によれば、以下の効果を達成できる。
【０１３８】
第１に、複数のＴＡ１０００間でリファレンス情報を共有することにより、キャッシュヒット率を向上させ、通信の高速化を図ることができる。
【０１３９】
第２に、同一データを異なるリファレンス情報とともに格納する可能性がなくなるため、キャッシュ領域の利用の効率化を図ることができる。
【０１４０】
それらの理由は、クライアント・サーバ間で通信されるデータと、データに一意に対応するリファレンス情報をキャッシュに格納し、データの通信を中継するプロキシ機能を有するＴＡ１０００において、クライアント・サーバ間の通信を中継する２以上の他のＴＡ１０００と、同一のデータに対応するリファレンス情報を共有するからである。
【０１４１】
より詳細には、ＴＡ１０００で管理しているリファレンス情報の配信及び更新を行う機能を持つリファレンスディストリビュータ（ＲＤ）１６００を導入することにより、３台以上のＴＡ１０００が通信した場合にリファレンス情報を配信・更新し、同一データに対するリファレンスの不一致を解決するからである。
【０１４２】
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【産業上の利用可能性】
【０１４３】
ネットワーク上に配置されるスイッチやルータ等の通信機器にも本発明を適用できる。
【図面の簡単な説明】
【０１４４】
【図１】従来及び本発明の第１の実施の形態におけるクライアント−サーバシステムの全体構成を示すブロック図である。
【図２】従来及び本発明の第１の実施の形態におけるＰＳＳに格納されるキャッシュデータの構成を示す図である。
【図３】従来及び本発明の第１の実施の形態における入力データがどのように変換されて出力されるかを説明する図である。
【図４】従来及び本発明の第１の実施の形態におけるＴＡ間のデータ送信を説明する図である。
【図５】従来及び本発明の第１の実施の形態におけるＴＡ間のデータ送信を説明する図である。
【図６】第１の実施の形態のＴＡの構成を示すブロック図である。
【図７】第１の実施の形態によるリファレンスディストリビュータ（ＲＥＦＥＲＥＮＣＥ  ＤＩＳＴＲＩＢＵＴＯＲ（ＲＤ））の構成を示すブロック図である。
【図８】第１の実施の形態によるクライアント−サーバシステムのトランザクションアクセラレータ（ＣＴＡ及びＳＴＡ）のハードウェア構成例を示すブロック図である。
【図９】第１の実施の形態によるＴＡ１がＴＡ２にデータ（セグメント１）を送信する際の動作を説明する図である
【図１０】第１の実施の形態によるＴＡ３がＴＡ４にセグメント１を送信する際の動作を説明するである。
【図１１】第１の実施の形態によるＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明するである。
【図１２】第１の実施の形態によるＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明するである。
【図１３】第１の実施の形態によるＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明するである。
【図１４】第１の実施の形態によるＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明するである。
【図１５】従来のＴＡの構成を示すブロック図である。
【図１６】従来のＴＡ１がＴＡ２にデータ（セグメント１）を送信する際の動作を説明する図である。
【図１７】従来のＴＡ３がＴＡ４にセグメント１を送信する際の動作を説明する図である。
【図１８】従来のＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明する図である。
【図１９】従来のＴＡ１がＴＡ３にセグメント１を送信する際の動作を説明する図である。
【符号の説明】
【０１４５】
１００：クライアント
２００：サーバ
３００：インターネット
４００：サーバフォームマネジャ
１０００、１０００−１〜−ｎ：トランザクションアクセラレータ（ＴＡ、ＣＴＡ、ＳＴＡ）
１１００：プロキシ
１２００：トランザクショントランスフォーマ（ＴＴ）
１３：インバーストランザクショントランスフォーマ（ＩＴＴ）
１４００：リファレンスリゾルバ（ＲＲ）
１５００：パーシステントセグメントストレージ（PSS）
１５１０：キャッシュデータ
１６００：リファレンスディストリビュータ（ＲＤ）
１６０１：Ｉ／Ｏ処理部
１６０２：ＴＴリクエスト処理部
１６０３：配信情報追加処理部
１６０４：配信情報データベース（DB）
１６０５：ＩＴＴリクエスト処理部
１６０６：ＲＲリクエスト処理部
１６０７：ＲＲリクエスト処理部
１６０６：ＰＳＳデータ処理部
１６０８：リファレンス情報計算処理部
１６０９：送信処理部
１６１０：受信処理部
１６１１：通信処理部
１００１：ＣＰＵ
１００２：主記憶部
１００３：通信制御部
１００４：提示部
１００５：入力部
１００６：インタフェース部
１００７：補助記憶部
１００８：システムバス
【図１】
2008225833.tif 000003
【図２】
2008225833.tif 000004
【図３】
2008225833.tif 000005
【図４】
2008225833.tif 000006
【図５】
2008225833.tif 000007
【図６】
2008225833.tif 000008
【図７】
2008225833.tif 000009
【図８】
2008225833.tif 000010
【図９】
2008225833.tif 000011
【図１０】
2008225833.tif 000012
【図１１】
2008225833.tif 000013
【図１２】
2008225833.tif 000014
【図１３】
2008225833.tif 000015
【図１４】
2008225833.tif 000016
【図１５】
2008225833.tif 000017
【図１６】
2008225833.tif 000018
【図１７】
2008225833.tif 000019
【図１８】
2008225833.tif 000020
【図１９】
2008225833.tif 000021