近日由于工作環境的關系,需要在終端模式下使用BT下載.在網上找了一些資料,選擇了CTorrent進行使用.下面對于軟件的使用進行說明總結.
一、軟件的下載與安裝
CTorrent是用C++開發的,不需要圖形環境進行動行.我們可以通過http://cthttp://ctorrent.sourceforge.net/?action=downloads進行下載.
完成后解壓,依次執行./configure,make install,make完成安裝.程序默認安裝在/usr/bin下,執行ctorrent即可運行。
然而,在實際使用中發覺并它不能順利完成下載或者下載速度非常慢,到網上再一查,發覺有了一個Ctorrent的加強版,
Ctorrent Enhanced ,官方網站為:http://www.rahul.net/dholmes/ctorrent/,加強版對于原來的版本進行了優化,同時修正了一些BUG,下載后的安裝與CTorrent的步驟一樣,安裝完成后同樣執行ctorrent命令,加強版會自動對原來的版本進行升級.下載地址為:http://www.rahul.net/dholmes/ctorrent/#download
二、軟件的使用
ctorrent XXX.torrent
執行對XXX.torrent文件的下載。文件的參數包括:
h/-H:顯示幫助命令
-x:只解碼并顯示種子文件信息,不下載。
-c:只檢查已下載的數據,不下載。
-v:打開debug調試輸出。
下載選項:
-e int 下載完畢后的做種時間(單位:小時),默認為72小時。
-p port 綁定端口,默認為2706。
-s save_as 重命名下載的文件,若是下載的是多個文件,則sava_as是包含多文件的目錄。
-C cache_size 緩存大小,默認為16MB。
-f 強制做種模式,不進行SHA1 HASH檢查。
-b bf_filename piece位圖文件名,詳見BitField::SetReferFile()。
-M max_peers 客戶端最多與多少個peer通信。
-m min_peers 客戶端至少與多少個peer通信。
-n file_number 多文件下,選擇哪個文件去下載(例如第二個文件file_number就為2)。
-D rate 限制最大下載速率(單位:KB/s)。
-U rate 限制最大上傳速率(單位:KB/s)。
-P peer_id 客戶端通信的ID,默認為-CD0102-。
注:程序默認使用了2706端口,請確保服務器開放了此端口!!
CTorrent運行時輸出格式如下:
當下載過程中,會顯示如下信息:
$ / 1/10/40 [3/148/148] 2MB,1MB | 48,20K/s | 80,40K E:0,1
各項意義為:
/:表明客戶端正在工作的符號,以”- \ | /”循環。
1:種子數目。
10:客戶端正在通信的非種子的peer數目。
40:tracker服務器知道的peer數,也是整個bt通信群的peer數。
3:客戶端已經下載的piece數目。
148:數據文件全部的piece數目。
148:客戶端可以得到的piece數目,若此數小于全部piece數目則不會下載到完整的數據。
2MB:客戶端已經下載的數據量。
1MB:客戶端正在上傳的數據量。
48:客戶端的平均下載速率(KB/s)。
20:客戶端的平均上傳速率(KB/s)。
80:客戶端的即時下載速率(KB/s)。
40:客戶端的即時上傳速率(KB/s)。
0:客戶端與tracker服務器通信失敗的次數。
1:客戶端與tracker服務器通信成功的次數。
三、使用感受
Ctorrent下載中暫用的資源非常低,CPU暫有率基本保持在0.3%左右,下載速度也很穩定。同時還有專門的源代碼可供研究。網上有一個兄弟對其進行了代碼分析http://yaoxuchen.googlepages.com/ctorrent,大家有興趣不妨看一看。在了解了BT協議的情況下,再配合源代碼的分析,對于BT的原理和應用一定會達到如火純清的地步。
posted @
2008-05-08 14:19 PowPro 閱讀(1970) |
評論 (0) |
編輯 收藏