本發(fā)明涉及移動互聯(lián)網(wǎng)技術領域,具體地說,本發(fā)明涉及一種面向移動智能終端的協(xié)同下載任務調度方法及系統(tǒng)。
背景技術:隨著流媒體在智能手機的應用越來越廣泛,智能手機用戶對于流媒體應用的需求越來越大。然而,由于當前的蜂窩網(wǎng)系統(tǒng)較為頻繁的鏈路波動以及較高的丟包率,單個智能手機的蜂窩網(wǎng)下載能力將很難提供高質量的流媒體資源以及保證流媒體播放的流暢。與此同時,隨著多樣化接口終端的不斷發(fā)展,當前幾乎所有主流的智能手機設備均具有蜂窩網(wǎng)絡接口(例如:3G/4G網(wǎng)絡接口)以及本地無線接口(例如:WiFi接口或藍牙接口)。多樣化接口使得智能手機同時具備了多種網(wǎng)絡連接方式,增加了數(shù)據(jù)獲取的途徑。結合上述的當前流媒體應用現(xiàn)狀,為了盡可能地保證流媒體應用較好的服務質量,有人提出了一種智能手機的協(xié)同下載方案。在該方案中,多個基于共同興趣,并且物理距離相鄰的智能手機,協(xié)同下載并相互分享同一個流媒體文件。比如在同一地點,多個距離相近的智能手機用戶想觀看同一個視頻。這些智能手機用戶將組成一個協(xié)同下載團體,每個智能手機設備同時使用其具有的蜂窩網(wǎng)絡接口與本地無線接口。通過蜂窩網(wǎng)絡接口從遠程的視頻服務器分別下載該視頻文件的不同數(shù)據(jù)塊,通過本地無線接口進行數(shù)據(jù)的共享。這種智能手機協(xié)同模式將會顯著地降低觀看視頻時中斷的概率,大大地提升智能手機流媒體應用的用戶體驗。然而,目前的協(xié)同下載方案還存在各種缺陷。例如:由于蜂窩網(wǎng)流量資費較為昂貴,為保證公平性,有的協(xié)同下載方案中智能手機需要在下載開始前加入到協(xié)同團體,并且各智能手機需要同時開始流媒體的下載,這導致該方案缺乏靈活性,實際使用中受到很大的限制。另一些協(xié)同下載方案雖然允許智能手機動態(tài)地加入?yún)f(xié)同團體,但它們容易導致各智能手機消耗的蜂窩網(wǎng)流量的差異巨大,所以也難以推廣。因此,當前迫切需要一種既能夠允許移動智能終端動態(tài)地加入?yún)f(xié)同團體,又能避免各移動智能終端消耗的蜂窩網(wǎng)流量差異過大的協(xié)同下載解決方案。
技術實現(xiàn)要素:本發(fā)明的任務是提供一種能夠克服上述缺陷的解決方案。為實現(xiàn)上述發(fā)明目的,本發(fā)明提供了一種面向移動智能終端的協(xié)同下載任務調度方法,包括下列步驟:1)根據(jù)協(xié)同下載的各移動智能終端的歷史下載量,確定各所述移動智能終端當前的下載任務量,以使得各所述移動智能終端的當前預期任務總量趨于均衡,所述移動智能終端的當前預期任務總量是該所述移動智能終端的歷史下載量與當前任務量之和;2)各所述移動智能終端根據(jù)步驟1)所確定的當前的下載任務量,通過蜂窩網(wǎng)鏈路下載相應資源,并通過本地無線網(wǎng)絡在協(xié)同下載的所述移動智能終端之間分享所下載的資源;3)重復步驟1)至2)直至下載完畢。其中,所述步驟1)還包括:根據(jù)調度模型求出使得目標函數(shù)最大且滿足約束條件的解,這個解作為當前進行協(xié)同下載的所述移動智能終端當前的任務量;所述調度模型的目標函數(shù)是所有進行協(xié)同下載的所述移動智能終端的收益函數(shù)的總和,移動智能終端的所述收益函數(shù)是以該移動智能終端的當前累計下載量為自變量的函數(shù)f,且該函數(shù)f具有一階導數(shù)單調遞減、二階導數(shù)為負的特性。其中,所述步驟1)還包括:所述調度模型的約束條件包括:各個進行協(xié)同下載的移動智能終端當前的任務量不超過該移動智能終端當前的蜂窩網(wǎng)鏈路下載能力。其中,由一個移動智能終端發(fā)起協(xié)同下載,發(fā)起協(xié)同下載的移動智能終端作為調度終端,所述步驟1)中,由所述調度終端根據(jù)調度模型求得每個當前進行協(xié)同下載的移動智能終端當前的任務量,并將其分配給每個當前進行協(xié)同下載的移動智能終端。其中,所述步驟1)中,所述函數(shù)f為log函數(shù)。其中,分成多個任務周期進行協(xié)同下載,每個任務周期均包括調度周期和下載周期,所述步驟1)包括下列子步驟:11)進入調度周期,設定當前的總任務量區(qū)間;12)根據(jù)調度模型求出使得目標函數(shù)最大且滿足約束條件的解,將所求得的解作為每個當前進行協(xié)同下載的所述移動智能終端當前的任務量;其中,所述約束條件還包括:各個當前進行協(xié)同下載的所述移動智能終端當前的任務量的總和處于所述步驟11)所設定的當前的總任務量區(qū)間之內。其中,所述步驟11)中,所述總任務量區(qū)間的上界與當前進行協(xié)同下載的所述移動智能終端的數(shù)目N正相關。其中,所述步驟11)中,所述總任務量區(qū)間的上界Δxmax為BvT×(1+ln(N)),其中N為當前進行協(xié)同下載的所述移動智能終端的數(shù)目,Bv為當前所下載的文件的比特率,T為播放所下載文件過程的一個周期的時長。其中,所述步驟11)中,所述總任務量區(qū)間的下界Δxmin為αBvT,其中N為當前進行協(xié)同下載的所述移動智能終端的數(shù)目,Bv為當前所下載的文件的比特率,T為播放所下載文件過程的一個周期的時長,α為大于1的調節(jié)系數(shù)。其中,所述步驟2)中,下載結束時記錄各個進行協(xié)同下載的所述移動智能終端的所完成的任務量,并更新各個進行協(xié)同下載的所述移動智能終端的歷史下載量。其中,所述調度模型采用KKT算法求解。其中,所述步驟11)中,所有協(xié)同下載的所述移動智能終端對于當前網(wǎng)絡狀況進行測試,獲取當前可用的下載鏈路速率信息并將其發(fā)送給調度終端。本發(fā)明還提供了一種面向移動智能終端的協(xié)同下載任務調度系統(tǒng),包括:蜂窩基站、調度裝置和與蜂窩基站連接的多個下載裝置;各下載裝置之間通過本地無線網(wǎng)絡互聯(lián),所述調度裝置與下載裝置互聯(lián);所述調度裝置,用于根據(jù)協(xié)同下載的各移動智能終端的歷史下載量,確定各所述移動智能終端當前的下載任務量,以使得各所述移動智能終端的當前預期任務總量趨于均衡,所述移動智能終端的當前預期任務總量是該所述移動智能終端的歷史下載量與當前任務量之和;所述下載裝置,用于使各所述移動智能終端根據(jù)調度裝置所確定的當前的下載任務量,通過蜂窩網(wǎng)鏈路下載相應資源,并通過本地無線網(wǎng)絡在協(xié)同下載的所述移動智能終端之間分享所下載的資源。與現(xiàn)有技術相比,本發(fā)明具有下列技術效果:1、本發(fā)明在有效提高移動智能終端的資源下載能力的同時,避免各移動智能終端消耗的蜂窩網(wǎng)流量差異過大。2、本發(fā)明中,各協(xié)同的移動智能終端能夠在文件協(xié)同下載的過程中動態(tài)地加入到協(xié)同團體中,不需要固定相同的加入時間,具有很強的靈活性。3、本發(fā)明能夠保證協(xié)同下載的視頻播放流暢,特別適合于流媒體的協(xié)同下載和播放。附圖說明以下,結合附圖來詳細說明本發(fā)明的實施例,其中:圖1示出了本發(fā)明一個實施例中所涉及的動態(tài)的流媒體協(xié)同場景;圖2示出了本發(fā)明一個實施例中確定各協(xié)同終端任務量的方法的流程圖;圖3示出了本發(fā)明一個實施例中調度終端獲取其他協(xié)同終端的鏈路信息的示意圖;圖4示出了本發(fā)明一個實施例中調度終端向各普通協(xié)同終端發(fā)送相應的任務量信息,以及各普通協(xié)同終端向調度終端提交實際所完成的下載量信息的示意圖;圖5示出了當整個協(xié)同過程結束之后,9個隨機加入的協(xié)同終端(包括最初協(xié)同的調度終端)各自蜂窩網(wǎng)的數(shù)據(jù)下載量;圖6示出了整個協(xié)同過程中協(xié)同團體從蜂窩網(wǎng)下載數(shù)據(jù)總量隨時間變化的曲線;圖7示出了整個協(xié)同過程中協(xié)同終端蜂窩網(wǎng)下載數(shù)據(jù)量的詳細變化。具體實施方式根據(jù)本發(fā)明的一個實施例,針對動態(tài)的流媒體協(xié)同場景,提供了一種面向移動智能終端的協(xié)同下載任務調度方法。圖1示出了本實施例的面向移動智能終端的協(xié)同下載的一個應用場景。該場景中包括普通協(xié)同終端和調度終端。圖1中A為調度終端,它在時刻t1發(fā)起協(xié)同下載,它負責信息收集、決策計算以及任務分配相關的操作,同時在協(xié)同下載的過程中它也作為協(xié)同終端使用,可以看做一個特殊的協(xié)同終端。B、C、D、E則作為分別于協(xié)同下載過程的不同時刻t2、t3、t4、t5分別加入?yún)f(xié)同團體的協(xié)同終端。在協(xié)同下載過程中所有的協(xié)同終端(包括普通協(xié)同終端以及執(zhí)行協(xié)同下載任務的調度終端)均通過蜂窩網(wǎng)絡接口(3G)連接視頻服務器進行對應視頻數(shù)據(jù)塊的下載,然后再通過本地連接(WiFi)與協(xié)同團體中其余協(xié)同終端進行所下載視頻數(shù)據(jù)的分享傳輸?;谏鲜雒嫦蛞苿又悄芙K端的協(xié)同下載任務調度系統(tǒng),還提供了一種流媒體協(xié)同下載任務調度的方法,該方法包括以下步驟:步驟1:協(xié)同下載發(fā)起時,由整個流媒體協(xié)同的發(fā)起者充當協(xié)同團體的調度終端,該調度終端請求得到本次協(xié)同下載的視頻信息,具體過程包括以下幾步:步驟11:調度終端構造視頻文件信息請求消息,并發(fā)送給遠程視頻服務器;其中請求消息可以通過標準的報文格式來實現(xiàn),其消息格式如下面表1所示:表1請求消息類型視頻文件ID其中,請求消息類型用于標識該消息為請求視頻文件的消息。視頻文件ID用于標識視頻文件,本實施例中采用視頻文件的128位的哈希編碼作為視頻文件ID。步驟12,視頻服務器接收到調度終端請求消息,然后向該調度終端發(fā)送應答消息,消息格式如表2所示:表2回復消息類型視頻文件大小視頻文件數(shù)據(jù)塊數(shù)目視頻文件解碼率其中回復消息類型標識該消息為回復視頻文件請求的消息類型,視頻文件大小表示該視頻文件的尺寸大小,由于視頻文件通常劃分成等長的數(shù)據(jù)塊,視頻文件數(shù)據(jù)塊數(shù)目表示該視頻文件由多少個等長數(shù)據(jù)塊組成,視頻文件解碼率表示單位時間內播放視頻數(shù)據(jù)的大小。步驟13:調度終端將服務器返回的信息提取之后,即維護該視頻文件的數(shù)據(jù)塊隊列,包含已下載的數(shù)據(jù)塊隊列以及未下載的數(shù)據(jù)塊隊列。當相應的數(shù)據(jù)塊下載完成之后,這個數(shù)據(jù)塊就從未下載數(shù)據(jù)塊隊列轉移到已下載數(shù)據(jù)塊隊列。完成步驟1后,協(xié)同團體開始通過多個任務周期來下載所需的視頻文件。每個任務周期均包括調度周期和下載周期。任務周期、調度周期和下載周期的時長可以固定,也可以根據(jù)需要靈活調整,這是本領域技術人員易于理解的。任務周期中,協(xié)同團體中的所有終端同步,即所有終端在同一時刻進入調度周期或下載周期。步驟2:協(xié)同團體進入調度周期。調度周期中,調度終端根據(jù)各協(xié)同終端對當前視頻的歷史下載量和當前鏈路狀態(tài)(例如當前鏈路下載速率),基于調度模型確定各協(xié)同終端在當前下載周期的下載任務量,其中各協(xié)同終端的歷史下載量根據(jù)各協(xié)同終端在各下載周期結束時的實際統(tǒng)計的下載量得出。下載周期中,各協(xié)同終端根據(jù)調度終端所確定的下載任務量從蜂窩網(wǎng)下載相應的數(shù)據(jù)塊,并在當前下載周期結束時統(tǒng)計本周期的實際下載數(shù)據(jù)量。根據(jù)本發(fā)明的一個實施例,參考圖2,調度周期中,確定各協(xié)同終端任務量的方法包括以下子步驟:步驟21:每個調度周期開始時,所有協(xié)同智能終端對于當前網(wǎng)絡狀況進行測試,獲取當前可用的下載鏈路速率信息;所有協(xié)同終端構造當前各自的鏈路狀態(tài)消息,并發(fā)送給調度終端,其消息格式如表3所示:表3請求消息類型當前鏈路下載速率其中圖3示出了調度終端獲取其他協(xié)同終端的鏈路信息的示意圖。步驟22:調度終端確定當前下載周期內整個協(xié)同團體的總下載任務量區(qū)間。在一個優(yōu)選實施例中,確定總下載任務量的過程具體包括下列子步驟:步驟221:根據(jù)步驟21收集到的所有協(xié)同終端的網(wǎng)絡狀態(tài)信息確定總體任務的下界。該下界值Δxmin為該周期內整個協(xié)同團體需要下載的最少任務量,以保證視頻播放的流暢。整個團體中協(xié)同終端的數(shù)目為N,針對該視頻比特率Bv,在周期T時間內的下界值Δxmin為αBvT。其中α為大于1的調節(jié)系數(shù),主要用于考慮到本地共享時數(shù)據(jù)傳輸?shù)难舆t,因此在總體最少下載任務量上做一定量的視頻緩存數(shù)據(jù),從而避免由于視頻數(shù)據(jù)塊的缺失造成播放的不流暢。參數(shù)α與周期長度T均可根據(jù)實際的網(wǎng)絡情況與所下載的視頻大小信息而定。較差的網(wǎng)絡環(huán)境可設置相對于較大的α值,而視頻文件較大的時候,可設置較大的周期長度T。步驟222:根據(jù)步驟21收集到的所有協(xié)同終端的網(wǎng)絡鏈路狀態(tài)信息確定總體任務的上界。該上界值Δxmax為該周期內整個協(xié)同團體需要下載的最多任務量。整個團體中協(xié)同終端的數(shù)目為N,針對該視頻比特率Bv,在周期T時間內的上界值Δxmax為BvT×(1+ln(N))。這樣可以基于協(xié)同者的數(shù)目動態(tài)地調整任務量的上界,使任務量的上界與協(xié)同者數(shù)目N正相關,這樣有利于合理地利用所有協(xié)同者的蜂窩網(wǎng)鏈路資源。需要說明的是,上述確定每個周期總下載任務量上界的方法不是唯一的,在其它實施例中也可以通過其它方法,確定任務量的上界,使其與協(xié)同者數(shù)目N正相關,這是本領域技術人員容易理解的。綜合上述步驟,在第i個調度周期,可以根據(jù)相應的實際網(wǎng)絡鏈路狀態(tài)信息確定該周期內總體下載任務的區(qū)間,其中表示在i周期內,協(xié)同終端r通過蜂窩網(wǎng)接口連接視頻服務器所完成的下載任務,總體下載任務的區(qū)間為:步驟23:調度終端確定該周期內整個協(xié)同團體中所有協(xié)同者各自的下載任務量。其中,調度終端本身也作為協(xié)同者之一,承擔相應的任務量。在確定協(xié)同者各自的下載任務量時,讓之前貢獻量大的節(jié)點后續(xù)任務相對較少,從而確保整個協(xié)同過程中所有協(xié)同者的公平性,防止各個協(xié)同者完成的視頻數(shù)據(jù)下載任務差異過大。根據(jù)本發(fā)明的一個實施例,其包括下列子步驟:步驟231:調度終端收集每個協(xié)同終端在過去的所有周期內所完成的累計下載任務量,該記錄以及步驟21收集到的所有協(xié)同終端的網(wǎng)絡鏈路狀態(tài)信息作為調度模型的輸入?yún)?shù),用于在下個調度周期計算各協(xié)同終端的在下一個周期的下載任務量。步驟232:根據(jù)步驟231中的輸入?yún)?shù),確定調度模型的約束條件,具體如下約束條件(其中S為整個協(xié)同過程中總體調度周期,R為當前周期中總體協(xié)同終端,Bl為協(xié)同終端所對應的蜂窩鏈路下載能力):當前周期的總任務量不大于預設的最大任務量,即:當前周期的總任務量不小于預設的最小任務量,即:當前周期的任務量不超過當前蜂窩鏈路的最大下載能力,即:當前周期的任務量不小于0,即:步驟233:定義協(xié)同終端所下載的視頻數(shù)據(jù)量為整個協(xié)同團體的收益,基于步驟232中的約束條件建立一個最大化收益的優(yōu)化模型,其目標函數(shù)即為每個協(xié)同終端所貢獻的收益,表示為收益函數(shù)為第r個協(xié)同者在第i個周期后的歷史下載量,即從首個周期到第i個周期的下載量之和。目標函數(shù)(優(yōu)化函數(shù))的形式如下:步驟234,由于考慮到公平性原則,需要保證各個協(xié)同終端在整個協(xié)同過程中所通過蜂窩網(wǎng)絡所下載的視頻數(shù)據(jù)差異盡可能小。此時定義的目標函數(shù)需要具備一階導數(shù)單調遞減、二階導數(shù)為負的特性,從而保證在整個協(xié)同過程中,后續(xù)加入的協(xié)同終端將會分擔之前加入?yún)f(xié)同終端的下載任務。因此采用log函數(shù)來表示目標函數(shù),故其具體的調度優(yōu)化模型的形式如下:基于以下的約束條件:當前周期的總任務量不超過預設的最大任務量,即:當前周期的總任務量不小于預設的最小任務量,即:當前周期的任務量不超過當前蜂窩鏈路的最大下載能力,即:當前周期的任務量不小于0,即:由于目標函數(shù)為嚴格的凸函數(shù),其約束條件的函數(shù)g均為嚴格的凹函數(shù),因此必然存在一個使得目標函數(shù)最大化且滿足所有的約束條件的最優(yōu)解x*。定義λi作為基于約束條件的拉格朗日算子,具體形式如下:步驟235:對步驟234中凸優(yōu)化的調度模型進行相應的形式變換,變換之后其對偶形式如下:再將其拆分成為兩個獨立的子問題,其具體形式如下:對于以上(14),(15)子問題均可運用較為常規(guī)的KKT(全稱為Karush–Kuhn–Tucker)算法進行求解,KKT算法是解決凸優(yōu)化的典型算法之一。步驟24:調度終端將每個周期內各個協(xié)同終端的下載任務分配給所有協(xié)同終端。分配過程具體包括以下子步驟:步驟241:調度終端根據(jù)步驟23中調度模型所計算的結果,將該周期內各個協(xié)同終端的詳細下載任務構造成相應的任務消息,發(fā)送給協(xié)同終端。其消息格式如表4所示:表4請求消息類型需要下載的視頻數(shù)據(jù)塊數(shù)目與編號步驟242:協(xié)同終端收到任務分配消息之后,即回復確認消息,其消息格式如表5所示:表5回復消息類型確認信息步驟25:協(xié)同終端進行該周期內的視頻數(shù)據(jù)的下載與分享。根據(jù)本發(fā)明的一個實施例,該過程包括下列子步驟:步驟251:協(xié)同終端根據(jù)任務分配消息中所確立的自己的下載任務,通過蜂窩網(wǎng)絡連接視頻服務器,對相應的視頻數(shù)據(jù)進行下載。步驟252:當下載完成之后,每個協(xié)同終端通過WiFi,在協(xié)同團體所組成的無線廣播域中進行視頻下載數(shù)據(jù)的分享傳輸。步驟26:下載周期結束時記錄各個協(xié)同終端任務完成的數(shù)據(jù)量。該過程具體包括下列子步驟:步驟261:協(xié)同終端將該周期內已完成的任務量發(fā)送給調度終端,其消息格式如表6所示:表6請求消息類型Type該周期所完成的任務量步驟262:調度終端收到該消息之后,提取其任務量字段并進行記錄。圖4示出了調度終端向各普通協(xié)同終端發(fā)送相應的任務量信息,以及各普通協(xié)同終端向調度終端提交實際所完成的下載量信息的示意圖。步驟27:返回步驟21進入下一個調度周期,直至協(xié)同下載結束。上述步驟21至步驟27周期性的進行。如果本周期內所有協(xié)同終端蜂窩網(wǎng)接口狀態(tài)不變,則不需要重新建立下載任務和協(xié)同終端接口的匹配關系;如果本周期內某個協(xié)同終端蜂窩網(wǎng)接口變?yōu)椴豢捎脿顟B(tài),將該調度周期內該協(xié)同終端未完成的視頻數(shù)據(jù)下載任務重新歸于視頻未下載的數(shù)據(jù)塊隊列;如果本周期內某個協(xié)同終端蜂窩網(wǎng)接口重新變?yōu)榭捎脿顟B(tài),將重新對該協(xié)同終端分配下載任務。可以看出,移動智能終端(智能手機)在整個協(xié)同過程中可以不受時間限制加入到協(xié)同團體中,隨即進行同一個視頻文件的協(xié)同下載與分享,因此上述調度方法能夠適應動態(tài)的流媒體協(xié)同場景。并且,上述實施例的調度方法中,在每個調度周期內具體的任務分配算法根據(jù)協(xié)同團體中每個協(xié)同者(包括調度終端和各協(xié)同終端)已下載的數(shù)據(jù)量、各個智能手機當前蜂窩網(wǎng)鏈路的狀態(tài),制定針對每個協(xié)同者下載任務量的決策方案,既考慮到了不同智能手機已完成任務量,又考慮到了蜂窩網(wǎng)下載能力的差異,在基于實際網(wǎng)絡環(huán)境的約束條件下,盡可能地實現(xiàn)公平的任務分配,使得在一次協(xié)同下載(即下載和分享一個視頻文件)完成之后,確保各智能手機協(xié)同者所消耗的蜂窩網(wǎng)流量的差異不大,從而達到一個相對公平的狀態(tài)。需要強調的是,在動態(tài)的流媒體協(xié)同場景中,各智能手機往往是在不同時刻陸續(xù)加入?yún)f(xié)同團體的,上述實施例的調度方法能夠很好地適應這種情形,使得協(xié)同下載完成時,不同時刻加入?yún)f(xié)同團體的智能手機使用蜂窩網(wǎng)的實際下載量都基本均衡,能夠避免各智能手機消耗的蜂窩網(wǎng)流量差異過大。另外,上述實施例的調度方法分周期調度的設計考慮到了無線網(wǎng)絡環(huán)境中速率頻繁波動的特性以及協(xié)同場景動態(tài)的特性。并且,通過設定每個周期的總任務量區(qū)間,可以有效地保證流媒體播放的流暢性。下面給出基于上述實施例的一個實驗。實驗參數(shù)設置如表7所示:表7參數(shù)描述參數(shù)取值協(xié)同終端數(shù)目9周期長度10s視頻數(shù)據(jù)塊大小64KB視頻大小256M視頻比特率256(KB/s)WCDMA176-224(KB/s)CDMA2000176-224(KB/s)TD-CDMA176-224(KB/s)實驗中9個協(xié)同終端具有3類不同的蜂窩網(wǎng)制式(WCDMA,CDMA2000,TD-CDMA),均隨機加入流媒體協(xié)同。每種制式的下載速率范圍大致如上表上所示。當完成整個協(xié)同過程之后,其統(tǒng)計結果如下:圖5示出了當整個協(xié)同過程結束之后,9個隨機加入的協(xié)同終端(包括最初協(xié)同的調度終端)各自蜂窩網(wǎng)的數(shù)據(jù)下載量。從圖中可以看出,盡管9個協(xié)同終端的蜂窩網(wǎng)制式不同且加入?yún)f(xié)同的時間不同,最終其蜂窩網(wǎng)的數(shù)據(jù)下載量幾乎相同。圖6示出了整個協(xié)同過程中協(xié)同團體從蜂窩網(wǎng)下載數(shù)據(jù)總量隨時間變化的曲線。其中實線代表的是當前蜂窩網(wǎng)連續(xù)下載的數(shù)據(jù)量,虛線代表的是流暢的標準(連續(xù)下載數(shù)據(jù)量等于視頻的解碼率,本發(fā)明中該模型已經(jīng)考慮到了本地傳輸?shù)难舆t)。從圖6可見,此時蜂窩網(wǎng)連續(xù)的數(shù)據(jù)下載量遠遠高于流暢度的基準線,并且之間的差值越來越大。則表明在整個協(xié)同過程中,視頻一直處于非常流暢的狀態(tài),這將大大提升用戶體驗。圖7示出了整個協(xié)同過程中協(xié)同終端蜂窩網(wǎng)下載數(shù)據(jù)量的詳細變化。從圖7中可以看出,當后續(xù)的協(xié)同終端用戶(第六、七、八用戶)加入之后,前面的協(xié)同終端用戶(第一、三、五)蜂窩網(wǎng)的數(shù)據(jù)下載量明顯減少。這也證明了本發(fā)明中調度模型將先前加入用戶的蜂窩網(wǎng)下載任務分擔給后續(xù)加入用戶,從而使得最終的整個協(xié)同過程各個協(xié)同用戶蜂窩網(wǎng)的下載量差異最小,從而提高公平性。需要說明的是,上述實施例所采用的調度模型并不是唯一的。對于未知量為各協(xié)同者(包括調度終端和各協(xié)同終端)本周期的任務量所組成的向量,目標函數(shù)具備一階導數(shù)單調遞減、二階導數(shù)為負的特性的調度模型,以當前鏈路狀態(tài)和預設的當前周期的總任務區(qū)間為約束條件,求使得目標函數(shù)最大化的解,即可得出各協(xié)同者本周期的任務量。這種調度方式可以保證在整個協(xié)同過程中,后續(xù)加入的協(xié)同終端將會分擔之前加入?yún)f(xié)同終端的下載任務。根據(jù)這個任務量進行調度,即可在動態(tài)的流媒體協(xié)同場景下(協(xié)同終端可在視頻下載過程中自由加入?yún)f(xié)同團體的應用場景),使得各協(xié)同者的實際下載量基本均衡,避免各協(xié)同者消耗的蜂窩網(wǎng)流量差異過大,從而兼顧了靈活性與公平性,有利于面向移動智能終端的協(xié)同下載的推廣。上述實施例中,調度終端本身作為一個特殊的協(xié)同終端,與其它普通協(xié)同終端一起通過蜂窩網(wǎng)基站下載視頻文件,與此同時,調度終端還用于在調度周期分配各協(xié)同終端(包括調度終端本身,以及其它普通協(xié)同終端)在當前下載周期的任務量,直至整個視頻文件下載完畢。需要說明的是,本發(fā)明的調度方法并不依賴于調度終端,該調度方法也可以在無線局域網(wǎng)內的服務器或其它設備上實現(xiàn)。例如,在一個實施例中,調度方法所涉及的動態(tài)的流媒體協(xié)同場景包括調度裝置和協(xié)同終端。調度裝置可以是服務器或是其它具有本地無線網(wǎng)絡的裝置。協(xié)同終端均通過蜂窩網(wǎng)基站接入3G網(wǎng)絡中,并與視頻服務器連接。各協(xié)同終端之間通過本地無線網(wǎng)絡互聯(lián)。上述本地無線網(wǎng)絡包括wifi網(wǎng)路或藍牙網(wǎng)絡。在協(xié)同下載過程中,通過蜂窩網(wǎng)絡接口從遠程的視頻服務器分別下載該視頻文件的不同數(shù)據(jù)塊,通過本地無線接口在調度終端和各普通協(xié)同終端之間進行數(shù)據(jù)的共享。調度裝置和各協(xié)同終端通過單跳廣播的傳輸方式和團體中其他終端進行數(shù)據(jù)的交換傳輸。另外,上述實施例分多個任務周期來下載視頻文件,本領域技術人員易于理解,本發(fā)明也可以分成多個任務段來下載視頻文件。例如,每個任務段下載一定數(shù)目的視頻文件數(shù)據(jù)塊,每個任務段均依次執(zhí)行調度步驟和下載步驟,通過多個任務段即可完成整個視頻文件的下載。每個任務段中,調度裝置用于分配每個協(xié)同終端的任務量,分配任務量的方法如下:調度步驟中,根據(jù)各協(xié)同終端對當前視頻的歷史下載量,確定各協(xié)同終端在當前任務段的下載任務量,使得各協(xié)同終端的當前預期任務總量趨于均衡,協(xié)同終端的當前預期任務總量是該協(xié)同終端的歷史下載量與當前任務量之和。其中各協(xié)同終端的歷史下載量根據(jù)各協(xié)同終端在下載步驟結束時的實際統(tǒng)計的下載量得出。協(xié)同終端用于根據(jù)調度終端所確定的下載任務量從蜂窩網(wǎng)下載相應的數(shù)據(jù)塊,并在當前下載步驟結束時統(tǒng)計本周期的實際下載數(shù)據(jù)量。每個協(xié)同終端所有下載步驟的實際下載數(shù)據(jù)量累加即可獲得該協(xié)同終端的歷史下載量。最后應說明的是,以上實施例僅用以描述本發(fā)明的技術方案而不是對本技術方法進行限制,本發(fā)明在應用上可以延伸為其它的修改、變化、應用和實施例,并且因此認為所有這樣的修改、變化、應用、實施例都在本發(fā)明的精神和教導范圍內。