2010-08-23 175 views
7

我想知道我可以在哪裏瞭解更多關於分散式共享和P2P網絡。理想情況下,我想創建一些內容來幫助學生在大學網絡上共享文件,這樣他們就可以共享而不用擔心外部實體。創建一個P2P /分散式文件共享網絡

我不想在這裏建立下一個Napster,只是想知道這個想法是否可行。有沒有開源的P2P網絡可以調整做我想要的?

回答

3

基本上你需要一臺服務器(當然,你不需要一臺服務器,但它會讓它變得simplier),將存儲其他東西之間的用戶IP地址,如文件哈希表等
該服務器可在任何你想要的環境中(這很舒服)。然後,每個客戶端連接到服務器(它應該有一個DNS,它可以是一個免費的,我已經使用no-ip.com一次),並首先發送基本信息(如IP和一個文件哈希列表),然後每隔一段時間發送一些內容(比如每5分鐘或更少),以報告它仍然可以訪問。

當客戶端搜索文件/用戶時,它只是詢問服務器。

這是一個集中式網絡,但文件共享將在p2p客戶端到客戶端連接中完成。
這樣做的原因是,如果沒有參考,您無法知道要連接的IP。

只是爲了清除此服務器的事情:
- 種子使用跟蹤器
- eMule的ED2K使用lugdunum服務器
- 電驢的「真p2p」Kademlia使用已知節點(客戶端)(大部分時間取自服務器like this)。

0

Bit-Torrent有什麼問題?

編輯:在微軟操作系統上還有一個預先建立的P2P網絡,作爲構建東西的基礎非常酷。 http://technet.microsoft.com/en-us/network/bb545868.aspx

+1

我認爲他的意思是位洪流,但他想要了解如何開始學習系統,它是如何工作的,它的協議等的參考文獻 – RobertPitt 2010-08-23 23:02:49

+0

我猜想bit洪流會工作,我想設立一個跟蹤器,但我想'd喜歡不需要我使用服務器的系統 – Parker 2010-08-23 23:37:14

+0

@Parker:DHT和PEX的Bittorrent不需要服務器。 http://en.wikipedia.org/wiki/BitTorrent_(protocol)#Distributed_trackers – 2011-02-09 23:45:18

1

Tribler是你在找什麼!

它是來自代爾夫特理工大學的完全分散的BitTorrent客戶端。它是開源的,用Python編寫,所以也是一個很好的學習起點。