讨论重点,分布存储,分布Hash Table,资源检索,资源共享,错误信息清除

解决方案 »

  1.   

    分布存储:除了Napster等混合式P2P系统,所有的纯P2P系统的资源不都是分布式存储的吗?拿文件共享系统来说,其中包括共享的文件和文件的索引信息。
    分布Hash Table:这个比较专业,可以参考CHORD和CAN。但是利用哈希函数的系统一般都属于结构化的P2P系统,如果你想彻底了解P2P系统的话,最好看看非结构化的P2P系统,比较出名的模型有Gnutella,Gia等。目前来看,这一类系统还是应用的比较广泛的,原因的话涉及到系统的鲁棒性,可扩展性,半匹配语义查询可操作性等等。
    资源检索:不同的P2P系统的检索机制不一样,CHORD和CAN比较容易,利用哈希函数直接定位,当然为了提高效率会利用诸如finger表的技术。Gnutella等最原始是利用泛洪法进行资源发现的,改进以后出现了很多技术:资源复制,superpeer,利用小世界现象优化查询,语义路由等。
    资源共享:P2P系统的资源不都是共享的吗?如果指的是共享策略的话就比较复杂了。
    错误信息排除:不同的系统也不一样,CHORD和CAN等都是错误敏感的系统,为了维护环的结构需要做很多处理,所以这类系统不能应用于高动态性的环境中。Gnutella等就比较好一点,本身就是一个松散的结构,错误处理相对简单。具体的细节还是请参考rfc或则是相关论文。
      

  2.   

    不明白如何将自己机器的共享信息生成hash值后,
    存入其他机器上,
    如何选取的要存储共享信息的机器,
    如果这些东西不共享,成为垃圾信息,何时清除
    当用户要搜索东西时能否介绍一下流程
      

  3.   

    给出几篇介绍原理的文章
    CHORD: A Scalable Peer-to-peer Lookup Protocol for Internet application,文章很长,但是看完前面5,6页就知道原理和复杂度等。
    CAN:A Scalable Content-Addressable Network
    Gnutella相关的文章很多,它也是无结构化P2P系统的始祖,大家随便搜一下就可以了。
    GIA:Making Gnutellalike P2P Systems Scalable
    小世界相关语义路由:Associative Search in Peer to Peer Networks:
    Harnessing Latent Semantics
    Efficient Content Location Based On Interest-Cluster in Peer-to-Peer System(推荐)
    Clustering in Peer-to-Peer File Sharing Workloads
    Small-World File-Sharing Communities
    RDF相关语义路由:这个最好对RDF和语义Web有一定的了解,EDUTELLA:A P2P Networking Infrastructure Based on RDF
    SuperPeerBased Routing and Clustering Strategies for RDFBased PeerToPeer Networks
    这些文章一般都集中于理论上的讨论,不牵涉到具体编程。而且,目前来看资源的查询是研究的重点,一般不会过多讨论下载的负载平衡问题,这个好像可以参考BT。还有,源代码的话sourceforge上有很多的,不过这个我不懂的(菜)。
      

  4.   

    楼上的楼上的楼上也就是txcn()能否给说说这些问题
    不明白如何将自己机器的共享信息生成hash值后,
    存入其他机器上,
    如何选取的要存储共享信息的机器,
    如果这些东西不共享,成为垃圾信息,何时清除
      

  5.   

    txcn说的文章怎么找不到,
    有关小世界模型倒看过几篇文章,可具体实现还是不明白有很过高过p2p软件的高手进来讲讲
      

  6.   

    herofour555好像对基于哈希函数的结构化P2P系统特别感兴趣,下面是那片关于CHORD的地址:
    http://citeseer.ist.psu.edu/554447.html
    其它的文章应该也不难找,至少在citeseer绝大部分都有,还有估计看过文章后会对那几个问题比较清楚一点。