演習3 発表1
山崎孝裕
演習の概要
 現在主流のClient/Serverモデルと、Peer-toPeer(P2P)モデルの比較検討をする。
 P2Pアーキテクチャ上での分散動的サーバ
の可能性を考える。
 上の例として、P2P掲示板(または、チャット)
のプロトコルを考え、余裕があれば実装す
る。
主な内容
 Peer-to-Peerモデル
 分散動的サーバモデル
 データの検索法
 P2P掲示板
P2Pモデル
 ネットワークのノード同士が対等に通信を行
うモデルのことを、P2Pモデルという。
 通常既存のネットワーク網(インターネットな
ど)の上に構築され、そのネットワークは
「P2Pオーバレイネットワーク」と呼ばれる。
P2Pの特徴(1)
 Client/ServerモデルのようにServerに一極集
中せず、各ノードに処理が分散されるため、
ノードやノード間の回線に高い能力が要求
されない。
 中央集権的なサーバを経由しないため、秘
匿性が高い。逆に、管理側から見れば、管
理や監視がしにくい。
P2Pの特徴(2)
 ネットワークの規模が大きくなっても、局所
的なアクセス増加が起きにくい。スケーラビ
リティが高い。
 ノードの動的な参加・脱退を最初から意識し
たモデルであり、故障耐性が高い。
P2Pの種類(1)
 Hybrid P2P

中央管理サーバを置いて、データがどのノードがある
かをサーバに問い合わせる。実際のデータの受け渡し
は、ノード同士が直接通信することによって行われる。
 Pure P2P

特別なサーバを置かず、データの検索は、オーバレイ
ネットワークへのブロードキャストによって行う。また、
分散ハッシュなどを利用して検索する技術もある。
P2Pの種類(2)
 (企業などの)サービスとしての色合いが高
い場合、課金等の管理の利便性のため、中
央サーバを置くHybrid P2P型になることが
多い。
 個人同士のやり取りに使われる場合、秘匿
性が重要となるため、Pure P2Pを使うメリット
が大きい。
分散動的サーバモデル(1)
 従来のClient/ServerモデルでServerが行っていた
処理を、P2Pオーバレイ上のいくつかのノードを動
的にサーバとし、分散処理させる。
 Client/ServerモデルとP2Pモデルの中間的なモデ
ルといえる。
 処理の分散を動的に行うことに主眼においており、
秘匿性に関しては一定以上は考慮に入れない。
分散動的サーバモデル(2)
 分散サーバもP2Pノードの一つであるため、いつ
ネットワークからの脱退がおかしくない。そのため、
すぐに処理を引き継げるように重複したデータを
持つサブサーバを用意しておく必要がある。故障
耐性を高くするために、サブサーバは複数用意し
ておくことが望ましい。
 同じデータを持つサーバが複数存在すると、その
間での同期が問題となる。
データの検索法(1)
 中央管理サーバにインデックスを作っておき、そこ
に問い合わせる。(Hybrid P2P)


柔軟な問い合わせが可能。
中央サーバにある程度の能力が必要。
 分散ハッシュを用いて、データを持っているノード
を特定する。



通信トラフィックが小さくてすむ。
ハッシュ値を得ることが必須であるため、柔軟な問い合
わせはしにくい。
コンテンツの一覧を得ることができない。
データの検索法(2)
 問い合わせをオーバレイネットワーク上にブ
ロードキャストし、コンテンツを持っている
ノードが応える。



柔軟な問い合わせが可能。
ブロードキャストをするため、ネットワーク全体
の通信トラフィックが大きくなってしまう。
コンテンツの一覧を得ることができない。
データの検索法(3)
 これらの検索法は、対象データの種類・規模、ア
プリケーションの性質によってどれが好ましいか
が分かれる。また、複数の方法を組み合わせるこ
ともできる。
 例えば、掲示板システム、掲示板インデックス自
体がそれほど大きくならないと考えられるなら、イ
ンデックスを全てのサーバに複製しておいておくこ
ともできる。これならば、各サーバに負荷が分散す
るため、中央サーバのような能力の高いサーバも
不要であり、また、データの検索も柔軟に行える。
P2P掲示板
 P2Pオーバレイ上に構築された掲示板
 従来は一つのサーバで管理されていたデー
タは、ノードによって分散的に管理される。
 掲示板の性質上、チャットのような数秒単位
の厳密なリアルタイム性は要求されない。
 ファイル交換のような大量のパケットは想定
しない。
P2P掲示板システム
 今回考えるP2P掲示板システムでは、分散
動的サーバモデルを用いる。
 掲示板のデータはいくつかの動的サーバに
分散して管理され、クライアントはこのサー
バに対して書き込み・閲覧などの操作をす
る。
 中央サーバを置いて検索させるHybrid P2P
方式を用いる。
参考文献
 Looking up data in P2P systems (Hari
Balakrishnan, M. Frans Kaashoek, David
Karger, Robert Morris, Ion Stoica)
 Tomo's HomePage
http://homepage3.nifty.com/toremoro/index.h
tml
ダウンロード

演習3 発表1 - AIRnet