時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)
下載,是我們網(wǎng)絡應用中非常普遍的一項用能。也是網(wǎng)絡分享資源的一種方式。那么在這里我們來對BitTorrent協(xié)議的下載技術進行一下介紹。相信說起這個BitTorrent大家肯定不會有所陌生的。
Bittorrent
Bittorrent已經(jīng)成為最為流行的P2P軟件,在2004年6月的Cachelogic的一份測試是報告中提到Bittorrent的數(shù)據(jù)流量已經(jīng)占到整個P2P數(shù)據(jù)流量 的52%?與其他傳統(tǒng)P2P軟件如Gnutella,Fasttrack不同,Bittorrent只是一個純粹的文件下載協(xié)議,并提供搜索功能,所以往往資源的獲取要跟其他一些應用結合起來,比如說發(fā)布Bittorrent種子信息的網(wǎng)站如5Q?或者是網(wǎng)絡搜索引擎如百度?google等?
Bittorrent工作原理
Bittorrent的工作原理其實很簡單,他就是將一份數(shù)據(jù)分隔成256K大小的數(shù)據(jù)分組,并在Bittorrent 網(wǎng)絡中一群用戶相互協(xié)作完成這些數(shù)據(jù)的分發(fā),用戶參與數(shù)據(jù)分發(fā)的信息已文件的形式存儲,一般可以通過web網(wǎng)站獲取這些信息?但是實際數(shù)據(jù)傳輸依靠的不是Http協(xié)議,而是由專門的P2P協(xié)議來完成,這些對于用戶都是透明的?
普通的HTTP/FTP下載使用TCP/IP協(xié)議,BitTorrent協(xié)議是架構于TCP/IP協(xié)議之上的一個P2P文件傳輸協(xié)議,處于TCP/IP結構的應用層? BitTorrent協(xié)議本身也包含了很多具體的內容協(xié)議和擴展協(xié)議,并在不斷擴充中?
根據(jù)BitTorrent協(xié)議,文件發(fā)布者會根據(jù)要發(fā)布的文件生成提供一個.torrent文件,即種子文件,也簡稱為"種子"? .torrent文件本質上是文本文件,包含Tracker信息和文件信息兩部分?Tracker信息主要是BT下載中需要用到的Tracker服務器的地址和針對Tracker服務器的設置,文件信息是根據(jù)對目標文件的計算生成的計算結果根據(jù)BitTorrent協(xié)議內的B編碼規(guī)則進行編碼?它的主要原理是需要把提供下載的文件虛擬分成大小相等的塊,塊大小必須為2k的整數(shù)次方(由于是虛擬分塊,硬盤上并不產(chǎn)生各個塊文件),并把每個塊的索引信息和Hash驗證碼寫入.torrent文件中;所以,.torrent文件就是被下載文件的"索引"?
下載者要下載文件內容,需要先得到相應的.torrent文件,然后使用BT客戶端軟件進行下載?
下載時,BT客戶端首先解析.torrent文件得到Tracker地址,然后連接Tracker服務器?Tracker服務器回應下載者的請求,提供下載者其他下載者(包括發(fā)布者)的IP?下載者再連接其他下載者,根據(jù).torrent文件,兩者分別對方告知自己已經(jīng)有的塊,然后交換對方?jīng)]有的數(shù)據(jù)?此時不需要其他服務器參與,分散了單個線路上的數(shù)據(jù)流量,因此減輕了服務器負擔?
下載者每得到一個塊,需要算出下載塊的Hash驗證碼與.torrent文件中的對比,如果一樣則說明塊正確,不一樣則需要重新下載這個塊?這種規(guī)定是為了解決下載內容準確性的問題?
一般的HTTP/FTP下載,發(fā)布文件僅在某個或某幾個服務器,下載的人太多,服務器的帶寬很易不勝負荷,變得很慢?而BitTorrent協(xié)議下載的特點是,下載的人越多,提供的帶寬也越多,種子也會越來越多,下載速度就越快?而有些人下載完成后關掉下載任務,提供較少量數(shù)據(jù)給其他用戶,為盡量避免這種行為,在非官方BitTorrent協(xié)議中存在超級種子的算法?這種算法允許文件發(fā)布者分幾步發(fā)布文件,發(fā)布者不需要一次提供文件所有內容,而是慢慢開放的下載內容的比例,延長下載時間?此時,速度快的人由于未下載完必須提供給他人數(shù)據(jù),速度慢的人有更多機會得到數(shù)據(jù)?
關鍵詞標簽:BitTorrent協(xié)議
相關閱讀
熱門文章 路由器地址大全-各品牌路由設置地址 各品牌的ADSL與路由器出廠默認IP、帳號、密碼 Nslookup命令詳解-域名DNS診斷 站長裝備:十大網(wǎng)站管理員服務器工具軟件
人氣排行 各品牌的ADSL與路由器出廠默認IP、帳號、密碼 路由器地址大全-各品牌路由設置地址 騰達路由器怎么設置?騰達路由器設置教程 ADSL雙線負載均衡設置詳細圖文教程 路由表說明(詳解route print) Nslookup命令詳解-域名DNS診斷 網(wǎng)管員實際工作的一天 網(wǎng)管必會!了解交換機控制端口流量