專利名稱:一種適合無線網狀網機會性路由的路由量度方法
技術領域:
本發(fā)明涉及無線網絡路由領域,特別是涉及無線mesh網絡機會性路由的路由量度。
背景技術:
無線網狀網絡(WirelessMeshNetwork,麗N)也稱為多跳(multi-hop)網絡,其核心指導思想是讓無線網絡中的每個節(jié)點都可以發(fā)送和接收信號。在無線網狀網絡中,任何無線設備節(jié)點都可以同時作為AP (AccessingPoint)和路由器,每個節(jié)點都可以與一個或者多個對等節(jié)點進行直接通信。這種結構的最大好處在于如果最近的AP由于流量過大而導致擁塞的話,那么數據可以自動重新路由到一個通信流量較小的鄰近節(jié)點進行傳輸。依此類推,數據包還可以根據網絡的情況,繼續(xù)路由到與之最近的下一個節(jié)點進行傳輸,直到到達最終目的地為止,這樣的訪問方式就是多跳訪問。多跳訪問方式使普通無線技術過去一直存在的可擴充能力低和傳輸可靠性差等問題迎刃而解。網絡中大量終端設備能自動通過無線連成網狀結構,網絡中的每個節(jié)點都具備自動路由功能,每個節(jié)點只和鄰近節(jié)點進行通信,因此是一種自組織、自管理的智能網絡,不需主干網即可構筑富有彈性的網絡。
路由量度(RoutingMetric)是一組參數,通過它們一個路由選擇公式決定一個更優(yōu)的路由。每一種路由量度均從不同角度衡量了某種鏈路代價開銷。當進行路由發(fā)現或路由維護時,均首先從路由表中判斷鄰居節(jié)點的路由量度值的大小,然后再選擇下一跳轉發(fā)節(jié)點。目前典型的路由量度方法有以下幾種跳數量度(hopco皿t, Hops), Hops量度方法選擇總跳數最小的路徑作為數據傳輸路徑。單跳選路時,鏈路質量的量度呈現出二進制特性,鏈路或者存在,或者不存在。 單g兆往返時間量度(perhoproundtriptime, Per-RTT) , Per-RTT量度方法是通過在相鄰節(jié)點之間發(fā)送探測包,以此來測量探測包的往返時延,路由算法選擇單跳往返時間最小的路徑進行傳輸。 期望的發(fā)包數(expectedtransmissioncount, ETX) , ETX量度方法是發(fā)送節(jié)點通過定期發(fā)送廣播包測得其與鄰居節(jié)點之間正向及反向鏈路的包接受率,從而估計出要正確傳輸一個數據包所需重發(fā)的包的數量。路由算法選擇期望發(fā)包次數較小的鄰居節(jié)點作為下一跳。 上述幾種路由量度方法的思想均是基于傳統路由方式,而忽略了無線網絡機會性路由本身的特性。機會性路由,是指在數據包傳輸完成后再確定哪些接收到數據的節(jié)點成為路由的下一跳。在無線網狀網絡中,傳輸信道是無線的,數據傳輸的本質是廣播,因此,處于該次傳輸的發(fā)送節(jié)點和接受節(jié)點附近的其他節(jié)點都可以機會性地接收到此次傳輸的數據。對于傳統的路由方式,無線信道的廣播性使其在選路過程中產生了許多冗余鏈路,占用了大量網絡資源,而機會性路由則是從充分利用這些冗余鏈路的角度出發(fā),在節(jié)點將數據
4發(fā)送出去之后,讓收到數據的節(jié)點都參與數據的轉發(fā),并根據各節(jié)點的機會性接收情況來選擇合適的節(jié)點成為傳輸的下一跳。因此,機會性路由勢必會對無線網狀網絡的數據傳輸性能帶來較大提高。
發(fā)明內容
本發(fā)明針對現有技術所存在的缺陷和不足,其目的在于提供一種更加適用于無線網狀網機會性路由的路由量度方法,采用該路由量度方法確定數據傳輸路由,減少節(jié)點間的數據傳輸次數,提高網絡的吞吐率。 本發(fā)明以節(jié)點間機會性轉發(fā)時成功傳輸一個包所需要的最少傳輸次數ELT(ExpectedLeastTransmissions期望最少傳輸次數)作為機會性路由量度,并基于此路由量度定義節(jié)點間距離,劃分上游節(jié)點和下游節(jié)點。本發(fā)明包括如下步驟
第一步,對每個無線Mesh節(jié)點加載一個探測包隊列,并按照一定的時間間隔周期性發(fā)送探測包,同時接受其他節(jié)點發(fā)送的探測包,將所接收到探測包的發(fā)送點標記為接受節(jié)點的鄰居節(jié)點,并通過檢測一段時間內收到鄰居節(jié)點的探測包個數計算出節(jié)點間的前向包和反向包發(fā)送成功率。對無線任意一條鏈路A—B,節(jié)點A周期性地(周期設為(1+Y)秒,Y為(0,0. 1)之間的一個隨機數,稱為震蕩時間)發(fā)送探測包給B。在B節(jié)點處設置一個長度為s的窗口 ,記錄在過去的s秒內B成功接收到來自A節(jié)點探測包的次數c,并用c/s作為A—B鏈路前向包成功發(fā)送率。反之B節(jié)點周期性地發(fā)送探測包給A,同理可以求出A—B鏈路的反向包成功發(fā)送率。 所述前向包發(fā)送成功率是指某鄰居節(jié)點接受到本地節(jié)點發(fā)送的包的概率。 所述反向包發(fā)送成功率是指本地接受到某鄰居節(jié)點發(fā)送的包的概率。 第二步,根據第一步中所得的鏈路前向和反向包成功發(fā)送率,計算得到各節(jié)點對
其所有相鄰節(jié)點的發(fā)包成功率統計表,作為路由量度的初始依據。 所述發(fā)包成功率是指目的節(jié)點成功收到來自源節(jié)點的數據包,且源節(jié)點成功接收到來自目的節(jié)點的ACK包的概率,所以發(fā)包成功率p等于前向包成功發(fā)送率pf與反向包成功發(fā)送率pr的乘積,即。 第三步,根據第二步中生成的發(fā)包成功率統計表,計算得到各節(jié)點到其所有相鄰節(jié)點的單跳鏈路ETX統計表。 所述ETX是指節(jié)點間沿最短路徑成功傳送一個探測包所需傳輸次數的預測值。不妨設本地節(jié)點到某一相鄰節(jié)點的發(fā)包成功率為P,那么單跳鏈路的ETX的公式為
第四步,根據第三步中生成的單跳鏈路ETX統計表,計算出各節(jié)點到目的節(jié)點的ETX值,即到目的節(jié)點的鏈路中各段單跳鏈路ETX之和的最小值,并將這些節(jié)點到目的節(jié)點的ETX升序排列,以此區(qū)分上、下游節(jié)點和距離的遠近。按升序排序后的目的節(jié)點的序號為1,源節(jié)點的序號為n,則中間節(jié)點為2,3,4……n-l。那么源節(jié)點的下游節(jié)點集為{1,2,3 n-lh這里將節(jié)點集{1,2,3 n-l}簡記為{n_l}。 所述上、下游節(jié)點是相對于傳輸過程中的目的節(jié)點而言的,用各節(jié)點到目的節(jié)點的距離來區(qū)分,距離小的是下游節(jié)點,距離大的是上游節(jié)點。 所述到目的節(jié)點的距離依賴于采用的路由量度,不同的路由量度定義的距離是不同的。
第五步,根據第四步中得出的節(jié)點上下游關系,計算出本地節(jié)點需要發(fā)送包的次 數,設為,以使得至少一個下游節(jié)點能夠收到其發(fā)送的包。對于某節(jié)點s,其下游節(jié)點集為 {1, 2……s-1},先計算節(jié)點s的下游節(jié)點集中至少有一個節(jié)點收到包的概率,記為,簡記為。 則有,表示節(jié)點s到下游節(jié)點i之間的發(fā)包成功率。當節(jié)點集只有一個節(jié)點i時,;然后計 算,得到節(jié)點s成功傳輸一個數據包到下游節(jié)點集所需要的最少傳輸次數。
第六步,根據第四步中得出的節(jié)點上下游關系,計算出本地節(jié)點的下游節(jié)點集中 至少有一個節(jié)點收到包的情況下,數據包從收到包的下游節(jié)點發(fā)送到目的節(jié)點需要的轉發(fā) 次數。先計算節(jié)點s的下游節(jié)點k收到包的概率,,對于目的節(jié)點,即節(jié)點序號k=l時,等于 節(jié)點s到目的節(jié)點的數據包成功接收率,即;對于其他節(jié)點,即節(jié)點序號大于1而小于s的 節(jié)點,,因此;然后計算讓下游節(jié)點集中每個節(jié)點都參與傳輸時所需的總傳輸次數,該值采 用遞歸迭代算法,按照節(jié)點序號先計算出前面節(jié)點的ELT值,利用這些ELT值來計算;最后 得到從下游節(jié)點集成功傳輸到目的節(jié)點所需要的最少傳輸次數。 第七步,將第五步和第六步的結果相加,,得到本地節(jié)點的ELT值,即本地節(jié)點到 目的節(jié)點的期望最少傳輸次數,然后按各節(jié)點的ELT升序排列,以此確定最終的上、下游節(jié) 點關系。 與現有技術相比,本發(fā)明具有如下的有益效果
1.提出一種適合無線網狀網絡中機會性路由的路由量度ELT,以源節(jié)點和目的節(jié) 點間機會性轉發(fā)時成功傳輸一個包所需要的最少傳輸次數為定義節(jié)點間距離的路由判據, 充分考慮了無線鏈路存在的干擾及負載情況、以及無線網絡數據傳輸的廣播特性,因此與 Hops、ETX等傳統路由量度相比,減少了節(jié)點間的數據傳輸次數,從而提高了網絡的吞吐率。
2.基于ELT定義節(jié)點間距離,劃分上游節(jié)點和下游節(jié)點,選擇出適合無線網狀網 機會性路由的最優(yōu)轉發(fā)節(jié)點集,充分利用網絡中空閑節(jié)點的傳輸能力來發(fā)揮機會性路由的 優(yōu)勢,讓網絡中收到數據包的節(jié)點都參與轉發(fā),因此與Hops、ETX等傳統路由量度相比更加 適合于機會性路由中機會性轉發(fā)節(jié)點集的選擇。
下面結合附圖和具體實施方式
對本發(fā)明的技術方案作進一步具體說明。
圖1為本發(fā)明的流程圖。
圖2為本發(fā)明實施例的節(jié)點布置關系拓撲圖。
具體實施例方式
下面結合圖1、2對本發(fā)明的實施例作詳細說明本實施例在以本發(fā)明技術方案為 前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于 下述的實施例。 本實施例以一個4層的教學樓為例,如圖2所示,節(jié)點布置在房間中, 一樓和四樓 均有一個房間布置了節(jié)點,分別為105室和410室,二樓和三樓均有兩個房間布置了節(jié)點, 分別為205室、210室和310室、315室。 當前105室的某PC機想發(fā)送數據給410室,其步驟如下
第一步,對每個無線Mesh節(jié)點加載一個探測包隊列,并按照一定的時間間隔周期性發(fā)送探測包,同時接受其他節(jié)點發(fā)送的探測包,將所接收到探測包的發(fā)送點標記 為接受節(jié)點的鄰居節(jié)點,并通過檢測一段時間內收到鄰居節(jié)點的探測包個數計算出節(jié)點間 的前向包和反向包發(fā)送成功率。本實施例中作為檢驗節(jié)點的'210'(其他節(jié)點行為與其相 同)在第一步過程中發(fā)現'105', '310', '315'和'410',并可以計算與之相鄰節(jié)點的前向 包發(fā)送成功率和反向包發(fā)送成功率。 第二步,根據第一步中所得的鏈路前向和反向包成功發(fā)送率,計算得到各節(jié)點對 其所有相鄰節(jié)點的發(fā)包成功率統計表,作為路由量度的初始依據。本實施例中'210'根據 與其鄰居節(jié)點'105', '310', '315'禾P'410'的前向包發(fā)送成功率和反向包發(fā)送成功率計算 出與他們之間的發(fā)包成功率,并記錄為發(fā)包成功率表,如'210'到'315'的前向包發(fā)送成功 率為0. 6,反向包發(fā)送成功率為0. 5,則他們之間的發(fā)包成功率為0. 6*0. 5=0. 3。
第三步,根據第二步中生成的發(fā)包成功率統計表,計算得到各節(jié)點到其所有相鄰 節(jié)點的單跳鏈路ETX統計表。本實施例中,'210'到其鄰居節(jié)點'105', '310', '315'和 '410'的單跳鏈路ETX表可以通過公式求得,如'210'到'315'的單跳。
第四步,根據第三步中生成的單跳鏈路ETX統計表,計算出各節(jié)點到目的節(jié)點的 ETX值,并將這些節(jié)點按到目的節(jié)點的ETX升序排列,以此區(qū)分上、下游節(jié)點和距離的遠近, ETX值越小表示距離目的節(jié)點越近。本實施例中,'210'到目的節(jié)點'410'的鏈路中,各鏈 路的ETX值之和如下
210—310—410 :
210—410 :
210—315—410 :
其他鏈路的ETX顯然會更大,因此就不一一列出了。通過比較,鏈路'210' — '415' 的ETX=2. 5為最小,因此'210'節(jié)點到目的節(jié)點'415'的ETX記為2. 5。
同樣,可得出其他節(jié)點的ETX :
節(jié)點 105205210310315410
ETX 4. 17 3. 33 2. 50 1. 25 2.00 0
按其升序排序為:{410, 310, 315, 210, 205, 105}。
第五步,根據第四步中得出的節(jié)點上下游關系,計算出本地節(jié)點需要發(fā)送包的次 數,以使得至少一個下游節(jié)點能夠收到其發(fā)送的包。本實施例中,'210'節(jié)點的下游節(jié)點集 為{410,310,315},根據可知該節(jié)點集接收到'210'發(fā)送的包的概率為,所以'210'節(jié)點成 功傳輸一個數據包到下游節(jié)點集所需最少傳輸次數為。 第六步,根據第四步中得出的節(jié)點上下游關系,計算出本地節(jié)點的下游節(jié)點集中 至少有一個節(jié)點收到包的情況下,數據包從收到包的下游節(jié)點發(fā)送到目的節(jié)點需要的轉發(fā) 次數。本實施例中,以'210'節(jié)點作為源節(jié)點發(fā)送數據包,下游節(jié)點集{410,310,315}中節(jié) 點k收到數據包的概率,那么有
q f ELT 4跳4 0. 4 0
3100.88 0.48 1.25
3150.916 0.036 2
所以,得到從下游節(jié)點集成功傳輸到目的節(jié)點所需要的最少傳輸次數。
7
第七步,將第五步和第六步的結果相加,即得到本地節(jié)點的ELT值,即本地節(jié)點到 目的節(jié)點的期望最少傳輸次數,并按各節(jié)點的ELT升序排列,以此確定節(jié)點間的最終上下 游關系。本實施例中,'210'節(jié)點的ELT值為1. 09+0. 73=1. 82。同樣,得到其他節(jié)點的ELT 值
節(jié)點 410310315210205105
ELTO 1. 25 2. 00 1. 82 3. 33 3. 16
按ELT升序排序為{410,310,210,315,105,205},作為最終的上、下游節(jié)點關系。由此 可知,在本實施例中,源節(jié)點'105'發(fā)送數據后,'205'節(jié)點和'315'節(jié)點參與機會性轉發(fā), 當'210'節(jié)點收到數據包后選擇新的轉發(fā)節(jié)點'310'節(jié)點和'315'節(jié)點參與機會性轉發(fā)。 因此在此例中,以ELT為路由量度選擇的轉發(fā)節(jié)點集是適合機會性路由的轉發(fā)節(jié)點集。
最后所應說明的是,以上具體實施方式
僅用以說明本發(fā)明的技術方案而非限制, 盡管參照較佳實施例對本發(fā)明進行了詳細說明,本領域的普通技術人員應當理解,可以對 本發(fā)明的技術方案進行修改或者等同替換,而不脫離本發(fā)明技術方案的精神和范圍,其均 應涵蓋在本發(fā)明的權利要求范圍當中。
權利要求
一種適合無線網狀網機會性路由的路由量度方法,其特征在于,它以節(jié)點間機會性轉發(fā)時成功傳輸一個包所需要的最少傳輸次數ELT作為機會性路由量度,包括如下步驟第一步,對每個無線Mesh節(jié)點加載一個探測包隊列,并按照一定的時間間隔周期性發(fā)送探測包,同時接受其他節(jié)點發(fā)送的探測包,將所接收到探測包的發(fā)送點標記為接受節(jié)點的鄰居節(jié)點,并通過檢測一段時間內收到鄰居節(jié)點的探測包個數計算出節(jié)點間的前向包和反向包發(fā)送成功率;第二步,根據第一步中所得的鏈路前向和反向包成功發(fā)送率,計算得到各節(jié)點對其所有相鄰節(jié)點的發(fā)包成功率統計表,作為路由量度的初始依據;第三步,根據第二步中生成的發(fā)包成功率統計表,計算得到各節(jié)點到其所有相鄰節(jié)點的單跳鏈路ETX統計表,所述ETX是指節(jié)點間沿最短路徑成功傳送一個探測包所需傳輸次數的預測值; 第四步,根據第三步中生成的單跳鏈路ETX統計表,計算出各節(jié)點到目的節(jié)點的ETX值,并將這些節(jié)點按到目的節(jié)點的ETX升序排列,以此區(qū)分上、下游節(jié)點和距離的遠近,ETX值越小表示距離目的節(jié)點越近;第五步,根據第四步中得出的節(jié)點上下游關系,計算出本地節(jié)點需要發(fā)送包的次數,以使得至少一個下游節(jié)點能夠收到其發(fā)送的包;第六步,根據第四步中得出的節(jié)點上下游關系,計算出本地節(jié)點的下游節(jié)點集中至少有一個節(jié)點收到包的情況下,數據包從收到包的下游節(jié)點發(fā)送到目的節(jié)點需要的轉發(fā)次數;第七步,將第五步和第六步的結果相加,即得到本地節(jié)點的ELT值,即本地節(jié)點到目的節(jié)點的期望最少傳輸次數,并按各節(jié)點的ELT升序排列,以此確定節(jié)點間的最終上下游關系。
2. 根據權利要求1所述的適合無線網狀網機會性路由的路由量度方法,其特征是,第二步所述發(fā)包成功率是指目的節(jié)點成功收到來自源節(jié)點的數據包,且源節(jié)點成功接收到來自目的節(jié)點的ACK包的概率,所以發(fā)包成功率p等于前向包成功發(fā)送率pf與反向包成功發(fā)送率pr的乘積,即J =
3. 根據權利要求2所述的適合無線網狀網機會性路由的路由量度方法,其特征是,在第三步中計算單跳鏈路的ETX的公式為<formula>formula see original document page 2</formula>式中,p為本地節(jié)點到某一相鄰節(jié)點的發(fā)包成功率。
4. 根據權利要求3所述的適合無線網狀網機會性路由的路由量度方法,其特征是,第五步中,對于某節(jié)點s,其下游節(jié)點集為{1,2……s-lh節(jié)點s的下游節(jié)點集中至少有一個節(jié)點收到包的概率,記為。
,簡記為,,%_1}=i-n(1-a),表示節(jié)點s到下游節(jié)點i之間的發(fā)包成功率;節(jié)點s成功傳輸一個數據包到下游節(jié)點集所需要的最少傳輸次數 - 1胸=——。
5. 根據權利要求4所述的適合無線網狀網機會性路由的路由量度方法,其特征是,第六步中,出本地節(jié)點的下游節(jié)點集中至少有一個節(jié)點收到包的情況下,數據包從收到包的下游節(jié)點發(fā)送到目的節(jié)點需要的轉發(fā)次數的計算方法為先計算節(jié)點S的下游節(jié)點k收到包的概率,對于目的節(jié)點,即節(jié)點序號k=l時,/(。等于節(jié)點S到目的節(jié)點的數據包成功接收率,即/化)=《W = A ;對于其他節(jié)點,即節(jié)點序號大于1而小于s的節(jié)點,xM 、 ,因此/(t) = 1 %} =, , ^ ;然后計算讓下游節(jié)點集中每個節(jié)點都參與傳輸時所需的總傳輸次數^-"^££7(^,該值采用遞歸迭代算法,按照節(jié)點序號先充<3計算出前面節(jié)點的ELT值,利用這些ELT值來計算;最后得到從下游節(jié)點集成功傳輸到目的三/(i)虹r(i)節(jié)點所需要的最少傳輸次數I^) = i1^_。
6.根據權利要求5所述的適合無線網狀網機會性路由的路由量度方法,其特征是,所述第七步中,用公式虹r(s)z D(s)得到本地節(jié)點的ELT值。
全文摘要
本發(fā)明提出一種適合無線網狀網絡中機會性路由的路由量度方法,用于計算源節(jié)點和目的節(jié)點間機會性轉發(fā)時成功傳輸一個包所需要的最少傳輸次數,并基于此路由量度定義節(jié)點間距離,劃分上游節(jié)點和下游節(jié)點。該方法充分考慮了機會性路由的廣播特性,利用網絡中空閑節(jié)點的傳輸能力,讓網絡中收到數據包的節(jié)點都參與轉發(fā),從而得到節(jié)點間按機會性路由方式轉發(fā)包時成功傳輸一個包所需要的最少傳輸次數。以最少傳輸次數為路由量度選出的轉發(fā)節(jié)點和傳統路由量度相比更加適應于機會性路由中機會性轉發(fā)節(jié)點集的選擇。
文檔編號H04L12/56GK101765143SQ201010125908
公開日2010年6月30日 申請日期2010年3月17日 優(yōu)先權日2010年3月17日
發(fā)明者付逸斐, 華鵬, 石柯 申請人:華中科技大學