JP4902635B2 - 接続転送 - Google Patents

接続転送 Download PDF

Info

Publication number
JP4902635B2
JP4902635B2 JP2008502134A JP2008502134A JP4902635B2 JP 4902635 B2 JP4902635 B2 JP 4902635B2 JP 2008502134 A JP2008502134 A JP 2008502134A JP 2008502134 A JP2008502134 A JP 2008502134A JP 4902635 B2 JP4902635 B2 JP 4902635B2
Authority
JP
Japan
Prior art keywords
message
network
proxy
client
connection information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008502134A
Other languages
English (en)
Other versions
JP2008536369A (ja
Inventor
カンド ライ
ジョシュア ツェン
スティーブ マッキャン
Original Assignee
リバーベッド テクノロジー インコーポレーティッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by リバーベッド テクノロジー インコーポレーティッド filed Critical リバーベッド テクノロジー インコーポレーティッド
Publication of JP2008536369A publication Critical patent/JP2008536369A/ja
Application granted granted Critical
Publication of JP4902635B2 publication Critical patent/JP4902635B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2876Pairs of inter-processing entities at each side of the network, e.g. split proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

関連出願の相互参照
本出願は、2005年3月18日出願の米国仮特許出願第60/663,366号について優先権を主張し、その出願はすべての目的のために参照により本明細書に組み入れられる。本出願は、以降「McCanne I」として引用する、「Transaction Accelerator for Client-Server Communication Systems」と題する2002年10月30日出願の米国特許出願第10/285,315号(特許文献1);および以降「McCanne IV」として引用する「Cooperative Proxy Auto-Discovery and Connection Interception」と題する2003年8月12日出願の米国特許出願第10/640,562号(特許文献2)に関連しており、これらのそれぞれは、すべての目的のために参照により本明細書に組み入れられる。
発明の背景
本発明は、データネットワークの分野、具体的にはネットワーク性能を改善するシステムおよび方法に関する。ネットワークプロキシおよび他の型のネットワーク装置を用いて、ネットワークデータをキャッシュまたは保存し、ネットワークトラフィックを加速し、またはさもなくば、クライアントとサーバ間のネットワークトラフィックを制御するまたは影響を与えることができる。
本明細書で用いられる「クライアント」とは一般に、データまたは挙動を要求するコンピュータ、計算装置、周辺装置、電子機器などを指し、一方「サーバ」とは一般に、1つまたは複数のクライアントによって作成されたデータまたは挙動の要求に応答して作動するコンピュータ、計算装置、周辺装置、電子機器などを指す。コンピュータまたは他の装置は、その挙動の状況に応じてクライアント、サーバ、または両方であると考えることができる。
本明細書で用いられる要求とは、コンピュータ、計算装置、周辺装置、電子機器などの操作のため、および/または、クライアントによって実行されるもしくは制御されるアプリケーションプログラムのためであり得る。一つの例は、文書をコンピュータの外部に保存する必要がありかつネットワークファイルシステム・クライアントを用いてネットワークにわたってファイルサーバに対し要求を行うようなワードプロセッサープログラムを実行しているコンピュータである。別の例は、プリントサーバ、処理サーバ、データベースサーバ、制御サーバ、および装置インターフェース・サーバ、I/O (入出力)サーバなどの、それ自体がその挙動を行なうサーバに向けた、挙動要求である。
要求は、要求されたデータを供給するかまたは要求された挙動を行なう応答メッセージによって、あるいは、要求失敗または不適当な要求であるとのエラーメッセージまたは監視システムへの警報などの、要求に従うことが不可能であると示す応答メッセージによって履行されることが多い。またサーバは要求を阻止したり、要求を転送したり、要求を変換したりしてもよく、その後、要求に応答するか、または要求に応答しない。一般に、要求−応答サイクルは「トランザクション」と呼ばれ、所与のトランザクションについて、(物理的、論理的、および/または仮想的な)ある対象が、そのトランザクションの「クライアント」であると言うことができる。または、他の(物理的、論理的、および/または仮想的な)ある対象が、そのトランザクションの「サーバ」であると言うことができる。
クライアントは、サーバへ要求メッセージを出し、サーバは典型的に、各要求メッセージに対する応答メッセージをクライアントに送り返す。McCanne IおよびMcCanne IVに記載されるように、1つまたは複数のピアネットワークプロキシと通信しているネットワークプロキシは、2つのローカルエリアネットワーク(LAN)の間に置かれた広域ネットワークにわたって、トランザクションの加速、トラフィック低下、および他の機能を提供することができる。典型的には、そのような構成では、クライアントの要求は、クライアントLANを介してクライアントに接続されているクライアント側ネットワークプロキシによって捕捉され、WANを介してサーバ側ネットワークプロキシに送達される。サーバ側ネットワークプロキシはサーバLANを介してサーバにクライアントの要求メッセージを送達する。要求メッセージは、2つのプロキシによって変換されまたは処理され、その結果、要求メッセージ(および潜在的な将来の要求メッセージ)は、協同ネットワークプロキシを使用しないで行われるよりもより効果的に、介在するネットワーク全体に転送される。メッセージは一般に、単一ネットワークパケットまたは複数ネットワークパケットを含む、通信ネットワークにわたる情報伝達に適した任意のフォーマットまたはデータ構造で組み立てることができる。
これらのプロキシベースのシステムでは、クライアントから送信されたパケットはクライアント側プロキシで受信され;クライアント側プロキシからのパケットはサーバ側プロキシで受信され;サーバ側プロキシからのパケットはサーバで受信される。多くのネットワークでは、クライアントからサーバへのこれらの配置は、同様にサーバからクライアントへの逆方向の通信を保証するのに十分である、すなわち、サーバからのパケットをサーバ側プロキシが受信し、サーバ側プロキシからのパケットをクライアント側プロキシが受信し、クライアント側プロキシからのパケットをクライアントが受信する。
しかし、一部のネットワーク環境では、この逆方向の通信にはより問題がある。詳細には、クライアントまたはサーバを含むLANは、WANとの間で複数の冗長な接続をすることができる。その結果、非対称のルーティングによって、サーバからクライアントへの応答パケットが、クライアントからサーバへの要求パケットによって用いられた経路とは異なる経路を通過する状況が生じる場合がある。プロキシが、クライアントまたはサーバの認識や関与なしで、クライアントとサーバ間の通信を再編成することができる場合には、それらのプロキシおよびそれらの隠された協同的経路配置を迂回する逆方向トラフィックが、クライアントとサーバ間のプロキシ経由接続の性能の低下または全面的停止を引き起こす可能性がある。ネットワークプロキシおよび非対称ルーティングに関するこの問題が、Knutsson, Bjorn and Peterson, Larry, Journal of Communications Networks, March 2001(非特許文献1)の「Transparent Proxy Signalling」に言及されている;しかし、この問題に対する何の解決も提案されていない。
したがって、システムおよび方法がここに記述された影響を克服することが望ましい。そのシステムおよび方法が、ネットワークトラフィックの関連するシーケンスを、適切なWANまたは他のネットワーク接続を通じてリダイレクトすることがさらに望ましい。適切なWANまたは他のネットワーク接続を通じてネットワークトラフィックをリダイレクトしている間、システムおよび方法がクライアントおよびサーバに対してトランスペアレントなままであることがさらに望ましい。
米国特許出願第10/285,315号 米国特許出願第10/640,562号 Knutsson, Bjorn and Peterson, Larry, Journal of Communications Networks, March 2001
発明の概要
本発明のある態様では、例えばネットワークプロキシの明白な構成を含めることにより、または他の利用可能な情報から近隣関係を推論することにより、同じLANおよびWANに接続されている2つまたはそれ以上のネットワークプロキシを、近隣であると同定する。近隣であるネットワークプロキシは、例えばネットワークトラフィックの関連するシーケンスが、同じネットワークプロキシによって処理されることを保証するように、必要に応じて互いにパケットを転送することによって非対称ルーティングの影響および他の影響を協同して克服する。
ある態様では、例えばSYNパケットを受信することにより、クライアントによる新しい接続開始を捕捉する近隣グループ中のプロキシは、その接続の「所有プロキシ」と考えられる。クライアントによる新しい接続開始を受信すると、所有プロキシはまず、新しい接続に関する識別情報を、その近隣プロキシすべてに伝達し、次に、相手方のネットワークプロキシへのWANを横断する内部接続を開いて、クライアントの新しい接続開始をさらに通信する。またある場合には、近隣のプロキシすべてではなくその一部に情報を伝達する。このような場合、情報を伝達されなかった近隣プロキシは、たとえそれらが近隣の資格があるとしても、実際には近隣ではないと単純に考えればよかろう。
ある態様では、近隣グループ中の他のプロキシは、非対称ルーティングまたは他のネットワーク挙動により所有プロキシをさもなくば迂回する可能性があるパケットを、それらが所有プロキシから受信した識別情報を用いて処理する。識別情報と一致するパケットを受信した近隣プロキシは、所有プロキシがそれを受信するように該パケットのアドレス指定情報を改変しうる。次に、所有プロキシは、それが直接受信したパケットを扱うのとほとんど同じ方法で該パケットを扱うことが予想できる。
ある態様では、所有プロキシまたは近隣プロキシは、明確に近隣関係を終了することができる。近隣関係が終了すると、近隣プロキシは識別情報を廃棄する。別の態様では、近隣プロキシは、対応する接続の状態を所有プロキシに問うために識別情報を用いることができる。所有プロキシが接続を閉じたことを表明する場合、または所有プロキシが接続を認識しない場合、または所有プロキシが応答できない場合、近隣プロキシは、その情報を廃棄する。
図面中、同一の参照番号の使用は同じ構成部分を示す。
発明の詳細な説明
図1は、例示的ネットワーク100および、非対称ルーティングによって引き起こされる潜在的な問題を示す。図1は、広域ネットワーク(WAN)130全体にわたるクライアント110とサーバ150間の通信を示し、ここで、通信は、クライアント側プロキシ120およびサーバ側プロキシ140という2つのプロキシによって仲介される。この例示的ネットワーク構成では、クライアント110によってサーバ150宛に送信されたメッセージ115を、クライアント側プロキシ120が捕捉する。クライアント側プロキシ120は、サーバ側プロキシ140にメッセージ135を送信する。
いくつかの応用では、メッセージ135はメッセージ115と同一である。他の応用において、例えばクライアント側プロキシ120がネットワーク加速機能またはキャッシング機能を含む場合では、クライアント側プロキシ120が、メッセージ115を、サイズ、コード化、フレーミング、アドレッシング、または他の局面を含む多くの点で、メッセージ115とは異なりうる等価なメッセージ135に変換する。サーバ側プロキシ140はメッセージ135を受信し、それを、元のメッセージ115と同一であるか、または許容されるその代替物である、メッセージ145に変換する。2つのプロキシ120および140がそれらの効果により不可視であるようにネットワーク100は構成される:クライアント110およびサーバ150は、メッセージ115を単にクライアント110からサーバ150へ直接送信したときに生じうるものと同一のメッセージまたは許容される代替物を、送信および受信する。
逆方向に送信されたメッセージにも同様の過程が適用される:クライアント110宛のメッセージ155がサーバ側プロキシ140によって捕捉される。サーバ側プロキシ140は、クライアント側プロキシ120にメッセージ165を送信する。ある応用では、メッセージ165は、メッセージ155の変換物である。メッセージ165は、サイズ、コード化、フレーミング、アドレッシング、または他の局面を含む多くの点でメッセージ155と異なってもよい。メッセージ155からメッセージ165を作成する変換は、メッセージ115からメッセージ135を作成する変換と完全に異なってもよい。クライアント側プロキシ120によって受信されると、メッセージ165はメッセージ175に変換され、これは元のメッセージ155と同一であるか、または許容される代替物である。そのような捕捉を提供できるいくつかの改良が、McCanne Iに示されている。
いくつかの応用では、クライアント側プロキシ120およびサーバ側プロキシ140が、クライアント側プロキシ120およびサーバ側プロキシ140を介した、クライアント110からサーバ150へのメッセージの最初の通過との関連づけを行う。その関連についての情報を、逆方向に送信されるメッセージの同様の変換を調整するために用いる。
クライアント100とサーバ150間の最初のメッセージおよび次のメッセージが、1つまたは複数の異なるネットワークプロキシまたは他のLANからWANへの接続部を通過する場合に、非対称ルーティングが生じる。これは、WAN130とサーバ150またはクライアント110との間に冗長なリンクが存在する場合に、生じ得る。1つまたは複数の冗長なリンクは、一般に、ロードバランシングおよび信頼性改善のために用いる。図1に示すように、サーバ150が、サーバ側プロキシ140および追加のサーバ側プロキシ141を介してWAN130に接続されている。
示した例において、従来のネットワークルーティングスキームを使用する場合、サーバ150からクライアント110へのメッセージが、クライアント110からサーバ150へのメッセージが通過したのと同一のリンクを通過するという保証はなく、その結果いわゆる非対称ルーティングが生ずる。例えば、メッセージ115、135、および145を用いるクライアント110とサーバ150間の最初の通信は、サーバ側プロキシ140を通過してサーバ150に達するが、応答はそうではないかもしれない。
例えば、返信であるメッセージ156は、異なるサーバ側プロキシ141によって捕捉される可能性がある。サーバ側プロキシ141は、クライアント側プロキシ120やクライアント側プロキシ120とサーバ側プロキシ140との間の関連について知らない。その結果、サーバ側プロキシ141は、それが追加情報なしに受信した任意の他のメッセージであるとして、メッセージ156を処理する、例えば、それを改変せずにメッセージ166として通過させる。次に、メッセージ166は、クライアント110へ向かう途中、WAN130を横断する。いくつかの経路配置では、メッセージ166aは、クライアント110にアドレス指定されているので、クライアント110はそれを直接受信し;他の経路配置では、クライアント側プロキシ120が、クライアント110へのトラフィックをすべて捕捉するが、これは、メッセージ166bを改変せずにメッセージ176としてクライアント110へと通過させると考えられる。いずれの場合も、元来サーバ150からクライアント110に送信されたメッセージ156は、クライアント側プロキシ120およびサーバ側プロキシ140の関連から利益を得ることはない。
そのような「片側の」または「半路の」通信とは、トラフィックの一方向だけが、プロキシ120、140、および141によって行なわれた変換から利益を受けることができることを意味する。ある場合には、そのような通信パターンはクライアント110と150の間の通信の規則を犯しうり、これは通信破壊につながる。第2のサーバ側プロキシ141がない場合、またはサーバ側プロキシ140および141がメッセージ156を受信しない場合、同様の問題が生じて、その結果メッセージ156が単に変化無しにサーバ150からクライアント110へ送信される。
図2は、本発明の態様によりネットワークトラフィックの流れを改善したネットワークの例を示す。図2Aは、上述のネットワーク100に類似したネットワーク200を図示する。本発明の態様では、ネットワーク200のサーバ側プロキシ240および241が近隣であるものとして構成され、したがって、各々は他方と通信し、かつ/または他方についてある認識を有する。
クライアント210によって送信され、サーバ250にアドレス指定されたメッセージ215を、クライアント側プロキシ220が捕捉する。クライアント側プロキシ220がメッセージ235をサーバ側プロキシ240に送信する。メッセージ235は、メッセージ215と同一であるか、またはサイズ、コード化、フレーミング、アドレッシング、および/または他の局面を含む点で異なるメッセージ215の変換物であってよい。
メッセージ235が新しいクライアント/サーバ接続の体制である場合、サーバ側プロキシ240がメッセージ235を受信すると、追加の工程が生ずる:そのような場合には、サーバ側プロキシ240が、メッセージ235由来の新接続情報248を、近隣サーバ側プロキシ241へ提供する。近隣サーバ側プロキシ241はその新接続情報248を保存し、サーバ側所有プロキシ240にそれを関連づける。
サーバ側プロキシ240はさらにメッセージ235をメッセージ245に変換するが、これは元のメッセージ215と同一であるか、またはその許容される代替物である。したがって、2つのプロキシ220および240は、それらの効果によって不可視であり:クライアント210およびサーバ250は、メッセージ215を単純にサーバ250へ直接送信したときに生じうるものと同一のメッセージまたは許容される代替物を送信および受信する。例えば、サーバ側プロキシ240からサーバ250に通信されるネットワークトラフィックは、クライアント210の送信元アドレスを有する可能性がある。
サーバ250とクライアント210間の通信については、近隣サーバ側プロキシ241が、サーバ250からクライアント210にアドレス指定されたメッセージ246を受信する可能性がある。サーバ250からのメッセージ246などの通信を受信すると、近隣サーバ側プロキシ241は、それに保存された新接続情報248を用いて、メッセージ246がサーバ側プロキシ240を通じてなされた接続に属すると判定する。当然ながら、サーバ側プロキシ240は、直接メッセージを受信しそれを扱うことができる。図2A中ではそのようなメッセージの流れを示さないが、図1に示されるように進行すると予想できよう。
この判定に応答して、サーバ側プロキシ241は、メッセージ247をサーバ側プロキシ240へ転送し、事実上、それを扱うプロキシへ接続を「転送する」。次に、サーバ側プロキシ240がメッセージ247を処理する。クライアント側プロキシ220との関連についての情報を用いて、サーバ側プロキシ240はメッセージ247をメッセージ244に変換し、これは次にWAN230を通って送信される。次にクライアント側プロキシ220がメッセージ244をメッセージ249に変換するが、ここで、メッセージ249は元のメッセージ246と同一であるか、またはその許容される代替物である。
多くの異なる方法で、近隣ネットワークプロキシ間でメッセージを転送することができる。ある態様では、サーバ側転送プロキシが、メッセージの宛先アドレスを、別の近隣サーバ側プロキシのアドレスへ変更する。この態様の一つの実施において、転送プロキシは、転送されるメッセージの送信元アドレスを自分自身のアドレスと一致するように変更するのではなく、その代わり、メッセージの送信元アドレス、例えばサーバ250を保持する。転送されたメッセージを受信するプロキシは、それ自体とメッセージの元の送信源との間の接続に内部的に対応する接続状態を維持する。このようにして、近隣プロキシから転送されたメッセージを受信するプロキシには、転送されたメッセージは、近隣プロキシからではなく、メッセージの元の送信源から受信したように見える。
別の態様では、例えば近隣プロキシ間で確立された汎用ルーティングカプセル化(「GRE」)トンネル中で、メッセージ全体を別のメッセージ中にカプセル化することにより、メッセージをプロキシ241から近隣プロキシへ転送する。さらに別の態様では、元のメッセージからペイロードおよび宛先情報を抽出し、TCP、SCTP、またはプロキシ間の同様の接続を通って適当なデータ構造のペイロードを送信することにより、メッセージを転送プロキシから近隣プロキシへ転送する。
一般に、近隣ネットワークプロキシ間で、各メッセージを含む1つまたは複数のネットワークパケットの検出および転送のレベルで、意味的要求および応答メッセージのより高いレベルで、または処理の任意の中間レベルで、メッセージを転送できる。
図2Bは、本発明の態様によるネットワーク255の例を図示する。ネットワーク255は、2つのクライアント側ネットワークプロキシが存在する以外は、ネットワーク200に類似している。この例では、ネットワーク255のクライアント側プロキシ290および291は、近隣として構成され、したがって、各々は他方と通信することができ、かつ/または他方についてある認識を有する。
クライアント260によって送信され、サーバ275にアドレス指定されたメッセージ265を、クライアント側プロキシ290が捕捉する。クライアント側プロキシ290は、メッセージ285をサーバ側プロキシ270に送信する。メッセージ285は、メッセージ265と同一であるか、またはサイズ、コード化、フレーミング、アドレッシング、または他の局面を含む点で異なるメッセージ265の変換物であってよい。
クライアント側プロキシ290がメッセージ265を受信するときに、メッセージ265が新しいクライアント/サーバ接続の体制である場合、追加の工程が生ずる。そのような場合は、クライアント側プロキシ290が、メッセージ265から得られた新接続情報268を、近隣クライアント側プロキシ291へ提供する。近隣クライアント側プロキシ291はその新接続情報268を保存し、かつクライアント側所有プロキシ290にそれを関連付けする。
サーバ側プロキシ270は、メッセージ285を受信し、メッセージ287へと変換するが、これは元のメッセージ265と同一であるか、またはその許容される代替物である。したがって、2つのプロキシ290および270はそれらの効果によって不可視であり:クライアント260およびサーバ275は、メッセージ265を単にサーバ275へ直接送信したときに生じるものと同一のメッセージまたは許容される代替物を、送信および受信する。例えば、サーバ側プロキシ270からサーバ275に通信されるネットワークトラフィックは、クライアント260の送信元アドレスを有する可能性がある。
サーバ275とクライアント260間の通信については、近隣クライアント側プロキシ291が、サーバ275からのメッセージを受信してもよい。例えば、サーバ275は、クライアント260に向けたメッセージ277を送信することができ、かつサーバ側プロキシ270は、メッセージ277を捕捉しそれをメッセージ288に変換することができる。メッセージ288は、メッセージ277と同一であるか、またはサイズ、コード化、フレーミング、アドレッシング、および/または他の局面を含む点で異なるメッセージ277の変換物であり得る。例えば、メッセージ288はメッセージ277の圧縮版であり得る。
広域ネットワーク280のルーティング特性により、メッセージ288は、クライアント側プロキシ290または291のいずれかが受信する場合があろう。クライアント260とサーバ275間の接続を以前に確立し、したがってその接続を「所有する」クライアント側プロキシ290によってメッセージ288が、受信される場合は、クライアント側プロキシ290は、サーバ側プロキシ270とのその関連についての情報および他の以前に保存された情報を使用して、メッセージ288をメッセージ295に変換するが、これは次いでクライアント260に送信される。メッセージ295は元のサーバメッセージ277と同一であるか、または許容されるその代替物である。
または、メッセージ288をクライアント側プロキシ291が受信する場合、クライアント側プロキシ291は、それに保存されている新接続情報268を用いて、メッセージ288がクライアント側プロキシ290を通じて形成された接続に属すると判定する。この判定に応答して、クライアント側プロキシ291は、メッセージ297を介してメッセージ288をクライアント側プロキシ290へ転送する。次に、クライアント側プロキシ290がメッセージ297をメッセージ295に変換するが、これが次にクライアント260に送信される。メッセージ295は、元のサーバメッセージ277と同一であるか、またはその許容される代替物である。転送メッセージなどの様々なメッセージは、それらが変換される前のメッセージとのパケット対パケットの対応を有する場合もあり、有さない場合もある。
他の態様と同じように、いくつかの異なる方法で、メッセージを近隣ネットワークプロキシ間で転送することができる。ある態様では、転送するクライアント側プロキシが、メッセージの宛先アドレスを、別の近隣クライアント側プロキシのアドレスへと変更する。この態様の一つの実施では、転送するプロキシは、転送されるメッセージの送信元アドレスを自分自身のアドレスと一致するように変更するのではなく、その代わりに、該メッセージの送信元アドレス、例えばサーバ275を保持する。転送されたメッセージを受信するプロキシは、それ自体とメッセージの元の送信源との間の接続に内部的に対応する接続状態を維持する。このようにして、近隣プロキシから転送されたメッセージを受信するプロキシにとっては、転送されたメッセージが、近隣プロキシから受信したのではなく、該メッセージの元の送信源から受信したように見える。
別の態様では、例えば近隣プロキシ間で確立されたGREトンネル内で、メッセージ全体を別のメッセージ中にカプセル化することにより、メッセージをプロキシ291から近隣プロキシへ転送する。さらに別の態様では、元のメッセージからペイロードおよび宛先情報を抽出し、TCP、SCTP、またはプロキシ間の同様の接続を通って、適当なデータ構造のペイロードを送信することにより、メッセージを転送プロキシから近隣プロキシへ、転送する。
上述したように、一般に、近隣ネットワークプロキシ間で、各メッセージを含む1つまたは複数のネットワークパケットの検出および転送のレベルで、意味的要求および応答メッセージのより高いレベルで、または処理の任意の中間レベルでメッセ−ジを転送することができる。
図2A〜2Bは、サーバ側プロキシまたはクライアント側プロキシのいずれかで生じる近隣構成、新接続情報、および転送を示すが、クライアント側およびサーバ側プロキシの両方で同様の技術を適用することもできる。したがって、クライアントとサーバ間のメッセージの交換によって、クライアント側近隣プロキシに新接続情報が送信されるようになり、次に、サーバ側近隣プロキシに新接続情報が送信されるようになり、次にサーバ側プロキシ間でメッセージが転送されるようになり、その後メッセージがクライアント側プロキシ間で転送されるるようになることが可能である。近隣プロキシの数および新接続情報の詳細は、クライアント側とサーバ側で異なってもよい。さらに、クライアントまたはサーバのいずれで接続を始めるかにかかわらず、これらの技術を適切に用いることができる。
追加の態様では、プロキシがネストされてもよい。例えば、WAN230は実際に、クライアント側プロキシおよびサーバ側プロキシの異なる対を一括した、実際のWANとして実施されてもよい。そのようなネストされた集合のプロキシについては、クライアント側とサーバ側のプロキシの対の一方が、WANの0側、1側、または両側に、1つ以上の近隣プロキシを有する可能性があり;また別に、クライアント側とサーバ側プロキシの対の他方が、WANの0側、1側、または両側に、1つ以上の近隣プロキシを有する可能性がある。プロキシのそのようなネスティングは、ここで述べた2つのレベルだけでなく任意の深さまで及んでもよい。
図3は、本発明の態様による近隣ネットワーク接続によって維持される、情報伝達のためのデータ構造の例300を示す。図3は、受信された新接続メッセージに基づく、プロキシによって維持される近隣情報の一部を示す。エントリ301aおよび301bは、それぞれ標的要素310および所有者要素320を含む。各エントリの意味とは、本装置で受信される任意のトラフィックでその標的にアドレス指定されたものについては、対応する所有者へそのトラフィックを転送するべきであるということである。したがって、エントリ301aは、10.3.1.10:1921宛のトラフィックを受信した近隣が、それを代わりに10.4.0.1:7810の所有プロキシへ転送することを可能にする。エントリ301bは、10.3.5.44:2044宛のトラフィックも同じ所有プロキシに転送すべきということを意味する。(本明細書の実施例は、実際のネットワークへの偶発的な言及全て回避するために、RFC1918プライベートアドレスを使用する;当然ながらデータ構造にパブリックアドレスを出してもよい。)
図3は、保存される情報の特性およびその関係を示すことのみを意図しており;実際のデータ構造は、迅速な探索、低廉な書込み/削除、極めて大量の情報の集合の収容、および古いまたは未使用のエントリを再生することを可能にする他のメカニズムを含む可能性が高い。さらに、いくつかの態様では、送信元アドレス、送信元ポート、プロトコル番号、DSCPコードポイント、または、受信トラフィックから容易に利用可能な他の情報などの、エントリを識別するための追加情報を用いることになろう。最後に、いくつかの態様では、大きなクラスのトラフィックの簡潔な表現を可能にするために、パターンマッチングまたは部分仕様(partial specification)の形式を用いることになる。そのような可能性が高い適合はすべて、当業者には簡単なことである。図3に部分的に示す「近隣テーブル」を、プロキシ装置のローカルメモリ、ソフトウェアプロキシを実行するコンピュータのメモリなどに保存することができる。
図4は、本発明の態様による新しい接続を開始する方法400を示す。この方法は、ネットワーク中の一つまたは複数の構成要素により行なうことができ、かつ/または本方法を実行させるためのコンピュータ読取可能な命令中に具体化することができる。工程410でプロキシがメッセージを受信する。工程420では、プロキシは、この接続を最適化することができるかどうかを判定する。いくつかの接続は、構成規則のため、またはクライアントおよびサーバに適合されたネットワーク位置に利用可能な相手方のプロキシが存在しないという理由で、最適化することができない。接続を最適化することができない場合は、プロキシは工程440でそれを処理しないで、接続を通過する。他の態様では、方法400は、各メッセージを含む1つまたは複数のネットワークパケットの検出および転送レベルではなく、意味的要求および応答メッセージのより高いレベルで、または処理工程の任意の中間レベルで、メッセージを処理する工程を含む。
接続を最適化することができる場合は、工程430で、プロキシが近隣を有するかどうか判定する。有するならば、工程450で、本明細書において「所有者プロキシ」と呼ばれるプロキシがその近隣の各々へ新接続情報を供給する。ある態様では、新接続情報をユニキャスト、マルチキャスト、またはブロードキャスト技術を用いて、近隣プロキシに通信することができる。適切な場合には、さもなければ近隣としての資格を有するであろういくつかのプロキシを、近隣でないとして処理することができる。
近隣を有するか有さないかにかかわらず、工程460で、所有者プロキシは、その相手方のプロキシと協同して、接続トラフィックへの最適化または変換を適用することを開始する。
上述のとおり、図4に示された方法は、ネットワーク中の1つまたは複数のコンポーネントによって実行されうる、及び/又は該方法を実行するためのコンピュータ読み取り可能な指令において具体化されうる。例えば、当該方法、及び/又は関連方法は、ローカルネットワークを通過したネットワークトラフィックを受信するのに適した、第1のインターフェースと、広域ネットワークを通過したネットワークトラフィックを受信するのに適した第2のインターフェースと、追加の装置からの接続情報を受信するのに適したロジックとを有し、該接続情報が、第1のクライアントの最初のメッセージに関連したネットワークトラフィックを同定する情報及びネットワークプロキシを特定する情報と、該接続情報を利用して最初のメッセージと関連したネットワークトラフィックを同定するのに適したロジックと、該接続情報を利用して同定されたネットワークトラフィックを該接続情報によって特定された該ネットワークプロキシにリダイレクトするのに適したロジックと、第1又は第2のインターフェースを介して受信されたネットワークトラフィック中の第2のクライアントから最初のメッセージを識別するのに適したロジックと、第2のクライアントからの最初のメッセージと関連した次のメッセージを処理するためのネットワークプロキシを選択するのに適したロジックと、第2のクライアントの最初のメッセージに関連したネットワークトラフィックを生成するのに適したロジックとを含み、該接続情報が、第2のクライアントの最初のメッセージと該選択されたネットワークプロキシを特定する情報とに関連したネットワークトラフィックを同定する情報と、少なくとも1つの追加の装置と該接続情報を通信するのに適したロジックと、少なくとも1つの追加の装置によって選択されたネットワークプロキシにリダイレクトされたネットワークトラフィックを受信するのに適したロジックと、並びに少なくとも1つの追加の装置によって該選択されたネットワークプロキシにリダイレクトされたネットワークトラフィックを提供するのに適したロジックをを含む、ネットワークトラフィックを管理するための装置によって実行されうる。該接続情報を利用して同定されたネットワークトラフィックを該接続情報によって特定されたネットワークプロキシにリダイレクトするのに適した該ロジックは、同定されたネットワークトラフィックの宛先アドレスを該接続情報によって提供されたネットワークプロキシのアドレスに修正することに適したロジックを含むかもしれない。該接続情報を利用して識別されたネットワークトラフィックを該接続情報によって特定されたネットワークプロシキにリダイレクトするの適したロジックは、トンネルプロトコルを利用して該同定されたネットワークトラフィックを該接続情報によって特定されたネットワークプロキシと通信させるのに適したロジックを含むかもしれない。
図5は、プロキシがメッセージを受信するところから始まる、本発明の態様による接続に関連するネットワークトラフィックの処理方法を示す。工程510でプロキシはメッセージを受信する。工程520で、プロキシは、メッセージの宛先が、図3に図解したようなその近隣テーブル中のものに一致するかどうか判定する。メッセージの宛先が近隣テーブルの中のエントリのいずれとも一致しない場合は、処理工程は、プロキシがメッセージを正常に処理する工程530を継続する。これは、その宛先へメッセージを転送すること、および任意で、キャッシングもしくはネットワーク加速の目的でまたは他の操作のためにメッセージを変換することを含むことができる。
逆に、工程520で、メッセージが近隣テーブル中のエントリと一致すると判定された場合、プロキシはメッセージまたはその同等物を書き直し(工程540)、処理用の適切な近隣ネットワークプロキシへ転送する(工程550)ことができる。アドレススワッピング、トンネリング、および上述したペイロード抽出技術を含む様々な異なる技術を用いて、転送を遂行することができる。以前に述べたように、方法500の態様は、意味的要求および応答メッセージのより高いレベルで、処理工程の任意の中間レベルで、または各メッセージを含む一つまたは複数のネットワークパケットを検出しおよび転送するレベルで、1つまたは複数のパケットを含むメッセージを処理する工程を含むことができる。状況に応じて、一つのメッセージは、一つのパケットの一部であるか、一つのメッセージ当たり一つのパケットを含むか、または複数のパケットを含むことができる。
さらなる態様では、動的にネットワークプロキシを加えることができる。一つの実施においては、新しく追加されたプロキシは、あたかもそれらの近隣テーブルが空であるかのように、すべてのネットワークトラフィックを正常に受信および処理する。その結果、いくつかの型のネットワークトランザクションは、以前に述べたような非対称ルーティングの効果および他のネットワークの効果により、中断される。新しいネットワーク接続を開始することにより、クライアントおよびサーバは、中断されたネットワークトランザクションから回復する。新しいネットワーク接続は、ネットワークプロキシに捕捉され、その結果、新接続情報がもたらされ、これは新しく追加されたプロキシへ転送され、それによってその近隣テーブルが更新される。
図6は、本発明の態様による追加のネットワーク600を示す。ネットワーク600に、1組のサーバ側プロキシ605、610、および615が含まれることが示されている。示されていない他のネットワーク要素が存在するかもしれない。他の態様と同様に、1組のサーバ側プロキシの各々を、一つまたは複数のクライアント側プロキシに関連付けることができるが、明確にするためにこれは図6から省略されている。クライアント側プロキシとサーバ側プロキシの間の関連により、ネットワーク性能を改善しかつ潜在的な他の役割を行なう変換が可能になる。このネットワーク構成600では、広域ネットワークとの接続について、サーバ側プロキシが直列である必要はない。
ネットワーク600は、1組のルータ620を含む。その1組のルータ620の各々が、1つまたは複数の広域ネットワークに接続している。一組のインターセプタモジュール625が一組のルータ620に接続されている。下に詳しく説明するように、一組のインターセプタモジュール625は捕捉に適合しており、必要な場合には、ルーティングの対称性を保つためにネットワークトラフィックをリダイレクトする。ある態様では、1組のルータ620の各々が、1組のインターセプタモジュール625のうちの一つに関連する。別の態様では、ルータおよびインターセプタモジュールを様々な比率で関連させることもできる。
1組のインターセプタモジュールは、互いにおよびサーバ側プロキシ605、610、および615の組と、ネットワークスイッチ631、633および635などの1つまたは複数のネットワークスイッチおよび他のネットワーク装置を含むローカルネットワーク630を介して接続されている。各々が図6中で「S」と標識された1つまたは複数のサーバの組640も、ローカルネットワーク630に接続されている。サーバの組640は、1つまたは複数のクライアントにアプリケーション、情報、およびサービスを提供する。明確にするため、クライアントは、図6から省略されているが、ルータ620に接続されていてもよい。
一組のインターセプタモジュール625は、クライアントと一組のサーバ640の間のネットワークトラフィックのためにルーティングの対称性を保つ。例えば、クライアントがサーバに最初のメッセージ650を送信する。最初のメッセージ650は、クライアントから、クライアント側ネットワークプロキシを介して、広域ネットワーク(図示せず)を通って通信されて、ネットワーク600に達することができる。メッセージ650は、一組のサーバ640中の特別なサーバを、または一般には一組のサーバ640またはそのサブセットを、宛先としてよい。
最初のメッセージ650がルータの組620中のルータ620(a)を介して受信されると、メッセージ650は、関連付けられたインターセプタモジュール625(a)に渡される。このクライアントとのこの通信および可能性のあるその後の通信のために、ルーティングの対称性を保つ必要がある場合は、インターセプタモジュール625(a)は、クライアントのクライアント側プロキシに関連させるために適切なサーバ側プロキシを選択する。インターセプタモジュール625(a)の態様は、ロードバランシングまたは他の目標を達成する任意の数の方法によって、サーバ側プロキシを選択することができる。ロードバランシングスキームの例には、ラウンドロビン、ロードベースの、スティッキー、IPアドレスまたは他のメッセージ特性のハッシュを用いるマッピング、または、当技術分野において知られかつそのような操作に適するネットワークトラフィックの操作のために用いられる任意の他のロードバランシングスキームが含まれ得る。
この選択に従って、インターセプタモジュール625(a)が、選択されたサーバ側プロキシに最初のメッセージ650を送信する。さらに、インターセプタモジュール625(a)は、組625の他のインターセプタモジュールそれぞれに新接続情報メッセージ665を送信し、かつ、この新接続情報のコピーを自分用に保存する。ある態様では、新接続情報メッセージ665は、ネットワーク630上のユニキャスト、マルチキャスト、またはブロードキャストのネットワークプロトコルを用いて、他のインターセプタモジュールへ通信される。620(a)/625(a)以外のプロキシ/インターセプタペアについても同様の操作が可能であることが理解されるべきである。
ある態様では、新接続情報メッセージ665は、該当するクライアントに関連するネットワークトラフィックを選択されたサーバ側プロキシにリダイレクトするための、1つまたは複数のルーティングテーブル規則を含む。さらなる態様では、ルーティングテーブル規則は、該当するクライアントから選択されたサーバ側プロキシへとネットワークトラフィックをリダイレクトするための1つまたは複数の規則を含む。さらに、ルーティングテーブル規則は、サーバの組640の一つまたは複数からそのクライアントへ向けられたネットワークトラフィックを、選択されたサーバ側プロキシにリダイレクトするための1つまたは複数の規則を含む。
さらなる態様では、所与のクライアントに関連するネットワークトラフィックを、選択されたサーバ側プロキシの固有のポートに割り当てる。ある態様では、クライアント側プロキシおよびインターセプタモジュールが選択されたサーバ側プロキシ上のどのポートに接続するべきかを学習するように、自動発見プロトコルを用いる。別の態様では、クライアント側プロキシおよび/またはインターセプタモジュールに関する一連の規則により、サーバプロキシ上で接続するための適切なポートが規定される。
一旦、組625の他のインターセプタモジュールが新接続情報メッセージ665を受信したら、そのクライアントに関連する全てのネットワークトラフィックが、選択されたサーバ側プロキシを通じてリダイレクトされる。例えば、サーバ640(b)からクライアントに向けられたメッセージ670は、ローカルネットワーク630を通って移動する。インターセプタの組625の一つに達すると、受信するインターセプタモジュールは、メッセージ670をそのクライアントに関して保存された新接続情報と一致させる。これを受けて、そのインターセプタモジュールは、以前に選択されたサーバ側プロキシにメッセージ670をリダイレクトする。選択されたサーバ側プロキシは、メッセージ670を処理および/または変換し、次に、得られたメッセージを、インターセプタモジュールの組625のうちのいずれか一つを通じて、クライアントに送り返し、ルータの組620のうちの一つをクライアントに関連づける。別の態様では、一組のルータ620が新接続情報を受信し、同様の様式でネットワークトラフィックを処理する。
同様に、クライアントからサーバの組640のうちの一つへの次のメッセージ680を、この実施例中のインターセプタ625(c)などのインターセプタの組625のうちの一つが受信する。インターセプタモジュール625(c)は、クライアントに関するその保存された新接続情報とメッセージ680と一致させる。これを受けて、インターセプタモジュール625(c)は、メッセージ680を以前に選択されたサーバ側プロキシにリダイレクトする。選択されたサーバ側プロキシは、メッセージ680を処理および/または変換し、次に、得られたメッセージをローカルネットワーク630を通じてサーバの組640のうちの一つに送り返す。
別の態様では、組み合わされたユニットそれぞれが、関連するネットワークトラフィックを処理および変換するためのネットワークプロキシ、ならびに、ネットワークトラフィックをモニタリングし、新接続情報を作成し、かつ必要に応じて新接続情報を用いて他のスタンドアロン型ネットワークプロキシまたはインターセプタモジュールとネットワークプロキシの組み合わせユニットにメッセージをリダイレクトするための、インターセプタモジュールを含むように、ネットワークプロキシの一部またはすべてを、インターセプタモジュールに組み込むことができる。この態様では、広域ネットワークとの追加の接続をカバーするために、スタンドアロン型インターセプタモジュールを使用することもできる。
さらなる態様では、ネットワークから動的にネットワークプロキシを取除くことができる。近隣プロキシが新接続情報を受信し、近隣テーブルにこの情報を保存する。さらに、この態様では、近隣プロキシは、所有者プロキシへ受領確認(acknowledgement)メッセージを提供する。所有者プロキシが、1つまたは複数の近隣プロキシから返された受領確認を受信しない場合は、所有者プロキシは、応答しない近隣プロキシは無効であると見なし、応答しない近隣プロキシに関連するエントリを自分の近隣テーブルから除去することができる。
概説した流れは、各メッセージが明白に、受信プロキシまたは近隣のいずれかにより処理される態様に関する。いくつかの態様では、メッセージを、受信プロキシまたはその近隣の一つによって処理することが可能でありうる。そのような選択が受信プロキシに有利に解決される態様においては、メッセージ処理の流れには、メッセージ受信後かつ「近隣所有権」チェック前に、そのメッセージが受信プロキシによって扱うことができるメッセージと一致するかどうかを判定する試験が含まれる。もしメッセージが受信プロキシによって処理されることができれば、処理工程は正常な処理工程を含み、チェック工程は必要ない。
本発明を、その特別の態様に関して議論したが、これらの態様は本発明の単なる例示であり、限定的なものではない。さらに、上述したシステム構成は例示を目的としたものである。本発明を、スタンドアロン型アプリケーションや、または他のアプリケーションが組み込まれたモジュールなどを含む多数の異なる形式で実施することができる。したがって、本発明の範囲は単に添付の特許請求の範囲によって決定されるべきである。
本発明を、添付の図面を参照して説明する。
例示的なネットワークおよび、非対称のルーティングによって引き起こされる潜在的な問題を図示する。 図2A〜図2Bは、本発明の態様による、例示的ネットワークおよび改善されたネットワークトラフィックの流れを図示する。 本発明の態様による、近隣ネットワーク接続によって維持される情報の例を示す。 本発明の態様による、新しい接続を開始する方法を示す。 本発明の態様による、接続に関連するネットワークトラフィックを処理する方法を図示する。 図6は、本発明の態様による追加のネットワーク示す。

Claims (20)

  1. ローカルネットワークと広域ネットワークの間に接続された第1のユニットであって、クライアントからの少なくとも最初のメッセージを受信することに適合され、かつ最初のメッセージに関連する次のメッセージを処理するためのネットワークプロキシを選択すること、および、最初のメッセージおよび最初のメッセージに関連する次のメッセージを同定して、選択されたネットワークプロキシにリダイレクトする接続情報を作成することに適合されたロジックを含む、第1のユニット;ならびに
    ローカルネットワークと広域ネットワークの間に接続された第2のユニットであって、メッセージを受信することに適合された、第2のユニット;
    を含む、システムであって、
    第1のユニットは、第2のユニットに接続情報を通信することに適合されたロジックを含み、
    第2のユニットは、接続情報を用いて、第2のユニットによって受信されたメッセージが第1のユニットによって受信された最初のメッセージに関連するかどうかを判定すること、選択されたネットワークプロキシには、受信メッセージが受信メッセージの元の送信源によって送られたように見えるよう、受信メッセージの送信元アドレスを変更することなしに、受信メッセージの宛先アドレスを選択されたネットワークプロキシの宛先アドレスに変更すること、および、受信メッセージが最初のメッセージに関連するという決定に応じて、処理用に選択されたネットワークプロキシに受信メッセージをリダイレクトすることに適合されたロジックを含む、
    システム。
  2. 第1のユニットおよび第2のユニットが、ローカルネットワークを介してクライアントに接続されている、請求項1記載のシステム。
  3. 第1のユニットおよび第2のユニットが、広域ネットワークを介してクライアントに接続されている、請求項1記載のシステム。
  4. 第1のユニットが、選択されたネットワークプロキシを含む、請求項1記載のシステム。
  5. 選択されたネットワークプロキシが、ローカルネットワークを介して第1のユニットに接続されている、請求項1記載のシステム。
  6. 第2のユニットが、受信メッセージの宛先アドレスを改変することにより受信メッセージをリダイレクトすることに適合されている、請求項1記載のシステム。
  7. 第2のユニットが、受信メッセージの少なくとも一部分をカプセル化するためのトンネリングプロトコルを用いて、受信メッセージをリダイレクトすることに適合されている、請求項1記載のシステム。
  8. 第1のユニットが、接続情報を保存することに適合され、かつ第1のユニットが、接続情報を用いて、次の受信メッセージが最初のメッセージに関連するかどうかを判定すること、および、受信メッセージが最初のメッセージに関連するという決定に応じて処理用に選択されたネットワークプロキシに受信メッセージをリダイレクトすることに適合されたロジックを含む、請求項1記載のシステム。
  9. 選択されたネットワークプロキシが、対応するネットワークプロキシと関連づけすることに適合され、該関連は、広域ネットワークにわたってメッセージの通信を促進することに適合されている、請求項1記載のシステム。
  10. 選択されたネットワークプロキシが、受信メッセージを処理して変換されたメッセージを作成するのに適合され、該変換されたメッセージは、対応するネットワークプロキシが以前に受信したメッセージと等価である、請求項9記載のシステム。
  11. 選択されたネットワークプロキシが、受信メッセージを処理して変換されたメッセージを作成するのに適合され、該変換されたメッセージは、広域ネットワークにわたる通信用に最適化される、請求項9記載のシステム。
  12. ネットワークトラフィックを管理するための装置であって、
    ローカルネットワークを通過したネットワークトラフィックを受信することに適合された第1のインターフェース;
    広域ネットワークを通過したネットワークトラフィックを受信することに適合された第2のインターフェース;
    第1のクライアントの最初のメッセージに関連するネットワークトラフィックを同定する情報およびネットワークプロキシを特定する情報を含む接続情報を、追加の装置から受信することに適合された、該装置内で電気信号を修正する、ロジック;
    接続情報を利用して、最初のメッセージに関連するネットワークトラフィックを同定することに適合されたロジック;ならびに
    接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合された、該装置内で電気信号を修正する、ロジックであって、
    接続情報によって特定されたネットワークプロキシには、同定されたネットワークトラフィックが同定されたネットワークトラフィックの元の送信源によって送られたように見えるよう、同定されたネットワークトラフィックの送信元アドレスを変更することなしに、同定されたネットワークトラフィックの宛先アドレスを該接続情報によって提供されたネットワークプロキシのアドレスに修正することに適合された、該装置内で電気信号を修正する、ロジックを含む、接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合されたロジック
    を含む、装置。
  13. 第1または第2のインターフェース経由で受信したネットワークトラフィック中の、第2のクライアントからの最初のメッセージを同定することに適合された、該装置内で電気信号を修正する、ロジック;
    第2のクライアントの最初のメッセージに関連する次のメッセージを処理するためのネットワークプロキシを選択することに適合された、該装置内で電気信号を修正する、ロジック;
    第2のクライアントの最初のメッセージに関連するネットワークトラフィック用の接続情報を作成することに適合されたロジックであって、接続情報が、第2のクライアントの最初のメッセージに関連するネットワークトラフィックを同定する情報、および選択されたネットワークプロキシを特定する情報を含む、該装置内で電気信号を修正する、ロジック;ならびに
    少なくとも1台の追加の装置に接続情報を通信することに適合された、該装置内で電気信号を修正する、ロジック
    をさらに含む、請求項12記載の装置。
  14. 選択されたネットワークプロキシ;
    少なくとも1台の追加の装置により選択されたネットワークプロキシにリダイレクトされたネットワークトラフィックを受信することに適合された、該装置内で電気信号を修正する、ロジック;
    選択されたネットワークプロキシへと少なくとも1台の追加の装置によりリダイレクトされたネットワークトラフィックを提供することに適合された、該装置内で電気信号を修正する、ロジック
    をさらに含む、請求項13記載の装置。
  15. 選択されたネットワークプロキシが、第2のクライアントの最初のメッセージに関連するネットワークトラフィック用の第2のネットワークプロキシと関連づけするのに適合され、該関連は、第2のクライアントの最初のメッセージに関連するネットワークトラフィックの、広域ネットワークにわたる通信を促進することに適合されている、請求項14記載の装置。
  16. 選択されたネットワークプロキシが、第2のクライアントの最初のメッセージに関連するネットワークトラフィックを変換することに適合され、該変換されたネットワークトラフィックは、以前に第2のネットワークプロキシが受信したネットワークトラフィックと等価である、請求項15記載の装置。
  17. 第1のインターフェース経由で第2のクライアントからの最初のメッセージを受信することに適合されている、請求項13記載の装置。
  18. 第2のインターフェース経由で第2のクライアントからの最初のメッセージを受信することに適合されている、請求項13記載の装置。
  19. 接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合されたロジックが、同定されたネットワークトラフィックの宛先アドレスを、接続情報によって提供されるネットワークプロキシのアドレスに改変することに適合された、該装置内で電気信号を修正する、ロジックを含む、請求項12記載の装置。
  20. 接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合されたロジックが、トンネリングプロトコルを利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシに通信することに適合された、該装置内で電気信号を修正する、ロジックを含む、請求項12記載の装置。
JP2008502134A 2005-03-18 2006-03-16 接続転送 Expired - Fee Related JP4902635B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US66336605P 2005-03-18 2005-03-18
US60/663,366 2005-03-18
US11/377,906 2006-03-15
US11/377,906 US20060248194A1 (en) 2005-03-18 2006-03-15 Connection forwarding
PCT/US2006/009945 WO2006102196A2 (en) 2005-03-18 2006-03-16 Connection forwarding

Publications (2)

Publication Number Publication Date
JP2008536369A JP2008536369A (ja) 2008-09-04
JP4902635B2 true JP4902635B2 (ja) 2012-03-21

Family

ID=37024465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008502134A Expired - Fee Related JP4902635B2 (ja) 2005-03-18 2006-03-16 接続転送

Country Status (6)

Country Link
US (4) US20060248194A1 (ja)
EP (1) EP1861793A4 (ja)
JP (1) JP4902635B2 (ja)
AU (1) AU2006227302B2 (ja)
IL (1) IL185954A0 (ja)
WO (1) WO2006102196A2 (ja)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7428752B2 (en) * 2001-06-01 2008-09-23 Applications In Internet Time, Llc Secure data accessing system and method
US8364815B2 (en) 2005-03-18 2013-01-29 Riverbed Technology, Inc. Reliability and availability of distributed servers
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US20060248194A1 (en) * 2005-03-18 2006-11-02 Riverbed Technology, Inc. Connection forwarding
US7653075B2 (en) 2005-05-23 2010-01-26 Juniper Networks, Inc. Processing communication flows in asymmetrically routed networks
US8447802B2 (en) 2006-03-08 2013-05-21 Riverbed Technology, Inc. Address manipulation to provide for the use of network tools even when transaction acceleration is in use over a network
US8782393B1 (en) 2006-03-23 2014-07-15 F5 Networks, Inc. Accessing SSL connection data by a third-party
US8463843B2 (en) * 2006-05-26 2013-06-11 Riverbed Technology, Inc. Throttling of predictive ACKs in an accelerated network communication system
WO2007149687A2 (en) * 2006-05-30 2007-12-27 Riverbed Technology, Inc. Selecting proxies from among autodiscovered proxies
US7680051B2 (en) * 2007-02-28 2010-03-16 Cisco Technology, Inc. Optimizing TCP traffic via an SCTP association
US20080298366A1 (en) * 2007-05-31 2008-12-04 Microsoft Corporation Agnostic Network Architecture
US8180865B2 (en) * 2007-07-11 2012-05-15 International Business Machines Corporation System and method for application server/operating system network/configuration management
US8130747B2 (en) * 2007-08-06 2012-03-06 Blue Coat Systems, Inc. System and method of traffic inspection and stateful connection forwarding among geographically dispersed network appliances organized as clusters
JP4618587B2 (ja) * 2008-03-25 2011-01-26 Necインフロンティア株式会社 有線lan障害発生時における通信経路確保方法、その装置及びそのプログラム
US8346225B2 (en) 2009-01-28 2013-01-01 Headwater Partners I, Llc Quality of service for device assisted services
US8626115B2 (en) 2009-01-28 2014-01-07 Headwater Partners I Llc Wireless network service interfaces
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US8548428B2 (en) 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8832777B2 (en) 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US8406748B2 (en) 2009-01-28 2013-03-26 Headwater Partners I Llc Adaptive ambient services
US8402111B2 (en) 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US8391834B2 (en) 2009-01-28 2013-03-05 Headwater Partners I Llc Security techniques for device assisted services
US8635335B2 (en) 2009-01-28 2014-01-21 Headwater Partners I Llc System and method for wireless network offloading
US8340634B2 (en) 2009-01-28 2012-12-25 Headwater Partners I, Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US8229812B2 (en) 2009-01-28 2012-07-24 Headwater Partners I, Llc Open transaction central billing system
US8095935B2 (en) * 2008-06-26 2012-01-10 Microsoft Corporation Adapting message delivery assignments with hashing and mapping techniques
US10492102B2 (en) 2009-01-28 2019-11-26 Headwater Research Llc Intermediate networking devices
US9557889B2 (en) 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US11218854B2 (en) 2009-01-28 2022-01-04 Headwater Research Llc Service plan design, user interfaces, application programming interfaces, and device management
US9609510B2 (en) 2009-01-28 2017-03-28 Headwater Research Llc Automated credential porting for mobile devices
US9647918B2 (en) 2009-01-28 2017-05-09 Headwater Research Llc Mobile device and method attributing media services network usage to requesting application
US10248996B2 (en) 2009-01-28 2019-04-02 Headwater Research Llc Method for operating a wireless end-user device mobile payment agent
US9392462B2 (en) 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US9571559B2 (en) 2009-01-28 2017-02-14 Headwater Partners I Llc Enhanced curfew and protection associated with a device group
US10057775B2 (en) 2009-01-28 2018-08-21 Headwater Research Llc Virtualized policy and charging system
US11973804B2 (en) 2009-01-28 2024-04-30 Headwater Research Llc Network service plan design
US9954975B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Enhanced curfew and protection associated with a device group
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US10200541B2 (en) 2009-01-28 2019-02-05 Headwater Research Llc Wireless end-user device with divided user space/kernel space traffic policy system
US10783581B2 (en) 2009-01-28 2020-09-22 Headwater Research Llc Wireless end-user device providing ambient or sponsored services
US9578182B2 (en) 2009-01-28 2017-02-21 Headwater Partners I Llc Mobile device and service management
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US10798252B2 (en) 2009-01-28 2020-10-06 Headwater Research Llc System and method for providing user notifications
US9858559B2 (en) 2009-01-28 2018-01-02 Headwater Research Llc Network service plan design
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US10064055B2 (en) 2009-01-28 2018-08-28 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US11985155B2 (en) 2009-01-28 2024-05-14 Headwater Research Llc Communications device with secure data path processing agents
US9955332B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Method for child wireless device activation to subscriber account of a master wireless device
US9270559B2 (en) 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US10779177B2 (en) 2009-01-28 2020-09-15 Headwater Research Llc Device group partitions and settlement platform
US10841839B2 (en) 2009-01-28 2020-11-17 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10484858B2 (en) 2009-01-28 2019-11-19 Headwater Research Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US10715342B2 (en) 2009-01-28 2020-07-14 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US8560604B2 (en) 2009-10-08 2013-10-15 Hola Networks Ltd. System and method for providing faster and more efficient data communication
US8700892B2 (en) 2010-03-19 2014-04-15 F5 Networks, Inc. Proxy SSL authentication in split SSL for client-side proxy agent resources with content insertion
US8838707B2 (en) * 2010-06-25 2014-09-16 Twilio, Inc. System and method for enabling real-time eventing
US9578126B1 (en) * 2011-04-30 2017-02-21 F5 Networks, Inc. System and method for automatically discovering wide area network optimized routes and devices
CN102291467B (zh) * 2011-09-15 2014-04-09 电子科技大学 一种适应私有云环境的通信平台和通信方法
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
EP2853074B1 (en) 2012-04-27 2021-03-24 F5 Networks, Inc Methods for optimizing service of content requests and devices thereof
US9015233B2 (en) 2012-06-29 2015-04-21 At&T Intellectual Property I, L.P. System and method for segregating layer seven control and data traffic
US8850002B1 (en) * 2012-07-02 2014-09-30 Amazon Technologies, Inc. One-to many stateless load balancing
US8948091B2 (en) * 2012-07-10 2015-02-03 Empire Technology Development Llc Push management scheme
US9509736B2 (en) * 2013-01-16 2016-11-29 Cisco Technology, Inc. Method for optimizing WAN traffic
US9306997B2 (en) 2013-01-16 2016-04-05 Cisco Technology, Inc. Method for optimizing WAN traffic with deduplicated storage
US9300748B2 (en) 2013-01-16 2016-03-29 Cisco Technology, Inc. Method for optimizing WAN traffic with efficient indexing scheme
JP6160151B2 (ja) * 2013-03-21 2017-07-12 富士通株式会社 中継装置、およびルーティング制御方法
US9241044B2 (en) * 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
CA2939921A1 (en) * 2014-02-19 2015-08-27 Level 3 Communications, Llc Proxy server failover and load clustering
JP6395405B2 (ja) * 2014-03-18 2018-09-26 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US9667543B2 (en) 2014-08-08 2017-05-30 Microsoft Technology Licensing, Llc Routing requests with varied protocols to the same endpoint within a cluster
KR101567253B1 (ko) * 2014-10-31 2015-11-06 삼성에스디에스 주식회사 플로우 제어 장치 및 방법
EP3269105B1 (en) * 2015-03-09 2019-06-05 Telefonaktiebolaget LM Ericsson (publ) Transmission encryption in a proxy
US11057446B2 (en) 2015-05-14 2021-07-06 Bright Data Ltd. System and method for streaming content from multiple servers
US10158735B2 (en) * 2015-08-07 2018-12-18 Sonicwall Inc. Read-ahead on signed connections with unsigning, inline, transparent proxies
US11349922B2 (en) * 2016-04-06 2022-05-31 Marvell Asia Pte Ltd. System and method for a database proxy
US10237350B2 (en) * 2016-04-06 2019-03-19 Reniac, Inc. System and method for a database proxy
EP3404886A1 (en) * 2017-05-15 2018-11-21 IMEC vzw Network stack for a plurality of physical communication interfaces
EP4002810A1 (en) 2017-08-28 2022-05-25 Bright Data Ltd. Method for improving content fetching by selecting tunnel devices
LT3780557T (lt) 2019-02-25 2023-03-10 Bright Data Ltd. Turinio parsisiuntimo, naudojant url bandymų mechanizmą, sistema ir būdas
EP4027618B1 (en) 2019-04-02 2024-07-31 Bright Data Ltd. Managing a non-direct url fetching service
US11429595B2 (en) 2020-04-01 2022-08-30 Marvell Asia Pte Ltd. Persistence of write requests in a database proxy

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003110604A (ja) * 2001-10-02 2003-04-11 Nippon Telegr & Teleph Corp <Ntt> クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法
US6701374B2 (en) * 1999-07-29 2004-03-02 Sun Microsystems, Inc. Method and apparatus for dynamic proxy insertion in network traffic flow
US20040243703A1 (en) * 2003-04-14 2004-12-02 Nbt Technology, Inc. Cooperative proxy auto-discovery and connection interception
JP2005027304A (ja) * 2003-06-30 2005-01-27 Microsoft Corp 接続操作を用いるネットワーク負荷分散
US20050060426A1 (en) * 2003-07-29 2005-03-17 Samuels Allen R. Early generation of acknowledgements for flow control

Family Cites Families (170)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4641274A (en) 1982-12-03 1987-02-03 International Business Machines Corporation Method for communicating changes made to text form a text processor to a remote host
US4988998A (en) 1989-09-05 1991-01-29 Storage Technology Corporation Data compression system for successively applying at least two data compression methods to an input data stream
US5414850A (en) 1991-08-23 1995-05-09 Stac Electronics, Inc. System for transparently compressing data files in a computer system
US5371852A (en) * 1992-10-14 1994-12-06 International Business Machines Corporation Method and apparatus for making a cluster of computers appear as a single host on a network
US6076084A (en) 1994-01-03 2000-06-13 Norton-Lambert Corp. File transfer method and apparatus utilizing delimiters
US5822746A (en) 1994-07-05 1998-10-13 Trustus Pty Ltd Method for mapping a file specification to a sequence of actions
US5737594A (en) 1994-07-05 1998-04-07 Trustus Pty Ltd. Method for matching elements of two groups
WO1996025801A1 (en) 1995-02-17 1996-08-22 Trustus Pty. Ltd. Method for partitioning a block of data into subblocks and for storing and communicating such subblocks
US5838963A (en) 1995-10-25 1998-11-17 Microsoft Corporation Apparatus and method for compressing a data file based on a dictionary file which matches segment lengths
US5771355A (en) 1995-12-21 1998-06-23 Intel Corporation Transmitting electronic mail by either reference or value at file-replication points to minimize costs
US5903723A (en) 1995-12-21 1999-05-11 Intel Corporation Method and apparatus for transmitting electronic mail attachments with attachment references
US5754774A (en) 1996-02-15 1998-05-19 International Business Machine Corp. Client/server communication system
US5867661A (en) 1996-02-15 1999-02-02 International Business Machines Corporation Method and apparatus of using virtual sockets for reducing data transmitted over a wireless communication link between a client web browser and a host web server using a standard TCP protocol
US5758087A (en) 1996-06-14 1998-05-26 International Business Machines Corporation Apparatus and method for predicted response generation
US6347342B1 (en) 1996-07-15 2002-02-12 Next Software, Inc. Method and apparatus for dynamically brokering object messages among object models
US6751221B1 (en) * 1996-10-04 2004-06-15 Kabushiki Kaisha Toshiba Data transmitting node and network inter-connection node suitable for home network environment
EP0931418A2 (en) 1996-10-08 1999-07-28 Tiernan Communications Incorporated Apparatus and method for multi-service transport multiplexing
US5941988A (en) 1997-01-27 1999-08-24 International Business Machines Corporation Session and transport layer proxies via TCP glue
US6138162A (en) 1997-02-11 2000-10-24 Pointcast, Inc. Method and apparatus for configuring a client to redirect requests to a caching proxy server based on a category ID with the request
WO1998039699A2 (en) 1997-03-07 1998-09-11 Intelligent Compression Technologies Data coding network
US5999949A (en) 1997-03-14 1999-12-07 Crandall; Gary E. Text file compression system utilizing word terminators
US5931913A (en) 1997-05-07 1999-08-03 International Business Machines Corporation Methods, system and computer program products for establishing a session between a host and a terminal using a reduced protocol
US6233253B1 (en) 1997-05-23 2001-05-15 Thomson Licensing S.A. System for digital data format conversion and bit stream generation
US5926834A (en) 1997-05-29 1999-07-20 International Business Machines Corporation Virtual data storage system with an overrun-resistant cache using an adaptive throttle based upon the amount of cache free space
US5977890A (en) 1997-06-12 1999-11-02 International Business Machines Corporation Method and apparatus for data compression utilizing efficient pattern discovery
US6009462A (en) 1997-06-16 1999-12-28 Digital Equipment Corporation Replacing large bit component of electronic mail (e-mail) message with hot-link in distributed computer system
US6006268A (en) 1997-07-31 1999-12-21 Cisco Technology, Inc. Method and apparatus for reducing overhead on a proxied connection
US6473406B1 (en) 1997-07-31 2002-10-29 Cisco Technology, Inc. Method and apparatus for transparently proxying a connection
US6085193A (en) 1997-09-29 2000-07-04 International Business Machines Corporation Method and system for dynamically prefetching information via a server hierarchy
JPH11110324A (ja) 1997-10-07 1999-04-23 Hitachi Ltd 代理サーバ選択装置および代理サーバ
US6173318B1 (en) 1997-12-16 2001-01-09 Intel Corporation Method and apparatus for pre-fetching data for an application using a winsock client layered service provider and a transparent proxy
US6151708A (en) 1997-12-19 2000-11-21 Microsoft Corporation Determining program update availability via set intersection over a sub-optical pathway
US6822955B1 (en) 1998-01-22 2004-11-23 Nortel Networks Limited Proxy server for TCP/IP network address portability
US6038594A (en) * 1998-02-02 2000-03-14 Loral Cyberstar, Inc. Internet communication system and method with asymmetric terrestrial and satellite links
US6415329B1 (en) * 1998-03-06 2002-07-02 Massachusetts Institute Of Technology Method and apparatus for improving efficiency of TCP/IP protocol over high delay-bandwidth network
US6959318B1 (en) 1998-03-06 2005-10-25 Intel Corporation Method of proxy-assisted predictive pre-fetching with transcoding
US6389460B1 (en) 1998-05-13 2002-05-14 Compaq Computer Corporation Method and apparatus for efficient storage and retrieval of objects in and from an object storage device
US6578073B1 (en) 1998-05-13 2003-06-10 Hewlett-Packard Development Company, L.P. Accelerated content delivery over a network using reduced size objects
US6311216B1 (en) 1998-05-29 2001-10-30 Microsoft Corporation Method, computer program product, and system for client-side deterministic routing and URL lookup into a distributed cache of URLS
US6606413B1 (en) 1998-06-01 2003-08-12 Trestle Acquisition Corp. Compression packaged image transmission for telemicroscopy
US6330561B1 (en) 1998-06-26 2001-12-11 At&T Corp. Method and apparatus for improving end to end performance of a data network
US6574618B2 (en) 1998-07-22 2003-06-03 Appstream, Inc. Method and system for executing network streamed application
NL1009763C2 (nl) 1998-07-29 2000-02-01 Koninkl Kpn Nv Werkwijze en stelsel voor het overdragen van een reeks data-elementen met uitsluiting van bepaalde bijzondere data-elementen.
US6212565B1 (en) 1998-08-26 2001-04-03 Sun Microsystems, Inc. Apparatus and method for improving performance of proxy server arrays that use persistent connections
US6563517B1 (en) 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
US6219642B1 (en) 1998-10-05 2001-04-17 Legerity, Inc. Quantization using frequency and mean compensated frequency input data for robust speech recognition
US6397253B1 (en) 1998-10-06 2002-05-28 Bull Hn Information Systems Inc. Method and system for providing high performance Web browser and server communications
US6163811A (en) 1998-10-21 2000-12-19 Wildseed, Limited Token based source file compression/decompression and its application
US6279041B1 (en) 1998-11-13 2001-08-21 International Business Machines Corporation Methods, systems and computer program products for differencing data communications using a message queue
US6487538B1 (en) 1998-11-16 2002-11-26 Sun Microsystems, Inc. Method and apparatus for local advertising
US7225264B2 (en) 1998-11-16 2007-05-29 Softricity, Inc. Systems and methods for delivering content over a computer network
US6728748B1 (en) * 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
US6178461B1 (en) 1998-12-08 2001-01-23 Lucent Technologies Inc. Cache-based compaction technique for internet browsing using similar objects in client cache as reference objects
US6389462B1 (en) * 1998-12-16 2002-05-14 Lucent Technologies Inc. Method and apparatus for transparently directing requests for web objects to proxy caches
EP1032179B1 (en) 1999-02-26 2005-09-14 Lucent Technologies Inc. Mobile IP supporting quality of service
DE69934871T2 (de) 1999-03-05 2007-07-05 International Business Machines Corp. Verfahren und System zur optimalen Auswahl eines Webfirewalls in einem TCP/IP Netzwerk
JP4299911B2 (ja) 1999-03-24 2009-07-22 株式会社東芝 情報転送システム
JP2000293424A (ja) 1999-04-09 2000-10-20 Hitachi Ltd ネットワークキャッシュ装置およびキャッシュ制御方法
US6430539B1 (en) 1999-05-06 2002-08-06 Hnc Software Predictive modeling of consumer financial behavior
GB9911989D0 (en) 1999-05-25 1999-07-21 Pace Micro Tech Plc Data transport strems processing
US6415323B1 (en) 1999-09-03 2002-07-02 Fastforward Networks Proximity-based redirection system for robust and scalable service-node location in an internetwork
GB2354609B (en) 1999-09-25 2003-07-16 Ibm Method and system for predicting transactions
US6721780B1 (en) 1999-11-09 2004-04-13 Fireclick, Inc. Predictive pre-download of network objects
US7047485B1 (en) 1999-11-10 2006-05-16 International Business Machines Corporation Intelligent pre-caching on a network
US6449658B1 (en) 1999-11-18 2002-09-10 Quikcat.Com, Inc. Method and apparatus for accelerating data through communication networks
US7016973B1 (en) 1999-11-19 2006-03-21 At&T Corp. Apparatus and methods for providing translucent proxies in a communications network
US6643287B1 (en) * 1999-11-24 2003-11-04 Pluris, Inc. Apparatus and method for forwarding encapsulated data packets on a network having multiple links between nodes
US6871235B1 (en) * 1999-12-10 2005-03-22 Nortel Networks Limited Fast path forwarding of link state advertisements using reverse path forwarding
US6415368B1 (en) 1999-12-22 2002-07-02 Xerox Corporation System and method for caching
US6742043B1 (en) 2000-01-14 2004-05-25 Webtv Networks, Inc. Reformatting with modular proxy server
US6553141B1 (en) 2000-01-21 2003-04-22 Stentor, Inc. Methods and apparatus for compression of transform data
US6820133B1 (en) 2000-02-07 2004-11-16 Netli, Inc. System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination
US6704730B2 (en) 2000-02-18 2004-03-09 Avamar Technologies, Inc. Hash file system and method for use in a commonality factoring system
US8291007B2 (en) 2000-02-22 2012-10-16 Flash Networks Ltd System and method to accelerate client/server interactions using predictive requests
EP1269743B1 (en) 2000-03-03 2008-06-25 Thomson Licensing Multiplexing and DEMULTIPLEXING DEVICE AND PROCESS FOR AT LEAST TWO TRANSPORT STREAMS using MPEG transport priority bit
AU2001237697A1 (en) 2000-03-17 2001-09-24 Filesx Ltd. Accelerating responses to requests made by users to an internet
US6754709B1 (en) * 2000-03-29 2004-06-22 Microsoft Corporation Application programming interface and generalized network address translator for intelligent transparent application gateway processes
US6880089B1 (en) * 2000-03-31 2005-04-12 Avaya Technology Corp. Firewall clustering for multiple network servers
US7123613B1 (en) 2000-04-07 2006-10-17 Sun Microsystems, Inc. Apparatus and method for providing a transparent proxy server
US6622168B1 (en) 2000-04-10 2003-09-16 Chutney Technologies, Inc. Dynamic page generation acceleration using component-level caching
US7269631B2 (en) 2000-06-02 2007-09-11 Hewlett-Packard Development Company, L.P. Architecture for parallel distributed table driven I/O mapping
US20010051927A1 (en) 2000-06-08 2001-12-13 Blinkspeed, Inc. Increasing web page browsing efficiency by periodically physically distributing memory media on which web page data are cached
US7058699B1 (en) 2000-06-16 2006-06-06 Yahoo! Inc. System and methods for implementing code translations that enable persistent client-server communication via a proxy
AU2001280818A1 (en) 2000-07-25 2002-02-05 Peribit Networks, Inc. Network architecture and methods for transparent on-line cross-sessional encoding and transport of network communications data
US6856651B2 (en) 2000-07-25 2005-02-15 Peribit Networks, Inc. System and method for incremental and continuous data compression
US7047281B1 (en) 2000-08-08 2006-05-16 Fineground Networks Method and system for accelerating the delivery of content in a networked environment
GB2366163A (en) 2000-08-14 2002-02-27 Global Knowledge Network Ltd Inter-network connection through intermediary server
US7092370B2 (en) 2000-08-17 2006-08-15 Roamware, Inc. Method and system for wireless voice channel/data channel integration
GB2366406A (en) * 2000-09-01 2002-03-06 Ncr Int Inc Downloading and uploading data in information networks
US7698463B2 (en) * 2000-09-12 2010-04-13 Sri International System and method for disseminating topology and link-state information to routing nodes in a mobile ad hoc network
JP4202129B2 (ja) 2000-10-24 2008-12-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 参照されるリソースを先取りする方法および装置
US6970939B2 (en) 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US20020107971A1 (en) 2000-11-07 2002-08-08 Bailey Brian W. Network transport accelerator
US6883035B2 (en) 2000-11-16 2005-04-19 Telefonaktiebolaget Lm Ericsson (Publ) System and method for communicating with temporary compression tables
US7739398B1 (en) * 2000-11-21 2010-06-15 Avaya Inc. Dynamic load balancer
US7113935B2 (en) 2000-12-06 2006-09-26 Epicrealm Operating Inc. Method and system for adaptive prefetching
US6940835B2 (en) 2000-12-28 2005-09-06 Nortel Networks Limited Application-level mobility support in communications network
US20020138437A1 (en) 2001-01-08 2002-09-26 Lewin Daniel M. Extending an internet content delivery network into an enterprise environment by locating ICDN content servers topologically near an enterprise firewall
US20020092026A1 (en) 2001-01-09 2002-07-11 International Business Machines Corporation Method and apparatus for broadcast delivery of content to a client-side cache based on user preferences
JP2004518327A (ja) 2001-01-11 2004-06-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 逆進的にストリングを参照する為の識別子を用いたデータ圧縮方法
US7149817B2 (en) 2001-02-15 2006-12-12 Neteffect, Inc. Infiniband TM work queue to TCP/IP translation
US7003572B1 (en) * 2001-02-28 2006-02-21 Packeteer, Inc. System and method for efficiently forwarding client requests from a proxy server in a TCP/IP computing environment
US7310687B2 (en) 2001-03-23 2007-12-18 Cisco Technology, Inc. Methods and systems for managing class-based condensation
US6839761B2 (en) * 2001-04-19 2005-01-04 Microsoft Corporation Methods and systems for authentication through multiple proxy servers that require different authentication data
US6996841B2 (en) 2001-04-19 2006-02-07 Microsoft Corporation Negotiating secure connections through a proxy server
US20020161904A1 (en) 2001-04-30 2002-10-31 Xerox Corporation External access to protected device on private network
US20030009583A1 (en) 2001-05-02 2003-01-09 Mtel Limited Protocol for accelerating messages in a wireless communications environment
US7058763B2 (en) 2001-05-04 2006-06-06 Lucent Technologies Inc. File system for caching web proxies
US6816890B2 (en) * 2001-05-28 2004-11-09 Hitachi, Ltd. Gateway apparatus with LAC function
JP3798263B2 (ja) 2001-06-01 2006-07-19 三菱電機株式会社 電子メールサーバ及び電子メールキャッシュ方法及び電子メールキャッシュプログラム
US7159014B2 (en) 2001-06-04 2007-01-02 Fineground Networks Method and system for efficient and automated version management of embedded objects in web documents
US6947444B2 (en) 2001-06-06 2005-09-20 Ipr Licensing, Inc. Method and apparatus for improving utilization efficiency of wireless links for web-based applications
EP1267529B1 (en) * 2001-06-14 2007-11-14 Hitachi Ltd. Data packets acknowledgment system
US6981029B1 (en) 2001-07-17 2005-12-27 Cisco Technology, Inc. System and method for processing a request for information in a network
WO2003019870A2 (en) 2001-08-24 2003-03-06 Peribit Networks, Inc. Dynamic multi-point meshed overlay network
JP2003078549A (ja) * 2001-08-31 2003-03-14 Hitachi Ltd パケット転送方法およびその装置
US20030055826A1 (en) 2001-09-14 2003-03-20 Kevin Graham System and method for connecting to and controlling to disparate databases
US7209977B2 (en) 2001-10-01 2007-04-24 International Business Machines Corporation Method and apparatus for content-aware web switching
US20030105837A1 (en) 2001-11-30 2003-06-05 Yury Kamen Interception for optimal caching of distributed applications
US7370120B2 (en) 2001-12-07 2008-05-06 Propel Software Corporation Method and system for reducing network latency in data communication
JP3826782B2 (ja) 2001-12-12 2006-09-27 ソニー株式会社 データ伝送システム、情報処理装置および方法、記録媒体、並びにプログラム
US7506058B2 (en) 2001-12-28 2009-03-17 International Business Machines Corporation Method for transmitting information across firewalls
US7010762B2 (en) 2002-02-27 2006-03-07 At&T Corp. Pre-loading content to caches for information appliances
CA2789166A1 (en) 2002-03-01 2003-09-12 Enterasys Networks, Inc. Location aware data network
US7047315B1 (en) * 2002-03-19 2006-05-16 Cisco Technology, Inc. Method providing server affinity and client stickiness in a server load balancing device without TCP termination and without keeping flow states
US20030212739A1 (en) 2002-05-09 2003-11-13 Antoine Boucher Store and forward architecture
JP3952860B2 (ja) 2002-05-30 2007-08-01 株式会社日立製作所 プロトコル変換装置
US7685287B2 (en) 2002-05-30 2010-03-23 Microsoft Corporation Method and system for layering an infinite request/reply data stream on finite, unidirectional, time-limited transports
JP3972733B2 (ja) * 2002-05-30 2007-09-05 株式会社日立製作所 アドレス変換装置、アドレス変換システム、及びsipサーバ
US7289505B2 (en) * 2002-06-04 2007-10-30 Lucent Technologies Inc. Efficient reverse path forwarding check mechanism
US7280557B1 (en) * 2002-06-28 2007-10-09 Cisco Technology, Inc. Mechanisms for providing stateful NAT support in redundant and asymetric routing environments
US6678828B1 (en) 2002-07-22 2004-01-13 Vormetric, Inc. Secure network file access control system
US7161947B1 (en) 2002-07-30 2007-01-09 Cisco Technology, Inc. Methods and apparatus for intercepting control and data connections
US7389330B2 (en) 2002-09-11 2008-06-17 Hughes Network Systems, Llc System and method for pre-fetching content in a proxy architecture
WO2004034657A1 (ja) * 2002-10-10 2004-04-22 Canon Kabushiki Kaisha 通信装置、通信装置の制御方法、および通信装置の制御プログラム
US8069225B2 (en) 2003-04-14 2011-11-29 Riverbed Technology, Inc. Transparent client-server transaction accelerator
US6667700B1 (en) 2002-10-30 2003-12-23 Nbt Technology, Inc. Content-based segmentation scheme for data compression in storage and transmission including hierarchical segment representation
US7120666B2 (en) 2002-10-30 2006-10-10 Riverbed Technology, Inc. Transaction accelerator for client-server communication systems
US8364815B2 (en) * 2005-03-18 2013-01-29 Riverbed Technology, Inc. Reliability and availability of distributed servers
US7650416B2 (en) 2003-08-12 2010-01-19 Riverbed Technology Content delivery for client-server protocols with user affinities using connection end-point proxies
ATE382902T1 (de) 2002-11-06 2008-01-15 Tellique Kommunikationstechnik Verfahren zum vorabübertragen strukturierter datenmengen zwischen einer clienteinrichtung und einer servereinrichtung
JP3953950B2 (ja) * 2002-12-20 2007-08-08 富士通株式会社 ローカルアドレスを用いたサーバシステム
US7219154B2 (en) 2002-12-31 2007-05-15 International Business Machines Corporation Method and system for consolidated sign-off in a heterogeneous federated environment
JP2004254039A (ja) 2003-02-19 2004-09-09 Ntt Docomo Inc メール通信中継システム、メール通信中継装置、メール通信中継方法及びメール通信中継用プログラム
JP4278445B2 (ja) * 2003-06-18 2009-06-17 株式会社日立製作所 ネットワークシステム及びスイッチ
US7567504B2 (en) * 2003-06-30 2009-07-28 Microsoft Corporation Network load balancing with traffic routing
CN1277375C (zh) * 2003-07-31 2006-09-27 华为技术有限公司 一种光网络中永久连接和交换连接之间的转换方法
DE10335335A1 (de) * 2003-08-01 2005-03-10 Siemens Ag Verfahren für ein Inter-Domain Mehrwege-Routing
US7315538B2 (en) * 2003-08-07 2008-01-01 At&T Delaware Intellectual Property, Inc. Methods and systems for providing network access service utilizing multiple asymmetric DSL modems per service point
US7853699B2 (en) 2005-03-15 2010-12-14 Riverbed Technology, Inc. Rules-based transaction prefetching using connection end-point proxies
US20050076099A1 (en) * 2003-10-03 2005-04-07 Nortel Networks Limited Method and apparatus for live streaming media replication in a communication network
US20050100035A1 (en) * 2003-11-11 2005-05-12 Avici Systems, Inc. Adaptive source routing and packet processing
US20050234643A1 (en) 2003-11-21 2005-10-20 Charles Abraham Method and apparatus for managing network elements in a satellite navigation data distribution system
US7609687B2 (en) * 2003-12-15 2009-10-27 Panasonic Corporation Home agent apparatus, mobile router communication system, and communication method
KR100669238B1 (ko) * 2003-12-19 2007-01-15 한국전자통신연구원 센서 네트워크의 라우팅 프로토콜 제공방법
US7420954B2 (en) * 2004-01-13 2008-09-02 General Motors Corporation Efficient lightweight information dissemination algorithm for mobile wireless ad hoc networks
US20050198351A1 (en) * 2004-02-20 2005-09-08 Microsoft Corporation Content-based routing
US7600230B2 (en) 2004-07-06 2009-10-06 Oracle International Corporation System and method for managing security meta-data in a reverse proxy
US20060248194A1 (en) * 2005-03-18 2006-11-02 Riverbed Technology, Inc. Connection forwarding
US7735139B1 (en) * 2006-05-17 2010-06-08 Trend Micro Incorporated In-line scanning of network data in an asymmetric routing environment
WO2007149687A2 (en) * 2006-05-30 2007-12-27 Riverbed Technology, Inc. Selecting proxies from among autodiscovered proxies
US7809818B2 (en) 2007-03-12 2010-10-05 Citrix Systems, Inc. Systems and method of using HTTP head command for prefetching
US7827237B2 (en) 2007-03-12 2010-11-02 Citrix Systems, Inc. Systems and methods for identifying long matches of data in a compression history
US7619545B2 (en) 2007-03-12 2009-11-17 Citrix Systems, Inc. Systems and methods of using application and protocol specific parsing for compression
US7865585B2 (en) 2007-03-12 2011-01-04 Citrix Systems, Inc. Systems and methods for providing dynamic ad hoc proxy-cache hierarchies
US7460038B2 (en) 2007-03-12 2008-12-02 Citrix Systems, Inc. Systems and methods of clustered sharing of compression histories
US8130747B2 (en) * 2007-08-06 2012-03-06 Blue Coat Systems, Inc. System and method of traffic inspection and stateful connection forwarding among geographically dispersed network appliances organized as clusters
EP2043306B1 (de) * 2007-09-28 2015-04-15 Unify GmbH & Co. KG Verfahren zur Organisation von Netzknoten in einem paketorientierten Netzwerk
TWI410077B (zh) * 2009-04-14 2013-09-21 Univ Nat Chiao Tung Method of Wrapping Method and Winding Path in Wireless Network Environment
US8032641B2 (en) * 2009-04-30 2011-10-04 Blue Coat Systems, Inc. Assymmetric traffic flow detection

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6701374B2 (en) * 1999-07-29 2004-03-02 Sun Microsystems, Inc. Method and apparatus for dynamic proxy insertion in network traffic flow
JP2003110604A (ja) * 2001-10-02 2003-04-11 Nippon Telegr & Teleph Corp <Ntt> クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法
US20040243703A1 (en) * 2003-04-14 2004-12-02 Nbt Technology, Inc. Cooperative proxy auto-discovery and connection interception
JP2005027304A (ja) * 2003-06-30 2005-01-27 Microsoft Corp 接続操作を用いるネットワーク負荷分散
US20050060426A1 (en) * 2003-07-29 2005-03-17 Samuels Allen R. Early generation of acknowledgements for flow control

Also Published As

Publication number Publication date
AU2006227302A1 (en) 2006-09-28
JP2008536369A (ja) 2008-09-04
US8140690B2 (en) 2012-03-20
AU2006227302B2 (en) 2012-06-28
US20120166661A1 (en) 2012-06-28
IL185954A0 (en) 2008-01-06
EP1861793A4 (en) 2013-05-01
US20090094371A1 (en) 2009-04-09
WO2006102196A2 (en) 2006-09-28
US8386637B2 (en) 2013-02-26
WO2006102196A3 (en) 2008-02-07
US20060248194A1 (en) 2006-11-02
US20130145036A1 (en) 2013-06-06
EP1861793A2 (en) 2007-12-05

Similar Documents

Publication Publication Date Title
JP4902635B2 (ja) 接続転送
EP3207667B1 (en) System and method for distributed flow state p2p setup in virtual networks
EP1234246B1 (en) System and method for network access without reconfiguration
US9705799B2 (en) Server-side load balancing using parent-child link aggregation groups
US10110641B2 (en) Establishing a data transfer connection
US7363347B2 (en) Method and system for reestablishing connection information on a switch connected to plural servers in a computer network
US7336682B2 (en) Network architecture and methods for transparent on-line cross-sessional encoding and transport of network communications data
US7461128B2 (en) Method, apparatus and system for processing message bundles on a network
US20030229809A1 (en) Transparent proxy server
US20030167346A1 (en) Port aggregation for network connections that are offloaded to network interface devices
US20040044778A1 (en) Accessing an entity inside a private network
TW200924462A (en) System and method for connection of hosts behind NATs
US7290050B1 (en) Transparent load balancer for network connections
EP1735941A2 (en) Method and system for providing web browsing through a firewall in a peer to peer network
US11888818B2 (en) Multi-access interface for internet protocol security
CA2968964A1 (en) Source ip address transparency systems and methods
US7564848B2 (en) Method for the establishing of connections in a communication system
US10361997B2 (en) Auto discovery between proxies in an IPv6 network
Rawat et al. Post-quantum DNSSEC over UDP via QNAME-Based Fragmentation
CN115361337B (zh) 一种基于通信路由和星型网络的通信方法及系统
US11616716B1 (en) Connection ownership gossip for network packet re-routing
FI111890B (fi) Menetelmä verkkoliikenteen optimointiin

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100913

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101028

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110314

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111013

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111026

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20111118

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111228

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150113

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees