點對點技術(peer-to-peer, 簡稱P2P)又稱對等網際網路技術,是一種網路新技術,依賴網路中參與者的計算能力和頻寬,而不是把依賴都聚集在較少的幾台伺服器上。P2P網路通常用於通過Ad Hoc連線來連線節點。這類網路可以用於多種用途,各種檔案共享軟體已經得到了廣泛的使用。P2P技術也被使用在類似VoIP等實時媒體業務的數據通信中。
純點對點網路沒有客戶端或伺服器的概念,只有平等的同級節點,同時對網路上的其它節點充當客戶端和伺服器。這種網路設計模型不同於客戶端-伺服器模型,在客戶端-伺服器模型中通信通常來往於一個中央伺服器。 有些網路(如Napster, OpenNAP, 或IRC @find)的一些功能(比如搜尋)使用客戶端-伺服器結構,而使用P2P結構來實現另外一些功能。類似Gnutella 或Freenet的網路則使用純P2P結構來實現全部的任務。 歷史 P2P 架構體現了一個互連網技術的關鍵概念,這一概念被描述在1969年4月7日第一份RFC文檔“RFC1,主機軟體”[1]中。而最近,在不用中心索引伺服器結構實現多媒體檔案交換的背景下,這個概念已經變得非常普遍了。
分類
依中央化程度 純P2P: 節點同時作為客戶端和伺服器端。
沒有中心伺服器。 沒有中心路由器。 如Gnutella。 雜P2P:
有一個中心伺服器保存節點的信息並對請求這些信息的要求做出回響。
節點負責發布這些信息(因為中心伺服器並不保存檔案),讓中心伺服器知道它們想共享什麼檔案,讓需要它的節點下載其可共享的資源。
路由終端使用地址,通過被一組索引引用來取得絕對地址。
如最原始的Napster。
混合P2P: 同時含有純P2P和雜P2P的特點。 如Skype。 依網路拓撲結構:
結構P2P: 點對點之間互有連結資訊,彼此形成特定規則拓撲結構。 需要請求某資源時,依該拓撲結構規則尋找,若存在則一定找得到。 如Chord、CAN。 無結構P2P: 點對點之間互有連結資訊,彼此形成無規則網狀拓撲結構。 需要請求某資源點時,以廣播方式尋找,通常會設TTL,即使存在也不一定找得到。 如Gnutella。 鬆散結構P2P: 點對點之間互有連結資訊,彼此形成無規則網狀拓撲結構。 需要請求某資源時,依現有資訊推測尋找,介於結構P2P和無結構P2P之間。 如Freenet。
P2P網路的優勢
P2P網路的一個重要的目標就是讓所有的客戶端都能提供資源,包括頻寬,存儲空間和計算能力。因此,當有節點加入且對系統請求增多,整個系統的容量也增大。這是具有一組固定伺服器的Client-Server結構不能實現的,因為在上述這種結構中,客戶端的增加意味著所有用戶更慢的數據傳輸。 P2P網路的分布特性通過在多節點上複製數據,也增加了防故障的健壯性,並且在純P2P網路中,節點不需要依靠一個中心索引伺服器來發現數據。在後一種情況下,系統也不會出現單點崩潰。
當用P2P來描述Napster 網路時,對等協定被認為是重要的,但是,實際中,Napster 網路取得的成就是對等節點(就像網路的末枝)聯合一個中心索引來實現。這可以使它能快速並且高效的定位可用的內容。對等協定只是一種通用的方法來實現這一點。
套用
eMule點對點技術有許多套用。共享包含各種格式音頻,視頻,數據等的檔案是非常普遍的,即時數據(如IP電話通信)也可以使用P2P技術來傳送。 有些網路和通信渠道,像Napster,OpenNAP,和IRC@find,一方面使用了主從式架構結構來處理一些任務(如搜尋功能),另一方面又同時使用P2P結構來處理其他任務。而有些網路,如Gnutella和Freenet,使用P2P結構來處理所有的任務,有時被認為是真正的P2P網路。儘管Gnutella也使用了目錄伺服器來方便節點得到其它節點的網路地址。 學術性P2P網路 最近,賓夕法尼亞州立大學的開發者,聯合了麻省理工學院開放知識行動,西蒙弗雷澤大學的研究人員,還有第二代互連網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套用和網路是很少的,大部分稱為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對網路接入都進行了限速,通常為512K/s以下,對占用頻寬的套用比如P2P,會採取措施,常用的手段有限制TCP連線數,封鎖P2P協定,限制下載/上傳速度等。但是由於這些行為大部分都是秘密進行,因此中國眾多P2P使用者稱,此舉嚴重侵犯了他們的知情權和使用權。在中國,被限制最多的P2P軟體是BitTorrent系列軟體和eMule。
此外,中國出於對國內產業支持和信息控制的考量,也會限制一些P2P方式的即時通訊軟體。中國信息產業部曾發文要求VOIP只能在指定的網路運營商進行試驗,並有地區封殺skype,不過也有官員對此否認並說明只是針對PC-Phone[2]。
日本
在日本,根據日本現行著作權法,日本境內一切免費提供商業軟體/或其他數據下載的網站均屬非法。違法情節嚴重的可被判處有期徒刑,同時處以罰款。BitTorrent系列軟體和eMule均被禁止。但是,P2P技術在日本仍然流行。這多虧了Share和winny軟體的發明。這兩款軟體都採用了IP加密和數據加密的技術,目前日本有幾百萬人使用這兩款軟體來交流動畫,遊戲,音樂,軟體等數據,但顯然警方已經掌控了追查使用者的方法。2008年5月9日,三名在share上發布大量著作權保護作品的職人遭到逮捕。這兩款軟體的流行也帶來了一些負面問題,比如機密資料的泄漏和計算機病毒的傳播。