P2p下載任務(wù)調(diào)度方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種P2P下載任務(wù)調(diào)度方法及系統(tǒng),所述方法包括:將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊;對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序;根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量;根據(jù)可獲取的數(shù)據(jù)塊數(shù)量獲取計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入貢獻(xiàn)設(shè)備;將貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)價(jià)值進(jìn)行排序;以及每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并執(zhí)行對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序的步驟及其后續(xù)步驟。能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān)。
【專利說明】P2P下載任務(wù)調(diào)度方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種P2P下載任務(wù)調(diào)度方法及系統(tǒng)。
【背景技術(shù)】
[0002]端對(duì)端技術(shù)(peer-to-peer,簡(jiǎn)稱P2P)又稱對(duì)等互聯(lián)網(wǎng)絡(luò)技術(shù),其是依賴網(wǎng)絡(luò)中參與者的計(jì)算能力和帶寬,而不是把依賴都聚集在較少的幾臺(tái)服務(wù)器上的一種信息技術(shù)。
[0003]由于現(xiàn)有的下載任務(wù)交易系統(tǒng)中會(huì)存在大量的下載任務(wù),且這些下載任務(wù)往往是有一定的時(shí)限,如果總是由P2P貢獻(xiàn)者手動(dòng)選擇下載任務(wù),P2P貢獻(xiàn)者無疑會(huì)無法跟上快速變化的下載任務(wù)節(jié)奏,這樣會(huì)給P2P貢獻(xiàn)者造成難以承受的負(fù)擔(dān),P2P貢獻(xiàn)者會(huì)因此降低下載任務(wù)的選擇率,進(jìn)而降低P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的空閑上行帶寬的利用率。為了充分發(fā)掘P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,亟需一種能夠自動(dòng)調(diào)度下載任務(wù)的P2P下載任務(wù)調(diào)度方法及系統(tǒng)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種P2P下載任務(wù)調(diào)度方法及系統(tǒng),能夠以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題,基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān),提高P2P貢獻(xiàn)者的收益。
[0005]為解決上述問題,本發(fā)明提供一種P2P下載任務(wù)調(diào)度方法,包括:
[0006]步驟一:將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊;
[0007]步驟二:對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序;
[0008]步驟三:根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量;
[0009]步驟四:根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備;
[0010]步驟五:將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)價(jià)值進(jìn)行排序;
[0011]步驟六:每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并重復(fù)執(zhí)行步驟二至六
[0012]進(jìn)一步的,在上述方法中,所述步驟二包括:
[0013]設(shè)置每個(gè)數(shù)據(jù)塊的屬性;
[0014]統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量;
[0015]根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序。
[0016]進(jìn)一步的,在上述方法中,所述數(shù)據(jù)塊的屬性包括貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)。
[0017]進(jìn)一步的,在上述方法中,根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)數(shù)據(jù)塊進(jìn)行計(jì)分的步驟中采用下述公式進(jìn)行計(jì)分:
[0018]計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log(貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量。
[0019]進(jìn)一步的,在上述方法中,所述步驟五中按照每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)。
[0020]根據(jù)本發(fā)明的另一面,提供一種P2P下載任務(wù)調(diào)度系統(tǒng),包括:
[0021]調(diào)度中心模塊,用于將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊;
[0022]計(jì)分排序模塊,用于對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序;
[0023]容量模塊,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量;
[0024]存儲(chǔ)模塊,用于根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊;
[0025]貢獻(xiàn)設(shè)備,用于存儲(chǔ)所述計(jì)分值靠前的數(shù)據(jù)塊;
[0026]價(jià)值排序模塊,用于將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)價(jià)值進(jìn)行排序;以及
[0027]刪除模塊,用于每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除。
[0028]進(jìn)一步的,在上述系統(tǒng)中,所述計(jì)分排序模塊包括:
[0029]屬性單元,用于設(shè)置每個(gè)數(shù)據(jù)塊的屬性;
[0030]貢獻(xiàn)設(shè)備數(shù)量單元,用于統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量;
[0031]計(jì)分排序單元,用于根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序。
[0032]進(jìn)一步的,在上述系統(tǒng)中,所述數(shù)據(jù)塊的屬性包括貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)。
[0033]進(jìn)一步的,在上述系統(tǒng)中,所述計(jì)分排序單元采用下述公式進(jìn)行計(jì)分:
[0034]計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log(貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量。
[0035]進(jìn)一步的,在上述系統(tǒng)中,所述價(jià)值排序模塊按照每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)。
[0036]與現(xiàn)有技術(shù)相比,本發(fā)明通過將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊,可以實(shí)現(xiàn)以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題。
[0037]另外,本發(fā)明通過對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量,根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備,將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)所述價(jià)值進(jìn)行排序,每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并執(zhí)行根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量的步驟及其后續(xù)步驟,能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān),提高P2P貢獻(xiàn)者的收益。
【專利附圖】
【附圖說明】[0038]圖1是本發(fā)明實(shí)施例一的P2P下載任務(wù)調(diào)度方法的流程圖;
[0039]圖2是本發(fā)明實(shí)施例二的P2P下載任務(wù)調(diào)度方法的流程圖;
[0040]圖3是本發(fā)明實(shí)施例三的P2P下載任務(wù)調(diào)度方法的流程圖;
[0041]圖4是本發(fā)明實(shí)施例四的P2P下載任務(wù)調(diào)度系統(tǒng)的模塊示意圖。
【具體實(shí)施方式】
[0042]為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0043]實(shí)施例一
[0044]如圖1所示,本發(fā)明提供一種P2P下載任務(wù)調(diào)度方法,包括:
[0045]步驟S11,將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊,具體的,所有待下載數(shù)據(jù),以數(shù)據(jù)塊為調(diào)度單位,一個(gè)數(shù)據(jù)塊的大小可以設(shè)置為64MB或其他根據(jù)運(yùn)營(yíng)經(jīng)驗(yàn)證實(shí)更有效的數(shù)據(jù)塊大小,整個(gè)調(diào)度體系的數(shù)據(jù)塊大小相同,這樣可以把數(shù)據(jù)量大的下載任務(wù)分解成多個(gè)數(shù)據(jù)塊來參加調(diào)度;
[0046]步驟S12,對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序;
[0047]步驟S13,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量(capacity);
[0048]步驟S14,根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備,即每個(gè)貢獻(xiàn)設(shè)備可從數(shù)據(jù)塊調(diào)度中心獲取當(dāng)前排名最靠前的capacity個(gè)數(shù)據(jù)塊;
[0049]步驟S15,將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)所述價(jià)值進(jìn)行排序;
[0050]步驟S16,每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并重新執(zhí)行步驟S2及其后續(xù)步驟,具體的,可每隔一個(gè)預(yù)設(shè)時(shí)間,如30分鐘,從所述貢獻(xiàn)設(shè)備上的數(shù)據(jù)塊中剔除價(jià)值最低的數(shù)據(jù)塊和所有價(jià)值為零的數(shù)據(jù)塊,而后再?gòu)臄?shù)據(jù)塊的調(diào)度中心請(qǐng)求下載相應(yīng)數(shù)量的新的待傳輸?shù)臄?shù)據(jù)塊到貢獻(xiàn)設(shè)備來補(bǔ)足貢獻(xiàn)設(shè)備的容量空間,除非數(shù)據(jù)塊的調(diào)度中心沒有待調(diào)度的數(shù)據(jù)塊,否則所有貢獻(xiàn)設(shè)備都能自動(dòng)獲得待傳輸?shù)臄?shù)據(jù)塊。
[0051]本實(shí)施例中,實(shí)現(xiàn)以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題,另外,能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān)。
[0052]實(shí)施例二
[0053]如圖2所示,本發(fā)明提供另一種P2P下載任務(wù)調(diào)度方法,本實(shí)施例與實(shí)施例二的區(qū)別在于本實(shí)施例中根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,從而計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性進(jìn)行調(diào)整,包括:
[0054]步驟S21,將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊,具體的,所有待下載數(shù)據(jù),以數(shù)據(jù)塊為調(diào)度單位。一個(gè)數(shù)據(jù)塊的大小可以設(shè)置為64MB,或其他根據(jù)運(yùn)營(yíng)經(jīng)驗(yàn)證實(shí)更有效的數(shù)據(jù)塊大小,整個(gè)調(diào)度體系的數(shù)據(jù)塊大小相同,這樣可以把數(shù)據(jù)量大的下載任務(wù)分解成多個(gè)數(shù)據(jù)塊來參加調(diào)度;
[0055]步驟S22,設(shè)置每個(gè)數(shù)據(jù)塊的屬性;
[0056]步驟S23,統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量;
[0057]步驟S24,根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,從而計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性進(jìn)行調(diào)整;
[0058]步驟S25,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量(capacity);
[0059]步驟S26,根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備,即每個(gè)貢獻(xiàn)設(shè)備可從數(shù)據(jù)塊調(diào)度中心獲取當(dāng)前排名最靠前的capacity個(gè)數(shù)據(jù)塊;
[0060]步驟S27,將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)所述價(jià)值進(jìn)行排序;
[0061]步驟S28,每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并重新執(zhí)行步驟S22及其后續(xù)步驟,具體的,可每隔一個(gè)預(yù)設(shè)時(shí)間,如30分鐘,從所述貢獻(xiàn)設(shè)備上的數(shù)據(jù)塊中剔除價(jià)值最低的數(shù)據(jù)塊和所有價(jià)值為零的數(shù)據(jù)塊,而后再?gòu)臄?shù)據(jù)塊的調(diào)度中心請(qǐng)求下載相應(yīng)數(shù)量的新的待傳輸?shù)臄?shù)據(jù)塊到貢獻(xiàn)設(shè)備來補(bǔ)足貢獻(xiàn)設(shè)備的容量空間,除非數(shù)據(jù)塊的調(diào)度中心沒有待調(diào)度的數(shù)據(jù)塊,否則所有貢獻(xiàn)設(shè)備都能自動(dòng)獲得待傳輸?shù)臄?shù)據(jù)塊。
[0062]本實(shí)施例中,實(shí)現(xiàn)以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題,另外,計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性進(jìn)行調(diào)整,此夕卜,能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān)。
[0063]實(shí)施例三
[0064]如圖3所示,本發(fā)明提供另一種P2P下載任務(wù)調(diào)度方法,本實(shí)施例與實(shí)施例三的區(qū)別在于本實(shí)施例中根據(jù)計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log (貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量的公式進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,從而計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)進(jìn)行調(diào)整,包括:
[0065]步驟S31,將所有下載任務(wù)分解成若干固定大小(blocks)的數(shù)據(jù)塊,具體的,所有待下載數(shù)據(jù),以數(shù)據(jù)塊為調(diào)度單位。一個(gè)數(shù)據(jù)塊的大小可以設(shè)置為64MB,或其他根據(jù)運(yùn)營(yíng)經(jīng)驗(yàn)證實(shí)更有效的數(shù)據(jù)塊大小,整個(gè)調(diào)度體系的數(shù)據(jù)塊大小相同,這樣可以把數(shù)據(jù)量大的下載任務(wù)分解成多個(gè)數(shù)據(jù)塊來參加調(diào)度;
[0066]步驟S32,設(shè)置每個(gè)數(shù)據(jù)塊的屬性,所述數(shù)據(jù)塊的屬性包括貢獻(xiàn)時(shí)限(deadline)、凈貢獻(xiàn)流量標(biāo)價(jià)(price)和優(yōu)選級(jí)(priority),具體的,可將貢獻(xiàn)時(shí)限設(shè)置為一數(shù)據(jù)塊到期的秒數(shù),最多可將一數(shù)據(jù)塊的貢獻(xiàn)時(shí)限設(shè)置為30天,即該數(shù)據(jù)塊在30天*24小時(shí)*60分*60秒=2592000秒后到期,可將凈貢獻(xiàn)流量標(biāo)價(jià)的單位設(shè)置為元/bit,可將優(yōu)先級(jí)設(shè)置為I至10的整數(shù);
[0067]步驟S33,統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量(provider);[0068]步驟S34,根據(jù)下述公式對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,
[0069]計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log(貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量
[0070]即,計(jì)分值=price*log(prority) /log (deadline) /provider
[0071]并將已過時(shí)的數(shù)據(jù)塊計(jì)分為零,從而計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)進(jìn)行調(diào)整;
[0072]步驟S35,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量(capacity);
[0073]步驟S36,根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備,即每個(gè)貢獻(xiàn)設(shè)備可從數(shù)據(jù)塊調(diào)度中心獲取當(dāng)前排名最靠前的capacity個(gè)數(shù)據(jù)塊;
[0074]步驟S37,按照貢獻(xiàn)設(shè)備的每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)所述價(jià)值進(jìn)行排序,即按照每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊從開始下載到刪除期間進(jìn)行價(jià)值統(tǒng)計(jì),即進(jìn)行總收益統(tǒng)計(jì),已過時(shí)的數(shù)據(jù)塊,價(jià)值為零;
[0075]步驟S38,每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并重新執(zhí)行步驟S32及其后續(xù)步驟,具體的,可每隔一個(gè)預(yù)設(shè)時(shí)間,如30分鐘,從所述貢獻(xiàn)設(shè)備上的數(shù)據(jù)塊中剔除價(jià)值最低的數(shù)據(jù)塊和所有價(jià)值為零的數(shù)據(jù)塊,而后再?gòu)臄?shù)據(jù)塊的調(diào)度中心請(qǐng)求下載相應(yīng)數(shù)量的新的待傳輸?shù)臄?shù)據(jù)塊到貢獻(xiàn)設(shè)備來補(bǔ)足貢獻(xiàn)設(shè)備的容量空間,除非數(shù)據(jù)塊的調(diào)度中心沒有待調(diào)度的數(shù)據(jù)塊,否則所有貢獻(xiàn)設(shè)備都能自動(dòng)獲得待傳輸?shù)臄?shù)據(jù)塊。
[0076]本實(shí)施例中,實(shí)現(xiàn)以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題,另外,計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)進(jìn)行調(diào)整,此外,能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān)。
[0077]實(shí)施例四
[0078]如圖4所示,本發(fā)明還提供另一種P2P下載任務(wù)調(diào)度系統(tǒng),包括調(diào)度中心模塊1、計(jì)分排序模塊2、容量模塊3、存儲(chǔ)模塊4、貢獻(xiàn)設(shè)備5和價(jià)值排序模塊6。
[0079]調(diào)度中心模塊I用于將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊。具體的,所有待下載數(shù)據(jù),以數(shù)據(jù)塊為調(diào)度單位。一個(gè)數(shù)據(jù)塊的大小可以設(shè)置為64MB,或其他根據(jù)運(yùn)營(yíng)經(jīng)驗(yàn)證實(shí)更有效的數(shù)據(jù)塊大小,整個(gè)調(diào)度體系的數(shù)據(jù)塊大小相同,這樣可以把數(shù)據(jù)量大的下載任務(wù)分解成多個(gè)數(shù)據(jù)塊來參加調(diào)度。
[0080]計(jì)分排序模塊2用于對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序。
[0081]優(yōu)選的,所述計(jì)分排序模塊2包括:
[0082]屬性單元21用于設(shè)置每個(gè)數(shù)據(jù)塊的屬性;
[0083]貢獻(xiàn)設(shè)備數(shù)量單元22用于統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量;
[0084]計(jì)分排序單元23用于根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,從而計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性進(jìn)行調(diào)整。[0085]較佳的,所述數(shù)據(jù)塊的屬性包括貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)。
[0086]較佳的,所述計(jì)分排序單元23采用下述公式進(jìn)行計(jì)分:
[0087]計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log(貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量,從而計(jì)分值可以依據(jù)貢獻(xiàn)設(shè)備數(shù)量和貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)進(jìn)行調(diào)整。
[0088]容量模塊3根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量。
[0089]存儲(chǔ)模塊4用于根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊。
[0090]貢獻(xiàn)設(shè)備5用于存儲(chǔ)所述計(jì)分值靠前的數(shù)據(jù)塊。
[0091]價(jià)值排序模塊6用于將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)所述價(jià)值進(jìn)行排序。
[0092]優(yōu)選的,所述價(jià)值排序模塊6按照每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)。
[0093]刪除模塊7用于每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并通知所述計(jì)分排序模塊2、容量模塊3、存儲(chǔ)模塊4、貢獻(xiàn)設(shè)備5和價(jià)值排序模塊6運(yùn)行,以請(qǐng)求下載相應(yīng)數(shù)量的新的待傳輸?shù)臄?shù)據(jù)塊到貢獻(xiàn)設(shè)備來補(bǔ)足貢獻(xiàn)設(shè)備的容量空間。具體的,可每隔一個(gè)預(yù)設(shè)時(shí)間,如30分鐘,從所述貢獻(xiàn)設(shè)備上的數(shù)據(jù)塊中剔除價(jià)值最低的數(shù)據(jù)塊和所有價(jià)值為零的數(shù)據(jù)塊,而后再?gòu)臄?shù)據(jù)塊的調(diào)度中心請(qǐng)求下載相應(yīng)數(shù)量的新的待傳輸?shù)臄?shù)據(jù)塊到貢獻(xiàn)設(shè)備來補(bǔ)足貢獻(xiàn)設(shè)備的容量空間,除非數(shù)據(jù)塊的調(diào)度中心沒有待調(diào)度的數(shù)據(jù)塊,否則所有貢獻(xiàn)設(shè)備都能自動(dòng)獲得待傳輸?shù)臄?shù)據(jù)塊。
[0094]本實(shí)施例中,實(shí)現(xiàn)以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題,另外,能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān)。
[0095]綜上所述,本發(fā)明通過將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊,可以實(shí)現(xiàn)以數(shù)據(jù)塊為調(diào)度單位,而不是以下載任務(wù)為單位,充分利用P2P貢獻(xiàn)者的貢獻(xiàn)設(shè)備的儲(chǔ)存容量,解決了下載任務(wù)數(shù)據(jù)量過大,貢獻(xiàn)設(shè)備無法完全容納整個(gè)下載任務(wù)數(shù)據(jù)的問題。
[0096]另外,本發(fā)明通過對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量,根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備,將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)所述價(jià)值進(jìn)行排序,每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并執(zhí)行根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量的步驟及其后續(xù)步驟,能夠基于固定尺寸數(shù)據(jù)塊對(duì)P2P下載任務(wù)的進(jìn)行自適應(yīng)的、全自動(dòng)的調(diào)度,充分發(fā)掘P2P貢獻(xiàn)者的空閑上行帶寬,降低P2P貢獻(xiàn)者的準(zhǔn)入門檻,最大限度地降低P2P貢獻(xiàn)者的負(fù)擔(dān),提高P2P貢獻(xiàn)者的收益。
[0097]本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)于實(shí)施例公開的系統(tǒng)而言,由于與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法部分說明即可。
[0098]專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0099]顯然,本領(lǐng)域的技術(shù)人員可以對(duì)發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包括這些改動(dòng)和變型在內(nèi)。
【權(quán)利要求】
1.一種P2P下載任務(wù)調(diào)度方法,其特征在于,包括: 步驟一:將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊; 步驟二:對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序; 步驟三:根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量; 步驟四:根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊并將其存儲(chǔ)入所述貢獻(xiàn)設(shè)備; 步驟五:將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)價(jià)值進(jìn)行排序; 步驟六:每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除,并重復(fù)執(zhí)行步驟二至六。
2.如權(quán)利要求1所述的P2P下載任務(wù)調(diào)度方法,其特征在于,所述步驟二包括: 設(shè)置每個(gè)數(shù)據(jù)塊的屬性; 統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量; 根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序。
3.如權(quán)利要求2所述的P2P下載任務(wù)調(diào)度方法,其特征在于,所述數(shù)據(jù)塊的屬性包括貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)。
4.如權(quán)利要求3所述的P2P下載任務(wù)調(diào)度方法,其特征在于,根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)數(shù)據(jù)塊進(jìn)行計(jì)分的步驟中采用下述公式進(jìn)行計(jì)分: 計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log (貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量。
5.如權(quán)利要求3所述的P2P下載任務(wù)調(diào)度方法,其特征在于,所述步驟五中按照每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)。
6.一種P2P下載任務(wù)調(diào)度系統(tǒng),其特征在于,包括: 調(diào)度中心模塊,用于將所有下載任務(wù)分解成若干固定大小的數(shù)據(jù)塊; 計(jì)分排序模塊,用于對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序; 容量模塊,根據(jù)貢獻(xiàn)設(shè)備的容量確定可獲取的數(shù)據(jù)塊數(shù)量; 存儲(chǔ)模塊,用于根據(jù)所述可獲取的數(shù)據(jù)塊數(shù)量獲取所述計(jì)分值靠前的數(shù)據(jù)塊; 貢獻(xiàn)設(shè)備,用于存儲(chǔ)所述計(jì)分值靠前的數(shù)據(jù)塊; 價(jià)值排序模塊,用于將所述貢獻(xiàn)設(shè)備上的每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)并對(duì)價(jià)值進(jìn)行排序;以及 刪除模塊,用于每隔一預(yù)設(shè)時(shí)間將價(jià)值最低和價(jià)值為零的數(shù)據(jù)塊從所述貢獻(xiàn)設(shè)備上刪除。
7.如權(quán)利要求6所述P2P下載任務(wù)調(diào)度系統(tǒng),其特征在于,所述計(jì)分排序模塊包括: 屬性單元,用于設(shè)置每個(gè)數(shù)據(jù)塊的屬性; 貢獻(xiàn)設(shè)備數(shù)量單元,用于統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量; 計(jì)分排序單元,用于根據(jù)數(shù)據(jù)塊的當(dāng)前貢獻(xiàn)設(shè)備數(shù)量和數(shù)據(jù)塊的屬性對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行計(jì)分并對(duì)計(jì)分值進(jìn)行排序。
8.如權(quán)利要求7所述P2P下載任務(wù)調(diào)度系統(tǒng),其特征在于, 所述數(shù)據(jù)塊的屬性包括貢獻(xiàn)時(shí)限、凈貢獻(xiàn)流量標(biāo)價(jià)和優(yōu)選級(jí)。
9.如權(quán)利要求8所述P2P下載任務(wù)調(diào)度系統(tǒng),其特征在于,所述計(jì)分排序單元采用下述公式進(jìn)行計(jì)分: 計(jì)分值=凈貢獻(xiàn)流量標(biāo)價(jià)*log(優(yōu)選級(jí))/log (貢獻(xiàn)時(shí)限)/當(dāng)前貢獻(xiàn)設(shè)備數(shù)量。
10 .如權(quán)利要求8所述P2P下載任務(wù)調(diào)度系統(tǒng),其特征在于,所述價(jià)值排序模塊按照每個(gè)數(shù)據(jù)塊的貢獻(xiàn)量和凈貢獻(xiàn)流量標(biāo)價(jià)對(duì)每個(gè)數(shù)據(jù)塊進(jìn)行價(jià)值統(tǒng)計(jì)。
【文檔編號(hào)】H04L29/08GK103581259SQ201210275833
【公開日】2014年2月12日 申請(qǐng)日期:2012年8月3日 優(yōu)先權(quán)日:2012年8月3日
【發(fā)明者】王立 申請(qǐng)人:盛樂信息技術(shù)(上海)有限公司