史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 應用軟體使用技術文件
忘記密碼?
論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2003-07-10, 12:13 AM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 BitTorrent的防火牆配置

 1、公共網用戶
  請注意,如果開啟Internet防火牆(不是病毒防火牆)而沒有正確配置,那麼你和局域局內網用戶處於同等地位,下載速度都會受到一定程度的影響。
  而如果你有公網IP,正確的對外開啟監聽連接阜,這將大大提升你的下載效率。因為你可以與其它防火牆後的用戶連接。(兩個不同防火牆後的用戶無法直接連接)
  BT預設使用的連接阜是6881,6882,6883.....6889 的TCP連接 (每一個下載只使用一個連接阜,順次分配)

  2、局域.局內網用戶
  局局內網下載速度稍慢的原因:
  如果你的機器在局局內網內,外網的機器只能看到你的網關的位址,請求只能由你發起。那麼如果另一個BT的用戶也在局局內網內,沒有開連接阜映射,他就沒有辦法給你傳東西。這樣,你就損失了一些下載源,速度可能就會比較慢。
  局域 局內網用戶在網關上要把連接阜映射到你的電腦上,這樣才能對外開連接阜。開啟上述連接阜的監聽方法請看這裡:如何配置防火牆/路由器更好的使用BT/DC++

  3、通過socks代理上網的用戶
  暫時未聽說可以使用,儘管理論上可行。我也沒有驗證。
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
舊 2003-07-10, 12:36 AM   #2 (permalink)
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

BT名词解释+出错代码解释+BT设置
BT:BT是一種共享軟體(不是「變態」),全名叫"BitTorrent"。
一般來講,下載是把文件由伺服器端傳送到客戶端,例如FTP,HTTP,PUB等等。

但是這樣就出現了一個問題,隨著用戶的增多,對帶寬的要求也隨之增多,用戶過多就會造成瓶頸,而且搞不好還會把伺服器掛掉,所以很多的伺服器會都有用戶人數的限制,下載速度的限制,這樣就給用戶造成了諸多的不便。
但BT就不同,用BT下載反而是用戶越多,下載越快,這是為什麼呢?因為BT用的是一種傳銷的方式來達到共享的

BT首先在上傳者端把一個文件分成了Z個部分,甲在伺服器隨機下載了第N各部分,乙在伺服器隨機下載了第M個部分,這樣甲的BT就會根據情況到乙的電腦上去拿乙已經下載好的M部分,乙的BT就會根據情況去到甲的電腦上去拿甲已經下載好的N部分,這樣就不但減輕了伺服器端得負荷,也加快了用戶方(甲乙)的下載速度,效率也提高了,更同樣減少了地域之間的限制。比如說丙要連到伺服器去下載的話可能才幾K,但是要是到甲和乙的電腦上去拿就快得多了。所以說用的人越多,下載的人越多,大家也就越快,BT的優越性就在這裡。而且,在你下載的同時,你也在上傳(別人從你的電腦上拿那個文件的某個部分),所以說在享受別人提供的下載的同時,你也在貢獻。

★開放防火牆BT連接阜一步一步學★

僅為超級菜鳥服務:

ICF是"Internet Connection Firewall"的簡稱,也就是英特網連接防火牆。ICF建立在你的電腦與英特網之間,它可以讓你請求的資料通過、而阻礙你沒有請求的資料包,是一個關於包的防火牆。在使用BT有時會因為ICF的阻攔,引起連接不到SEED或者資料包延滯降低下載速度。所以我們有必要在ICF中設定對BT使用的連接阜不進行阻攔。

1。在你的桌面上右鍵點擊「網路芳鄰」,彈出的表單中選項「屬性內容」。

2。彈出「網路連接」視窗。在裡面找到你上網用的連接,右鍵點擊它,在彈出的表單中選項「屬性內容」。

3。彈出「本機連接屬性內容」視窗。選項其中的「進階」選擇項。

4。看看滑鼠所指的項目有沒有選(如果沒有選就不用往下看了),選了就點擊視窗下方的「設定」按鈕。

5。彈出「進階設定」視窗。圖中被選的是一些一般的網路服務,現在我們要增加新的BT服務,點擊「增加」按鈕。

6。彈出「服務設定」視窗。依次填寫「服務描述」(隨便你羅),「本機IP位址」(也可以寫你的機器名),「連接阜號」(BT連接阜是6881~6890,每個BT線程佔用一個連接阜,據說只能開9個),然後確定即可。(別忘了選TCP傳輸協定)

7。這樣「服務」欄中就增加了一個「BT1」服務,這個服務開放的是6881連接阜,同樣你可以再新增開放6882~6890連接阜的服務,都搞定以後就點「確定」按鈕。

8。現在我們的BT就可以在ICF中通行無阻了。

9。很多電腦中都沒有開啟ICF,但裝有其他的專業防火牆。以最常用的天網防火牆個人版為例,同樣可以設定開放BT連接阜,點擊天網的「自訂IP規則」按鈕。

10。點擊「增加規則」按鈕。

11。彈出「IP規則修改」視窗。如圖依次填寫「名稱」(隨便寫),「資料包方向」選「接收或傳送」,對方IP位址選「任何位址」,選TPC傳輸協定,「本機連接阜」填「從6881到6890」,「TCP標誌位」選「SYN」項目,最後選項當滿足上面條件時「通行」,其他的填不填無所謂,然後點確定。

12。現在「自訂IP規則」欄中就增加了一個「BT」規則,打上前面的鉤鉤。

13。點「儲存」按鈕,搞定收工。呼~

使用BT程序中出現10060/10061錯誤後不必退出,這只是tracker伺服器太忙,BT會自動重試(無論這種情況是出現在開始還是下載程序中)

另外注意錯誤的時間,如果距現在已經超過2分鐘,恰恰說明現在是正常的。(BT不會自動清除過期的錯誤)

BT Experimental的Advanced介紹
BitTorrent EXPERIMENTAL是BT的一個非官方版本,主要是增加了 限制上傳速度、最大上傳人數及其他一些功能,在最新版的BT Experimental v3.2.1b-2中,又增加了一個新的功能 [Advanced],通過這個功能,你能夠察看:和你相聯接的有哪些人,你和它們之間的資料傳輸速度怎麼樣(包括上傳和下載)等等。
BT Experimental的界面與BT很像,使用方法也一模一樣,只是多了一些設定:


左下角的 Settings for 預設的多種上網方式,選項與你的上網方式相同的選項,BT Experimental就會自動為你設定比較理想的 最大上傳速度和人數,當然你也可以自己設定,不過記住:your download rate is proportional to your upload rate(你的下載速度與你的上傳速度相關)

右下角的Upload rate和Max uploads就是你的 最大上傳速度和人數。

接下來,就是主要介紹的Advanced功能了。
在左下角的 Settings for 下面,有個藍色的 Advanced 單詞,點擊它,就會彈出Advanced視窗,如下:


解釋一下每列的意義:
optimistic unchoke:意義不明
IP:對方的IP
local/remote:也不太清楚
Up:當前你為對方上傳資料的速度,也就是對方在你這裡下載的當前速度。
Interested:你是否有對方需要的資料," * " 表示是。
Choking:對方是否暫時被你拒絕從你這裡下載資料," * " 表示是。
這個需要解釋一下:在BT Experimental裡,你是可以限制同時從你這裡下載的人數的,比如你限制為6,但並不是說只能有6個人連到你這裡,可能有幾十個人連到你的電腦,這時,BT Experimental就會自動選項6個人,允許他們下載資料,其他的人就被暫時拒絕了,當過了一段時間後,BT Experimental又會自動選項另外的6個人,保證每個想從你這裡下載的人都能夠下載到資料。
Down:當前你從對方那裡下載的速度。
Interesting:對方是否有你需要的資料," * " 表示是。
Choked:你是否暫時被對方拒絕從他那裡下載資料," * " 表示是。
Snubbed:暫時意義不明。
Downloaded:你從對方那裡下載的資料總量。
Completed:對方的文件資料的完整度。100%的那些人就是SeeD。大家都來拜一拜呀~~~~~
Peer Download Speed:對方下載的總速度。嗯嗯,看到那些上百KB速度的人了吧,羨慕啊~~~~~

好了,介紹完畢,這下大家都明白了吧?這個Advanced功能很不錯吧,如果喜歡就去下載一個吧,和BT一樣方便,但是功能更強,穩定性也很好。(廣告!廣告!)
下載位址:http://ei.kefro.st/projects/btclient/

BT執行原理分析及局內網提速方法

由於局內網用戶無法提供一個對外的連接阜,所以無法做伺服器.但用BT的時候,發現它可以讓局內網用戶做 Send,作為程序員就忍不住下載了它的來源碼分析了一把(為了看它,還專門去寫了一下Python:})

比起其它的P2P軟體,BT有個獨特的地方,它存在一個中間的WEB伺服器,就是我們在發佈的時所填寫的announce.該伺服器提供了發佈的統一管理,不像其它P2P軟體那樣到處去找哪些非常不穩定的個人伺服器,相對起來讓人安心的多.
該WEB伺服器更大的作用是局內網用戶可以做 Send(下面會說明原理),這是其它軟體無法做到的,但不好的地方是announce當機的時候就無法下載了,要知道P2P下載關鍵是要人氣要高,announce停一下就搞到人氣全沒有了

.torrent 的作用
大家都知道我們要用BT下載 ,就要先下載一個.torrent文件,這個文件到底有甚麼呢:
首先是 announce 紀錄了發佈伺服器的位置,讓BT知道是那個WEB伺服器發佈的
然後是一些文件信息,檔案名,目錄名,長度等等
最後是片段長度,和片段的 Sha1 校驗碼
(BT為了事現續傳和文件校驗,就把文件分成若干個片段)
大家可以用寫字板打看torrent文件看看,就是知道個大概,後面的亂碼是片段 Sha1 校驗碼

開始-續傳的實現 sha校驗

BT 開啟一個 torrent文件後,先要你選項文件儲存那裡.然後判斷文件不存在的話就建立新文件,存在的話就用 Sha1 校驗碼去校驗文件---錯誤的就是還沒下載的,這樣就可以實現續傳了,但128位校驗,想不慢都不行

得到 peer

現在知道要下載甚麼了,到那裡下載呢?這就要尋找有誰提供上傳了,這裡BT是通過WEB伺服器來實現的,首先BT會通過分析 torrent 來得到一面一串網址

http://btfans.3322.org:6969/announc...2&event=started

http://btfans.3322.org:6969/announce 是發佈伺服器的位址
info_hash 是torrent文件中的 info 部分的Sha校驗碼,WEB通過它在發佈列表找到對應的紀錄,
peer_id 是自身的標識,它是12個0和當前時間+全球的唯一標識碼(GUID)的Sha校驗的前八位,共20位
port 你提供上傳的 port
IP 你的ip位址,沒有的話伺服器會自己找到
uploaded downloaded 你上傳和下載了多少,伺服器可以用它來做流量分析
left 你還要下載多少個字元
event 狀態,告訴伺服器你是準備開始下載,還是停止,還是下載完成了
以上這個操作預設 5 分鐘做一次,或由伺服器設定

伺服器會做甚麼

伺服器中有個一個 track 程序來管理這些請求
得到這一串程式碼後就會用 info_hash 來搜尋列表,找到你就可以下載,找不到就對不起啦
接著它會反連(NatCheck)你的 IP 和 Port這樣就可以知道你是局內網用戶還是共網用戶(如果你是局內網用戶,它是連不通的,因為它會連到你的伺服器上,你的伺服器當然沒有這個連接阜啦)
然後伺服器返回現在正在下載這個文件的所有公網用戶的IP和port,就像是這樣
d8:intervali1800e5eersld2:ip14:xxx.xxx.xx.xxx7eer id20:00180531904b7e3abdd74orti6881eeee
interval 1800 是告訴 BT 隔多少秒來查詢一次這裡是 30 分鐘 (有點過分了)
最後如果你是公網用戶它會把你提交的 IP 和 Port 放到info_hash 對應的列表中,這樣其它人就可以找到你

下載
得到這些 peer IP後,BT就可以找到對應的IP下載了
Bt會到所有的peer去尋找自己要下載的東西,不是一定要到seed下載.
Bt每找到一個peer就和建立一個Socket來下載,所以下載的人越多,速度就越快.

局內網用戶可以做Send的原理

上面說到伺服器只會返回公網的ip的,那局內網用戶怎麼可以做Send呢,這是因為BT是一個主動連接的軟體(即使你已經下載完了,也不也會主動連接他人)
下面是一個仿真流程:

1 局內網用戶開始做 seed,
2 伺服器收到請求,由於是第一個所以也沒有peer返回
3 公網用戶提交請求,由於seed是局內網用戶所以也沒有peer返回,等待下載,但伺服器會把它的IP放到列表中
4 局內網經過 interval 時間間隔後,再向伺服器放出請求,得到上面得公網IP
5 得到公網IP後,局內網馬上進行連接
6 公網用戶建立連接,資料開始傳輸 (注意現在是公網用戶做伺服器,局內網用戶做客戶端,是不是有點怪)
7 其它局內網用戶去上面公網用戶下載資料

所以,局內網用戶做 seed 一定要有公網用戶得參與,否則其它局內網用戶無法下載.如果全部是局內網用戶,那個所有連接都不會成立,當然這是比較極端的情況.
以上可見,局內網用戶不能和局內網用戶連接,其它用戶無法從伺服器查到你,所以無法主動連接你,你只能每隔30分鐘從伺服器找到公網用戶一個個進行連接.
由於中國很多用戶的是局內網用戶(我從伺服器上查回來的peer還沒試過超過10個的),所以局內網用戶用BT的確要比公網用戶要慢很多.於是有了下面的

一直是0%:
可能SEED是局內網,連接不上。有時用PTC和shareaza無法下的東東,用BT就可以下。
下不了的話具體原因跟具體情況有關,如你的網路是否區域網路,你是否能訪問到tracker,你使用的是那種客戶端,你下載的具體是哪一個BT文件,你是從頭開始下還是續傳,續傳的話之前是否當機過等這些都有關係。
BT下載慢的一些原因:
1、不是公網用戶。局內網用戶不能提供主動連接,所以較慢
2、各個運營商網路接頭速率不高
3、下載者上傳速率不高。因為BT優先處理上傳較快的人
4、發佈時seed的多少,還與發佈者的速率相關,還有下載的人數越多相應的下載速度就越快(這就是BT的最大優點)
5、用戶的防火牆阻礙作用

關於BT錯誤信息的一些解釋


最近發現有很多人問有關BT的出錯資訊,下面給出完整的解釋:

事實上,當你看到這些錯誤提示時,其實並不要緊張,這是你所要做的便是----等待.


注意:使用BT程序中出現紅字錯誤後不必退出,BT會自動重試(無論這種情況是出現在開始還是下載程序中)另外注意錯誤的時間,如果距現在已經超過5分鐘,恰恰說明現在是正常的。(BT不會自動清除過期的錯誤)


I. A piece failed hash chech, re-downloading it

這並不是什麼壞消息,你不用理會它.意思是告訴你,你下載的文件有一部分是壞的,bt會自動幫你重新下載錯誤的部分.導致這個錯誤的大多數原因在於某些人錯誤的使用了"跳過hash檢查"這個選項

II.bad data from tracker -

通常你不必理會它,通常是tracker伺服器過載或者down了.也有可能是你的網掉線了(如部分長寬,訪問任何網站會返回登陸界面,就是錯誤的data啦)


III.Problem connecting to tracker - timeout exceeded
Problem connecting to tracker - HTTP Error 503: Connect failed
Problem connecting to tracker - [Errno socket error] (10061, "Connection refused")
Problem connecting to tracker - (111, 'Connection refused')

說明在連接tracker伺服器程序中出現錯誤,有可能trakker伺服器過載或者down了,這時並不要心急,等待BT自動重試.如果很長時間都沒有反映的話,你可以加上"--http_timeout 120"的參數來加大連接重試時間.具體做法另文說明.

IV.Problem connecting to tracker - HTTP Error 400: Not Authorized

說明這個tracker伺服器不允許你使用這個torrent文件(國內好像比較少見),有些tracker伺服器只允許在他們自己網站上發佈的torrent才允許下載.解決只有換一個torrent文件了,:P

V.Problem connecting to tracker - HTTP Error 404: Not Found

很簡單,torrent文件在tracker伺服器上已經找不到了,找個新的吧.

VI.Problem connecting to tracker - HTTP Error 407: Proxy Authentication Required

假如你用的是代理下載BT,說明這個代理需要驗證,需要你輸入用戶名和密碼.

VII.Problem getting response info - [Errno 2] No such file or directory: "C:\\Documents and Sett..."

在某些情況下,IE有可能沒把torrent文件存在臨時資料夾內.解決方法是在torrent文件下載位址上按右鍵,然後另存到硬碟的某處(這可是個好習慣,以後你求種子或者reseed的時候特別有用,建議大家都這麼干,利己利人),然後雙按這個torrent文件開始下載.如果出現這個問題,建議清楚你的IE緩衝,在文件中如果出現"["或者"]"也會出現這個問題.

BitTorrent experimental v5.2 http://btfans3.3322.org/torrents/16287.torrent
這個很好可以設定占停顯示種子的ip設定連接阜

推薦一個軟體,PTC,一個FLASHGET風格的BT下載,解決了當你同時下很多SEED時,工作列上一堆視窗的問題,而且也可以搜尋種子的數量.
但是BT有他的缺點,不像E2K,無法控制沒有自覺的用戶,所以在有些發佈點上,要下就快下,否則種子在幾個小時後有可能就沒有了.
http://itguysam.no-ip.com/PTC.html
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
 


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 07:00 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1