Download - P2P の過去・現在・未来
P2Pの過去・現在・未来数理情報 能一貢士 松本慎佑
これからの説明1. P2Pについての説明2. Winnyについて3. Skypeについて4. P2Pのこれから
P2Pとは・・・ Peer to Peer の略意味は「対等なもの同士が対等な立場で相互にデータなどのやり取りを行う方式」
クライアント・サーバ型との比較 P2P型 クライアント・サーバ型
サーバ
クライアントクライアント
クライアント
ノード ノード
ノード
ノード
ノード
第一世代 ハイブリッドP2P
・・・ダイナミック P2Pアクセス・・・基本ネットワーク
クライアント・サーバ型と P2P型のハイブリッド(混合)。サーバがデータ検索を担当して、実際のデータのやり取りはノード同士で行う。
インデックスサーバ
代表的なソフト: Napster、WinMX
第二世代 ピュア P2P
・・・ダイナミック P2Pアクセス・・・基本ネットワークデータ検索を行うサーバすらもたない P2Pシステム。データ検索はノード同士で教えあい、助け合うことによって実現。データのやり取りもノード同士で行う。
代表的なソフト: Gnutella、Winny
第三世代 スーパーノード型ハイブリッドP2P
ハイブリッド P2Pのサーバの代わりに、スーパーノードに選ばれたノードが検索を行う方式。データのやり取りはノード同士が行う。
スーパーノード群
・・・ダイナミック P2Pアクセス・・・基本ネットワーク
代表的なソフト: Skype、 KaZaA
P2Pのメリットスケーラビリティ(拡張性)冗長性オフライン利用
サーバなど、中心になるものがないので、無限のスケーラビリティを持っている。一部のノードがダウンして障害が起きても、システム上影響が出ない。
データが各コンピュータ上に存在するので、オフライン状態でもデータ編集・閲覧が可能。
Winnyの説明の流れ
1. Winnyネットワークの概観2. ファイル公開から転送まで3. Winnyの特徴的なシステム4. Winnyのまとめ
Winnyネットワークの概観
検索リンク・・・・・・ノードの情報、キーの交換、ファイルの検索転送リンク・・・・・・ファイルの転送
Winnyネットワークの概観高速・・・上流
低速・・・下流
ファイルの公開アップロードフォルダオリジナルファイル
キーファイルボディ(本体)・ファイルの名前・ファイルの大きさ・更新時刻・ファイルの識別に使う ファイル ID(ハッシュ値)・ファイル本体の位置情報 IPアドレスとポート番号
・ファイル本体の内容
キーの拡散
B A キーオリジナルファイル
検索元 ファイル公開
キー
キー拡散
キーキー
キー
ファイルの検索
B A キーキー
キー
キーキー
オリジナルファイル検索元 ファイル公開
検索クエリ
検索クエリ検索クエリ
キー
ファイルの検索
BA キーキー
キー
キーキー
オリジナルファイル検索元 ファイル公開
応答応答
応答
キー
キー
キー
キー
ファイルの転送
BA キーキー
キー
キーキー
オリジナルファイル検索元 ファイル公開
キー
キー
キー転送リンク
キャッシュフォルダ複製ファイル
キー
キーの拡散と書き換えY
X
BA キーオリジナルファイル
ファイル公開
拡散キーキー
キーキーキー
検索元
応答キー
キー
応答
中継Y
X
BA キーオリジナルファイル
ファイル公開
キーキー
複製ファイル
複製ファイル
転送リンク転送リンク
Xのキャッシュフォルダ
Bのキャッシュフォルダ中継が発生されるたびにファイルの共有効率があがる中継により匿名性も実現
キー
キー
Winnyのまとめ Winnyによる情報漏洩の問題情報漏洩の問題はWinnyそのものの問題ではない。 究極のファイル共有効率と匿名性の実現「上流と下流」の概念や中継によりファイル共有効率を追求。中継の機能によって第一発信者の特定が困難。 著作権の問題
Skypeについてスカイプ・テクノロジーズという会社が作った、スーパーノード型 P2Pシステムを用いた電話ソフト。特徴固定電話や IP電話との通話も可能。メッセンジャーよりも高い接続状態、高音性を実現し、また無料で利用できる。(固定電話との通話など、一部サービスは有料)面倒な設定をせずに、ほとんどのネットワーク環境で使用可能。
Skype説明の流れ1. 電話帳の管理2. 電話帳への登録方法3. 電話をかける4. セキュリティについて5. Skypeの問題点
Skypeの電話帳について
Aグループ
BグループCグループ
それぞれのグループのリーダー (スーパーノード )がグループの電話帳を持ち、それぞれは繋がっている。 グループ分けの方法は、ハッシュ関数によって振り分けられる。(ハッシュ関数とは、文字列を数値に変換する関数のこと)
所属グループを見つける方法Akir
a
⑤ スーパーノードに自分の IP アドレスを通知。電話帳に登録。
Alice
① 所属するグループAのスーパーノードを知らない。知り合いの Bobさんに問い合わせ。Bob
④ グループAのスーパーノードは Akira(IPアドレス )と回答。
② グループBのスーパーノードにグループAのスーパーノードを問い合わせる。③ グループAのスーパーノードは
Akira(IP アドレス ) と回答。
Bill
電話をかける①(同じグループ内)Akira グループAの電話帳
( グループAのスーパーノード )
Alice Aiko
① Aiko さんの IP アドレスを教えて
② 電話帳を見て、 Aikoさんの IPアドレスを通知
③ スーパーノードから聞いた IPアドレスを利用し、 Aikoさんに電話をかける
電話をかける②(違うグループ同士)
Aiko
Alice
Bill
グループAの電話帳
Becky
グループ B の電話帳
グループA
② グループBのスーパーノードに、 Becky さんのIPアドレスを問い合わせ
③ Becky さんのIPアドレスをAグループのスーパーノードに回答④ Becky さんのIPアドレスを回答
① グループAのスーパーノードに、通信相手のIPアドレスを問い合わせグループB
Akira
証明書の発行A
サーバ
① ログイン( SkypeID、パスワードを送信)
② IDとパスワードが正しければ、サーバが証明書を発行して送る。
③ 通信時に証明書を送って、本人であることを証明する。
セキュリティ①( RSA暗号)
AインターネットB
公開鍵 アイウエオ○△? ×
復号アイウエオ暗号化
秘密鍵 ○△? ×
暗号化データ
公開鍵で復号できた→秘密鍵を持っているこの人は確かに B さんだ
セキュリティ②( AES暗号)
B イ ン ターネットA
もしもし
○△? × ○ △ ?×
もしもし
RSA の公開鍵( A さんの)で暗号化した共通鍵
通話
複合共通鍵 共通鍵
Skypeの問題点固定電話との接続を行うゲートウェイサーバーがない地域がある。 日本内では、まだ固定電話との通話ができない。 Skypeを禁止する国や、電話会社がある。
P2Pのこれからまだまだこれからの P2Pソフト Skypeを利用した企業などもでてきている。 Skypeを教育現場で有効活用できないか。
私たちの実体験から・・・生の授業を見る機会が少ない。いざ実習に入ってもどう授業をすればいいのか分からない。
Skypeを利用すれば、 この問題を解消できないか?
Skypeの有効活用
学生
学生
学生
授業
の資
料
P2Pネットワークを通じて授業参観
参観と同時に授業資料を配布
学生
学生
問題点と改善の見込み映像を複数人に配信できない。7人以上で通話ができない。今後の見込み Skype自体の改良の可能性 Skypeは APIというものを公開しており、これを利用すれば、他のソフトとの連携が可能
Skypeに足りない機能を別のソフトウェアで補う。
まとめ P2P=ファイル共有ソフト=「悪」ではない!使いようによってはとても便利なネットワークシステムになる。 P2Pはこれからの未来にとても期待が持てる。
参考文献 金子勇、Winnyの技術、アスキー、 2005 池嶋俊、入門 Skypeの仕組み、日経 BP社、 2005 岩田真一、なるほどナットク! P2Pがわかる本 オーム社、 2005
徳力基彦、図解 P2Pビジネス、翔泳社、 2005 Skypeやろうぜ http://ikejisoft.com/skype/ P2PWiki http://p2pwiki.ikejisoft.com/
上流と下流高速・・・上流
低速・・・下流上流のノードは検索する必要がない下流のノードは上流のノードにさえ、検索クエリを投げかければよい
検索をスムーズに行い、帯域の圧迫も少ない
キー
キーキー
キーキーキー
キー
キー
キー キー
キーキー
ファイル
ファイル キーキー
キー
キーキーキーキー
キーファイル
無料化の秘密サービス内容 接続形態 通信料
Skype ボイスチャット Skype ユーザー同士の通話P2P
無料Skype テキストチャット Skype ユーザー同士のチャットSkypeOut 固定電話などへの発信 サーバー経由 有料SkypeIn 固定電話などからの着信Skype Voicemail 留守番電話
P2P システムを使用している部分は、会社が整備する必要がないので無料!!サーバーを経由するサービスはサーバーなどの整備がいるため有料となる。(他の電話サービスと比べれば格安!!)
中継①
B インターネットA
スーパーノード
③BからAに電話をかける
Aから始める通信は不可能
ファイアウォールまたはNAT機器
② AさんがBさんと電話したいと言ってるよ ① Bさんに電話したいと伝えて
中継②
B A
① スーパーノードの掛け声とともに、同時にパケットを送る。ファイアウォールやNAT機器が記録。② 相手から届いたパケットを返事だと勘違いして、ファイアウォールが許可。電話がつながる。
OK OK
ファイアウォールまたはNAT機器ファイアウォールまたはNAT機器
UDPホールパンチングスーパーノード
中継③ (TCP)
B A
スーパーノード
常時通信中
ファイアウォールまたはNAT機器 ファイアウォールまたはNAT機器×
× 直接は通信できない
ファイアウォール/NAT内部のSkype とも通信できるスーパーノードが、電話を中継する。
音質を決める要素遅延:声が相手に届くまでにかかる時間。 自分が話した後に、相手の声がなかなか返ってこないと通話しにくくなる。ゆらぎ:音声パケットの遅延がばらつく状況。 ゆらぎが大きいと音が欠けてしまい、会話が成り立たなくなる。コーデック:音声をデジタル信号に変換する方式。 データ量が大きいと、データが届かなかったり遅延、ゆらぎが大きくなる。
遅延、ゆらぎ、コーデックの対策ゆらぎ吸収バッファいったん音声データをバッファに貯めて、順番に並び替えてから再生する。中継を行う場合、 4ルートを用意中継ノード (リレーノード )を 4台選び、その中で一番ゆらぎの少ないルートを選ぶ。3種類のコーデックを使用どのコーデックを使えば一番通話しやすいかを自動的に採用して使用する。