(一) 常用p2p協(xié)議 一、napster:世界上第一個(gè)大型的p2p應(yīng)用網(wǎng)絡(luò);中央集中式,倒閉了。 napster,這是當(dāng)時(shí)很火的一種共享服務(wù),主要用于查找mp3,它有一個(gè)服務(wù)器用于存儲(chǔ)mp3文件的鏈接位置并提供檢索,而真正的mp3文件則存放在 千千萬(wàn)萬(wàn)的個(gè)人電腦上,搜索到的文件通過(guò)p2p方式直接在個(gè)人電腦間傳播共享。這種方式的缺點(diǎn)就是需要一臺(tái)服務(wù)器,在mp3文件版權(quán)之爭(zhēng)火熱的年 代,napster很快就成為眾矢之的,被眾多唱片公司訴訟侵犯版權(quán)而被迫關(guān)閉。當(dāng)然服務(wù)器一關(guān)napster也就不復(fù)存在。 二、gnutella和gnutella2(gnutella2是對(duì)gnutella的改進(jìn)和擴(kuò)展):開(kāi)源的;第一個(gè)真正非中心的無(wú)結(jié)構(gòu)p2p網(wǎng)絡(luò),文件查詢采用洪泛方式。 gnutella吸取了napster的失敗教訓(xùn),將p2p的理念更推進(jìn)一步:它不存在中樞目錄服務(wù)器,所有資料都放在個(gè)人電腦上。用戶只要安裝了該軟 件,就將自己的電腦立即變成一臺(tái)能夠提供完整目錄和文件服務(wù)的服務(wù)器,并會(huì)自動(dòng)搜尋其它同類服務(wù)器,從而聯(lián)成一臺(tái)由無(wú)數(shù)pc組成的超級(jí)服務(wù)器網(wǎng)絡(luò)。傳統(tǒng)網(wǎng) 絡(luò)的server和client在它的面前被重新定義。 三、fasttrack: 第一個(gè)客戶端是kazaa。協(xié)議與gnutella類似。02-03年的最大用戶網(wǎng),05年退至第三名。衰退原因是這個(gè)網(wǎng)絡(luò)無(wú)法應(yīng)對(duì)眾多用戶同時(shí)使用,而且有版權(quán)擁有者pollution的行為,以及間諜軟件的問(wèn)題。 imesh也是以fasttrack為協(xié)議的。 四、edonkey,overnet,kad: 自私的人們?cè)诶胮2p軟件的時(shí)候大多只愿“獲取”,而不愿“共享”,p2p的發(fā)展遇到了意識(shí)的發(fā)展瓶頸。不過(guò),一頭“驢”很快改變了游戲規(guī)則,這就是電驢-edonkey,它引入了強(qiáng)制共享機(jī)制。 edeonkey將網(wǎng)絡(luò)節(jié)點(diǎn)分成服務(wù)器層和客戶層,并且將文件分塊以提高下載速度。edonkey網(wǎng)絡(luò)下最普及的p2p客戶端程序是 edonkey2000和emule。emule是edonkey的后繼,但是更出色,采用了dht來(lái)構(gòu)建底層網(wǎng)絡(luò)拓?fù)洌壳胺浅A餍械膒2p文件共享軟 件。 overnet設(shè)計(jì)的目的是取代edonkey,它沒(méi)有中心服務(wù)器,但用戶數(shù)少于edonkey。 kademlia 協(xié)議,在這里叫做kad網(wǎng)絡(luò),采用udp方式通信。很類似于overnet,幾乎只有edonkey用戶使用它。 五、bittorrent:借助分散式服務(wù)器提供共享文件索引的混合式p2p網(wǎng)絡(luò),文件分片下載。 下載速度高,沒(méi)有查找功能,種子具有時(shí)效性。它將中心目錄服務(wù)器的穩(wěn)定性同優(yōu)化的分布式文件管理結(jié)合起來(lái)。 六、direct connect: 一種常用在小的網(wǎng)絡(luò)和大學(xué)內(nèi)部網(wǎng)絡(luò)中的協(xié)議,適用于小網(wǎng)絡(luò)環(huán)境中,dc++是常見(jiàn)客戶端。 七、ares:類似gnutella網(wǎng)絡(luò)。 (二) 現(xiàn)有p2p技術(shù)主要涉及的領(lǐng)域和發(fā)展方向 (1)提供文件和其它內(nèi)容共享的p2p網(wǎng)絡(luò),例如napster、gnotella、freenet、can、edonkey、emule、bittorrent等。 (2)基于p2p方式的協(xié)同處理與服務(wù)共享平臺(tái),例如jxta、magi、groove、.netmy service等。 (3)即時(shí)通訊交流,包括icq、oicq、yahoo messenger等。 (4)安全的p2p通訊與信息共享,利用p2p無(wú)中心的特性可以為隱私保護(hù)和匿名通訊提供新的技術(shù)手段。例如cliquenet、crowds、onion routing等。 (5)語(yǔ)音與流媒體:由于p2p技術(shù)的使用,大量的用戶同時(shí)訪問(wèn)流媒體服務(wù)器,也不會(huì)造成服務(wù)器因負(fù)載過(guò)重而癱瘓。skype與coolstream是其中的典型代表。 (6)網(wǎng)格計(jì)算,挖掘p2p分布計(jì)算能力。使用p2p技術(shù)以集中那些聯(lián)接在網(wǎng)絡(luò)上的電腦的空閑的cpu時(shí)間片斷、內(nèi)存空間、硬盤空間來(lái)替代“超級(jí)計(jì)算機(jī) ”。例如seti@home、avaki、popular power、distributed.net等。網(wǎng)格計(jì)算的宗旨是:將遍布全球的數(shù)以萬(wàn)計(jì)的計(jì)算節(jié)點(diǎn)通過(guò)高速internet連接并組織成一個(gè)巨系統(tǒng),使 其能夠透明、高效地完成復(fù)雜計(jì)算任務(wù)。 (7)ibm、微軟、ariba也在合作開(kāi)展一個(gè)名為uddi的項(xiàng)目以將b2b電子商務(wù)標(biāo)準(zhǔn)化 (8)eazel正在建立下一代的linux桌面。 (9)jabber已經(jīng)開(kāi)發(fā)了一種基于xml、開(kāi)放的即時(shí)訊息標(biāo)準(zhǔn),jabber被認(rèn)為是建立了未來(lái)使用p2p數(shù)據(jù)交換的標(biāo)準(zhǔn)。 (10)lotus notes的開(kāi)發(fā)者創(chuàng)建的groove試圖“幫助人們以全新的方式溝通”。 (11)英特爾也在推廣它的p2p技術(shù)以幫助更有效地使用芯片的計(jì)算能力。 (三) p2p資源定位方式 p2p網(wǎng)絡(luò)中進(jìn)行資源定位是首先要解決問(wèn)題。一般采用三種方式: (1)集中方式索引 每一個(gè)節(jié)點(diǎn)將自身能夠提供共享的內(nèi)容注冊(cè)到一個(gè)或幾個(gè)集中式的目錄服務(wù)器中。查找資源時(shí)首先通過(guò)服務(wù)器定位,然后兩個(gè)節(jié)點(diǎn)之間再直接通訊。例如早期的napster。這類網(wǎng)絡(luò)實(shí)現(xiàn)簡(jiǎn)單,但往往需要大的目錄服務(wù)器的支持,并且系統(tǒng)的健壯性不好。 (2)廣播方式 沒(méi)有任何索引信息,內(nèi)容提交與內(nèi)容查找都通過(guò)相鄰接節(jié)點(diǎn)直接廣播傳遞。例如gnutella。一般情況下,采取這種方式的p2p網(wǎng)絡(luò)對(duì)參與節(jié)點(diǎn)的帶寬要求比較高。 (3)動(dòng)態(tài)哈希表的方式 上述兩種定位方式可以依據(jù)不同的p2p應(yīng)用環(huán)境進(jìn)行選擇,但是人們普遍看好dht(distributed hash table,分散式雜湊表)方式;赿ht的p2p網(wǎng)絡(luò)在一定程度上可以直接實(shí)現(xiàn)內(nèi)容的定位。一個(gè)矛盾的問(wèn)題是:如果一個(gè)節(jié)點(diǎn)提供共享的內(nèi)容表示越復(fù) 雜,則哈希函數(shù)越不好選擇;相應(yīng)的,網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)就越復(fù)雜。而如果內(nèi)容表示簡(jiǎn)單,則又達(dá)不到真正實(shí)現(xiàn)依據(jù)內(nèi)容定位的能力。目前大多數(shù)dht方式的p2p 網(wǎng)絡(luò)對(duì)節(jié)點(diǎn)所提供共享內(nèi)容的表示都很簡(jiǎn)單,一般僅僅為文件名。
|