JP2009272802A - P2p通信方法 - Google Patents
P2p通信方法 Download PDFInfo
- Publication number
- JP2009272802A JP2009272802A JP2008120352A JP2008120352A JP2009272802A JP 2009272802 A JP2009272802 A JP 2009272802A JP 2008120352 A JP2008120352 A JP 2008120352A JP 2008120352 A JP2008120352 A JP 2008120352A JP 2009272802 A JP2009272802 A JP 2009272802A
- Authority
- JP
- Japan
- Prior art keywords
- node
- search
- request message
- network
- data communication
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】ネットワーク全体の処理効率を向上させることが可能なP2P通信方法を得ること。
【解決手段】P2P通信を行う各ノードの性能に応じて階層化されたP2Pネットワークを形成する場合に、ノード1−1が、検索要求メッセージを上流のノード1−3等に送信し、キーを保持していないノード1−3等が、検索要求メッセージをさらに上流のノード1−5等に転送し、キーを保持しているノード1−5が、キーおよび所定の方法で計算した保持時間基数を含めた検索応答メッセージをノード1−1に向けて送信し、ノード1−1までの通信経路上のノード1−3が、受信した検索応答メッセージを転送するとともに、検索対象情報を、保持時間基数に基づき計算した保持時間にわたってキャッシュに保持する。
【選択図】 図1
【解決手段】P2P通信を行う各ノードの性能に応じて階層化されたP2Pネットワークを形成する場合に、ノード1−1が、検索要求メッセージを上流のノード1−3等に送信し、キーを保持していないノード1−3等が、検索要求メッセージをさらに上流のノード1−5等に転送し、キーを保持しているノード1−5が、キーおよび所定の方法で計算した保持時間基数を含めた検索応答メッセージをノード1−1に向けて送信し、ノード1−1までの通信経路上のノード1−3が、受信した検索応答メッセージを転送するとともに、検索対象情報を、保持時間基数に基づき計算した保持時間にわたってキャッシュに保持する。
【選択図】 図1
Description
本発明は、ピアツーピア(P2P)ネットワークシステムにおけるP2P通信方法に関する。
従来からの技術であるプロキシメカニズムは、「World Wide Web(以下、WWW)」システムで広く使用されている。プロキシサーバがデータの複製をキャッシュに保持することで、ネットワーク内での応答性の向上や不要トラフィックの削減などの効果がある。また、プロキシメカニズムは、P2Pネットワークシステムに有益であることが容易に推察できる。
P2Pネットワークシステムでは、データを検索するノードが検索要求を送信すると、検索要求を送信したノードと所望のデータを保持するノードまでの経路上にあるノードは、バケツリレー方式で検索要求を転送する。所望のデータを保持するノードが検索要求を送信したノードにデータを送るとき、検索要求の場合と同様、経路上のノードがデータを転送する。このとき、経路上の各ノードは、所望のデータの複製を保存する。他のノードが同じデータを検索する場合、他のノードと所望データを保持するノードの間に所望データの複製を保存するノードが存在すれば、プロキシメカニズムの効果によってネットワーク全体の処理効率は向上し、さらに、耐故障性,負荷分散,匿名性の効果も得ることができる。
また、各ノードがデータの複製を保存する時間(生存時間)の設定方法として、たとえば、検索者の評価の高いデータの生存時間を長くする方法が下記特許文献1に開示されている。さらに、検索者のデータに対する緊急度に応じてキャッシュデータの生存時間を決定する方法が下記特許文献2に開示されている。
しかしながら、上記従来のP2Pネットワークシステムにおいては、たとえば、通信速度の遅いノードのキャッシュにデータの複製が保持され、このノードに検索が集中した場合には、データを検索してもデータの送信に時間がかかるため、結果としてデータの検索が完了するまでの時間が長くなり、ネットワーク全体の処理効率が落ちる、という問題があった。また、データを保持できるキャッシュ領域が小さいノードに有用なデータを複製する場合には、使用可能な領域が限られるため新たな有用なデータの複製をできない可能性があり、このような場合には、ネットワーク全体の処理効率を向上させることができない、という問題があった。
また、上記特許文献によれば、キャッシュデータの生存時間を決める要因である評価や緊急度が、検索者やシステム管理者の主観に強く依存している。そのため、検索者やシステム管理者の誤った判断により不要なキャッシュデータが長時間保存されているノードについては、検索が行われた場合であっても、所望データがキャッシュに複製されていないのでデータ検索時間の短縮には貢献することができず、また、ネットワーク全体の処理効率の向上にも貢献することができない、という問題があった。
本発明は、上記に鑑みてなされたものであって、ネットワーク全体の処理効率を向上させることが可能なP2P通信方法を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかるP2P通信方法は、P2P通信を行う各ノードの性能に応じて階層化されたP2Pネットワークを形成するネットワーク形成ステップと、各ノード中の特定の検索ノードが、所定の検索条件を含む検索要求メッセージを自ノードよりも性能の良いノードに送信する検索要求ステップと、検索要求メッセージを受信したノードが、メッセージに含まれた検索条件に基づいて、検索対象データまたはデータを検索するためのキー情報である検索対象情報を保持しているかどうかを判断する判断ステップと、検索対象情報を保持していると判断した場合に、検索対象情報の保持時間を計算するための基礎情報である保持時間基数を計算し、検索対象情報および保持時間基数を含めた検索応答メッセージを、検索ノードに向けて送信する応答ステップと、検索対象情報を保持していないと判断した場合に、検索要求メッセージをさらに性能の良いノードに転送する転送ステップと、検索対象情報を保持するノードから検索ノードまでの通信経路上のノードが、受信した検索応答メッセージを転送するとともに、メッセージに含まれた保持時間基数に基づきノードの性能に応じた保持時間を計算し、メッセージに含まれた検索対象情報を保持時間にわたってキャッシュに保持し、保持時間経過後にキャッシュから削除するキャッシュステップと、を含むことを特徴とする。
この発明によれば、P2Pネットワーク全体の処理効率を向上させることができる、という効果を奏する。
以下に、本発明にかかるP2P通信方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、P2Pネットワークの実施の形態1の構成例を示す図である。このネットワークは、P2P通信を行うアプリケーションを実装し、インターネットなどを使用してP2Pネットワークに参加するパーソナルコンピュータに代表されるノード1−1,1−2,1−3,1−4,1−5,1−6,1−7から構成される。構成する各ノードが、P2P通信時において補償することが可能な性能によって相互に上下関係を持ち、ほぼ同じ性能を持つノードが、同じ階層に位置するように論理的に接続して、論理的に階層化されたP2Pネットワークを形成する。本実施の形態では、各ノードの性能として、たとえば、データの通信速度を想定する。
図1は、P2Pネットワークの実施の形態1の構成例を示す図である。このネットワークは、P2P通信を行うアプリケーションを実装し、インターネットなどを使用してP2Pネットワークに参加するパーソナルコンピュータに代表されるノード1−1,1−2,1−3,1−4,1−5,1−6,1−7から構成される。構成する各ノードが、P2P通信時において補償することが可能な性能によって相互に上下関係を持ち、ほぼ同じ性能を持つノードが、同じ階層に位置するように論理的に接続して、論理的に階層化されたP2Pネットワークを形成する。本実施の形態では、各ノードの性能として、たとえば、データの通信速度を想定する。
ここで、論理的に接続されたノードとは、あるノードがデータの検索や送受信を行う場合に対象となるノードをいう。実際(物理的)には、論理的に接続されたノード間の経路上に他ノードが存在する場合であっても、経路上の他ノードは、論理的に接続されたノード間の通信においては中継局としてのみ機能する。そのため、論理的にノードが接続されたP2Pネットワークでは、中継局としてのみ機能するノードを考慮せず(物理的な接続を考慮せず)、論理的に接続したノード同士が直接データの送受信等をしていると考えることができる。
図1のP2Pネットワークの構成例では、各ノードは、第一ノード階層2、第二ノード階層3、第三ノード階層4のいずれかの階層に属する。第一ノード階層2は、データ通信速度が速いノードが構成するP2Pネットワークの階層を表し、図1では、ノード1−4,ノード1−5,ノード1−6がこの階層に属する。第二ノード階層3は、データ通信速度が平均的なノードが構成するP2Pネットワークの階層を表し、図1では、ノード1−2,ノード1−3,ノード1−7がこの階層に属する。第三ノード階層4は、データ通信速度が遅いノードが構成するP2Pネットワークの階層を表し、図1では、ノード1−1がこの階層に属する。本実施の形態では、データ通信速度を2つのしきい値で区切ることにより高速/中速/低速の3階層としている。なお、一例として3階層としているが、2階層または4階層以上にすることも可能である。
つづいて、本実施の形態のP2P通信方法を詳細に説明する。最初に、ノードが、P2Pネットワークに参加する場合の処理を説明する。新規にP2Pネットワークに参加するノードは、P2Pアプリケーション起動時に、たとえば、P2Pアプリケーションのソフトウェア業者等が管理する2つの既定ノードに対して、自ノードのデータ通信速度の情報を含めた参加要求メッセージを送信する。2つの既定ノードへの接続は、インターネット等を使用する。
参加要求メッセージを受信した(既定の)ノードは、参加要求メッセージに含まれたデータ通信速度と、自ノードのデータ通信速度を比較する。参加要求メッセージを送信したノードのデータ通信速度が自ノードのデータ通信速度より速い場合、参加要求メッセージを受信したノードは、参加要求メッセージを送信したノードを、自ノードの上流に配置して接続することで、P2Pネットワークに参加させる。逆に、参加要求メッセージを送信したノードのデータ通信速度が自ノードのデータ通信速度とほぼ同じか、または遅い場合、参加要求メッセージを受信したノードは、参加要求メッセージを送信したノードを、自ノードの下流に配置して接続することで、P2Pネットワークに参加させる。
ただし、参加要求メッセージを送信したノードのデータ通信速度が、参加要求メッセージを受信したノードのデータ通信速度より極端に速い場合、または極端に遅い場合、参加要求メッセージを受信したノードは参加を拒否する。極端にデータ通信速度の速さが違う場合、参加要求メッセージを受信したノードと参加要求メッセージを送信したノードは、データ通信速度によって階層化されたP2Pネットワークにおいて、直接接続する関係にはならない。
ここで、極端に速い場合とは、たとえば、基準速度を自ノードのデータ通信速度のd倍(1<d)として、d倍より速い場合とする。同様に、極端に遅い場合とは、基準速度を自ノードのデータ通信速度のa倍(0<a<1)として、a倍より遅い場合とする。また、ほぼ同じ場合とは、たとえば、基準速度を自ノードのデータ通信速度のb倍(0<a<b<1)およびc倍(1<c<d)として、b倍より速くc倍より遅い場合とする。a,b,c,dは、0<a<b<1<c<dの範囲において任意に設定することが可能である。
つぎに、参加要求メッセージを受信したノードは、参加要求メッセージを送信したノードに、参加の成否を送信する。たとえば、参加要求メッセージを受信したノードは、参加を拒否する場合、自ノードと接続するノードの情報を、参加要求メッセージを送信したノードに通知する。具体的には、参加要求メッセージを送信したノードのデータ通信速度が、参加要求メッセージを受信したノードのデータ通信速度のd倍より(極端に)速かった場合は、参加要求メッセージを受信したノードより上流ノードの方が、参加要求メッセージを送信したノードとのデータ通信速度の差が小さく、参加要求メッセージを送信したノードが参加できる可能性が高いと考えられるので、参加要求メッセージを受信したノードは、自ノードが接続する上流ノードの情報を通知する。これにより、参加要求メッセージを送信したノードは、既定ノード以外のノードに対しても、参加要求メッセージを送信することができる。参加要求メッセージを送信したノードは、接続する上流ノードが2つに達するまで、他のノードとの接続を繰り返し試みる。
なお、図1における矢印の向きは、接続しているノード間での上流,下流の関係を表す。上流、下流の関係は、上記データ通信速度の比較結果で決定されるものであり、階層の上下関係を示すものではない。たとえば、ノード1−2とノード1−3の関係では、ノード1−3が上流、ノード1−2が下流として接続していることを表している。なお、ノードが接続可能な上流,下流のノード数は制限することとしてもよい。また、最上位の第一ノード階層2に属するノードは、一例として、上流として接続するノードを1つとする。ただし、上記データ通信速度の比較結果、上流として接続されるノードが存在しない第一ノード階層2に属するノードについては、同一階層のノードのいずれか1つを上位ノードとして接続する。
また、参加要求メッセージを送信し、P2Pネットワークに参加したノードは、P2Pアプリケーション終了時に、接続中の他のノードからそのノードと接続するノードの情報を受け取る。これにより、P2Pネットワークに参加したノードは、アプリケーション再起動時に、既定ノード以外のノードに対しても、参加要求メッセージを送信することが可能となる。
以上説明した手順によって、参加要求メッセージを送信したノードは、P2Pネットワークに参加することができる。また、ノードのデータの通信速度により論理的に階層化されたP2Pネットワークを形成することができる。
つづいて、P2Pネットワークにおいて、ノードがデータ検索を実施する場合の処理を、図1に基づいて詳細に説明する。本実施の形態では、各ノードがキャッシュに保持するものとして、「データ」本体ではなく、データを元にハッシュ関数で求めたハッシュ値を用いた「キー」とする。なお、データ本体を用いることとしてもよい。ここでは、ノード1−1が、データData_Gを取得するためにデータ検索を実施する場合について検討する。
なお、データ検索を行う場合の前提として、たとえば、データData_Gを保持するノード1−7は、データData_GのキーGを自ノードの上流に位置するノード1−5とノード1−6に対して送信しておく。ノード1−7は、キーGとして、たとえば、データ名,データを保持するノード情報,更新日時,ジャンル、等を予め格納していることとする。また、データを保持するノードが、キーを自ノードの上流に位置するノードに送信する場合、キーの送信範囲はノードの通過数を示すホップ数により制限される。たとえば、ホップ数が1の場合、ノード1−7は、キーGをノード1−5とノード1−6に送信し、ノード1−5とノード1−6がキーGを保存する。
まず、ノード1−1は、自ノードの上流に位置するノード1−2とノード1−3に対して検索条件を含む検索要求メッセージL_Gを送信する。ノード1−1は、検索条件として、データ名のほか、指定した更新日,データのジャンル,制限ホップ数、等を含ませる。
つぎに、検索要求メッセージL_Gを受信したノード1−2,1−3は、メッセージに含まれる検索条件と自ノードが保存するキーを比較する。比較の結果、ここでは一致するキーが存在しないので、ノード1−2,1−3は、自ノードの上流に位置するノード、すなわち、ノード1−3,1−4およびノード1−4,1−5に検索要求メッセージL_Gを転送する。このとき、ノード1−2,1−3は、検索要求メッセージ内のホップ数を1つ増加する。なお、ホップ数の初期値は1とする。したがって、たとえば、ノード1−2は、検索要求メッセージL_Gを受信したが一致するキーが存在しないので、検索要求メッセージ内のホップ数を2として検索要求メッセージL_Gをノード1−3およびノード1−4に転送する。また、ノード1−3も、検索要求メッセージL_Gを受信したが一致するキーが存在しないので、検索要求メッセージ内のホップ数を2として検索要求メッセージL_Gをノード1−4およびノード1−5に転送する。
転送された検索要求メッセージL_Gを受信したノード(1−4,1−3,1−5)は、上記と同様に、メッセージに含まれる検索条件と自ノードが保存するキーとを比較する。比較の結果、ここでは一致するキーGが存在するノード1−5が、一致したキーGおよび生存時間基数を含ませた検索応答メッセージR_Gを、検索要求メッセージL_Gを最初に送信したノード1−1に向けて送信する。このとき、検索応答メッセージR_Gを送信するノード1−5は、自ノードと検索要求メッセージL_Gを最初に送信したノード1−1の経路上のノード(検索要求メッセージL_Gを転送したノード)1−3を経由してメッセージを送信する。
なお、同一の検索要求メッセージを複数回受信したノードは、2回目以降の同一の検索要求メッセージに対する処理は行わない。たとえば、上記において、ノード1−3は、ノード1−1から転送された検索要求メッセージL_G以外に、ノード1−2から転送された検索要求メッセージL_Gを受信するが、後から受信したノード1−2からの検索要求メッセージL_Gについては処理を行わない。
また、ノード1−4は、ノード1−2,1−3から同一の検索要求メッセージL_Gを受信する。このような場合は、先に受信した方の検索要求メッセージL_Gに応じて、メッセージに含まれる検索条件と自ノードが保存するキーとを比較する。後に受信した検索要求メッセージL_Gについては処理を行わない。
また、ノード1−4は、先に受信した検索要求メッセージL_Gに応じて比較処理を行うが、一致するキーが存在しないので、検索要求メッセージ内のホップ数を3として検索要求メッセージL_Gをノード1−5に転送する。しかしながら、ノード1−4から転送された検索要求メッセージL_Gを受信したノード1−5は、既にノード1−3から転送された検索要求メッセージL_Gに応じて処理を終了しているので、後から受信した検索要求メッセージL_Gに対する処理は行わない。
また、検索要求メッセージL_Gは、検索条件に含まれる制限ホップ数によって、転送される回数が制限される。これにより、検索要求メッセージが、P2Pネットワーク内でいつまでも転送されつづけることを防止することができる。
また、検索応答メッセージR_Gに含まれる生存時間基数は、「(既定生存時間)×(キーへのアクセス回数)×(検索要求メッセージ内のホップ数)」とする。既定生存時間は、各ノードのデータ通信速度によって既定される固定値である。キーへのアクセス回数は、各ノードで管理および更新する値である。検索要求メッセージ内のホップ数は、検索要求メッセージL_Gを最初に送信したノードから検索応答メッセージR_Gを送信するノードまでの転送回数により定まる。たとえば、上記ノード1−5の場合は、既定生存時間を100秒、キーへのアクセス回数が100回とすると、検索要求メッセージL_G内のホップ数が2なので、生存時間基数は「100×100×2=20000秒」となる。ノード1−5は、キーGと生存時間基数20000秒を検索応答メッセージR_Gに含めて、検索要求メッセージL_Gを最初に送信したノード1−1に向けて送信する。
本実施の形態では、ノードのデータ通信速度が速いほど既定生存時間を大きくとることとする。また、検索要求メッセージを送信したノードから遠いほど検索要求メッセージ内のホップ数が大きくなる。したがって、上記生存時間基数の計算式より生存時間基数を計算すると、ノードのデータ通信速度が速く、キーへのアクセス回数が多く、検索要求メッセージを送信したノードから遠いほど(ホップ数が多いほど)、生存時間基数が大きくなる。
つぎに、検索応答メッセージR_Gを送信したノード1−5と検索要求メッセージL_Gを最初に送信したノード1−1の経路上にあるノード1−3は、検索応答メッセージR_G内のキーGを、自ノードのキャッシュに保持する。このとき、キーGをキャッシュに保持するノード1−3は、保持するキーGに生存時間を付与する。生存時間は、「(生存時間基数)×(log10(自ノードのデータ通信速度[bps]))」とする。ここでは、検索応答メッセージR_Gに含まれる生存時間基数が20000秒である。また、自ノードのデータ通信速度を107bpsとする。したがって、生存時間は、「20000×log10(107)=140000秒」となる。この場合、ノード1-3は、キーGを140000秒間にわたってキャッシュに保持することになり、140000秒経過後にキャッシュに保持したキーGを削除する。なお、上記生存時間の計算式では、ノードのデータ通信速度が速いほど、生存時間が大きくなる。
つぎに、検索要求メッセージL_Gを送信したノード1−1は、検索応答メッセージR_Gを受信すると、検索応答メッセージ内R_GのキーGを使用して、ノード1−7から「ノード1−7→ノード1−5→ノード1−3」の経路でデータData_Gを取得し、取得したデータData_Gを自ノードで保持する。
上記のようにキャッシュに保持したキーの生存時間を設定することで、データ通信速度が速く検索要求ノードから遠いノードは、アクセス回数の多いキーをより長い時間にわたってキャッシュに保持する。また、これらのノードで検索処理を行う方が、データ通信速度が速いため、データの検索が完了するまでの時間を短縮することができ、P2Pネットワーク全体の処理効率は向上する。逆に、データ通信速度の遅いノードについては、キーの生存時間を短くする。その結果、データ通信速度が小さいノードで行われる検索処理は少なくなり、P2Pネットワーク全体の処理効率からみても望ましい。
以上説明したように、本実施の形態によれば、データ通信速度で階層化されたP2Pネットワークにおいて、各ノードが、自身のデータ通信速度を考慮してキャッシュに保持したキーの生存時間を決めることとした。これにより、データ通信速度が遅いノードで検索処理が行われる機会が少なくなり、データ通信速度の速いノードで検索処理が行われる機会が多くなるため、データを検索する時間を短縮することができ、さらに、P2Pネットワーク全体の処理効率を向上させることができる。
実施の形態2.
本実施の形態では、新規にP2Pネットワークに参加するノードが、参加要求メッセージ内に、自ノードのデータ通信速度のほかに、さらに、使用可能なキャッシュ領域の情報も含める。なお、本実施の形態にかかるP2Pネットワークの構成例は実施の形態1と同様のため、同様の符号を付してその説明を省略する。
本実施の形態では、新規にP2Pネットワークに参加するノードが、参加要求メッセージ内に、自ノードのデータ通信速度のほかに、さらに、使用可能なキャッシュ領域の情報も含める。なお、本実施の形態にかかるP2Pネットワークの構成例は実施の形態1と同様のため、同様の符号を付してその説明を省略する。
つづいて、本実施の形態のP2P通信方法を説明する。実施の形態1と同様、新規にP2Pネットワークに参加するノードは、P2Pアプリケーション起動時に、2つの既定ノードに対して参加要求メッセージを送信する。このとき、参加要求メッセージ内に、自ノードのデータ通信速度の情報と、さらに、自ノードの使用可能キャッシュ領域の大きさの情報を含める。使用可能キャッシュ領域とは、ノードがP2Pネットワークにおいてキーを保持することができる自ノードのキャッシュの大きさをいう。
参加要求メッセージを受信した(既定の)ノードは、参加要求メッセージに含まれたデータ通信速度と、自ノードのデータ通信速度を比較する。このとき、データ通信速度がほぼ同じである場合、参加要求メッセージを受信したノードは、さらに使用可能キャッシュ領域の大きさも比較する。
たとえば、参加要求メッセージを送信したノードの使用可能キャッシュ領域が自ノードの使用可能キャッシュ領域より大きい場合、参加要求メッセージを受信したノードは、参加要求メッセージを送信したノードを、自ノードの上流に配置して接続することで、P2Pネットワークに参加させる。逆に、参加要求メッセージを送信したノードの使用可能キャッシュ領域が自ノードの使用可能キャッシュ領域とほぼ同じか、または小さい場合、参加要求メッセージを受信したノードは、参加要求メッセージを送信したノードを、自ノードの下流に配置して接続することで、P2Pネットワークに参加させる。
ここで、ほぼ同じ場合とは、たとえば、基準値を自ノードの使用可能キャッシュ領域の大きさのe倍(0<e<1)およびf倍(1<f)として、e倍より大きくf倍より小さい場合とする。e,fは、任意に設定することが可能である。
本実施の形態のP2Pネットワークでは、データ通信速度がほぼ同じ場合であっても、使用可能キャッシュ領域が大きいノードが上流に配置されることで、他ノードからの検索要求に対応する機会が多くなり、その結果、多くのキーをキャッシュに保持することになる。また、使用可能キャッシュ領域が小さいノードについては、その容量から、新たなキーをキャッシュに保持できない可能性があるので、使用可能キャッシュ領域が大きいノードよりも下流に配置し、検索要求に対応する機会を少なくする。
なお、ノードがP2Pネットワークに参加した以降の、ノードがデータ検索を実施する処理については実施の形態1と同様である。
以上説明したように、本実施の形態によれば、ノードのデータ通信速度がほぼ同じ場合に、使用可能キャッシュ領域の大きいノードのキャッシュにキーを保持する機会を多くすることとした。これにより、使用可能キャッシュ領域の大きいノードにより多くのキーを保持させることができ、また、使用可能キャッシュ領域の小さいノードのキャッシュに保持させるキーの数を制限できるため、実施の形態1と比較して、さらに、P2Pネットワーク全体の処理効率を向上させることができる。
以上のように、本発明にかかるP2P通信方法は、P2Pネットワークに有用であり、特に、データ通信速度に応じてノードが階層的に接続されたP2Pネットワークに適している。
1−1,1−2,1−3,1−4,1−5,1−6,1−7 ノード
2 第一ノード階層
3 第二ノード階層
4 第三ノード階層
2 第一ノード階層
3 第二ノード階層
4 第三ノード階層
Claims (6)
- P2P(ピアツーピア)通信を行う各ノードの性能に応じて階層化されたP2Pネットワークを形成するネットワーク形成ステップと、
前記各ノード中の特定の検索ノードが、所定の検索条件を含む検索要求メッセージを自ノードよりも性能の良いノードに送信する検索要求ステップと、
検索要求メッセージを受信したノードが、当該メッセージに含まれた検索条件に基づいて、検索対象データまたは当該データを検索するためのキー情報である検索対象情報を保持しているかどうかを判断する判断ステップと、
検索対象情報を保持していると判断した場合に、当該検索対象情報の保持時間を計算するための基礎情報である保持時間基数を計算し、当該検索対象情報および当該保持時間基数を含めた検索応答メッセージを、前記検索ノードに向けて送信する応答ステップと、
検索対象情報を保持していないと判断した場合に、前記検索要求メッセージをさらに性能の良いノードに転送する転送ステップと、
前記検索対象情報を保持するノードから前記検索ノードまでの通信経路上のノードが、受信した検索応答メッセージを転送するとともに、当該メッセージに含まれた保持時間基数に基づきノードの性能に応じた保持時間を計算し、当該メッセージに含まれた検索対象情報を当該保持時間にわたってキャッシュに保持し、保持時間経過後にキャッシュから削除するキャッシュステップと、
を含むことを特徴とするP2P通信方法。 - 前記ノードの性能を、データ通信速度とすることを特徴とする請求項1に記載のP2P通信方法。
- 前記保持時間を、データ通信速度が速いほど長くすることを特徴とする請求項2に記載のP2P通信方法。
- 前記保持時間基数を、データ通信速度が速く、前記検索対象情報へのアクセス回数が多く、かつ検索要求メッセージを送信したノードから前記検索対象情報を保持するノードまでのホップ数が多いほど、長くすることを特徴とする請求項2または3に記載のP2P通信方法。
- 前記ネットワーク形成ステップでは、
新たにP2Pネットワークに参加を希望するノードが、自身のデータ通信速度を含む参加要求メッセージを送信する参加要求ステップと、
既にP2Pネットワークに参加する単一または複数のノードが、当該メッセージに含まれたデータ通信速度と自身のデータ通信速度とを比較する比較ステップと、
を含み、
前記比較結果に基づいて、新たに参加するノードを、適切な階層に配置してP2Pネットワークに参加させることを特徴とする請求項2、3または4に記載のP2P通信方法。 - 前記ネットワーク形成ステップでは、
新たにP2Pネットワークに参加を希望するノードが、自身のデータ通信速度およびP2P通信に使用可能なキャッシュ領域を含む参加要求メッセージを送信する参加要求ステップと、
既にP2Pネットワークに参加する単一または複数のノードが、当該メッセージに含まれたデータ通信速度およびキャッシュ領域と、自身のデータ通信速度およびP2P通信に使用可能なキャッシュ領域と、を比較する比較ステップと、
を含み、
前記比較結果に基づいて、新たに参加するノードを、適切な階層に配置してP2Pネットワークに参加させることを特徴とする請求項2、3または4に記載のP2P通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008120352A JP2009272802A (ja) | 2008-05-02 | 2008-05-02 | P2p通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008120352A JP2009272802A (ja) | 2008-05-02 | 2008-05-02 | P2p通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009272802A true JP2009272802A (ja) | 2009-11-19 |
Family
ID=41438980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008120352A Pending JP2009272802A (ja) | 2008-05-02 | 2008-05-02 | P2p通信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009272802A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015520959A (ja) * | 2012-04-20 | 2015-07-23 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 情報中心ネットワークにおける名前ベースの近隣探索及びマルチホップサービス探索 |
CN115037797A (zh) * | 2022-06-15 | 2022-09-09 | 华中师范大学 | 一种基于消息效用值的缓存管理方法 |
WO2023127530A1 (ja) * | 2021-12-28 | 2023-07-06 | 京セラ株式会社 | システム、ノード、及びプログラム |
-
2008
- 2008-05-02 JP JP2008120352A patent/JP2009272802A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015520959A (ja) * | 2012-04-20 | 2015-07-23 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 情報中心ネットワークにおける名前ベースの近隣探索及びマルチホップサービス探索 |
US9515920B2 (en) | 2012-04-20 | 2016-12-06 | Futurewei Technologies, Inc. | Name-based neighbor discovery and multi-hop service discovery in information-centric networks |
WO2023127530A1 (ja) * | 2021-12-28 | 2023-07-06 | 京セラ株式会社 | システム、ノード、及びプログラム |
CN115037797A (zh) * | 2022-06-15 | 2022-09-09 | 华中师范大学 | 一种基于消息效用值的缓存管理方法 |
CN115037797B (zh) * | 2022-06-15 | 2023-05-23 | 华中师范大学 | 一种基于消息效用值的缓存管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Efficient and scalable consistency maintenance for heterogeneous peer-to-peer systems | |
JP2009508410A (ja) | マルチデスティネーション・ルーティングを利用したピアツーピア・オーバーレイ通信の並列実行 | |
CN101640623A (zh) | 在对等网络中搜索资源的方法和设备 | |
Shah et al. | A survey of P2P content sharing in MANETs | |
Silva et al. | Time-aware reactive storage in wireless edge environments | |
Heer et al. | Adapting distributed hash tables for mobile ad hoc networks | |
Pitkanen et al. | Searching for content in mobile DTNs | |
Shen et al. | A geographically aware poll-based distributed file consistency maintenance method for P2P systems | |
Saravanan et al. | An effective model for QoS assessment in data caching in MANET environments | |
WO2008089616A1 (fr) | Serveur, système réseau p2p et procédé d'acheminement et de transfert de l'affectation de la clé de ressource de ce dernier....... | |
Liu et al. | A group-based data-driven approach for data synchronization in unstructured mobile P2P systems | |
JP2009272802A (ja) | P2p通信方法 | |
Cherbal et al. | A survey of DHT solutions in fixed and mobile networks | |
CN107612980B (zh) | 一种结构化p2p网络中可调节且可靠的一致性维护方法 | |
CN103118113B (zh) | 一种对等网络及其网络资源定位方法 | |
Wang et al. | An efficient update propagation algorithm for P2P systems | |
Jain et al. | Cooperative caching strategy in mobile ad hoc networks for cache the replaced data item | |
Vishnevsky et al. | Scalable blind search and broadcasting over distributed hash tables | |
Benkaouha et al. | Towards an efficient failure detection in MANETs | |
Gu et al. | ContextPeers: scalable peer-to-peer search for context information | |
Vishnevsky et al. | Scalable blind search and broadcasting in peer-to-peer networks | |
CN113901144B (zh) | 非全网共识区块链下的查询方法、设备及存储介质 | |
Liu et al. | A category overlay infrastructure for peer-to-peer content search | |
Kwak et al. | An overlay-based resource monitoring scheme for social applications in MANET | |
Gupta et al. | Cooperative data caching in MANETs and WSNs: a survey |