BitTorrent原理分析及改進
- 期刊名字:計算機工程
- 文件大?。?57kb
- 論文作者:孔彬,徐良賢
- 作者單位:上海交通大學(xué)軟件學(xué)院,上海交通大學(xué)計算機系
- 更新時間:2020-09-25
- 下載次數(shù):次
第30卷增刊計算機工程2004年12月VoL30 Supplementary IssueComputer EngineeringDecember 2004●網(wǎng)絡(luò)與通信●文章編號: 1000 -3428(200)增刊- 0257- 03文獻標識碼: A中團分類號: TP393BitTorrent原理分析及改進孔彬',徐良賢'(1.上海交通大學(xué)軟件學(xué)院,上海200240; 2. 上海交通大學(xué)計算機系,上海200240)摘要: 通過對P2P技術(shù)現(xiàn)狀的介紹,與傳統(tǒng)的C/S模型比較,分析了P2P軟件BitTorrent的工作原理,指出了BirToren相對于CIS模式和純P2P軟件的優(yōu)勢和不足之出,給出了改進方案和商業(yè)化應(yīng)用的前途。關(guān)健詞: P2P; BitTorrent; C/SAnalysis and Improvement of BitTorrentKONG Bin', XU Liangxian'(1.School of Software of Shanghai Jiaotong University, Shanghai 200240;2.Computer Science Dept. of Shanghai Jiaotong University, Shanghai 200240)[Abstract ] The paper introduces the present status ofP2P technology, compares with traditinal Client/Server model, analyzes the key technology ofBitTorrent, points out the diference between Bitorrent, CIS model and the other P2P software and the lack of BitTorrent. Then in gives theimprovement of the software and the commercial application.[Key words] P2P; BitTorrent; C/S1 P2P簡介2 P2P模式與CIS模式的比較對等互聯(lián)網(wǎng)絡(luò)技術(shù)(點對點網(wǎng)絡(luò)技術(shù))(Peer-to peer, P2P),目前流行的信息流模式是C/S模式,具有如下特點:是一種網(wǎng)絡(luò)模型,在這種網(wǎng)絡(luò)中所有的節(jié)點是對等的(稱為(1)信息和數(shù)據(jù)都保存在服務(wù)器端。只有服務(wù)器端具有對等點) ,各節(jié)點具有相同的責(zé)任與能力并協(xié)同完成任務(wù)??刂颇芰?,客戶端基本上只是一一個高性能的終端設(shè)備。對等點之間通過直接互聯(lián)共享信息資源、處理器資源、存儲(2)服務(wù)器及網(wǎng)絡(luò)的帶寬決定了網(wǎng)絡(luò)的性能。每臺服務(wù)資源甚至高速緩存資源等,無須依賴集中式服務(wù)器或資源就器所能提供的信息數(shù)量受到自身存儲空間的限制,而任意時可完成。它讓用戶可以直接連接到其他用戶的計算機,進行刻它所能支持的客戶端訪問數(shù)量則既受到自身處理能力的限文件共享與交換,另外P2P在深度搜索、分布計算、協(xié)同工制,也受到服務(wù)器所在網(wǎng)絡(luò)吞吐能力的限制。作等方面也大有用途。其實P2P并不是互聯(lián)網(wǎng)出現(xiàn)后才被引(3)URL用來表示信息資源的地址,但是URL 很少能直申出來的一-項全新網(wǎng)絡(luò)技術(shù),早在幾年前互聯(lián)網(wǎng)出現(xiàn)的時候接體現(xiàn)所定位的信息的內(nèi)容,甚至不能直接鏈接到具體的內(nèi)P2P就已經(jīng)應(yīng)運而生,但是由于當時互聯(lián)網(wǎng)的發(fā)展并不是像容上。今天這樣普及,而且在網(wǎng)絡(luò)建設(shè)(如帶寬、處理能力)和相關(guān)(4)被發(fā)布信息的分布與生存期十分穩(wěn)定。服務(wù)器只發(fā)的硬件器材上并不能夠滿足P2P的需求,因此在幾年的互聯(lián)布機器所有者公之于眾的信息,這些信息將會在該服務(wù)器上網(wǎng)發(fā)展過程中也衍生出來了許多中間產(chǎn)物。穩(wěn)定地保存-一段時間, 并且該服務(wù)器通常也不間斷地運行在限于PC機的性能,并基于易管理性和安全性考慮,后網(wǎng)絡(luò)上。來發(fā)展的那些架構(gòu)在TCPIP之上的軟件大多采用了CIS(客(5)被發(fā)布信息的存儲與管理比較集中、規(guī)范?;ヂ?lián)網(wǎng)戶端/服務(wù)器)模式的結(jié)構(gòu),比如瀏覽器和Web服務(wù)器,郵件上所有可以公開訪問的信息基本上都保存在服務(wù)器上,服務(wù)客戶端和郵件服務(wù)器等。隨著Web服務(wù)需求的增長,人們感器根據(jù)適當?shù)乃惴ê鸵?guī)則管理本地信息,應(yīng)答客戶端的訪問到有必要直接控制、改變和共享資源。20世紀90年代后期,請求或進行管理。PC機的性能在速度和處理能力上突飛猛進,人們開始意識P2P模式是非中心結(jié)構(gòu),它與C/S模式有明顯的差別: .到可以將服務(wù)器軟件放在單獨的PC.上,而且可以在PC機之(1)每一個對等點具有相同的地位,既可以請求服務(wù)也間初始化全雙工的信息流,這就導(dǎo)致了P2P技術(shù)的復(fù)興??梢蕴峁┓?wù),同時扮演著P2P模式中的服務(wù)器和客戶端兩如果回顧一下,就會發(fā)現(xiàn)在WWW(World Wide Web)剛個角色,還可以具有路由器和高速緩沖存儲器的功能,從而剛出現(xiàn)時,P2P就是互聯(lián)網(wǎng)的本質(zhì)特征之一一. 人們各自建立弱化了服務(wù)器的功能,甚至取消了服務(wù)器。網(wǎng)頁、互相做鏈接,而上網(wǎng)是沿著鏈接沖浪。那時的Web(2) P2P技術(shù)可以使得非互聯(lián)網(wǎng)絡(luò)用戶很容易地加入到是真正的“網(wǎng)”。但是當Yahoo和Lycos建立了搜索引擎和系統(tǒng)中。在P2P的計算環(huán)境中任何設(shè)備,從大型機到移動電門戶站點后,人們上網(wǎng)的方式被改變了,從此到一個地方去話,其至縣傳呼機.均可以在懷何地點方便地加入進來。獲取所有信息。這些站點控制了信息的流動、充斥了過時的P2P中國煤化工互聯(lián)網(wǎng)絡(luò),同時該技術(shù)信息、阻礙了真正的交流,或者對于很多人來說,另外還有還可:fYHCNMHG太多的廣告。而P2P就是把控制權(quán)重新還到用戶手中去。他作者簡介:孔彬(1980--),男,碩士生,研究方向:軟件工們通過P2P可以共享硬盤上的文件、目錄甚至整個硬盤。這程;徐良賢,教授將使互聯(lián)網(wǎng)上信息的價值得到極大提升。收稿日期: 2004-08-15 E-mail: kongfirstsjtu.cdu.cn- _257-(3)在P2P模式的網(wǎng)絡(luò)中,每一個對等體可以充分利用網(wǎng)絡(luò)上其他對等體的信息資源、處理器周期、高速緩存和磁3-旦盤空間。(4) P2P是基于內(nèi)容的尋址方式,這里的內(nèi)容不僅包括信息的內(nèi)容,還包括空閑機時、存儲空間等。P2P 網(wǎng)絡(luò)中,用戶直接輸入要索取的信息的內(nèi)容,而不是信息的地址,P2P軟件將會把用戶的請求翻譯成包含此信息的節(jié)點的實際地址,而這個地址對用戶來說是透明的。(5) P2P中的每一個對等體通常沒有固定的IP地址,并且可常常從網(wǎng)絡(luò)上斷開。(6)信息的存儲及發(fā)布具有隨意性,缺乏集中管理。通過.上:面的比較,可以看出P2P模式相對于CIS模式的一些主要優(yōu)點。(1) P2P模式最主要的優(yōu)點就是資源的高度利用率。在P2P 網(wǎng)絡(luò)上,閑散資源有機會得到利用,所有節(jié)點的資源總和構(gòu)成了整個網(wǎng)圈2 BitTorrent 的傳輸模式絡(luò)的資源,整個網(wǎng)絡(luò)可以被用作具有海量存儲能力和巨大計算處理BT將文件分成每塊0.25MB~IMB的塊,將文件大小,能力的超級計算機。CIS模式下,縱然客戶端有大量的閑置資源,文件分割情況,Tracker(Tracker是 主要負責(zé)幫助下載者互相也無法被利用。(2) 隨著節(jié)點的增加,cIs 模式下,服務(wù)器的負載就越來越重,尋找對方的服務(wù)器,只占用極少的帶寬和機器資源)的URL地形成了系統(tǒng)的瓶頸,-旦服務(wù)器崩演,整個服務(wù)也隨之癱瘓。而在.址等所要下載文件的基本文件信息,生成擴展名為torent的P2P網(wǎng)絡(luò)中,每個對等體都是一-個活動的參與者,每個對等點都向種子文件。網(wǎng)絡(luò)貢獻- - 些資源,如存儲空間、CPU 周期等。所以,對等點越文件發(fā)布者首先用Btmakemetafile生成種子文件(Seed),多,網(wǎng)絡(luò)的性能越好,網(wǎng)絡(luò)隨著規(guī)模的增大而越發(fā)穩(wěn)固。生成時填入Tracker的地址。生成的Seed-- 般只有幾十k字節(jié)(3)基于內(nèi)容的導(dǎo)址方式處于一個更高的語義層次,因為用戶到幾百k字節(jié),將種子放到Web服務(wù)器上,之后運行BT,將在搜索時只需指定具有實際意義的信息標識而不是物理地址,每個路徑指向要發(fā)布的文件所在目錄就可以了。需要下載的用標識對應(yīng)著包含這類信息的節(jié)點的集合。這將創(chuàng)造一個更加精煉的戶安裝了BT軟件后從Web上點擊Seed, BT就會自動運行,信息倉庫和- -個更加統(tǒng)- - 的資源標識方法。(4)信息在網(wǎng)絡(luò)節(jié)點間直接流動,高速及時,降低中轉(zhuǎn)服務(wù)成本。只要選擇保存的目錄就行了。如果停止下載,下次只要再指(5)C/S模式下的互聯(lián)網(wǎng)是完全依賴于中心點一服務(wù)器的, 沒向同一文件就可以續(xù)傳。有服務(wù)器,網(wǎng)絡(luò)就沒有任何意義。而P2P 網(wǎng)絡(luò)中,即使只有一個對當文件通過HTTP協(xié)議進行傳輸所有的文件傳輸都通過等點存在,網(wǎng)絡(luò)也是活動的,節(jié)點所有者可以隨意地將自己的信息主機。而使用BT,當有很多人同時下載同一文件時部分Peer發(fā)布到網(wǎng)絡(luò)上”。從發(fā)布者處下載文件的某- - 部分,之后通過Tracker找到其他3 BitTorrent工作原理當我們有許多文件要向眾多客戶發(fā)布時,發(fā)現(xiàn)網(wǎng)絡(luò)帶寬的Peer,互相交換文件的其他- - 部分。通過對下載者上載能力的使用(一般情況下,這一-資源是沒有被利用的),將主機流量總是有限的,在提高帶寬的同時,費用也大幅上升,這幾乎是一-的負擔(dān)轉(zhuǎn)移到了下載者身上。因此同時下載的人數(shù)是不受限個惡性循環(huán)。BitTorrent是- -個能解決這-問題 的軟件,其中制的。很早就有人提出這一想法,進行研究,但由于算法上的的關(guān)鍵就是充分利用下載者的上傳能力,而這是免費的。復(fù)雜性,這一軟件不久前才誕生”。Bitorrent是現(xiàn)今互聯(lián)網(wǎng)上最流行的P2P軟件,但又與當一個下載者下載完畢后,如果不立即關(guān)閉BT(這正是之前的P2P軟件有很大不同,突破性的工作原理使其在占用BT所鼓勵的),他將成為另一個Seed為其他下載者服務(wù)。文件發(fā)布者極少的帶寬資源的情況下,快速發(fā)布文件。事實4 BT軟件與C/S模式,純P2P模式比較上所有遵守BitTorrent協(xié)議編寫的軟件是通用的,以下簡稱同C/S模式及之前的P2P模式相比較,BT幾乎集中了二BT"傳統(tǒng)的模式:更多的用戶需要更多的帶寬,見圖1。BT者的優(yōu)點:(1) BT是通過Web發(fā)布的是極小的Seed,接收數(shù)據(jù)也極的解決方法:使用戶互相傳遞信息,見圖2。其簡單。集成了二者的優(yōu)點。(2)BT的發(fā)布者是眾多的網(wǎng)絡(luò)用戶,使信息隨時更新,數(shù)據(jù)覆蓋的面廣,內(nèi)容豐富。(3) BT占用的發(fā)布者的網(wǎng)絡(luò)資源少,即使是普通的寬帶用琶目戶也能使眾多下載者都以高速下載,不需要C/S模式的高額投入,又能使傳輸速度遠大于C/S模式。最、(4)試去的P7P的孰據(jù)的管理較為困難,而BT需要將Seed發(fā)中國煤化工理,即使有人發(fā)布不良內(nèi)容(YHCNMHG貴及時處理。(5)數(shù)據(jù)時傳犏速度叮以況是哭破性的提高,眾多的下載者只會帶來更快的速度(理論上是Per越多速度越快)不會受服務(wù)器帶寬限制。圈1傳統(tǒng)的文件傳輸模式-258-BT也有自身的缺點:5 BT改進方案(1)對硬盤的損害。BT下載前首先會在硬盤寫入與下載針對BT的缺點,可以進行如下的改進:文件容量相同的一個鏡像文件,然后通過填充的方法寫入數(shù)(1)增設(shè)硬盤寫緩存功能,有效減少下載時寫入造成的據(jù),當填充過程結(jié)束時,下載的過程也就完成了。每次下載硬盤頻繁交叉尋址,大幅提高硬盤使用壽命。時,軟件還需要對所有區(qū)塊進行校驗計算,這是相當占用資(2)改善BT的連接能力。BT實際是隨機連接Peer列表中源和磨損硬盤的,如果下載上傳過程中再同時進行讀寫操的部分用戶,改善BT的連接能力,快速連接服務(wù)器,增強.作,那硬盤可能會出現(xiàn)壞道。.重連能力,當一些Peer斷開連接時依然能夠快速下載。(2)嚴重占用帶寬。由于BT的工作原理是“多點下(3)設(shè)置下載文件優(yōu)先級。BT的使用者往往同時下載多載”,也就是說參與進來的用戶數(shù)量越多,單個用戶下載的個文件,而下載者的帶寬是有限的,因此可以設(shè)置下載文件速度也越快,但實際情況下,過多的連接也會占用大量系統(tǒng)優(yōu)先級,使用戶能夠選擇需要的文件下載。資源,不少用戶為了避免系統(tǒng)資源被過多占用以及基于安全.(4)顯示種子和下載者的詳細信息,進行數(shù)據(jù)流控制。方面的考慮,- .般都對上傳速度進行了相應(yīng)的限制,有時甚BT的使用者往往會擔(dān)心BT占用過多系統(tǒng)資源和安全性問至在自己下載結(jié)束后就立即關(guān)閉BT,這樣-來可用的“種題,顯示種子和下載者的詳細信息,讓用戶可以控制數(shù)據(jù)的子”數(shù)將越來越少,從而影響了其他用戶的下載速度,有時流向,切斷不必要的連接。甚至由于“種子”數(shù)為零而導(dǎo)致無法下載,這也是部分用戶6總結(jié)BT下載速度不快的原因所在。BT的眾多優(yōu)勢使其- -出現(xiàn)就受到網(wǎng)絡(luò)用戶的極大歡迎,(3)網(wǎng)絡(luò)安全。從根本上來說,BT軟件還是屬于后臺操現(xiàn)在的BT種子發(fā)布的網(wǎng)頁已經(jīng)隨處可見,許多可供下載的作,無論是下載或上傳文件,都存在非法入侵、隱私泄露等方數(shù)據(jù)亦分門別類,由專門的網(wǎng)站發(fā)布。而網(wǎng)站也加大了管面的隱患,而且由于開放端口還可能導(dǎo)致黑客程序或木馬的侵理力度,使數(shù)據(jù)更安全可靠。BT還未標準化,缺少實力廠襲,因此系統(tǒng)中安裝殺毒軟件和防火墻軟件是必不可少的。商支持,這決定了其發(fā)展是有很多隨機性和業(yè)余性,但其中(4)數(shù)據(jù)的互動性差,只能下載已經(jīng)發(fā)布Seed的文件,如有也孕育著商機。例如:儒要,只能在Web上發(fā)布需求信息以求有人能為其發(fā)布文件。(1)網(wǎng)絡(luò)低成本信息發(fā)布:適用于大體積的文件網(wǎng)上發(fā)由以上的分析可以得到表I。布,比如游戲demo、video片斷。特點就是服務(wù)器帶寬資源表1 P2P、 CIS、BT模式分析比較占用低,可用性高,不涉及版權(quán)控制等復(fù)雜問題。| P2P模式 CS模式| BT模式(2)網(wǎng)上廣播數(shù)據(jù)量大,如果對實時性能要求不高可以數(shù)據(jù)發(fā)布差好考慮用BT建立鏡像服務(wù)器方案代替降低服務(wù)器帶寬成本。數(shù)據(jù)接收中.]好(3)技術(shù)上,或許可以成為Web標準的擴展,使FTP和[ 數(shù)據(jù)安全性HTTP建立在BT協(xié)議層之上,使網(wǎng)絡(luò)資源充分分布共享,提高數(shù)據(jù)更新|差網(wǎng)絡(luò)服務(wù)質(zhì)量。數(shù)據(jù)質(zhì)量(價值)總之,BT對互聯(lián)網(wǎng)的影響將越來越大,相信BT技術(shù)的數(shù)據(jù)覆超事和數(shù)量(價值)I好研究將逐漸成為計算機領(lǐng)域的一個重要的熱點課題。數(shù)據(jù)成本控制文獻數(shù)據(jù)管理方便性1 Cohen B. BitTorrent Introduction. ht:tporret. com/introduction.I容錯性.」差html可擴展性2陳姝, 方濱興,周勇林. P2P技術(shù)的研究與應(yīng)用[].計算機工程與數(shù)據(jù)互動性應(yīng)用,202.(13):20-23數(shù)據(jù)即時性(傳輸速度)3 Cohen B. Incentives Build Rustness in BitTorent. ht:tpornt.tcop/bitorrentecon. pdf, 2003-05(上接第256頁)警作出反應(yīng)。與過濾,用戶最關(guān)心的往往是最簡潔的、不重復(fù)告警信息,5結(jié)論并且希望以最直觀的形式得到通知,例如告警燈的閃爍、警總而言之,基于Swing的Applet客戶端彌補了純HTML報聲的響起。客戶端與用戶互動性差的缺點,是開發(fā)網(wǎng)管系統(tǒng)實時性管理采用Java的事件模型,可以在服務(wù)器端運行觀察模塊工具的有效手段。相信隨著網(wǎng)絡(luò)速度的提高、Java 技術(shù)進(alert obsever),接收告警,并以事件的形式通過遠程方法步,基于Swing的Applet客戶端在網(wǎng)管系統(tǒng)中必將得到更為調(diào)用(RM)通知客戶端的Listener,利用Swing的圖形界面產(chǎn)廣泛的應(yīng)用。生聲光效果。告警盤上設(shè)置代表不同級別的告警燈,當有新來的告參考文獻警,此級別的告警燈閃爍,警報聲晌起,直到用戶按確認按I楊家" 中國煤化]與實現(xiàn)技術(shù)北京:清華鈕,代表用戶已經(jīng)得到了告警通知。如果引起告警的故障沒大學(xué)有解決,則此告警燈會一直亮著,提示用戶網(wǎng)絡(luò)中仍然有故2 AvedYHCNMHG南.北京:電子工業(yè)出版土, 2u障需要排除。如果所有此級別的告警都已經(jīng)解決,則燈滅。3 Weber JL. Java 2編程詳解.北京:電子工業(yè)出版社.1999告警盤還應(yīng)具有用戶定制的功能,即只對用戶關(guān)心的某些告- -259-
-
C4烯烴制丙烯催化劑 2020-09-25
-
煤基聚乙醇酸技術(shù)進展 2020-09-25
-
生物質(zhì)能的應(yīng)用工程 2020-09-25
-
我國甲醇工業(yè)現(xiàn)狀 2020-09-25
-
石油化工設(shè)備腐蝕與防護參考書十本免費下載,絕版珍藏 2020-09-25
-
四噴嘴水煤漿氣化爐工業(yè)應(yīng)用情況簡介 2020-09-25
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-09-25
-
甲醇制芳烴研究進展 2020-09-25
-
精甲醇及MTO級甲醇精餾工藝技術(shù)進展 2020-09-25



