(57)【特許請求の範囲】
【請求項１】
ピアツーピアプロトコルを介して他のピアノードとデータを交換するように構成されたピアノードであって、
−  シグナリングインターフェースおよび／またはデータインターフェースを介して前記他のピアノードから受信されたメッセージから抽出されたピアノード識別子を受信し、
−  前記ピアノード識別子を１つまたは複数の基準に従って前記ピアノード識別子に関連するピアノードのＩＰアドレスおよびＵＤＰ／ＴＣＰポートを使用して少なくとも２つのカテゴリのうちの１つに分類し、
−  前記ピアノード識別子が前記少なくとも２つのカテゴリのうちの第１のカテゴリに分類された場合は、ピアノード識別子を、ピアツーピアプロトコルを介しての通信のためにピアノードによって使用されるべきピアノード識別子として選択する
ように構成された分類および選択モジュールを含む、ピアノード。
【請求項２】
前記ピアノード識別子が前記少なくとも２つのカテゴリのうちの第２のカテゴリに属する場合は、前記分類および選択モジュールがピアノード選択ルールのセットを適用するようにさらに構成される、請求項１に記載のピアノード。
【請求項３】
ピアノードがピアツーピアファイル共有クライアントを介してデータを配信するように構成され、分類および選択モジュールが前記ピアツーピアファイル共有クライアントに統合される、請求項１または２に記載のピアノード。
【請求項４】
分類および選択モジュールがピアノード識別子に関連するピアノードの特性に基づいて重み値を使用して前記ピアノード識別子を分類するように構成される、請求項１から３のいずれか一項に記載のピアノード。
【請求項５】
分類および選択モジュールが、ピアノード識別子に関連するＩＰアドレスが予め定義されたサブネットに属するかどうかを検証し、前記ピアノード識別子をしかるべく分類するように構成される、請求項１に記載のピアノード。
【請求項６】
分類および選択モジュールがピアノード識別子を２つのカテゴリ、すなわち好ましいピアノードカテゴリまたは好ましくないピアノードカテゴリのうちのいずれか１つに分類するように構成される、請求項１から５のいずれか一項に記載のピアノード。
【請求項７】
分類および選択モジュールが、ピアノードとピアノード識別子に関連する別のピアノードとの間のＩＰホップの数または前記数を表す変数を取得し、前記ピアノード識別子を分類するときに前記数または変数を考慮に入れ、かつ／またはピアノードとピアノード識別子に関連する別のピアノードとの間の成功した対話の数、または前記数を表す変数を取得し、前記ピアノード識別子を分類するときに前記数または変数を考慮に入れるように構成される、請求項１から６のいずれか一項に記載のピアノード。
【請求項８】
ピアノードが分類および選択モジュールによって判定された前記ピアノードに関連するカテゴリを考慮に入れてピアノードへのデータダウンロードのための接続をセットアップするように構成された接続セットアップモジュールをさらに含む、請求項１から７のいずれか一項に記載のピアノード。
【請求項９】
ピアノードがピア交換（ＰＥＸ）クライアントおよび／または分散ハッシュテーブル（ＤＨＴ）クライアントおよび／またはローカルピアディスカバリ（ＬＰＤ）クライアントおよび／またはトラッカー向けビットトレントシグナリングクライアントを含む、請求項１から８のいずれか一項に記載のピアノード。
【請求項１０】
ピアツーピアプロトコルを介してのピアノード間の通信のために使用されるべきピアノード識別子を選択するための方法であって、ピアノードにおいて、
−  シグナリングインターフェースおよび／またはデータインターフェースを介して他のピアノードから１つまたは複数のピアノード識別子を包含するメッセージを受信するステップと、
−  前記１つまたは複数のピアノード識別子の各ピアノード識別子を１つまたは複数の基準に従って前記ピアノード識別子に関連するピアノードのＩＰアドレスおよびＵＤＰ／ＴＣＰポートを使用して少なくとも２つのカテゴリのうちの１つに分類するステップと、
−  ピアノード識別子が前記最小限のカテゴリのうちの第１のカテゴリに分類された場合は、ピアツーピアプロトコル、好ましくはピアツーピアファイル共有プロトコルを介しての通信のためにピアノードによって使用されるべきピアノード識別子としてこのピアノード識別子を選択するステップと
を含む、方法。
【請求項１１】
ピアノード識別子が前記少なくとも２つのカテゴリのうちの第２のカテゴリに分類された場合は、選択ルールのセットが適用される、請求項１０に記載の方法。
【請求項１２】
前記１つまたは複数の基準が遠く離れた場所からオペレータによって更新される、請求項１０または１１に記載の方法。
【請求項１３】
１つまたは複数の基準に従って前記分類するステップが、
−  前記ピアノード識別子に関連するピアノードの特性に基づいて重み値を使用するステップ、および／または
−  ピアノード識別子に関連するＩＰアドレスが予め定義されたサブネットに属するかどうかを検証し、前記ピアノード識別子をしかるべく分類するステップ
を含む、請求項１０から１２のいずれか一項に記載の方法。
【請求項１４】
請求項１０から１３のいずれか一項に記載の方法の分類するステップおよび／または選択するステップを実行するための、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、ピアツーピアプロトコルを介して他のピアノードと通信するように構成されたピアノード、およびピアツーピアプロトコルを介してピアノード間で通信するためのピアノードを選択するための方法に関する。
【背景技術】
【０００２】
ビットトレント（ＢＴ）プロトコル、分散ハッシュテーブル（ＤＨＴ）プロトコル、ピア交換（ＰＥＸ）プロトコル、ローカルピアディスカバリ（ＬＰＤ）プロトコルなどのピアツーピア通信の処理に使用される先行技術のプロトコルは、通常、強度に分散されたピアノード間の通信に都合が良い。これは、たとえより良い通信を可能にする他のピアノードが存在しても、ピアノード間の非最適通信につながる可能性がある。既存のプロトコルでは、しばしば、より安い近くのピアノードが利用可能であるところで、大西洋横断リンクおよび／または複数のＩＰホップを必要とする「遠く離れた」ピアノードが使用される。
【０００３】
通常、ピアノードは、それらまたは他の外部ピアノードから受信したメッセージから外部ピアノードに関するビューを構築する。しばしば、最初に知られた外部ピアノードは、後で知られた他の外部ピアノードで置換するのが困難である。さらに、構築は、通常、多かれ少なかれランダムであり、主に、それらのメッセージがそこから到来する外部ピアノードによって定義される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、ピアノード間の改善された通信を可能にするピアノードおよび方法を提供することである。
【課題を解決するための手段】
【０００５】
本発明の一実施形態によれば、ピアツーピアプロトコルを介して他のピアノードと通信するように構成されたピアノードが提供される。ピアノードは、前記他のピアノードから前記ピアノードにおいて受信されたメッセージのためのピアノード識別子を受信し、受信されたピアノード識別子を１つまたは複数の基準に従って少なくとも２つのカテゴリのうちの１つに分類し、前記ピアノード識別子が少なくとも２つのカテゴリのうちの第１のカテゴリに分類された場合は、そのピアノード識別子をピアツーピアプロトコルを介しての通信のために使用されるべきピアノード識別子として選択するように構成された分類および選択モジュールを含む。
【０００６】
そのような分類および選択モジュールの使用を介して、ピアノードは、ピアノード識別子を分類するための１つまたは複数の適切な基準を定義することにより、ピアノードが理想的には有するはずのいくつかの好ましい特性に気づかされることが可能である。ピアノードが第１のカテゴリ（すなわち、好ましいカテゴリ）に属する場合は、関連するピアノードは、ピアツーピアプロトコルによって使用されるように直ちに選択される。言い換えれば、ピアノードは、１つまたは複数の基準、例えば、インターネットサービスプロバイダ（ＩＳＰ）によって定義される１つまたは複数の基準を設定することにより制御されることが可能である。そのようにして、ピアノードの振る舞いは、影響されることが可能である。ピアノード識別子が第２のカテゴリ（好ましくないカテゴリ）に分類された場合は、正規の選択ルール（例えば、ピアノードによって定義された選択ルール）が使用されてよい。
【０００７】
ピアノードの可能な実施形態によれば、モジュールは、ピアノード識別子が少なくとも２つのカテゴリのうちの第２のカテゴリに属する場合は、ピア選択ルールのセットを適用するようにさらに構成される。選択ルールのこのセットは、非常に基本的なものでよく、例えば、第２のカテゴリのピアノードを受信の順序に従ってコンタクトリストに入れることから成ってよいことに留意されたい。
【０００８】
そのようにして、新しく受信された第１のカテゴリのピアノードは、正規の選択ルールをバイパスすることができるようにされ、さらなる通信のために直ちに選択されるが、一方、受信された第２のカテゴリのピアノードは、正規の選択ルールを使用して選択される。
【０００９】
用語「ピアノード」は、本発明の文脈で使用される場合は、広い意味で解釈されなければならず、ユーザがピアツーピアプロトコルを介してデータを交換することができるようにするユーザの複数のデバイスを指してよい。その点に関して、分類および選択モジュールは、ピアノードに組み込まれてもよく、または既存のピアノードの新しい構成として実装されてもよいことが留意される。
【００１０】
好ましい実施形態によれば、ピアノードは、ビットトレント（ＢＴ）プロトコルなどのピアツーピアファイル共有プロトコルを介してデータを配信するように構成される。使用されてよい他のファイル共有プロトコルは、例えば、グヌーテラ（Ｇｎｕｔｅｌｌａ）、イードンキー（ｅＤｏｎｋｅｙ）、カザー（Ｋａｚａａ）、フリーネット（Ｆｒｅｅｎｅｔ）である。さらに、ピアノードは、ピア交換（ＰＥＸ）クライアントおよび／または分散ハッシュテーブル（ＤＨＴ）クライアントおよび／またはローカルピアディスカバリ（ＬＰＤ）クライアントを含んでよい。分類および選択モジュールは、ＢＴクライアントなどのピアツーピアデータ交換クライアントに実装されることが好ましい。しかし、それらのモジュールは、ＤＨＴクライアント、ＰＥＸクライアントまたはＬＰＤクライアントなどのピアツーピアシグナリングクライアントに実装されてもよい。これは、図１−３に言及するときに、さらに詳細に説明される。
【００１１】
好ましい実施形態によれば、分類および選択モジュールは、ピアノード識別子に関連するピアノードの特性に基づいて重み値を使用してピアノード識別子を分類するように構成される。それらの特性は、例えば、ピアノードの速度に関する特性、ピアノードが属するインターネットサービスプロバイダに関する特性、ピアノードによって使用されるピアツーピアファイル共有プロトコルのタイプなどでよい。通常、ピアノード識別子を分類するために使用される１つまたは複数の基準は閾値を使用し、重み値が閾値より低い場合は、ノード識別子は、第１のカテゴリに分類され、重み値がこの閾値より高い場合は、ピアノード識別子は、第２のカテゴリと認定される。そのような重み値は、例えば、ＩＳＰによってピアノードにアップロードされてよく、定期的に更新されてよい。代替として、ピアノードは、ピアノードの重み値を有してローカルに構成されてよい。
【００１２】
さらに好ましい実施形態によれば、分類および選択モジュールは、前記ピアノード識別子に関連するピアノードのＩＰアドレスおよび／またはＵＤＰ／ＴＣＰポートを使用してピアノード識別子を分類するように構成される。通常、受信された外部ピアノードは、それらのＩＰアドレスおよび／またはＴＣＰポートが、いくつかの好ましいＩＰアドレスおよび／またはＴＣＰポートに一致するかしないかによってソートされる。より好ましくは、分類および選択モジュールは、ピアノード識別子に関連するＩＰアドレスが予め定義されたサブネットに属するかどうかを検証し、ピアノード識別子をしかるべく分類するように構成される。
【００１３】
一実施形態によれば、分類および選択モジュールは、ＩＰホップの数、ピアノードとそのピアノード識別子に関連するピアノードとの間の往復時間または同様の変数を取得し、ピアノード識別子を分類するときに前記数、往復時間または同様の変数を考慮に入れるように構成される。代替として、またはそれに加えて、分類および選択モジュールは、ピアノードとそのピアノード識別子に関連する別のピアノードとの間の成功した対話の数を取得し、ピアノード識別子を分類するときに前記数を考慮に入れるように構成されてよい。通常、ノード識別子は、ホップの数が指定された閾値より低い場合は、好ましいノードとして分類され、ノードの数がこの指定された閾値と等しい場合は、好ましくないノードとして分類される。同様のタイプの基準が成功した対話の数のために使用されてよい。分類および選択モジュールは、例えば、プローブを使用してＩＰホップの数または往復時間を取得してよい。成功した対話の数は、例えば、ピアノードによってカウントされることが可能である。
【００１４】
好ましい実施形態によれば、ピアノードは、分類および選択モジュールによって判定されたピアノードに関連するカテゴリを考慮に入れてピアノードへのデータダウンロードのための接続をセットアップするように構成された接続セットアップモジュールをさらに含む。この接続の設定は、ＴＣＰもしくはＵＤＰ、または任意の他の適切なデータ伝送プロトコルを使用してよい。可能な実施形態では、ピアノードは、ダウンロードのために第１のカテゴリのピアノードの利用可能な数より多くの同時接続をセットアップすることができるようにされてよいことに留意されたい。その場合、ピアノードは、第２のカテゴリのピアノードのための接続をセットアップすることもできる。例えば、ビットトレントクライアントでは、最大数の同時ＴＣＰ接続が構成可能であり、したがって、そのようなビットトレントクライアントは、前述の特徴を有して実装されることが可能である。
【００１５】
本発明の典型的な実施形態は、ノード識別子を２つのカテゴリ（好ましいカテゴリおよび好ましくないカテゴリ）に分類する分類および選択モジュールを有するが、本発明の範囲内でより多くのカテゴリが実施されてもよいことを当業者は理解するであろう。
【００１６】
本発明の他の態様によれば、ピアツーピアプロトコルを介してピアノード間で通信するために使用されるべきピアノードを選択するための方法が提供される。本方法は、他のピアノードから１つまたは複数のピアノード識別子を包含するピアノードメッセージを受信するステップと、１つまたは複数のピアノード識別子の各ピアノード識別子を１つまたは複数の基準に従って少なくとも２つのカテゴリのうちの１つに分類するステップと、ピアノード識別子が少なくとも２つのカテゴリのうちの第１のカテゴリに分類された場合は、そのピアノード識別子を、ピアツーピアプロトコルを介して通信するために使用されるべきピアノードとして選択するステップとを含む。
【００１７】
本発明の方法の可能な実施形態によれば、ピアノード識別子が少なくとも２つのカテゴリのうちの第２のカテゴリに分類された場合は、（例えば、ピアノードによって定義された）選択ルールのセットが、そのピアがピアツーピアプロトコルを介して通信するために使用されるべきか否かを判定し、第２のカテゴリの選択されたピアノードがどの順序でコンタクトされるべきかを判定するために適用される。
【００１８】
本方法の好ましい実施形態によれば、ピアノードは、ビットトレントプロトコルなどのピアツーピアファイル共有プロトコルを介してピアツーピア通信を処理する。
【００１９】
好ましい実施形態によれば、１つまたは複数の基準は、下記を使用する：
−  ピアノード識別子に関連するピアノードの特性に基づく重み値。上記で提供された重み値の例を参照されたい。および／または
−  ピアノード識別子に関連するピアノードのＩＰアドレスおよび／またはＵＤＰ／ＴＣＰポート。
【００２０】
好ましい実施形態によれば、１つまたは複数の基準に従って分類するステップは、ピアノード識別子に関連するＩＰアドレスが予め定義されたサブネットに属するかどうかを検証し、ピアノード識別子をしかるべく分類するステップを含む。
【００２１】
本発明のさらに他の態様によれば、本発明の方法の上記で開示された諸実施形態の諸ステップのいずれか、特に分類するステップおよび／または選択するステップを実行するためのコンピュータプログラムが提供される。分類のために使用されるべき基準は、例えば遠くからオペレータによってインストールされることが可能である個別のコンピュータプログラムで実施されてよいことに留意されたい。そのようにして、基準は、必要な場合には容易に更新されることが可能である。さらに、本発明は、そのようなプログラムのダウンロード、およびそのようなプログラムを機械読取可能で機械実行可能な形式で符号化するための記憶媒体にも関する。
【００２２】
添付の図面は、本発明の現在好ましい非限定的な例示的実施形態を示すために使用される。添付の図面に関連して読まれれば、以下の詳細な説明から、本発明の上記のおよび他の利点、特徴および目的はより明らかになり、本発明はよりよく理解されるであろう。
【図面の簡単な説明】
【００２３】
【図１】本発明のピアノードの第１の例示的実施形態の概略図である。
【図２】本発明のピアノードの第２の例示的実施形態の概略図である。
【図３】本発明のピアノードの第３の例示的実施形態を示す図である。
【図４】本発明の方法の例示的実施形態を示すためのフローチャートである。
【発明を実施するための形態】
【００２４】
図１は、ビットトレントプロトコルが使用される場合の本発明のピアノードの第１の実施形態を例示する。言い換えれば、ここでは、ピアノードは、シグナリングインターフェース１２およびデータインターフェース１６を有するビットトレントクライアント１０を含む。ビットトレントクライアントは、プリファレンスフィルタとも呼ばれる分類および選択モジュール１１を備える。この分類および選択モジュール１１は、ビットトレントクライアントに統合されてよく、例えば、クライアントにハードコーディングされてもよく、クライアントに動的にアップロードされてもよい。他のピアノード、特に外部ピアノードのピアノード識別子を包含するメッセージは、分類および選択モジュール１１において受信される（矢印１２参照）。受信されたピアノード識別子は、分類および選択モジュール１１によって様々なカテゴリにソートされる。このソートは、様々なやり方で実施されてよい。一例示的実施形態によれば、分類および選択モジュール１１は、受信されたピアノード識別子に関連するＩＰアドレスおよびＴＣＰポートの組合せが予め定義された好ましいＩＰアドレスおよびＴＣＰポートの組合せに一致するかしないかを検証する。
【００２５】
図１の実施例では、４つのノード識別子、すなわち、ノード識別子３、７、４および６が受信される。ノード３および７は、好ましくないピアノードのカテゴリに分類され、一方、ノード識別子４および６は、好ましいピアノードのカテゴリに分類される。新しいピアノードはそれらのカテゴリによってピアノードリストに追加される。好ましくないノード識別子（矢印１４参照）の処理は、それらの識別子をユーザによって定義された選択ルールに従わせることから成ってよいことに留意されたい。次いで、ビットトレントクライアントは、そのような分類されたピアノードリストを使用して、プリファレンスによって、例示的ピアノードＰ１からＰ６において、好ましい外部ピアノードへのデータダウンロードのために１つまたは複数の接続、例えばＴＣＰ接続またはＵＤＰ接続をセットアップすることができる。ビットトレントクライアントは、ダウンロードのために、利用可能な好ましいピアノードの数より多くの同時接続をセットアップすることができる場合には、好ましくない外部ピアノードへの接続をセットアップすることもできる。
【００２６】
図１の実施例では、分類および選択モジュールまたはプリファレンスフィルタは、例えばオペレータによって、ネットワークからインストールされるモジュールでよい。そのようなフィルタをピアノードに導入することにより、ビットトレントクライアントは、分類および選択モジュールによって好ましいピアノードとして分類されるいくつかのピアノードを選択させられる。
【００２７】
分類および選択モジュール１１において受信されたメッセージ１２は、アプリケーションレベルの下で任意のプロトコル、例えばＤＨＴプロトコル、ＰＥＸプロトコル、ローカルピアディスカバリプロトコルまたはトラッカー向けビットトレントシグナリングプロトコルを使用することができることに留意されたい。さらに、分類および選択モジュール１１は、データプレーン１６上で受信されたメッセージから（矢印１７参照）、例えば１つまたは複数のピアノード識別子を包含する他のピアノードからデータ対話を求める要求を知るように構成されてもよい。
【００２８】
図２は、ピアノードがＤＨＴクライアントを含む例示的実施形態を例示する。これは限定的な実施例ではなく、本発明がＰＥＸなど他のプロトコルのために等しく適用可能であることを当業者は理解するであろうことに留意されたい。図１の実施例の場合のように、受信された外部ピアノード（矢印２２参照）は、例えば、それらのＩＰアドレスおよびＵＤＰポートの組合せが好ましいＩＰアドレスおよびＵＤＰポートの組合せに一致するかどうかに応じて、分類および選択モジュール２１によってソートされる。ＤＨＴでは、通常、「バケットにおける充填および分割（ｆｉｌｌ  ａｎｄ  ｓｐｌｉｔ  ｉｎ  ｂｕｃｋｅｔｓ）」技法を使用してノード識別子で満たされるノードスペースが提供される。好ましい外部ピアノードのためのノードＩＤがすでに完全に満たされたバケット向けである場合は、好ましい外部ピアノードは、好ましくない外部ピアノードがＤＨＴ規格に従って「疑わしい（ｑｕｅｓｔｉｏｎａｂｌｅ）」または「良くない（ｂａｄ）」になるのを待つことなしに、その好ましくない外部ピアノードに取って代わる。図２の実施例では、３つのノード識別子（３、７、４および６）がルーティングテーブル（ＲＴ）のバケットＢのために受信される。ノード識別子６は、好ましいピアノードとして分類された新しいピアノードに対応する。この好ましいピアノードは、バケットＢ内の好ましくないピアノードＮＰ２に取って代わる。これは、例えば、任意の好ましくないピアノードまたは最も古いものでよい。ルーティングテーブルにおいて取って代わられる好ましくないピアノードは、置換キャッシュ２６が依然として空の場所を有する場合は、その好ましくないピアノードがそこから除去されたバケットのための置換キャッシュ２６に入れられてよい（矢印２５参照）。さらに、図２の実施例におけるノード識別子７などの好ましくないノード識別子も、キャッシュ２６に入れられてよい。好ましくない外部ピアノードの処理は、選択ルールがユーザによって定義されてよい先行技術のＤＨＴクライアントにおいてと同じように維持されてよい。実施される選択ルールによれば、このピアノード識別子７は、ルーティングテーブルのバケットＢがまだいっぱいでない場合は、そのバケットＢに入れられてよいことに留意されたい。図２のＤＨＴクライアントの実施形態は、図１のＢＴクライアントの実施形態と結合されてよいことに留意されたい。そのようにして、ＢＴクライアントのシグナリングプレーンにおいて受信されたＤＨＴメッセージは、好ましいピアノード識別子を包含し、それらの識別子では、ＢＴクライアントのピアリストに入る前に「二重」分類が行われる。
【００２９】
図３は、ピアノードがＰＥＸクライアント３０を含む本発明の第３の例示的実施形態を概略的に例示する。ＰＥＸメッセージは、シグナリングプレーンにおいて受信され（矢印３２参照）、分類および選択モジュール３１によって処理される。図１の実施例においてと同様に、新しいピアノード識別子ＮＰ７およびＰ６がピアリストに挿入される。この場合も、図３のＰＥＸクライアントの実施形態は、図１のＢＴクライアントの実施形態および／または図２のＤＨＴクライアントの実施形態と結合されてよい。そのようにして、ＢＴクライアントのシグナリングプレーンにおいて受信されたＰＥＸメッセージは、好ましいピアノード識別子を包含してよく、それらの識別子では、ＢＴクライアントのピアリストに入る前に「二重」分類が行われる。
【００３０】
図４は、本発明の方法の一実施形態を概略的に例示する。第１のステップにおいて、ピアノードが外部ピアノードからメッセージを受信する。それらのメッセージは、例えば、ＤＨＴメッセージ、ＰＥＸメッセージ、または他のピアノードのノード識別子を包含するデータ要求メッセージなどのシグナリングメッセージでよい。第２のステップ４１において、受信されたメッセージからノード識別子が抽出される。図４の実施例では、識別子ＩＤＸ、ＩＤＹおよびＩＤＺが抽出される。次のステップ４２において、ノード識別子を複数のカテゴリのうちの１つのカテゴリに分類するために１つまたは複数の基準が検証される。ここでは、ノード識別子は、３つのカテゴリに分類される：ＣＡＴ１、ＣＡＴ２およびＣＡＴ３（ステップ４３ａ−ｃ参照）。例示的実施例では、第１の基準は、例えば、ＩＰアドレスおよび／またはＵＤＰポートがいくつかの好ましいＩＰアドレスおよび／またはＵＤＰポートに一致するかどうかでよい。第２の基準は、例えば、ノード識別子に関連するピアノードの速度、ノード識別子が属するＩＳＰなどのいくつかのコスト値が予め定められた範囲内にあるかどうかでよい。その場合、ＣＡＴ１は、例えば、両方の基準を満たす識別子に対応し、ＣＡＴ２は基準のうちの１つを満たす識別子に対応し、ＣＡＴ３は基準のうちのどれをも満たさない識別子に対応する。ノード識別子がＣＡＴ１に属すると判定された場合は、ノード識別子は、ピアツーピアプロトコルを介しての通信のために使用されるために直ちに記憶される（ステップ４４ａ）。ノード識別子がＣＡＴ２に分類された場合は、ピアノードは、ＣＡＴ１のピア識別子がもう利用可能でないときにコンタクトされるだけである（ステップ４４ｂ参照）。ノード識別子がＣＡＴ３に分類された場合は、ピアノードは、ＣＡＴ２のピア識別子がもう利用可能でないときにコンタクトされるだけである（ステップ４４ｃ参照）。これは一例示的実施形態に過ぎず、例えば、より多くのもしくはより少ない基準および／またはより多くのもしくはより少ないカテゴリが使用されてよいことに留意されたい。さらに追加の選択ルールがいくつかのカテゴリのピアノード識別子に適用可能であり得る。
【００３１】
本発明の諸実施形態は、ビットトレントデータ交換のために好ましいピアノード選択を可能にする。そのような好ましいピアノード選択は、ビットトレントデータ交換のコストが、多かれ少なかれランダムに取り出されたピアノードとのビットトレントデータ交換のコストに比べて小さいと知られているそれらのピアノードを促進することを可能にする。ビットトレントデータ交換はＩＳＰネットワーク資源の大部分を消費するので、そのような好ましいピアノード選択は、かなりのコスト節減を約束する。提案された諸実施形態は、ＩＳＰの要求条件に合わせてより良く調整されたピアノード選択を可能にし、ＩＳＰは、クライアントの振る舞いを少なくとも部分的に制御することができる。
【００３２】
ＤＨＴの実施例では、提案された解決策は、ＤＨＴノードのルーティングテーブルを満たすことを、ＤＨＴノードがその動作を好ましい環境により良く適応させることができるという意味で、より動的にする。
【００３３】
本発明の原理は、上記で特定の実施形態に関連して説明されてきたが、この説明は、添付の特許請求の範囲によって決定される保護の範囲の限定としてではなく、例示としてのみ行われるものであることが明確に理解されるべきである。
【図１】
0005865394.tif 000002
【図２】
0005865394.tif 000003
【図３】
0005865394.tif 000004
【図４】
0005865394.tif 000005