金子勇『Winnyの技術』

Winnyの技術

 最近の暴露ウィルス騒ぎ関連の議論を読んでいて、なんかオモチャみたいなものという自分の中での印象が全然間違ってるらしいことに気づいたので読んでみた。

 確かにすごいものだなこれは。SkypeだってP2Pなんだし何か参考になることもあるかも知れぬ。これからも頭の片隅に留めておくようにしよう。以下読書メモ。

P2Pとは

 P2P(Peer to Peer)……Peer:対等な対象

  • クライアント/サーバ型
    • 中心あり
  • P2P(Peer to Peer)型
    • 中心なし
    • 障害に強く、規模の急拡大に耐えられる
    • 全体の管理やデータの同期は苦手

P2Pファイル交換ソフト

  • 第1世代……ノード情報は中央サーバが管理。例:Napster
  • 第2世代……純粋にノード同士。例:Gnutella
  • 第3世代……キャッシュを備える。例:Winny

ファイル検索

 ファイルはキーと本体に分けられる。キーを検索する。検索にIDがついていて、

  • すでに経由したノードは検索をしない
  • いくつかのノードを経由したら検索を打ち切る

ネットワークの構造

  • 上流……高速回線を持つノード
  • 下流……低速回線しか持たないノード

 より能力の高いノードにキーやキャッシュを集め効率を良くする。各ノードは自分より上流の2つ、下流の5つまでとつながる。検索やキーは上流に向かってさかのぼっていく。

キャッシュ

  • 一定の大きさに分割して多重ダウンロード化
  • 要求・検索されたとき一定確率でコピーされる(拡散)
  • 元の場所情報も確率で上書きされる(一次情報源の匿名化)

クラスタリング

 似たような傾向を持つものをまとめることで小グループを作って破綻を回避。

コメント

タイトルとURLをコピーしました