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

Slides:



Advertisements
Similar presentations
Internet Explorer 障害解析 最初の一歩 - IE のトラブルを理解する -. 概要 Internet Explorer を使用中に発生するトラブルの 種類と、調査のための切り分け方法を紹介します! (以降は IE と略称で表記します) よくあるお問い合わせ Web ページの表示が白画面のまま完了しない.
Advertisements

1 Layout Utilities の紹介 Layout Utilities とは、お客様のプログラムに 流し込み印刷を簡単に組み込めるソフトウエア開発ツールです 無償 流し込み印刷の例.
BBT 大学 Ruby on Rails 開発環境セットアップマニュアル Mac 版 1.1 最終更新日: 2013/1/5.
NetAgent P2P検知技術 NetAgent.
Curlの特徴.
マルチプラットフォーム対応 P2Pファイル共有ソフトの開発
プログラミング言語ADP 大藤雄久.
The Perl Conference Japan ’98 朝日奈アンテナによる コンテンツ情報の取得と利用
仮想テープライブラリ クラウド環境で利用できるテープバックアップの代替サービス 簡単な図 (網羅性より象徴性)
オペレーティングシステムⅡ 第11回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト.
WEBから確認できる 駐車場管理システムについて
オレポータビリティ 日本Rubyの会 青木 峰郎.
QRコード作って使ってみる 作成者: 川瀬 智美 川瀬智美ですよろしくお願いします ここにあるマークご覧になったことありますでしょうか?
UNIX Life KMSF M2 saburo.
マルチプラットフォーム対応 P2Pファイル共有ソフトの開発
JavaによるCAI学習ソフトウェアの開発
侵入検知システムの構築と ログの可読性向上
「絵葉書を通じてのハルビンの 街の印象調査」システムUIの iPadアプリ化 谷研究室  飯 祐貴.
Digital Network And Communication
SoftLayerへのお引越し方法 お客様環境(或いは他社クラウド)からSoftLayerへの移行は簡単です。
マルチプラットフォーム対応 P2Pファイル共有ソフトの開発
日本のエビ消費者は,マングローブ保護に貢献できる手段を 作り上げていくべきか
VO講習会 2015如月 (2015年2月26-27日、国立天文台三鷹)
IAA情報登録クライアント for Windows
「まめだくん Ver.1.0」 特徴と利用方法.
応用情報処理V 第1回 プログラミングとは何か 2004年9月27日.
ファイル送信機能付きマルチキャストチャット
マルチプラットフォーム対応 P2Pファイル共有ソフトの開発
ミドルウェア 山口 拡.
応用情報処理V 第1回 プログラミングとは何か 2003年9月29日.
複数CPU間のための共有メモリ 小島 隆史(中央大学大学院理工学研究科 國井研究室)
Web上で管理・利用できる 面接予約データベースシステムの構築
サーバ構成と運用 ここから私林がサーバ構成と運用について話します.
オンライン説明会に関する調査 上杉裕也.
第2章 第1節 情報通信の仕組み 1 ネットワークの仕組み 2 通信プロトコル 3 認証と情報の保護
MPIによる行列積計算 情報論理工学研究室 渡邉伊織 情報論理工学研究室 渡邉伊織です。
北海道大学 理学院 宇宙理学専攻 惑星宇宙グループ 修士2 年 三上 峻
SOAP/UDDI/WSDLによるB2Bシステムの開発
Office IME 2010 を使う.
WPF、MVVMパターン構成.
2009年度卒業論文発表 CDNコンテンツサーバの動的負荷分散
FUJITSU Security Solution SYNCDOT MailSuite
複数ホストに分割されたメモリを用いる仮想マシンの監視機構
WEBアプリケーションの開発 2002年度春学期 大岩研究会2.
日本のエビ消費者は,マングローブ保護に貢献できる手段を 作り上げていくべきか
スマートデバイスのビジネス活用を支援する法人向けファイル共有サービス
すぐできるBOOK -基本設定編-.
OSSAJ 事務局 株式会社ウィズ.アール 古木 良子
0.2 プロジェクトの準備 DXライブラリを使うための準備.
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
Web - 01 IIS を インストールしよう.
COM コンポーネント・オブジェクト・モデル.
JXTA Shell (1) P2P特論 (ソフトウェア特論) 第4回 /
メールの仕組みとマナー.
Nakano School of Business 経営情報ビジネス科 【 Java概論(Test1)】
TA 高田正法 B10 CPUを作る   実験の前に TA 高田正法
音声認識・翻訳 Android アプリケーション制作
インターネット             サーバーの種類 チーム 俺 春.
UDPマルチキャストチャット      空川幸司.
個人の動画配信のためのWebサーバ構築 06A1058 古江 和栄.
ネットワークプログラミング 05A1302 円田 優輝.
Virtualizing a Multiprocessor Machine on a Network of Computers
動画配信捕捉のためのWEBサーバ構築 06A1058 古江 和栄.
P2P型アプリケーション用ライブラリ SUNET
Flashを用いたゲーム制作 05A1304 鈴木 浩高.
修士研究計画 CGM作成・共有支援基盤(仮)の構築
MPIを用いた並列処理計算 情報論理工学研究室 金久 英之
データの圧縮.
P2P & JXTA Memo For Beginners
就職活動.
Presentation transcript:

マルチプラットフォーム対応 P2Pファイル共有ソフトの開発 石川 直樹 木下 陽介 関野 誠   高木 元気 保坂 智之 吉田 侑基 担当教諭 仲道 嘉夫 私たち6人は、「マルチプラットフォーム対応P2Pファイル共有ソフトの開発」というタイトルで課題研究を行いました。

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

たとえば・・・ 体育祭の写真をクラス全員で共有したい でも知らない人には見られたくない ファイルを共有したいときに気になったことがありました。 以下スライドどおり

従来の方法 アップローダを使う インスタントメッセンジャを使う 他のP2P共有ソフトを使う パス設定が必須、容量制限がある 転送速度が遅い、複数人で共有不可 他のP2P共有ソフトを使う ネットワークが大規模すぎる 導入の敷居が高い 従来の方法を用いた場合、以下のような問題点がありました。 アップローダを使った場合は、第三者がダウンロードできないようにパスワード設定が必要だったり、容量制限をクリアするためにファイルの分割をしなければならなかったりします。 また、インスタントメッセンジャなどを使ってファイルを転送した場合、サーバーを介してデータを送信するため、転送速度が「極端に」遅く、複数人での共有も難しいという事情があります。 他のP2P共有ソフトを使うという方法もありますが、ネットワークが大規模すぎて、個人的なファイルを共有するのには向きません。加えて、導入の敷居が高いのも初心者にとっては問題でしょう。

いいこと考えた ファイル共有ソフトを自分で作っちゃえばいいんじゃね? 題して旧世代ポエム共有ソフト Poem for You 略して P4U 独自のソフトウェアの開発を決定 題して旧世代ポエム共有ソフト Poem for You 略して P4U そこで私たちは考えました。 「用途にあったソフトウェアを自分で作ってしまえばいいじゃないか」と。 旧世代ポエム共有ソフトPoem for You略してP4Uの開発を開始しました。

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

ハイブリッド型P2Pネットワークのイメージ 現在のP4Uではハイブリッド型P2Pという仕組みを利用しています。 この仕組みについて簡単に説明します。 あとはスライド嫁 ハイブリッド型P2Pネットワークのイメージ ファイルの概要をサーバーから取得 実際のファイル転送はクライアント同士で行う

P4Uプロトコルの詳細 サーバー ファイル登録 検索 問い合わせ ファイル送信 クライアント1 クライアント2 ファイル要求 公開されてる ファイルある? Hogeってファイルは誰が持ってる? Hogeってファイルがあるよ! ファイル登録 検索 問い合わせ クライアント1が 持ってるよ! Hogeってファイルを公開するよ! Hogeあげるよ! P4Uが動く仕組み、プロトコルについて説明します。 あとはスライド嫁 ファイル送信 クライアント1 クライアント2 ファイル要求 Hogeちょーだい!

P4Uの特徴 Windows, Mac OSX, Linuxに対応 仕組みが簡単なので設定も簡単 高速なファイル転送 ダウンロード再開機能 まず、Windows, Mac OSX, Linuxの3つのOSで動作します 仕組みが簡単なので、わずらわしい設定をする必要がありません サーバーを介さずにファイル転送を行えるため、高速に送受信が完了します。 途中でファイルの送受信が中断されても、後でダウンロードを再開することができます

スクリーンショット Ruby Ruby(GUI) Java(GUI) ※ 画面は開発中のものです。 開発中のスクリーンショットはこんな感じです まずRubyという言語で開発したバージョン、 Ruby版をGUI化したバージョン、 そしてJavaで開発しなおした最新のバージョンがこれです Java(GUI) ※ 画面は開発中のものです。

wxRuby = マルチプラットフォーム対応のRuby用GUIライブラリ プラットフォームによって挙動に微妙な差異がある 実行ファイルの容量が大きくなりがち GUIデザイナを用いるとダイアログが使えない マルチスレッドでうまく動作しない 一見順調に思えたP4U開発ですが、いくつか問題が浮上しました ひとつめは、RubyでGUIを実現するためのライブラリ・wxRubyに起因するものです スライド嫁 wxRuby = マルチプラットフォーム対応のRuby用GUIライブラリ

問題(2) ハイブリッド型P2Pに関して サーバーの管理が必要 サーバーが止まるとクライアントは何も出来ない 手軽に共有できるとは言いがたい ピュア型への移行を決定した要因 ふたつめは、ハイブリッド型の仕組みに起因する問題です スライド嫁

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

Javaへの移行 メリット デメリット ランタイムさえ入っていれば、同じプログラムがさまざまな環境で動作する プラットフォームによる文字コードの違いにも対応できる 優れた統合開発環境があり、GUIの開発が容易 デメリット Rubyに比べてロジックの開発が難しい 不具合の多いwxRubyに代わる開発環境として、Javaへの移行を決定しました スライド嫁

ピュア型への移行 メリット デメリット サーバーが不要なので障害に強い ネットワークの負荷を分散できる ファイルを一元管理することができない ハイブリッド型と比べて実装が大変 また、ハイブリッド型の仕組みに代わるものとして、ピュア型への移行を検討しています スライド嫁 ピュア型P2Pネットワークのイメージ

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

優しいお兄さんたちがみんなの質問に丁寧に答える時間 質疑応答ターイム

次回 : 2008年秋 要旨のURLもよろしくね ……8月初旬になんかやるかも