JP5259835B2 - データノード装置、ピア情報取得方法およびシステム - Google Patents
データノード装置、ピア情報取得方法およびシステム Download PDFInfo
- Publication number
- JP5259835B2 JP5259835B2 JP2011541075A JP2011541075A JP5259835B2 JP 5259835 B2 JP5259835 B2 JP 5259835B2 JP 2011541075 A JP2011541075 A JP 2011541075A JP 2011541075 A JP2011541075 A JP 2011541075A JP 5259835 B2 JP5259835 B2 JP 5259835B2
- Authority
- JP
- Japan
- Prior art keywords
- peer
- peer list
- list
- unit
- data node
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1063—Discovery through centralising entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1072—Discovery involving ranked list compilation of candidate peers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Description
例えば、Haiyong Xie, Y. Richard Yang, Arvind Krishnamurthy, Yanbin Liu, Avi Silberschatz等は、“P4P:Provider Portal for Applications”, SIGCOMM’2008, pp. 351−362(非特許文献1)において、新たなP2Pネットワーク・アーキテクチャ:P4P(Proactive network Provider Participation for P2P)を紹介している。
このアーキテクチャは、ネットワークプロバイダがアプリケーションに対して、より多くの情報を提供することを可能にし、不必要なクロスISP(cross−ISP)トラフィックを減らすことができる。ネットワークとアプリケーションの間のインタフェースとして、P4Pは、問合せクライアントに対して、静的なネットワーク・ポリシ、ネットワークの状態を反映するP4P距離(P4P distance)、ネットワーク能力(network capability)等の多くの情報を提供する。この新たなアーキテクチャの中心は、P4P距離インタフェースである。このインタフェースを通じて、ISPは、アプリケーションに対して、現在の内部リンクと外部リンク上のアプリケーションオーバヘッド情報を供給することができる。P4Pアーキテクチャは、ネットワーク事業者(network operator)とアプリケーション間の通信用のインタフェースとして情報サーバを導入する。
しかしながら、そのような解決策は、現在のネットワークに対してほとんど効果が得られない。その理由は、まず、現在多くのP2Pシステムが既に配置されており、莫大なネットワークトラフィックを生成しているためである。次に、現在のP2Pシステム内のクロスドメインのトラフィックを減らすためには、既存のP2Pシステム内のインデックスサーバのコードの修正が必要であるが、それを実現するのが困難であるためである。
ネットワーク内の他の実体(インデックスサーバとデータノード)は、それが提供するサービスインタフェースを通して2つのデータノード間の距離、ネットワークトラフィック等に関する情報を問い合わせることが可能である。
1つの情報サーバを複数のP2Pシステムで共有することが可能である。例えば、情報サーバはISP(Internet Services Provider)によって提供される。
データノードは、情報処理装置(例えば、パソコン(PC)、携帯電話、携帯情報端末(PDA)等)であり、データを格納し、ネットワーク上の他のネットワークノードと通信することが可能である。
データノードは、1つ以上のP2Pシステムにそれぞれ属する1つ以上のデータノードアプリケーションユニットをホストする。
例えば、BitTorrentアプリケーションユニット、eMuleアプリケーションユニット等が、PCにインストールされる。
以下、データノードは、時々、データノード装置あるいはデータノードとして機能する装置と呼ばれる。
ピア情報要求ユニットは、データノードアプリケーションユニットが属するP2Pシステム内のインデックスサーバから所望のファイルを交換(ダウンロード/アップロード)しているピアに関する情報を要求する。
データ交換ユニットは、ピアリスト内のピアとの接続を確立し、これらのピアに対してファイルデータのダウンロード/アップロードを実行する。
データノードアプリケーションユニットはデータノードアプリケーションとも呼ばれる。さらに、インデックスサーバと情報サーバとのやり取りにおいて、データノードアプリケーションユニットは、クライアントアプリケーションユニットあるいはクライアントアプリケーションとも呼ばれる。
それは、ネットワークの状態とトラフィックに関するプレファレンスを反映する上述のようなP4P距離でもよい。
同様に、本発明において、データノードアプリケーションユニットのピアとデータノードアプリケーションユニットの間の距離は、それらのピアをホストするデータノードとそのデータノードアプリケーションユニットをホストするデータノードの間の距離に等しい。
図3に示すように、システム1は、1以上のインデックスサーバ10−1、10−2、・・・及び10−N(インデックスサーバ10と総称する)と、データノード20と、情報サーバ30を含む(Nは1以上の整数)。
各インデックスサーバ10のピア情報記憶ユニットは、インデックスサーバ10が属するP2Pシステム内のデータノードアプリケーションユニットが存在する全てのデータノードの情報、例えば、連絡情報、保有するファイルのメタデータ等を格納し、それらのデータノードによって交換された(あるいは、これらのデータノードによってホストされたデータノードアプリケーションユニットによって交換された)ファイルによってデータノードを索引付けする。
ピア情報管理ユニットは、全てのデータノードアプリケーションユニットと通信することを担当する。それは、データノードアプリケーションユニットからの報告を受信するとピア情報記憶ユニットに情報を格納し、データノードアプリケーションユニットからの要求を受信すると適切なピアリストを提供する。
説明を分かり易くするため、情報サーバ30の内部構成は、図3において示されていない。
データノードアプリケーションユニット21−1、インデックスサーバ10−1、情報サーバ30および1以上の他のデータノードにそれぞれ存在する1以上のデータノードアプリケーションユニット(図示しない)が、第1のP2Pシステムを構成し、データノードアプリケーションユニット21−2、インデックスサーバ10−2、情報サーバ30および1以上の他のデータノードにそれぞれ存在する1以上の他のデータノードアプリケーションユニット(図示しない)が第2のP2Pシステムを構成し、・・・、データノードアプリケーションユニット21−N、インデックスサーバ10−N、情報サーバ30および1以上の他のデータノードにそれぞれ存在する1以上の他のデータノードアプリケーションユニット(図示しない)が第NのP2Pシステムを構成する。
例えば、いくつかのデータノードに存在するBitTorrentアプリケーションユニット、BitTorrentインデックスサーバおよび共有情報サーバが、BitTorrent P2Pシステムを構成し、一方、これらのデータノードに存在するeMuleアプリケーションユニット、eMuleインデックスサーバおよび共有情報サーバが、eMule P2Pシステムを構成する。
ここでは、N個のP2Pシステムの各々がインデックスサーバを含み、全てのP2Pシステムが1つの情報サーバを共有する場合を図示している。しかしながら、しかしながら、本発明がそれらに限定されないことは当業者にとって明白である。
例えば、各P2Pシステムが複数のインデクシングサーバを含んでいてもよい。また、例えば、各P2Pシステムが、それ自身の情報サーバを有していてもよい。
さらに、異なるP2Pシステムが1以上のインデックスサーバを共有していてもよい。
例えば、データノードアプリケーションユニット21−1は、データ交換装置211−1とピア情報要求ユニット212−1を含み、データノードアプリケーションユニット21−2は、データ交換装置211−2とピア情報要求ユニット212−2を含み、・・・、データノードアプリケーションユニット21−Nは、データ交換装置211−Nとピア情報要求ユニット212−Nを含んでいる。
アプリケーションメッセージ処理ユニット222−1、222−2、・・・、222−Nは、それぞれデータノードアプリケーションユニット21−1、21−2、・・・、21−Nと関連付けられている。
すなわち、例えば、アプリケーションメッセージ処理ユニット222−1、222−2、・・・、222−Nは、データノードアプリケーションユニット21−1、21−2、・・・、21−Nに対して一対一に対応している。
各アプリケーションメッセージ処理ユニット222は、対応する1つのデータノードアプリケーションユニット21が属するP2Pシステムに関連する情報、例えば、BitTorrentメッセージ、eMuleメッセージ等を処理する。
ピアリスト要求を受信すると、インデックスサーバ10−1内のピア情報管理ユニットは、そのピア情報記憶ユニットからデータの交換に利用可能なデータノードアプリケーションユニットを検索し、それらのデータノードアプリケーションユニットからランダムに幾つかのデータノードアプリケーションユニットを選択し、返すピア・リストに、ランダムに選択したデータノードアプリケーションユニットをピアとして含める。
ランダムな選択であるため、ピア・リストは、データノードアプリケーションユニット21−1が存在するデータノード20から大きな距離にあるデータノード上に存在するピア(例えば、異なるネットワークドメインから来る)を含む可能性がある。
言いかえれば、これらのピアはデータノードアプリケーションユニット21−1から離れている。例えば、それらは、データノードアプリケーションユニット21−1と異なるネットワークドメインから到来する。
一実現例において、各インデックスサーバ10は、ピア・リスト応答メッセージにオリジナルピア・リストを含め、ピア・リスト要求を発行したデータノードに対してその応答メッセージを返す。
このリスト処理ユニット22は、プラグ・インのモジュールとして、データノード20のオペレーティング・システムのカーネル空間に追加することが可能である。しかしながら、本発明はそれに限定されない。
リスト処理ユニット22が、他のソフトウェア、ハードウェア、ファームウェアあるいはそれの組み合わせによって実現可能であることは、当業者にとって十分に理解できるであろう。
具体的には、リスト処理ユニット22内の応答メッセージ取得ユニット221が、ピア・リスト応答メッセージを取得する。
一実現例において、応答メッセージ取得ユニット221は、データノード20のオペレーティング・システムにフック(hook)を追加することにより、インデックスサーバから送信された全てのメッセージを傍受することが可能である。
一実現例において、応答メッセージ取得ユニット221は、オペレーティング・システムのTCP/IPプロトコル・スタックからこれらのメッセージを直接傍受することが可能である。
例えば、データノードアプリケーションユニット21−1がBitTorrentアプリケーションである場合、応答メッセージ取得ユニット221は、メッセージに含まれる識別情報に基づいて、受信したメッセージがBitTorrent応答メッセージであることを識別し、それにより、BitTorrentアプリケーション・メッセージと関連するアプリケーションメッセージ処理ユニット222−1にメッセージを配信することが可能となる。
その後、アプリケーションメッセージ処理ユニット222−1は、オリジナルピア・リストに含まれるピアが存在するデータノードの当該データノード20に対する位置情報を取得するために、情報サーバ30にピア位置要求を発行する。
一例として、ピア位置情報は、オリジナルピア・リストにリストされたピアが存在するデータノードとデータノード20の間のネットワーク距離(例えばP4P距離)に関する情報を含んでいる。
一実現例において、この処理は、これらのピアが存在するデータノードとデータノード20の間のネットワーク距離の降順にピアをソートすることを含む。
一例として、この処理は、ピアをソートした後、必要に応じてデータノード20から遠く離れているデータノード上に存在するピアをリストから削除する処理をさらに含む。
この結果、このように処理されたピア・リストは、データノード20に比較的近いデータノード、例えば、データノード20と同一のネットワークドメインに属するデータノード上のピアだけを包含する。
この実施例において、アプリケーションメッセージ処理ユニット222−1から配信された処理済みのピア・リストを受信すると、応答メッセージ構成ユニット223は、それを、対応するP2Pシステムに対するピア・リスト応答メッセージとしてデータノードアプリケーションユニット21−1に提供する。
例えば、データノードアプリケーションユニット21−1がBitTorrentアプリケーションである場合、応答メッセージ構成ユニット223は、BitTorrent応答メッセージに処理済みのピア・リストを含め、それをデータノードアプリケーションユニット21−1に提供する。
これにより、データ交換装置211−1は、ピア・リストにリストされているピアとのデータ交換を実行することができる。
従って、本発明によれば、既存のP2Pクロスドメイントラフィックを、既存のインデックスサーバとデータノードアプリケーションユニットを修正することなく軽減することが可能となる。また、例えばプラグ・インとして提供される1つのリスト処理ユニットをデータノード内に配置するだけで、多数の異なるP2Pシステムに関するメッセージを同時に処理することが可能となる。
本実施の形態において、このステップは、ピア・リスト要求に応じてインデックスサーバ10の1つから送信されたピア・リスト応答メッセージを傍受し、データノードアプリケーションユニット21のどの1つがピア・リスト応答メッセージに関連しているかを判定し、その後、対応するアプリケーションメッセージ処理ユニット222の1つにピア・リスト応答メッセージを配信する応答メッセージ取得ユニット221を含んでいる。
このステップは、さらに、応答メッセージ取得ユニット221から配信されたピア・リスト応答メッセージを受信し、ピア・リスト応答メッセージに含まれるオリジナルピア・リストを抽出し、それにより、オリジナルピア・リストを取得するアプリケーションメッセージ処理ユニット222の1つを含む。
図5において、図3に示した第1の実施の形態と同一の参照番号は、同一の構成要素を示しており、これらの構成要素の詳細な説明については省略する。
キャッシュユニット225は、ピア・リストを取得する処理で得られた処理済みのピア・リストをキャッシュする。
本実施の形態においては、1つのキャッシュユニット225が複数アプリケーションメッセージ処理ユニット222によって共有される場合を示していることに留意されたい。この場合、各アプリケーションメッセージ処理ユニット222は、キャッシュユニット225内の対応するエリアにアクセスする。
もちろん、当業者であれば思い付く他の実現方式も可能である。例えば、各アプリケーションメッセージ処理ユニット222がそれ自身のキャッシュユニットを有することも可能である。
その後、アプリケーションメッセージ処理ユニットは、そのように処理されたピア・リスト内のピアが十分であるかどうか、例えば、その数がしきい値に達しているかどうかを判定する。
ピアの数が少な過ぎると、データ交換を実行した場合に、データノードアプリケーションユニットは十分なデータソースを確保することできず、その結果、データダウンロードのための時間が延長されることになる。
短いダウンロード時間を保証するために、ピアの数が少な過ぎると判定した場合に、本実施の形態によるアプリケーションメッセージ処理ユニットは、キャッシュユニット225内の対応するエリアに、現在処理済みのピア・リストを一時的に格納し、対応するインデックスサーバ10の1つに1以上の追加のピア・リスト要求を発行することを、対応する再要求ユニットに指示する。
このような追加のピア・リスト要求を受け取ると、対応するインデックスサーバ10内のピア情報管理ユニットは、再度、ピア情報記憶ユニットを検索し、対応するデータノードアプリケーションユニットによって要求されたデータファイルを交換することができるピアをそこからランダムに選択し、その結果、オリジナルピア・リストを含む1以上の追加のピア・リスト応答メッセージをデータノード20aに提供する。
アプリケーションメッセージ処理ユニットは、ソート、削除、組合せを含む処理と、1以上の抽出された追加のオリジナルのピア・リストについて上述した判定を実行し、ピアの数が十分となるまで、必要に応じて再要求を繰り返す。
特に、一実現方式において、応答メッセージ取得ユニット221から配信されたピア・リスト応答メッセージ内のオリジナルのピア・リストを抽出した後、アプリケーションメッセージ処理ユニット222−1が、オリジナルのピア・リストを処理する。
この場合、組み合わせは不要であり、ソートされ幾つかのピアが削除されたピア・リストが処理済みのピア・リストとなる。
そこで、アプリケーションメッセージ処理ユニット222−1は、上述のようにソートされ幾つかのピアが削除されたピア・リストを、キャッシュユニット225内のピア・リストと組み合わせ、処理済みのピア・リストを取得する。
その前或いは後に、アプリケーションメッセージ処理ユニット222−1は、キャッシュユニット225内の対応するエリアを空にする。
このピア・リスト要求に応じて、インデックスサーバ10−1は、再度、ランダムに選択されたピア・リストを含むピア・リスト応答メッセージを返す。
そして、リスト処理ユニット22aは、処理済みのピア・リスト内のピアの数が十分となるまで、上述したような処理を繰り返す。
例えば、アプリケーションメッセージ処理ユニット222−2は、オリジナルピア・リストを抽出した後に、まず、オリジナルピア・リストを、キャッシュされたピア・リスト(もし存在すれば)と組み合わせ、その後、ネットワーク距離によって組み合わせたピア・リスト内のすべてのピアをソートし、かつ必要に応じて大きな距離を有する幾つかのピアを削除して、処理済みのピア・リストを取得することも可能である。
この場合、ピア・リストそのものをキャッシュすることに加えて、各ピアをホストするデータノードと現在のデータノードの間のネットワーク距離に関する情報もキャッシュすることも可能である。
当業者によって思い付く他の実現方式も可能である。
本実施の形態において、このオリジナルピア・リストは、対応するデータノードアプリケーションユニットのピア情報要求ユニットによって発行された最初のピア・リスト要求に応じてインデックスサーバ10の1つによって返されたオリジナルピア・リストであり、さらに、対応する再要求ユニットによって発行された追加のピア・リスト要求に応じてインデックスサーバ10の1つによって返されたオリジナルピア・リストでもある。
いずれの場合も、応答メッセージ取得ユニット221は、オリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、アプリケーションメッセージ処理ユニット222の対応する1つにピア・リスト応答メッセージを配信する。
その後、アプリケーションメッセージ処理ユニット222の対応する1つが、ピア・リスト応答メッセージに含まれるオリジナルのピア・リストを抽出する。
その後、処理済みのピア・リスト内のピアの数が十分となるまで、データノード20は、ステップS202からステップS206を繰り返す。
その後、その処理が終了する。
ピア・ツー・ピア(P2P)データ交換においてデータノードとして機能する装置であって、
ピア・リスト要求を発行し、ピアとのP2Pデータ交換を実行するデータノードアプリケーションユニットと、
前記ピア・リスト要求に応答してインデックスサーバによって提供されるオリジナルのピア・リストを傍受し、情報サーバにピア位置要求を発行し、ピア位置要求に応答して情報サーバによって提供されるピア位置情報を受信し、前記ピア位置情報に基づいてオリジナルのピア・リストについて処理を実行し、処理済みのピア・リストを取得し、処理済みのピア・リストを前記データノードアプリケーションユニットに提供するリスト処理ユニットと
を備えることを特徴とする装置。
前記リスト処理ユニットが、さらに、
ピア・リスト要求に応答して前記インデックスサーバによって提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、傍受したピア・リスト応答メッセージを、アプリケーションメッセージ処理ユニットに配信するメッセージ傍受ユニットと、
前記メッセージ傍受ユニットから配信されたピア・リスト応答メッセージを受信すると、ピア・リスト応答メッセージに含まれるオリジナルのピア・リストを抽出し、前記情報サーバにピア位置要求を発行し、ピア位置要求に応答して前記情報サーバによって提供されるピア位置情報を受信し、前記ピア位置情報に基づいて、抽出したオリジナルのピア・リストについて処理を実行して処理済みのピア・リストを取得し、処理済みのピア・リストをメッセージ構成ユニットに提供する前記アプリケーションメッセージ処理ユニットと、
前記アプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、処理済みのピア・リストを含むピア・リスト応答メッセージを前記データ・ノード・アプリケーション・ユニットに提供する前記メッセージ構成ユニットとを含むことを特徴とする付記1に記載の装置。
前記リスト処理ユニットが、さらに、
ピア・リスト要求を発行するために用いる再要求ユニットと、
一時的にピア・リストを格納するために用いるキャッシュユニットとを含み、
前記アプリケーションメッセージ処理ユニットは、オリジナルのピア・リストについて処理を実行した後に、処理済みのピア・リストにリストされたピアの数がしきい値に達しているかどうかを判定し、ピアの数が前記しきい値に達していない場合、処理済みのピア・リストを一時的に前記キャッシュユニットに格納し、ピア・リスト要求を発行するよう前記再要求ユニットに指示する
ことを特徴とする付記2に記載の装置。
前記データノードアプリケーションユニットが、1以上のデータノードアプリケーションユニットを含み、
前記アプリケーションメッセージ処理ユニットは、1以上のデータノードアプリケーションユニットに対応する1以上のアプリケーションメッセージ処理ユニットを含み、
前記メッセージ傍受ユニットは、1以上の前記データノードアプリケーションユニットのうち、特定のデータノードアプリケーションユニットに関連するピア・リスト要求に応答して提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、1以上のアプリケーションメッセージ処理ユニットのうち、特定のデータノードアプリケーションユニットに対応するアプリケーションメッセージ処理ユニットに対して傍受したピア・リスト応答メッセージを配信し、
前記メッセージ構成ユニットは、1以上のアプリケーションメッセージ処理ユニットのうち、特定のアプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、1以上のデータノードアプリケーションユニットのうち、特定のアプリケーションメッセージ処理ユニットに対応するデータノードアプリケーションユニットに対して処理済みのピア・リストを含むピア・リスト応答メッセージを提供する
ことを特徴とする付記2に記載の装置。
前記データノードアプリケーションユニットが1以上のデータノードアプリケーションユニットを含み、
前記アプリケーションメッセージ処理ユニットは、1以上のデータノードアプリケーションユニットに対応する1以上のアプリケーションメッセージ処理ユニットを含み、
前記再要求ユニットは、1以上のアプリケーションメッセージ処理ユニットに対応する1以上の再要求ユニットを含み、
前記メッセージ傍受ユニットは、1以上の前記データノードアプリケーションユニットのうち、特定のデータノードアプリケーションユニットに関連するピア・リスト要求に応答して提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、1以上のアプリケーションメッセージ処理ユニットのうち、特定のデータノードアプリケーションユニットに対応するアプリケーションメッセージ処理ユニットに対して傍受したピア・リスト応答メッセージを配信し、
1以上のアプリケーションメッセージ処理ユニットのそれぞれが、ピアノ数が前記しきい値に達していない場合、前記キャッシュユニットに処理済みのピア・リストを格納し、1以上の再要求ユニットのうち、自身のアプリケーションメッセージ処理ユニットに対応する再要求ユニットに対してピア・リスト要求の発行を指示し、
前記メッセージ構成ユニットは、1以上のアプリケーションメッセージ処理ユニットのうち、特定のアプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、1以上のデータノードアプリケーションユニットのうち、特定のアプリケーションメッセージ処理ユニットに対応するデータノードアプリケーションユニットに対して処理済みのピア・リストを含むピア・リスト応答メッセージを提供する
ことを特徴とする付記3に記載の装置。
前記ピア位置情報は、オリジナルのピア・リストにリストされたピアが存在するデータノードと前記データノード間のネットワーク距離に関する情報を含み、
前記処理が、前記ネットワーク距離の降順に、オリジナルのピア・リストにリストされたピアをソートする処理を含むことを特徴とする付記1に記載の装置。
前記処理が、オリジナルのピア・リストにリストされたピアのうち、前記データノードと同一のネットワークドメイン内にないデータノード上に存在するピアを削除する処理を含むことを特徴とする付記6に記載の装置。
前記ピア位置情報は、オリジナルのピア・リストにリストされたピアが存在するデータノードと前記データノード間のネットワーク距離に関する情報を含み、
前記処理が、前記ネットワーク距離の降順に、オリジナルのピア・リストにリストされたピアをソートする処理と、オリジナルのピア・リストにリストされたピアのうち、前記データノードと同一のネットワークドメイン内にないデータノード上に存在するピアを削除する処理と、残りのピアを含むピア・リストを前記キャッシュユニットにキャッシュしたピア・リストと組み合わせる処理を含むことを特徴とする付記3に記載の装置。
ピア・ツー・ピア(P2P)データ交換のためのデータノードでのピア情報の取得方法であって、
インデックスサーバにピア・リスト要求を発行するステップと、
前記ピア・リスト要求に応答して前記インデックスサーバによって提供されるオリジナルのピア・リストを傍受するステップと、
情報サーバにピア位置要求を発行するステップと、
前記ピア位置要求に応答して前記情報サーバによって提供されるピア位置情報を受信するステップと、
前記ピア位置情報に基づいて、オリジナルのピア・リストについて処理を実行して処理済みのピア・リストを取得するステップと、
処理済みのピア・リストをデータノードアプリケーションユニットに提供するステップと
を含むことを特徴とするピア情報の取得方法。
処理済みのピア・リストにリストされたピアの数がしきい値に達しているかどうかを判定し、ピアの数が前記しきい値に達していない場合、処理済みのピア・リストをキャッシュし、1以上の追加のピア・リスト要求を発行するステップをさらに含むことを特徴とする付記9に記載のピア情報の取得方法。
前記ピア位置情報は、オリジナルのピア・リストにリストされたピアが存在するデータノードと前記データノード間のネットワーク距離に関する情報を含み、
前記処理が、前記ネットワーク距離の降順に、オリジナルのピア・リストにリストされたピアをソートする処理を含むことを特徴とする付記9に記載のピア情報の取得方法。
前記処理が、オリジナルのピア・リストにリストされたピアのうち、前記データノードと同一のネットワークドメイン内にないデータノード上に存在するピアを削除する処理を含むことを特徴とする付記11に記載のピア情報の取得方法。
前記ピア位置情報は、オリジナルのピア・リストにリストされたピアが存在するデータノードと前記データノード間のネットワーク距離に関する情報を含み、
前記処理が、前記ネットワーク距離の降順に、オリジナルのピア・リストにリストされたピアをソートする処理と、オリジナルのピア・リストにリストされたピアのうち、前記データノードと同一のネットワークドメイン内にないデータノード上に存在するピアを削除する処理と、残りのピアを含むピア・リストをキャッシュしたピア・リストと組み合わせる処理を含むことを特徴とする付記10に記載のピア情報の取得方法。
ピア・ツー・ピア(P2P)データ交換においてピア情報を提供しかつ取得するためのシステムであって、
それぞれがピア・リスト要求に応答してオリジナルのピア・リストを提供する1つ以上のインデックスサーバと、
ピア位置要求に応答してピア位置情報を提供する情報サーバと、
付記1から付記8の何れかに記載の装置と
を備えることを特徴とするシステム。
10−1〜10−N:インデックスサーバ
20:データノード
21−1〜21−N:データノードアプリケーションユニット
211−1〜211−N:データ交換装置
212−1〜212−N:ピア情報要求ユニット
22:リスト処理ユニット
221:応答メッセージ取得ユニット
222−1〜222−N:アプリケーションメッセージ処理ユニット
223:応答メッセージ構成ユニット
225:キャッシュユニット
30:情報サーバ
50、50a:インデックスサーバ
51:ピア情報記憶ユニット
52、52a:ピア情報管理ユニット
53:位置情報要求ユニット
60:データノード
61:データノードアプリケーションユニット
611:データ交換装置
612:ピア情報要求ユニット
70:情報サーバ
Claims (8)
- ピア・ツー・ピア(P2P)データ交換においてデータノードとして機能する装置であって、
ピア・リスト要求を発行し、ピアとのP2Pデータ交換を実行するデータノードアプリケーションユニットと、
前記ピア・リスト要求に応答してインデックスサーバによって提供されるオリジナルのピア・リストを傍受し、情報サーバにピア位置要求を発行し、ピア位置要求に応答して情報サーバによって提供されるピア位置情報を受信し、前記ピア位置情報に基づいてオリジナルのピア・リストについて処理を実行し、処理済みのピア・リストを取得し、処理済みのピア・リストを前記データノードアプリケーションユニットに提供するリスト処理ユニットとを備え、
前記リスト処理ユニットが、
ピア・リスト要求に応答して前記インデックスサーバによって提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、傍受したピア・リスト応答メッセージを、アプリケーションメッセージ処理ユニットに配信するメッセージ傍受ユニットと、
前記メッセージ傍受ユニットから配信されたピア・リスト応答メッセージを受信すると、ピア・リスト応答メッセージに含まれるオリジナルのピア・リストを抽出し、前記情報サーバにピア位置要求を発行し、ピア位置要求に応答して前記情報サーバによって提供されるピア位置情報を受信し、前記ピア位置情報に基づいて、抽出したオリジナルのピア・リストについて処理を実行して処理済みのピア・リストを取得し、処理済みのピア・リストをメッセージ構成ユニットに提供する前記アプリケーションメッセージ処理ユニットと、
前記アプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、処理済みのピア・リストを含むピア・リスト応答メッセージを前記データ・ノード・アプリケーション・ユニットに提供する前記メッセージ構成ユニットと、
ピア・リスト要求を発行するために用いる再要求ユニットと、
一時的にピア・リストを格納するために用いるキャッシュユニットとを含み、
前記アプリケーションメッセージ処理ユニットは、オリジナルのピア・リストについて処理を実行した後に、処理済みのピア・リストにリストされたピアの数がしきい値に達しているかどうかを判定し、ピアの数が前記しきい値に達していない場合、処理済みのピア・リストを一時的に前記キャッシュユニットに格納し、ピア・リスト要求を発行するよう前記再要求ユニットに指示する
ことを特徴とする装置。 - 前記データノードアプリケーションユニットが、1以上のデータノードアプリケーションユニットを含み、
前記アプリケーションメッセージ処理ユニットは、1以上のデータノードアプリケーションユニットに対応する1以上のアプリケーションメッセージ処理ユニットを含み、
前記メッセージ傍受ユニットは、1以上の前記データノードアプリケーションユニットのうち、特定のデータノードアプリケーションユニットに関連するピア・リスト要求に応答して提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、1以上のアプリケーションメッセージ処理ユニットのうち、特定のデータノードアプリケーションユニットに対応するアプリケーションメッセージ処理ユニットに対して傍受したピア・リスト応答メッセージを配信し、
前記メッセージ構成ユニットは、1以上のアプリケーションメッセージ処理ユニットのうち、特定のアプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、1以上のデータノードアプリケーションユニットのうち、特定のアプリケーションメッセージ処理ユニットに対応するデータノードアプリケーションユニットに対して処理済みのピア・リストを含むピア・リスト応答メッセージを提供する
ことを特徴とする請求項1に記載の装置。 - 前記データノードアプリケーションユニットが1以上のデータノードアプリケーションユニットを含み、
前記アプリケーションメッセージ処理ユニットは、1以上のデータノードアプリケーションユニットに対応する1以上のアプリケーションメッセージ処理ユニットを含み、
前記再要求ユニットは、1以上のアプリケーションメッセージ処理ユニットに対応する1以上の再要求ユニットを含み、
前記メッセージ傍受ユニットは、1以上の前記データノードアプリケーションユニットのうち、特定のデータノードアプリケーションユニットに関連するピア・リスト要求に応答して提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、1以上のアプリケーションメッセージ処理ユニットのうち、特定のデータノードアプリケーションユニットに対応するアプリケーションメッセージ処理ユニットに対して傍受したピア・リスト応答メッセージを配信し、
1以上のアプリケーションメッセージ処理ユニットのそれぞれが、ピアノ数が前記しきい値に達していない場合、前記キャッシュユニットに処理済みのピア・リストを格納し、1以上の再要求ユニットのうち、自身のアプリケーションメッセージ処理ユニットに対応する再要求ユニットに対してピア・リスト要求の発行を指示し、
前記メッセージ構成ユニットは、1以上のアプリケーションメッセージ処理ユニットのうち、特定のアプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、1以上のデータノードアプリケーションユニットのうち、特定のアプリケーションメッセージ処理ユニットに対応するデータノードアプリケーションユニットに対して処理済みのピア・リストを含むピア・リスト応答メッセージを提供する
ことを特徴とする請求項1に記載の装置。 - 前記ピア位置情報は、オリジナルのピア・リストにリストされたピアが存在するデータノードと前記データノード間のネットワーク距離に関する情報を含み、
前記処理が、前記ネットワーク距離の降順に、オリジナルのピア・リストにリストされたピアをソートする処理を含むことを特徴とする請求項1から請求項3の何れか1項に記載の装置。 - 前記処理が、オリジナルのピア・リストにリストされたピアのうち、前記データノードと同一のネットワークドメイン内にないデータノード上に存在するピアを削除する処理を含むことを特徴とする請求項4に記載の装置。
- 前記ピア位置情報は、オリジナルのピア・リストにリストされたピアが存在するデータノードと前記データノード間のネットワーク距離に関する情報を含み、
前記処理が、前記ネットワーク距離の降順に、オリジナルのピア・リストにリストされたピアをソートする処理と、オリジナルのピア・リストにリストされたピアのうち、前記データノードと同一のネットワークドメイン内にないデータノード上に存在するピアを削除する処理と、残りのピアを含むピア・リストを前記キャッシュユニットにキャッシュしたピア・リストと組み合わせる処理を含むことを特徴とする請求項1から請求項5の何れか1項に記載の装置。 - ピア・ツー・ピア(P2P)データ交換のためのデータノードとして機能する装置によるピア情報の取得方法であって、
データノードアプリケーションユニットが、ピア・リスト要求を発行し、ピアとのP2Pデータ交換を実行するデータノードアプリケーションステップと、
リスト処理ユニットが、前記ピア・リスト要求に応答してインデックスサーバによって提供されるオリジナルのピア・リストを傍受し、情報サーバにピア位置要求を発行し、ピア位置要求に応答して情報サーバによって提供されるピア位置情報を受信し、前記ピア位置情報に基づいてオリジナルのピア・リストについて処理を実行し、処理済みのピア・リストを取得し、処理済みのピア・リストを前記データノードアプリケーションユニットに提供するリスト処理ステップと、
前記リスト処理ユニットが含むメッセージ傍受ユニットが、ピア・リスト要求に応答して前記インデックスサーバによって提供されるオリジナルのピア・リストを含むピア・リスト応答メッセージを傍受し、傍受したピア・リスト応答メッセージを、アプリケーションメッセージ処理ユニットに配信するメッセージ傍受ステップと、
前記リスト処理ユニットが含むアプリケーションメッセージ処理ユニットが、前記メッセージ傍受ユニットから配信されたピア・リスト応答メッセージを受信すると、ピア・リスト応答メッセージに含まれるオリジナルのピア・リストを抽出し、前記情報サーバにピア位置要求を発行し、ピア位置要求に応答して前記情報サーバによって提供されるピア位置情報を受信し、前記ピア位置情報に基づいて、抽出したオリジナルのピア・リストについて処理を実行して処理済みのピア・リストを取得し、処理済みのピア・リストをメッセージ構成ユニットに提供するアプリケーションメッセージ処理ステップと、
前記リスト処理ユニットが含むメッセージ構成ユニットが、前記アプリケーションメッセージ処理ユニットから配信された処理済みのピア・リストを収集し、処理済みのピア・リストを含むピア・リスト応答メッセージを前記データ・ノード・アプリケーション・ユニットに提供するメッセージ構成ステップと、
前記リスト処理ユニットが含む再要求ユニットが、ピア・リスト要求を発行する再要求ステップと、
前記リスト処理ユニットが含むキャッシュユニットが、一時的にピア・リストを格納するキャッシュステップとを有し、
前記アプリケーションメッセージ処理ステップで、オリジナルのピア・リストについて処理を実行した後に、処理済みのピア・リストにリストされたピアの数がしきい値に達しているかどうかを判定し、ピアの数が前記しきい値に達していない場合、処理済みのピア・リストを一時的に前記キャッシュユニットに格納し、ピア・リスト要求を発行するよう前記再要求ユニットに指示する
ことを特徴とするピア情報の取得方法。 - ピア・ツー・ピア(P2P)データ交換においてピア情報を提供しかつ取得するためのシステムであって、
それぞれがピア・リスト要求に応答してオリジナルのピア・リストを提供する1つ以上のインデックスサーバと、
ピア位置要求に応答してピア位置情報を提供する情報サーバと、
請求項1から請求項6の何れかに記載の装置と
を備えることを特徴とするシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910132675A CN101854374A (zh) | 2009-04-01 | 2009-04-01 | 数据节点装置、对端信息获取方法和*** |
CN200910132675.0 | 2009-04-01 | ||
PCT/CN2010/000335 WO2010111887A1 (zh) | 2009-04-01 | 2010-03-19 | 数据节点装置、对端信息获取方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012512471A JP2012512471A (ja) | 2012-05-31 |
JP5259835B2 true JP5259835B2 (ja) | 2013-08-07 |
Family
ID=42805639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011541075A Expired - Fee Related JP5259835B2 (ja) | 2009-04-01 | 2010-03-19 | データノード装置、ピア情報取得方法およびシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110307564A1 (ja) |
JP (1) | JP5259835B2 (ja) |
CN (1) | CN101854374A (ja) |
WO (1) | WO2010111887A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010277314A (ja) * | 2009-05-28 | 2010-12-09 | Kddi Corp | P2p配信方法およびシステム |
US9235519B2 (en) * | 2012-07-30 | 2016-01-12 | Futurewei Technologies, Inc. | Method for peer to peer cache forwarding |
US11386233B2 (en) | 2019-04-30 | 2022-07-12 | JFrog, Ltd. | Data bundle generation and deployment |
US11886390B2 (en) | 2019-04-30 | 2024-01-30 | JFrog Ltd. | Data file partition and replication |
US11340894B2 (en) | 2019-04-30 | 2022-05-24 | JFrog, Ltd. | Data file partition and replication |
US10999314B2 (en) | 2019-07-19 | 2021-05-04 | JFrog Ltd. | Software release tracking and logging |
WO2021014326A2 (en) | 2019-07-19 | 2021-01-28 | JFrog Ltd. | Software release verification |
US11695829B2 (en) | 2020-01-09 | 2023-07-04 | JFrog Ltd. | Peer-to-peer (P2P) downloading |
US11860680B2 (en) | 2020-11-24 | 2024-01-02 | JFrog Ltd. | Software pipeline and release validation |
US12061889B2 (en) | 2021-10-29 | 2024-08-13 | JFrog Ltd. | Software release distribution across a hierarchical network |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7272645B2 (en) * | 2001-05-25 | 2007-09-18 | Sbc Technology Resources, Inc. | Method of improving the reliability of peer-to-peer network downloads |
US20060212542A1 (en) * | 2005-03-15 | 2006-09-21 | 1000 Oaks Hu Lian Technology Development Co., Ltd. | Method and computer-readable medium for file downloading in a peer-to-peer network |
EP1821487B1 (en) * | 2006-02-21 | 2010-04-07 | Microsoft Corporation | Topology management in peer-to-peer content distribution clouds |
CN100493091C (zh) * | 2006-03-10 | 2009-05-27 | 清华大学 | 基于会话初始化协议的流媒体直播p2p网络方法 |
EP2084881B1 (en) * | 2006-09-28 | 2012-03-28 | Rayv Inc. | System and methods for Peer-to-Peer Media Streaming |
CN101005606B (zh) * | 2006-12-31 | 2012-07-04 | 华为技术有限公司 | 一种减少媒体播放延时的方法和装置 |
CN101018172A (zh) * | 2007-02-09 | 2007-08-15 | 浪潮电子信息产业股份有限公司 | 一种优化城域网内p2p传输的方法 |
US20090100128A1 (en) * | 2007-10-15 | 2009-04-16 | General Electric Company | Accelerating peer-to-peer content distribution |
CN101552719A (zh) * | 2008-04-01 | 2009-10-07 | 华为技术有限公司 | 路由选择方法和装置 |
US9106668B2 (en) * | 2008-06-24 | 2015-08-11 | Azureus Software, Inc. | Distributed peer location in peer-to-peer file transfers |
CN101394423B (zh) * | 2008-09-27 | 2012-07-18 | 中兴通讯股份有限公司 | 一种媒体定位、搜索方法和*** |
-
2009
- 2009-04-01 CN CN200910132675A patent/CN101854374A/zh active Pending
-
2010
- 2010-03-19 JP JP2011541075A patent/JP5259835B2/ja not_active Expired - Fee Related
- 2010-03-19 WO PCT/CN2010/000335 patent/WO2010111887A1/zh active Application Filing
- 2010-03-19 US US13/124,770 patent/US20110307564A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20110307564A1 (en) | 2011-12-15 |
CN101854374A (zh) | 2010-10-06 |
WO2010111887A1 (zh) | 2010-10-07 |
JP2012512471A (ja) | 2012-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5259835B2 (ja) | データノード装置、ピア情報取得方法およびシステム | |
US11194719B2 (en) | Cache optimization | |
US10681167B2 (en) | Distributed computing resources in an information centric network | |
US10880390B2 (en) | Method and apparatus for reducing network resource transmission size using delta compression | |
JP4938074B2 (ja) | リソースの位置情報の要求方法、当該方法のためのユーザノードおよびサーバ | |
US7782866B1 (en) | Virtual peer in a peer-to-peer network | |
KR20200040722A (ko) | 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 | |
JP5526137B2 (ja) | 選択的データ転送ストレージ | |
CN106031130A (zh) | 具有边缘代理的内容传送网络架构 | |
Dutta et al. | Caching scheme for information‐centric networks with balanced content distribution | |
KR20090080051A (ko) | P2p 네트워크에서 가상 피어를 호스팅하는 스폰서 노드, 및 방법 | |
Nikolaou et al. | Proactive cache placement on cooperative client caches for online social networks | |
JP6564852B2 (ja) | 情報中心ネットワーキング(icn)ノードのネットワークにおいてパケットを管理する方法 | |
CN109873855A (zh) | 一种基于区块链网络的资源获取方法和*** | |
Lal et al. | A cache content replacement scheme for information centric network | |
Lal et al. | A popularity based content eviction scheme via betweenness-centrality caching approach for content-centric networking (CCN) | |
Sourlas et al. | Caching in content-based publish/subscribe systems | |
JP4437956B2 (ja) | ファイル共有アプリケーションに対するインデックス・サーバ・サポートを提供する方法 | |
Pitkanen et al. | Searching for content in mobile DTNs | |
KR20130033252A (ko) | 서비스 오버레이 네트워크에서 종단간 QoS 보장형 콘텐츠 전달 방법 및 그 시스템 | |
JP4923115B2 (ja) | 自己組織型分散オーバーレイ・ネットワークにおいてオブジェクトへの参照を分散させる方法、コンピュータプログラム、及びノード、並びに自己組織型分散オーバーレイ・ネットワーク | |
Mishra et al. | A review on content centric networking and caching strategies | |
WO2017045438A1 (zh) | 一种移动网络决策cdn中缓存内容的方法、装置及*** | |
Lertsinsrubtavee et al. | Comparing NDN and CDN performance for content distribution service in community wireless mesh network | |
CN103685367A (zh) | 离线下载***和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121214 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130312 |
|
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: 20130404 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130424 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160502 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |