專利名稱:一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行p2p下載的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明屬于下載技術(shù)領(lǐng)域,尤其涉及一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置和方法。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,P2P(Point to Point,點對點)下載已經(jīng)是一種非常流行的 應(yīng)用,以前的P2P下載主要是在電腦上進行,隨著消費類電子設(shè)備計算能力和網(wǎng)絡(luò)帶寬能 力的增強,P2P的應(yīng)用也開始在CE(消費類電子)設(shè)備上流行起來,以播放器為例,現(xiàn)代的媒 體播放器基本都集成了若干P2P下載的應(yīng)用,如迅雷,BT,電驢等等,有的甚至將所有的P2P 下載應(yīng)用都集成在一個設(shè)備上,任用戶選擇使用。有電雷、脫兔和Bitcomet等跨協(xié)議下載 軟件,可以一個文件同時用BT+eMule+Http+Ftp等來下載。目前,為了更快捷的下載內(nèi)容網(wǎng)絡(luò)資源,會采取下載速度檢測或優(yōu)化等方案,如中 國專利中請第200810304789. 4號公開了一種網(wǎng)絡(luò)下載方法,其通過下載任務(wù)限制、下載速 度檢測、下載任務(wù)優(yōu)先級、下載方式互訴、錯誤處理機制等方式更快捷的下載網(wǎng)絡(luò)資源,但 是,該下載方案存在以下缺陷不同的下載協(xié)議各有所長,這使得在下載某些資源時,在協(xié) 議A里效率最高,速度最快,但是另外一些資源就是在協(xié)議B中速度最快,即使是同樣的一 個媒體資源,可能前半部分在協(xié)議A組成的虛擬網(wǎng)絡(luò)中可以進行P2P交換的對象很多,后半 部分可能在協(xié)議B組成的虛擬網(wǎng)絡(luò)中下載得更加好,這樣就導(dǎo)致各種下載協(xié)議對不同資源 的下載能力無法得到最大程度的利用,從而影響整體的下載速度。
發(fā)明內(nèi)容
本發(fā)明提供了一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置和方法,旨在解決現(xiàn)有技 術(shù)不能最大程度的利用各種下載協(xié)議對不同資源的下載能力,從而影響整體下載速度的問題。本發(fā)明是這樣實現(xiàn)的一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置,包括存儲設(shè)備、 至少一下載客戶端、網(wǎng)絡(luò)探測器和任務(wù)分配器,所述存儲設(shè)備用于存儲下載客戶端下載的 網(wǎng)絡(luò)資源,所述網(wǎng)絡(luò)探測器和任務(wù)分配器分別與下載客戶端相連,所述網(wǎng)絡(luò)探測器用于檢 測并統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下載速度,所述任務(wù)分配器用于根據(jù)網(wǎng)絡(luò)探測器統(tǒng)計 的不同下載客戶端的網(wǎng)絡(luò)資源下載速度進行下載任務(wù)分工,所述下載客戶端用于根據(jù)任務(wù) 分配器分配的下載任務(wù)進行下載。本發(fā)明的技術(shù)方案還包括所述網(wǎng)絡(luò)探測器用于檢測是否已經(jīng)安裝好下載客戶 端,并在檢測到有至少一下載客戶端時,隨機挑選一個下載客戶端作為啟動器。本發(fā)明的技術(shù)方案還包括將用戶選擇下載的文件資源平均分成N等份切片,以 N等份切片文件資源為基礎(chǔ),將文件資源分為M個區(qū)域,作為啟動器的下載客戶端下載的與 所述M個區(qū)域的每個區(qū)域?qū)?yīng)的M份切片;所述網(wǎng)絡(luò)探測器收到作為啟動器的下載客戶端 下載的M個切片后,向全部的下載客戶端發(fā)出下載M個切片的請求。
本發(fā)明的技術(shù)方案還包括所述網(wǎng)絡(luò)檢測器進行計時,統(tǒng)計出下載各區(qū)域?qū)?yīng)的 M個切片最快的不同客戶端,并將統(tǒng)計結(jié)果發(fā)送給任務(wù)分配器。本發(fā)明采取的另一技術(shù)方案為一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,包括步驟a 用戶選擇下載網(wǎng)絡(luò)資源;步驟b 分別對每一個下載客戶端的下載速度進行計時,統(tǒng)計不同下載客戶端的 網(wǎng)絡(luò)資源下載速度;步驟c 根據(jù)每個下載客戶端的下載速度進行下載任務(wù)分工;步驟d 各下載客戶端根據(jù)分配的下載任務(wù)進行下載。本發(fā)明的技術(shù)方案還包括在所述步驟a與所述步驟b之間還進一步包括檢查 已經(jīng)安裝好的下載客戶端,當(dāng)檢測到有多個下載客戶端時,隨機挑選一個下載客戶端作為 啟動器。本發(fā)明的技術(shù)方案還包括在所述步驟a中,所述網(wǎng)絡(luò)資源為文件資源,所述步驟 b還包括將用戶選擇下載的文件資源平均分成N等份切片,以N等份切片文件資源為基 礎(chǔ),將文件資源分為M個區(qū)域,由下載客戶端分別進行下載。本發(fā)明的技術(shù)方案還包括所述步驟b還包括從M個區(qū)域中的每個區(qū)域隨機地 確定一個1/N的切片,并向作為啟動器的下載客戶端發(fā)送從M個區(qū)域中的每個區(qū)域下載確 定的1/N的切片的請求,作為啟動器的下載客戶端下載M個切片后,將下載結(jié)果返回給網(wǎng)絡(luò) 檢測器。本發(fā)明的技術(shù)方案還包括所述步驟b還進一步包括網(wǎng)絡(luò)檢測器收到M個切片 后,向全部的下載客戶端同時發(fā)送從M個區(qū)域中的每個區(qū)域下載確定的1/N個切片的請求, 統(tǒng)計出下載網(wǎng)絡(luò)資源各個切片速度最快的下載客戶端。本發(fā)明的技術(shù)方案還包括在所述步驟b中,統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下 載速度為對下載客戶端的下載速度進行多次統(tǒng)計,然后取平均值。本發(fā)明的技術(shù)方案具有如下優(yōu)點或有益效果本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下 載的裝置及方法將文件資源切割成不同的切片和區(qū)域,通過網(wǎng)絡(luò)探測器檢測網(wǎng)絡(luò)下載速 度,將文件各個區(qū)域的下載交給對應(yīng)的下載資源最豐富的P2P虛擬網(wǎng)絡(luò)去同步執(zhí)行,本發(fā) 明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置及方法將下載客戶端對資源的下載能力提升到最 大化的程度,最大限度的提高了整體的下載速度。
附圖1是本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置的結(jié)構(gòu)示意圖;附圖2是本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法的流程圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對 本發(fā)明進行進一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。請參閱圖1,是本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置的結(jié)構(gòu)示意圖。本發(fā)明 跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置包括存儲設(shè)備、至少一下載客戶端、網(wǎng)絡(luò)探測器和任務(wù)分配器。存儲設(shè)備用于存儲下載客戶端下載的網(wǎng)絡(luò)資源,網(wǎng)絡(luò)探測器和任務(wù)分配器分別 與下載客戶端相連,網(wǎng)絡(luò)探測器用于檢測并統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下載速度,任 務(wù)分配器用于根據(jù)網(wǎng)絡(luò)探測器統(tǒng)計的不同下載客戶端的網(wǎng)絡(luò)資源下載速度進行下載任務(wù) 分工,下載客戶端用于根據(jù)任務(wù)分配器分配的下載任務(wù)進行下載。在本發(fā)明實施方式中,跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置包括第一下載客戶 端、第二下載客戶端和第三下載客戶端,該等下載客戶端可以是迅雷、BT、電驢、PT等軟件, 其中,第一下載客戶端、第二下載客戶端和第三下載客戶端分別屬于不同的下載協(xié)議標(biāo)準(zhǔn), 由第一下載客戶端、第二下載客戶端和第三下載客戶端分別組成的P2P虛擬網(wǎng)絡(luò)彼此是相 互獨立的,例如,常見的一種情況是,同樣的一個下載資源,在虛擬網(wǎng)絡(luò)A中存在,在虛擬網(wǎng) 絡(luò)B中也同樣存在其中。第一下載客戶端、第二下載客戶端和第三下載客戶端連接存儲設(shè) 備,存儲設(shè)備用于存儲第一下載客戶端、第二下載客戶端和第三下載客戶端下載的網(wǎng)絡(luò)資 源,第一下載客戶端、第二下載客戶端和第三下載客戶端還分別與網(wǎng)絡(luò)探測器、任務(wù)分配器 相連。網(wǎng)絡(luò)探測器用于檢測是否已經(jīng)安裝好下載客戶端,并在檢測到有至少一下載客戶 端時,隨機挑選一個下載客戶端作為啟動器,使用隨機挑選的下載客戶端下載網(wǎng)絡(luò)資源的 若干切片;將用戶選擇下載的文件資源平均分成N等份切片,以N等份切片文件資源為基 礎(chǔ),將文件資源分為M個區(qū)域,作為啟動器的下載客戶端下載的與所述M個區(qū)域的每個區(qū)域 對應(yīng)的M份切片;隨機挑選的下載客戶端在M個區(qū)域中的每個區(qū)域隨機地確定一個1/N的 切片,將獲取M個區(qū)域中的每個區(qū)域隨機地1/N的切片的請求發(fā)給作為啟動器的下載客戶 端,作為啟動器的下載客戶端將切片下載返回給網(wǎng)絡(luò)探測器,網(wǎng)絡(luò)檢測器收到了 M個切片 后,將向全部的下載客戶端發(fā)出下載M個切片的請求,這里是指對每個下載客戶端都下載M 個切片;網(wǎng)絡(luò)檢測器進行計時,統(tǒng)計出下載M個切片速度最快的不同客戶端,其中,統(tǒng)計可 以進行多次,然后取平均值,例如假定M = 3,則第一下載客戶端、第二下載客戶端和第三下 載客戶端都同時下載Ml,M2,M3切片;統(tǒng)計出下載Ml切片最快的客戶端,下載M2切片最快 的客戶端,下載M3切片最快的客戶端。在本發(fā)明實施方式中,網(wǎng)絡(luò)探測器是探測模塊。任務(wù)分配器用于根據(jù)網(wǎng)絡(luò)探測器統(tǒng)計結(jié)果進行下載任務(wù)分工,將所下載切片對應(yīng) 的整個分區(qū)的下載任務(wù)分配給下載該切片速度最快的客戶端,例如,下載Ml切片速度最快 的為第一下載客戶端,那么Ml切片所在分區(qū)的下載任務(wù)則分配給第一下載客戶端,以此類 推,將整個文件資源的M個區(qū)域的下載任務(wù)在的各個下載客戶端分配完畢。當(dāng)然,下載同個 區(qū)域的切片速度最快的客戶端可能有多個客戶端的下載速度一樣,這時可以由任務(wù)分配器 隨機將任務(wù)分配給其中一個客戶端。請參閱圖2,是本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法的流程圖。本發(fā)明跨網(wǎng) 絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法包括用戶選擇下載網(wǎng)絡(luò)資源后,分別對每一個下載客戶 端的下載速度進行計時,統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下載速度;根據(jù)每個下載客戶端 的下載速度進行下載任務(wù)分工;各下載客戶端根據(jù)分配的下載任務(wù)進行下載。具體包括以 下步驟步驟10 用戶選擇下載網(wǎng)絡(luò)資源,其中網(wǎng)絡(luò)資源包括文件資源或非文件資源;步驟20 檢查已經(jīng)安裝好的下載客戶端,當(dāng)檢測到有多個客戶端時,隨機挑選一 個客戶端作為啟動器;
其中,下載載客戶端至少為一個,在本發(fā)明實施方式中,下載載客戶端包括第一下 載客戶端、第二下載客戶端和第三下載客戶端,該等下載客戶端可以是迅雷、BT、電驢、PT等 軟件,其中,第一下載客戶端、第二下載客戶端和第三下載客戶端分別屬于不同的下載協(xié)議 標(biāo)準(zhǔn),由第一下載客戶端、第二下載客戶端和第三下載客戶端分別組成的P2P虛擬網(wǎng)絡(luò)彼 此是相互獨立的,例如,常見的一種情況是,同樣的一個下載資源,在虛擬網(wǎng)絡(luò)A中存在,在 虛擬網(wǎng)絡(luò)B中也同樣存在其中。步驟30 將用戶選擇下載的文件資源平均分成N等份,以這個N等份為基礎(chǔ),將文 件資源分為M個區(qū)域;其中,文件資源的等份和區(qū)域可以根據(jù)文件資源的大小和下載客戶端的數(shù)量進行 劃分,M個區(qū)域有著按順序排列的起始地址和終點地址。步驟40 從M個區(qū)域中的每個區(qū)域隨機地確定一個1/N的切片,并向作為啟動器 的下載客戶端發(fā)送從M個區(qū)域中的每個區(qū)域下載確定的1/N的切片的請求;其中,每一個切片在整個文件資源中的起始地址和終點地址都是可以確定的。步驟50 作為啟動器的下載客戶端下載M個切片,并將下載結(jié)果返回給網(wǎng)絡(luò)檢測 器;步驟60 網(wǎng)絡(luò)檢測器收到了 M個切片后,向全部的下載客戶端同時發(fā)送下載M個 切片的請求;該步驟中,例如安裝有三個下載客戶端,則M= 3,那么同時向這三個下載客戶端 發(fā)送下載切片的請求,使三個下載客戶端都同時下載相同的3個切片,即第一下載客戶端、 第二下載客戶端、第三下載客戶端都同時下載M1、M2、M3切片。步驟70 分別對每一個下載客戶端的下載速度進行計時,統(tǒng)計出下載各個切片速 度最快的客戶端;該步驟中,假如有三個下載客戶端,則M = 3,分別統(tǒng)計出下載Ml切片最快的客戶 端,下載M2切片最快的客戶端和下載M3切片最快的客戶端,另外,也可以對下載客戶端的 下載速度進行多次統(tǒng)計,然后取平均值,這樣可以避免網(wǎng)絡(luò)波動對下載速度帶來的影響。步驟80 根據(jù)不同下載客戶端的下載速度進行下載任務(wù)分工,將所下載切片對應(yīng) 的整個區(qū)域的下載任務(wù)分配給下載該切片的客戶端;該步驟中,假設(shè)下載Ml切片速度最快的為第一下載客戶端,那么Ml切片所在分區(qū) 的下載任務(wù)則分配給第一下載客戶端,以此類推,將整個文件資源的M個區(qū)域的下載任務(wù) 向設(shè)備終端中的各個下載客戶端分配完畢。步驟90 各下載客戶端根據(jù)分配的下載任務(wù)進行下載。本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置及方法將文件資源切割成不同的切 片和區(qū)域,通過網(wǎng)絡(luò)探測器檢測網(wǎng)絡(luò)下載速度,將文件各個區(qū)域的下載交給對應(yīng)的下載資 源最豐富的P2P虛擬網(wǎng)絡(luò)去同步執(zhí)行,本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置及方法 將下載客戶端對資源的下載能力提升到最大化的程度,最大限度的提高了整體的下載速度。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置,包括存儲設(shè)備和至少一下載客戶端,所 述存儲設(shè)備用于存儲下載客戶端下載的網(wǎng)絡(luò)資源,其特征在于,還包括網(wǎng)絡(luò)探測器和任務(wù) 分配器,所述網(wǎng)絡(luò)探測器和任務(wù)分配器分別與下載客戶端相連,所述網(wǎng)絡(luò)探測器用于檢測 并統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下載速度,所述任務(wù)分配器用于根據(jù)網(wǎng)絡(luò)探測器統(tǒng)計的 不同下載客戶端的網(wǎng)絡(luò)資源下載速度進行下載任務(wù)分工,所述下載客戶端用于根據(jù)任務(wù)分 配器分配的下載任務(wù)進行下載。
2.根據(jù)權(quán)利要求1所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置,其特征在于,所述網(wǎng)絡(luò) 探測器用于檢測是否已經(jīng)安裝好下載客戶端,并在檢測到有至少一下載客戶端時,隨機挑 選一個下載客戶端作為啟動器。
3.根據(jù)權(quán)利要求2所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置,其特征在于,將用戶選 擇下載的文件資源平均分成N等份切片,以N等份切片文件資源為基礎(chǔ),將文件資源分為M 個區(qū)域,作為啟動器的下載客戶端下載的與所述M個區(qū)域的每個區(qū)域?qū)?yīng)的M份切片;所述 網(wǎng)絡(luò)探測器收到作為啟動器的下載客戶端下載的M個切片后,向全部的下載客戶端發(fā)出下 載M個切片的請求。
4.根據(jù)權(quán)利要求3所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置,其特征在于,所述網(wǎng)絡(luò) 檢測器進行計時,統(tǒng)計出下載各區(qū)域?qū)?yīng)的M個切片最快的不同客戶端,并將統(tǒng)計結(jié)果發(fā) 送給任務(wù)分配器。
5.一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,包括步驟a 用戶選擇下載網(wǎng)絡(luò)資源;步驟b:分別對每一個下載客戶端的下載速度進行計時,統(tǒng)計不同下載客戶端的網(wǎng)絡(luò) 資源下載速度;步驟c 根據(jù)每個下載客戶端的下載速度進行下載任務(wù)分工;步驟d 各下載客戶端根據(jù)分配的下載任務(wù)進行下載。
6.根據(jù)權(quán)利要求5所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,其特征在于,在所述步 驟a與所述步驟b之間還進一步包括檢查已經(jīng)安裝好的下載客戶端,當(dāng)檢測到有多個下載 客戶端時,隨機挑選一個下載客戶端作為啟動器。
7.根據(jù)權(quán)利要求6所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,其特征在于,在所述步 驟a中,所述網(wǎng)絡(luò)資源為文件資源,所述步驟b還包括將用戶選擇下載的文件資源平均分 成N等份切片,以N等份切片文件資源為基礎(chǔ),將文件資源分為M個區(qū)域,由下載客戶端分 別進行下載。
8.如權(quán)利要求7所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,其特征在于,所述步驟b 還包括從M個區(qū)域中的每個區(qū)域隨機地確定一個1/N的切片,并向作為啟動器的下載客戶 端發(fā)送從M個區(qū)域中的每個區(qū)域下載確定的1/N的切片的請求,作為啟動器的下載客戶端 下載M個切片后,將下載結(jié)果返回給網(wǎng)絡(luò)檢測器。
9.如權(quán)利要求8所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,其特征在于,所述步驟b 還進一步包括網(wǎng)絡(luò)檢測器收到M個切片后,向全部的下載客戶端同時發(fā)送從M個區(qū)域中的 每個區(qū)域下載確定的1/N個切片的請求,統(tǒng)計出下載網(wǎng)絡(luò)資源各個切片速度最快的下載客 戶端。
10.如權(quán)利要求5至9任一項所述的跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的方法,其特征在于,在所述步驟b中,統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下載速度為對下載客戶端的下載速 度進行多次統(tǒng)計,然后取平均值。
全文摘要
本發(fā)明屬于網(wǎng)絡(luò)下載技術(shù)領(lǐng)域,尤其涉及一種跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置和方法。本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置,包括存儲設(shè)備、至少一下載客戶端、網(wǎng)絡(luò)探測器和任務(wù)分配器,所述存儲設(shè)備用于存儲下載客戶端下載的網(wǎng)絡(luò)資源,所述網(wǎng)絡(luò)探測器和任務(wù)分配器分別與下載客戶端相連,所述網(wǎng)絡(luò)探測器用于檢測并統(tǒng)計不同下載客戶端的網(wǎng)絡(luò)資源下載速度,所述任務(wù)分配器用于根據(jù)網(wǎng)絡(luò)探測器統(tǒng)計的不同下載客戶端的網(wǎng)絡(luò)資源下載速度進行下載任務(wù)分工,所述下載客戶端用于根據(jù)任務(wù)分配器分配的下載任務(wù)進行下載。本發(fā)明的技術(shù)方案具有如下優(yōu)點或有益效果本發(fā)明跨網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)進行P2P下載的裝置及方法將下載客戶端對資源的下載能力提升到最大化的程度,最大限度的提高了整體的下載速度。
文檔編號H04L29/06GK102055805SQ20101061623
公開日2011年5月11日 申請日期2010年12月30日 優(yōu)先權(quán)日2010年12月30日
發(fā)明者孫翀 申請人:Tcl集團股份有限公司