最近更新: 2012-01-06

企業內 P2P 網路架構設計要點簡易分析

目前常見的 BT (BitTorrent), eMule (EDLink) ,都是屬於公開匿名式 P2P 網路。它們的檔案分享關係網路是公開的,任何人都可以加入,並不適合企業內部的檔案散佈需求。

但也存在私有 P2P 網路架構(Private P2P)。有發展時間長久、支援軟體眾多的 Direct Connect,以及從匿名式 P2P 網路擴充過來的 Freenet 等。

主流的 P2P 網路架構,其實就是公開匿名式 P2P 網路,如 BitTorrent, EDLink, Freenet, Gnutella, Share 等,其發展重點與特性,至少有下列三點:

  1. 網路公開化: 任何人都可以加入網路,門檻愈低愈好。
  2. 端點隱密化: 關係網路上的每個端點,其識別資訊都要遮蔽,最好連 IP 都查不到。
  3. 去中心化(decentralized): 不需要一個集線中心或服務中心作為網路的起點。

以上三個特性,基本上都跟企業內檔案散佈的需求特性相反。 相對於公開式 P2P 網路特性,企業內檔案散佈的需求特性便是:

  1. 網路封閉性: 只有被允許的使用者才可以加入網路,保密性愈高愈好。
  2. 端點可追踪: 可以追查網路上的每個端點的詳細資訊,並可追查曾下載與上傳的檔案內容。
  3. 中心化: 由一個集線中心或服務中心控制網路的起點與每個檔案的散佈章程。

此外,企業內 P2P 網路架構通常還有一個必須克服的設計重點,就是要求資料流量必須可精確預測與分配。例如必須將一份廣告影片在一小時內配佈到企業內的一百台終端上這類的需求,就必須配合精確的流量控制與分配,才可能在指定時間內完成配佈工作。公開式 P2P 網路架構通常不會考慮到這點。在 BT, eMule 下傳檔案時,何時下傳完畢都是看運氣;下傳到一半時斷源、斷種也是很平常的事。但是在企業內 P2P 網路的使用情境中,不可能允許斷源、斷種的事。

主流的 P2P 網路的重點特性並不太適合用於企業內部。 目前看來,或許基於 Direct Connect 的擴展架構較合適。

樂多舊網址: http://blog.roodo.com/rocksaying/archives/18677973.html

樂多舊回應
zhongmx@gmail.com(zmx) (#comment-22271651)
Tue, 10 Jan 2012 23:24:22 +0800
BT 還是可以設立永久/中心化的 Tracker/Seeder, twitter 是個例子
http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html
未留名 (#comment-22272259)
Wed, 11 Jan 2012 14:51:48 +0800
你說的專案,是用 BitTorrent 協定設計的企業內傳檔網路。從作者的敘述中可以得知,作者寫了一套資料中心系統以快速的散佈檔案,儘管它的資料傳輸協定採用了 BitTorrent ,但並不使用現成的 BitTorrent 客戶端軟體(如 uTorrent),也不連接網際網路上現有 BitTorrent 網路。這不是一般人說到BT時想到的那些事。

它可說是一個 BT 變種。這個變種要額外規劃一些 BitTorrent 協定原本不管的項目。例如 internal network, only trusted peers。

但這個案子還是給了我們一些提示。實作了BitTorrent協定的library似乎很多。所以在自己的案子中,整合 BitTorrent 協定看來並不是件太難的事。
未留名 (#comment-22272281)
Wed, 11 Jan 2012 15:08:27 +0800
補充 wiki 的說明: http://en.wikipedia.org/wiki/BitTorrent

BitTorrent可以指
* BitTorrent (協議)。一個流行的P2P網路協議。
* BitTorrent (軟體)。第一款基於BitTorrent協議的P2P檔案分享用戶端軟體。
* BitTorrent (公司)。一家美國商業公司,軟體BitTorrent的母公司,其致力於開發基於BitTorrent協議技術。
* BitTorrent用戶端。指所有利用BitTorrent協議進行檔案傳輸的用戶端軟體。