BT協(xié)議具體分析.doc

BT協(xié)議具體分析.doc

ID:50811448

大?。?49.50 KB

頁數(shù):14頁

時間:2020-03-14

BT協(xié)議具體分析.doc_第1頁
BT協(xié)議具體分析.doc_第2頁
BT協(xié)議具體分析.doc_第3頁
BT協(xié)議具體分析.doc_第4頁
BT協(xié)議具體分析.doc_第5頁
資源描述:

《BT協(xié)議具體分析.doc》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。

1、BT協(xié)議分析支持BT協(xié)議的P2P應用程序很多,如BitBuddy、FlashBT、BitComet和BitSpirit等,這里以應用程序BT為例來分析BT協(xié)議。本文中的BT,如其后沒有“協(xié)議”兩字,表示的是BT應用程序。???BT由如下幾部分組成:.torrent文件、種子提供站點、目錄服務器和內(nèi)容發(fā)布者/下載者。.torrent文件是一個文本文件,包含了tracker信息和文件信息兩部分。tracker信息主要是BT下載中需要用到的tracker服務器的地址和針對tracker服務器的設置;文件信息是指將目標文件計算處理后再根據(jù)BT協(xié)議的B編碼規(guī)則網(wǎng)編碼后得到的信息。BT的主要原理是

2、把提供下載的文件虛擬分成大小相等的塊,塊大小必須為2Kbyte的整數(shù)次方(由于是虛擬分塊,硬盤上并不產(chǎn)生各個塊文件),并把每個塊的索引信息和Hash驗證碼寫入.torrent文件中,所以.torrent文件就是被下載文件的“索引”。種子提供站點也就是.torrent文件的提供站點,為下載者提供.torrent文件下載服務。目錄服務器記錄被下載的文件的索引信息及下載該文件的用戶的信息(主要是IP地址及端口號)。早期的BT協(xié)議只支持tracker(種子發(fā)布站)服務器,這種目錄服務器是集中式目錄與分布式查詢的混合型;在BT協(xié)議的升級版本中,增加了對DHT(分布式Hash表)網(wǎng)絡的支持,該網(wǎng)絡

3、中目錄服務器是分布式的。本文的討論只涉及tracker服務器。內(nèi)容發(fā)布者/下載者是BT網(wǎng)絡的主體,最終的下載由它們完成。構(gòu)成BT網(wǎng)絡的這幾部分的相互關系如圖1所示。???圖1?BT覆蓋網(wǎng)絡的結(jié)構(gòu)根據(jù)BT的工作原理,為了分析BT協(xié)議的交互過程,本文重點關注本地BT客戶機的運行過程。圖2顯示了BT協(xié)議的測試環(huán)境,其中BT客戶機的IP地址是10.10.80.120,使用Wireshark俘獲BT協(xié)議分組的交互過程,Wireshark版本號為1.4.1。它們與因特網(wǎng)相連,BT服務器位于因特網(wǎng),BT版本號為1.24。BT協(xié)議的測試環(huán)境???BT協(xié)議主要包括3個部分:.torrent文件的格式(現(xiàn)

4、已加密,對非支持BT協(xié)議的軟件透明)、trackerHTTP/HTTPS協(xié)議和Bittorrent協(xié)議。其中trackerHTTP/HTTPS協(xié)議是BT客戶機與tracker服務器之間的通信協(xié)議,Bittorrent協(xié)議是BT客戶機之間的通信協(xié)議。下面介紹一下trackerHTTP/HTTPS協(xié)議。?BT客戶機依次向.torrent中的tracker服務器發(fā)送連接請求,以獲得正在下載該文件的對等方列表(主要是IP地址和監(jiān)聽端口)。如果連接成功獲得列表,就關閉連接,嘗試與列表中的對等方建立連接;如果不成功,嘗試下一個tracker服務器。由下圖知本次測試環(huán)境第一次向服務器tracker地

5、址為204.152.198.236發(fā)出請求,結(jié)果沒有找到,BT客戶機與BT服務器的交互過程下圖所示。????BT客戶機與BT服務器的交互過程?分析這些分組,易知分組197、198、199是建立TCP連接的三次握手。BT客戶機通過200號分組向tracker服務器發(fā)出獲取對等方列表的請求,202、203(重復)號是對分組為應答。204是對203號分組的應答,205-218號分組是雙方互相關閉TCP連接并復位的過程。下面重點分析200號分組。?200號分組中的HTTP部分內(nèi)容如圖所示,使用*號代替空格以便于分析。圖200號分組中的HTTP部分內(nèi)容(沒有找到)最后,10.10.80.120以

6、迭代的方式(用隨機網(wǎng)絡的路由算法)向地址為123.110.87.2的服務器發(fā)出請求,經(jīng)過2090、2501、2502建立了TCP連接,如:BT客戶機與BT服務器的交互過程,第一個握手分組2504(帶Options12字節(jié))如下所示:帶Options選項的不帶Options選項的其中一些成分的含義如下:●SHA1Hashofinfodictionary:.torrent文件中的文件夾得FQDN下的絕對路徑的Shal值。tracker服務器通過它在發(fā)布列表中找到對應的記錄?!駊eer_id:BT客戶機的惟一性標志,在客戶機啟動時產(chǎn)生,共20bit。在BTV1.0中沒有規(guī)定產(chǎn)生peer_id

7、的算法,只要求能夠保證惟一性即可。雖然該機器上有這一個文件,但由于種種原因,它獲得不了其資源,于是就有了分組4116,BitTorrentcontinuationdata的回應。然后,再有了分組4119,continuationdata的回應。然后10.10.80.120再次向175.180.186.26請求資源分組5956,發(fā)出handshark-TCP-Retransmission請求,繼續(xù)尋找資源。這個5647分組也是continuati

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。