今回は P2P 通信についての解説です。まずは結論です。
P2P 通信とは機器同士が直接やりとりを行う通信方式のこと!
今回は P2P 通信について解説しますよ!
ブロックチェーンの説明でもでてきた技術だね!
そうです!
P2P通信は Peer to Peer 通信の略称です。
機器同士が直接やり取りできる仕組みのことです。
間に何も入らないの?
正確には入るP2P通信と入らないP2P通信があるのですが、今回は入らないP2P通信について解説しますよ。
P2P通信
P2P通信では、PCなどの同等の処理機能を持った機器同士が直接やり取りを行います。
この機器のことを Peer (ピア) と言います。
Peer と Peer を繋ぐから Peer to Peer; P2P なんだ!
でもそれって他の通信方法と何が違うの?
普段直接やりとりしてるものだと思ってたんだけど…
普段僕たちが利用しているのはクライアントサーバ方式の通信です。
こちらでは、処理能力の高い機器(サーバ)に対して他の機器(クライアント)が通信を行います。
クライアント同士で通信を行う際にもサーバを介して通信を行います。
P2P 通信で機器同士で通信ができるならサーバーっていらなくない…?
いい質問ですね。
P2P 通信ではそれぞれのピアがサーバとクライアント両方の役割をはたします。
それではP2P通信が持つ利点と問題点について話しましょうか。
P2P 通信の利点と問題点
利点 | 問題点 |
耐障害性・可用性が高い | データへの信頼性が低い |
データの分散管理が可能 | 端末への負荷が高い |
匿名性が担保しやすい | セキュリティの管理がしにくい |
P2P 通信では接続している全ての機器と直接やり取りを行うため、耐障害性・可用性が高いです。
壊れにくいってこと?
その通りです!
どれか1つの機器が壊れてしまっても、他の機器が残っていれば通信が可能なんです。
またデータの分散管理を行うことができるため、各端末にかかる負担も減らせます。
しかし、クライアントサーバ方式のクライアントと比較すると端末にかかる負担は大きいです。
全部の端末がサーバ兼クライアントだからだね。
また、情報を1点に集めないため端末ごとの匿名性は担保しやすいという利点もあります。
しかし、データが分散されており匿名性も高くなりやすいためセキュリティの管理がしにくく、データが正しいかの管理も難しいです。
P2P通信は何に使われている?
利点と問題点はわかったけど、結局何に使われているの?
実は P2P 通信は2000年代ごろから使われており、ファイル共有やリアルタイム通信をはじめとして様々なところで使われています。
Torrent
例えば、Torrent というファイル共有プロトコルに用いられています。
Torrent ではファイルを複数の端末に保存し、ダウンロードする際はそれらの端末からダウンロードします。
P2P 通信の利点のデータの分散管理をうまく使っているんだね!
はい、そうです!
ただ、匿名性が担保しやすいという利点を悪用して著作権を無視したファイルが多くあることが問題視されています。
WebRTC
WebRTCは web real-time communication の略称です。
web上で動画や音声といったデータをリアルタイムにやり取りすることのできる技術です。
ビデオ通話アプリなどに用いられていますね。
この技術もサーバーを使わないんだね!
基本的にはP2P通信で実現されています。
しかし、多人数での通信等で端末に大きな負荷がかかる場合や、セキュリティの観点からサーバを利用する必要があります。
ブロックチェーン
ブロックチェーンの解説でも出てきた通りブロックチェーンでも P2P 通信を使用しています。
データを全ての端末で分散管理し、端末同士でやり取りをしています。
やり取りをするときに不正ができないようにデジタル署名・ハッシュ化・PoWをうまく組み合わせてたんだよね!
素晴らしい!!よく覚えていますね。
そうです、P2P通信のセキュリティの管理がしにくいところをうまく解決しようとしている良い例ですね。
まとめ
P2P通信とは、端末同士が直接やり取りを行う通信方式であることわかってもらえたでしょうか?
よくわかった!
ブロックチェーンでの活用例もあるし、これからもまだ伸びる技術になるのかな…?
そうですね。
データの分散管理や直接通信と言った考え方は Web3.0 と近い部分があるため、また注目を浴びつつある技術です。
参考文献
今回は以下の文献を参考にしました。
どれも、わかりやすく説明してくれているのでイマノ君も読んでみては?
えー。英語の本もあるし今回は本当に難しそう…
初心者必見!よくわかるWebRTCの仕組み (kddi-web.com)
Amazon.co.jp: Real-Time Communication with WebRTC: Peer-to-Peer in the Browser (English Edition) 電子書籍: Loreto, Salvatore, Romano, Simon Pietro: 洋書
なるほどナットク! P2Pがわかる本 | 岩田真一 | 工学 | Kindleストア | Amazon
Web3.0の教科書 | のぶめい | 工学 | Kindleストア | Amazon
コメント