RendezVous Peer (2) P2P特論 (ソフトウェア特論) 第9回 / 2005-06-15 1 きょうの目標 RendezVous Peer の概要について理解す る。 2 JXTAネットワークと RendezVous Peer 3 Advertisements (告知) Peer, Peer Group, Pipe などの資源につい て記述したもの。メタデータ。 JXTAでの資源の発見 = Advertisement の発見 Advertisement は XML で書かれる。 4 Advertisements (告知) パイプ告知の例 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE jxta:PipeAdvertisement> <jxta:PipeAdvertisement xmlns:jxta="http://jxta.org"> <Id> urn:jxta:uuid59616261646162614E504720503250330937A65BF6C641 0E923799B39ED9B20C04 </Id> <Type>JxtaUnicast</Type> <Name>tomoharuPipe</Name> </jxta:PipeAdvertisement> 5 JXTAでの検索 基本的に Advertisement を探索する 必要な Advertisement をいかにして探す か? 6 JXTA 1.0 での検索 PeerGroup 内のすべての Peer へのブ ロードキャスト 「フラッディング (flooding)」 水浸しにする、という意味 トラフィックが大きくなる ネットワークやPeerへの負荷が大きい 7 JXTA 2.0 での検索 SRDI を用いる Shared Resource Distributed Index の採用 フラッディングは用いないので、基本的に パフォーマンスが向上する 8 JXTAの3つのPeer Edge Peer (エッジ・ピア) Relay Peer (リレー・ピア) 平民。通信を行う。 ファイアウォールやNATをまたいで通信する。 RendezVous Peer (ランデブー・ピア) Advertisement のインデックスを管理。 他のPeerからの問い合わせに対応する。 9 JXTAのネットワーク (1) 10 JXTAのネットワーク (2) ひとつの RendezVous Peer に 複数の Edge Peer が ぶらさがっている。 RendezVous Peer 同 士が接続されている。 11 RendezVous Peer (1) Edge Peer の機能をすべて持つ。 Advertisement のインデックスを管理。 Edge Peer からの要求に応じてインデック スを検索。 検索要求をほかの RendezVous Peer に 転送する。 他のPeerからの問い合わせに対応する。 12 RendezVous Peer (2) Edge Peer と RendezVous Peer は固定的 な役割ではない。 Edge Peer が RendezVous Peer になることが ある。 また、RendezVous が Edge に。 ある Peer Group では RendezVous でも、 別の Peer Group では Edge の場合があ る。 13 RendezVous Peer (3) RendezVous Peer では、Advertisement のハッシュ表(の一部)を管理する キーは Advertisement のハッシュ値 値は Advertisement を持っている Peer の ID つまり、RendezVous Peer で Advertisement 自体を保持している訳ではない 14 ハッシュ表 「キー」と「値」がペアになって いるデータ構造 「キー」を元に「ハッシュ値」を 作成する キーの重複はない。 Java では、java.util.Map を 実装している java.util.HashMap が該当す る 15 Advertisement の公開と発見 16 (1) Pipe Advertisement の作成 17 (2) Pipe Advertisement の公開 18 (3) ハッシュ値の管理 19 (4) Pipe告知の問い合わせ 20 (5) 該当する告知を探索 21 (6) 該当する告知を発見 22 (7) EG1 に問い合わせ内容を 送信 23 (8) Pipe告知を直接送信 24 SRDI 25 SRDI とは Shared Resouce Distributed Index Advertisement のインデックスを分散管理 する方法 JXTA 2.0 から採用 26 ハッシュ表 「キー」と「値」がペアになっている データ構造 「キー」を元に「ハッシュ値」を作成 する キーの重複はない。 Java では、java.util.Map を実装し ている java.util.HashMap が該当 する 27 RendezVous Peer での Advertisement の管理 RendezVous Peer では、Advertisement のハッシュ表の一部を管理する キーは Advertisement のハッシュ値 値は Advertisement を持っている Peer の ID 28 DHT Distributed Hash Table = 分散ハッシュ テーブル ひとつのハッシュテーブルを分散して管理する ことで、負荷の集中をさける 実装はさまざま Chord, CAN, Pastry, Tapestry 29 SRDI ハッシュテーブルを分散して管理する 分散されたハッシュテーブルをきっちりと管 理するのではなく、 ゆるやかに管理して、 必要があれば探しにいく 30
© Copyright 2025 ExpyDoc