(57)【特許請求の範囲】
【請求項１】
アナウンスするピア（４０、４２、４４）からアナウンス・メッセージを受信するステップ（Ｓ１０２）であって、該アナウンス・メッセージは該アナウンスするピアのアドレス及び該アナウンスするピアが有するコンテンツを含んでいる、ステップと、
第１データベース（５３）を使用して、前記アナウンスするピアの前記アドレスと関連するインターネット・サービス・プロバイダ（ＩＳＰ）（２４、２６）を判定するステップ（Ｓ１０４）であって、該第１データベースはアドレスとＩＳＰを関連付ける、ステップと、
ネットワーク要素（４５）において、第２データベース（５２）内にピア情報を格納するステップ（Ｓ１０６）であって、前記ピア情報は、前記アナウンスするピアに関連する前記ＩＳＰおよび前記アナウンスするピアが有するコンテンツを示す、ステップと、
リクエスタ（４０ｄ）からコンテンツの要求を受信するステップ（Ｓ１１２）であって、該コンテンツの要求は該リクエスタ及び該リクエスタが要求したコンテンツのアドレスを含む、ステップと、
前記第１データベースを使用して、前記リクエスタのアドレスと関連するＩＳＰを判定するステップ（Ｓ１１４）と、
前記リクエスタへの応答を形成するステップであって、該形成するステップは、前記リクエスタのアドレスに関連する前記判定されたＩＳＰ、前記要求されたコンテンツ、及び前記判定されたＩＳＰの中で該要求されたコンテンツを有すると前記第２データベースによって示されたピアの数に基づいて形成する、ステップと、
前記リクエスタに前記応答を送信するステップ（Ｓ１１８、Ｓ１３０、Ｓ１３４）と
を含む、ピアツーピア要求を処理する方法。
【請求項２】
ピア（４０ａ、４０ｂ）が前記第２データベース（５２）内で前記要求されたコンテンツを含むことがわかる場合に、前記応答の一部として、前記ネットワーク要素（４５）は前記リクエスタ（４０ｄ）の前記ピア（４０ａ、４０ｂ）を識別し（Ｓ１３４）、該識別されたピアは前記リクエスタ（４０ｄ）に関連するＩＳＰ（２４）と同一のＩＳＰ（２４）であるＩＳＰ（２４）に関連する、請求項１に記載の方法。
【請求項３】
ピア（４２）が前記第２データベース（５２）内で前記要求されたコンテンツを含むことがわかり、前記リクエスタ（４０ｄ）に関連する前記ＩＳＰ（２４）と同一のＩＳＰ（２４）を有する識別されたピア（４０ａ、４０ｂ）の個数がしきい個数未満である場合に、前記応答の一部として、前記ネットワーク要素（４５）は、前記リクエスタ（４０ｄ）に関連する前記ＩＳＰ（２４）とは異なるＩＳＰ（２６）に関連するピア（４２）を識別し（Ｓ１２８）、前記ピア（４２）に関連する前記ＩＳＰ（２６）および前記リクエスタ（４０ｄ）に関連する前記ＩＳＰ（２４）が有益な関係を有する、請求項２に記載の方法。
【請求項４】
関心を持たれているＩＳＰ（２４、２６）に関連するピア（４０ａ、４０ｂ）によるコンテンツのアナウンスメントをブロックするステップ（Ｓ１０８）
をさらに含む、請求項１に記載の方法。
【請求項５】
アナウンスするピア（４０ａ、４０ｂ）がどのコンテンツを有するのかに関する前記アナウンスするピア（４０ａ、４０ｂ）からのアナウンスメントを監視するステップ（Ｓ１０２、Ｓ１０４）と、
前記アナウンスするピア（４０ａ、４０ｂ）、前記コンテンツ、および前記アナウンスするピア（４０ａ、４０ｂ）のＩＳＰ（２４）に関するデータを前記第２データベース（５２）に保存するステップ（Ｓ１０６）と
をさらに含む、請求項１に記載の方法。
【請求項６】
リクエスタからコンテンツの要求を検出するステップ（Ｓ１１２）であって、該要求は該リクエスタ及び該要求されたコンテンツのアドレスを含んでいる、ステップと、
第１データベースを使用して、前記リクエスタ（４０ｄ）の前記アドレスに関連するインターネット・サービス・プロバイダＩＳＰ（２４）を判定するステップ（Ｓ１１４）であって、該第１データベースはアドレスとＩＳＰを関連付ける、ステップと、
第２データベースにアクセスすることによって、前記リクエスタ（４０ｄ）に関連する前記ＩＳＰ（２４）が関心を持たれているＩＳＰ（２４、２６）であるかどうかを判定するステップ（Ｓ１１６）であって、該第２データベースはあるアドレスにおいて入手可能なコンテンツを示し、前記アドレスに関連する前記ＩＳＰ（２４）が関心をもたれているかどうか示す、ステップと、
前記リクエスタに関連する前記ＩＳＰが関心を持たれているＩＳＰで無い場合、前記第２データベースにアクセスすることによって、どのＩＳＰが前記要求されたコンテンツを有しており、且つ関心を持たれているＩＳＰでないのかを判定するステップと、
前記リクエスタ（４０ｄ）に関連する前記ＩＳＰ（２４）が関心を持たれているＩＳＰ（２４、２６）ではない場合に、前記第２データベースによって示された関心を持たれているＩＳＰ（２４、２６）に関連するピア（４０、４２）への前記要求をブロックするステップ（Ｓ１１７）と、
前記リクエスタ（４０ｄ）に関連する前記ＩＳＰが関心を持たれているＩＳＰ（２４、２６）ではない場合に、第２データベースにアクセスすることによって得られた情報であり、前記要求されたコンテンツを有し、関心を持たれているＩＳＰ（２４、２６）に関連しないピア（４４）に関する情報を送信することによって、前記要求に応答するステップ（Ｓ１１８）と
を含む、ピアツーピア要求を処理する方法。
【請求項７】
前記リクエスタ（４０ｄ）に関連する前記ＩＳＰ（２４）が関心を持たれているＩＳＰ（２４、２６）である場合に、
前記要求されたコンテンツを有し、関心を持たれているＩＳＰ（２４、２６）に関連するピア（４０、４２）を前記第２データベース（５２）内で識別するステップ（Ｓ１２０）と、
前記識別するステップで識別されたピア（４０、４２）の個数がしきい個数を超えるかどうかを判定するステップ（Ｓ１２６）と、
前記識別するステップで識別されたピア（４０、４２）の前記個数がしきい個数を超える場合に前記要求を所期の宛先からブロックするステップ（Ｓ１３２）と、
前記識別するステップで識別されたピア（４０、４２）に関する情報を用いて応答するステップ（Ｓ１３４）と
をさらに含む、請求項６に記載の方法。
【請求項８】
前記識別するステップで識別されたピア（４０、４２）に優先順位を付けるステップ（Ｓ１２２）
をさらに含む、請求項７に記載の方法。
【請求項９】
前記識別するステップで識別されたピア（４０、４２）の前記個数が前記しきい個数を超える場合に、前記識別するステップで識別された前記しきい個数の最高優先順位のピア（４０、４２）に関する情報を送信するステップ（Ｓ１３４）
をさらに含む、請求項８に記載の方法。
【請求項１０】
前記識別するステップで識別されたピア（４０、４２）の前記個数が前記しきい個数未満である場合に、
前記要求に対する応答をインターセプトするステップ（Ｓ１２８）と、
前記識別するステップで識別されたピア（４０、４２）に関する情報を追加することと、関心を持たれているＩＳＰ（２４、２６）に関連しないピア（４４）に関する情報を前記応答から除去することとによって前記応答を変更するステップ（Ｓ１２８）と、
前記変更された応答を送信するステップ（Ｓ１３０）と
をさらに含む、請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の分野は、ピアツーピア・ファイル共有ネットワークおよびピアツーピア・トラフィックを局所化する方法に関する。
【背景技術】
【０００２】
いくつかのバージョンのピアツーピア・ファイル共有ネットワークは、ネットワーク内の使用可能なコンテンツのすべてをリストするために、集中化されたコンピュータまたはネットワーク要素のネットワークに頼る。他のピアツーピア・ファイル共有ネットワークは、ネットワーク上で使用可能なコンテンツのすべてをリストするために、集中化されたコンポーネントに頼らない。そうではなく、コンテンツ自体が配布される時に、ディレクトリが配布される。すべての参加するクライアントに関するディレクトリ・データベースを配布するのに使用される技法を、時々、分散ハッシュ・テーブル（ＤＨＴ）と称する。
【０００３】
ネットワークが、集中化タイプ・ネットワークまたはＤＨＴを使用するネットワークのいずれであれ、ピアは、そこからコンテンツが共有されるピアの場所にかかわりなく、あるピアから別のピアへコンテンツをダウンロードする。その結果、あるピアが、別のピアのコンピュータに含まれるファイルを要求する場合に、そのファイルを含むコンピュータが、ファイルを要求するピアから遠く離れて配置される場合があり、これが、ファイル転送遅延だけではなく、ピアの間のリンクが１つまたは複数のインターネット・サービス・プロバイダ（ＩＳＰ）を通過しなければならないので高められたコストをももたらす。したがって、そのようなピアツーピア・タイプの接続は、ＩＳＰを一緒にリンクするトランジット・リンク（ｔｒａｎｓｉｔ  ｌｉｎｋ）上の大量のトラフィックを作成し、これによってネットワーク・オペレータに対するコストを増やす可能性がある。
【０００４】
たとえば、人気のあるコンテンツ・ファイルがあり、自分のコンピュータ上にこのファイルを有するユーザが世界中に１００００人いると仮定する。この１００００人のユーザのうちの５０人が、所与のＩＳＰ「Ａ」内に位置する可能性があると仮定する。ＩＳＰ「Ａ」内のピアが、その人気のあるファイルに関心を持ち、そのファイルをそこからダウンロードすべき５０個のランダムなピアについて、集中化ディレクトリまたはＤＨＴタイプ・ディレクトリのいずれかのディレクトリを要求すると仮定する。その場合に、ＩＳＰ「Ａ」内の単一のピアを見つける可能性は、０．５％である。そのファイルを有する５０個のピアが、要求するピアにランダムに識別される場合には、５０個すべてのピアがＩＳＰ「Ａ」内にある可能性は、０に近い。
【０００５】
そのようなシナリオでは、そのファイルを要求するピアと同一のＩＳＰ内に十分な量のピアがあるが、ピアは、要求するピアのＩＳＰの外部に位置するピアからそのファイルを受信することになるであろう。これは、ＩＳＰの間のトランジット・リンク上の不必要なトラフィックを必要とする。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ｍｏｒｉｔｚ  Ｓｔｅｉｎｅｒ、「Ｓｔｒｕｃｔｕｒｅｓ  ａｎｄ  Ａｌｇｏｒｉｔｈｍｓ  ｆｏｒ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ  Ｃｏｏｐｅｒａｔｉｏｎ」、博士論文、Ｅｕｒｅｃｏｍ  ａｎｄ  Ｕｎｉｖｅｒｓｉｔｙ  ｏｆ  Ｍａｎｎｈｅｉｍ、２００８年
【非特許文献２】Ｓｔｅｉｎｅｒ、Ｅｎ−Ｎａｊｊａｒｙ、およびＢｉｅｒｓａｃｋ「Ｅｘｐｌｏｉｔｉｎｇ  ＫＡＤ：Ｐｏｓｓｉｂｌｅ  Ｕｓｅｓ  ａｎｄ  Ｍｉｓｕｓｅｓ」、Ｃｏｍｐｕｔｅｒ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｒｅｖｉｅｗ、３７（５）、２００７年１０月、６５〜６９ページ
【発明の概要】
【課題を解決するための手段】
【０００７】
本発明の実施形態は、ピアツーピア要求を処理する方法および装置に関する。
【０００８】
一実施形態では、方法は、ネットワーク要素で、複数のピアの各ピアごとにデータベース内にピア情報を格納するステップを含む。ピア情報は、ピアに関連する少なくとも１つのＩＳＰおよびピアによって含まれるコンテンツを示す。この方法は、リクエスタからコンテンツの要求を受信するステップと、リクエスタが関連するＩＳＰおよび格納されたピア情報に基づいてコンテンツ・リクエスタに応答を送信するステップとをさらに含む。
【０００９】
もう１つの実施形態は、マイクロプロセッサと、マイクロプロセッサに動作可能に接続されたデータベースと、マイクロプロセッサおよびデータベースをインターネットに動作可能に接続するように構成されたインターネットへの接続とを有するコンピュータを含む。さらに、このコンピュータは、複数のピアの各ピアごとにデータベース内にピア情報を格納するように構成される。ピア情報は、ピアに関連する少なくとも１つのＩＳＰおよびピアによって含まれるコンテンツを示す。このコンピュータは、リクエスタからコンテンツの要求を受信し、リクエスタが関連するＩＳＰおよび格納されたピア情報に基づいてコンテンツ・リクエスタに応答を送信するようにさらに構成される。
【００１０】
もう１つの実施形態は、コンテンツの要求を検出するステップを含む、ピアツーピア要求を処理する方法を含む。この方法は、リクエスタに関連するＩＳＰを判定するステップと、リクエスタに関連するＩＳＰが関心を持たれているＩＳＰであるかどうかを判定するステップと、リクエスタに関連するＩＳＰが関心を持たれているＩＳＰではない場合に、関心を持たれているＩＳＰに関連するピアへの要求をブロックするステップとをさらに含む。この方法は、リクエスタに関連するＩＳＰが関心を持たれているＩＳＰではない場合に、要求されたコンテンツを有し、関心を持たれているＩＳＰに関連しないピアに関する情報を送信することによって要求に応答するステップをさらに含む。
【００１１】
本発明は、下で与えられる詳細な説明および添付図面からより十分に理解されるようになり、詳細な説明および添付図面は、例示のみのために与えられ、したがって、本発明を限定しない。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態による集中化コンポーネントを有するピアツーピア・ファイル共有ネットワークを示す概略図である。
【図２】本発明の実施形態によるＤＨＴを利用するピアツーピア・ファイル共有ネットワークを示す概略図である。
【図３】ファイル共有ネットワークと通信するコンピュータのさまざまなコンポーネントを示す、本発明の実施形態によるファイル共有ネットワークを示す概略図である。
【図４】一実施形態によるネットワーク内のピアによるコンテンツのアナウンスメントに応答してデータベース内にピア情報を収集する方法を示す流れ図である。
【図５】一実施形態によるコンテンツの要求を処理する方法を示す流れ図である。
【図６】ファイル共有ネットワーク内のピアによるコンテンツのアナウンスメントおよび要求を表す概略図である。
【発明を実施するための形態】
【００１３】
さまざまな例の実施形態を、これから、いくつかの例の実施形態が図示された添付図面を参照してより十分に説明する。
【００１４】
例の実施形態を詳細に議論する前に、いくつかの例の実施形態が、流れ図として示されるプロセスまたは方法として説明されることに留意されたい。流れ図は、順次プロセスとして動作を説明するが、動作の多くを、並行して、並列に、または同時に実行することができる。さらに、動作の順序を再配置することができる。プロセス動作が完了する時にプロセスを終了することができるが、プロセスが、図に含まれない追加のステップを有することもできる。プロセスは、メソッド、関数、手続き、サブルーチン、サブプログラムなどに対応することができる。
【００１５】
下で議論される方法は、その一部が流れ図によって示されるが、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはその任意の組合せによって実施され得る。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実施される時に、必要なタスクを実行するためのプログラム・コードまたはコード・セグメントを、記憶媒体などの機械可読媒体またはコンピュータ可読媒体に格納することができる。プロセッサ（１つまたは複数）は、必要なタスクを実行することができる。
【００１６】
本明細書で開示される特定の構造的詳細および機能的詳細は、本発明の例の実施形態を説明するための代表にすぎない。しかし、本発明を、多数の代替の形で実施することができ、本明細書で示される実施形態だけに限定されると解釈してはならない。
【００１７】
したがって、本発明の例の実施形態は、さまざまな変更および代替形態が可能であるが、その実施形態が、例として図面に示され、本明細書で詳細に説明される。しかし、本発明の例の実施形態を開示される特定の形態に限定する意図はなく、逆に、本発明の例の実施形態は、本発明の範囲に含まれるすべての修正形態、同等物、および代替形態を含まなければならない。本明細書で使用される時に、用語「および／または」は、関連するリストされた項目のうちの１つまたは複数の任意のおよびすべての組合せを含む。
【００１８】
本明細書で使用される用語法は、特定の実施形態を説明するためのみのものであって、本発明の例の実施形態を限定することは意図されていない。本明細書で使用される時に、単数形「ａ」、「ａｎ」、および「ｔｈｅ」は、文脈がそうではないことを明らかに示さない限り、複数形をも含むことが意図されている。さらに、用語「ｃｏｍｐｒｉｓｅｓ（含む）」、「ｃｏｍｐｒｉｓｉｎｇ」、「ｉｎｃｌｕｄｅｓ（含む）」、および／または「ｉｎｃｌｕｄｉｎｇ」は、本明細書で使用される時に、述べられた特徴、整数、ステップ、動作、要素、および／またはコンポーネントの存在を指定するが、１つまたは複数の他の特徴、整数、ステップ、動作、要素、コンポーネント、および／またはその群の存在または追加を除外しないことを理解されたい。
【００１９】
いくつかの代替実施態様で、記された機能／行為が、図に記された順序から外れて発生してもよいことにも留意されたい。たとえば、用いられる機能性／行為に応じて、連続して示された２つの図を、実際に、実質的に同時に実行してもよく、あるいは、時々、逆の順序で実行してもよい。
【００２０】
そうではないと定義されない限り、本明細書で使用されるすべての用語（技術用語および科学用語を含む）は、例の実施形態が属する技術における通常の技量を有するものによって一般に理解されるものと同一の意味を有する。さらに、用語、たとえば一般に使用される辞書で定義される用語は、関連技術の文脈での意味と一貫する意味を有すると解釈されなければならず、本明細書で特にそのように定義されない限り、理想化された意味または過度に形式的な意味では解釈されないことを理解されたい。
【００２１】
本発明の諸部分および対応する詳細な記述は、ソフトウェアすなわち、コンピュータ・メモリ内のデータ・ビットに対する動作のアルゴリズムおよび記号表現に関して提示される。これらの記述および表現は、当業者がそれによって彼らの作業の実質を他の当業者に効率的に伝える記述および表現である。アルゴリズムは、この用語が本明細書で使用される時に、および一般に使用される時に、所望の結果につながるステップの自己完結的シーケンスと考えられる。ステップは、物理的量の物理的操作を必要とするステップである。必ずではないが通常、これらの量は、格納、転送、組合せ、比較、および他の操作が可能な光信号、電気信号、または磁気信号の形をとる。時々、主に一般的な使用の理由から、これらの信号をビット、値、要素、記号、文字、項、数、または類似物と呼ぶことが便利であることがわかっている。
【００２２】
次の説明では、例示的実施形態を、プログラム・モジュールとして実施できる行為および動作の記号表現（たとえば、流れ図の形の）を参照して説明し、あるいは、機能プロセスは、特定のタスクを実行するか特定の抽象データ型を実施し、既存ネットワーク要素または制御ノードの既存ハードウェア（たとえば、基地局またはＮｏｄｅ  Ｂに配置されたスケジューラ）を使用して実施できる、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。そのような既存ハードウェアは、１つまたは複数の中央制御装置（ＣＰＵ）、ディジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）コンピュータ、または類似物を含むことができる。
【００２３】
しかし、上記および類似する用語のすべてが、適切な物理的量に関連付けられなければならず、単にこれらの量に適用される便利なラベルであることに留意されたい。そうではないと具体的に述べられない限り、または議論から明白であるように、「ｐｒｏｃｅｓｓｉｎｇ（処理）」、「ｃｏｍｐｕｔｉｎｇ（コンピューティング）」、「ｃａｌｃｕｌａｔｉｎｇ（計算）」、もしくは「ｄｉｓｐｌａｙｉｎｇ（表示）」の「ｄｅｔｅｒｍｉｎｉｎｇ（判定）」または類似物などの用語は、コンピュータ・システムのレジスタおよびメモリ内の物理的電子量として表されたデータを操作し、コンピュータ・システム・メモリもしくはレジスタまたは他のそのような情報記憶デバイス、情報伝送デバイス、もしくは情報表示デバイス内の物理的量として同様に表された他のデータに変換する、コンピュータ・システムまたは類似する電子コンピューティング・デバイスのアクションおよびプロセスを指す。
【００２４】
例の実施形態が、これから説明され、同様の符号は、終始同様の部分を指す。
【００２５】
図１に、集中化ピアツーピア・システム１０の概略図を示す。集中化ピアツーピア・システム１０は、ピア１２とも称するコンピュータ１２と、中央コンピュータ１４とを含む。ピア１２は、接続１６を介して中央コンピュータ１４に接続される。接続１６は、無線接続、インターネット接続、イーサネット接続、または任意の適切な接続ハードウェアもしくは接続方法の組合せなど、任意の適切な接続とすることができる。複数の例をリストしたが、本発明による実施形態は、上でリストした例に限定されない。
【００２６】
ピアツーピア・システム１０は、４つのピア１２および単一の中央コンピュータ１４だけを示すが、ピアツーピア・アイステムが、図示のピア１２の個数および単一の中央コンピュータ１４の中央ネットワーク・コンポーネントに限定されないことを理解されたい。実際に、ピアツーピア・システム１０は、より多くのピア１２を含むことができ、多数のコンピュータ、サーバ、または他のコンポーネントが、図示の中央コンピュータ１４のタスクを達成することができる。
【００２７】
図１に示された集中化ピアツーピア・システム１０では、ピア１２がコンテンツまたはファイルを要求する時に、その要求は、接続１６を介して集中化コンピュータ１４に送信される。要求の送信は、ピアツーピア・ネットワークで周知である。要求の送信を、本発明に従って任意の適切な形で行うことができる。
【００２８】
集中化コンピュータ１４は、どのピア１２が要求されたコンテンツを有するのかを判定し、どのピア１２が要求されたコンテンツを有するのかに関する情報を用いて要求に応答することができる。集中化コンピュータ１４は、要求されたコンテンツを有する複数のピア１２を識別し、複数の識別されたピア１２に関する情報を用いて応答することができる。１つまたは複数のピア１２が識別された後に、要求するピアは、識別されたピアのうちの１つから要求されたファイルを受信することができる。
【００２９】
本発明のいくつかの実施形態によれば、集中化コンピュータ１４は、トランジット・リンクを介して送信される大量のデータを減らすために、要求されたコンテンツを含む可能性がある多数のピア１２の中で、要求するピアに識別されなければならないピア１２の判定を行うことができる。この判断を、ピアツーピア・トラフィックを局所化するために行うことができる。この判定を、後で下でより詳細に説明する。
【００３０】
図２は、本発明のもう１つの実施形態によるピアツーピア・ネットワーク１８の概略図である。図２に示されたピアツーピア・ネットワーク１８には、集中化コンピュータ１４がない。図示されてはいないが、ピア４０が、接続によってお互いに接続されることを理解されたい。
【００３１】
図２に、ピアツーピア・ファイル共有ネットワーク１８を示す。図２のネットワーク１８は、ネットワーク・コンテンツをリストするために集中化コンポーネント１４に頼るのではなく、ディレクトリ・データベースをすべての参加するクライアントに配布するのに分散ハッシュ・テーブル（ＤＨＴ）１９を使用する。ＤＨＴ  １９は、図２では、ネットワーク１８のすべての態様を一緒に接続する破線として表されている。ファイル共有ネットワーク１８は、第１インターネット・サービス・プロバイダ（ＩＳＰ）２４および第２ＩＳＰ  ２６を含む。
【００３２】
ＩＳＰ  ２４内には、さまざまなクライアントがあり、これらのクライアントを、ピアまたはユーザ４０と称する場合もある。さまざまなクライアント、ピア、またはユーザは、符号の後に文字を追加することによって、同一ＩＳＰ上の他のピアの中で区別される。第２ＩＳＰ  ２６も、さまざまなピア４２を有して図示されている。第１ＩＳＰ  ２４および第２ＩＳＰ  ２６を、ピアリング・リンク２８を介して一緒に接続することができる。ＩＳＰ  ２４およびＩＳＰ  ２６が、しばしばお互いと通信する可能性があり、したがって、ピアリング・リンク２８は、より高い容量を有する可能性があり、あるいは、契約または特殊な接続がない場合にＩＳＰ  ２４をＩＳＰ  ２６にリンクするはずの一般的なトランジット・リンクより低いコストで動作できる可能性がある。たとえば、２つのＩＳＰが、お互いに好ましい扱いを与え、お互いを好ましいＩＳＰとして認識する契約を結ぶ場合がある。そのような契約は、お互いに通信するＩＳＰのそれぞれからのピアに関連する下げられた料金を可能にすることができる。
【００３３】
インターネット全体２２が、図２に示されている。ＩＳＰ  ２４を、トランジット・リンク３０によってインターネット全体に接続することができる。トランジット・リンク３０は、ＩＳＰ  ２６をインターネット全体２２に接続することもできる。インターネット全体２２上に配置されたピアは、符号４４によって識別される。ピア４０および４２と同様に、インターネット全体２２上のピア４４は、少なくとも１つのＩＳＰに関連する。しかし、インターネット全体２２上のピア４４に関連するＩＳＰは、図示されていない。
【００３４】
異なるＩＳＰ  ２４、２６に関連するピア４０、４２、４４の間でファイルを共有するのに必要なリソース（たとえば、ピアリング・リンク２８またはトランジット・リンク３０）の量に起因して、可能な時には必ず、異なるＩＳＰ上に配置されたピアの間でファイルを共有するのではなく、特定のＩＳＰ内のピアにお互いの間でファイルを共有させることが好ましい可能性がある。
【００３５】
矢印３２は、ピア４０ａ、４０ｂ、および４０ｄがお互いの間でファイルを共有する、ファイル共有の好ましい形を示す。ピア４０ａ、４０ｂ、および４０ｄのすべてが、ＩＳＰ  ２４上に配置されている。ＩＳＰ  ２４内に配置されたピア４０が、やはりＩＳＰ  ２４上に配置されたどのピアにも含まれないファイルを要求する状況が展開される場合がある。したがって、要求されたコンテンツを入手するために、ピア４０は、ＩＳＰ  ２６内またはインターネット全体２２内のいずれかに配置されたユーザからコンテンツを入手しなければならない。ＩＳＰ  ２４およびＩＳＰ  ２６は、それらを接続するピアリング・リンク２８を有する。ピアリング・リンク２８は、動作がより安価である場合があり、かつ／またはＩＳＰ  ２４のオペレータとＩＳＰ  ２６のオペレータとの間に契約がある場合がある。したがって、ＩＳＰ  ２４上に配置されたピア４０ｄがそれ自体のＩＳＰ  ２４上のピア４０ａまたは４０ｂからコンテンツを受信しない時には、コンテンツをインターネット全体２２上に配置されたピア４４からコンテンツを受信することと比較して、ピア４０ｄに、ＩＳＰ  ２６上に配置されたピア４２からコンテンツを受信させることが望ましい可能性がある。矢印３４は、ピア４０ｄがＩＳＰ  ２６上に配置されたピア４２からコンテンツを受信することを示す。
【００３６】
最も少なく好ましい状況では、ピア４０ｄは、ＩＳＰ  ２４内またはＩＳＰ  ２６内に配置されたどのユーザまたはピアでも入手可能ではないコンテンツを要求している。したがって、コンテンツに関するこの要求を満足するために、トランジット・リンク３０が、インターネット全体２２上に配置されたユーザ４４からコンテンツを入手するために利用される。矢印３６は、ピア４０ｄがトランジット・リンクを介してインターネット全体２２上のピア４４からコンテンツを入手する、この最も少なく好ましい状況を示す。
【００３７】
図３は、さまざまなＩＳＰ  ２４、２６、インターネット全体２２、およびネットワーク・コンポーネント（コンピュータまたはネットワーク要素と称する場合もある）を示す概略図である。ネットワーク要素４５を、図示され、図１に関して上で議論した集中化コンポーネント１４の一部とすることができる。集中化コンポーネント１４を有するのではなくＤＨＴ  １９を使用するファイル共有ネットワーク１８などの他のピアツーピア・ファイル共有ネットワークでは、コンピュータまたはネットワーク要素４５を、ファイル共有ネットワーク全体に分散させることができる。その代わりに、ネットワーク要素４５を、単に、接続４６を介してさまざまなＩＳＰ  ２４および２６ならびにインターネット全体２２に接続することができる。
【００３８】
本発明によるいくつかの実施形態では、ネットワーク要素４５は、１つまたはさまざまな位置のコンピュータ・ファームに集められる。図３に示されているように、ネットワーク要素４５は、接続５０を介してデータベース５２に接続された１つまたは複数のマイクロプロセッサ４８を含むことができる。ディープ・パケット・インスペクション（Ｄｅｅｐ  Ｐａｃｋｅｔ  Ｉｎｓｐｅｃｔｉｏｎ、ＤＰＩ）を介してピアツーピア通信を監視するように構成されたシステムでは、ネットワーク要素４５は、ＤＰＩハードウェア６０を含むことができる。ＤＰＩハードウェア６０は、ＤＰＩを実行する、任意の既知の入手可能なハードウェアとすることができる。ネットワーク要素４５を、接続５５を介して別のデータベース５３に動作可能に接続することもできる。データベース５３を、検索可能とし、後で下でより詳細に説明するように、どのＩＳＰが所与のピアに関連するのかなどの情報をネットワーク要素４５に提供できるものとすることができる。
【００３９】
本発明のいくつかの実施形態では、ネットワーク要素４５を、ネットワークに接続された、既に存在するシステム・コンポーネントとすることができる。既存のネットワーク要素４５を、本明細書で説明される機能を実行するようにプログラムすることができる。たとえば、集中化コンポーネント１４を有するネットワーク１０（図１に図示）を、本明細書で説明される機能を実行するようにプログラムすることができる。また、集中化コンポーネント１４を使用しない他のネットワーク１８も、本明細書で説明される機能を実行するようにプログラムされた既存のネットワーク・コンポーネントを有することができる。他の実施形態では、ネットワーク要素４５を、ネットワークに追加し（既存のネットワーク・コンポーネントではなく）、本明細書で説明される機能を実行するように構成することができる。
【００４０】
本発明の実施形態によるネットワークのさまざまなコンポーネントによって実行される機能およびステップを、これから図４および５に示された流れ図を参照して説明する。
【００４１】
図４に、一実施形態によるデータベース内にピア情報を収集する方法の流れ図を示す。ステップＳ１０２では、ネットワーク要素４５が、ＩＳＰ  ２４、２６またはインターネット全体２２に関連するピア４０、４２、または４４によって行われるコンテンツのアナウンスメントを検出する。コンテンツのアナウンスは、ピアツーピア・ファイル共有ネットワークで周知である。たとえば、ピアを、そのピアが含み、進んで共有するコンテンツのメッセージをネットワークに周期的に送信するように構成することができる。ピアが送信できる情報は、ピアのＩＤまたはアドレスを含むこともできる。
【００４２】
ネットワーク要素４５（図３を参照されたい）が情報を収集でき、コンテンツに関するアナウンスメントおよび要求を監視できる１つの形は、要求されたコンテンツを有するピアに関するメッセージのＤＰＩを介するものである。さらに、ネットワーク・オペレータは、論理ＤＰＩを使用することもできる。論理ＤＰＩの例は、論文、Ｍｏｒｉｔｚ  Ｓｔｅｉｎｅｒ、「Ｓｔｒｕｃｔｕｒｅｓ  ａｎｄ  Ａｌｇｏｒｉｔｈｍｓ  ｆｏｒ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ  Ｃｏｏｐｅｒａｔｉｏｎ」、博士論文、Ｅｕｒｅｃｏｍ  ａｎｄ  Ｕｎｉｖｅｒｓｉｔｙ  ｏｆ  Ｍａｎｎｈｅｉｍ、２００８年と、Ｓｔｅｉｎｅｒ、Ｅｎ−Ｎａｊｊａｒｙ、およびＢｉｅｒｓａｃｋ、「Ｅｘｐｌｏｉｔｉｎｇ  ＫＡＤ：Ｐｏｓｓｉｂｌｅ  Ｕｓｅｓ  ａｎｄ  Ｍｉｓｕｓｅｓ」、Ｃｏｍｐｕｔｅｒ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｒｅｖｉｅｗ、３７（５）、２００７年１０月、６５〜６９ページとで説明されている。これらの論文は、参照によってその全体が本明細書に組み込まれている。
【００４３】
論理ＤＰＩは、送信するクライアントまたは受信するクライアント（ピア４０、４２、および４４）がインターネットにアクセスする形とは独立に、ネットワーク要素４５がＤＨＴ内のすべてのメッセージを見、インターセプトすることを可能にする。この技法は、ネットワーク要素４５が、トラフィックを局所化されるＩＳＰ内に物理的に存在する必要なしに、ネットワークに接続された任意のＩＳＰのトラフィックを局所化する（好ましいＩＳＰを有するピアに関する情報を提供することによって）ことを可能にすることができる。
【００４４】
ステップＳ１０４では、アナウンスするピアが関連するＩＳＰを判定する。上で述べたように、コンテンツのアナウンスメントは、ピアのＩＤまたはアドレスを含む。ピアのＩＤまたはアドレスが既知である場合には、そのピアＩＤまたはピア・アドレスに関連するＩＳＰを簡単に知ることができる。どのＩＳＰが所与のピアＩＤまたはピア・アドレスに関連するのかを示す検索可能な商用データベースが、使用可能である。そのようなデータベース５３（図３に図示）を使用して、どのＩＳＰが所与のピアに関連するのかを検出することができる。
【００４５】
アナウンスするピアのＩＳＰを判定した後に、ネットワーク要素４５は、ステップＳ１０５で、アナウンスするピアのＩＳＰが関心を持たれているＩＳＰであるかどうかを判定する。関心を持たれているＩＳＰとは、ネットワーク・オペレータが特に関心を持っているＩＳＰである。関心を持たれているＩＳＰを、ネットワーク・オペレータが選択することができる。ネットワーク・オペレータは、関心を持たれているＩＳＰのうちになるように、複数のＩＳＰを選択することができる。たとえば、ネットワーク・オペレータは、さまざまなＩＳＰの間のある種のリンクの使用を減らし、特定のＩＳＰ内に留まるためにトラフィックにバイアスをかけ、または特定のＩＳＰへまたはこれからのトラフィックを減らすことを望む場合がある。ネットワーク・オペレータがそれにまたがるトラフィックを操作することを望む可能性があるＩＳＰを、関心を持たれているＩＳＰと考えることができる。
【００４６】
アナウンサが関心を持たれているＩＳＰに関連するかどうかを判定するために、ネットワーク要素は、アナウンサの識別されたＩＳＰを、関心を持たれているＩＳＰのリストと比較することができ、このリストは、別々のデータベース内に格納されまたはネットワーク・オペレータによってプログラムされたルールの組によって判定され得る。
【００４７】
アナウンスするピアのＩＳＰが関心を持たれているＩＳＰではない場合には、ネットワーク要素４５は、ステップＳ１０６で、アナウンスするピアに関するデータをデータベース５２に保存する。ステップＳ１０６では、ピアのアドレス、アナウンスされたコンテンツ、およびピアに関連するＩＳＰなどの情報を保存することができる。
【００４８】
たとえば、データベース５２を、下の表１に示されているように編成することができる。ここで行われる説明が、例のために行われることを理解されたい。データベースを、本発明に従って、任意の個数の異なる技法によって編成することができる。
【００４９】
【表１】
0005536900.tif 000002
表１
【００５０】
このデータベース内の各エントリを、異なるピアに関連付けることができる。最初のフィールドは、ピアに関連するアドレスである。次のフィールドは、ピア・アドレスに関連するＩＳＰをリストする。あるピアに関連する複数のＩＳＰがある場合には、ＩＳＰのすべてをリストすることができる。次のフィールドは、ピア・アドレスに関連するコンテンツをリストする。所与のピアに関連する複数の異なるコンテンツ・アイテムがある場合がある。ピアのコンテンツが、周期的に更新される場合がある。ピア情報エントリは、ピアのＩＳＰが関心を持たれているＩＳＰであるかどうかを示す最後のフィールドを含むことができる。
【００５１】
データベース５２が、ピア・アドレスによって示されるピアのエントリを含む場合には、そのエントリを、アナウンスメント・メッセージに基づいて更新することができる。そうではない場合には、新しいエントリを作成することができる。
【００５２】
ネットワーク要素４５が、コンテンツをアナウンスするピアのＩＳＰが関心を持たれているＩＳＰであると判定する場合には、ステップＳ１０８で、ネットワーク要素４５は、アナウンスメントが他のピアに配布されるのをブロックする。ブロックする機能は、従来通りにＤＰＩハードウェア６０によって行うことができる。論理ＤＰＩを使用するシステムでは、アナウンスメントが他のピアに配布されるのをブロックする１つの例の形が、上で引用した論文、「Ｅｘｐｌｏｉｔｉｎｇ  ＫＡＤ：  Ｐｏｓｓｉｂｌｅ  Ｕｓｅｓ  ａｎｄ  Ｍｉｓｕｓｅｓ」で議論されている。コンテンツのアナウンスメントをブロックすることに加えて、コンテンツをアナウンスするピアのＩＳＰが関心を持たれているＩＳＰである場合には、ネットワーク要素４５は、上で説明したように、ステップＳ１０６でアナウンスするピアに関する情報を保存する。
【００５３】
図５に、一実施形態によるコンテンツ要求を処理する方法の流れ図を示す。ステップＳ１１２で、ネットワーク要素４５は、ネットワーク上のピアからのコンテンツの要求を監視し、検出する。コンテンツを要求することは、ＤＨＴを使用するピアツーピア・ファイル共有ネットワークで周知である。たとえば、要求するピアは、コンテンツの要求を別のピアに送信する。受信するピアが、要求されたコンテンツを有する場合には、受信するピアは、受信するピアがそのコンテンツを含むことを示すために要求を更新し、受信するピアは、更新された要求を別のピアに転送する。受信するピアが、要求されたコンテンツを有しない場合には、受信するピアは、その要求を別のピアに転送する。要求は、その要求が指定された個数のピアに関する情報を含むまで転送され得る。指定された個数は、リクエスタ、ネットワーク・オペレータ、または他のエンティティによって選択され得る。現在のピアツーピア・システムでは、この数が、しばしば５０である。指定された個数のピアに関する情報に達した後に、この情報は、リクエスタに送り返される。その後、リクエスタは、要求されたコンテンツについて、ピアに直接に連絡することができる。
【００５４】
要求を監視できる１つの形は、要求されたコンテンツを有するピアに関するメッセージのＤＰＩを介するものである。さらに、ネットワーク・オペレータは、上で引用した論文で説明されているように、論理ＤＰＩを使用することもできる。要求が検出された後に、ネットワーク要素４５は、ステップＳ１１４で、要求するピアに関連するＩＳＰを判定する。これは、上でステップＳ１０４で説明した、アナウンスするピアに関連するＩＳＰの判定に類似する形で行うことができる。
【００５５】
要求するピアに関連するＩＳＰが識別された後に、ネットワーク要素４５は、ステップＳ１１６で、リクエスタのＩＳＰが関心を持たれているＩＳＰであるかどうかを判定することができる。これは、図４のステップＳ１０５に関して上で説明したものに似た形で達成することができる。
【００５６】
要求するピアが、関心を持たれているＩＳＰに関連しない場合には、ステップＳ１１７で、関心を持たれているＩＳＰに関連するピアから要求をブロックする。ＤＰＩに関するハードウェア６０を使用するシステムでは、このブロックを、従来通りにまたはＩＳＰのエッジでハードウェア６０によって任意の適切な形で行うことができる。論理ＤＰＩを使用するシステムでは、この要求を、上で引用した論文に記載されているようにブロックすることができる。
【００５７】
リクエスタのＩＳＰが関心を持たれているＩＳＰではない場合には、ネットワーク要素４５は、要求されたコンテンツを有するが関心を持たれているＩＳＰに関連しないピアをデータベース５２から検索することによって応答することができる。その後、ネットワーク要素４５は、ステップＳ１１８で、関心を持たれているＩＳＰに関連しないピアが識別される場合に、それらのピアに関する情報を用いて要求に応答する。その後、このプロセスは終了する。
【００５８】
要求するピアが、関心を持たれているＩＳＰに関連する場合には、ネットワーク・コンポーネントまたはネットワーク要素４５は、ステップＳ１２０で、要求されたコンテンツを有し、関心を持たれているＩＳＰに関連するピアをデータベース５２から検索する。
【００５９】
オプションで、ステップＳ１２２で、ネットワーク要素４５は、要求されたコンテンツを有し、関心を持たれているＩＳＰに関連するものとして識別されたピアに優先順位を付けることができる。ＩＳＰの優先順位は、要求するピアのＩＳＰを優先順位の所望の順序と比較することによって決定することができる。たとえば、要求するピアに関連するＩＳＰを、第１の好ましいＩＳＰと考えることができ、他のＩＳＰに、要求するピアのＩＳＰに関して異なるレベルの優先順位を与えることができる。たとえば、図２に示されているように、リクエスタがピア４０ｄである場合には、同一のＩＳＰ  ２４上のピアが、高い優先順位を有するはずである。ピアＩＳＰ  ２６上のピアは、より低い優先順位を有するはずである。他の実施形態では、要求するピアに関連するＩＳＰにかかわりなく、特定のＩＳＰに第１の優先順位を与えることができる。ＩＳＰの優先順位付けを、個人の必要およびシステム・オペレータの要件に従ってシステム・オペレータがセットすることができる。
【００６０】
本発明による実施形態は、１つまたは２つの好ましいＩＳＰに限定されるのではなく、コスト、リソース、使用法、トラフィック、またはＩＳＰの間のリンクもしくはあるＩＳＰが別のＩＳＰより好ましいものになることにつながる可能性がある他の要因に関連する任意の他の要因に応じてさまざまなレベルの優先順位を有する複数のＩＳＰを有することができる。この優先順位情報を、データベース内に格納し、またはルールの組を介して確立することができる。
【００６１】
ステップＳ１２６では、要求されたコンテンツを有し、関心を持たれているＩＳＰに関連するものとして識別されたピアの個数を検討する。リクエスタがそこからコンテンツをダウンロードするピアを選択できるようにするために、リクエスタに、要求されたコンテンツを有する複数のピアを識別することが望ましい可能性がある。さらに、複数のピアを提供することは、リクエスタが特定のピアから要求されたコンテンツを受信できない場合に、リクエスタがフォール・バック・オプションを有することを可能にする。いくつかの実施形態では、任意の１つの要求に応答して識別されるピアの最小しきい個数があるものとすることができる。リクエスタに識別されるピアの最小個数を、リクエスタ、ＩＳＰオペレータ、または他のシステム・オペレータが選択することができる。いくつかの実施形態では、応答で識別されるピアの最小個数が５０である。ネットワーク要素またはコンピュータ４５は、リクエスタに、しきい量を満足し、これを超えない個数のピアを識別するのみとすることができる。
【００６２】
ネットワーク要素４５は、ステップＳ１２６に示されているように、要求されたコンテンツを有し、関心を持たれているＩＳＰに関連すると識別されたピアの量が、しきい量を満足しまたはこれを超えるかどうかを判定することができる。要求されたコンテンツを有し、関心を持たれているＩＳＰに関連するものとして識別されたピアの個数がしきい量未満である場合には、その要求はブロックされず、通常のピアツーピア要求に従って伝搬する。
【００６３】
要求が流布され、その要求を満足するのに必要なピアの個数に従って、要求されるコンテンツを有するピアに関するデータを蓄積した後に、これらのピアに関する情報を含む応答が、リクエスタに送信される。この応答は、ネットワーク要素４５が、関心を持たれているＩＳＰに関連し、要求されたコンテンツを有する、要求を満足するのに十分なピアを識別できなかったので、インターネット全体２２上のピア４４によって送信される。ステップＳ１２８では、ネットワーク要素４５が、この応答をインターセプトし、応答を変更し、変更された応答を送信する。この応答を変更して、関心を持たれているＩＳＰに関連し、要求されたコンテンツを有するピアに関する情報を追加することができる。インターネット全体２２からの対応する個数の（言い替えると、関心を持たれているＩＳＰに関連しない）ピア４４に関する情報は、応答から除去される。応答の変更は、リクエスタが、関心を持たれているＩＳＰに関連するピアから要求されたコンテンツを実際に入手する確率を高める。応答の変更を、ＤＰＩハードウェア６０によって達成することができる。論理ＤＰＩを使用するシステムでは、応答を、上で引用した論文に記載されているように変更することができる。この変更された応答は、ステップＳ１３０で送信される。
【００６４】
ステップＳ１２６に戻って、要求されたコンテンツを有するピアの量が、しきい量を超える場合には、ステップＳ１３２で、ネットワーク要素４５が、要求をその所期の宛先からブロックする。要求がブロックされるのは、ネットワーク要素４５が、要求に応答するのに十分な情報を有するからである。ブロックは、ＤＰＩハードウェア６０によって達成することができる。論理ＤＰＩを使用するシステムでは、要求を、上で引用した論文に記載されているようにブロックすることができる。
【００６５】
ステップＳ１３４では、ネットワーク要素４５が、要求されたコンテンツを有し、関心を持たれているＩＳＰに関連するピアに関する情報だけを送信する。いくつかの実施形態では、しきい量になるものを超えないピアが、リクエスタに識別される。識別されたピアは、ステップＳ１２２で確立された優先順位によって順序付けられているので、より低い優先順位を有する識別されたピアは、識別されたより高い優先順位のピアの個数がしきい量を超える場合には、リクエスタに送信されない可能性がある。これは、リクエスタが要求されたコンテンツをそこから受信することをネットワーク・オペレータが最も好むピアがリクエスタに送信されることを保証するのを助ける。その後、このプロセスは終了する。
【００６６】
図６に、本発明の実施形態による、ピア４０および４４が（１）ピアによるコンテンツのアナウンスメントおよび（２）ピアによるコンテンツの要求にどのように応答できるのかの例を示す。ネットワーク要素４５（図２に図示）は、ゲート・キーピング機能５６を実行し、ネットワーク１８に接続された任意のピアによるコンテンツのアナウンスメントまたはコンテンツの要求のすべてを監視することができる。ネットワーク要素４５は、どのＩＳＰ（１つまたは複数）がアナウンスするピアまたは要求するピアに関連するのかを判定することもできる。
【００６７】
行われるコンテンツの要求およびコンテンツのアナウンスメントが多ければ多いほど、データベース５２は、ピアがそれを含むことをアナウンスしたコンテンツとこれらのピアが関連するＩＳＰとに関するデータでますます満杯になる。時間が経つにつれて、ネットワーク要素４５は、ゲート・キーピング機能５６をよりよく実行するようになる。
【００６８】
説明のために、図６に示された次の例を説明する。ピア４０ａ、４０ｂ、４０ｃ、および４０ｄは、すべてがＩＳＰ  ２４上に配置されている。ＩＳＰ  ２４は、関心を持たれているＩＳＰである。インターネット全体２２は、複数のピア４４、具体的にはピア４４ｅを含む。インターネット全体２２上のピアは、関心を持たれているＩＳＰに関連しない。ピア４０ａおよび４０ｂは、コンテンツｘを有することをアナウンスする。ネットワーク要素４５（図３に図示）によって実行されるゲート・キーピング機能５６は、インターネット全体２２へのコンテンツｘのアナウンスメントをブロックする。
【００６９】
ピア４０ａおよび４０ｂによるコンテンツのアナウンスメントのブロックは、インターネット全体２２上に配置されたピア４４が、ＩＳＰ  ２４上に配置されたピア４０ａおよび４０ｂがコンテンツｘを有することを知ることを防ぐ。したがって、ピア４４ｅは、コンテンツｘがトランジット・リンク３０（図２に図示）を介して送信されることをピア４０ａまたは４０ｂに要求しない。ピア４０ａおよび４０ｂによるコンテンツｘのアナウンスメントのゲート・キーピング機能５６によるブロックは、トランジット・リンク３０の使用量を節約することができる。
【００７０】
図６に示されているように、ＩＳＰ  ２４上に配置されたピア４０ｃは、コンテンツｙの要求を行う。ＩＳＰ  ２４上のピア４０のどれもが、コンテンツｙを含まないので、ゲート・キーピング機能５６は、コンテンツｙの要求がインターネット全体２２に進むことを許可する。ピア４４ｆ、４４ｇ、４４ｈ、および４４ｉ（図示せず）は、従来のピアツーピア・システム内でコンテンツｙを有すると識別され、ゲート・キーピング機能５６は、ピア４４ｆ、４４ｇ、４４ｈ、および４４ｉに関する情報が要求に応答してピア４０ｃに送信されることを許可する。その後、ピア４０ｃは、トランジット・リンク３０（図２に図示）を介してピア４４ｆ、４４ｇ、４４ｈ、および４４ｉのうちの１つまたは複数から、要求されたコンテンツをダウンロードする。
【００７１】
図６に示されたもう１つの例では、ピア４０ｄがコンテンツｘを要求する。上で説明したように、ピア４０ａおよび４０ｂが、コンテンツｘを含む。しかし、ＩＳＰ  ２４上に配置された２つのピア４０ａおよび４０ｂだけが、コンテンツｘを有する。２つのピアは、信頼できる形でコンテンツをダウンロードしまたは要求を満足するのに十分ではないと考えられる可能性がある（図６に示された例のために、要求は、情報が４つのピアから入手可能である場合に満足される。他の応用例では、要求は、４つより多数のピアに関する情報を必要とする可能性が高い）。したがって、ゲート・キーピング機能５６は、要求がインターネット全体２２に進むことを許可する。ピア４４ｊ、４４ｋ、４４ｌ、および４４ｍが、要求されたコンテンツを有するものとして識別され、その情報が、通常のピアツーピア・ネットワークに従って、ピア４０ｄからのコンテンツｘの要求に応答して送信される。
【００７２】
しかし、ＩＳＰ  ２４（要求するピア４０ｄと同一のＩＳＰ）のピア４０ａまたは４０ｂからコンテンツｘを入手することが望ましい可能性がある。したがって、ゲート・キーピング機能５６は、要求するピア４０ｄに送信される応答を変更する。ゲート・キーピング機能５６は、ピア４０ｄが、それが要求したコンテンツｘをそれ自体のＩＳＰ  ２４内に配置されたピアから入手する確率を高めるために、ピアのうちの２つ（この場合には４４ｊおよび４４ｋ）を除去し、これらを、要求されたコンテンツを有し、ＩＳＰ  ２４内に配置されると識別されたピア４０ａおよび４０ｂに置換する。
【００７３】
しかし、ＩＳＰ  ２４内に配置された十分なピア４０がコンテンツｘを含む場合には、ゲート・キーピング機能５６は、ピア４０ｄからのコンテンツｘの要求に、ＩＳＰ  ２４内に配置されたピア４０だけに関する情報を用いて応答することができる。
【００７４】
本発明によるいくつかの実施形態では、任意の１つの要求に応答して識別されるピアの最小しきい量がある場合がある。この最小値を、リクエスタ、ＩＳＰオペレータ、または他のシステム・オペレータが選択することができる。ゲート・キーピング機能５６は、ＩＳＰ  ２４上で要求されたコンテンツを有するピア４０を使い果たすまで、最小しきい量のピアを識別するために、要求されたコンテンツを有するＩＳＰ  ２４内に配置されたピアを、コンテンツの要求に対する応答に投入することができる。使い果たした点で、ゲート・キーピング機能５６は、要求されたコンテンツを有する、インターネット全体２２上に配置されたピア４４を利用することができる。代替案では、ゲート・キーピング機能５６が、リクエスタ４０ｃのＩＳＰ上で要求されたコンテンツを有するピアを使い果たした後に、ゲート・キーピング機能５６は、要求されたコンテンツおよび関連するＩＳＰ  ２６（図２に図示）を有するピア４２を、要求に対する応答に投入することができる。
【００７５】
図６に示されているように、インターネット全体からのピア４４ｅが、コンテンツｘを要求する。コンテンツｘは、ピア４０ａおよび４０ｂ上に含まれるが、ネットワーク要素４５は、ゲート・キーピング機能５６を実行して、関心を持たれているＩＳＰ  ２４上のピア４０からの要求をブロックする。ネットワーク要素４５は、関心を持たれているＩＳＰ  ２４上のピア４０を除く応答を用いてピア４４ｅからの要求に応答する。ネットワーク要素４５は、関心を持たれているＩＳＰに関連しないピアに関する情報を用いて応答する。この場合に、ネットワーク要素４５は、ピア４４ｊ、４４ｋ、４４ｌ、および４４ｍに関する情報を提供することによって応答する。
【００７６】
例の実施形態をこのように説明したので、これを多くの形で変更できることは明白であろう。そのような変形は、開示される主題からの逸脱とみなされてはならず、すべてのそのような変更が、開示される主題の範囲に含まれることが意図されている。
【図１】
0005536900.tif 000003
【図２】
0005536900.tif 000004
【図３】
0005536900.tif 000005
【図４】
0005536900.tif 000006
【図５】
0005536900.tif 000007
【図６】
0005536900.tif 000008