|
|
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已! |
|
恭喜您是本站第 1729433
位訪客!
登入 | 註冊
|
|
|
|
發表者 |
討論內容 |
冷日 (冷日) |
發表時間:2009/5/21 0:38 |
- Webmaster

- 註冊日: 2008/2/19
- 來自:
- 發表數: 15771
|
- [分享]續傳軟體概念解說與實現
- 首先我們先認識一下,在 HTTP 的回應狀態碼裡面,有一個 206 Partial Content。
她的意思如下: 因為頻寬限制,Server 將較大的網頁或檔案分次傳送,由於僅能傳輸部分內容,因此以此訊息通知 Client 資料尚未傳完 簡單的說,會看到這個 Code 即表示『伺服器僅完成了部分用戶的GET請求』
換言之,我們就是碰上了所謂的『續傳軟體』啦!
而 flashget 這一類所謂「多線程下載」或叫「斷點續傳」軟體,就是每次請求部分資料而已! 但不知道大家是否會有如下幾個疑問: 1.第一個線程請求的一定是所有的資料(啟動時一定是單點開始),從伺服器回傳的數據中 Header content-length 顯示的是請求的文件大小,但是消息體實際沒有包含所有的數據。 這和協議不一致,http1.1中規定如果有content-length字段,這個字段的值就必須是消息體的字符數。 2.各個線程請求的數據都是從某個位置開始直到文件結束的數據,這樣各個線程得到的數據就有重疊部分。這些數據是怎麼合併的?
此時我們可以參閱後面兩篇資料,透過程式來說明!
|
|
|
討論串
|