自訂搜尋

Tuesday, December 29, 2009

慎選peer,是加速BT下載的王道!

雖然講的是如何提升BT(即BitTorrent)的下載速度,但我並不是要告訴大家如何調整作業系統與網路設定的參數;這方面的資料已經很多,而且下載速度不理想時,這些調整並無太大意義。我也不是要請各位換ISP,畢竟在合約未到期前,ISP也不是想換就能換的(有違約金的考量)。我將由影響BT速度的最重要因素切入,提供另一種提升速度的想法。

要提升BT速度之前,必須先檢視影響BT下載的因素爲何?説穿了,其實它們就是自檔案來源到下載者間的所有環節:
  • seeder個數:seeder(即一般所說的「種子」)意指擁有完整檔案的BT參與者,是主要的檔案提供者。seeder越多,可用的BT分享頻寬就越多,速度當然就快。
  • seeder與peer的比例:雖然peer(指尚未取得完整檔案的BT參與者)可同時自seeder與其他peer下載檔案,但peer間會彼此競爭,以爭取有限的BT下載頻寬。因此,peer個數越多,分配後的BT分享頻寬就越少,速度自然就受影響。
  • BT參與者的上傳速率:原本BT上傳就會因為寬頻網路下載頻寬大於上傳頻寬的特性(例如:Hinet ADSL 2M/256K、遠傳大寬頻光纖3M/768K、或bb寬頻3M/1M)而受限,但另一種情形,則是peer刻意縮減上傳頻寬,或是使用內含不公平分享機制的特殊BT軟體(如迅雷),導致BT分享頻寬進一步降低。
  • ISP的管制政策:據報導,BT流量已佔所有Internet流量的27%至55%(因地區而有所不同);這對ISP的網路架構與營運都造成極大負擔,因此ISP阻擋BT或限制其流量的消息(例如美國的Comcast,按此下載美國FCC對此事的調查結果報告)亦時有所聞。ISP隨時都可能改變對BT的管制;現在不管制BT的ISP,也不保證它未來不會管制。
    在此要特別説明,在網路傳輸路徑上的每一個ISP的管制措施都將影響BT的下載速度;除非你能確保只會與同一個ISP網路内的電腦進行BT連線(可能性極低),否則「更換ISP就能自BitTorrent高速下載」其實是不切實際的想法
  • 其他因素:網路上隨時可能發生斷線,線路也可能壅塞;這些都將影響BT下載的速度。
影響BT下載速度的最重要因素,是下載時所連到的其他BT群體(即seeder與peer),因爲它幾乎決定上面提到的所有因素(除了最後的「其他因素」)。由於跟哪個IP連線都是由tracker分配,並非由BT使用者自行選擇,在此情況下,我們只能嘗試與不同的BT群體連線,再自其中來選擇速度較佳的進行下載。

經過測試,我發現經由變更兩個功能設定(並不是每個BT程式都有),可藉此取得不同的BT群體:「傳輸協定加密」(protocol encryption)、與「本地使用者偵測」(local peer discovery)。

基本上「傳輸協定加密」是一種透過加密,迴避ISP管制BT的方式(並非絕對有效),「本地使用者偵測」則是偏好與鄰近網路的BT群體交換檔案,理論上可以提升傳輸速度。不過在此我們只是藉由切換這兩項設定,以取得不同的連線群體,因此並沒有所謂的最佳設定值;完全要視當時的情況而定。

下表是我在不同的「傳輸協定加密」,與「本地使用者偵測」設定下,以uTorrent下載ubuntu-9.10-desktop-i386.iso(Linux安裝光碟)後20秒時所記錄到的情形:
本地使用者偵測
傳輸協定加密
seeder數
peer數
下載速度(KB/s)
停用
停用
18
2
40.8
停用
啓用
26
1
46.4
停用
強制
22
3
54.9
啓用
停用
19
2
41.5
啓用
啓用
16
0
26.7
啓用
強制
21
3
21.3
由於各種設定交互影響的結果(即BT下載速度)無法預測,完全要視當時的連線群體而定,因此並沒有所謂的最佳設定。我只是藉由變更設定,以找到當時速度最快的BT群體(如上表中,停用「本地使用者偵測」,與強制「傳輸協定加密」的情況)。

因此,我建議以下列步驟來獲取較佳的BT下載速度(目標:找到當時速度最快的BT群體):
  1. 開啓torrent檔案,開始下載。
  2. 下載後一分鐘時,檢視當時的下載速度;若可以接受其速度,就等它下載完成,否則進行下一步驟。
  3. 依次修改「傳輸協定加密」與「本地使用者偵測」,再開啓torrent檔案開始下載,回到步驟2。
當下載大檔案時,花個十幾個小時也不是沒有可能;而一開始速度就不快的BT下載,後面會加速的可能性其實不高。因此在下載之初,先花個十分鐘試試「傳輸協定加密」與「本地使用者偵測」的各種組合(其實就只有6種),以找到當時速度最快的BT群體來連線,說不定可以節省之後幾個小時的下載時間,應該是不錯的時間投資。

至於如何修改「傳輸協定加密」與「本地使用者偵測」,在此以uTorrent(國内使用者最常用的BT軟體之一)為例來説明。如果需要其他BT軟體的設定方式,請留言;我會視情況再新增説明。

自uTorrent的操作畫面,點選選項->選項->BitTorrent,就可看到設定畫面(如下圖);「傳輸協定加密」與「本地使用者偵測」就在紅圈所在的位置。藉由逐次變動其設定,將有助於找到最佳的BT群體,以提升下載速度。

Share/Bookmark

2 comments:

Anonymous said...

謝謝大大,按照你所建議的將uTorrent調整後,速度的確顯著提昇.thanks!

Anonymous said...

謝謝大大,按照你所建議的將uTorrent調整後,速度的確顯著提昇.thanks!