P2P(ピアツーピア)とは
P2Pとは情報を管理するサーバーを介さずに、端末間同士で情報をやり取りするネットワークモデルです。
P2Pは英語の「peer to peer」の略で、ピアツーピアとかピアトゥピアと呼ばれています。
「peer」は「同等の者、対等の者、仲間」という意味があり、「peer to peer」は対等の者同士のやり取り(通信)を意味しています。
P2Pの仕組み
P2Pは対等の者同士のやり取り(通信)という言葉の通り、対等な者同士でデータを管理する仕組みです。
私達が普段利用しているインターネットでは、サーバーという中心的な管理者が情報を処理して各利用者の端末(パソコンやスマホなど)に送っています。
サーバーとは高性能なパソコンみないなものです。また利用者の端末のことをクライアントといいます。
そしてこの仕組みを中央集権型(クライアントサーバー型)といいます。
これに対してP2Pは中心的な管理の役のサーバーが存在しません。その代わりクライアント同士で直接やり取りします。
そしてこれらのやり取りを他のクライアントも監視・記録・維持しています。
これがP2Pの仕組みです。
また本来、P2Pの場合はクライアントをノードと呼んでいます。
理由はクライアントとは情報を要求した利用者の端末のことを指すからです。クライアントサーバー型の話をする時によく使われます。
これに対してノードは利用者の端末だけでなく、参加している他の端末(パソコンやスマホ)も含まれます。
「参加している端末=ノード」です。
インターネットを使うのに必要なルータ、モデム、ハブ、自動車、家電製品、プリンターなどもインターネットに接続されるとノードになります。(ここではあまり深く考えなくてOK)
P2Pのメリット
サーバーダウンがない、「繋がらない」がない
クライアントサーバー型だと、同時に大量のアクセスがあるとサーバーがダウンしてそのサイトが閲覧できないという現象が起きます。経験がある人も多いんじゃないでしょうか?
他にもメンテナンスやアップデートや故障などでもサーバーを停止させることがあるため、繋がらない時間というものがどうしても発生してしまいます。
これに対しP2Pなら一部のノード(誰かのPCやスマホ)やネットワークが故障しても、他にもノードがあるためネットワーク全体としては生きています。
故障したノードやネットワークが回復したら、生きていた他のノードからデータを取得して修正すればいいわけです。
サーバーダウンがない、「繋がらない」がない、これがP2Pのメリットの一つです。
匿名性が高い(ただしマネーロンダリングの指摘有り)
P2Pは中央管理者がいないため、データの発信者情報が特定され難くなります。
参加しているノードを誰かが監視しているわけではないので、匿名性が高くなっています。
ただしビットコインのように取引が公開されている仮想通貨もありますが、そうではない仮想通貨に関してはマネーロンダリング(資金洗浄)に使われていると批判されてもいます。
常にデータ処理が速い
P2Pは複数のノードでネットワークを構築しているため、一箇所にアクセスが集中することがなく常に高速通信ができるのもメリットです。
クライアントサーバー型だと管理者である一つのサーバーにアクセスが集中すると通信速度が低下するかダウンしてしまいます。
TVであるお店が紹介されて自分でも見てみようとしても、そのお店のウェブサイトにアクセスできなかったり、表示されるのが遅かったりしませんか?
あの状態が通信速度の低下、あるいはパンク状態なわけです。
ゴールデンウィーク期間中に高速出口で大渋滞が起きているのと同じ現象です。一箇所にアクセスが集中するデメリットです。
高速に例えると、P2Pなら出口が一箇所ではなく複数あるため、渋滞すること無くスムーズに出ることができます。
低コスト
P2Pは管理役のサーバーが無いため、その維持管理コストがかかりません。それらにかかるエンジニアの人件費もエンジニアを採用する採用活動費もかかりません。
またクライアントサーバー型の場合、多くの人が利用するサービスを提供しようと思うとそれ相応の高性能なサーバーをいくつも用意する必要もあります。
高性能サーバー✕(維持管理費、人件費、採用活動費)となればかなりコストがかかります。それを負担するのはもちろん利用者です。
P2Pならこういったコストが必要ありません。
P2Pのデメリット
セキュリティリスクが高い
P2Pはノード同士で通信を行うため、一つのノードがウイルスに感染すると一気に感染拡大するというセキュリティリスクがあります。
またP2Pは匿名性が高いので感染源を特定することも困難です。
データの流出
P2Pは直接ノード同士がやり取りするため、データが流出する恐れが有り、またそれを食い止めるのも困難です。
データが行き渡るまでにタイムラグが有る
P2Pは参加者が増えれば増えるほど、データが行き渡るまでにタイムラグが生じます。
クライアントサーバー型であれば、データのやり取り先は一箇所だけなのですぐに反映されますが、P2Pは複数なのでその数が増えれば増えるほどタイムラグが生じます。
仮想通貨におけるP2Pの役割
仮想通貨におけるP2Pの役割としては、参加者はノードと呼ばれその中でユーザーとマイナーに分かれます。
ユーザーは文字通り仮想通貨の売買情報や送金したり貰ったりする利用者のことです。
マイナーは簡単に言うとユーザーの取引が正しいか計算する人たちです。
ユーザーが仮想通貨を売買したりすると、P2Pを通してその情報が各ノードに伝わって、マイナーがその内容が正しいか計算し、正しければその情報をまたP2Pを通して各ノードに伝えます。
これがP2Pの仮想通貨における役割です。
ちなみにマイナーが行う計算をマイニングといいます。