專利名稱:基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?br>
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)、網(wǎng)絡(luò)拓?fù)鋵游黾夹g(shù)領(lǐng)域,特別涉及一種基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?,可以?yīng)用于網(wǎng)絡(luò)鏈路存在動(dòng)態(tài)變化的網(wǎng)絡(luò)通信領(lǐng)域。
背景技術(shù):
為實(shí)現(xiàn)網(wǎng)絡(luò)性能的最大化,必須掌握網(wǎng)絡(luò)拓?fù)錉顩r,通過(guò)網(wǎng)絡(luò)拓?fù)洳拍軐?shí)現(xiàn)網(wǎng)絡(luò)資源的高效調(diào)度及優(yōu)化。比如,在大規(guī)模的多播網(wǎng)絡(luò)和P2P網(wǎng)絡(luò)應(yīng)用中,依據(jù)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)實(shí)時(shí)調(diào)整與優(yōu)化鏈路流量,最終可以實(shí)現(xiàn)網(wǎng)絡(luò)吞吐量的最優(yōu)化。因此,網(wǎng)絡(luò)拓?fù)涞膶游黾夹g(shù)具有非常重要的實(shí)用價(jià)值。隨著網(wǎng)絡(luò)規(guī)模的日益膨脹,網(wǎng)絡(luò)結(jié)構(gòu)日趨復(fù)雜,已朝著分布化、非協(xié)作、異質(zhì)管理和基于邊緣控制的方向演變,通過(guò)在網(wǎng)絡(luò)內(nèi)部相關(guān)節(jié)點(diǎn)上采集有關(guān)數(shù)據(jù)的傳統(tǒng)測(cè)量方法已不能滿足現(xiàn)在網(wǎng)絡(luò)測(cè)量的需求。如何準(zhǔn)確地掌握或預(yù)測(cè)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)與網(wǎng)絡(luò)行為,已成為網(wǎng)絡(luò)性能測(cè)量與分析方法研究領(lǐng)域的重要目標(biāo)和前提。常規(guī)的基于路由器或路由器協(xié)作的拓?fù)渫茰y(cè)方法,受到網(wǎng)絡(luò)訪問(wèn)權(quán)限的限制,只適合于在具有管轄權(quán)的網(wǎng)絡(luò)范圍內(nèi)進(jìn)行測(cè)量; 另外,將大量路由器統(tǒng)計(jì)的性能數(shù)據(jù)傳輸給中心網(wǎng)管系統(tǒng),需消耗大量帶寬,增加了網(wǎng)絡(luò)負(fù)荷。因此,采用網(wǎng)絡(luò)層析技術(shù)推測(cè)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)成為近年來(lái)網(wǎng)絡(luò)測(cè)量的研究熱點(diǎn),它利用端到端測(cè)量進(jìn)行網(wǎng)絡(luò)拓?fù)浼皟?nèi)部性能參數(shù)推測(cè)。網(wǎng)絡(luò)編碼技術(shù)是與本發(fā)明相關(guān)的技術(shù)。它對(duì)網(wǎng)絡(luò)中間匯聚節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行組合操作,例如線性組合,產(chǎn)生新的數(shù)據(jù)包,通過(guò)對(duì)信宿節(jié)點(diǎn)的接收數(shù)據(jù)進(jìn)行方程組聯(lián)合求解,得到原始的發(fā)送數(shù)據(jù),不僅減小了數(shù)據(jù)的差異性,增加了網(wǎng)絡(luò)的魯棒性,還實(shí)現(xiàn)了網(wǎng)絡(luò)吞吐量的最大化。由于編碼碼字本身的攜帶信息的特殊性,網(wǎng)絡(luò)編碼除了用于傳統(tǒng)的多播流量最大等領(lǐng)域外,通過(guò)信宿節(jié)點(diǎn)對(duì)網(wǎng)絡(luò)中接收數(shù)據(jù)包的解碼與分析,還可以得到重要的網(wǎng)絡(luò)結(jié)構(gòu)信息,例如拓?fù)浣Y(jié)構(gòu)。然而,目前將網(wǎng)絡(luò)編碼應(yīng)用于網(wǎng)絡(luò)拓?fù)鋵游鲱I(lǐng)域,主要依靠進(jìn)行主動(dòng)的探測(cè)數(shù)據(jù)包發(fā)送,這不僅消耗網(wǎng)絡(luò)的帶寬,而且很難應(yīng)對(duì)網(wǎng)絡(luò)結(jié)構(gòu)的動(dòng)態(tài)變化。因此, 如何較少網(wǎng)絡(luò)層析對(duì)于網(wǎng)絡(luò)的沖擊,實(shí)現(xiàn)被動(dòng)式的網(wǎng)絡(luò)拓?fù)鋵游鼍哂泻芨叩膶?shí)用價(jià)值。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?,通過(guò)該方法可以實(shí)現(xiàn)網(wǎng)絡(luò)拓?fù)涞膶游鲆约疤綔y(cè)網(wǎng)絡(luò)拓?fù)涞膭?dòng)態(tài)變化。為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下—種基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?,包括以下步驟1)網(wǎng)絡(luò)各中間節(jié)點(diǎn)在共同有限域內(nèi)選取各自的局部隨機(jī)編碼向量,經(jīng)信源匯聚成編碼本后傳播給信宿節(jié)點(diǎn);2)信宿節(jié)點(diǎn)根據(jù)接收到的信息矩陣?yán)眉m錯(cuò)編碼計(jì)算整個(gè)網(wǎng)絡(luò)拓?fù)涞暮蜻x初始化向量集合;3)網(wǎng)絡(luò)中各間節(jié)點(diǎn)利用編碼本和候選初始化向量集合層層計(jì)算、判斷其上游鏈路的連通性直至信源,得到網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。候選初始化向量集合中的初始化向量為信源向所有輸出鏈路傳輸?shù)娜?數(shù)據(jù)包。所述步驟幻具體包括A 信宿節(jié)點(diǎn)判斷第i次迭代中收到的接收向量矩陣是否滿秩并可解碼,是則轉(zhuǎn)向步驟B ;否則丟棄所述接收向量矩陣進(jìn)入下一次迭代;B 對(duì)第i次迭代的接收矩陣進(jìn)行糾錯(cuò)解碼并計(jì)算其錯(cuò)誤矩陣;C 信宿節(jié)點(diǎn)進(jìn)行錯(cuò)誤矩陣的迭代次數(shù)是否大于等于t次,是則進(jìn)入下一步,否則返回步驟A ;D 對(duì)每?jī)纱蔚腻e(cuò)誤矩陣計(jì)算其列向量交集,并將秩為1的列向量交集的列向量加入到網(wǎng)絡(luò)的候選初始化向量集合中。所述步驟幻具體包括a、初始化網(wǎng)絡(luò)拓?fù)鋱D及對(duì)應(yīng)的初始化向量集合,包括信宿節(jié)點(diǎn)、信源節(jié)點(diǎn)、與信宿節(jié)點(diǎn)相連的一跳中間節(jié)點(diǎn)集合、對(duì)應(yīng)于一跳中間節(jié)點(diǎn)集合的初始化向量集合;b、對(duì)一跳中間節(jié)點(diǎn)集合中的非源中間節(jié)點(diǎn)進(jìn)入步驟d依次迭代,使用編碼本計(jì)算中間節(jié)點(diǎn)的上游輸入鏈路的初始化向量;C、根據(jù)所述初始化向量判斷某條上游候選鏈路的連通狀態(tài)標(biāo)識(shí)是否為真,是則將鏈路連通狀態(tài)標(biāo)識(shí)設(shè)為假,進(jìn)入步驟h ;否則結(jié)束本次迭代,進(jìn)入步驟h ;d、將鏈路連通狀態(tài)標(biāo)設(shè)為假,判斷初始化向量集合中取出的節(jié)點(diǎn)的輸出鏈路對(duì)應(yīng)的初始化向量集合秩是否大于1,是則進(jìn)入步驟e ;否則將鏈路連通狀態(tài)標(biāo)識(shí)設(shè)為假,進(jìn)入步驟h ;e、使用編碼本計(jì)算中間節(jié)點(diǎn)的上游輸入鏈路的初始化向量;f、判斷該初始化向量是否在候選初始化向量集合中,是則進(jìn)入步驟g;否則返回步驟b ;g、將該鏈路連通狀態(tài)標(biāo)設(shè)為真,更新網(wǎng)絡(luò)當(dāng)前拓?fù)鋱D及對(duì)應(yīng)的初始化向量集合;h、所有中間節(jié)點(diǎn)是否迭代結(jié)束,是則結(jié)束所有迭代;否則返回步驟b。所述方法在網(wǎng)絡(luò)中有節(jié)點(diǎn)加入或離開(kāi)時(shí),還包括判斷信宿節(jié)點(diǎn)的最小割是否發(fā)生變化,是則進(jìn)入下一步;否則結(jié)束;將編碼本進(jìn)行更新并判斷更新是否成功,是則進(jìn)入下一步,否則結(jié)束;更新候選初始化向量集合并判斷更新是否成功,是則執(zhí)行權(quán)利要求所述的步驟 3),否則結(jié)束。本發(fā)明可以在不額外增加網(wǎng)絡(luò)吞吐量開(kāi)銷的前提下,實(shí)現(xiàn)被動(dòng)式的網(wǎng)絡(luò)拓?fù)鋵游?;另外還可探測(cè)網(wǎng)絡(luò)拓?fù)涞膭?dòng)態(tài)變化,實(shí)現(xiàn)對(duì)動(dòng)態(tài)網(wǎng)絡(luò)環(huán)境的拓?fù)鋵游觥?br>
圖1本發(fā)明實(shí)施例提供的基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒ǖ南到y(tǒng)結(jié)構(gòu)示意圖;圖2本發(fā)明實(shí)施例提供的獲取全網(wǎng)絡(luò)候選初始化向量集合的流程圖;圖3本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)拓?fù)溥€原流程圖;圖4本發(fā)明實(shí)施例提供的應(yīng)對(duì)網(wǎng)絡(luò)拓?fù)鋭?dòng)態(tài)變化的流程圖5本發(fā)明實(shí)施例提供的應(yīng)用場(chǎng)景及應(yīng)對(duì)拓?fù)鋭?dòng)態(tài)變化的示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。本發(fā)明所要解決的技術(shù)問(wèn)題是通過(guò)端到端的網(wǎng)絡(luò)數(shù)據(jù)包測(cè)量,提供一種被動(dòng)的推測(cè)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的方法,從而可以評(píng)估鏈路的統(tǒng)計(jì)信息,例如損失速率,并為網(wǎng)絡(luò)資源優(yōu)化與網(wǎng)絡(luò)失效診斷提供依據(jù)。參見(jiàn)圖1,圖1示出了本發(fā)明實(shí)施例提供的基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒ǖ姆椒鞒虉D。所述方法包括以下步驟101 網(wǎng)絡(luò)各中間節(jié)點(diǎn)ν根據(jù)共同的有限域Fq統(tǒng)一選取各自的局部隨機(jī)編碼向量, 經(jīng)信源s匯聚成為編碼本S后單播或廣播給信宿節(jié)點(diǎn)r ;該編碼本S中的內(nèi)容為對(duì)應(yīng)于網(wǎng)絡(luò)各中間節(jié)點(diǎn)ν的局部隨機(jī)編碼向量集合,即S ={sv,V e V];102 信宿節(jié)點(diǎn)r通過(guò)t次迭代運(yùn)算計(jì)算整個(gè)網(wǎng)絡(luò)拓?fù)涞暮蜻x初始化向量集合Iiv ;103 網(wǎng)絡(luò)中各中間節(jié)點(diǎn)ν根據(jù)編碼本S和候選初始化向量集合Iiv依次迭代計(jì)算、 判斷其一跳上游鏈路e的連通性,直至信源s止,即可還原網(wǎng)絡(luò)拓?fù)?。參?jiàn)圖2,圖2示出了本發(fā)明實(shí)施例的步驟102中信宿節(jié)點(diǎn)r通過(guò)t次迭代運(yùn)算計(jì)算整個(gè)絡(luò)拓?fù)涞暮蜻x初始化向量集合Iiv的流程圖。該步驟具體包括200 信宿節(jié)點(diǎn)r進(jìn)行迭代,在第i次迭代中收到接收向量矩陣Y(i);該接收向量矩陣是信宿節(jié)點(diǎn)r接收到的實(shí)際數(shù)據(jù)矩陣,來(lái)自于信源節(jié)點(diǎn)s傳播給信宿節(jié)點(diǎn)r的經(jīng)過(guò)中間節(jié)點(diǎn)編碼后的數(shù)據(jù);201 判斷該接收向量矩陣是否滿秩并可解碼,是則進(jìn)入步驟203 ;否則進(jìn)入步驟 202 ;202 丟棄該接收向量矩陣,返回步驟200進(jìn)行下一次迭代;203 對(duì)第i次迭代的接收向量矩陣進(jìn)行糾錯(cuò)解碼并計(jì)算其錯(cuò)誤向量矩陣E(i),;對(duì)于t次迭代運(yùn)算的每一次,信宿節(jié)點(diǎn)r使用網(wǎng)絡(luò)糾錯(cuò)碼計(jì)算信源信息向量的信息部分M(i),ie [l,t],并計(jì)算錯(cuò)誤向量矩陣E(i)r = Y(D1-YWhMG);其中,Y(i)h為信宿節(jié)點(diǎn)r接收矩陣的前CXC方陣,Y(I)1S剩下的n-C子矩陣, M⑴為信源信息向量的信息部分,大小為CX (n-C),η為單個(gè)數(shù)據(jù)包的長(zhǎng)度;204 判斷信宿節(jié)點(diǎn)r進(jìn)行錯(cuò)誤向量矩陣E(i),的迭代次數(shù)是否大于等于t次,是則進(jìn)入步驟205 ;否則返回步驟200進(jìn)行迭代;205:對(duì)每?jī)纱蔚玫降腻e(cuò)誤向量矩陣進(jìn)行兩兩交集運(yùn)算得到該錯(cuò)誤矩陣的列向量交集,即η E(J)r ;206 判斷所述錯(cuò)誤矩陣的列向量交集的秩是否為1,即rank(E(i)r Π E(j)r) = 1 是否成立;是則進(jìn)入步驟207 ;否則返回步驟205 ;207 將該列向量交集中的列向量加入到網(wǎng)絡(luò)的候選初始化向量集合Iiv中;對(duì)于信宿節(jié)點(diǎn)r的每?jī)纱蔚鷌,j e {1,. . .,t},計(jì)算其錯(cuò)誤向量矩陣的列向量交集 E(i)r Π E(j)r,如對(duì)于一對(duì)(i,j) e {1,...,Π E(j)r) = 1,則將E(i)r η E(j^加入到候選初始化向量集合Ivv中;至此,本發(fā)明實(shí)施例計(jì)算并得到了網(wǎng)絡(luò)的候選初始化向量集合Ivv。下面結(jié)合附圖3,對(duì)步驟103所述的還原網(wǎng)絡(luò)拓?fù)湔f(shuō)明如下,該還原網(wǎng)絡(luò)拓?fù)涞牟襟E具體包括301 初始化網(wǎng)絡(luò)拓?fù)鋱D及對(duì)應(yīng)的初始化向量集合;包括初始化信宿節(jié)點(diǎn)r、信源節(jié)點(diǎn)S、與信宿節(jié)點(diǎn)s相連的一跳中間節(jié)點(diǎn)集合 、對(duì)應(yīng)于一跳中間節(jié)點(diǎn)集合.E的初始化向量集合L ,該^是通過(guò)隨機(jī)編碼本S計(jì)算得到的一跳中間節(jié)點(diǎn)集合E中的初始化向量集合;[;表示當(dāng)前網(wǎng)絡(luò)拓?fù)溥€原的狀態(tài),和E表示對(duì)應(yīng)于5中的節(jié)點(diǎn)和鏈路的集合,初始化V為信宿節(jié)點(diǎn)r和它的上游一跳鄰居節(jié)點(diǎn)以及信源s,集合 .初始化為流入信宿節(jié)點(diǎn)r 的所有鏈路,因此G IV, D。初始化集合 :”為所有流入信宿節(jié)點(diǎn)的鏈路上的初始化向量, 即各自線性獨(dú)立的單位向量;302:對(duì)一跳中間節(jié)點(diǎn)集合.E中的非源中間節(jié)點(diǎn)V,進(jìn)入步驟305,依次迭代,使用編碼本S計(jì)算中間節(jié)點(diǎn)的上游輸入鏈路的初始化向量;303 根據(jù)迭代計(jì)算結(jié)果,即上游輸入鏈路的初始化向量,判斷某條上游候選鏈路的連通狀態(tài)標(biāo)識(shí)是否為真,是則進(jìn)入下一步;否則結(jié)束本次迭代、進(jìn)入步驟310 ;其中,鏈路連通狀態(tài)標(biāo)識(shí)初始化為假;304 將鏈路連通狀態(tài)標(biāo)識(shí)設(shè)為假,進(jìn)入步驟310 ;305 將鏈路連通狀態(tài)標(biāo)識(shí)設(shè)為假,從初始化向量集合I:·,中取出中間節(jié)點(diǎn)ν輸出鏈路對(duì)應(yīng)的初始化向量集合U (ei),. . .,i (ed)},即中間節(jié)點(diǎn)ν的輸出鏈路對(duì)應(yīng)的沖擊響應(yīng)向量集合,e1; e2, . . . , ed為S中節(jié)點(diǎn)ν的輸出鏈路;306 所述初始化向量集合{i(ei),...,i(ed)}的秩是否大于1,是則進(jìn)入下一步; 否則返回步驟304 ;307 對(duì)節(jié)點(diǎn)ν的上游輸入鏈路e = (u,v, i),使用編碼本S計(jì)算鏈路e的初始化向量 i (e), i (e) = Σ J = lj2...d^ (e, ν, e」)i (e」);具體的,對(duì)于每一節(jié)點(diǎn)ν的上游輸入鏈路e = (u,ν, i),如果e < E,則使用編碼本 S計(jì)算鏈路e的初始化向量i (e),否則,返回到步驟304 ;所述初始化向量i (e)是指對(duì)應(yīng)于一條鏈路e,該鏈路e到信宿節(jié)點(diǎn)r的變換向量。 計(jì)算方法為令信源s向所有輸出鏈路傳輸全0數(shù)據(jù)包,鏈路e注入一個(gè)非0數(shù)據(jù)包ζ (e),信宿節(jié)點(diǎn)r如果收到的接收向量矩陣Y = i (e) ζ (e),則i (e)為鏈路e上的初始化向量;對(duì)于有Ie1, e2,..., ed}條輸出鏈路的節(jié)點(diǎn)V,其輸入鏈路e上的初始化向量計(jì)算公式為i (e)= Σ J = 1,2...d^ (e,V,ej)i(ej)其中β (e, ν, ej)為節(jié)點(diǎn)ν的局部網(wǎng)絡(luò)編碼向量;所有節(jié)點(diǎn)ν e V的候選局部網(wǎng)絡(luò)編碼系數(shù){ β (u,ν, w),u, we V}是從其局部隨機(jī)網(wǎng)絡(luò)編碼本Sv中選取的,并且所有局部隨機(jī)編碼本S = {Sv,V e V}是被信宿節(jié)點(diǎn)r先驗(yàn)知道的;308 判斷該初始化向量i(e)是否在候選初始化向量集合Iiv中,是則進(jìn)行下一步; 否則返回到步驟302 ;309:將該鏈路連通狀態(tài)標(biāo)設(shè)為真,更新網(wǎng)絡(luò)當(dāng)前拓?fù)鋱DG及對(duì)應(yīng)的初始化向量集 T-;如果節(jié)點(diǎn)u《 ,則將節(jié)點(diǎn)u加入到γ中,將鏈路e = e(u, ν, i)加入到E.中,用C = VE和編碼本S來(lái)更新 :·」310 判斷所有中間節(jié)點(diǎn)是否已經(jīng)迭代結(jié)束,是則結(jié)束所有迭代;否則返回步驟 302。本發(fā)明實(shí)施例在結(jié)束所有迭代后,即得到網(wǎng)絡(luò)拓?fù)鋱D,從而還原了網(wǎng)絡(luò)拓?fù)洹⒁?jiàn)圖4,本發(fā)明方法在網(wǎng)絡(luò)中有節(jié)點(diǎn)加入或離開(kāi)時(shí),還包括以下步驟401 現(xiàn)有網(wǎng)絡(luò)中有節(jié)點(diǎn)加入或離開(kāi);402 判斷信宿節(jié)點(diǎn)r的最小割是否發(fā)生變化,如果是,進(jìn)入步驟403 ;否則結(jié)束;403 將網(wǎng)絡(luò)靜態(tài)局部編碼向量集合,即編碼本S進(jìn)行更新;404 判斷S更新是否成功,如果是,進(jìn)入到步驟405 ;否則結(jié)束。405 更新網(wǎng)絡(luò)候選初始化向量集合Iiv ;406 判斷Iiv更新是否成功,是則進(jìn)入步驟407 ;否則結(jié)束;407 根據(jù)網(wǎng)絡(luò)拓?fù)溥€原流程更新網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。步驟407獲得更新后的候選初始化向量集合和編碼本后,本發(fā)明實(shí)施例根據(jù)前述的網(wǎng)絡(luò)拓?fù)溥€原流程即可更新網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),此處不再詳述,具體詳見(jiàn)圖3及有關(guān)說(shuō)明。本發(fā)明實(shí)施例通過(guò)上述步驟,從而實(shí)現(xiàn)了對(duì)動(dòng)態(tài)拓?fù)渥兓膽?yīng)對(duì)。參見(jiàn)錯(cuò)誤!未找到引用源。,本發(fā)明的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)包括單位容量網(wǎng)絡(luò)中的信源節(jié)點(diǎn)s、信宿節(jié)點(diǎn)r、中間節(jié)點(diǎn)v、vl、u、ul以及鏈路el到el2等。在網(wǎng)絡(luò)鏈路出現(xiàn)隨機(jī)錯(cuò)誤的情況下,通過(guò)信宿節(jié)點(diǎn)r計(jì)算網(wǎng)絡(luò)的候選初始化向量集合,并依據(jù)隨機(jī)編碼本S,最終可還原網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。下面結(jié)合圖5所示的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)對(duì)本發(fā)明的網(wǎng)絡(luò)還原過(guò)程說(shuō)明如下首先,網(wǎng)絡(luò)中各中間節(jié)點(diǎn)v、vl、u、ul從共同的有限域內(nèi)統(tǒng)一隨機(jī)選取局部編碼向量集合,經(jīng)信源s匯聚中間節(jié)點(diǎn)ν、Vl、u、ul的靜態(tài)局部向量集合,形成編碼本S,并單播或廣播給信宿節(jié)點(diǎn)r ;然后信宿節(jié)點(diǎn)r經(jīng)過(guò)t次迭代,在鏈路el. . . el2出現(xiàn)隨機(jī)錯(cuò)誤的情況下, 計(jì)算得到網(wǎng)絡(luò)中的候選初始化向量集合;接著網(wǎng)絡(luò)初始化為信宿節(jié)點(diǎn)r,中間節(jié)點(diǎn)ν、vl,信源節(jié)點(diǎn)s和鏈路e9、elO、ell、el2,各中間節(jié)點(diǎn)ν、vl、U、ul根據(jù)編碼本S判斷其上游某鏈路,例如鏈路e5是否連通,直至信源節(jié)點(diǎn)s,最終網(wǎng)絡(luò)拓?fù)涞玫竭€原;當(dāng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)發(fā)生變化,例如節(jié)點(diǎn)v2加入進(jìn)來(lái),此時(shí)由于信宿節(jié)點(diǎn)r判斷其最小割發(fā)生了變化——由4變?yōu)榱?6 (增加了鏈路el5和el6)——?jiǎng)t更新編碼本和候選初始化向量集合,重新調(diào)用以上過(guò)程,得到鏈路el3、el4、el5和el6,從而最新的網(wǎng)絡(luò)拓?fù)涞玫竭€原。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒ǎ卣髟谟?,包?)網(wǎng)絡(luò)各中間節(jié)點(diǎn)在共同有限域內(nèi)選取各自的局部隨機(jī)編碼向量,經(jīng)信源匯聚成編碼本后傳播給信宿節(jié)點(diǎn);2)信宿節(jié)點(diǎn)根據(jù)接收到的信息矩陣?yán)眉m錯(cuò)編碼計(jì)算整個(gè)網(wǎng)絡(luò)拓?fù)涞暮蜻x初始化向量集合;3)網(wǎng)絡(luò)各中間節(jié)點(diǎn)利用編碼本和候選初始化向量集合層層計(jì)算、判斷其上游鏈路的連通性直至信源,得到網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。
2.根據(jù)權(quán)利要求1所述的基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?,其特征在于,候選初始化向量集合中的初始化向量為信源向所有輸出鏈路傳輸?shù)娜?數(shù)據(jù)包。
3.根據(jù)權(quán)利要求1所述的基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒ǎ涮卣髟谟?,所述步驟2)具體包括A 信宿節(jié)點(diǎn)判斷第i次迭代中收到的接收向量矩陣是否滿秩并可解碼,是則轉(zhuǎn)向步驟 B ;否則丟棄所述接收向量矩陣進(jìn)入下一次迭代;B 對(duì)第i次迭代的接收矩陣進(jìn)行糾錯(cuò)解碼并計(jì)算其錯(cuò)誤矩陣; C 信宿節(jié)點(diǎn)進(jìn)行錯(cuò)誤矩陣的迭代次數(shù)是否大于等于t次,是則進(jìn)入下一步,否則返回步驟A;D 對(duì)每?jī)纱蔚腻e(cuò)誤矩陣計(jì)算其列向量交集,并將秩為1的列向量交集的列向量加入到網(wǎng)絡(luò)的候選初始化向量集合中。
4.根據(jù)權(quán)利要求1所述的基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?,其特征在于,所述步驟3)具體包括a、初始化網(wǎng)絡(luò)拓?fù)鋱D及對(duì)應(yīng)的初始化向量集合,包括信宿節(jié)點(diǎn)、信源節(jié)點(diǎn)、與信宿節(jié)點(diǎn)相連的一跳中間節(jié)點(diǎn)集合、對(duì)應(yīng)于一跳中間節(jié)點(diǎn)集合的初始化向量集合;b、對(duì)一跳中間節(jié)點(diǎn)集合中的非源中間節(jié)點(diǎn)進(jìn)入步驟d依次迭代,使用編碼本計(jì)算中間節(jié)點(diǎn)的上游輸入鏈路的初始化向量;C、依據(jù)所述初始化向量判斷某條上游候選鏈路的連通狀態(tài)標(biāo)識(shí)是否為真,是則將鏈路連通狀態(tài)標(biāo)識(shí)設(shè)為假,進(jìn)入步驟h ;否則結(jié)束本次迭代,進(jìn)入步驟h ;d、將鏈路連通狀態(tài)標(biāo)設(shè)為假,判斷初始化向量集合中取出的節(jié)點(diǎn)的輸出鏈路對(duì)應(yīng)的初始化向量集合秩是否大于1,是則進(jìn)入步驟e ;否則將鏈路連通狀態(tài)標(biāo)識(shí)設(shè)為假,進(jìn)入步驟 h;e、使用編碼本計(jì)算中間節(jié)點(diǎn)的上游輸入鏈路的初始化向量;f、判斷該初始化向量是否在候選初始化向量集合中,是則進(jìn)入步驟g;否則返回步驟b ;g、將該鏈路連通狀態(tài)標(biāo)設(shè)為真,更新網(wǎng)絡(luò)當(dāng)前拓?fù)鋱D及對(duì)應(yīng)的初始化向量集合;h、所有中間節(jié)點(diǎn)是否迭代結(jié)束,是則結(jié)束所有迭代;否則返回步驟b。
5.根據(jù)權(quán)利要求1一 4任一項(xiàng)所述的基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒ǎ?其特征在于,所述方法在網(wǎng)絡(luò)中有節(jié)點(diǎn)加入或離開(kāi)時(shí),還包括判斷信宿節(jié)點(diǎn)的最小割是否發(fā)生變化,是則進(jìn)入下一步;否則結(jié)束; 將編碼本進(jìn)行更新并判斷更新是否成功,是則進(jìn)入下一步,否則結(jié)束; 更新候選初始化向量集合并判斷更新是否成功,是則執(zhí)行權(quán)利要求所述的步驟3),否則結(jié)束。
全文摘要
本發(fā)明公開(kāi)了一種基于網(wǎng)絡(luò)編碼的被動(dòng)式動(dòng)態(tài)網(wǎng)絡(luò)拓?fù)鋵游龇椒?,包括以下步驟網(wǎng)絡(luò)各中間節(jié)點(diǎn)在共同有限域內(nèi)選取各自的局部隨機(jī)編碼向量,經(jīng)信源匯聚成編碼本后傳播給信宿節(jié)點(diǎn);信宿節(jié)點(diǎn)根據(jù)接收到的信息矩陣?yán)眉m錯(cuò)編碼計(jì)算整個(gè)網(wǎng)絡(luò)拓?fù)涞暮蜻x初始化向量集合;網(wǎng)絡(luò)各中間節(jié)點(diǎn)利用編碼本和候選初始化向量集合層層計(jì)算、判斷其上游鏈路的連通性直至信源,得到網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。本發(fā)明可以在不額外增加網(wǎng)絡(luò)吞吐量開(kāi)銷的前提下,實(shí)現(xiàn)被動(dòng)式的網(wǎng)絡(luò)拓?fù)鋵游觯涣硗膺€可探測(cè)網(wǎng)絡(luò)拓?fù)涞膭?dòng)態(tài)變化,實(shí)現(xiàn)對(duì)動(dòng)態(tài)網(wǎng)絡(luò)環(huán)境的拓?fù)鋵游觥?br>
文檔編號(hào)H04L1/00GK102546091SQ20111025423
公開(kāi)日2012年7月4日 申請(qǐng)日期2011年8月31日 優(yōu)先權(quán)日2011年8月31日
發(fā)明者徐冠, 戴彬, 楊軍, 秦鵬, 黃本雄 申請(qǐng)人:華中科技大學(xué)