對等網路

對等式網路（peer-to-peer，簡稱P2P），又稱為點對點技術，是去中心化的網際網路架構、依靠使用者之間（即節點或 peers）直接交換資訊，其主要目的是減少傳統網路傳輸中對單一節點的依賴，進而降低資料遺失的風險。不同於以中央伺服器為核心的集中式網路系統，對等網路中的每個節點既是使用者端，也是伺服器，具備雙重功能。節點之間無法直接搜尋其他節點，而是透過整體使用者群體進行資訊交流與連結。

P2P節點能遍布整個網際網路，也給包括開發者在內的任何人、組織或政府帶來監控難題。P2P在網路隱私要求高和文件共享領域中，得到了廣泛的應用。使用一般型P2P技術的網路系統有比特幣、Gnutella或自由網等。另外，P2P技術也被使用在類似VoIP等實時媒體業務的數據通信中。有些網路（如Napster、OpenNAP、IRC @find）包括搜索的一些功能，也使用客戶端-伺服器結構，而使用P2P結構來實現另外一些功能。這種網路設計模型不同於客戶端-伺服器模型，在客戶端-伺服器模型中通信通常來往於一個中央伺服器。

## 歷史

<image>

P2P架構體現了一個網際網路技術的關鍵概念，這一概念被描述在1969年4月7日第一份RFC文檔「RFC 1，主機軟體」中。在不用中心索引伺服器結構交換多媒體文件的大趨勢下，這個概念已經得到廣泛普及。

## 分類

### 根據中央化程度

- 一般型P2P
- 節點同時作為客戶端和伺服器端。
- 沒有中心伺服器。
- 沒有中心路由器。
- 如Gnutella。
- 特殊型P2P
- 有一個中心伺服器保存節點的資訊並對請求這些資訊的要求做出響應。
- 節點負責發布這些資訊（因為中心伺服器並不保存文件），讓中心伺服器知道它們想共享什麼文件，讓需要它的節點下載其可共享的資源。
- 路由終端使用地址，通過被一組索引引用來取得絕對地址。
- 如最原始的Napster。
- 混合型P2P
- 同時含有一般型P2P和特殊型P2P的特點。
- 如Skype。

### 根據網路拓撲結構

- 結構P2P
- 點對點之間互有連結資訊，彼此形成特定規則拓撲結構。
- 需要請求某資源時，依該拓撲結構規則尋找，若存在則一定找得到。
- 如Chord、YaCy、Kademlia。
- 無結構P2P
- 點對點之間互有連結資訊，彼此形成無規則網狀拓撲結構。
- 需要請求某資源節點時，以廣播方式尋找，通常會設TTL，即使存在也不一定找得到。
- 如Gnutella。
- 鬆散結構P2P
- 點對點之間互有連結資訊，彼此形成無規則網狀拓撲結構。
- 需要請求某資源時，依現有資訊推測尋找，介於結構P2P和無結構P2P之間。
- 如Freenet、Zeronet。

## P2P網路的優勢

P2P網路的一個重要的目標就是讓所有的客戶端都能提供資源，包括帶寬，存儲空間和算力。因此，當有節點加入且對系統請求增多，整個系統的容量也增大。這是具有一組固定伺服器的Client-Server結構不能實現的，因為在上述這種結構中，客戶端的增加意味著所有使用者更慢的數據傳輸。

P2P網路的分布特性通過在多節點上複製數據，也增加了防故障的健壯性，並且在一般型P2P網路中，節點不需要依靠一個中心索引伺服器來發現數據。在後一種情況下，系統也不會出現單點崩潰。

當用P2P來描述Napster 網路時，對等協議被認為是重要的，但是，實際中，Napster 網路取得的成就是對等節點（就像網路的末枝）聯合一個中心索引來實現。這可以使它能快速並且高效的定位可用的內容。對等協議只是一種通用的方法來實現這一點。

## 應用

<image>

點對點技術有許多應用。共享包含各種格式音訊，影片，數據等的文件是非常普遍的，即時數據（如IP電話通信，Anychat音影片開發軟體）也可以使用P2P技術來傳送。

有些網路和通信渠道，像Napster、OpenNAP和IRC@find，一方面使用了主從式架構結構來處理一些任務（如搜索功能），另一方面又同時使用P2P結構來處理其他任務。而有些網路，如Gnutella和Freenet，使用P2P結構來處理所有的任務，有時被認為是真正的P2P網路。儘管Gnutella也使用了目錄伺服器來方便節點得到其它節點的網路地址。

點對點技術亦常應用於加密貨幣上。比特幣的白皮書標題正是「一種點對點式的電子現金交易系統」。對等網路中每個節點的地位相當，沒有任何節點屬於中央控制地位，也沒有任何節點扮演交易中介的角色；網路中每個節點既是服務端，亦是使用者端；節點可以選擇隨時加入，隨時退出；節點可以選擇運行所有的功能，也可以選擇運行部分的功能；節點越多，整個系統的運算能力越強，數據安全性越高，抗破壞能力越強。比特幣便是採用了這種P2P網路協議，其後的許多加密貨幣，如以太坊﹑ EOS 等仍然繼續採用。

### 學術性P2P網路

2015年1月28日，賓夕法尼亞州立大學的開發者，聯合了麻省理工學院開放知識行動，西蒙弗雷澤大學的研究人員，還有第二代網際網路P2P工作組，正在開發一個P2P網路的學術性應用。這個項目稱為LionShare，基於第二代網路技術，更詳細地說是Gnutella模型。這個網路的主要目的是讓眾多不同學術機構的使用者能夠共享學術材料。LionShare網路使用特殊型P2P網路類型，混合了Gnutella分散的P2P網路和傳統的C/S網路。這個程序的使用者能夠上傳文件到一個伺服器上，不管使用者是否在線，都能夠持續的共享。這個網路也允許在比正常小得多的共享社區中使用。

這個網路與當前正在使用的其他P2P網路的主要不同是LionShare網路不允許匿名使用者。這樣做的目的是防止版權材料在網路上共享，這同時也避免了法律糾紛。另一個不同是對不同組有選擇性的共享個別的文件。使用者能個別選擇哪些使用者可以接收這一個文件或者這一組文件。

學術社區需要這種技術，因為有越來越多的多媒體文件應用在課堂上。越來越多的教授使用多媒體文件，像音訊文件，影片文件和幻燈片。把這些文件傳給學生是件困難的任務，而這如果用LionShare這類網路則容易的多。

## 優點

- 擁有較佳的並行處理能力。
- 運用記憶體來管理交換資料，大幅度提高效能。
- 不用投資大量金錢在伺服器的軟、硬體設備。
- 適用於小規模的網路，維護容易。

## 缺點

- 架構較為複雜，除了要有開發伺服器端，還要有專用的客戶端。
- 用在大規模的網路，資源分享紊亂，管理較難，安全性較低。

## 爭議

### 法律方面

在美國法律中，「Betamax判決」的判例堅持，如果它們有實質性非侵權用途，複製「技術」就不是本質非法的。這個網際網路廣泛使用之前的決定被應用於大部分的數據網路，包括P2P網路，因為已得到認可的文件的傳播也是可以的。這些非法侵犯的使用包括開放原始碼軟體，公共領域文件和不在版權範圍之內的作品。其他司法部門也可用類似的方式看待這個情況。

實際上，大多數在P2P網路上共享的文件是版權流行音樂和電影，包括各種格式（MP3，MPEG，RM 等）。在多數司法範圍中，共享這些複本是非法的。這讓很多觀察者，包括多數的媒體公司和一些P2P的倡導者，批評這種網路已經對現有的發行模式造成了巨大的威脅。試圖測量實際金錢損失的研究多少有些意義不明。雖然紙面上這些網路的存在而導致的大量損失，而實際上自從這些網路建成以來，實際的收入並沒有多大的變化。不管這種威脅是否存在，美國唱片業協會和美國電影協會正花費大量的錢來試著遊說立法者來建立新的法律。一些版權擁有者也向公司出錢希望幫助在法律上挑戰從事非法共享他們材料的使用者。

儘管有Betamax判決，P2P網路已經成為那些藝術家和版權許可組織的代表攻擊的靶子。這裡面包括美國唱片協會和美國電影協會等行業組織。Napster 服務由於美國唱片協會的投訴而被迫關閉。在這個案例中，Napster故意地買賣這些並沒有從版權所有者那得到許可發行的音像文件。

隨著媒體公司打擊版權侵犯的行為擴大，這些網路也迅速不斷地作了調整，讓其無論從技術上還是法律上都難於撤除。這導致真正犯法的使用者成為目標，因為雖然潛在的技術是合法的，但是用侵犯版權的方式來傳播的個人對它的濫用很明顯是非法的。

匿名P2P網路允許發布材料，無論合法不合法，在各種司法範圍內都很少或不承擔法律責任。很多人表示這將導致更多的非法材料更容易傳播，甚至（有些人指出）促進恐怖主義，要求在這些領域對其進行規範。而其他人則反對說，非法使用的潛在能力不能阻止這種技術作為合法目的的使用，無罪推定必須得以應用，像其他非P2P技術的匿名服務，如電子郵件，同樣有著相似的能力。

重要案例：

- 美國法律
- Sony Corp. vs Universal City Studios ( Betamax判決)
- MGM vs Grokster

### 安全方面

許多P2P網路一直受到懷有各種目的的人的持續攻擊。例子包括：

- 中毒攻擊（提供內容與描述不同的文件）
- 拒絕服務攻擊（使網路運行非常慢甚至完全崩潰）
- 背叛攻擊（吸血）（使用者或軟體使用網路卻沒有貢獻出自己的資源）
- 在數據中插入病毒（如，下載或傳遞的文件可能被感染了病毒或木馬）
- P2P軟體本身的木馬（如，軟體可能含有間諜軟體）
- 過濾（網路運營商可能會試圖禁止傳遞來自P2P網路上的數據）
- 身份攻擊（如，跟蹤網路上使用者並且進行不斷騷擾式的或者是用合法性地攻擊他們）
- 垃圾資訊（如在網路上發送未請求的資訊—不一定是拒絕服務攻擊）

如果精心設計P2P網路，使用加密技術，大部分的攻擊都可以避免或控制，P2P網路安全事實上與拜占庭將軍問題有密切聯繫。然而，當很多的節點試著破壞它時，幾乎任何網路也都會失效，而且許多協議會因使用者少而表現得很失敗。

2007年4月23日，CA公司發表資安警訊，指出Foxy、BitComet、eDonkey、µTorrent、Ares、Azureus、BearShare、Lphant、Shareaza、Hamachi、exeem lite、Fpsetup、Morpheus (檔案分享軟體)、iMesh等14款P2P軟體都存在安全威脅，這些P2P軟體的潛在威脅來源包括可能會覆寫檔案，為檔案重新命名，刪除檔案，被第三方植入惡意程式等。

## 計算技術展望

技術角度嚴格來講，對等網路雙方嚴格對等並同等地提供和使用數據，沒有伺服器和客戶端的區別。但這樣的一般型P2P應用和網路少之又少，大部分稱為P2P的網路和應用實際上依賴或包含像DNS這樣的一些非對等單元。同時應用中實際也使用了多個協議，使節點可以同時或分時成為客戶端、伺服器、和對等節點；譬如Usenet(1979年)和FidoNet(1984年)這樣已經使用多年完全的分布式對等網路。

很多P2P系統使用更強的對等點（稱為超級對等點(Super Node)）作為伺服器，那些客戶節點以星狀方式連接到一個超級對等點上。

在1990年代末期，早在即時通訊流行之前，為了促進對等網路應用的發展，昇陽（SUN）公司在Java技術中增加累一些類，以便開發者能開發不受控於中心伺服器的實時聊天applet及應用。這個工作現在由JXTA工程來繼續。

P2P系統和應用已經吸引了電腦科學研究的大量關注，在這一領域有包括Chord計劃，ARPANET，the PAST storage utility，P-Grid（一個自發組織的新興覆蓋性網絡），和CoopNet內容分發系統在內的一系列卓越的研究計劃。

## 限制

### 中華人民共和國

P2P技術在中國法律方面處於空白狀態，原則上不受中國政府的官方限制。但由於P2P技術會大量占用網路帶寬，並且由於中國的網路設施的現狀和中國對網路管理的態度，都不同程度的對P2P通訊方式有所限制。

目前中國各大ISP對網路接入都進行了限速，對占用帶寬的應用比如P2P，會採取措施，常用的手段有限制TCP連接數，封鎖P2P協議，限制下載/上傳速度等。但是由於這些行為大部分都是秘密進行，因此中國眾多P2P使用者稱，此舉嚴重侵犯了他們的知情權和使用權。在中國，被限制最多的P2P軟體是BitTorrent系列軟體和eMule。

在日趨稀少的IPv4地址資源的情況下，中國大部分地區開始採用「大內網」的方式，減少對IP位址資源的消耗，即大部分的家庭及個人使用者將連接ISP的路由器，使用網路地址轉換方式連接外部網絡。因NAT和部分P2P協議的限制，導致P2P軟體大多只能在內網進行傳輸，對P2P產業鏈產生了很大影響。

此外，中國出於對國內產業支持和資訊控制的考慮，也會限制一些P2P方式的即時通訊軟體。中國資訊產業部曾發文要求VOIP只能在指定的網路運營商進行試驗，並有地區封殺skype，不過也有官員對此否認並說明只是針對PC-Phone。

2009年12月，中國廣電總局以無視聽許可證為由，由工信部撤消了Btchina網站的備案號，使其被迫關站。此次行動還影響了包括悠悠鳥論壇等BT站點。

### 日本

在日本，根據日本現行著作權法，日本境內一切免費提供商業軟體/或其他數據下載的網站均屬非法。違法情節嚴重的可被判處有期徒刑，同時處以罰款。BitTorrent系列軟體和eMule均被禁止。但因為Share和Winny軟體的存在，P2P技術在日本仍然流行。這兩款軟體都採用了IP加密和數據加密的技術，目前日本有幾百萬人使用這兩款軟體來交流動畫，遊戲，音樂，軟體等數據，但顯然警方已經掌控了追查使用者的方法。2008年5月9日，三名在share上發布大量版權保護作品的職人遭到逮捕。這兩款軟體的流行也帶來了一些負面問題，比如機密資料的洩漏和電腦病毒的傳播。

### 紐西蘭

在紐西蘭，根據紐西蘭2011年9月實施的版權法，紐西蘭境內下載受版權保護的內容為違法，主要針對的就是P2P技術的下載。如果下載的內容收到版權方提訴，ISP會根據使用者在下載的時間評估，如有版權侵犯，使用者將被警告，警告三次將被罰款15000紐西蘭元，約合75000人民幣。不過需要注意的是對於在線觀看以及文件寄存類網站卻不在此次罰款範圍內。也就是說使用者通過Torrent軟體的BT種子下載一個受版權保護的作品可能會被罰款，但是如果利用離線文件下載方式則不會受到懲罰。而且在紐西蘭收版權保護的版權所有者通常僅包括歐美一些公司，所以對當地華人來說，即使使用p2p技術下載中國，韓國等亞洲地區綜藝電影同樣不會被提訴。

## 參考文獻

- 內政部警政署刑事警察局科技犯罪防制中心， 〈小心使用P2P軟體，以免你的個人檔案也分享出去〉，2006年11月27日。
- Taiwan.CNET.com新聞專區， 〈CA點名多家P2P軟體藏危機〉，2007年4月23日。
- Ross J. Anderson. The eternity service . In Pragocrypt 1996, 1996.
- Stephanos Androutsellis-Theotokis and Diomidis Spinellis. A survey of peer-to-peer content distribution technologies . ACM Computing Surveys, 36(4):335–371, December 2004. doi:10.1145/1041680.1041681.
- Biddle, Peter, Paul England, Marcus Peinado, and Bryan Willman, The Darknet and the Future of Content Distribution . In 2002 ACM Workshop on Digital Rights Management, 18 November 2002.
- Antony Rowstron and Peter Druschel, Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems. In proceedings Middleware 2001 : IFIP/ACM International Conference on Distributed Systems Platforms. Heidelberg, Germany, November 12-16, 2001. Lecture Notes in Computer Science, Volume 2218, Jan 2001, Page 329.
- Andy Oram et al., Peer-to-Peer:Harnessing the Power of Disruptive Technologies, Oreilly 2001
- I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, and H. Balakrishnan. Chord: A scalable peer-to-peer lookup service for internet applications. In Proceedings of SIGCOMM 2001, August 2001.
- Ralf Steinmetz, Klaus Wehrle (Eds). Peer-to-Peer Systems and Applications. ISBN 3-540-29192-X, Lecture Notes in Computer Science, Volume 3485, Sep 2005

## 外部連結

- Glossary of P2P terminology
- Foundation of Peer-to-Peer Computing , Special Issue, Elsevier Journal of Computer Communication, (Ed) Javed I. Khan and Adam Wierzbicki, Volume 31, Issue 2, February 2008
- Ross J. Anderson. The eternity service . In Pragocrypt 1996, 1996.