p2p 网络的核心机制
DESCRIPTION
P2P 网络的核心机制. 章节内容. 4.1 覆盖网拓扑结构 4.2 分布式散列表 4.3 路由和定位 4.4 查询和搜索 4.5 动态结点算法 4.6 容错性. 4.1 覆盖网拓扑结构. P2P 网络是构建在底层物理网(如 IP 网)上的应用层覆盖网,拓扑结构对 P2P 网络的工作性能以及设计机制有决定性作用 典型拓扑结构:带弦环、树、 Plaxton Mesh 、环面、超立方体、蝴蝶、异或 问题:拓扑结构对 P2P 性能的影响情况? Geometries' Nature FNS FRS Performance Resilience - PowerPoint PPT PresentationTRANSCRIPT
-
P2P
-
4.1 4.2 4.3 4.4 4.5 4.6
-
4.1 P2PIPP2PPlaxton MeshP2PGeometries' NatureFNSFRSPerformanceResilienceLatency
-
Geometries considered
-
Geometry => Flexibility => PerformanceGeometry captures flexibility in selecting algorithmsFlexibility is important for routing performance
Flexibility in selecting routes leads to shorter, reliable paths
Flexibility in selecting neighbors leads to shorter paths
-
Metrics for flexibilityFNS: Flexibility in Neighbor Selection= number of node choices for a neighbor
FRS: Flexibility in Route Selection= avg. number of next-hop choices for all destinations
Constraints for neighbors and routes
select neighbors to have paths of O(logN) select routes so that each hop is closer to destination
-
Summary of flexibility analysisHow relevant is flexibility for DHT routing performance?
-
Static ResilienceTwo aspects of robust routing
Dynamic Recovery : how quickly routing state is recovered after failuresStatic Resilience : how well the network routes before recovery finishescaptures how quickly recovery algorithms need to work
depends on FRS
Evaluation:Fail a fraction of nodes, without recovering any stateMetric: % Paths Failed
- Does flexibility affect Static Resilience?Tree
-
Geometrys impact on ProximityBoth FNS and FRS can reduce latencyTree has FNS, Hypercube has FRS, Ring & XOR have both Metric: Overlay Path Latency
- Which is more useful: FNS or FRS?Plain
-
FRSresilenceFNSlatencytradeoff[Gummadi et al.03] K. P. Gummadi, R. Gummadi, S. D. Gribble, S. Ratnasamy, S. Shenker and I. Stoica. The Impact of DHT Routing Geometry on Resilience and Proximity. In SIGCOMM 2003, pp. 381-394.
-
4.2 (DHTDistributed hash table)P2PnodelDobjectIDDHT
-
P2P
-
P2PDHTP2PDHTP2PP2PPut(Key, Value)KeyValueRemote(Key)KeyValue=Get(Key)KeyValue
-
P2PAPIKarpIPTPS04OpenHashRheaSIGCOMM05OpenDHT(www.opendht.org )DHT
-
OpenDHTOpenDHTDHThttp://opendht.orgBamboo DHTPastryDHTOpenDHTDHTP2PAPIPut(K, V, t)OpenDHTtGet(K)KOpenDHT
-
OpenDHT
-
Examples:Here is an example usage scenario: $ ./put.py colors red Success $ ./get.py colors red $ ./put.py --secret donttell colors blue Success $ ./get.py colors red blue $ ./rm.py colors blue donttell Success $ ./get.py colors red
-
hash functionsecure hash functionconsistent hash functionMD5,SHA-1,HMAC(secret keyhash functionMAC)(2^n)2^(n/2)
-
4.3 P2PID
-
P2PP2PO(1)
-
P2PTTLP2P(guided routing)
-
FreenetFreenet
-
Freenet
-
P2PP2PIDO(logN)
-
P2PKaashoek & KargerIPTPS03P2P Nd(logdN-1)(logdN-O(1))(logdN-1)Moore Bound()Ah1+d^1+d^2++d^h=d^(h+1)/(d-1)d^(h+1)/(d-1)=NhO(logN)
-
4.4 P2P
-
P2PVSMvector space modeLSI latent semantic indexRefer to [Tang et.al.2003]&[Zhu et.al.,2003]
-
P2Prouting indicesP2PP2P [Crespo & Garcia-Molina, 2002]CRIHRIERIDHTP2P[Harren, 02][Ramabhadran, 2004]
-
ADatabaseLanguagesB100*(20/100)*(30/100)=6C1000*(0/1000)*(50/1000)=0D200*(100/200)*(150/200)=75BCDGoodness6,0,75ADGoodnessCRISi)iSi
-
DHTP2PN-gramsBeethovens 9th123:Bee eet eth tho hov ove ven ens ns_ s_9 _9t 9th23(thoventho,hov,oev,ven43concatenation
-
4.5 P2P
-
P2P
-
P2PGnutellaNGnutellaNPINGPONGPINGPeerPINGPONG
-
KaZaAKaZaAP2PKaZaA
-
eDonkeyKaZaAFreenet
-
P2PJoin Step1NGJoin Step2NGNIDNZNZJoin Step3
-
Join Step3TapestryCANP2P
-
4.6 P2P
-
1/2(logN)IPTPS03[Kaashoek&Karger,2003]
-
P2PP2PP2P
-
(static resilience)P2P(routing recovery resilience)
-
(flexibility)
-
P2P(churn)P2PP2PP2P
-
P2P(overlay partitioning)P2P
-
Crash Point50%(50%)
-
P2P
-
1PHTDHTDHT2overlay partition
-
IDEASearching Similarity Documents unstructured overlay Structured overlayInterest-Cluster PAIS: A Proximity-Aware Interest-Clustered P2P File Sharing System,CCGrid 2009,Haiying ShenRouting IndicesAdaptive Resource Indexing Technique for Unstructured Peer-to-Peer Networks,CCGrid2009,Sumeth Lerthirunwong, Naoya Maruyama, and Satoshi Matsuoka Range QueryRange Query Using Learning-Aware RPS in DHT-Based Peer-to-Peer Networks,CCGrid2009,Ze Deng, Dan Feng, Ke Zhou, Zhan Shi, and Chao Luo
-
OpenDHT(anycast)
-
[Cohen and Shenker.02] Edith Cohen and Scott Shenker. Replication Strategies in Unstructured Peer-to-Peer Networks. In SIGCOMM 2002, pp. 84-95. Rao et al.03] Ananth Rao, Karthik Lakshminarayanan, Sonesh Surana, Richard Karp, Ion Stoica. Load Balancing in Structured P2P Systems. In IPTPS 2003, pp. 68-79. Balancing Locality and Randomness in DHTs Shuheng Zhou, Gregory R. Ganger, Peter Steenkiste. Carnegie Mellon University Technical Report CMU-CS-03-203, November 2003.