基于contiki平臺的路由協(xié)議仿真_第1頁
基于contiki平臺的路由協(xié)議仿真_第2頁
基于contiki平臺的路由協(xié)議仿真_第3頁
基于contiki平臺的路由協(xié)議仿真_第4頁
基于contiki平臺的路由協(xié)議仿真_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、評定成績:課程設計報告(傳感器網(wǎng)絡組網(wǎng))設計題目:基于contiki平臺的路由協(xié)議及仿真學院名稱:自動化學院學生姓名:專業(yè):班級:學號:指導教師:填表時間:2016年5月摘要重慶郵電大學本科課程設計報告摘要路由協(xié)議執(zhí)行網(wǎng)絡拓撲描述、路由選擇和數(shù)據(jù)包轉(zhuǎn)發(fā)的功能,影響整個網(wǎng)絡的性能和存活時間?,F(xiàn)有的路由協(xié)議需要發(fā)送大量數(shù)據(jù)包維護網(wǎng)絡拓撲,以及大量的存儲空間來存儲路由條目。由于硬件的限制,無線傳感器無論是能量還是處理能力,存儲能力都受到了極大的限制。因此,IETFROLLX作組提出了一種針對低功耗有損網(wǎng)絡的IPV6路由協(xié)議,即RPLM由協(xié)議。文中對RPL路由協(xié)議的拓撲構(gòu)建過程進行分析,并通過利用co

2、oja仿真工具進行仿真,在仿真中顯示出DODA的構(gòu)建過程,并對進行仿真出來的各種拓撲結(jié)構(gòu)進行能耗的分析,在仿真過程中直觀地顯示涓流機制。關鍵字:IPV6RPL路由協(xié)議仿真能耗分析目錄重慶郵電大學本科課程設計報告目錄摘要I第一章緒論11.1 設計題目:11.2 設計任務:11.3 設計要求:11.4 參考資料:1第二章總體方案設計(或系統(tǒng)建模)22.1 RPL概述22.1.1 DODAG的構(gòu)建過程22.1.2 環(huán)路避免的機制22.1.3 涓流機制32.2 基于Contiki平臺的RPL路由協(xié)議仿真3第三章個人設計工作(或系統(tǒng)仿真分析)53.1 DODAG圖構(gòu)建分析53.2 能耗的分析63.3 涓

3、流機制83.4 其他參數(shù)修改:8第四章設計總結(jié)9參考文獻10附錄11II第一章緒論重慶郵電大學本科課程設計報告第一章緒論1.1 設計題目:基于Contiki平臺的傳感網(wǎng)路由協(xié)議設計與仿真1.2 設計任務:基于Contiki操作系統(tǒng)和Cooja仿真器,運用所學的無線傳感網(wǎng)知識,選擇一種典型的傳感網(wǎng)路由協(xié)議進行組網(wǎng)設計和仿真。路由協(xié)議可在AODVRPLRIME等協(xié)議中任選一種,也可選擇其它典型的傳感網(wǎng)路由協(xié)議。1.3 設計要求:1 .掌握Contiki物聯(lián)網(wǎng)平臺開發(fā)的基礎知識。2 .組網(wǎng)規(guī)模不少于20個節(jié)點。3 .完成網(wǎng)絡的運行場景分析、拓撲結(jié)構(gòu)規(guī)劃和路由協(xié)議設計。4 .在Contiki平臺上獨立

4、編寫符合需求的傳感網(wǎng)程序。5 .采用Contiki自帶的網(wǎng)絡仿真器,對編寫的程序和網(wǎng)絡路由協(xié)議進行仿真,給出網(wǎng)絡運行效果圖。6 .調(diào)節(jié)路由協(xié)議的一些參數(shù),對路由協(xié)議的性能變化進行分析。1.4參考資料:1. Contiki開發(fā)組.Contiki:TheOpenSourceOSfortheInternetofThings./2 .桂勁松.物聯(lián)網(wǎng)系統(tǒng)設計.北京:電子工業(yè)出版社.2013.3 .謝希仁.計算機網(wǎng)絡.北京:電子工業(yè)出版社.2008.4 .李曉維.無線傳感器網(wǎng)絡技術.北京:北京理工大學出版社.2007.重慶郵電大學本科課程設計報告第二章總體設

5、計方案(或系統(tǒng)建模)第二章總體方案設計(或系統(tǒng)建模)2.1 RPL概述RPL是為LLN而設計的距離矢量路由協(xié)議,通過使用目標函數(shù)和度量集合構(gòu)建具有目的地的有向無環(huán)圖(DODAG。目標函數(shù)利用度量和約束條件的集合計算出最優(yōu)路徑。由于網(wǎng)絡部署的目的性有異,同一網(wǎng)絡可能需要不同的鏈路質(zhì)量要求等等。2.1.1 DODAG的構(gòu)建過程DODAG構(gòu)造過程由根節(jié)點或LoWPANi界路由器(LBR發(fā)起。為了實現(xiàn)DODAG的構(gòu)造,RPL基于ICMPv6新增加了如下三條控制消息:DIS、DIO、DAORPL支持三種基本的數(shù)據(jù)傳輸模式:多點到點,Multipoint-to-Point(MP2P、點到多點,Point-

6、to-Multipoint(P2MP)、點到點,Point-to-Point(P2P).。首先來說實現(xiàn)為MP2刖造上行到根節(jié)點的品&徑。根節(jié)點利用DIO消息廣播DODA信息;根節(jié)點的鄰居節(jié)點收到DIO后,根據(jù)一定的準則,決定是否加入這個DODAG這些準則包括:目標函數(shù)、DAGtt性、各種自定義的本地策略等,當某個鄰居節(jié)點加入所廣播的DODAG?,它就建立了一條到達DODAG節(jié)點的路徑。根節(jié)點被稱為該節(jié)點的“父節(jié)點”。如果新加入圖的節(jié)點類型是路由器,它將向自己的鄰居節(jié)點繼續(xù)廣播包含DODAG息的DIO消息。如果新加入圖的節(jié)點是“葉子節(jié)點”,則只是完成入網(wǎng)動作,不廣播DIO消息。鄰居節(jié)點不

7、斷重復上述廣播和加入動作,直至到達網(wǎng)絡的所有葉子節(jié)點。每個節(jié)點都有一條路徑由指向自己的父節(jié)點,通過將數(shù)據(jù)消息發(fā)給父節(jié)點,最終就能到達根節(jié)點。然后來說實現(xiàn)為P2M刖造的從根節(jié)點出發(fā)的下行路徑,下行路由的構(gòu)造通過DAQ肖息來完成。每個節(jié)點加入DODAG?,在網(wǎng)絡發(fā)起上行路徑構(gòu)造指令后,將發(fā)送DAQ肖息到它的父節(jié)點。DAO消息中含有前綴、前綴的有效時間等信息,用于表征節(jié)點所在前綴的可達性。當一個節(jié)點收到DACffi息后,將對前綴信息進行處理,并在路由表中添加路由表項。然后將該前綴信息進一步通過DAOt傳給自己的父節(jié)點。一個節(jié)點也可以將收到的前綴可達性信息進行匯集后,再發(fā)給自己的父節(jié)點。前綴上傳過程一

8、直進行,直至前綴信息到達父節(jié)點。每個節(jié)點都完成前綴上傳后,整個網(wǎng)絡將建立起一個從根節(jié)點到達所有葉子節(jié)點的下行路由圖。2.1.2 環(huán)路避免的機制rank值。策略1:最大rank值比它自己的rankRPL采用兩種策略避免環(huán)的出現(xiàn),這些方法都用到深度策略,一個節(jié)點在鄰居中選擇父節(jié)點時,不能選擇重慶郵電大學本科課程設計報告第二章總體設計方案(或系統(tǒng)建模)值大一定程度的節(jié)點,即rank值超過node-rank+max_depth的節(jié)點,不能選擇作為父節(jié)點。至于超過多少深度才不能選擇(max_depth的大?。?,由根節(jié)點確定。這種策略主要是防止選比自己還深的節(jié)點作為父節(jié)點。策略2:一個節(jié)點不能過度貪婪(g

9、reedy),不能為了增加父節(jié)點數(shù),而移動自己在圖中的深度,使深度值加大。2.1.3 涓流機制大多數(shù)路由協(xié)議,都需要設計周期性的keepalive幀,保證路由表的更新和維護。在LLN中,需周期性的發(fā)送DIO等消息,而周期性的更新會導致過多的控制開銷,浪費能量。所以RPLX用了一種自適應的定時器機制,稱為trickletimer。這種機制用來控制DIO消息發(fā)送的頻率。trickletimer機制將圖的更新視為一致性問題,使用trickletimer來決定何時組播DIO消息。trickletimer有個初始值,當網(wǎng)絡趨于穩(wěn)定時,trickletimer的周期會逐漸變大,相應的,網(wǎng)絡中DIO消息發(fā)送

10、的頻率會減少。當網(wǎng)絡發(fā)生一些“不一致”事件時,trickletimer的值又會恢復到初始值,DIO消息的發(fā)送就會比較頻繁。這些事件有:節(jié)點檢測到環(huán)路、節(jié)點新入網(wǎng)、節(jié)點發(fā)生了移動,采用了trickletimer機制后,當網(wǎng)絡越來越穩(wěn)定的時候,RPLS制報文會逐漸減少;而當網(wǎng)絡出現(xiàn)問題時,控制報文發(fā)送的頻率又會顯著增加,保障網(wǎng)絡及時通過控制報文快速修復問題。2.2基于Contiki平臺的RPL路由協(xié)議仿真我利用了Contiki平臺上的cooja對RPL路由協(xié)議進行仿真,下面為仿真過程:(1)打開cooja,新建一個模擬器。圖2.1新建模擬器重慶郵電大學本科課程設計報告第二章總體設計方案(或系統(tǒng)建模

11、)(2)加入根節(jié)點和葉子節(jié)點圖2.2加入節(jié)點(3)創(chuàng)建成功后,便能出現(xiàn)如下畫面,其中ID1為根節(jié)點,其他為葉子節(jié)點,按下simulationcontrol的start鍵,便開始DODAGI的構(gòu)造。1nMilMViAsCbMi日HIH母,電,“!=白I-hMn>>RmbfiwibMlL*»-_JF&xH:famMuie,jiUw-<Mf«TThiC«4Hr*PMhe«<StaaMw"LnA3WfbMTMilfaFixp1ACKH.JIBE-H"IfrECW*?WntHIL行Whdwi-7T4用"

12、bwuifi(fniJbtjnu1Ubutu13國LAEuHI4tiw:"*Tf“timd-“中*7|3|,3|4|二llJiJJIA一HiEIE-HESBmwHEWEBHEm_Ir盤常由二畿葭器方,心L£M,毗茶耳FM所r浮ra+o«VH*IdIsKBLF+riM9HWKILM-flUMIWCLfuL'fWIKHESiSUvHU-F*FK4*«l*|iailIJC-M1|ItMLnil13.MlEkXJHtlinWILiL*1111MbUjL-UIHILfUjikCMCopIlML.-rww-7ilwiff*k.uitanl超iXiUnwwLi

13、旬rw祖f四,9HH1vlrfvuni«|*FLkM-IrilUciiLSMJ1WHh-wHE*-HlvnHl.Lt.1aI22.3-"I.4WpKTVHl.nalL|MxmftiQZ-AHinijIj.149ti.iuoaIJ14M出K-H49Odih1KrHV2HnhIU2<rirklbnTNEjMipir3IB3114I*ftInriMttWKiMHwrl$+n+cMuL'nriF由幻OBF“Lrm.|'*I|>&-Ilin'.ihaHiiwiafHr,rai|Bfkfl,拜MlHrwiJtail4JH131.圖2.3開始仿

14、真重慶郵電大學本科課程設計報告第三章個人設計工作(或系統(tǒng)仿真分析)第三章個人設計工作(或系統(tǒng)仿真分析)3.1 DODAG圖構(gòu)建分析我對icmp6.c中的打印函數(shù)進行修改,使得整個DODACE的構(gòu)建過程能夠清楚地顯示出總(1)上行路徑的構(gòu)建:從打印信息可清楚地看出構(gòu)建上行路徑的過程,根節(jié)點利用DIO消息廣播DODAGJ信息;根節(jié)點的鄰居節(jié)點收到DIO后,根據(jù)一定的準則,決定是否加入這個DODAG這些準則包括:目標函數(shù)、DAGI性、各種自定義的本地策略等,當某個鄰居節(jié)點加入所廣播的DODA修,它就建立了一條到達DODAGI節(jié)點的路徑。抑如ilkmpUe。&南NyGtMlatkfl-E沖TM

15、CutfelNttHEtfkEtaiLrtdr:.一二區(qū)::!二中EhirrUibxy««iIcchSrhrs用電LogLhinisf呼不事闞制網(wǎng)卻Mdl-MnUxuFbl-dKkihiiwiwkra睥mmu*tirone5pbtn1.Veilirufctr-ihMi呼.wtnrajwWFrSMXH.mlhtI:1rtmrrIKM4-Firngniptfirudtfibdtillul«Htrvithf口出ccknws.C國£ZSrKHii0HBCrSOHuXO曰XfiEtOZI露MOBjIKS1期&i珅PWMibFId蜂40員陋隈40通:時WME

16、故通的的電弓rR«H««Trt&-wro8gMbbib仰bmuCErs«H««1xK-MK*®K-.iMf:*IZI£MBME|>UCISWjHif*.H的:皿:的幅花域獨::M魄劉金罡的3Db»WS檎力m««r由:網(wǎng)物施卸攤004物im.L百Ersc«"rfe0?WW'fflJW第曲皿,TOME-raB比2CISricnii*出近也加:皎般熨E:露陰晚翻毋Q1D止*M$修州1*-(理商Atffj小IX蜂她士mwwULlCI5rwwE«

17、;<IfSG'OWK*WW胤嗨IIDEM(ESMI?HBUESrKmi«*H晚WHtCKW:-左0痂>EhH(Si修觸it01電地般也爆函*皿峰51的的ihlnThffelwleEQEliEllF1ZCWrectaH«*iiiK®K*®()tjM«:>izi£xmaimh9TtwfeU'.hit>rnlirrl:F32IDtllFhpMHfmLnlcrolF支hLCErwiisBf:至他如:期】佚舊福也e"3刖必但蟀0>90S5:打”«c1?®ODK'

18、OTW'MfdZMfESME,313F«hrem事wHckft#snnVWqLnbiojoraigim/在mb1,FlEdrQnpijrih?r"bMHeld!MpfcTf兩IWnrEcGJtii$即MrucKJm5>9>J30LI加州曲國ma0。nc«"E««。距頌0Wa'JtMQ'HEITwht-d.!.hUIDmlinul:Z32門巾*電He婢*斌峰城妹.海地000fcrfHlrEUiHl!nralriZIhtht3"KIDLHlirMl:m*eTHfttMftOMfrOMft墟止M

19、il;Uplat*Mnif.il回Winii3口圖3.1上行路徑構(gòu)建(2)下行路徑的構(gòu)建:下行路由的構(gòu)造通過DAQ肖息來完成。每個節(jié)點加入DODA場,在網(wǎng)絡發(fā)起上行路徑構(gòu)造指令后,將發(fā)送DAQ肖息到它的父節(jié)點。DAQ肖息中含有前綴、前綴的有效時間等信息,用于表征節(jié)點所在前綴的可達性。重慶郵電大學本科課程設計報告第三章個人設計工作(或系統(tǒng)仿真分析)圖3.2下行路徑構(gòu)建最終DODA圖的建立圖3.3建立DODAG圖3.2 能耗的分析我對節(jié)點分布較分散的情況和節(jié)點較密集的情況進行了仿真,結(jié)果顯示,節(jié)點較密集的時候在拓撲建立的過程中能耗較高且較為均衡。另外,我發(fā)現(xiàn)在第一種情況的仿真過程中,連接多條路徑的

20、節(jié)點都會消耗更多的能量,結(jié)果如圖所示。重慶郵電大學本科課程設計報告第三章個人設計工作(或系統(tǒng)仿真分析)圖3.4不同節(jié)點分布情況的示意圖圖3.5情況1的節(jié)點能耗示意圖圖3.6情況2的節(jié)點能耗示意圖重慶郵電大學本科課程設計報告第三章個人設計工作(或系統(tǒng)仿真分析)3.3 涓流機制下圖為節(jié)點的DIO消息發(fā)送間隔統(tǒng)計圖,橫軸代表網(wǎng)絡運行時間,縱軸代表DIO消息的發(fā)送間隔,從圖中可以看出涓流機制的工作原理。初始的DIO發(fā)送問隔是區(qū)間內(nèi)的隨機數(shù),節(jié)點收到一致的DIO消息后,DIO發(fā)送間隔在原來的基礎上翻倍,圖中呈現(xiàn)出階梯型增長的趨勢。隨著網(wǎng)絡的穩(wěn)定,信道中的控制消息數(shù)據(jù)包數(shù)量大大減少。當網(wǎng)絡發(fā)生一些“不一致

21、”事件時,trickletimer的值又會恢復到初始值,DIO消息的發(fā)送就會比較頻繁。如圖所示就是節(jié)點10發(fā)生了位置的移動,導致其DIO消息的發(fā)送間隔時間又回到初始值。圖3.7涓流機制示意圖3.4 其他參數(shù)修改:(1) 在collect-commmon.c中Line053:#definePERIOD60改為30,修改過后使用collect-view工具進行數(shù)據(jù)收集的時間提前,可以在開始后30秒的時候看到收集到的個節(jié)點的信息。方便我們對RPL的性能進行分析。(2)在rpl-conf.hLine148:#defineRPL_DIO_INTERVAL_MIN12改為10,使DIO消息發(fā)送間隔變?yōu)?0

22、秒,力口快節(jié)點發(fā)送消息的速度。第四章設計總結(jié)重慶郵電大學本科課程設計報告第四章設計總結(jié)這次課程設計我進行了對RPLM由協(xié)議的仿真,感覺獲益良多,在這里總結(jié)一下這次課程設計的收獲與感受。前段時間我們在物聯(lián)網(wǎng)系統(tǒng)設計的課堂上才剛剛學習了RPLM由協(xié)議的相關知識,而這次則對此進行了一次實踐,進一步加深了對此的理解。從仿真的過程中,可以直觀地看到DODA的構(gòu)建過程,直觀地看到上行路徑到根節(jié)點和下行路徑的構(gòu)建。在icmp6.c中有一段代碼直觀地描述了避免環(huán)路的機制。通過實際操作了解到了涓流機制的實質(zhì)。另外,通過這次課程設計,也開拓了我的視野,使我有了第一次的機會對windows以外的操作系統(tǒng)進行操作,了

23、解到了makefile的一些規(guī)則以及Linux的一些命令。另外,這次設計對我C語言學習的幫助是巨大的,在啃代碼,提高看代碼的能力的同時,還能加深對RPL協(xié)議的理解,可謂是一舉兩得。我也希望自己在后續(xù)學習中去補足自己在這次課程設計所發(fā)現(xiàn)的一些問題,繼續(xù)提高自己讀寫代碼的能力,為日后學習工作打下一個良好的基礎。參考文獻重慶郵電大學本科課程設計報告參考文獻1郭梯云,鄒國揚,李建東.移動通信M.西安:西安電子科技大學出版社,2001.2董曉芳,孫巖,陳仁貴等.自行研制儀器設備的規(guī)范化管理J.實驗技術與管理,2007,245:163-1653孫利民,李建中.無線傳感器網(wǎng)絡M.北京:清華大學出版社,200

24、5.4李振強.IPV6技術解密M.北京.人民郵電出版社,2006.10附錄重慶郵電大學本科課程設計報告附錄Leaf.c:PROCESS_THREAD(rpl_leaf_process,ev,data)staticstructetimerperiodic;/*定義etimer周期性定時器*/staticstructctimerbackoff_timer;/*定義ctimer補償定時器*/PROCESS_BEGIN();PROCESS_PAUSE();set_global_address();printf("UDPLEAFIPADDRESS:");print_local_add

25、resses();leaf_connection=udp_new(NULL,UIP_HTONS(UDP_LEAF_PORT),NULL);if(leaf_connection=NULL)PRINTF("FailtomakeUDPconnection,exitingtheprocess!n");PROCESS_EXIT();)udp_bind(leaf_connection,UIP_HTONS(UDP_LEAF_PORT);PRINTF("Createdaconnectionwiththeroot");PRINT6ADDR(&leaf_connec

26、tion->ripaddr);PRINTF("local/remoteport%u/%un",UIP_HTONS(leaf_connection->lport),UIP_HTONS(leaf_connection->rport);etimer_set(&periodic,SEND_INTERVAL);/*設置etimer定時器,定時時長為SEND_INTERVAL*/*etimer:定時器期滿,發(fā)送事件*ctimer:定時器期滿,調(diào)用函數(shù)*rtimer:實時時鐘,在一個精確的時間調(diào)用函數(shù)*/while(1)PROCESS_YIELD();if(ev

27、=tcpip_event)tcpip_handler();)if(etimer_expired(&periodic)etimer_reset(&periodic);ctimer_set(&backoff_timer,SEND_TIME,send_packet,NULL);11附錄重慶郵電大學本科課程設計報告PROCESS_END();)Root.c:PROCESS_THREAD(udp_root_precess,ev,data)uip_ipaddr_tipaddr;structuip_ds6_addr*root_if;PROCESS_BEGIN();PROCESS_PA

28、USE();SENSORS_ACTIVATE(button_sensor);PRINTF("UDProotstartedn");#ifUIP_CONF_ROUTERuip_ip6addr(&ipaddr,0xaaaa,0,0,0,0,0,0,0xbbbb);/*構(gòu)造ipv6地址*/*uip_ds6_set_addr_iid(&ipaddr,&uip_lladdr);*/uip_ds6_addr_add(&ipaddr,0,ADDR_MANUAL);root_if=uip_ds6_addr_lookup(&ipaddr);if(root_if!=NULL)rpl_dag_t*dag;/*rpl_set_r

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論