專利名稱:一種基于數(shù)值微分的流量分配方法
技術(shù)領(lǐng)域:
本發(fā)明屬于信息傳播技術(shù)領(lǐng)域,尤其涉及一種應(yīng)用于多數(shù)據(jù)源網(wǎng)絡(luò)構(gòu)架環(huán)境下流調(diào)度方法中的基于數(shù)值微分的流量分配設(shè)計(jì)。
背景技術(shù):
在一個(gè)多數(shù)據(jù)源的網(wǎng)絡(luò)架構(gòu)中,多個(gè)流媒體數(shù)據(jù)源同時(shí)為一個(gè)客戶端節(jié)點(diǎn)提供流媒體數(shù)據(jù)。為了達(dá)到流調(diào)度的目的,必須有一個(gè)有效的流量分配方法給予支持,不同的流量分配方法將直接影響到最終流調(diào)度效果。
在目前多線程的文件傳輸過程中,雖然可以實(shí)現(xiàn)多數(shù)據(jù)源的文件傳輸,但卻無法實(shí)現(xiàn)根據(jù)各數(shù)據(jù)源的網(wǎng)絡(luò)特性、負(fù)載能力和傳輸性能等智能、精確地分配流量。同時(shí),傳統(tǒng)的文件傳輸均是將文件進(jìn)行分段拆分,一旦發(fā)生數(shù)據(jù)丟包現(xiàn)象,將可能導(dǎo)致傳輸?shù)倪B續(xù)丟包,從而嚴(yán)重影響前向糾錯(cuò)碼等糾錯(cuò)方式進(jìn)行數(shù)據(jù)恢復(fù)。至此,傳統(tǒng)的流量分配方法在智能流量分配、丟包處理和數(shù)據(jù)相關(guān)性方向都存在缺陷。
發(fā)明內(nèi)容
本發(fā)明的目的是提出一種基于數(shù)值微分的流量分配方法。該方法參考圖形學(xué)中的直線掃描轉(zhuǎn)換,可實(shí)現(xiàn)較為精確的流量分配。
本發(fā)明提出的一種基于數(shù)值微分的流量分配方法,其特征在于,將n個(gè)流媒體數(shù)據(jù)源將流媒體數(shù)據(jù)以RTP報(bào)文的形式發(fā)出,每一個(gè)RTP報(bào)文均有一個(gè)序號(hào)(sequencenumber),通過對(duì)RTP報(bào)文序號(hào)的劃分來實(shí)現(xiàn)對(duì)流媒體數(shù)據(jù)流量的分配;具體包括以下步驟(1)將RTP報(bào)文序列定義為一個(gè)序列{am=m+S0},m≥0∧m∈Z,式中,S0為該序列的起始序號(hào);(2)該n個(gè)流媒體數(shù)據(jù)源的不同網(wǎng)絡(luò)負(fù)載能力帶來的不均勻分配表示為該序列經(jīng)劃分后得到的各子序列元素個(gè)數(shù)的比例B1∶B2∶…∶Bn,劃分后的n個(gè)子序列為{ak(1)},···,{ak(n)},k∈Z+∪{0},]]>其中n為子序列的個(gè)數(shù)(一個(gè)流媒體數(shù)據(jù)源對(duì)應(yīng)一個(gè)子序列);(3)第i個(gè)子序列{ak(i)}為對(duì)應(yīng)第i個(gè)流媒體數(shù)據(jù)源需要向客戶端節(jié)點(diǎn)發(fā)送的RTP報(bào)文的序號(hào)。
上述方法中,序列劃分的詳細(xì)方法,包括如下步驟(2.1)確定初始報(bào)文序號(hào)S0,子序列個(gè)數(shù)n,子序列元素個(gè)數(shù)的比例B1∶B2∶…∶Bn,以及提供媒體流的客戶端節(jié)點(diǎn)的序號(hào)i;
(2.2)計(jì)算滿足不等式2l-1<max(B1,…,Bn)<2l的l;(2.3)變量賦值dt=2-l,ds1=B1·dt,ds2=B2·dt,…,dsn=Bn·dt;(2.4)變量賦值s1=s2=…=sn=0,m=S0,k=0;(2.5)當(dāng)滿足k<kmax(kmax表示第i個(gè)子序列的長度)時(shí),執(zhí)行步驟(2.6)至(2.11);(2.6)對(duì)于每一個(gè)j從1至n,執(zhí)行步驟(2.7)至(2.11);(2.7)如果sj+dsj≠[sj],執(zhí)行步驟(2.8)至(2.10);(2.8)如果j=i,執(zhí)行步驟(2.9);(2.9)變量賦值ak(i)=m,]]>k=k+1;(2.10)變量賦值m=m+1;(2.11)變量賦值sj=sj+dsj;(2.12)得到第i個(gè)子序列{ak(i)},0<k<kmax,k∈Z.]]>本發(fā)明的特點(diǎn)及效果本發(fā)明方法基于數(shù)值微分,參考圖形學(xué)中的直線掃描轉(zhuǎn)換,將流量分配問題轉(zhuǎn)換成一個(gè)序列拆分的數(shù)學(xué)模型,實(shí)現(xiàn)較為精確的流量分配。該方法突破現(xiàn)有的分段拆分方法,通過跳躍式序列拆分,有效地降低了可能發(fā)生的連續(xù)丟包概率,為前向糾錯(cuò)碼等糾錯(cuò)方式進(jìn)行數(shù)據(jù)恢復(fù)創(chuàng)造了條件。
圖1是本發(fā)明方法中的流量分配方法流程2是本發(fā)明方法在二個(gè)流媒體數(shù)據(jù)源時(shí)的流量分配方法實(shí)施例示意圖。
具體實(shí)施例方式
本發(fā)明提出的一種基于數(shù)值微分的流量分配方法結(jié)合附圖及實(shí)施例詳細(xì)說明如下本發(fā)明的基于數(shù)值微分的流量分配方法如圖1所示,其特征在于,將n個(gè)流媒體數(shù)據(jù)源將流媒體數(shù)據(jù)以RTP報(bào)文的形式發(fā)出,每一個(gè)RTP報(bào)文均有一個(gè)序號(hào)(sequencenumber),通過對(duì)RTP報(bào)文序號(hào)的劃分來實(shí)現(xiàn)對(duì)流媒體數(shù)據(jù)流量的分配;具體包括以下步驟(1)將RTP報(bào)文序列定義為一個(gè)序列{am=m+S0},m≥0∧m∈Z,式中,S0為該序列的起始序號(hào);(2)該n個(gè)流媒體數(shù)據(jù)源的不同網(wǎng)絡(luò)負(fù)載能力帶來的不均勻分配表示為該序列經(jīng)劃分后得到的各子序列元素個(gè)數(shù)的比例B1∶B2∶…∶Bn,劃分后的n個(gè)子序列為{ak(1)},···,{ak(n)},k∈Z+∪{0},]]>其中n為子序列的個(gè)數(shù)(一個(gè)流媒體數(shù)據(jù)源對(duì)應(yīng)一個(gè)子序列);
(3)第i個(gè)子序列{ak(i)}為對(duì)應(yīng)第i個(gè)流媒體數(shù)據(jù)源需要向客戶端節(jié)點(diǎn)發(fā)送的RTP報(bào)文的序號(hào)。
上述方法中,序列劃分的詳細(xì)方法,包括如下步驟(2.1)確定初始報(bào)文序號(hào)S0,子序列個(gè)數(shù)n,子序列元素個(gè)數(shù)的比例B1∶B2∶…∶Bn,以及提供媒體流的客戶端節(jié)點(diǎn)的序號(hào)i;(2.2)計(jì)算滿足不等式2l-1<max(B1,…,Bn)<2l的l;(2.3)變量賦值dt=2-l,ds1=B1·dt,ds2=B2·dt,…,dsn=Bn·dt;(2.4)變量賦值s1=s2=…=sn=0,m=S0,k=0;(2.5)當(dāng)滿足k<kmax(kmax表示第i個(gè)子序列的長度)時(shí),執(zhí)行步驟(2.6)至(2.11);(2.6)對(duì)于每一個(gè)j從1至n,執(zhí)行步驟(2.7)至(2.11);(2.7)如果sj+dsj≠[sj],執(zhí)行步驟(2.8)至(2.10);(2.8)如果j=i,執(zhí)行步驟(2.9);(2.9)變量賦值ak(i)=m,]]>k=k+l;(2.10)變量賦值m=m+1;(2.11)變量賦值sj=sj+dsj;(2.12)得到第i個(gè)子序列{ak(i)},0<k<kmax,k∈Z.]]>本發(fā)明方法在二個(gè)流媒體數(shù)據(jù)源時(shí)的流量分配方法實(shí)施例如圖2所示,流量分配方法可以直觀地描述為一個(gè)直線掃描轉(zhuǎn)換(直觀展示圖1的運(yùn)算過程)。在本實(shí)施例中,子序列元素個(gè)數(shù)n=2,二個(gè)子序列的元素個(gè)數(shù)比例B1∶B2=10∶7,序列初始序號(hào)S0=1,得到兩個(gè)子序列{ak(1)},{ak(2)},k∈Z+∪{0}.]]>圖2中標(biāo)定了二維坐標(biāo)系,每個(gè)格子(像素)都代表一個(gè)像素。這里由(0,0)點(diǎn)向(10,7)點(diǎn)畫一條虛直線,并利用像素矩陣的一些像素(即圖中的灰色格子)來逼近這條虛直線。
圖2中由(0,0)點(diǎn)走到(10,7)點(diǎn)(如圖箭頭所示,這里要求只能沿著XY坐標(biāo)增大的方向前進(jìn)并且沿Y坐標(biāo)優(yōu)先,也可X坐標(biāo)優(yōu)先),一共前進(jìn)了17步(當(dāng)然可以沿著這條直線繼續(xù)前進(jìn)),每一步都標(biāo)明了序號(hào),其中沿X方向走了10步,沿Y方向走了7步。最后將沿X方向的序號(hào)作為子序列1,沿Y方向的序號(hào)作為子序列2。得到二個(gè)子序列 根據(jù)此流量分配方法,最后流媒體數(shù)據(jù)源1需要向客戶端節(jié)點(diǎn)發(fā)送的RTP報(bào)文序號(hào)為2,3,5,7,9,10,12,14,15,17,...;流媒體數(shù)據(jù)源2需要向客戶端節(jié)點(diǎn)發(fā)送的RTP報(bào)文序號(hào)為1,4,6,8,11,13,16,...。
由于網(wǎng)絡(luò)傳輸中丟包大多為突發(fā)的連續(xù)丟包,如果不采用這種跳躍式RTP報(bào)文序號(hào)的拆分,而是采用簡單的分段拆分,例如對(duì)于上述序列,將其分為10∶7的兩個(gè)序列有序列1為1~10,18~27,35~44,...序列2為11~17,28~34,45~51,...,將會(huì)使得連續(xù)丟包的概率大大增加,從而不利于使用前向糾錯(cuò)碼等糾錯(cuò)方式進(jìn)行數(shù)據(jù)恢復(fù),造成不可恢復(fù)的數(shù)據(jù)段增加。而采用本流量分配方法,將所有的報(bào)文均勻打散,可以使得突發(fā)連續(xù)丟包的概率大大降低,從而使得不恢復(fù)的數(shù)據(jù)段大大減少。
權(quán)利要求
1.一種基于數(shù)值微分的流量分配方法,其特征在于,將n個(gè)流媒體數(shù)據(jù)源將流媒體數(shù)據(jù)以RTP報(bào)文的形式發(fā)出,每一個(gè)RTP報(bào)文均有一個(gè)序號(hào),通過對(duì)RTP報(bào)文序號(hào)的劃分來實(shí)現(xiàn)對(duì)流媒體數(shù)據(jù)流量的分配;具體包括以下步驟1)將RTP報(bào)文序列定義為一個(gè)序列{am=m+S0},m≥0∧m∈Z,式中,S0為該序列的起始序號(hào);2)該n個(gè)流媒體數(shù)據(jù)源的不同網(wǎng)絡(luò)負(fù)載能力帶來的不均勻分配表示為該序列經(jīng)劃分后得到的各子序列元素個(gè)數(shù)的比例B1∶B2∶…∶Bn,劃分后的n個(gè)子序列為{ak(l)},···,{ak(n)},k∈Z+∪{0}]]>,其中n為子序列的個(gè)數(shù),一個(gè)流媒體數(shù)據(jù)源對(duì)應(yīng)一個(gè)子序列;3)第i個(gè)子序列{ak(i)}為對(duì)應(yīng)第i個(gè)流媒體數(shù)據(jù)源需要向客戶端節(jié)點(diǎn)發(fā)送的RTP報(bào)文的序號(hào)。
2.如權(quán)利要求1所述的上述方法中,其特征在于,所述第2)步驟中的序列劃分的方法,具體包括如下步驟(1)確定初始報(bào)文序號(hào)S0,子序列個(gè)數(shù)n,子序列元素個(gè)數(shù)的比例B1∶B2∶…∶Bn,以及提供媒體流的客戶端節(jié)點(diǎn)的序號(hào)i;(2)計(jì)算滿足不等式2l-1<max(B1,…,Bn)<2l的l;(3)變量賦值dt=2-l,ds1=B1·dt,ds2=B2·dt,…,dsn=Bn·dt;(4)變量賦值s1=s2=…=sn=0,m=S0,k=0;(5)當(dāng)滿足k<kmax(kmax表示第i個(gè)子序列的長度)時(shí),執(zhí)行步驟(2.6)至(2.11);(6)對(duì)于每一個(gè)j從1至n,執(zhí)行步驟(2.7)至(2.11);(7)如果sj+dsj≠[sj],執(zhí)行步驟(2.8)至(2.10);(8)如果j=i,執(zhí)行步驟(2.9);(9)變量賦值ak(i)=m,k=k+1;]]>(10)變量賦值m=m+1;(11)變量賦值sj=sj+dsj;(12)得到第i個(gè)子序列{ak(i)},0<k<kmax,k∈Z.]]>
全文摘要
本發(fā)明涉及一種基于數(shù)值微分的流量分配方法,屬于信息傳播技術(shù)領(lǐng)域。本方法的n個(gè)流媒體數(shù)據(jù)源將流媒體數(shù)據(jù)以RTP報(bào)文的形式發(fā)出,每一個(gè)RTP報(bào)文均有一個(gè)序號(hào),通過對(duì)RTP報(bào)文序號(hào)的劃分來實(shí)現(xiàn)對(duì)流媒體數(shù)據(jù)的流量分配。本發(fā)明方法基于數(shù)值微分,參考圖形學(xué)中的直線掃描轉(zhuǎn)換,將流量分配問題轉(zhuǎn)換成一個(gè)序列拆分的數(shù)學(xué)模型,實(shí)現(xiàn)較為精確的流量分配。本發(fā)明方法突破現(xiàn)有的分段拆分方法,通過跳躍式序列拆分,有效地降低了可能發(fā)生的連續(xù)丟包概率,為前向糾錯(cuò)碼等糾錯(cuò)方式進(jìn)行數(shù)據(jù)恢復(fù)創(chuàng)造了條件。
文檔編號(hào)H04L12/56GK1604570SQ20041008671
公開日2005年4月6日 申請(qǐng)日期2004年10月29日 優(yōu)先權(quán)日2004年10月29日
發(fā)明者趙黎, 張萌, 楊士強(qiáng) 申請(qǐng)人:清華大學(xué)