한국   대만   중국   일본 
Peer to Peer - Wikipedia コンテンツにスキップ

Peer to Peer

出典: フリ?百科事典『ウィキペディア(Wikipedia)』
P2P から?送)
P2P型ネットワ?ク(?はピュアP2P型)。コンピュ?タ?同士が?等に通信を行うのが特?である。

Peer to Peer (ピア?トゥ?ピア または ピア?ツ??ピア)とは、複?のコンピュ?タ?間で通信を行う際の ア?キテクチャ のひとつで、?等の者(Peer、ピア)同士が通信をすることを特?とする通信方式、通信モデル、あるいは通信技術の一分野を指す。 略記 は、 P2P

?要 [ 編集 ]

クライアント?サ?バ? 型ネットワ?ク。サ?バ?(?中央)とクライアントは一?一の通信を行うのが特?である。

P2Pに?置される用語として クライアント?サ?バ?方式 がある。クライアント?サ?バ?方式ではネットワ?クに接?されたコンピュ?タ?に?しクライアントとサ?バ?に立場?機能を分離しており、一般的には多?のクライアントに?してサ?バ?が一つである。クライアントはサ?バ?とだけ通信でき、あるクライアントが他のクライアントと通信するにはサ?バ?を介する必要がある。

P2Pではネットワ?クに接?されたコンピュ?タ?同士が?等の立場、機能で直接通信するものである。クライアント?サ?バ?方式ではクライアント?が非常に多くなると、サ?バ?およびその回線に負荷が集中するのに?して、Peer to Peer方式はその構造上、コンピュ?タ?機器(以下機器)?が膨大になっても特定機器へのアクセス集中が?生しにくいという特?がある。

P2P通信の一例としては、インタ?ネットに接?した一般ユ?ザ?の複? パソコン (PC) 同士が互いのIPアドレスを呼び合う直接通信が?げられる。P2Pによるネットワ?クは オ?バ?レイ?ネットワ?ク の一つに?えられる。

?用化されたシステムとしてはP2Pデ?タ配信、P2P電話、P2P?示板、P2P放送(テレビ、ラジオ)、P2P グル?プウェア 、P2P 分散ファイルシステム 、P2P- SIP [1] 、P2P- DNS 、P2P-?想ネットワ?ク [2] P2P地震情報 などがある。また ここ?年 [ いつ? ] 、商用的にも注目を集めており、特に IP電話 Skype LINE など)や 動?配信サ?ビス Veoh など)といった?用例が?えてきている。

しかしこれらの?用技術は 2000年代 初頭から?用化され始めた技術であり、?史的にはまだ日が?く、成熟技術となるまでには解決しなければならない??な問題がある(後述)。そのため現在でも?術的な?究が盛んな分野である。また無線通信で使われる モバイルアドホックネットワ?ク もP2Pの一種であるが、無線での通信可能距離を稼ぐという特殊な使い方であるので詳細な解?は別項に?る。

P2Pの端末?置 [ 編集 ]

P2Pにおける通信端末はピア (peer) と呼ばれるが、 トポロジ?理論 グラフ理論 などで用いる「 ノ?ド 」(node: 節点)という呼?を用いることも多い。またクライアントの機能とサ?バ?の機能を?せ持つという意味で サ?バント という呼び方をすることもある。

端末?置の種類としてはPCやスマ?トフォンが使われることが多いが、 セットトップボックス (STB) やHDDレコ?ダ?、HDD?? ル?タ? といったものもピアになりうる。

インタ?ネットにおけるP2P [ 編集 ]

インタ?ネットの基盤である IPネットワ?ク IPアドレス さえ分かっていればどのコンピュ?タ?機器(以下機器)にも到達できる。つまり機器同士が相手のIPアドレスを知っていればP2P通信が可能である。したがってインタ?ネット上のP2P?用技術はIPネットワ?クの オ?バ?レイ?ネットワ?ク (Overlay Network:以下、OLNと略記する)と見ることができる。

例えば放送型サ?ビスにP2Pを?用する場合は マルチキャスト 型の通信形態となる。そのためこれを オ?バ?レイマルチキャスト 英語版 (Overlay Multicast: OLM) あるいは アプリケ?ション層マルチキャスト (Application Layer Multicast: ALM) と呼ぶことがある [3] 。 後者の呼び方は IPマルチキャスト がTCP/IPのレイヤ?でのパケットの複製によりマルチキャストを行うのに?して、アプリケ?ション層でデ?タのコピ?をしてマルチキャストを行う、という意味合いから?ている。

P2Pアプリケ?ションの分類 [ 編集 ]

ピア間で何を行うか、という?点で、大きく以下の4つのタイプのアプリケ?ションに分けられる。

  1. 一?一通信型
  2. 放送型
  3. オンデマンド型
  4. 分散型デ?タ管理

複?の機能を?せ持ったアプリケ?ションも存在する。

一?一通信型 [ 編集 ]

IP電話 LINE電話 Skype に代表されるような、コンピュ?タ?間で一?一のコミュニケ?ションを行う使い方である。相手のIPアドレスを、電話番?やニックネ?ムなどから見つけ出し(=IPアドレス解決と呼ぶ)、その後、ピアとピアが?等の立場で通信を行う。音?デ?タであれば電話となり、映像デ?タであればテレビ電話となる。インスタントメッセ?ジやオンラインチャットもある。通常、アプリケ?ションの背後に特定の利用者がいることが想定されており、その人物に?して接?を行うような使い方が多い。この種のアプリケ?ションのほとんどには、相手がオンラインかどうかを認識する仕掛け(プレゼンス機能)が設けられている。

このタイプのアプリケ?ションでは、デ?タは通常、リアルタイムでの ストリ?ミング でやりとりされる。

P2P-SIP では、SIP-URIからIPアドレスを知るためにP2P技術を利用しており、??あったSIPサ?バ?を不要にできる。アドレス解決以外の、接??切?のシグナリング、音?デ?タのストリ?ミングに?しては、??の SIP やRTP/RTCPの技術をそのまま利用している。

?用例: IP電話 Skype LINE MSN メッセンジャ? P2P-SIP 、P2P グル?プウェア

放送型 [ 編集 ]

ノ?ド間接?を、カスケ?ド?に多段階層化して、配信ツリ?を形成することで、放送型のサ?ビスが?現できる。ツリ?の根元のノ?ドが、放送局となり、上流ノ?ドから下流ノ?ドへ、デ?タをバケツリレ?させることで、全?加ノ?ドに、ほぼ同時に同じデ?タを配信することが出?る。これにより、リアルタイムのストリ?ミング中?が可能となる。

オ?バ?レイマルチキャストの配信ツリ?の?念?

多くのP2P型放送システムでは、アドレス解決にハイブリッドP2P方式(後述)を採用しており、通常、チャンネル名でインデックスサ?バ?に問い合わせると、「あのノ?ドの下流につながってストリ?ムをもらいなさい」というようにノ?ドを紹介してくれる。インデックスサ?バ?の役割を各ノ?ドに分散させる(=ピュアP2P型OLM)ことも可能ではあるが、そのような??例はまだ?表されていない。

上流ノ?ドが?退したときに、ストリ?ムが途切れるが、?部にバッファを持つことで、一定時間は再生が途絶えないようにして、その間に、別の上流ノ?ドを探し出して、再接?を行う。再接?の?理には時間がかかるため、通常、予備の上流ノ?ドを用意しておく。再接?先候補のノ?ドを、?率的に準備しておくために、??な創意工夫が考案されている(詳細は、 オ?バ?レイマルチキャスト または アプリケ?ション層マルチキャスト を?照)。

?用例:P2P放送(映像+音?、音?のみ); ( PeerCast [4] [5] [6] [7] )

オンデマンド型 [ 編集 ]

動?コンテンツの配信などでは、コンテンツを欲するノ?ドが、?該コンテンツを持っているノ?ドを探し出して、そこへデ?タを要求することで、保持ノ?ドがそれに?じてデ?タを送信する(オンデマンド)、という一方向型の通信が行われる。言い換えると、持っている者から欲する者へ、という通信である。送信元は、使用しているコンピュ?タ?が複?ある場合、どれからでも良くて、不特定多?の中からアプリケ?ションまかせで選ばれる。送信元のIPアドレスは、コンテンツのタイトルなどを手がかりに、インデックスを?索して見つけ出し、コンテンツ保持ノ?ドにデ?タ送信を要求することで、デ?タ?送が開始される。

オンデマンド型のP2Pアプリケ?ションでは、配信?率を上げるために、コンテンツのコピ?(レプリカ)を作ることが良く行われる。一度取得したコンテンツのコピ?を保持して、他のノ?ドに?して提供可能な?態にすることで、他の誰かが再度同じコンテンツをリクエストしたときに、負荷分散の?果が期待できるからである。これは特に、人?のあるコンテンツに?してのアクセス集中の緩和に?果的である。レプリカを作るアプリケ?ションでは、通常、レプリカをキャッシュフォルダ??に作り、古いレプリカから追い出すような??になっていることが多い。

オンデマンド型のP2Pアプリケ?ションでは、デ?タ全?を、一旦リクエストした端末までは持ってきてから利用する「ダウンロ?ド方式」の??がほとんどである。

?用例:P2Pコンテンツ配信、P2P?示板、P2Pグル?プウェア、P2P分散ファイルシステム、無線の アドホックネットワ?ク 、ゲ?ムソフトのアップデ?ト [8]

分散型デ?タ管理 [ 編集 ]

ビットコイン Ripple などでは、通貨の取引履?情報を、各ノ?ドで分散して持つことによって、通常はサ?バ?で管理する台帳デ?タの不正な改竄を防ぐことができるので、P2Pを利用している。これにより自分のノ?ドの台帳デ?タを改ざんしたとしても、他の多?のノ?ドが正しいデ?タを保持していることにより、比較した際に改竄を?知することができる。

技術的な分類 [ 編集 ]

インデックス情報の持ち方での分類 [ 編集 ]

「こういうデ?タを持っているのは誰ですかね?」という問いに答えるためには、デ?タを?索するための?性キ?とデ?タのありかの??表(インデックス)を持っている必要があるが、これをサ?バ?に集中して持たせる場合と、各ノ?ドに分散して持たせる場合と、特定の選ばれたノ?ドに分散して持たせる場合、の3種類が存在する。

ハイブリッドP2P [ 編集 ]

ハイブリッドP2Pの仕組み(?はBitTorrentのもの)。
欲しい情報となるキ?ファイルをサ?バ?に?え、?際のデ?タはノ?ド同士でやりとりを行う仕組み

ハイブリッドP2Pにおいては、インデックス情報を、中央のインデックスサ?バ?で一括して管理する。新しいデ?タを保持したノ?ドは、自分が持っていることを、インデックスサ?バ?に申告しておく。デ?タを欲するノ?ドが、「このキ?に??する相手を?えて下さいな」とインデックスサ?バ?に問い合わせると、??する相手のIPアドレスを?えてくれる。インデックスが膨大になると、スケ?ラビリティが無くなる点が、後述のピュアP2Pと比べて劣るが、通常規模のシステムであれば、この方式で事足りるケ?スが多い。インデックスサ?バ?がダウンすると、システム全?が停止するため、耐障害性の面では、ピュアP2Pに劣る。

BitTorrent Napster WinMX 、放送型P2P ( オ?バ?レイマルチキャスト 英語版 ) の多くは、この方式を採用している。

ピュアP2P [ 編集 ]

ピュアP2Pの仕組み。一切の?理をコンピュ?タ?同士が?等に通信を行うのが特?である。

インデックス情報は、各ノ?ドが少しずつ分散して持ち合う。 自分の知っているノ?ドに、「デ?タを持っているのは誰ですかね?」というメッセ?ジを投げると、そのノ?ドが知っていれば回答が返り、知らなければ又聞きをしてくれる(メッセ?ジを?送する)仕組みになっている。インデックスが膨大になっても破綻しないため、スケ?ラビリティが高い。メッセ?ジ?送の方式により、非構造化タイプと構造化タイプの2つに分類できる(後述)。

Gnutella Freenet OceanStore Winny Share は、この方式を採用している。

ピュアP2Pに?加する際には、?に?加しているノ?ドのIP情報を何らかの形で知っている必要がある。このためには、常に活きているノ?ド(コンタクトノ?ド)を用意しておいて、?加時はいつもそこに接?するようにするか、あるいは、?加しているいくつかのノ?ドの情報をサ?バ?に集めて、ここから知るように構成する。

ス?パ?ノ?ド型P2P [ 編集 ]

インデックス情報は、特定の選ばれたノ?ド(ス?パ?ノ?ド)が分?して持つ。ス?パ?ノ?ドには、できるだけ安定な端末(ずっと電源が入っていて、通信回線も安定していて、?域幅も太いようなノ?ド)が選ばれる。ス?パ?ノ?ドは、一般のエンドユ?ザ?の端末から能力に?じて選ばれるが、サ?ビス提供者側が用意した端末であることも多い。

KaZaA Skype は、この方式を採用している。

ピュアP2Pの構造による分類 [ 編集 ]

ピュアP2Pにおいては、インデックス情報も分散されて持たれるため、相手先IPアドレスの?見の仕組みは、?索メッセ?ジを?送することで行われる。?送方式で、2種類に分類ができる。

非構造化オ?バ?レイ
問い合わせ元のノ?ドは、キ?に??する相手を?見するために、手?たり次第に、自分が知っているノ?ド(かつて通信をしたことがあるノ?ドなど)に?して、「デ?タを持っているのは誰ですかね?」というメッセ?ジを投げつけ、受け取ったノ?ドは、持っていれば返答し、持っていなければ?索メッセ?ジをコピ?して、他のノ?ドに?送する方式。メッセ?ジがネズミ算式に?えるので、フラッディング方式(洪水という意味)という別名が付いているが、メッセ?ジが?えすぎないように、?送回?やメッセ?ジの生存時間などで制限をかける必要がある。そのため、OLN上のどこかに相手が存在するにも?わらず、?見できない場合がある。
Gnutella Freenet Winny Share などで??されている。
構造化オ?バ?レイ
「デ?タを持っているのは誰ですかね?」というメッセ?ジを?送する際の、?送先を選ぶ方法をあらかじめ構造的に決めておいて、「キ?に??する相手」が確?に分かるようにした方式である。よく知られている方式として、 DHT (Distributed Hash Table)、 SkipGraph などがある。?索メッセ?ジの?送先の範?が、キ?に?じてだんだんと絞られていくように設計されている。?略イメ?ジは、A?の中のB市の中のC町の中の田中さん、というように範?を絞る形で、メッセ?ジが?送される、と考えると理解がしやすい。
DHTの??例としては、 Chord CAN Pastry Tapestry Kademlia OpenDHT Overlay Weaver などがよく知られている。

脚注 [ 編集 ]

出典 [ 編集 ]

?連項目 [ 編集 ]

外部リンク [ 編集 ]

?究資料 [ 編集 ]

P2P?連情報サイト [ 編集 ]