第1回ライブドアテクニカルセミナー「P2Pコンテンツ配信技術の現状」講演メモ

ゲスト講演ということで、あの"Winny"で有名な金子氏によるP2Pコンテンツ配信に関する講演がありました。そのメモ。

金子氏は、ある意味想像通りの技術者でした。あのアイデアを即座に実装できる行動力と技術力はやっぱりすごいと感じました。
分散サーバとP2Pのハイブリッド方式がこれからは主流とのことで、なるほど、と。

講演者

  • 金子勇 氏
    • Winny開発者
    • Dreamhost 技術顧問

コンテンツ配信のためのP2P技術

P2Pの発展

  • 第1世代
    • ハイブリッド型P2P(データ転送のみP2P)
    • Napster
  • 第2世代
    • ピュア型P2P(検索機構など全てP2P)
    • gnutella
  • 第3世代
    • キャッシュ型P2P(転送キャッシュを用いる)
    • Winny

P2Pの現状

  • 第4世代
    • 商用P2P (P2P教科書(インプレス)による分類)
    • 「P2P網を分散サーバとみなすシステム」
      • SkeedCast

(Winny2もこれに近い)

WinnyからSkeedCastへ

  • Winny1
    • 第3世代型P2Pファイル共有ソフト
  • Winny2
    • 情報共有ソフト(BBS)&第4世代型P2P

Winny1にWinny2の要素 -> SkeedCast

SkeedCastの特徴

  • 管理可能性を重視した商用向けP2P
  • 分散サーバ型とP2P型のハイブリッド

P2Pとサーバ型配信

  • Winny
    • PureP2P
    • 回線速度による緩やかな上下関係
  • SkeedCast
    • 固定ノードで通常配信
    • ユーザノードを用いた再配信も可能
      • サーバがパンパンになってきたら、こちらからも配信可能とする
    • P2Pとサーバ型のハイブリッド

SkeedCastのノード構成

エントリーノード -> 共有ノード(コントロールノードによる制御) -> Skeedレシーバー

共有ノード

  • コンテンツ中継のためのUNIXノード
  • 動的な構成が可能
  • コントロールノードから制御
    • キャッシュコントロール
  • モニタリング結果をコントロールノードへ報告

ユーザ中継可能

  • ユーザノードを中継ノードとして使用可
    • コンテンツごとに動的に切り替え可能
    • ユーザによるCDN化のようなもの
  • 安価で安定したコンテンツ配信
    • 通常運用はサーバ配信方で安定動作
    • ユーザノード配信で共有ノードの負荷低減

SkeedCastにおけるコンテンツ配信

  • デジタル署名
  • ホワイトリストフィルタリング
  • キャッシュのライフタイム管理

コンテンツへのデジタル署名

  • 全てのコンテンツに公開者IDを付与
  • IDごとにデジタル署名(1024bit長 RSA)
    • チェックが速いから、RSAを使っているとのこと
  • IDと署名鍵は管理側で発行

流通フィルタリング

  • Winnyには2つのフィルタ
    • ダウンロードフィルタ
    • 無視フィルタ(ブラックリスト)
  • SkeedCastには3つのフィルタ
    • ダウンロードフィルタ
    • 無視フィルタ(ブラックリスト)
    • 許可フィルタ(ホワイトリスト)
      • ここに書かれていないと、何も許可されないので、何も配信されない

SkeedCastにおける許可フィルタ

  • 公開者IDとデジタル署名公開鍵のセット
  • 許可フィルタにも管理者デジタル署名を付与

コンテンツ流通系の制御

  • Winny
    • どこかにフルキャッシュが残っていればダウンロード可能
  • SkeedCast
    • 投入ノード側にコンテンツが残っていればダウンロード可能

 

Skeedレシーバー

  • ユーザPCにインストール(Windows)
  • Web側と連携(JavaScriptで制御)
  • Webページからシームレスに利用

キャッシュとして流通

  • コンテンツ流通は全て暗号化
  • キャッシュ内にダウンロード
  • HTTP、ストリーミングプロトコルに変換

Skeedストリーミング

  • キャッシュ内の映像コンテンツの視聴
    • ストリーミングプロトコルに動的変換
  • WMPのキャッシュには残らない
    • Skeedキャッシュ側は全て暗号化されている
  • WindowsMediaDRM対応
  • ダウンロードサービスとの統合
  • P2P型メディアProxyの一例

(株)Dreamhostのサービス

  • コンテンツ配信サービス
    • Dreamhost社でのコンテンツ提供
    • EC・DRM対応
  • ASP向けサービス提供
  • 各種組み込み向け対応
  • B2B向けサービス

まとめ

SkeedCast

  • 第4世代型P2PによるCDN
    • 分散サーバとP2P方式のハイブリッド
    • 配信ノードの動的運用
    • ユーザノードを配信ノードとして利用可能
  • メディアProxy型
    • ダウンロード統合型サービス




第1回ライブドアテクニカルセミナー 関連エントリ


Winnyの技術

Winnyの技術

P2P教科書 (インプレス標準教科書シリーズ)

P2P教科書 (インプレス標準教科書シリーズ)