專利名稱:下載方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通訊技術(shù)領(lǐng)域,具體涉及一種網(wǎng)絡(luò)中的下載才支術(shù)。
背景技術(shù):
在通訊系統(tǒng)中,待下載數(shù)據(jù)可以被劃分為多個(gè)數(shù)據(jù)片,每個(gè)數(shù)據(jù)片又可以 被劃分為多個(gè)小片數(shù)據(jù),下載方與被下載方之間傳輸?shù)臄?shù)據(jù)是以數(shù)據(jù)片和小片 數(shù)據(jù)的形式出現(xiàn)的,而且,數(shù)據(jù)片和小片數(shù)據(jù)的下載順序均可以不按照劃分時(shí)
數(shù)據(jù)片和小片數(shù)據(jù)的排列順序。在Peer to Peer (對(duì)等網(wǎng)絡(luò),P2P )中,Peer之間 就是采用數(shù)據(jù)片和小片數(shù)據(jù)的形式進(jìn)行數(shù)據(jù)下載的。
在下載過程中,下載方如接收下載數(shù)據(jù)的Peer通常會(huì)記錄表示數(shù)據(jù)片是否 下載完成的數(shù)據(jù)下載狀態(tài)信息。該數(shù)據(jù)下載狀態(tài)信息可以保存在后綴為idx的文 件中。如果由于網(wǎng)絡(luò)不通、被下載方關(guān)機(jī)或下載方關(guān)機(jī)等情況導(dǎo)致下載中斷, 則下載方通常會(huì)在下一次下載過程中根據(jù)其保存的數(shù)據(jù)下載狀態(tài)信息判斷各 數(shù)據(jù)片是否下載完成,下載方對(duì)沒有下載完成的數(shù)據(jù)片進(jìn)行重新下載。
在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)上述現(xiàn)有技術(shù)至少存在如下問題如 果一個(gè)數(shù)據(jù)片中的部分小片數(shù)據(jù)已經(jīng)下載,而另一部分小片數(shù)據(jù)還沒有下載, 則在下一次下載過程中,下載方會(huì)根據(jù)其記錄的數(shù)據(jù)下載狀態(tài)信息確定出該數(shù) 據(jù)片沒有下載完成,并重新下載該數(shù)據(jù)片,即對(duì)該數(shù)據(jù)片中的所有小片凄t據(jù)均 重新下載,從而浪費(fèi)了網(wǎng)絡(luò)傳輸資源,延長了下載時(shí)間,降低了下載效率。
發(fā)明內(nèi)容
本發(fā)明實(shí)施方式提供了下載方法和裝置,可節(jié)約網(wǎng)絡(luò)傳輸資源,提高下載效率。
本發(fā)明實(shí)施方式提供的下載方法,包括
下載方存儲(chǔ)有數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息;
下載方根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的數(shù)據(jù)片, 并針對(duì)所述處于下載過程中的數(shù)據(jù)片,根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信息確定 出未下載的小片數(shù)據(jù);
下載方針對(duì)所述未下載的小片數(shù)據(jù)進(jìn)行下載。
所述數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下載數(shù)據(jù)量;且所述 下載方根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的數(shù)據(jù)片包括
下載方根據(jù)所述數(shù)據(jù)片數(shù)量從相應(yīng)的存儲(chǔ)位置獲取各數(shù)據(jù)片已下載數(shù)據(jù) 量,并判斷所述數(shù)據(jù)片已下載數(shù)據(jù)量是否大于零且是否達(dá)到預(yù)定數(shù)據(jù)量,下載 方將數(shù)據(jù)片已下載數(shù)據(jù)量大于零且沒有達(dá)到預(yù)定數(shù)據(jù)量的數(shù)據(jù)片確定為處于 下載過程中的數(shù)據(jù)片。
所述數(shù)據(jù)片下載信息還包括數(shù)據(jù)片校驗(yàn)結(jié)果信息;且所述方法還包括
針對(duì)已成功下載的數(shù)據(jù)片,下載方根據(jù)所述數(shù)據(jù)片校-險(xiǎn)結(jié)果信息確定出需 要重新下載的數(shù)據(jù)片,并針對(duì)所述需要重新下載的數(shù)據(jù)片進(jìn)行下載;和/或
維護(hù)側(cè)從下載方獲取所述數(shù)據(jù)片校驗(yàn)結(jié)果信息,并根據(jù)所述數(shù)據(jù)片校驗(yàn)結(jié) 果信息對(duì)被下載數(shù)據(jù)進(jìn)行維護(hù)。
所述數(shù)據(jù)片下載信息還包括數(shù)據(jù)片下載方式信息;且所述方法還包括
下載方根據(jù)所述數(shù)據(jù)片下載方式信息確定出通過可靠下載方式下載的數(shù) 據(jù)片,并才艮據(jù)所述通過可靠下載方式下載的翁:據(jù)片產(chǎn)生種子。
所述小片數(shù)據(jù)下載信息包括小片數(shù)量和各小片數(shù)據(jù)下載狀態(tài)信息;且所 述根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信息判斷未成功下載的小片數(shù)據(jù)包括
下載方根據(jù)所述小片數(shù)量從相應(yīng)的存儲(chǔ)位置獲取小片數(shù)據(jù)下載狀態(tài)信息, 并根據(jù)所述獲取的小片數(shù)據(jù)下載狀態(tài)信息判斷未下載的小片數(shù)據(jù)。在小片數(shù)據(jù)已下載的情況下,小片數(shù)據(jù)下載狀態(tài)信息表示出下載方式信
息;且所述方法還包括
下載方根據(jù)所述小片數(shù)據(jù)下載狀態(tài)信息確定出通過可靠下載方式下載的 小片數(shù)據(jù),并根據(jù)所述通過可靠下載方式下載的小片數(shù)據(jù)產(chǎn)生種子。
所述數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息存儲(chǔ)于文件內(nèi)容中,或者存儲(chǔ)于 文件頭和文件內(nèi)容中。
所述文件頭還包括文件類型標(biāo)志、保留字段和/或版本號(hào);
所述文件類型標(biāo)志用于表示該文件為存儲(chǔ)有數(shù)據(jù)片下載信息和小片數(shù)據(jù) 下載信息的文件;
所述版本號(hào)用于表示下載系統(tǒng)的版本信息。
本發(fā)明實(shí)施方式提供的下載裝置,包括
存儲(chǔ)模塊,用于存儲(chǔ)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息;
判斷模塊,用于根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的 數(shù)據(jù)片,針對(duì)所述處于下載過程中的數(shù)據(jù)片,根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信 息判斷未下載的小片數(shù)據(jù);
下載模塊,用于針對(duì)所述未下載的小片數(shù)據(jù)進(jìn)行下載。
所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下 載數(shù)據(jù)量;或者
所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下 載數(shù)據(jù)量和數(shù)據(jù)片校驗(yàn)結(jié)果;或者
所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下 載數(shù)據(jù)量和數(shù)據(jù)片下載方式信息;或者
所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下 載數(shù)據(jù)量、數(shù)據(jù)片校驗(yàn)結(jié)果和數(shù)據(jù)片下載方式信息;
和/或,所述存儲(chǔ)模塊中存儲(chǔ)的小片數(shù)據(jù)下載信息包括小片數(shù)量和各小片數(shù)據(jù)下 載狀態(tài)信息。
通過上述技術(shù)方案的描述可知,通過存儲(chǔ)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載 信息,使下載方可以確定出處于下載過程中的數(shù)據(jù)片包含的未下載的小片數(shù) 據(jù),因此,可以更加有針對(duì)性的進(jìn)行下載,避免了不必要的下載過程,從而節(jié) 約了網(wǎng)絡(luò)傳輸資源,縮短了下載時(shí)間,提高了下載效率。
圖l是本發(fā)明實(shí)施例一的下載方法流程圖; 圖2是本發(fā)明實(shí)施例一的文件結(jié)構(gòu)示意圖; 圖3是本發(fā)明實(shí)施例二的下載裝置示意圖。
具體實(shí)施例方式
實(shí)施例一、下載方法。該下載方法的流程如附圖l所示。
圖l中,步驟IOO、下載方開始進(jìn)行數(shù)據(jù)下載,到步驟110。這里開始進(jìn)行
的數(shù)據(jù)下載可以是針對(duì)待下載數(shù)據(jù)的斷點(diǎn)續(xù)傳下載,也可以是針對(duì)待下載數(shù)據(jù) 的首次下載。
本實(shí)施例中的下載方存儲(chǔ)有待下載數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)片下載信息和小片數(shù) 據(jù)下載信息。數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息可以以文件的形式存儲(chǔ)在下 載方。下載方可以在針對(duì)待下載數(shù)據(jù)進(jìn)行首次下載時(shí),根據(jù)待下載數(shù)據(jù)的大小、 利用預(yù)先約定的信息對(duì)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息進(jìn)行初始化,即設(shè) 置數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的初始值。當(dāng)數(shù)據(jù)片下載信息和小片數(shù) 據(jù)下載信息以文件的形式存儲(chǔ)在下載方時(shí),下載方需要初始化該文件。這里的 預(yù)先約定的信息可以包括數(shù)據(jù)片分片規(guī)則、以及小片數(shù)據(jù)分片規(guī)則等。在下載 過程中,下載方應(yīng)根據(jù)下載情況實(shí)時(shí)或定期修改其獲得的數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息。
步驟IIO、下載方通過對(duì)其存儲(chǔ)的數(shù)據(jù)片下載信息進(jìn)行判斷,確定出處于 下載過程中的數(shù)據(jù)片,然后,到步驟120。上述處于下載過程中的數(shù)據(jù)片也可 以稱為未成功下載的凄史據(jù)片。
上述數(shù)據(jù)片下載信息可以包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下載數(shù)據(jù)量。數(shù) 據(jù)片數(shù)量表示待下載數(shù)據(jù)包被劃分成的數(shù)據(jù)片的數(shù)量,例如,待下載數(shù)據(jù)包被 劃分為IOO個(gè)數(shù)據(jù)片,則數(shù)據(jù)片數(shù)量為100。針對(duì)每一個(gè)數(shù)據(jù)片來說,數(shù)據(jù)片 已下載數(shù)據(jù)量表示一個(gè)數(shù)據(jù)片已經(jīng)被下載的程度。數(shù)據(jù)片已下載數(shù)據(jù)量可以以 已下載的字節(jié)來表示,也可以以百分比的形式表示,當(dāng)然也可以以比特標(biāo)志位 的方式表示。這里的數(shù)據(jù)片已下載數(shù)據(jù)量還可以應(yīng)用于下載方統(tǒng)計(jì)待下載數(shù)據(jù) 的已下載數(shù)量等其他方面。本發(fā)明實(shí)施例不限制數(shù)據(jù)片已下載數(shù)據(jù)量的具體表 示方式、以及其它具體應(yīng)用的場景。
在數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下載數(shù)據(jù)量的情況下,進(jìn) 行初始化處理后的數(shù)據(jù)片下載信息的一個(gè)具體例子為標(biāo)識(shí)出了待下載數(shù)據(jù)被 劃分成的數(shù)據(jù)片數(shù)量、且各數(shù)據(jù)片已下載數(shù)據(jù)量均為空或均為零。各數(shù)據(jù)片已 下載數(shù)據(jù)量在后續(xù)的下載過程中會(huì)根據(jù)下載的具體情況而發(fā)生變化。
在數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下載數(shù)據(jù)量的情況下,下 載方可以根據(jù)數(shù)據(jù)片數(shù)量獲取到數(shù)據(jù)片已下載數(shù)據(jù)量。獲取數(shù)據(jù)片已下載數(shù)據(jù) 量的一個(gè)具體例子為如果數(shù)據(jù)片數(shù)量為100、各數(shù)據(jù)片已下載數(shù)據(jù)量均使用 四個(gè)字節(jié)表示、且數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下載數(shù)據(jù)量和小片數(shù)據(jù)下載信息連 續(xù)順序存儲(chǔ),則下載方在讀取到數(shù)據(jù)片數(shù)量為100后,可以確定出從存儲(chǔ)數(shù)據(jù) 片已下載數(shù)據(jù)量的開始位置之后的400個(gè)字節(jié)中存儲(chǔ)的信息為數(shù)據(jù)片0至數(shù) 據(jù)片99對(duì)應(yīng)的數(shù)據(jù)片已下載數(shù)據(jù)量,即按照存儲(chǔ)先后順序每四個(gè)字節(jié)表示的 數(shù)字即為一個(gè)數(shù)據(jù)片對(duì)應(yīng)的數(shù)據(jù)片已下載數(shù)據(jù)量。
下載方可以通過判斷獲取到的數(shù)據(jù)片已下載數(shù)據(jù)量是否大于零(或是否為空)且是否達(dá)到預(yù)定數(shù)據(jù)量來確定數(shù)據(jù)片是否成功下載,下載方可以將數(shù)據(jù)片 已下載數(shù)據(jù)量大于零且沒有達(dá)到預(yù)定數(shù)據(jù)量的數(shù)據(jù)片確定為未成功下載的數(shù) 據(jù)片,將數(shù)據(jù)片已下載數(shù)據(jù)量達(dá)到預(yù)定數(shù)據(jù)量的數(shù)據(jù)片確定為成功下載的數(shù)據(jù)
片。例如,預(yù)定數(shù)據(jù)量為500字節(jié),即一個(gè)數(shù)據(jù)片包括500個(gè)字節(jié),如果下載 方獲取到一個(gè)數(shù)據(jù)片的數(shù)據(jù)片已下載數(shù)據(jù)量為400字節(jié),則下載方確定該數(shù)據(jù) 片為未成功下載的數(shù)據(jù)片。另外,如果下載方確定出一個(gè)數(shù)據(jù)片的數(shù)據(jù)片已下 載數(shù)據(jù)量為O個(gè)字節(jié)或?yàn)榭?,則下載方可以不再查找該數(shù)據(jù)片對(duì)應(yīng)的小片數(shù)據(jù) 下載信息,而直接決定下載該數(shù)據(jù)片,即對(duì)該數(shù)據(jù)片中所有的小片數(shù)據(jù)均下載。 上述的預(yù)定數(shù)據(jù)量可以是下載方從被下載方獲取的,而且,預(yù)定數(shù)據(jù)量可以為 數(shù)據(jù)片的大小。
需要說明的是,本實(shí)施例中的數(shù)據(jù)片下載信息可以表示出各數(shù)據(jù)片具體的 下載情況,數(shù)據(jù)片下載信息的具體表現(xiàn)形式并不限于上述例舉的數(shù)據(jù)片數(shù)量和 各數(shù)據(jù)片已下載數(shù)據(jù)量,數(shù)據(jù)片下載信息也可以通過其他方式來表示,例如, 針對(duì)一個(gè)數(shù)據(jù)片而言,數(shù)據(jù)片下載信息也可以通過三個(gè)比特位來表示,第一個(gè) 比特位表示是否為數(shù)據(jù)片,第二和三個(gè)比特位表示下載完成或未曾下載或未成 功下載(即只下載了數(shù)據(jù)片中的部分小片數(shù)據(jù)),每個(gè)數(shù)據(jù)片對(duì)應(yīng)的比特位按 照數(shù)據(jù)片被劃分的先后順序依次存儲(chǔ)。三個(gè)比特位表示數(shù)據(jù)片下載信息的一個(gè) 具體的例子為OOO表示數(shù)據(jù)片下載完成,OOl表示數(shù)據(jù)片未曾下載,010表示 it據(jù)片未成功下載,此時(shí),下載方在判斷出某數(shù)據(jù)片對(duì)應(yīng)的翁:據(jù)片下載信息為 010時(shí),則可以確定該數(shù)據(jù)片為未成功下載的數(shù)據(jù)片。另外,上述例舉的三個(gè) 比特位也可以變化為一個(gè)字節(jié)等。本實(shí)施例不限制數(shù)據(jù)片下載信息的具體表現(xiàn) 形式。
步驟120、針對(duì)未成功下載的數(shù)據(jù)片,下載方通過對(duì)其存儲(chǔ)的小片數(shù)據(jù)下 載信息進(jìn)行判斷,確定出未下載的小片數(shù)據(jù),然后,到步驟130。這里的未成 功下載的數(shù)據(jù)片是指只下載了該數(shù)據(jù)片的部分小片數(shù)據(jù)的數(shù)據(jù)片。上述小片數(shù)據(jù)下載信息可以包括小片數(shù)量和各小片數(shù)據(jù)下載狀態(tài)。小片 數(shù)量表示數(shù)據(jù)片被劃分成的小片數(shù)據(jù)的數(shù)量,例如, 一個(gè)數(shù)據(jù)片被劃分為100 個(gè)小片數(shù)據(jù),則小片數(shù)量為100。針對(duì)每一個(gè)小片數(shù)據(jù)來說,小片數(shù)據(jù)下載狀 態(tài)表示一個(gè)小片數(shù)據(jù)是否已經(jīng)下載完成。小片數(shù)據(jù)下載狀態(tài)可以以下載方式來 表示,例如,當(dāng)一個(gè)小片數(shù)據(jù)下載完成后,該小片數(shù)據(jù)對(duì)應(yīng)的小片數(shù)據(jù)下載狀 態(tài)記載該小片數(shù)據(jù)的下載方式(如P2P方式、HTTP方式、混合方式或下推方 式等),當(dāng)一個(gè)小片數(shù)據(jù)未下載完成時(shí),該小片數(shù)據(jù)對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài) 為空。此時(shí),下載方可以根據(jù)小片數(shù)據(jù)對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)是否為空判斷 出該小片數(shù)據(jù)是否下載完成。
需要說明的是,小片數(shù)據(jù)下載狀態(tài)信息可以表示出下載完成(即已下載) 或未下載完成(即未曾下載),而不能夠表示出下載了部分小片數(shù)據(jù)的情況。 另外,下載方可以根據(jù)各小片數(shù)據(jù)下載狀態(tài)信息確定出哪些小片數(shù)據(jù)是通過可 靠下載方式下載獲得的小片數(shù)據(jù),哪些小片數(shù)據(jù)是通過非可靠下載方式下載獲 得的小片數(shù)據(jù)。例如,下載方可以將下載方式為HTTP方式的小片數(shù)據(jù)確定為 通過可靠下載方式下載獲得的小片數(shù)據(jù)。針對(duì)通過可靠下載方式下載獲得的小 片數(shù)據(jù),下載方可以根據(jù)該小片數(shù)據(jù)產(chǎn)生種子,然后,下載方可以根據(jù)現(xiàn)有的 多種種子應(yīng)用方式進(jìn)行后續(xù)的操作, 一個(gè)種子應(yīng)用方式的具體例子為下載方 將種子文件上傳至服務(wù)器,從而可以利用該種子提供相應(yīng)的服務(wù)。
一t人上述對(duì)小片數(shù)據(jù)下載狀態(tài)信息的描述可知,通過小片數(shù)據(jù)下載狀態(tài)信息 可以保證種子的準(zhǔn)確性,盡可能的避免了種子不準(zhǔn)確而產(chǎn)生的服務(wù)不可靠的現(xiàn) 象,從而提高了網(wǎng)絡(luò)的可靠性。
本實(shí)施例中的下載方可以根據(jù)小片數(shù)量確定出數(shù)據(jù)片對(duì)應(yīng)的小片數(shù)據(jù)下 載信息的存儲(chǔ)位置,例如,在小片數(shù)量為100、 一個(gè)小片數(shù)據(jù)下載狀態(tài)信息占 用一個(gè)字節(jié)的情況下,從開始存儲(chǔ)小片數(shù)據(jù)下載狀態(tài)的位置起,第一個(gè)100個(gè) 字節(jié)為凄t據(jù)片O對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信息,第二個(gè)100個(gè)字節(jié)為凄t據(jù)片1對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信息,依此類推,直到最后一個(gè)數(shù)據(jù)片對(duì)應(yīng)的小片數(shù) 據(jù)下載狀態(tài)信息。
需要說明的是,本實(shí)施例中的小片數(shù)據(jù)下載信息可以表示出各小片數(shù)據(jù)具 體的下載情況,小片數(shù)據(jù)下載信息的具體表現(xiàn)形式并不限于上述例舉的小片數(shù) 量和各小片數(shù)據(jù)下載狀態(tài)信息,小片數(shù)據(jù)下載信息也可以通過其他方式來表
示,例如,針對(duì)一個(gè)小片數(shù)據(jù)而言,小片l丈據(jù)下載信息也可以通過兩個(gè)比特位 來表示,第一個(gè)比特位表示是否為小片數(shù)據(jù),第二個(gè)比特位表示小片數(shù)據(jù)是否 下載完成,例如,10表示小片數(shù)據(jù)下載完成,11表示小片數(shù)據(jù)未下載完成。 每個(gè)小片數(shù)據(jù)對(duì)應(yīng)的比特位按照小片數(shù)據(jù)^皮劃分的先后順序排列存儲(chǔ)。而且, 上述例舉的兩個(gè)比特位也可以變化為一個(gè)字節(jié)等。本實(shí)施例不限制小片數(shù)據(jù)下 載信息的具體表現(xiàn)形式。
步驟130、下載方針對(duì)確定出的未成功下載的小片數(shù)據(jù)進(jìn)行下載。下載方 可以采用現(xiàn)有的多種下載方式對(duì)未成功下載的小片數(shù)據(jù)進(jìn)行下載。本實(shí)施例不 限制下載方在下載小片數(shù)據(jù)過程中采用具體下載方式。
從上述描述可以看出,實(shí)施例一中的下載方通過存儲(chǔ)數(shù)據(jù)片下載信息和小 片數(shù)據(jù)下載信息,可以確定出未成功下載的數(shù)據(jù)片以及未下載的小片數(shù)據(jù),這 樣,在下載過程中,下載方可以針對(duì)未成功下載的數(shù)據(jù)片中的未下載的小片數(shù) 據(jù)進(jìn)行下載,使下載過程更加有針對(duì)性,以避免未成功下載的數(shù)據(jù)片中已經(jīng)下 載的小片數(shù)據(jù)被再次下載的過程,從而避免了不必要的下載過程,最終節(jié)約了 網(wǎng)絡(luò)傳輸資源,縮短了下載時(shí)間,提高了下載效率。
在本實(shí)施例中,雖然某個(gè)數(shù)據(jù)片被成功下載,但是,該數(shù)據(jù)片可能會(huì)因?yàn)?誤碼率高等原因而使下載方無法正常使用該數(shù)據(jù)片,針對(duì)這樣的數(shù)據(jù)片,下載
方應(yīng)該重新下載該數(shù)據(jù)片包含的所有小片數(shù)據(jù)。也就是說,在下載過程中,下 載方仍然可以將該凄t據(jù)片當(dāng)作未成功下載的數(shù)據(jù)片。
下載方可以通過判斷數(shù)據(jù)片下載信息中包括的數(shù)據(jù)片校驗(yàn)結(jié)果信息來確定是否需要將已成功下載的數(shù)據(jù)片當(dāng)作未成功下載的數(shù)據(jù)片而對(duì)該數(shù)據(jù)片的 所有小片數(shù)據(jù)重新進(jìn)行下載。數(shù)據(jù)片校驗(yàn)結(jié)果信息可以表示出數(shù)據(jù)片是否校驗(yàn) 通過。凄史據(jù)片才交驗(yàn)結(jié)果信息可以占用一個(gè)比特位,也可以占用一個(gè)字節(jié)等。
上述數(shù)據(jù)片校驗(yàn)結(jié)果信息也可以用于其他應(yīng)用,例如,維護(hù)側(cè)從各下載方 獲取數(shù)據(jù)片校驗(yàn)結(jié)果信息,并根據(jù)獲取到的多個(gè)數(shù)據(jù)片校驗(yàn)結(jié)果信息對(duì)被下載
數(shù)據(jù)進(jìn)行維護(hù)。對(duì)被下載數(shù)據(jù)進(jìn)行維護(hù)的一個(gè)具體的例子為在多個(gè)下載方對(duì)
某個(gè)數(shù)據(jù)片的數(shù)據(jù)片校驗(yàn)結(jié)果信息均為校驗(yàn)未通過的情況下,維護(hù)側(cè)更新該數(shù) 據(jù)片等。本實(shí)施例不限制數(shù)據(jù)片才交驗(yàn)結(jié)果信息的具體應(yīng)用范圍,也不限制維護(hù) 側(cè)對(duì)^^皮下載數(shù)據(jù)的維護(hù)方式。
從上述對(duì)數(shù)據(jù)片校驗(yàn)結(jié)果信息的描述可知,通過數(shù)據(jù)片校驗(yàn)結(jié)果信息可以 使各下載方得到更加可靠的數(shù)據(jù),盡可能的避免了下載的數(shù)據(jù)不能被正常使用 的現(xiàn)象,從而提高了數(shù)據(jù)下載可靠性。
在本實(shí)施例中,數(shù)據(jù)片下載信息還可以包括各數(shù)據(jù)片下載方式信息。數(shù)據(jù)
片下載方式信息可以表示出P2P方式、HTTP方式、混合方式或下推方式等多種 下載方式。下載方可以根據(jù)各數(shù)據(jù)片下載方式信息確定出哪些數(shù)據(jù)片是通過可 靠下載方式下載獲得的數(shù)據(jù)片,哪些數(shù)據(jù)片是通過非可靠下載方式下載獲得的 數(shù)據(jù)片。例如,下載方可以將下載方式為HTTP方式的數(shù)據(jù)片確定為通過可靠 下載方式下載獲得的數(shù)據(jù)片。針對(duì)通過可靠下載方式下載獲得的數(shù)據(jù)片,下載 方可以根據(jù)該數(shù)據(jù)片產(chǎn)生種子,然后,下載方可以才艮據(jù)現(xiàn)有的多種種子應(yīng)用方 式進(jìn)行后續(xù)的操作, 一個(gè)種子應(yīng)用方式的具體例子為下載方將種子文件上傳 至服務(wù)器,從而可以利用該種子提供相應(yīng)的服務(wù)。
^v上述對(duì)數(shù)據(jù)片下載方式信息的描述可知,通過凄t據(jù)片下載方式信息可以 保證種子的準(zhǔn)確性,盡可能的避免了種子不準(zhǔn)確而產(chǎn)生的服務(wù)不可靠的現(xiàn)象, 從而提高了網(wǎng)絡(luò)的可靠性。
當(dāng)上述數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息以文件的形式存儲(chǔ)時(shí),本實(shí)施例可以靈活地安排數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的存儲(chǔ)位置,例如,數(shù) 據(jù)片下載信息可以存儲(chǔ)在文件內(nèi)容中,也可以存儲(chǔ)在文件頭和文件內(nèi)容中,小 片數(shù)據(jù)下載信息可以存儲(chǔ)在文件內(nèi)容中,也可以存儲(chǔ)在文件頭和文件內(nèi)容中。當(dāng)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息以文件的形式存儲(chǔ)時(shí),文件頭中還 可以存儲(chǔ)文件類型標(biāo)志、保留字段和版本號(hào)中的任意一個(gè)或任意多個(gè)。文件類 型標(biāo)志可以表示出該文件為存儲(chǔ)有數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的文 件。保留字段可以設(shè)置為空,以備后續(xù)對(duì)文件進(jìn)行擴(kuò)展時(shí)使用。版本號(hào)可以表 示出下載系統(tǒng)(如P2P系統(tǒng))的版本信息,該版本信息可以在查看下載系統(tǒng)版 本或者下載系統(tǒng)升級(jí)等情況下使用。實(shí)施例 一的存儲(chǔ)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的文件的 一個(gè)具體的例子如附圖2所示。圖2中的文件是以TDI為后綴的文件,TDI文件頭包括文件類型標(biāo)志、保留 字段、版本號(hào)、數(shù)據(jù)片數(shù)量(即圖2中的片數(shù)量)和小片數(shù)量。文件類型標(biāo)志 表明該文件為TDI類型的文件。在圖2中的文件內(nèi)容中,先存儲(chǔ)的是數(shù)據(jù)片下載信息中的各數(shù)據(jù)片下載數(shù) 量、下載方式和數(shù)據(jù)片校驗(yàn)結(jié)果信息(即圖2中的校驗(yàn)情況)。這部分內(nèi)容是 按照數(shù)據(jù)片被劃分時(shí)的先后順序依次存儲(chǔ)的,即數(shù)據(jù)片O對(duì)應(yīng)的數(shù)據(jù)片下載數(shù) 量、下載方式和數(shù)據(jù)片校驗(yàn)結(jié)果信息存儲(chǔ)在文件內(nèi)容的最前面,其后是數(shù)據(jù)片 l對(duì)應(yīng)的數(shù)據(jù)片下載數(shù)量、下載方式和數(shù)據(jù)片校驗(yàn)結(jié)果信息,再后面是數(shù)據(jù)片2 對(duì)應(yīng)的數(shù)據(jù)片下載數(shù)量、下載方式和數(shù)據(jù)片校驗(yàn)結(jié)果信息,依此類推,直到最 后一個(gè)數(shù)據(jù)片對(duì)應(yīng)的數(shù)據(jù)片下載凄t量、下載方式和數(shù)據(jù)片校驗(yàn)結(jié)果信息。在存儲(chǔ)了各數(shù)據(jù)片對(duì)應(yīng)的數(shù)據(jù)片下載數(shù)量、下載方式和數(shù)據(jù)片校驗(yàn)結(jié)果信 息之后,緊接著存儲(chǔ)的是各小片數(shù)據(jù)下載狀態(tài)信息,針對(duì)已成功下載的小片數(shù) 據(jù)來說,該下載狀態(tài)信息可以體現(xiàn)出小片數(shù)據(jù)的下載方式。各小片數(shù)據(jù)的下載 狀態(tài)信息首先是按照數(shù)據(jù)片被劃分時(shí)的順序依次存儲(chǔ)的,其次,針對(duì)一個(gè)數(shù)據(jù)片對(duì)應(yīng)的多個(gè)小片數(shù)據(jù)來說,各小片數(shù)據(jù)下載狀態(tài)信息是按照小片數(shù)據(jù)被劃分 時(shí)的先后順序依次存儲(chǔ)的。例如,先存儲(chǔ)數(shù)據(jù)片O對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信 息,其后是數(shù)據(jù)片l對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信息,再后面是數(shù)據(jù)片2對(duì)應(yīng)的小 片數(shù)據(jù)下載狀態(tài)信息,依此類推,直到最后一個(gè)數(shù)據(jù)片對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信息。在每個(gè)數(shù)據(jù)片對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信息中,是按照小片數(shù)據(jù)o、 小片數(shù)據(jù)l直到最后一個(gè)小片數(shù)據(jù)的順序依次存儲(chǔ)小片數(shù)據(jù)下載狀態(tài)信息的。當(dāng)然上述從數(shù)據(jù)片0到最后一個(gè)數(shù)據(jù)片的順序可以為從最后一個(gè)凄t據(jù)片到 數(shù)據(jù)片0的順序,從小片數(shù)據(jù)0到最后一個(gè)小片數(shù)據(jù)的順序也可以為從最后一個(gè) 小片數(shù)據(jù)到小片數(shù)據(jù)O的順序。而且,也可以為其他預(yù)先規(guī)定的順序。上述圖2僅僅是TDI文件的一個(gè)具體的例子而已,并不代表存儲(chǔ)數(shù)據(jù)片下載 信息和小片數(shù)據(jù)下載信息一定如圖2所示,圖2所示的例子可以有多種變形情 況,例如,文件名的后綴不為TDI;再例如,每一個(gè)數(shù)據(jù)片下載信息之后跟著 存儲(chǔ)該數(shù)據(jù)片對(duì)應(yīng)的小片數(shù)據(jù)下載信息等;還有,文件頭中可以不包括保留字 段、版本號(hào),數(shù)據(jù)片數(shù)量和/或小片數(shù)量存儲(chǔ)于文件內(nèi)容中等。在此不再——詳 細(xì)i兌明。另外,本實(shí)施例可以應(yīng)用在多種以數(shù)據(jù)片和小片數(shù)據(jù)進(jìn)行下載的系統(tǒng)中, 例如,本實(shí)施例可以應(yīng)用在P2P中。而且,步驟110和步驟120均可以并行執(zhí)行, 步驟110和步驟120也可以順序執(zhí)行。并行執(zhí)行如一次判斷出多個(gè)未成功下載的 數(shù)據(jù)片,并同時(shí)對(duì)多個(gè)未成功下載的數(shù)據(jù)片中的未下載的小片數(shù)據(jù)進(jìn)行下載。 順序執(zhí)行如先判斷出某一個(gè)數(shù)據(jù)片是否未成功下載,在確定出該數(shù)據(jù)片未成功 下載時(shí),針對(duì)該數(shù)據(jù)片中未下載的小片數(shù)據(jù)進(jìn)行下載;在針對(duì)該it據(jù)片進(jìn)行了 判斷及下載后,再針對(duì)另一個(gè)數(shù)據(jù)片進(jìn)行判斷及下載,依此類推,直到針對(duì)所 有的數(shù)據(jù)片都進(jìn)行了判斷及下載。還有,判斷未成功下載的數(shù)據(jù)片的判斷過程 可以并行執(zhí)行而小片數(shù)據(jù)下載過程可以順序執(zhí)行,或者判斷未成功下載的數(shù)據(jù) 片的判斷過程可以順序執(zhí)行而針對(duì)一個(gè)數(shù)據(jù)片中的各小片數(shù)據(jù)下載過程可以并行執(zhí)行。實(shí)施例二、下載裝置。該裝置的結(jié)構(gòu)如附圖3所示。圖3中的下載裝置300包括存儲(chǔ)模塊310、判斷模塊320和下載模塊330。 存儲(chǔ)模塊310中存儲(chǔ)有數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息。 存儲(chǔ)模塊310可以以文件的形式存儲(chǔ)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信 息。存儲(chǔ)模塊310中存儲(chǔ)的信息在下載方針對(duì)待下載數(shù)據(jù)進(jìn)行首次下載時(shí),被 初始化。執(zhí)行初始化操作的主體可以為存儲(chǔ)才莫塊310,也可以為判斷才莫塊320或 下載模塊330,還可以為下載裝置中的其他模塊。對(duì)數(shù)據(jù)片下載信息和小片數(shù) 據(jù)下載信息進(jìn)行初始化的過程如上述實(shí)施例一中的描述。存儲(chǔ)模塊310中存儲(chǔ) 的數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息會(huì)在下載過程中實(shí)時(shí)或定期修改更新。 執(zhí)行修改更新操作的主體可以為下載模塊330。判斷模塊320根據(jù)存儲(chǔ)模塊310中存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載 過程中的數(shù)據(jù)片,針對(duì)處于下載過程中的數(shù)據(jù)片,判斷模塊320根據(jù)存儲(chǔ)模塊 310中存儲(chǔ)的小片數(shù)據(jù)下載信息判斷未下載的小片數(shù)據(jù),并通知下載才莫塊330未 下載的小片數(shù)據(jù)的信息。如果判斷模塊320根據(jù)存儲(chǔ)模塊310中存儲(chǔ)的數(shù)據(jù)片下 載信息確定出未層下載的數(shù)據(jù)片,則判斷模塊320直接通知下載模塊330對(duì)該數(shù) 據(jù)片的所有小片進(jìn)行下載。判斷模塊320執(zhí)行的判斷操作可以并行執(zhí)行,也可 以順序執(zhí)行,具體如上述實(shí)施例中的描述,在此不再重復(fù)說明。在存儲(chǔ)模塊310存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下 載數(shù)據(jù)量的情況下,判斷模塊320可以根據(jù)數(shù)據(jù)片數(shù)量從存儲(chǔ)模塊310存儲(chǔ)信 息的相應(yīng)的存儲(chǔ)位置處獲取到數(shù)據(jù)片已下載凄t據(jù)量。獲取數(shù)據(jù)片已下載數(shù)據(jù)量 的具體例子如上述實(shí)施例中的描述,在此不再重復(fù)說明。判斷4莫塊320可以通 過判斷獲取到的數(shù)據(jù)片已下載數(shù)據(jù)量是否大于零(或是否為空)且是否達(dá)到預(yù) 定數(shù)據(jù)量來確定數(shù)據(jù)片是否成功下載,判斷模塊320可以將數(shù)據(jù)片已下載數(shù)據(jù) 量大于零且片已下載數(shù)據(jù)量達(dá)到預(yù)定數(shù)據(jù)量的數(shù)據(jù)片確定為成功下載的數(shù)據(jù)片。需要說明的是,存儲(chǔ)模塊310中存儲(chǔ)的數(shù)據(jù)片下載信息的具體表現(xiàn)形式并 不限于上述例舉的數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下載數(shù)據(jù)量,數(shù)據(jù)片下載信息也可 以通過其他方式來表示,具體例子如上述實(shí)施例中的描述,在此不再重復(fù)說明。針對(duì)未成功下載的數(shù)據(jù)片,判斷模塊320通過對(duì)存儲(chǔ)模塊310中存儲(chǔ)的小 片數(shù)據(jù)下載信息進(jìn)行判斷,確定出未下載的小片數(shù)據(jù)。存儲(chǔ)模塊310中存儲(chǔ)的 小片數(shù)據(jù)下載信息可以包括小片數(shù)量和各小片數(shù)據(jù)下載狀態(tài)。小片數(shù)量表示 數(shù)據(jù)片被劃分成的小片數(shù)據(jù)的數(shù)量,本實(shí)施例中的判斷模塊320可以根據(jù)小片 數(shù)量確定出數(shù)據(jù)片對(duì)應(yīng)的小片數(shù)據(jù)下載信息在存儲(chǔ)^^莫塊310中的存儲(chǔ)位置,具 體例子如上述實(shí)施例中的描述。上述小片數(shù)據(jù)下載狀態(tài)信息表示一個(gè)小片數(shù)據(jù) 是否已經(jīng)下載完成。小片數(shù)據(jù)下載狀態(tài)可以以下載方式來表示,例如,當(dāng)一個(gè) 小片數(shù)據(jù)下載完成后,存儲(chǔ)^^莫塊310中存儲(chǔ)的該小片數(shù)據(jù)對(duì)應(yīng)的小片數(shù)據(jù)下載 狀態(tài)被修改更新為該小片數(shù)據(jù)的下載方式(如P2P方式、HTTP方式、混合方 式或下推方式等),當(dāng)一個(gè)小片數(shù)據(jù)未下載完成時(shí),存儲(chǔ)模塊310中存儲(chǔ)的該 小片數(shù)據(jù)對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)為空。在這種情況下,判斷模塊320可以根 據(jù)存儲(chǔ)模塊310中存儲(chǔ)的小片數(shù)據(jù)對(duì)應(yīng)的小片數(shù)據(jù)下載狀態(tài)信息是否為空判斷 出該小片數(shù)據(jù)是否下載完成。需要說明的是,存儲(chǔ)模塊310中存儲(chǔ)的小片數(shù)據(jù)下載狀態(tài)信息可以表示出 下載完成(即已下載)或未下載完成(即未曾下載),而不能夠表示出下載了 部分小片數(shù)據(jù)的情況。另外,下載裝置中的可靠下載判斷模塊可以根據(jù)存儲(chǔ)模 塊310中存儲(chǔ)的各小片數(shù)據(jù)下載狀態(tài)信息確定出哪些小片數(shù)據(jù)是通過可靠下載 方式下載獲得的小片數(shù)據(jù),哪些小片數(shù)據(jù)是通過非可靠下載方式下載獲得的小 片數(shù)據(jù)。下栽裝置中的種子應(yīng)用模塊可以根據(jù)可靠下載判斷模塊判斷出的通過 可靠下載方式獲得的小片數(shù)據(jù)產(chǎn)生種子,然后,種子應(yīng)用模塊可以根據(jù)現(xiàn)有的 多種種子應(yīng)用方式進(jìn)行后續(xù)的才喿作。需要說明的是,存儲(chǔ)模塊310中存儲(chǔ)的小片數(shù)據(jù)下載信息可以表示出各小 片數(shù)據(jù)具體的下載情況,小片數(shù)據(jù)下載信息的具體表現(xiàn)形式并不限于上述例舉的小片數(shù)量和各小片數(shù)據(jù)下載狀態(tài)信息,小片數(shù)據(jù)下載信息也可以通過其他方式來表示,具體如上述實(shí)施例中的描述,在此不再重復(fù)說明。存儲(chǔ)^^莫塊310存 儲(chǔ)的包含有數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的文件的一個(gè)具體的例子如 圖2所示,在此不再重復(fù)說明。下載模塊330根據(jù)判斷模塊320的通知進(jìn)行小片數(shù)據(jù)的下載。下載模塊330 可以采用現(xiàn)有的多種下載方式對(duì)未成功下載的小片凄t據(jù)進(jìn)^f亍下載。本實(shí)施例不 限制下載模塊330在下載小片數(shù)據(jù)過程中采用具體下載方式。下載模塊330可以 并行下載小片數(shù)據(jù),也可以順序下載小片數(shù)據(jù)。并行、順序的具體說明如上述 實(shí)施例中的描述,在此不再重復(fù)說明。從上述描述可以看出,實(shí)施例二通過在存儲(chǔ)模塊310中存儲(chǔ)數(shù)據(jù)片下載信 息和小片數(shù)據(jù)下載信息,使判斷模塊320可以確定出未成功下載的數(shù)據(jù)片以及 未下載的小片數(shù)據(jù),這樣,在下載過程中,下載模塊330可以針對(duì)未成功下載 的數(shù)據(jù)片和未成功下載的小片數(shù)據(jù)進(jìn)行下載,使下載過程更加有針對(duì)性,以避 免未成功下載的數(shù)據(jù)片中已經(jīng)下載的小片數(shù)據(jù)被再次下載的過程,從而避免了 不必要的下載過程,最終節(jié)約了網(wǎng)絡(luò)傳輸資源,縮短了下載時(shí)間,提高了下載 效率。在本實(shí)施例中,雖然某個(gè)數(shù)據(jù)片被下載模塊330成功下載,但是,該數(shù)據(jù) 片可能會(huì)因?yàn)檎`碼率高等原因而使下載方無法正常使用該數(shù)據(jù)片,針對(duì)這樣的 數(shù)據(jù)片,下載模塊330應(yīng)該重新下載該數(shù)據(jù)片包含的所有小片數(shù)據(jù)。判斷模塊320可以通過判斷存儲(chǔ)模塊310中數(shù)據(jù)片下載信息包括的數(shù)據(jù)片 校驗(yàn)結(jié)果信息來確定是否需要將已成功下載的數(shù)據(jù)片當(dāng)作未成功下載的數(shù)據(jù) 片而決定對(duì)該數(shù)據(jù)片的所有小片數(shù)據(jù)重新進(jìn)行下載。數(shù)據(jù)片校驗(yàn)結(jié)果信息可以 表示出數(shù)據(jù)片是否校驗(yàn)通過。數(shù)據(jù)片校驗(yàn)結(jié)果信息可以占用一個(gè)比特位,也可18以占用一個(gè)字節(jié)等。
維護(hù)側(cè)從各下載裝置的存儲(chǔ)模塊310中獲取數(shù)據(jù)片校驗(yàn)結(jié)果信息,并根據(jù)獲取 到的多個(gè)數(shù)據(jù)片校驗(yàn)結(jié)果信息對(duì)被下載數(shù)據(jù)進(jìn)行維護(hù)。對(duì)被下載數(shù)據(jù)進(jìn)行維護(hù) 的一個(gè)具體的例子如上述實(shí)施例中的描述。本實(shí)施例不限制數(shù)據(jù)片校驗(yàn)結(jié)果信 息的具體應(yīng)用范圍,也不限制維護(hù)側(cè)對(duì)被下載數(shù)據(jù)的維護(hù)方式。
存儲(chǔ)模塊310中存儲(chǔ)的數(shù)據(jù)片下載信息還可以包括各數(shù)據(jù)片下載方式信 息。數(shù)據(jù)片下載方式信息可以表示出P2P方式、HTTP方式、混合方式或下推方 式等多種下載方式。下載裝置中的可靠下載判斷模塊可以根據(jù)各數(shù)據(jù)片下載方 式信息確定出哪些數(shù)據(jù)片是通過可靠下載方式下載獲得的數(shù)據(jù)片,哪些數(shù)據(jù)片 是通過非可靠下載方式下載獲得的數(shù)據(jù)片。下載裝置中的種子應(yīng)用模塊可以根 據(jù)可靠下載判斷模塊判斷出的通過可靠下載方式獲得的數(shù)據(jù)片產(chǎn)生種子,然 后,種子應(yīng)用模塊可以根據(jù)現(xiàn)有的多種種子應(yīng)用方式進(jìn)行后續(xù)的操作。
當(dāng)上述數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息以文件的形式存儲(chǔ)在存儲(chǔ)模 塊310中時(shí),可以靈活地安排數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的存儲(chǔ)位置, 具體如上述實(shí)施例的描述。
當(dāng)上述數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息以文件的形式存儲(chǔ)在存儲(chǔ)模 塊310中時(shí),存儲(chǔ)模塊310存儲(chǔ)的文件頭中還可以包括文件類型標(biāo)志、保留字段 和版本號(hào)中的任意一個(gè)或任意多個(gè)。文件類型標(biāo)志可以表示出該文件為存儲(chǔ)有 數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息的文件。保留字段可以設(shè)置為空,以備后 續(xù)對(duì)文件進(jìn)行擴(kuò)展時(shí)使用。版本號(hào)可以表示出下載系統(tǒng)(如P2P系統(tǒng))的版本 信息,該版本信息可以在查看下載系統(tǒng)版本或者下載系統(tǒng)升級(jí)等情況下使用。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明 可借助軟件加必需的硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以全部通過石更件來實(shí) 施,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案對(duì)背景技術(shù)做出貢獻(xiàn)的全部或者部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若 干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備 等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。雖然通過實(shí)施例描繪了本發(fā)明,本領(lǐng)域普通技術(shù)人員知道,本發(fā)明有許多 變形和變化而不脫離本發(fā)明的精神,本發(fā)明的申請(qǐng)文件的權(quán)利要求包括這些變 形和變化。
權(quán)利要求
1、一種下載方法,其特征在于,包括下載方存儲(chǔ)有數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息;下載方根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的數(shù)據(jù)片,并針對(duì)所述處于下載過程中的數(shù)據(jù)片,根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信息確定出未下載的小片數(shù)據(jù);下載方針對(duì)所述未下載的小片數(shù)據(jù)進(jìn)行下載。
2、 如權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)片下載信息包括 數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下載數(shù)據(jù)量;且所述下載方根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下 載信息確定出處于下載過程中的數(shù)據(jù)片包括下載方根據(jù)所述數(shù)據(jù)片數(shù)量從相應(yīng)的存儲(chǔ)位置獲取各數(shù)據(jù)片已下載數(shù)據(jù) 量,并判斷所述數(shù)據(jù)片已下載數(shù)據(jù)量是否大于零且是否達(dá)到預(yù)定數(shù)據(jù)量,下載 方將數(shù)據(jù)片已下載數(shù)據(jù)量大于零且沒有達(dá)到預(yù)定數(shù)據(jù)量的數(shù)據(jù)片確定為處于 下載過程中的數(shù)據(jù)片。
3、 如權(quán)利要求2所述的方法,其特征在于,所述數(shù)據(jù)片下載信息還包括 數(shù)據(jù)片校驗(yàn)結(jié)果信息;且所述方法還包括針對(duì)已成功下載的數(shù)據(jù)片,下載方根據(jù)所述數(shù)據(jù)片校驗(yàn)結(jié)果信息確定出需 要重新下載的數(shù)據(jù)片,并針對(duì)所述需要重新下載的數(shù)據(jù)片進(jìn)行下載;和/或維護(hù)側(cè)從下載方獲取所述數(shù)據(jù)片校驗(yàn)結(jié)果信息,并根據(jù)所述數(shù)據(jù)片校驗(yàn)結(jié) 果信息對(duì)被下載數(shù)據(jù)進(jìn)行維護(hù)。
4、 如權(quán)利要求2所述的方法,其特征在于,所述數(shù)據(jù)片下載信息還包括 數(shù)據(jù)片下載方式信息;且所述方法還包括下載方根據(jù)所述數(shù)據(jù)片下載方式信息確定出通過可靠下載方式下載的數(shù) 據(jù)片,并根據(jù)所述通過可靠下載方式下載的數(shù)據(jù)片產(chǎn)生種子。
5、 如權(quán)利要求l所述的方法,其特征在于,所述小片數(shù)據(jù)下載信息包括 小片數(shù)量和各小片數(shù)據(jù)下載狀態(tài)信息;且所述根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信 息判斷未成功下載的小片數(shù)據(jù)包括下載方根據(jù)所述小片數(shù)量從相應(yīng)的存儲(chǔ)位置獲取小片數(shù)據(jù)下載狀態(tài)信息, 并根據(jù)所述獲取的小片數(shù)據(jù)下載狀態(tài)信息判斷未下載的小片數(shù)據(jù)。
6、 如權(quán)利要求5所述的方法,其特征在于,在小片數(shù)據(jù)已下載的情況下, 小片數(shù)據(jù)下載狀態(tài)信息表示出下載方式信息;且所述方法還包括下載方根據(jù)所述小片數(shù)據(jù)下載狀態(tài)信息確定出通過可靠下載方式下載的 小片數(shù)據(jù),并根據(jù)所述通過可靠下載方式下載的小片數(shù)據(jù)產(chǎn)生種子。
7、 如權(quán)利要求1至6中任一權(quán)利要求所述的方法,其特征在于,所述數(shù) 據(jù)片下載信息和小片數(shù)據(jù)下載信息存儲(chǔ)于文件內(nèi)容中,或者存儲(chǔ)于文件頭和文 件內(nèi)容中。
8、 如權(quán)利要求7所述的方法,其特征在于,所述文件頭還包括文件類 型標(biāo)志、保留字段和/或版本號(hào);下載信息的文件;所述版本號(hào)用于表示下載系統(tǒng)的版本信息。
9、 一種下載裝置,其特征在于,包括存儲(chǔ)模塊,用于存儲(chǔ)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息;判斷模塊,用于根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的數(shù)據(jù)片,針對(duì)所述處于下載過程中的數(shù)據(jù)片,根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信息判斷未下載的小片數(shù)據(jù);下載模塊,用于針對(duì)所述未下載的小片數(shù)據(jù)進(jìn)行下載。
10、 如權(quán)利要求9所述的裝置,其特征在于所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量和各數(shù)據(jù)片已下 載數(shù)據(jù)量;或者所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下 載數(shù)據(jù)量和數(shù)據(jù)片校驗(yàn)結(jié)果;或者所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下 載數(shù)據(jù)量和數(shù)據(jù)片下載方式信息;或者所述存儲(chǔ)模塊中存儲(chǔ)的數(shù)據(jù)片下載信息包括數(shù)據(jù)片數(shù)量、各數(shù)據(jù)片已下 載數(shù)據(jù)量、數(shù)據(jù)片校驗(yàn)結(jié)果和數(shù)據(jù)片下載方式信息;和/或,所述存儲(chǔ)模塊中存儲(chǔ)的小片數(shù)據(jù)下載信息包括小片數(shù)量和各小片數(shù)據(jù)下 載狀態(tài)信息。全文摘要
公開了下載方法和裝置。其中的下載方法包括下載方存儲(chǔ)有數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息,下載方根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的數(shù)據(jù)片,并針對(duì)所述處于下載過程中的數(shù)據(jù)片,根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信息確定出未下載的小片數(shù)據(jù),下載方針對(duì)所述未下載的小片數(shù)據(jù)進(jìn)行下載。其中下載裝置包括存儲(chǔ)模塊,用于存儲(chǔ)數(shù)據(jù)片下載信息和小片數(shù)據(jù)下載信息;判斷模塊,用于根據(jù)所述存儲(chǔ)的數(shù)據(jù)片下載信息確定出處于下載過程中的數(shù)據(jù)片,針對(duì)所述處于下載過程中的數(shù)據(jù)片,根據(jù)所述存儲(chǔ)的小片數(shù)據(jù)下載信息判斷未下載的小片數(shù)據(jù);下載模塊,用于針對(duì)所述未下載的小片數(shù)據(jù)進(jìn)行下載。上述技術(shù)方案可節(jié)約網(wǎng)絡(luò)傳輸資源、提高下載效率。
文檔編號(hào)H04L29/08GK101635742SQ20091009170
公開日2010年1月27日 申請(qǐng)日期2009年8月24日 優(yōu)先權(quán)日2009年8月24日
發(fā)明者陳良華 申請(qǐng)人:騰訊科技(深圳)有限公司