Upload
sunee
View
36
Download
3
Embed Size (px)
DESCRIPTION
自己組織化型 P2P 検索システム : TellaGate 小島 一浩 独立行政法人 産業技術総合研究所. 背景 Community Net の提案 TellaGate の概要と詳細 今後の課題 デモ. Background. 既存の P2P に対する不満点: 1. P2P の検索機能を強化するには? 2. ネットワーク負荷を減らしたい. 3. 回線速度を重視しすぎなのでは? 4. 匿名性を重視しすぎでは? 5. そもそもファイル交換以外の使い方はないのか? 新たな方向性の提案: 1. 回線速度ではなく,コンテンツ,人主体にすべきでは? - PowerPoint PPT Presentation
Citation preview
自己組織化型自己組織化型 P2PP2P 検索システム 検索システム : TellaGate: TellaGate小島 一浩小島 一浩
独立行政法人 産業技術総合研究所独立行政法人 産業技術総合研究所
1. 背景2. Community Net の提案3. TellaGate の概要と詳細4. 今後の課題5. デモ
BackgroundBackground
既存の P2P に対する不満点:
1. P2P の検索機能を強化するには? 2. ネットワーク負荷を減らしたい. 3. 回線速度を重視しすぎなのでは? 4. 匿名性を重視しすぎでは? 5. そもそもファイル交換以外の使い方はないのか?
新たな方向性の提案:
1. 回線速度ではなく,コンテンツ,人主体にすべきでは? 2. 人のつながり,コミュニティー 3. 魅力あるコンテンツ生成能力のある人は,中心へ.
Community NetCommunity Net
発見!
コミュニティーに参加=コミュニティーの自己組織化問題発生!
TellaGate Net
TellaGate Net
TellaGate Net
情報共有・ 情報検索・ 情報配信
エントリーへアクセス
TellaScope
Application ImageApplication Image
- 分散論文検索- 分散掲示板
コミュニティー構造が期待できる対象
HintHint
そもそも現実世界では?
1. A は B と友人である2. B は C と友人である3. A は B の友人に C がいることを知っている4. B は C の友人に D,E,F がいることを知っている
A は B に C を紹介してもらう .A は C と友人になる紹介の連鎖 = 「人つて」による検索連鎖を繰り返し,その関係を維持するとコミュニティーが形成される
A
B
C
C の友人
Proposed Method: TellaGate ProtocolProposed Method: TellaGate Protocol
1.PeerDigest => Preference2.Pong Proxy => Exchange PeerDigest3.QRP with Firework => Query Routing Protocol4.Backward Learning => Update Query Routing Table5.Community Self-Organization Algorithm
PerformancePerformance
a) Success rate
b) Network load
100,0.1 mb 20,25.0 mb
TellaGateTellaGate の概要の概要
1. Download による嗜好状態の変化
2. Query/QueryHit 転送による学習
3. Network の再構成
1.2. が 3. に影響を与える
A
B
C
D
E
Query
QueryHit
QueryErr
B は,自身が持つ C,E の内部モデルを変化B は, C,E の内部モデルを A に伝える
TellaGateTellaGate の構成 の構成
TellaGate
- Indexer ChaSen( 形態素解析器 )
SearchEngine module - Search Engine
HTTP module - HTTP Server - HTTP Client
Octopus module - P2P Routing
TellaPeer(QThread)
生成・管理登録・経路問合せ
検索
PeerDigest 作成
TCP:6699
接続要求
TCP:8080
PeerDigestPeerDigest
)(
)(
)(1
nK
nk
n
wh
wh
wh
hash function
nw
ward01
01
1
……
M-bits array Bloom filtertext
Xdigest
Definition of similarity
)10()( XY
YXXY sim
M
digestdigestcountsim
Digest file guid size path+name 00 : … : ab 1c : … : e3 45000 自律分散 .pdf 00 : … : ff c4 : … : 23 32150 TellaGate.ps dd : … : c1 ae : … : 2
11600 Index.html
Index Table
Octopus : P2P Routing ModuleOctopus : P2P Routing Module
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
Message Cache Table
digest peer guid ip port
org. digest adap. digest peer guid ip port
A
B
C
D
E
B’s Octopus :
Ex. Ping-Pong and Pong Proxy : step 1Ex. Ping-Pong and Pong Proxy : step 1
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
Message Cache Table
org. digest adap. digest peer guid ip port
digest peer guid ip portExPing
A
B
C
D
E
ExP
ing
B’s Octopus :
Ex. Ping-Pong and Pong Proxy : step 2Ex. Ping-Pong and Pong Proxy : step 2
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
Message Cache Table
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 00 da : … : 21 d.d.d.d 6699
digest peer guid ip portExPong(D)
A
B
C
D
E
ExP
ong(
C)
B’s Octopus :
Ex. Ping-Pong and Pong Proxy : step 3Ex. Ping-Pong and Pong Proxy : step 3
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 00 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699ExPong(E)
A
B
C
D
E
B’s Octopus :
Query Routing (QRPwF) : step 0Query Routing (QRPwF) : step 0
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 00 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699
B’s Octopus :
A
B
C
D
E
Que
ry
network = {0, 101, 1858, 25007}
Query Routing (QRPwF) : step 1Query Routing (QRPwF) : step 1
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 00 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
61 : … : f9 A network C
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699
B’s Octopus :
A
B
C
D
E
Que
ry network = {0, 101, 1858, 25007}
Query Routing (QRPwF) : step 2Query Routing (QRPwF) : step 2
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 00 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
61 : … : f9 A network C
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699
B’s Octopus :
A
B
C
D
E
Que
ryE
rr
network = {0, 101, 1858, 25007}
Query Routing (QRPwF) : step 3Query Routing (QRPwF) : step 3
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 00 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
61 : … : f9 A network C D
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699
B’s Octopus :
A
B
C
D
E
network = {0, 101, 1858, 25007}
Query
Query Routing (QRPwF) : step 4Query Routing (QRPwF) : step 4
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 01 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
61 : … : f9 A network C D
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699
B’s Octopus :
A
B
C
D
E
network = {0, 101, 1858, 25007}
QueryHit
Query Routing (QRPwF) : step 5Query Routing (QRPwF) : step 5
org. digest adap. digest peer guid ip port
3b : … : 00 00 : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 00 00 : … : 01 da : … : 21 d.d.d.d 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
01 : ... : ab B C
2c : ... : 61 B D
61 : … : f9 A network C D
Message Cache Table
digest peer guid ip port
01 : … : 35 68 : … : fa e.e.e.e 6699
B’s Octopus :
A
B
C
D
E
network = {0, 101, 1858, 25007}
Que
ryH
it
Community Self-Organization Algorithm (CSOA)Community Self-Organization Algorithm (CSOA)
org. digest adap. digest peer guid ip port
64 : … : 00 00 : … : 01 c5 : … : 8e b.b.b.b 6699
1st Neighbors
2nd Neighbors
message guid src. query words des. 0 …
61 : … : f9 A network B
Message Cache Table
digest peer guid ip port
3b : … : 00 c5 : … : 8e c.c.c.c 6699
ac : … : 01 da : … : 21 d.d.d.d 6699
A’s Octopus :
A
B
C
D
E
CSOA : step 1CSOA : step 1
org. digestorg. digest adap. digestadap. digest peer guidpeer guid ipip portport
64 : … : 0064 : … : 00 00 : … : 0100 : … : 01 c5 : … : 8ec5 : … : 8e b.b.b.bb.b.b.b 66996699
1st Neighbors
2nd Neighbors
message guidmessage guid src. src. query wordsquery words des. 0des. 0 ……
61 : … : f961 : … : f9 AA networknetwork BB
Message Cache Table
digestdigest peer guidpeer guid ipip portport
3b : … : 003b : … : 00 c5 : … : 8ec5 : … : 8e c.c.c.cc.c.c.c 66996699
ac : … : 01ac : … : 01 da : … : 21da : … : 21 d.d.d.dd.d.d.d 66996699
A’s Octopus :
A
B
C
D
EHandshake
CSOA : step 2CSOA : step 2
org. digestorg. digest adap. digestadap. digest peer guidpeer guid ipip portport
64 : … : 0064 : … : 00 00 : … : 0100 : … : 01 c5 : … : 8ec5 : … : 8e b.b.b.bb.b.b.b 66996699
ac : … : 00ac : … : 00 00 : … : 0100 : … : 01 da : … : 21da : … : 21 d.d.d.dd.d.d.d 66996699
1st Neighbors
2nd Neighbors
message guidmessage guid src. src. query wordsquery words des. 0des. 0 ……
61 : … : f961 : … : f9 AA networknetwork BB
Message Cache Table
digestdigest peer guidpeer guid ipip portport
3b : … : 003b : … : 00 c5 : … : 8ec5 : … : 8e c.c.c.cc.c.c.c 66996699
A’s Octopus :
A
B
C
D
EExP
ing-ExP
ong
Small World ?Small World ?
Network の特徴: 1. Diameter 2. Clustering 係数 (WS-model)
Hands
hake
Conclusions and Future WorksConclusions and Future Works
□html への対応 -> Apache + Namazu + Squid + Browser?
□ 最近は,海外でも Social Network( 出会い系 ) が Web サービス として流行っている -> Friendstar, Google の新サービス Friend Rank P2P で,主観的 Rank を計算できないか?
□ 数理解析 -> 簡単なモデルを作成
□ ユーザは使えれば, P2P でなくてもいい... -> ユーザにアピールできるのは?