999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于NS?3的MANET路由協議性能分析

2013-04-12 00:00:00陳濤陶文金楊琦
現代電子技術 2013年8期

摘 要: NS?3在多網卡處理和IP尋址策略方面具有很的好特性,為了提高MANET路由協議性能,采用了NS?3仿真工具對MANET路由協議進行分析,詳細闡述了如何搭建NS?3仿真平臺,并從網絡規模和動態拓撲角度分析比較了AODV,DSDV和OLSR三種路由協議的端到端平均時延和投遞率性能。仿真結果為協議的后續優化和改進提供了依據。

關鍵字: 路由算法; 協議仿真; MANET; NS?3

中圖分類號: TN711?34 文獻標識碼: A 文章編號: 1004?373X(2013)08?0055?04

0 引 言

隨著網絡技術和通信技術的蓬勃發展,如何在硬件條件不具備的情況下研究大規模網絡,如何快速設計、實現、分析新的協議和算法,如何比較新老系統和算法而不必花費巨資建立實際系統等問題日益成為網絡研究者關注的焦點。近年來,盛行的方式是通過計算機軟件對網絡協議、網絡拓撲、網絡性能進行模擬分析。采用這種網絡仿真的研究方法,降低了成本,研究方法靈活可靠,提高了研究效率?,F在主流的網絡仿真工具[1]主要有:OPNET,QualNet,NS?2。OPNET是商業軟件,軟件所提供的模型庫比較有限,而且主要集中于路由仿真。QualNet也是一款商業軟件,弱化了網絡分層的概念。NS?2的內容比較龐雜,各模塊間的協同及耦合不便于系統擴展。為此,在廣泛汲取現有網絡模擬器的成功經驗基礎上,美國華盛頓大學Thmos R. Henderson教授及其小組研發了一款極具特色的新型網絡仿真器——NS?3。相比其他網絡仿真工具,NS?3是一款開源軟件,在多網卡處理和IP尋址策略方面表現出更好特性,同時,NS?3的架構也相對更明了清晰,代碼不需做很大修改就可直接移植到真實網絡節點上,此外,研究者可根據自身需求進行任意拓展[2?3]。

1 MANET路由協議分析

移動無線自組織網絡(MANET)是一種無中心、自組織的分布式多跳網絡,MANET以其固有特點在某些特殊場景(如:救災、戰爭等)中得到了廣泛運用。路由協議的好壞直接影響到整個網絡性能的優劣。這里簡要介紹MANET中應用比較廣泛的3種平面路由協議[4]。DSDV(Destination?Sequenced Distance Vector)是一種表驅動路由協議,它是在傳統的距離矢量DV算法基礎上改進設計的,同時也被稱為消除環路的Bellman?Ford路由算法[5]。DSDV算法中每個節點都維護一張到達全網可達目的節點的路由表。相比DV算法,DSDV最大的區別是路由中增加了目的系列號(Sequence Number)字段,通過序列號來區別新舊路由信息。節點將收到新路由信息和當前路由信息比較,選擇序列號較大的路由記錄來更新路由表。若兩者序列號相同,則選擇跳數較小者。此外,全網節點要求周期性廣播路由包來進行路由維護。AODV(Ad Hoc On?Demand Distance Vector)是一種源驅動的路由協議[5],是DSR[6]協議結合了DSDV中的按需路由機制設計出來的。節點在發送數據包時,首先查找自己路由表是否有到達目的節點的路由信息,若有,則直接按照路由信息發送;若沒有,則執行路由發現過程。節點廣播路由請求包RREQ給自己鄰居,鄰居收到RREQ包后查詢自己路由表是否有到達目的節點路由信息,若有或本身就是目的節點,則將路由信息添加到路由應答包RREP,并將其反饋給源節點;若沒有,再將RREQ轉發給自己所有的鄰居。依次類推,直到到達目的節點或中間節點存在到達目的節點的路由。AODV協議通過定期廣播Hello分組來進行路由維護,一旦發現了某條通信鏈路斷開,節點就會在DELETE_PERIOD時間之后從路由表中刪除包含該斷開鏈路的路由,并發送ERROR(路由錯誤)報文來通知那些因為鏈路斷開而不可達的節點刪除相應的路由記錄或者對已經存儲的路由信息進行修復更新。

OLSR(Optimized Link State Routing)是一種優化的鏈路狀態路由協議,類似其他表驅動路由協議,節點需要周期性交互網絡路由信息[7]。被鄰居節點選作中繼節點(Multi Point Telay,MPR)的節點周期性向網絡廣播控制信息分組,分組中包括將它選作MPR的那些節點的信息,以告訴網絡中其他節點與這些節點之間相連。而且,只有MPR節點才能夠作為路由節點,其他非MPR節點不參與路由計算,也不需轉播控制信息。OLSR協議中主要通過HELLO和TC(Topological Control)兩種控制消息來感知廣播拓撲。通過HELLO消息實現鏈路偵測、鄰居偵聽,以此建立節點的本地鏈路信息表,同時用于向鄰居節點通告本節點的多點中繼MPR節點的選擇;TC消息負責執行MPR Selector鏈路狀態聲明,使得每個節點都能夠感知全網拓撲結構。最終,節點根據本地鏈路信息庫和拓撲集合中的信息,采用Dijkstra算法根據路徑最短的原則計算路由表。

2 NS?3仿真平臺搭建

2.1 NS?3仿真架構

NS?3是一款離散型模擬器,NS?3的網絡架構主要由模擬器內核和網絡構件2部分組成,如圖1所示。其中模擬器內核包括時間調度器和網絡模擬支持系統,是NS?3最核心的部分。相比NS?2,NS?3仿真時間不僅支持Default Scheduler,而且還支持Realtime Scheduler。NS?3的網絡模擬支持系統包括:Attribute系統、Logging系統和Tracing系統。由于廣泛汲取了其他網絡仿真工具的經驗和技術,NS?3的內核在可量測性、可擴展性、模塊化、支持仿真與現實融合等方面具有極大優勢[8]。NS?3的網絡構件包括:節點(Node)、應用(Application)、協議棧(Protocol Stack)、網絡設備(Net Device)、信道(Channel)、拓撲生成器(Helper)等。網絡構件是對真實網絡的各個部分的抽象,具有低耦合高內聚特點,NS?3通過低層次的抽象,使得仿真效果盡可能反映真實網絡的性能。

2.2 NS?3仿真流程

以下簡單介紹NS?3代碼編寫的特點及如何在NS?3中搭建一個完整仿真場景的過程。NS?3運行在Linux環境下,對Linux系統版本有要求且依賴較多系統組件,安裝過程較復雜。NS?3仿真器代碼核心部分全部使用C++語言編寫,外部配置、編譯、執行使用了基于Python的waf系統,方便使用者配置仿真場景。NS?3完全模擬了TCP/IP的協議棧,并且把每一層的功能模塊化,在NS?3安裝完成后,默認只是生成各個功能模塊,自帶的仿真例子沒有生成,需要把這些例子復制到scrach文件夾下才能運行,并且NS?3中編寫好的代碼也都需要放到該文件夾下才能運行。在NS?3中搭建仿真場景遵循固定的流程,在編寫C++代碼時一般可以分為以下幾個步驟:

(1)設置仿真場景的全局參數。比如采用Seed?Manager::SetSeed(7)設置隨機數種子,以保證產生相同的隨機序列,設置隨機平面移動模型(RandomWalk2dMobilityModel)的參數Config::SetDefault(\"NS?3::RandomWalk?2dMobilityModel::Mode\", StringValue (\"Tim?e\"))等,以上的全局設定使得仿真場景可以重現。

(2)定義仿真中使用的參數,比如數據包的大小,需要創建的節點個數,物理層使用的傳輸速率等,這些參數可以使用CommandLine類來實現并解析,方便在仿真過程中使用外部腳本動態改變這些參數。

(3)創建網絡節點,然后按照TCP/IP協議,從下而上給網絡節點安裝協議棧。NS?3在實現中考慮到為了方便使用者,協議棧的每一層都實現了幫助類(XXXHelper),使用者可以方便地使用這些幫助類設定每一層參數。比如使用YansWifiPhyHelper設定物理層協議,使用YansWifiChannelHelper來設置傳輸信道類型,使用NqosWifiMacHelper來設置數據鏈路層協議等。最后通過幫助類給節點安裝路由協議,分配IP地址,至此便搭建了TCP/IP的物理層、數據鏈路層和網絡層,實現網絡的通信功能。

(4)通信網絡搭建好后,需要編寫實驗程序,即在節點之間的收發數據包的代碼,以達到測試底層協議的目的。NS?3中為了減少使用者的編程工作量,同樣提供了豐富易用的函數,一般都是先創建使用UDP協議套(Socket),同時把接收節點號、發送節點號作為參數傳入,再給套接字指定IP地址,端口號,最后讓發送節點連接到接收節點、為接收節點指定回調函數。

(5)完成節點之間如何發送數據包的代碼后,需要編寫接收節點的回調函數,即在接收節點收到數據包后調用的函數??梢栽诨卣{函數中對數據包的時延,投遞率進行統計。

(6)使用Simulator::Schedule函數設定調度事件即設定源節點的發送數據的開始時間,發送間隔,發送數據包總數等。至此,整個場景部署完成。

3 路由協議的仿真及性能比較

在Ubuntu 10.04環境下使用NS?3.16對AODV、DSDV和OLSR這三種路由協議進行仿真,并在相同的仿真場景下比較其性能指標。分別在靜態場景和動態場景下,考察網絡規模、網絡拓撲變化對協議性能的影響。

3.1 靜態場景

仿真場景設置:模擬器的隨機數種子設定為常數7,節點按網格分布,網格邊長500 m,節點的規模從2×2,3×3逐漸增大到18×18;設定節點的通信半徑為656 m,選取網格中對角線的一個節點向另一個節點發送UDP數據包,共發送500個數據包,包的大小為1 000 B,發送時間間隔為1 s。這里節點的物理層傳輸延遲模型采用ConstantSpeedPropagationDelayModel,衰落模型選用FriisPropagationLossModel,數據傳輸速率設置為1 Mb/s。增加網絡節點數,考察3種協議的端到端平均時延和包投遞率情況,如圖2和圖3所示。

由圖2可以看出,3種路由協議的平均時延隨節點規模的增大而增大,其中AODV和OLSR協議受到的影響較小,而DSDV的平均時延隨著節點規模的增大而急劇增大。圖3中AODV,OLSR的數據包投遞率隨節點數增大而不變,能保證百分百交付;而DSDV協議的投遞率在節點數增大到一定的規模后開始下降。以上特性說明在節點規模增大時,AODV和OLSR協議的性能要優于DSDV。

3.2 動態場景

仿真場景設置:在靜態場景的基礎上,為節點添加RandomWalk2dMobilityModel運動模型,該模型為每個節點隨機選擇一個方向,以設定的速度移動一段時間后再隨機選擇另一個方向繼續移動,直接到仿真結束。設定相同的隨機數種子以保證每次仿真中節點的運行軌跡一致。設定網格的邊長為300 m,節點的規模固定為7×7,即節點運動的區域限制在2 100 m×2 100 m的矩形內。仍考察對角線的一個節點向另一個節點發送UDP數據包,每次仿真發送3 000個數據包。增加節點移動速度,考察三種協議的端到端平均時延和包投遞率情況,如圖4和圖5所示。

從圖4和圖5可以看出,3種路由協議的平均時延與節點的移動速度相關性不大,在速度較小時,3種路由協議的平均時延較穩定,但在速度較大時,由于節點在矩形區域內做無規則的快速運動,數據包從源節點傳輸到目標節點的跳數不確定,所以平均時延變化具有一定隨機性。

而由圖5可以看出,隨著節點移動速度的增大,數據包的投遞率逐漸下降,AODV協議因其屬于按需路由而不需要頻繁地維護路由信息,所以在速度較大時較其他2種協議表現更好。

4 結 語

論文通過NS?3搭建了MANET路由仿真平臺,從端到端平均時延和投遞率角度分析比較了MANET三種路由協議。靜態場景中,節點數增加時,3種協議端到端平均時延均隨之增加,但AODV和OLSR增加不明顯,并且兩者的投遞率也幾乎不受網絡規模影響,相比之下,DSDV端到端時延和投遞率受網絡規模影響較明顯。動態場景中,節點移動速度增加,3種協議的投遞率都降低,而且總體上平均時延較小者,表現出更好的投遞率。

參考文獻

[1] 雷擎,王行剛.計算機網絡模擬方法與工具[J].通信學報,2001,22(9):84?90.

[2] HENDERSON T R, LACAGE M, RILEY G F. Network simulations with the NS?3 simulator [C]// Proceedings of the ACM SIGCOMM. Seattle, Washington: [s.n.], 2008: 1111?1121.

[3] NS?3 developers. NS?3 Tutorial [EB/OL]. [2012?11?13. http://www.nsnam.org/docs/release/3.15/manual/ns?3manual.

[4] 王立平,崔智林,馬力.基于OPNET仿真平臺的MANET路由協議性能分析[J].現代電子技術,2011,34(14):71?74.

[5] PERKINS C E, BHAGWAT P. Highly dynamic destination?sequenced distance vector routing(DSDV) for mobile computer [C]// Proc. of ACMSIGCOMM’94. [S.l.]: ACM, 1994, 8: 250?256.

[6] JOHNSOM D, MALTZ D A, BROCH J. The dynamic source routing protocol for mobile AD hoc networks (Internet?draft) [M]. [S.l.]: Mbole Ad?hoc Network(MANET) Working Group,IETF, 1998.

[7] CLAUSEN T, JACQUET P, ADJIH C, et al. Optimized link state routing protocol [J]. 2003.

[8] 張登引,張保峰.新型網絡仿真器NS?3研究[J].計算機技術與發展,2009,19(11):80?84.

[9] PERKINS C, BELDING R E D S. RFC3561: AD hoc on?demand distance vector (AODV) routing [EB/OL]. [2006?07?13]. http://www.cnpaf.net/Class/Rfcen/0532918543250102.

主站蜘蛛池模板: 久久人人爽人人爽人人片aV东京热| 精品91自产拍在线| 久久中文电影| 色婷婷色丁香| 日韩欧美视频第一区在线观看| 亚洲国产成人超福利久久精品| 国产又粗又爽视频| 欧美色综合网站| 99精品国产自在现线观看| 国产精品刺激对白在线| 亚洲成a人片| 国产成人做受免费视频| 天天躁夜夜躁狠狠躁躁88| 日韩毛片免费| 国产微拍一区二区三区四区| 91蜜芽尤物福利在线观看| 99精品久久精品| 亚洲第一成年免费网站| 国产一级片网址| 激情成人综合网| 一级毛片在线播放免费观看| 国产在线观看精品| 欧美午夜视频| 青青青国产精品国产精品美女| 欧美乱妇高清无乱码免费| 区国产精品搜索视频| 国产99视频精品免费观看9e| 波多野结衣在线se| 国产亚洲美日韩AV中文字幕无码成人| 91麻豆国产视频| 亚洲资源在线视频| 亚洲视频黄| 亚洲天堂首页| 玩两个丰满老熟女久久网| 亚洲无码91视频| 久久国产精品电影| 激情六月丁香婷婷四房播| 国产综合欧美| 91视频青青草| 亚洲开心婷婷中文字幕| 日韩高清在线观看不卡一区二区| 嫩草影院在线观看精品视频| 亚洲视频无码| 97国产在线视频| 久久综合色88| 91蜜芽尤物福利在线观看| 久久99国产综合精品女同| 亚洲 欧美 中文 AⅤ在线视频| 成人午夜天| 99尹人香蕉国产免费天天拍| 国产精品九九视频| 中国国产高清免费AV片| 无码福利视频| 国产女人18水真多毛片18精品 | 日韩精品免费在线视频| 日韩在线成年视频人网站观看| 亚洲Va中文字幕久久一区 | 亚洲色婷婷一区二区| 日韩久草视频| 亚洲欧洲自拍拍偷午夜色无码| 国产精品免费露脸视频| 久久精品国产免费观看频道| 91免费观看视频| 无套av在线| 无码aaa视频| 2020久久国产综合精品swag| 亚洲天堂伊人| 青青网在线国产| 美女被躁出白浆视频播放| a天堂视频在线| 国产欧美综合在线观看第七页| 亚洲无线一二三四区男男| 白浆免费视频国产精品视频| 亚洲精品成人片在线播放| 成年人视频一区二区| 欧美三级日韩三级| 99ri精品视频在线观看播放| 无码AV日韩一二三区| 久久久久夜色精品波多野结衣| 精品国产自在在线在线观看| 国产毛片高清一级国语| 亚洲精品国产成人7777|