码迷,mamicode.com
首页 > 其他好文 > 详细

P2P system: GNUTELLA

时间:2015-10-27 00:11:20      阅读:324      评论:0      收藏:0      [点我收藏+]

标签:

P2P system: GNUTELLA

GNUTELLA是第一个经论证的分布式的peer-to-peer system.

技术分享

Napster的一个重大问题是涉及到间接侵权,所以GNUTELLA消除the servers altogether然后使用client来search and retrieve,所以client也充当了servers,所以Gnutella的client也叫做servents(由server和client拼接而成)

 

技术分享

neighbors意味着这个peer知道它们的IP地址与port number,能够给它们发送message(如TCP).

在peers中创造了一个叫做an overlay graph的graph,之所以称这个图为an overlay graph是因为it‘s a graph that is overlaid on top of the internet

图中的每条边实质上是底层的internet的internet path,但是考虑到overlay,在underlying internet中的actual path与之不相关,只要这些peers能够talk with each other.

怎么找到指定的文件

技术分享

 

五种主要的message type:

 

query message: 包含着keywords的查询

queryHit: 对query的回应

Ping:为了保证the list of neighbors是最新的,使用ping和pong message

Pont: 为了保证the list of neighbors是最新的,使用ping和pong message

Push: 用于file transfer

以上我们讨论的message的所有的fields除了IP address之外都是使用小端存储

 

P2P system: GNUTELLA

标签:

原文地址:http://www.cnblogs.com/yan2015/p/4912617.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!