マルチプラットフォーム対応 p2p ファイル共有ソフトの開発

20
マママママママママママママ P2P ママママママママママママ 石石 石石 石石 石石 石石 石 石石 石石 石石 石石 石石 石石 石石石石 石石 石石

Upload: aulii

Post on 05-Jan-2016

46 views

Category:

Documents


0 download

DESCRIPTION

マルチプラットフォーム対応 P2P ファイル共有ソフトの開発. 石川 直樹 木下 陽介 関野 誠   高木 元気 保坂 智之 吉田 侑基 担当教諭  仲道 嘉夫. 何故 P2P ファイル共有ソフトを作ろうと思ったのか. 動機. きっかけ. 美しい画像 をみんなと共有したい クラス内で共有するのに 適した方法 は?. 従来の方法. アップローダ を使う パス設定が必須,容量制限がある インスタントメッセンジャ を使う 転送速度が遅い,複数人で共有不可 他の P2P 共有ソフト を使う ネットワークが大規模すぎる 導入の敷居が高い. いいこと考えた. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

マルチプラットフォーム対応P2P ファイル共有ソフトの開発

石川 直樹 木下 陽介 関野 誠  高木 元気 保坂 智之 吉田 侑基

担当教諭  仲道 嘉夫

Page 2: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

動機何故 P2P ファイル共有ソフトを作ろうと思ったのか

Page 3: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

きっかけ• 美しい画像をみんなと共有したい• クラス内で共有するのに適した方法は?

Page 4: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

従来の方法

• アップローダを使う パス設定が必須,容量制限がある

• インスタントメッセンジャを使う 転送速度が遅い,複数人で共有不可

• 他の P2P 共有ソフトを使う ネットワークが大規模すぎる 導入の敷居が高い

Page 5: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

いいこと考えた

• ファイル共有ソフトを自分で作っちゃえばいいんじゃね? 独自のソフトウェアの開発を決定

題して旧世代ポエム共有ソフトPoem for You 略して P4U

Page 6: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

概要構造のイメージ,転送の仕組み

Page 7: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

ハイブリッド型 P2P とは

• ファイルの概要をサーバーから取得• 実際のファイル転送はクライアント同士で行う

ハイブリッド型 P2P ネットワークのイメージ

Page 8: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

P4U プロトコルの詳細

サーバー

クライアント 1 クライアント 2

ファイル登録 検索問い合わせ

ファイル送信

ファイル要求

Hoge ってファイルを公開する

よ!

Hoge ってファイルは誰が持っ

てる?Hoge ってファイルがあるよ!

Hoge ちょーだい!

Hoge あげるよ!

クライアント 1が

持ってるよ!

公開されてるファイルある?

Page 9: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

P4U の特徴

• Windows, Mac OSX, Linux に対応

• 仕組みが簡単なので設定も簡単

• 高速なファイル転送

• ダウンロード再開機能

Page 10: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

スクリーンショット

Ruby

Ruby(GUI)

Java(GUI)

※ 画面は開発中のものです.

Page 11: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

問題開発言語と構造の問題

Page 12: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

問題 (1)wxRuby に関して

• プラットフォームによって挙動に微妙な差異がある

• 実行ファイルの容量が大きくなりがち• GUI デザイナを用いるとダイアログが使え

ない• マルチスレッドでうまく動作しない Java への移行を決定

wxRuby = マルチプラットフォーム対応の Ruby 用 GUI ライブラリ

Page 13: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

問題 (2)ハイブリッド型 P2P に関して

• サーバーが必要 手軽に共有できるとは言いがたい

• サーバーが止まるとクライアントは何も出来ない

ピュア型への移行を決定

Page 14: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

今後の予定おや? P4U のようすが……

Page 15: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

Java への移行

• メリットプラットフォームによる文字コードの違いに

も対応できる優れた統合開発環境があり, GUI の開発が容

• デメリットRuby と比べてコードが長くなりがち

Page 16: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

ピュア型 P2P への移行

• メリットサーバーが不要ネットワークの負荷を分

散できる

• デメリットコンピュータ間の同期が

とりにくい

ピュア型 P2P ネットワークのイメージ

Page 17: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

ご静聴ありがとうございました

Page 18: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

……8 月初旬になんかやるかも

P4U Project Wiki (要旨集にも載ってるよ) http://www9.atwiki.jp/poem_for_you/

質疑応答のじかん優しいお兄さんたちがみんなの質問に丁寧に答える

Page 19: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

ここから先は予備

Page 20: マルチプラットフォーム対応 P2P ファイル共有ソフトの開発

転送速度について送信元 送信先 使用ソフト 転送速度

Windows (FTTH)

Windows (FTTH)

P4U3.096Mbps

LiveMessenger

1.760Mbps

Windows (FTTH)

Max OSX(FTTH)

P4U3.480Mbps

LiveMessenger

2.420Mbps

Mac OSX (FTTH)

Windows (ADSL)

P4U 未計測LiveMessenger

0.018Mbps

いずれも 100MiB のテストデータを用いて計測ただし、 OSX から Windows への転送には 10MiB のデータを用いた