Click here to load reader

P2P 网络的核心机制

Embed Size (px)

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 Presentation

Citation preview

  • 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.