P2Pの繋ぎ方の考察
自分は何が解っていて、何が解らないのかを知る必要があると思うのです
目次
○今日の日記の価値観
○今回はP2Pのコンピュータの繋がり方ついて
○繋がり方と問題点
○解決策
○構造と問題点(木構造の利点とか)
○今後調べてこると良いこと
○
_
今日の日記の価値観
疑問に思ったら、調べる前に考えて構築してみよう!
きっと、調べて得た知識よりも、新鮮味があって
面白いに違いない
それに理解がすすむかもしれないですね!
_
今日のお題
P2P上での
コンピュータの繋がり方を考え。利点と欠点を考える
_
繋がり方と問題点
P2Pを用いてコンピューター同士で通信を行う場合、相手のアドレスを知る必要があります。
ここでは、繋がっているコンピューターの集団が中規模以上の場合のパフォーマンスについて考えます。
特定のデータを持つコンピュータを特定するために
例えば10000万のコンピューターが繋がっているとして、10000万のコンピュータから
”夢野久作について批評”について書かれているコンピュータを特定したいとしよう。
どのような方法があるだろうか? そして何が問題になるのだろうか
ここで2つの通信方法を提案してみます
ひとつは、バケツリレーとアドレス帳方式です(名前は適当に付けました。)
バケツリレー方式から
私はAというコンピューターです。
これから、全コンピュータを検索したいのです。
AはBに問い合わせる
BはCに問い合わせる
BはDに問い合わせる
CはEに問い合わせる
CはFに問い合わせる
FはCに結果を返す
CはBに結果を返す
BはAに結果を返す
アドレス帳方式
AはBに問い合わせる
AはCに問い合わせる
AはDに問い合わせる
AはEに問い合わせる
AはFに問い合わせる
良い点とか欠点だとか
検索速度について
バケツリレー方式は 送信3+受信3=6
アドレス帳方式 は 送信1+受信1=2
混雑について
バケツリレー方式は 123211 = 10
アドレス帳方式は 55 = 10
保持するアドレス帳の大きさ
バケツリレー方式 1〜2
アドレス帳方式 5
ネズミコウ方式とバケツリレー
ネズミコウ方式でバケツリレーを行うと、階層数の検索速度で{Σリンク数**階層数}
だけコンピュータを検索できる。
10000のコンピューターも1コンピューター10のリンク数で4階層以内で保管できる
というわけです。
構造
もしも検索速度のみを考え、回線の重さを無視できるならば
うまく、少ないステップ数で全体にいきわたるように、リンクを
組むことができると良いわけです。
しかし、自分に近いコンピュータとばかりリンクをもたず、
すこし距離が離れたコンピュータとのリンクも持つような構造が
望ましてということが考えられます。
木構造
そもそもが、上流になればなるほど回線が重くなる
???
何とかランダムに頼りなく、コンピュータの性能に応じて
リンク数を分配することは出来ないのだろうか?
○解決策
○
○今後調べてこると良いこと
○