(57)【要約】同じLANおよびWANに接続された2台またはそれ以上のネットワークトラフィックプロセッサーを近隣として規定する。近隣のネットワークトラフィックプロセッサーは、非対称のルーティングを克服するために協同し、それによって、ネットワークトラフィックの関連するシーケンスが同じネットワークプロキシによって処理されることを保証する。ネットワークプロキシは、ネットワークトラフィックプロセッサーに含まれることも、またはスタンドアロン型ユニットであることも可能である。クライアントによる新しい接続開始を捕捉するネットワークトラフィックプロセッサーは、その接続に関連するすべてのメッセージを扱うためにネットワークプロキシを割当てる。ネットワークトラフィックプロセッサーは、近隣のネットワークトラフィックプロセッサーに接続情報を伝達する。近隣のネットワークトラフィックプロセッサーは、接続情報を用いて、該接続に関連するネットワークトラフィックを割当てられたネットワークプロキシにリダイレクトし、それによって、非対称ルーティングの影響を克服する。割当てられたネットワークプロキシは、それが直接受信したネットワークトラフィックを扱うのとほとんど同じ方式で、リダイレクトされたネットワークトラフィックを処理する。2008536369.tif 000003
2008536369.tif 000002
【特許請求の範囲】
【請求項１】
以下を含む、システム：
ローカルネットワークと広域ネットワークの間に接続された第1のユニットであって、クライアントからの少なくとも最初のメッセージを受信することに適合され、かつ最初のメッセージに関連する次のメッセージを処理するためのネットワークプロキシを選択すること、および、最初のメッセージおよび最初のメッセージに関連する次のメッセージを同定して、選択されたネットワークプロキシにリダイレクトする接続情報を作成することに適合されたロジックを含む、第1のユニット；ならびに
ローカルネットワークと広域ネットワークの間に接続された第2のユニットであって、メッセージを受信することに適合された、第2のユニット；
ここで、第1のユニットは、第2のユニットに接続情報を通信することに適合されたロジックを含み、
第2のユニットは、接続情報を用いて、受信メッセージが最初のメッセージに関連するかどうかを判定すること、および、受信メッセージが最初のメッセージに関連するという決定に応じて、処理用に選択されたネットワークプロキシに受信メッセージをリダイレクトすることに適合されたロジックを含む。
【請求項２】
第1のユニットおよび第2のユニットが、ローカルネットワークを介してクライアントに接続されている、請求項1記載のシステム。
【請求項３】
第1のユニットおよび第2のユニットが、広域ネットワークを介してクライアントに接続されている、請求項1記載のシステム。
【請求項４】
第1のユニットが、選択されたネットワークプロキシを含む、請求項1記載のシステム。
【請求項５】
選択されたネットワークプロキシが、ローカルネットワークを介して第1のユニットに接続されている、請求項1記載のシステム。
【請求項６】
第2のユニットが、受信メッセージの宛先アドレスを改変することにより受信メッセージをリダイレクトすることに適合されている、請求項1記載のシステム。
【請求項７】
第2のユニットが、受信メッセージの少なくとも一部分をカプセル化するためのトンネリングプロトコルを用いて、受信メッセージをリダイレクトすることに適合されている、請求項1記載のシステム。
【請求項８】
第1のユニットが、接続情報を保存することに適合され、かつ第1のユニットが、接続情報を用いて、次の受信メッセージが最初のメッセージに関連するかどうかを判定すること、および、受信メッセージが最初のメッセージに関連するという決定に応じて処理用に選択されたネットワークプロキシに受信メッセージをリダイレクトすることに適合されたロジックを含む、請求項1記載のシステム。
【請求項９】
選択されたネットワークプロキシが、対応するネットワークプロキシと関連づけすることに適合され、該関連は、広域ネットワークにわたってメッセージの通信を促進することに適合されている、請求項1記載のシステム。
【請求項１０】
選択されたネットワークプロキシが、受信メッセージを処理して変換されたメッセージを作成するのに適合され、該変換されたメッセージは、対応するネットワークプロキシが以前に受信したメッセージと等価である、請求項9記載のシステム。
【請求項１１】
選択されたネットワークプロキシが、受信メッセージを処理して変換されたメッセージを作成するのに適合され、該変換されたメッセージは、広域ネットワークにわたる通信用に最適化される、請求項9記載のシステム。
【請求項１２】
ローカルネットワークを通過したネットワークトラフィックを受信することに適合された第1のインターフェース；
広域ネットワークを通過したネットワークトラフィックを受信することに適合された第2のインターフェース；
第1のクライアントの最初のメッセージに関連するネットワークトラフィックを同定する情報およびネットワークプロキシを特定する情報を含む接続情報を、追加の装置から受信することに適合されたロジック；
接続情報を利用して、最初のメッセージに関連するネットワークトラフィックを同定することに適合されたロジック；ならびに
接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合されたロジック
を含む、ネットワークトラフィックを管理するための装置。
【請求項１３】
第1または第2のインターフェース経由で受信したネットワークトラフィック中の、第2のクライアントからの最初のメッセージを同定することに適合されたロジック；
第2のクライアントの最初のメッセージに関連する次のメッセージを処理するためのネットワークプロキシを選択することに適合されたロジック；
第2のクライアントの最初のメッセージに関連するネットワークトラフィック用の接続情報を作成することに適合されたロジックであって、接続情報が、第2のクライアントの最初のメッセージに関連するネットワークトラフィックを同定する情報、および選択されたネットワークプロキシを特定する情報を含む、ロジック；ならびに
少なくとも1台の追加の装置に接続情報を通信することに適合されたロジック
をさらに含む、請求項12記載の装置。
【請求項１４】
選択されたネットワークプロキシ；
少なくとも1台の追加の装置により選択されたネットワークプロキシにリダイレクトされたネットワークトラフィックを受信することに適合されたロジック；
選択されたネットワークプロキシへと少なくとも1台の追加の装置によりリダイレクトされたネットワークトラフィックを提供することに適合されたロジック
をさらに含む、請求項13記載の装置。
【請求項１５】
選択されたネットワークプロキシが、第2のクライアントの最初のメッセージに関連するネットワークトラフィック用の第2のネットワークプロキシと関連づけするのに適合され、該関連は、第2のクライアントの最初のメッセージに関連するネットワークトラフィックの、広域ネットワークにわたる通信を促進することに適合されている、請求項14記載の装置。
【請求項１６】
選択されたネットワークプロキシが、第2のクライアントの最初のメッセージに関連するネットワークトラフィックを変換することに適合され、該変換されたネットワークトラフィックは、以前に第2のネットワークプロキシが受信したネットワークトラフィックと等価である、請求項15記載の装置。
【請求項１７】
第1のインターフェース経由で第2のクライアントからの最初のメッセージを受信することに適合されている、請求項13記載の装置。
【請求項１８】
第2のインターフェース経由で第2のクライアントからの最初のメッセージを受信することに適合されている、請求項13記載の装置。
【請求項１９】
接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合されたロジックが、同定されたネットワークトラフィックの宛先アドレスを、接続情報によって提供されるネットワークプロキシのアドレスに改変することに適合されたロジックを含む、請求項12記載の装置。
【請求項２０】
接続情報を利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシにリダイレクトすることに適合されたロジックが、トンネリングプロトコルを利用して、同定されたネットワークトラフィックを、接続情報によって特定されたネットワークプロキシに通信することに適合されたロジックを含む、請求項12記載の装置。
【請求項２１】
トランザクションが、クライアントからサーバへのクライアント要求を形成する一つまたは複数のメッセージ、および該サーバから該クライアントに対するサーバ応答を形成する一つまたは複数のメッセージを含み、クライアントからの少なくとも一つのメッセージが、該クライアントから所有プロキシ経由で該サーバへと伝達される、トランザクションを含むメッセージを相互に伝達するためにクライアントとサーバによって使用可能なネットワークにおける、トランザクションのすべての必要部分に所有プロキシがアクセスすることを保証するシステムであって、所有プロキシが、そのようなアクセスを予想するためにプログラムされたプロキシである、以下を含むシステム：
接続状態を維持するための所有プロキシ中のロジック；
近隣プロキシに接続状態情報を伝達するための所有プロキシ中のロジックであって、接続状態情報が、所有プロキシにより所有された少なくとも一つのトランザクションを示し、近隣プロキシが、所有プロキシに向けられてはいないが所有プロキシによって所有されるトランザクションの一部としてメッセージを受信することができる、または受信すると予想されるプロキシである、ロジック；ならびに
トランザクション所有権を追跡するためのロジック、および、追跡されたトランザクション所有権情報によって示された場合にメッセージを所有プロキシへ転送するためのロジックを備えた、少なくとも一つの近隣プロキシ。
【請求項２２】
所有プロキシが、ネットワークのローカルエリア部分を介して少なくとも一つのクライアントに接続されているクライアント側プロキシである、請求項21記載のシステム。
【請求項２３】
所有プロキシが、ネットワークのローカルエリア部分を介して少なくとも一つのサーバに接続されているサーバ側プロキシである、請求項21記載のシステム。
【請求項２４】
所有プロキシへメッセージを転送するための近隣プロキシのロジックが、近隣プロキシによって受信されたメッセージの宛先アドレスを改変することに適合されている、請求項21記載のシステム。
【請求項２５】
所有プロキシへメッセージを転送するための近隣プロキシのロジックが、トンネリングプロトコルを用いて、近隣プロキシによって受信されたメッセージの少なくとも一部分をカプセル化することに適合されている、請求項21記載のシステム。
【請求項２６】
トランザクション所有権を追跡するためのロジックが、接続状態情報を保存することに適合されたロジック、および、近隣プロキシによって受信されたメッセージが接続状態情報によって示されたトランザクションに関連するかどうかを判定することに適合されたロジックを含む、請求項21記載のシステム。
【請求項２７】
所有プロキシと関連づけすることに適合された少なくとも一つの追加のプロキシをさらに含むシステムであって、該所有プロキシおよび該追加のプロキシは各々、少なくともネットワークの一部分にわたって該所有プロキシおよび該追加のプロキシを介したクライアントとサーバ間のメッセージの通信を促進することに適合されたロジックを含む、請求項21記載のシステム。
【請求項２８】
所有プロキシが、変換されたメッセージを作成するためにメッセージを処理することに適合しており、かつ、該変換されたメッセージは、以前に所有プロキシがクライアントから受信したメッセージと等価である、請求項27記載のシステム。
【請求項２９】
所有プロキシが、変換されたメッセージを作成するためにメッセージを処理することに適合しており、かつ、該変換されたメッセージは、以前に所有プロキシがサーバから受信したメッセージと等価である、請求項27記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
関連出願の相互参照
本出願は、2005年3月18日出願の米国仮特許出願第60/663,366号について優先権を主張し、その出願はすべての目的のために参照により本明細書に組み入れられる。本出願は、以降「McCanne I」として引用する、「Transaction Accelerator for Client-Server Communication Systems」と題する2002年10月30日出願の米国特許出願第10/285,315号（特許文献１）；および以降「McCanne IV」として引用する「Cooperative Proxy Auto-Discovery and Connection Interception」と題する2003年8月12日出願の米国特許出願第10/640,562号（特許文献２）に関連しており、これらのそれぞれは、すべての目的のために参照により本明細書に組み入れられる。
【０００２】
発明の背景
本発明は、データネットワークの分野、具体的にはネットワーク性能を改善するシステムおよび方法に関する。ネットワークプロキシおよび他の型のネットワーク装置を用いて、ネットワークデータをキャッシュまたは保存し、ネットワークトラフィックを加速し、またはさもなくば、クライアントとサーバ間のネットワークトラフィックを制御するまたは影響を与えることができる。
【０００３】
本明細書で用いられる「クライアント」とは一般に、データまたは挙動を要求するコンピュータ、計算装置、周辺装置、電子機器などを指し、一方「サーバ」とは一般に、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（非特許文献１）の「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で、所有者プロキシは、その相手方のプロキシと協同して、接続トラフィックへの最適化または変換を適用することを開始する。
【００５０】
図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は、本発明の態様による、例示的ネットワークおよび改善されたネットワークトラフィックの流れを図示する。
【図３】本発明の態様による、近隣ネットワーク接続によって維持される情報の例を示す。
【図４】本発明の態様による、新しい接続を開始する方法を示す。
【図５】本発明の態様による、接続に関連するネットワークトラフィックを処理する方法を図示する。
【図６】本発明の態様による追加のネットワーク600を示す。
【図１】
2008536369.tif 000004
【図２Ａ】
2008536369.tif 000005
【図２Ｂ】
2008536369.tif 000006
【図３】
2008536369.tif 000007
【図４】
2008536369.tif 000008
【図５】
2008536369.tif 000009
【図６】
2008536369.tif 000010
【国際調査報告】
2008536369.tif 000011