新四季網

一種針對無線Adhoc網絡的AODV路由協議的改進方法

2023-05-08 14:39:56 1

專利名稱:一種針對無線Ad hoc 網絡的AODV路由協議的改進方法
技術領域:
本發明涉及的是一種網絡,具體地說是網絡的路由協議。
背景技術:
無線Ad hoc網絡,又稱為MANET網絡。一般把基於Wireless Ad hoc Network技術的網絡譯為無線Ad hoc網絡,或無線自組織網,移動Ad hoc網絡或無線多跳網絡等。無線Ad hoc網絡是由眾多的無線移動節點通過分布式算法自組織而成的一種獨立的網絡自治系統,具有自我建立、自我組織及自我管理的能力。網絡中所有節點的地位是平等的,不需要設置任何固定的基礎設施,具有很強的抗毀性。每個節點兼有終端和路由器的功能並且能夠自由轉換,這些節點可以自發地、迅速地建立通信聯繫,相互協作,共同完成任務,並可以在移動的、不穩定的情況下有效地利用網絡資源,提供有效的通信服務。無線Ad hoc網絡部署方便,建立靈活,因而在經濟和商業等領域具有誘人的應用前景。無線Ad Hoc網 絡中被廣泛使用的AODV路由協議使用的就是最小跳數判據,由於Ad hoc網絡拓撲結構和信道不斷變化,使得最小跳數路由度量往往不能夠找出理想的路徑。並且,傳統的分層設計不能靈活地做出動態調整,所以通過跨層設計來提高網絡性能的思想就顯得格外重要,而路由協議的性能是網絡性能的一個重要指標。

發明內容
本發明的目的在於提供降低用戶的平均端到端的時延和平均路由開銷的一種針對無線Ad hoc網絡的AODV路由協議的改進方法。本發明的目的是這樣實現的本發明一種針對無線Ad hoc網絡的AODV路由協議的改進方法,其特徵是選取跨層路由判據參數如果一個節點已經發送了一個RTS分組或一個數據分組,卻沒有接收到相應的CTS或ACK應答分組,那麼該節點經過退避時間後,重新發送RTS或數據分組,直到接收到相應的CTS或ACK應答分組或重傳次數達到設定的最大值;在MAC層聲明兩個變量來分別記錄RTS的重傳次數和數據分組的重傳次數,即NRTS_和NACK_,並初始化為0,對於RTS,當節點收到相應的CTS時令節點發送該RTS需要的重傳次數NRTS_計數,每重傳一次,該數值加I ;如果重傳次數超過了 ShortRetryLimit即最大重傳次數,就將節點發送該RTS需要的重傳次數NRTS_記為ShortRetryLimit,然後就丟棄該RTS分組,同樣對於數據分組,當節點收到相應的ACK時令節點發送該數據分組需要的重傳次數嫩0(_正常計數,每重傳一次,該數值加I ;如果重傳次數超過了 LongRetryLimit即最大重傳次數,將節點發送該數據包需要的重傳次數NACK_記為LongRetryLimit,然後就丟棄該數據包;定義網絡節點最近的分組重傳率為RTRA,RTRA的計算如下所示RTRA=(NRTS_+NACK_)/(NRTS_+NACK_+2),
在網絡節點需要更新反向路由時,就將接收到的RREQ分組的RTRA值更新為網絡節點MAC層計算的RTRA ;在路由表更新之前,通過RREQ分組包頭來攜帶該跨層信息,在RREQ分組中的包頭中添加兩個欄位RTRA和rq_avRTRA,並初始化為0,rq_avRTRA是RREQ分組在傳輸過程中經過的節點的MAC層分組重傳率的平均值,路由表中也添加欄位rt_avRTRA,表示該路徑中節點的平均重傳率,初始化為0,rq_avRTRA 的計算如下rq_avRTRA2=(rq_avRTRAlX (rq_hop_count-l)+RTRA)/rq_hop_count,其中rq_avRTRAl為更新之前的平均重傳率,初始值為0 ;rq_avRTRA2為更新後的平均重傳率;rq_hop_count是RREQ分組中標示的從源節點到處理RREQ分組節點的跳數; 實現跨層路由更新在網絡層獲得入口指針後,添加入口指針mymac來獲得MAC層接口對象,並通過調用該對象的函數實現跨層參數RTRA的傳遞,聲明一個指針指向節點自己的路由代理對象,然後將該節點的MAC層接口對象掛在路由指針上,參數RTRA跨接口隊列和邏輯鏈路層兩層,從MAC層傳遞到網絡層。本發明還可以包括I、所述的路由更新的方法為如果RREQ分組的源節點序列號大於收到RREQ分組的節點維護的反向路由的序列號,或者二者相等但是RREQ分組中rq_avRTRA和跳數的乘積小於反向路由中rt_avRTRA和反向路由的跳數的乘積,則將反向路由目的節點序列號更新為RREQ分組的源節點序列號;反向路由的跳數更新為RREQ分組的跳數;下一跳地址更新為發送RREQ拷貝的節點的IP位址;反向路由的平均重傳率更新為RREQ分組經過的所有節點的平均重傳率,並設置表項的「過時定時器」。本發明的優勢在於(I)本方法適用於無線Ad hoc網絡中的可移動節點的AODV路由協議。(2)本方法基於Linux平臺利用C++語言開發實現,由於C++語言自身具有的特性,所以實現的方法接入速度快,計算量小,內存佔用低。(3)本方法基於跨層技術對Ad Hoc網絡的AODV路由協議改進,使得在路由選擇的時候考慮到信道的擁塞情況,從而提高網絡性能。


圖I為本發明的流程圖;圖2為本方法中MAC層分組重傳情況;圖3a為傳統AODV路由協議與改進後的AODV路由協議(RAODVW^比圖I,圖3b為傳統AODV路由協議與改進後的AODV路由協議(RAODV)對比圖2。具體實施方下面結合附圖舉例對本發明做更詳細地描述結合圖I 3,本方法主要是針對路由發現過程中的路由更新操作進行改進,路由協議的其餘過程不變。
本發明的實施面向的是無線Ad hoc網絡的AODV路由協議,它的功能是改進基於傳統分層設計的路由協議,使得在路由選擇的時候考慮到信道的擁塞情況,提高無線網絡的性能。改進後的AODV路由協議可以應用於任意無線Ad hoc網絡的移動節點中。首先,選取跨層路由判據參數。Ad Hoc網絡在MAC層使用的是具有分布式協調功能的IEEE 802. 11 MAC協議。該協議的基礎是載波監聽多址訪問與碰撞迴避(CSMA/CA)協議。該協議在CSMA中結合使用RTS/CTS握手協議,即發送節點與接收節點在發送數據分組之前先進行的RTS/CTS分組的交互。如果一個節點已經發送了一個RTS分組或一個數據分組,卻沒有接收到相應的CTS或ACK應答分組,那麼該節點經過一段退避時間後,會重新發送RTS或數據分組。其重傳情況如圖2所示。節點I向節點2發送RTS,只要節點I沒有收到相應的CTS應答,就認為之前發送的RTS沒有傳送成功,然後重傳RTS,直到節點I收到相應的CTS或者該RTS分組的重傳次數已經達到了最大值(最大重傳次數)。類似,只要節點I沒有收到相應的ACK,就會重傳數據分組,直到節點I收到相應的ACK或者該數據分組的重傳次數已經達到了最大重傳次數。因此一個節點在最近時間內的重傳次數(包括RTS分組、數據分組的重傳次數)反·映了信道競爭的激烈程度和局部網絡的擁塞狀況。在MAC層聲明兩個變量來分別記錄RTS的重傳次數和數據分組的重傳次數,即■丁5_和嫩0(_,並初始化為O。對於RTS,當節點收到相應的CTS的時候說明之前的RTS傳輸成功,這時就讓節點發送該RTS需要的重傳次數NRTS_E常計數,每重傳一次,該數值加I ;如果重傳次數超過了 ShortRetryLimit (最大重傳次數),就將節點發送該RTS需要的重傳次數NRTS_記為ShortRetryLimit,然後就丟棄該RTS分組。同樣,對於數據分組,當節點收到相應的ACK的時候,說明之前的數據分組傳輸成功,這時讓節點發送該數據分組需要的重傳次數嫩0(_正常計數,每重傳一次,該數值加I ;如果重傳次數超過了 LongRetryLimit(最大重傳次數),就令就將節點發送該數據包需要的重傳次數NACK_記為LongRetryLimit,然後就丟棄該數據包。這樣NRTS_和NACK_就分別記錄了網絡節點最近一次傳輸RTS和數據分組時候重傳的次數。定義網絡節點最近的分組重傳率為RTRA (Retransmit rate),每次重傳之前,RTS或者數據分組都已經傳輸過一次,所以,RTRA的計算如下所示RTRA=(NRTS_+NACK_)/(NRTS_+NACK_+2)在網絡節點需要更新反向路由時,就將接收到的RREQ分組的RTRA值更新為網絡節點MAC層計算的RTRA。在路由表更新之前,通過RREQ分組包頭來攜帶該跨層信息。在RREQ分組中的包頭中添加兩個欄位RTRA和rq_avRTRA,並初始化為O。其中,RTRA是接收到RREQ分組的節點最近一段時間內在MAC層的分組重傳率,也是從MAC獲取的參數,而rq_avRTRA是RREQ分組在傳輸過程中經過的節點的MAC層分組重傳率的平均值。路由表中也添加欄位r t_avRTRA,表示該路徑中節點的平均重傳率,初始化為O。rq_avRTRA 的計算如下rq_avRTRA2=(rq_avRTRAlX (rq_hop_count_l)+RTRA)/rq_hop_count其中rq_avRTRAl為更新之前的平均重傳率,初始值為0 ;rq_avRTRA2為更新後的平均重傳率;
rq_hop_count是RREQ分組中標示的從源節點到處理RREQ分組節點的跳數。最後在路由協議AODV中,採用新的路由判據跳數與平均重傳率的乘積,來選擇路由。然後,實現跨層路由更新。TCP/IP各層的實現對應的都是一些類,只要得到個協議層類的入口指針就可以使相關層之間相互通信。於是只要在網絡層獲得入口指針,就可以在網絡層調用MAC層的函數,傳遞MAC層的參數RTRA。在網絡層獲得入口指針後,需要添加一個入口指針mymac來獲得MAC層接口對象,並通過調用該對象的函數實現跨層參數RTRA的傳遞。聲明一個指針指向節點自己的路由代理對象,然後將該節點的MAC層接口對象掛在路由指針上。這樣,在創建無線節點的時 候,路由模塊跟MAC模塊就關聯到一起了。經過修改,參數RTRA就會跨接口隊列和邏輯鏈路層兩層,從MAC層傳遞到網絡層。具體路由更新如果RREQ分組的源節點序列號大於收到RREQ分組的節點維護的反向路由的序列號,或者二者相等但是RREQ分組中rq_avRTRA和跳數的乘積小於反向路由中rt_avRTRA和反向路由的跳數的乘積,就將反向路由目的節點序列號更新為RREQ分組的源節點序列號;反向路由的跳數更新為RREQ分組的跳數;下一跳地址更新為發送RREQ拷貝的節點的IP位址;反向路由的平均重傳率更新為RREQ分組經過的所有節點的平均重傳率,並設置表項的「過時定時器」。類似地,節點收到RREP分組後也會做相應正向路由的更新。對RREP分組包頭的修改以及正向路由更新操作的修改與收到RREQ分組的修改相同,在此不作贅述。最後,應用改進後的AODV路由協議。構建的傳統AODV路由協議與改進後的AODV路由協議(RAODV)對比實驗設置了兩組,每一組實驗設置一個參數變化,然後分別觀察並分析改進前後網絡性能的變化。每一組實驗中,相同條件進行10次,每次隨機設置一個不同的場景,分析該條件下的網絡性能時,求這10次仿真的平均值即可。第一組實驗設置50個移動節點,實驗時間為300s。節點隨機分布在1000m*1000m的平面正方形區域內,最大連接數設置為30。CBR源的發包率為每秒鐘0.25個數據包,節點向任意方向隨機移動,從一個位置隨機移動到另一個位置的停留時間取IOs,其最大移動速度分別取 lm/s, 4m/s, 8m/s, 12m/s, 16m/s, 18m/s, 20m/s。第二組實驗設置50個移動節點,實驗時間為300s。節點隨機分布在1000m*1000m的平面正方形區域內。CBR源的發包率為每秒鐘0.25個數據包。節點向任意方向隨機移動,其最大移動速度取lOm/s,從一個位置隨機移動到另一個位置的停留時間分別取10s。最大連接數分別取5,10,15,20,25,28,30。如圖3a所示,橫坐標表示的是節點最大移動速度,縱坐標表示的是平均端到端時延。兩種路由算法的端到端時延都呈增大趨勢。改進後的平均端到端時延明顯比改進前端到端的時延小,且變化趨勢相對穩定,並沒有隨著最大引動速度的增大而劇烈變化。易得出,RAODV具有更好的性能。如圖3b所示,橫坐標表示的是節點間的最大連接數,縱坐標表示的是平均端到端時延。從圖中可以看出,隨著節點間的最大連接數的增加,平均端到端時延總體並沒有規則變化。對比改進前後的AODV路由協議的平均端到端時延,雖然RAODV沒有AODV穩定,但是平均端到端時延總體是小於AODV的。 經過多次實驗,結果表明協議經過改進後,平均端到端時延明顯減小,而平均路由開銷也稍有減少。因此,RAODV協議平均路由開銷和平均端到端時延均有改善,易得出,改進後的算法更優。
權利要求
1.一種針對無線Ad hoc網絡的AODV路由協議的改進方法,其特徵是 選取跨層路由判據參數 如果一個節點已經發送了一個RTS分組或一個數據分組,卻沒有接收到相應的CTS或ACK應答分組,那麼該節點經過退避時間後,重新發送RTS或數據分組,直到接收到相應的CTS或ACK應答分組或重傳次數達到設定的最大值; 在MAC層聲明兩個變量來分別記錄RTS的重傳次數和數據分組的重傳次數,即NRTS_和NACK_,並初始化為0,對於RTS,當節點收到相應的CTS時令節點發送該RTS需要的重傳次數NRTS_計數,每重傳一次,該數值加I ;如果重傳次數超過了 ShortRetryLimit即最大重傳次數,就將節點發送該RTS需要的重傳次數NRTS_記為ShortRetryLimit,然後就丟棄該RTS分組,同樣對於數據分組,當節點收到相應的ACK時令節點發送該數據分組需要的重傳次數NACK_正常計數,每重傳一次,該數值加I ;如果重傳次數超過了 LongRetryLimit即最大重傳次數,將節點發送該數據包需要的重傳次數NACK_記為LongRetryLimit,然後就丟棄該數據包; 定義網絡節點最近的分組重傳率為RTRA,RTRA的計算如下所示RTRA=(NRTS_+NACK_)/(NRTS_+NACK_+2), 在網絡節點需要更新反向路由時,就將接收到的RREQ分組的RTRA值更新為網絡節點MAC層計算的RTRA ; 在路由表更新之前,通過RREQ分組包頭來攜帶該跨層信息,在RREQ分組中的包頭中添加兩個欄位RTRA和rq_avRTRA,並初始化為0,rq_avRTRA是RREQ分組在傳輸過程中經過的節點的MAC層分組重傳率的平均值,路由表中也添加欄位rt_avRTRA,表示該路徑中節點的平均重傳率,初始化為0, rq_avRTRA的計算如下rq_avRTRA2=(rq_avRTRAlX (rq_hop_count-l)+RTRA)/rq_hop_count, 其中rq_avRTRAl為更新之前的平均重傳率,初始值為0 ;rq_avRTRA2為更新後的平均重傳率;rq_hop_count是RREQ分組中標示的從源節點到處理RREQ分組節點的跳數; 實現跨層路由更新 在網絡層獲得入口指針後,添加入口指針mymac來獲得MAC層接口對象,並通過調用該對象的函數實現跨層參數RTRA的傳遞,聲明一個指針指向節點自己的路由代理對象,然後將該節點的MAC層接口對象掛在路由指針上,參數RTRA跨接口隊列和邏輯鏈路層兩層,從MAC層傳遞到網絡層。
2.根據權利要求I所述的一種針對無線Adhoc網絡的AODV路由協議的改進方法,其特徵是所述的路由更新的方法為 如果RREQ分組的源節點序列號大於收到RREQ分組的節點維護的反向路由的序列號,或者二者相等但是RREQ分組中rq_avRTRA和跳數的乘積小於反向路由中rt_avRTRA和反向路由的跳數的乘積,則將反向路由目的節點序列號更新為RREQ分組的源節點序列號;反向路由的跳數更新為RREQ分組的跳數;下一跳地址更新為發送RREQ拷貝的節點的IP位址;反向路由的平均重傳率更新為RREQ分組經過的所有節點的平均重傳率,並設置表項的「過時定時器」。
全文摘要
本發明的目的在於提供一種針對無線Ad hoc網絡的AODV路由協議的改進方法,包括以下步驟選取跨層路由判據參數,網絡節點最近的分組重傳率RTRA和RREQ分組在傳輸過程中經過的節點的MAC層分組重傳率的平均值,在網絡層獲得入口指針後,添加入口指針mymac來獲得MAC層接口對象,並通過調用該對象的函數實現跨層參數RTRA的傳遞,聲明一個指針指向節點自己的路由代理對象,然後將該節點的MAC層接口對象掛在路由指針上,參數RTRA跨接口隊列和邏輯鏈路層兩層,從MAC層傳遞到網絡層。本發明降低了用戶的平均端到端的時延和平均路由開銷。
文檔編號H04W40/24GK102781064SQ201210160270
公開日2012年11月14日 申請日期2012年5月22日 優先權日2012年5月22日
發明者馮光升, 林俊宇, 王慧強, 田蘇梅, 鄭晨 申請人:哈爾濱工程大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀