Peer to Peerネットワーク ブロックチェーンの基礎技術 その1
Peer-to-Peerは先に紹介したビットコイン論文のタイトルに出てくる用語で、パソコンとパソコン(スマホ、タブレットなども含む)だけで構成され、サーバーがないという意味です。パソコン(peer)と(to)パソコン(peer)とすれば覚えやすいでしょうか。PtoPとも呼ばれます。
Peer-to-Peerは次のアプリで使われているので、これらを思い浮かべると分かり易いでしょう。
1.ビットコイン
サーバを使わない純粋なPeer-to-Peer、Winny型。
2.Line
ユーザIdやアカウント情報はサーバで管理しているNapster型。
3.Skype
Lineと同じNapster型。
Peer-to-Peerでは、サービスを各々のパソコンと近くのパソコンがアプリを実行して提供します。サーバーがないので、上位・下位の概念が存在せず、全てのコンピューターが対等に、独立して動作します。そのため、次のメリットがあります。
メリット1:負荷が集中しない
多くのユーザーが同時にアクセスしてもサーバーに負荷が集中することはなく、安定した動作ができます。ネットワーク型のゲームや動画配信サービスなどに使えそうです。
メリット2:障害に強い
パソコンのどれかが壊れても、通信の1か所が途絶えても、全体としては止まらないでサービスを提供できます。通信相手だけ動いていれば使えます。ゼロダウンタイムと呼びます。イワシの大群のようです。
メリット3:安価
サーバーがいらないので、システム構築費用が安価です。最低限、送信元と送信先の2台だけで運用できます。
良いことばかりではなく、デメリットもあります。
デメリット1:
サーバーで支払えば、最初の支払い受け付けて支払い完了にできます。サーバーがなく、各々が自由に支払う場合、二重支払いされてもわからない。二重支払い問題は二重取り問題であり、贋金問題でもあるのです。
ビットコイン論文はこの問題の解決策の提案です。サトシナカモトはこの論文を読んだ仲間とともにビットコインシステムを開発したのです。
デメリット2:
パソコンを銀行と接続する場合、銀行からウィルスが送り込まれることはほとんどありません。銀行はいつも安全性を保つ努力をしているからです。
サーバーがないシステムでは、通信相手は自動的に選択されます。攻撃者にとっては、通信相手を探す必要がなく便利です。ウィルスに侵入されやすいので怠りなくウィルスチェックを行うことが必要です。
デメリット3:
簡単なサービスなら自分で実行すればよいのですが、サーバがないシステムで負荷のかかるサービスサービスは誰が実行してくれるのでしょうか。誰かにやってもらう場合、どうやってやってもらうのか工夫が必要です。ビットコイン論文ではこの問題の解決策も提案しています。
この記事が参加している募集
よろしければサポートお願いします! いただいたサポートは全て『「思い出の場所」の記事とGoogle地図を関連付けるWeb地図アプリ』のLancersでのプログラミングの外注に使わせていただきます。 よろしくお願いします。