Winnyの技術
Amazon.co.jpで買う
詳細情報
Winnyの技術
金子勇 著、アスキー書籍編集部 編
定価:2,520円 (本体2,400円)
発売日:2005/10/06
形態:B5変 (204ページ)
ISBN:4-7561-4548-5 (978-4-7561-4548-2)
立ち読みPDF
内容
これまで内部情報が非公開であったP2P型ファイル共有ソフトWinnyについて、作者自身が仕組みと実装を詳しく解説します。また、実証で得たヒントなどを開発者向けにまとめます。
目次
まえがき
1章 P2Pの基礎知識
 1.1 私的解説:P2Pとは何か
    クライアント/サーバとは対照的なP2P
    P2P型システムの特徴
    P2Pで何ができるのか
    P2Pソフトいろいろ
 1.2 P2Pファイル共有ソフト
    P2Pファイル共有ソフトの技術ポイント
 1.3 ファイル共有ソフトの歴史
    第一世代ファイル共有ソフト
    第二世代ファイル共有ソフト
    第三世代ファイル共有ソフト
 1.4 まとめ

2章 Winny紹介
 2.1 Winnyの開発コンセプト
    Freenetの匿名性はどのように実現されているか
    匿名機構としてのプロクシー技術
    キャッシュ機構としてのプロクシーサーバ
    プロクシー技術をファイル共有ソフトに応用する
    FreenetとWinnyの設計コンセプトを比較する
    開発の過程をたどる
    基盤技術としてのP2Pファイル共有システム
    Winny 1からWinny 2へ
 2.2 まとめ

[ユーザーの目から見たWinny]

3章 Winnyの仕組み
 3.1 Winnyネットワークの概観
 3.2 ファイルの公開からダウンロードまで
    ファイルの公開
    ファイルの検索
    ファイルの転送
    ダウンロードしたファイルは公開される
    さらに別のノードがダウンロードする
 3.3 中継
 3.4 大規模なP2Pネットワークに耐える
    上流と下流
    クラスタリング
 3.5 Winnyのその他の要素
    アップロードフォルダ〜キャッシュフォルダ〜ダウンロードフォルダ
    キャッシュファイル
    ファイルの分割と多重ダウンロード
    ノードの発見——「最初の一歩」問題
3.6 Winnyネットワーク再考
    オーバーレイネットワークという側面
    Winnyネットワークという系
3.7 まとめ

4章 実 装
 4.1 プログラムの概観
 4.2 ノード管理
    他のノード情報の提供
    検索リンクの接続
    ノード情報
    接続形態
    ノードのバージョン情報
    クラスタリングとノード間の相関度
    クラスタリングと検索リンクの接続相手の選択
 4.3 クエリ管理
    拡散クエリ
    検索クエリ
    増殖しないクエリ
 4.4 キー管理
    キーの拡散
    中継と拡散
    キャッシュファイル
    キャッシュブロック
    キャッシュファイルの構造
    キャッシュブロックの保有状況とキーの状態
    キーの上書きルール
    キーの寿命と削除
 4.5 ファイルの転送
    転送リンクの制御
    同時ダウンロード数と同時アップロード数の制御
    アップロード要求が集中したときのリンク切断
    多重ダウンロード
    ファイルIDとハッシュ値
 4.6 タスク管理とWindowsスレッド
    ダウンロードタスク
    アップロードタスク
    キャッシュファイル変換タスク
    フォルダチェックタスク
    ハッシュチェックタスク
 4.7 自動ダウンロード機構
    自動ダウンロードの仕組み
    ダウンロード条件のチェック頻度を制限する
 4.8 無視フィルタ機構
 4.9 まとめ

5章 P2Pソフトの開発手法
 5.1 P2Pアプリケーションのテスト
    シミュレーションを利用する
    P2Pネットワークの形成と維持
    バージョンアップと旧ネットワークの廃棄
 5.2 シミュレーションの活用と限界
    設計時のシミュレーション
    シミュレーションの限界
 5.3 匿名性と転送効率の両立
 5.4 Winnyと暗号技術
    ノード間通信の暗号化
    初期ノード情報の暗号化
    キャッシュファイルの暗号化
    プログラム本体の暗号化
 5.5 システム妨害に対抗する
    Winnyネットワークへの攻撃
    Winnyプログラムへの攻撃
    なぜWinnyはオープンシステムでなかったのか
 5.6 長期的な設計における成功と失敗
    長期的設計——クラスタリングの場合
    クラスタリングの変遷
    長期的設計——キャッシュシステムの場合
    キャッシュシステムの変遷
    長期的設計——ハッシュ値の場合
 5.7 Winny 1開発のあとで
 5.8 まとめ

6章 残された課題と可能性
 6.1 BBS機能とアクセスコントロール
 6.2 デジタル認証とアクセスコントロール
 6.3 Winny 2とファイル共有機能
 6.4 ファイル共有ソフトの応用を考える

あとがきに代えて

付録A キャッシュファイルヘッダ
付録B シミュレーション
付録C Winnyプロトコル詳細
索引


戻る
Copyright (C) 2010 ASCII MEDIA WORKS. All rights reserved.