專利名稱:一種無線網絡中基于網絡編碼的多路徑路由方法
技術領域:
本發(fā)明屬于無線網絡技術領域,具體為一種無線網絡中基于網絡編碼的多路徑路由 方法,主要適用于多跳無線網絡中多路徑路由的發(fā)現(xiàn)和數(shù)據傳輸路徑的選擇,另一方面 也利用了網絡編碼技術以提高系統(tǒng)性能。
背景技術:
無線網絡具有不可靠的傳輸鏈路、動態(tài)的拓撲結構、受限的信道帶寬和節(jié)點電量等 顯著特征。近年來,多路徑路由在無線網絡中得到了廣泛的應用。多路徑路由可以有效 地提高數(shù)據傳輸?shù)目煽啃?、在?jié)點間平衡網絡流量負載和電量消耗、降低端到端時延和 路由發(fā)現(xiàn)頻率、應對頻繁的拓撲結構變化及其帶來的不可靠的通信服務,以及改進網絡 的安全性等等。但是多路徑路由又會導致多條路徑上同時發(fā)送數(shù)據包所帶來的網絡擁塞 問題,特別是當選擇多條不相交的路徑傳輸數(shù)據包時,擁塞會變得更加嚴重。現(xiàn)有的多路徑路由機制都在路由發(fā)現(xiàn)階段預先確定了傳輸路徑,沒有考慮到數(shù)據包 傳輸過程中存在的網絡編碼機會。這些多路徑路由機制沒有很好地利用已有的編碼機 會,因此網絡的吞吐量沒有被充分地發(fā)揮出來。發(fā)明內容本發(fā)明要解決的問題是現(xiàn)有的多路徑路由機制存在網絡擁塞問題,沒有很好地利 用已有的編碼機會,網絡的吞吐量沒有被充分地發(fā)揮出來。本發(fā)明的技術方案是 一種無線網絡中基于網絡編碼的多路徑路由方法,包括以下 步驟(1) 源節(jié)點到目標節(jié)點的路由發(fā)現(xiàn)擴展動態(tài)源路由算法EDSR(ExtendedDynamic Source Routing)將路由請求數(shù)據包轉播出去之前向其中添加鏈路的相關信息,發(fā)現(xiàn)路由 并記錄相關鏈路的期望傳輸次數(shù)ETX(Expected Transmission Count)信息;(2) 路由發(fā)現(xiàn)階段結束后,源節(jié)點得到了多條通向目標節(jié)點的路徑以及每條路徑 上所有鏈路的ETX信息;再由路徑選擇算法,比較各條路徑的路徑轉換收益,源節(jié)點 選取其中最優(yōu)的『條用于數(shù)據傳輸;路徑選擇算法將每一條候選路徑與除了非連接路徑及其本身以外的所有路徑的轉換收益進行比較,然后選取出擁有最大路徑轉換收益的候選路徑來傳送數(shù)據包;設交換 收益g,,W為在節(jié)點/和節(jié)點A之間,經過中間節(jié)點/成功地進行一次基于網絡編碼的數(shù)據包交換所減少的傳輸次數(shù);由交換收益g,w可得到路徑編碼收益gG,"路徑編碼收 益gG乂是通過從路徑/^轉換到路徑S以便利用路徑A上的編碼機會而減少的傳輸次 數(shù);則路徑轉換收益G,w為當路徑從^轉換到A以便與路徑A交換數(shù)據包時,路徑轉換收益G,w的值就是路徑編碼收益g,C/,4與路徑£丁乂損失(£7^/-£7^/>)之間的差。本發(fā)明的EDSR算法可改進為優(yōu)化擴展動態(tài)源路由發(fā)現(xiàn)算法EDSR-OPT(Extended Dynamic Transmission Count - Optimization),設每個節(jié)點都了解自己以及源節(jié)點和目標 節(jié)點所處的地理位置,由于無線網狀網中的節(jié)點基本是處于靜止狀態(tài)的,各個節(jié)點可以 在初始化階段利用其他節(jié)點上的GPS設備進行三邊測量操作得到自身的位置信息,利 用地理信息EDSR-OPT算法把路由請求的洪泛范圍限制在源節(jié)點和目標節(jié)點之間的一 個菱形區(qū)域內。路由發(fā)現(xiàn)階段結束后,由路徑選擇算法,比較各條路徑的路徑轉換收益,源節(jié)點選 取其中最優(yōu)的『條用于數(shù)據傳輸,『由用戶指定, 一般是一個比較小的數(shù)值,如3。根 據路徑轉換收益,在路徑的中間節(jié)點上為每一條路徑選取一條候選路徑以便創(chuàng)造編碼機 會并最大化路徑轉換收益。本發(fā)明與現(xiàn)有技術相比,提出了一種無線網絡中基于網絡編碼的多路徑路由方法, 根據路徑的可靠性和編碼機會動態(tài)地在多條路徑上進行數(shù)據包的傳輸,通過轉換傳輸路 徑來動態(tài)地創(chuàng)造而非僅僅等待編碼機會,讓多條路徑分攤網絡流量負載,并且最大化路 徑轉換收益從而改進網絡的吞吐量。
圖l是算法EDSR的示意圖。 圖2是算法EDSR-OPT的示意圖。 圖3 (a)是交換收益示例圖。 圖3 (b)是路徑轉換收益示例圖。
具體實施方式
本發(fā)明首先發(fā)現(xiàn)源節(jié)點到目標節(jié)點的所有路由,再通過路徑轉換收益對比進行選擇, 主要由路由發(fā)現(xiàn)算法和路徑選擇算法來實現(xiàn)。(1)路由發(fā)現(xiàn)算法路由發(fā)現(xiàn)方法-擴展動態(tài)源路由EDSR(Extended Dynamic Source Routing),由動態(tài)源路由DSR(Dynamic Source Routing)演變而來,如圖1,它與DSR不同的是在將路由 請求數(shù)據包轉播出去之前向其中添加鏈路的相關信息。在鄰居節(jié)點接收到路由請求后, 該節(jié)點將上一條鏈路的期望傳輸次數(shù)ETX(Expected Transmission Count)信息添加到路由 請求數(shù)據包中,再將其轉發(fā)。如果節(jié)點收到重復的路由請求,將簡單地丟棄。目標節(jié)點收到路由請求時,向源節(jié)點發(fā)送一個包括所發(fā)現(xiàn)的路由以及路由上每條鏈 路ETX信息的路由應答。 一個路由請求通常會經過多條路徑傳送到目標節(jié)點,所以路由 發(fā)現(xiàn)過程結束時源節(jié)點可以得到多條通往目標節(jié)點的路由。不過目標節(jié)點不必應答收到的每一個路由請求。我們希望目標節(jié)點僅僅將較好的路 由返回給源節(jié)點。因此目標節(jié)點需要把發(fā)現(xiàn)了較差路由的路由請求過濾掉。通常情況下, 遲到的路由請求意味著它們經過了一些傳輸成功率很低的鏈路,或者經過了太多跳傳 輸。因此,我們設定只有當路由請求在時間限制r內到達時,目標節(jié)點才會給出應答。 所以源節(jié)點在路由請求數(shù)據包中加入了一個計時器r 。當i:過期時,任何節(jié)點都不會轉 發(fā)或者應答該路由請求。和DSR相似,EDSR中每個節(jié)點在緩存中記錄下新發(fā)現(xiàn)的路由以及其中每條鏈路的 ETX。緩存機制不僅可以加快路由發(fā)現(xiàn)進程并減少路由請求的發(fā)送次數(shù),還為數(shù)據包傳 送階段的路徑轉換提供了候選路由。為了找出通向目標節(jié)點的路由,EDSR在網絡中進行洪泛査找。但是洪泛方式會增 加路由發(fā)現(xiàn)階段的延遲并加重網絡的負載,尤其是在網絡規(guī)模較大的情況下。雖然DSR 可以通過逐漸增加路由請求的生存時間TTL(TimeToLive)來限制傳輸次數(shù),但仍然無法避免路由發(fā)現(xiàn)延遲的增加。本發(fā)明對EDSR算法進行了改進,即優(yōu)化擴展動態(tài)源路由EDSR-OPT(Extended Dynamic Source Routing-Optimization),與EDSR不同的是,EDSR-OPT假設每個節(jié)點 都了解自己以及源節(jié)點和目標節(jié)點所處的地理位置。由于無線網狀網中的節(jié)點基本是處 于靜止狀態(tài)的,各個節(jié)點可以在初始化階段利用其他節(jié)點上的GPS設備進行三邊測量 操作得到自身的位置信息。利用地理信息EDSR-OPT可以把路由請求的洪泛范圍限制在源節(jié)點和目標節(jié)點之間的一個菱形區(qū)域內。圖2給出了一個EDSR-OPT應用的例子。根據源節(jié)點設定的參數(shù)e,我們在源節(jié)點 和目標節(jié)點之間定義了一個菱形區(qū)域i 來限制路由請求的傳播范圍。當一個節(jié)點收到路由請求時,它首先會檢查自己是否在區(qū)域i 內,然后再決定是否向鄰居節(jié)點轉播這個路 由請求。例如,在圖2中,節(jié)點5和節(jié)點五分別丟棄從節(jié)點^和節(jié)點D傳來的路由請 求,而節(jié)點C和節(jié)點F則把自己視為合適的轉播者。通過引入受限區(qū)域i , EDSR-OPT 不只是在目標節(jié)點對路徑進行裁減,在網絡中也會進行同樣的操作。更重要是,由于受 限區(qū)域的大小是和網絡規(guī)模無關的,路由發(fā)現(xiàn)過程的可擴展性將得到顯著提高。假設當前節(jié)點、源節(jié)點和目標節(jié)點的物理坐標分別為(jc;力、(x,;》)和(&;力),當前節(jié)點處在參數(shù)為0的受限區(qū)域R中的條件如下x > O —為)x tan(arctan(^^) + 6>) + a < x < O一 W)x tan(arctanC^") + 。 + & _y > (jc — Xs) x tan(arctan(^^") - 0) + 乂 y < (x _ xd ) x tan(arctan(^f) — 0) + yd(2)路徑選擇算法路由發(fā)現(xiàn)階段結束后,源節(jié)點得到了多條通向目標節(jié)點的路徑以及每條路徑上所有 鏈路的ETX信息。源節(jié)點對每條路徑的ETX進行比較并選取其中最優(yōu)的『條。這里,『 是一個由用戶指定的參數(shù),它定義了流量分割的粒度,并且通常情況下是一個比較小的 數(shù)值,例如3。假設e,是路徑戶上鏈路/的ETX值,那么路徑尸的ETX值,五7XP可以計算如下£7XP=5> (!'e尸) (2)假設源節(jié)點選擇路徑集{^}^來傳送數(shù)據流F,并且的路徑ETX為{£7^7}f=1 。 那么數(shù)據流F中被分配到路徑^的部分為^=^LxF (3)/-i基于網絡編碼的路徑轉換不是一個簡單的操作,必須在所獲得的編碼收益和從最佳 路徑轉換到次佳路徑所帶來的損失之間做出一個權衡,只有當編碼收益大于路徑ETX值 的損失時,路徑轉換操作才會被執(zhí)行。否則,將仍然使用默認的路徑。下面通過一個例子對交換收益給出定義并推導出它的理論期望值,然后基于交換收 益定義路徑轉換收益。通過對它進行定量的分析,決定是否執(zhí)行路徑轉換操作。交換收益g,m交換收益g,^是在節(jié)點/和節(jié)點A:之間,經過中間節(jié)點y成功地進 行一次基于網絡編碼的數(shù)據包交換所減少的傳輸次數(shù)。6首先對圖3(a)中的簡單應用場景進行分析。假設,從節(jié)點/到節(jié)點_/的單向傳遞成 功率為n力,用^來表示一次包括確認操作的雙向傳遞的成功概率,例如,~=^力—,。根據ETX標準,在不考慮網絡編碼機會的情況下, 一次成功的交換操作的期望傳輸次 數(shù)為* + *。即使考慮了網絡編碼機會,由于只有節(jié)點7執(zhí)行了編碼操作,依然需要 i + ^"次傳輸才能分別完成節(jié)點2和節(jié)點3到節(jié)點/的數(shù)據包傳遞。為了完成整個交 換過程,節(jié)點/需要將編碼后的數(shù)據包成功傳遞給節(jié)點2和節(jié)點3.假設,在成功完成數(shù)據傳遞前,需要W欠重傳操作。用^2來表示從節(jié)點7到節(jié)點2的數(shù)據包傳輸任務僅在第/ 次成功完成而另一個從節(jié)點7到節(jié)點3的數(shù)據包傳輸任務在第/ 次之前(包括第W火)就成功完成的概率。因此,/>/^2=<2一、2》〖如從節(jié)點/到節(jié)點3的數(shù)據包傳輸任務僅在第W欠成功完成而另一個從節(jié)點/到節(jié)點2的數(shù)據包傳輸任務在第W欠之前(包括第W欠)就成功完成的概率標記為;^。因此,從節(jié)點J到節(jié)點2的數(shù)據包傳輸任務和從節(jié)點J到節(jié)點3的數(shù)據包傳輸任務都僅在第h 次成功完成的概率標記為aa2;1,3 。因此,所以在帶有網絡編碼的情況下,傳輸次數(shù)的期望值為/ 是成功完成傳輸時所執(zhí)行的重傳次數(shù)。這里,&,,=i-~,可以歸納為^7 + ^7—/u+二,,3 °因此, 一次成功的基于肖絡編5馬的交換&程需要的肖輸次^W 期望值為合+合-,1,3 °同時,在節(jié)點/上的交換收益g,"的值為n,2+n,3U,2n,3 。假設節(jié)點/和節(jié)點A成功地通過節(jié)點/交換數(shù)據包,那么在節(jié)點J的交換收益可以計算如下g',,A - ",盧,*一/),,_/,* (4)基于交換收益的定義,可以給出路徑編碼收益和路徑轉換收益的定義,并且推導出 它們的理論值的計算方法。路徑編碼收益g,G,* :路徑編碼收益g,0,*是通過從路徑A轉換到路徑S以便利用路 徑A上的編碼機會而減少的傳輸次數(shù)。路徑轉換收益G,w:當我們把路徑從A轉換到A以便與路徑A交換數(shù)據包時,路徑轉換收益G,^的值就是路徑編碼收益g,CM與路徑ETX損失w x/-五r;i7)之間的差。圖3(b)中,節(jié)點/試圖從路徑^轉換到A。這樣,它就可以與路徑A進行數(shù)據包交換 并充分利用編碼機會。不過,只有當節(jié)點5和節(jié)點6的路徑編碼收益大于路徑轉換所帶來 的路徑ETX值增加時(即(7,.2,3>0),路徑轉換操作才會被執(zhí)行。gl尸2,3 =gl.5,6+g5,6,7 (5) G,2,3K農f+g&3 (6)假設,路徑B將被轉換到路徑A從而和路徑R進行數(shù)據包交換。{Ws}^代表路徑g和 A共有的節(jié)點集合。那么,路徑編碼收益g。,A和路徑轉換收益G^可以計算如下,g戸〗 wc" (7)G,,"H呵+g,^ (8) 這里,prej和Mc^分別是路徑P,上節(jié)點M的前驅節(jié)點和后繼節(jié)點。僅當G,w >0時, 路徑^和A之間才會進行轉換。基于路徑轉換收益計算方法,我們在中間節(jié)點上為每一條路徑A選取一條候選路徑以便創(chuàng)造編碼機會并最大化路徑轉換收益。路徑選擇算法將每一條候選路徑與除了非連 接路徑及其本身以外的所有路徑的轉換收益進行比較。然后,它選取出擁有最大收益的 候選路徑來傳送數(shù)據包。假設,當前存在w條默認路徑及w條候選路徑。路徑選擇算法的復雜度是O(mx"),路徑選擇算法和路徑轉換收益算法細節(jié)步驟如下算法l:路徑選擇算法_輸入路徑集合尸^W&(m》1),默認路徑A和候選路徑集合 輸出最大化路徑轉換收益的候選路徑的標號/。 1:{2-3行初始化} 2: GW <~ 0 3: /<~04: {5-19行計算最大收益}5: for候選路徑_/ = "o n do6:7:for路徑!■ = "o w do8:G。/rf—G {將當前值備份}9:if i^Jk and月f)巧^0 then10{計算收益}11:G仨Cfl/cG。iw(A,々月)12if G《G。W then13G <~ (7。 14else15continue16if G層< G then17: G皿—G {更新最大收益}18:19:return / {返回所選路徑的標號}算法2: CakGain(aA:)路徑轉換收益算法 輸入路徑/ 、 g和1:{2行計算轉換到更長的路徑所帶來的損失}3:{4-7行計算路徑轉換收益}4: for all節(jié)點veP) do5: {計算每個節(jié)點上交換收益的總和}7: return 。
權利要求
1、一種無線網絡中基于網絡編碼的多路徑路由方法,其特征是包括以下步驟(1)源節(jié)點到目標節(jié)點的路由發(fā)現(xiàn)擴展動態(tài)源路由算法EDSR將路由請求數(shù)據包轉播出去之前向其中添加鏈路的相關信息,發(fā)現(xiàn)路由并記錄相關鏈路的期望傳輸次數(shù)ETX信息;(2)路由發(fā)現(xiàn)階段結束后,源節(jié)點得到了多條通向目標節(jié)點的路徑以及每條路徑上所有鏈路的ETX信息;再由路徑選擇算法,比較各條路徑的路徑轉換收益,源節(jié)點選取其中最優(yōu)的W條用于數(shù)據傳輸;路徑選擇算法將每一條候選路徑與除了非連接路徑及其本身以外的所有路徑的轉換收益進行比較,然后選取出擁有最大路徑轉換收益的候選路徑來傳送數(shù)據包;設交換收益gi,j,k為在節(jié)點i和節(jié)點k之間,經過中間節(jié)點j成功地進行一次基于網絡編碼的數(shù)據包交換所減少的傳輸次數(shù);由交換收益gi,j,k可得到路徑編碼收益gi,j,kP,路徑編碼收益gi,j,kP是通過從路徑Pi轉換到路徑Pj以便利用路徑Pk上的編碼機會而減少的傳輸次數(shù);則路徑轉換收益Gi,j,k為當路徑從Pi轉換到Pj以便與路徑Pk交換數(shù)據包時,路徑轉換收益Gi,j,k的值就是路徑編碼收益gi,j,kP與路徑ETX損失(ETXjP-ETXiP)之間的差。
2、 根據權利要求1所述的一種無線網絡中基于網絡編碼的多路徑路由方法,其特征 是EDSR算法改進為優(yōu)化擴展動態(tài)源路由發(fā)現(xiàn)算法EDSR-OPT,設每個節(jié)點都了解自己 以及源節(jié)點和目標節(jié)點所處的地理位置,由于無線網狀網中的節(jié)點基本是處于靜止狀態(tài) 的,各個節(jié)點可以在初始化階段利用其他節(jié)點上的GPS設備進行三邊測量操作得到自 身的位置信息,利用地理信息EDSR-OPT算法把路由請求的洪泛范圍限制在源節(jié)點和目 標節(jié)點之間的一個菱形區(qū)域內。
3、 根據權利要求1或2所述的一種無線網絡中基于網絡編碼的多路徑路由方法,其 特征是路由發(fā)現(xiàn)階段結束后,源節(jié)點選取其中最優(yōu)的『條用于數(shù)據傳輸,由用戶指 定。
4、 根據權利要求1或2所述的一種無線網絡中基于網絡編碼的多路徑路由方法, 其特征是根據路徑轉換收益,在路徑的中間節(jié)點上為每一條路徑選取一條候選路徑以 創(chuàng)造編碼機會并最大化路徑轉換收益。
5、 根據權利要求3所述的一種無線網絡中基于網絡編碼的多路徑路由方法,其特 征是根據路徑轉換收益,在路徑的中間節(jié)點上為每一條路徑選取一條候選路徑以創(chuàng)造 編碼機會并最大化路徑轉換收益。
全文摘要
一種無線網絡中基于網絡編碼的多路徑路由方法,包括以下步驟(1)源節(jié)點到目標節(jié)點的路由發(fā)現(xiàn);(2)路由發(fā)現(xiàn)階段結束后,比較各條路徑的路徑轉換收益,源節(jié)點選取其中最優(yōu)的W條用于數(shù)據傳輸。本發(fā)明與現(xiàn)有技術相比,提出了一種無線網絡中基于網絡編碼的多路徑路由方法,根據路徑的可靠性和編碼機會動態(tài)地在多條路徑上進行數(shù)據包的傳輸,通過轉換傳輸路徑來動態(tài)地創(chuàng)造而非僅僅等待編碼機會,讓多條路徑分攤網絡流量負載,并且最大化路徑轉換收益從而改進網絡的吞吐量。
文檔編號H04L1/00GK101325556SQ20081012427
公開日2008年12月17日 申請日期2008年6月23日 優(yōu)先權日2008年6月23日
發(fā)明者李宏興, 陳貴海 申請人:南京大學