freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

車輛自組網(wǎng)絡(luò)路由協(xié)議分析與仿真畢業(yè)設(shè)計(jì)-資料下載頁

2024-08-27 21:07本頁面

【導(dǎo)讀】有了越來越高的要求,越來越多的家庭開始擁有私家車了。然后更多的汽車出現(xiàn)在了。道路上,造成了道路上的嚴(yán)重?fù)矶?,從而交通事故也有了逐漸增長的趨勢(shì)。都給現(xiàn)代的交通系統(tǒng)提出嚴(yán)峻的挑戰(zhàn)?,F(xiàn)在交通系統(tǒng)需要解決的問題是怎樣減少交通。事故的發(fā)生,堅(jiān)決這個(gè)問題的關(guān)鍵是怎樣提高道路交通環(huán)境的質(zhì)量。而能在一定的程度上緩解道路的擁堵。車載網(wǎng)的關(guān)鍵技術(shù)包括:車載自組網(wǎng)無線接入。技術(shù)、GPS定位技術(shù)、自組網(wǎng)路由協(xié)議。本文選用AODV路由協(xié)議與GPSR協(xié)議進(jìn)行對(duì)比分析。其中重點(diǎn)分析了AOD. 在網(wǎng)絡(luò)迅速膨脹的今天,隨著網(wǎng)絡(luò)規(guī)模的不斷增大,網(wǎng)絡(luò)。在本文中,主要介紹了NS2的仿真平臺(tái)及其體系框架結(jié)構(gòu)。在測(cè)試場(chǎng)景中,對(duì)比了二種不同的協(xié)議下吞吐量、抖動(dòng)率、吐量要優(yōu)于GPSR協(xié)議。是最遠(yuǎn)的節(jié)點(diǎn)作為轉(zhuǎn)發(fā)中繼,故延時(shí)相對(duì)于AODV算法比較而言,端到端延時(shí)更小。種協(xié)議傳送相同的數(shù)據(jù)包,由于GPSR協(xié)議延時(shí)小,故吞吐量較大,抖動(dòng)比較小。也表明,使用GPSR算法,丟包率也較低。

  

【正文】 序比使 用其它種類的語言更加簡(jiǎn)潔便利而且節(jié)省時(shí)間, awk 還具備一部分內(nèi)建功能,可以使得 awk 擅長處理字段 (Field)型態(tài)。并具數(shù)據(jù)列 (Record)的數(shù)據(jù);此外, awk中建有 pipe 功能,可以將正在處理中的數(shù)據(jù)傳輸給外部的 Shell 的命令并加以處理, 然后再將 Shell 命令進(jìn)行處理后數(shù)據(jù)傳回到 awk 程序中,所以這個(gè)特點(diǎn)也使 awk 程序很輕松的使用系統(tǒng)資源。 為便于解釋 awk 程序架構(gòu),以及相關(guān)的術(shù)語,本文就以 trace file 為例,來加以介紹。 : 1. 資料列: awk 從數(shù)據(jù)文件上讀取的基本單位,以 trace file 為例, awk 讀入的。第一筆資料列為 ”+ 1 2 cbr 1000?? 2 0 0”,第二筆資料列為 “- 1 2 cbr 1000 ?? 2 0 0”,一般而言,一筆數(shù)據(jù)列相當(dāng)于數(shù)據(jù)文件上的一行資料。 字段 (Field):為數(shù)據(jù)列上被分隔開的子字符串。 以資料列“+ 1 2 cbr 1000 ?? 2 0 0”為有線 TRACE輸出的示例,如表 所示。 表 TRACE輸出的字段示例 一 二 三 四 五 六 七 八 九 十 十一 十二 + 1 2 cbr 1000 ?? 2 0 0 常州工學(xué)院延陵學(xué)院 19 一般而言是以空格符來分隔相鄰的字段。 當(dāng) awk 讀入數(shù)據(jù)列后,會(huì)把每個(gè)字段的值存入字段變量,如表 所示, TRACE輸出的每個(gè)關(guān)鍵字示例代表的意義。 表 TRACE輔出的每個(gè)關(guān)鍵字字段代表的意義 字段變量 意義 $0 為一字符串 , 其內(nèi)容為目前 awk 所讀入的資料列 . $1 代表 $0 上第一個(gè)字段的數(shù)據(jù) . $2 代表 $0 上第二欄 的 個(gè)位的 資料 . ?? ?? : Pattern1 { Actions1 } Pattern2 { Actions2 } ??????????? Pattern3 { Actions3 } 一般都常用”關(guān)系判斷式”當(dāng)成 Pattern。比如: x > 3 用來判斷一個(gè)變量 x 它是否大于 3 x == 5 用來判斷一個(gè)變量 x 它是否等于 5 Awk 一般提供 c 語言中常見的關(guān)系的操作數(shù),比如:<、>、==、<=、>=、?。降鹊? Actions 是靠許多個(gè) awk 的指令所構(gòu)成的,而 awk 指令和 c 語言中 間的指令非常的類似。 IO 指令: print 、 getline 、 printf( ) ...... 流程控制指令 : if ( ...) {...} else {? }、 while(? ) {? } ?? awk 程序流程為優(yōu)先判斷 Pattern 結(jié)果,若為真 True 就執(zhí)行它相對(duì)應(yīng)的 Actions,假如為假 False 那就不執(zhí)行相對(duì)應(yīng)的 Actions。如果在處理過程中沒有 Pattern,那么awk 就會(huì)無條件的執(zhí)行 Actions。 : 在執(zhí)行 awk 時(shí) ,會(huì)反復(fù)進(jìn)行下面四步驟。 1. 自行從指定數(shù)據(jù)文件之中讀取 一個(gè)數(shù)據(jù)列。 2. 自動(dòng)更新 (Update)有關(guān)的內(nèi)建變量的值。 3. 在逐次執(zhí)行該程序中 所有的 Pattern { Actions } 指令。 常州工學(xué)院延陵學(xué)院 20 4. 當(dāng)執(zhí)行完程序所有飛 Pattern { Actions }時(shí),若數(shù)據(jù)文件之中還有未讀取的料,則反復(fù)執(zhí)行步驟 1 到步驟 4。 awk 會(huì)自動(dòng)重復(fù)進(jìn)行上述的四個(gè)步驟,所以使用者不須在程序中寫這個(gè)循環(huán)。 動(dòng)畫演示的工具 NAM Nam 它是基于 Tcl/Tk 的一種動(dòng)畫演示工具,可以用于演示的是網(wǎng)絡(luò)運(yùn)行動(dòng)畫,比如隊(duì)列管理、包傳輸和網(wǎng)絡(luò)拓?fù)涞取? ( 1) nam 簡(jiǎn)介 Nam 是最初在 1990 年在 Steven McCanne 開發(fā)的,被用于研究網(wǎng)絡(luò)中用動(dòng)畫來演示包的整個(gè)傳輸過程。在后來這項(xiàng)工具就漸漸流行開來,并且得到其他組織和個(gè)人的繼續(xù)完善和改進(jìn)。 nam 功能是依據(jù)真實(shí)環(huán)境或網(wǎng)絡(luò)模擬軟件里的特定格式的 trace 的輸出文件來運(yùn)行的動(dòng)畫,比如 Trace 文件經(jīng)常來自 Tcpdump 軟件或者 NS 模擬器的輸出。當(dāng)然,其它任何軟件只要按照 nam 它要求的數(shù)據(jù)格式輸出,都可以利用 nam 來運(yùn)行動(dòng)畫演示。 ( 2) NS2 中 nam的使用方法 ① 環(huán)境變量的配置:在 NS2 安裝目錄下編輯 .bashrc 文件,在 PATH 環(huán)境變量中添加 nam 文件夾所在的目錄。 ② 調(diào)用 nam: nam 調(diào)用一般是在 NS 仿真結(jié)束之后,所以在 stop{}過程之后添加代碼: exec nam exit 0 畫圖工具 Gnuplot (1)gnuplot 簡(jiǎn)介: gnuplot 是由 Colin Kelly 和 Thomas Williams 于 1986 年開始開發(fā)的科學(xué)繪圖工具,支持二維和三維圖形。 gnuplot 是由一個(gè)命令驅(qū)動(dòng)交互式的繪圖軟件,而它的功能 就是把數(shù)學(xué)函數(shù)和數(shù)據(jù)資料轉(zhuǎn)換為簡(jiǎn)單易觀察的立體或平面的圖形,它一般有兩種工作方式,即批處理方式和交互式方式,它可以使使用者更容易的讀入外部數(shù)據(jù)結(jié)果,并在屏幕上顯示出圖形,而且可以修改和選擇圖形畫法,可以更加明顯地表現(xiàn)出數(shù)據(jù)的特性。 (2)gnuplot 執(zhí)行方法: 在終端下鍵入 gnuplot 后回車,即可啟動(dòng) gnuplot。相關(guān)參數(shù)設(shè)置: gnuplot set xrange [{xmin: xmax}] 設(shè)置 X軸的起點(diǎn)和終點(diǎn) gnuplot set yrange [{ymin: ymax}] 設(shè)置 Y軸的起點(diǎn)和終點(diǎn) gnuplot set title “ name of the graph” 設(shè)置整個(gè)圖的標(biāo)題 常州工學(xué)院延陵學(xué)院 21 gnuplot set xlabel “ name of the X axis” 設(shè)置 X軸的標(biāo)題 gnuplot set ylabel “ name of the Y axis” 設(shè)置 Y軸的標(biāo)題 gnuplot plot ‘ filename1 ’ with linespoints, ‘ filename2 ’ with linespoints?? 添加 GPSR 路由算 法在 NS2 下 由于 NS2 下沒有自帶的 GPSR 路由協(xié)議,故本文對(duì)添加 GPSR 算法進(jìn)行說明。本文添加的 GPSR 算法在 模板下。 在 NS235 模板下,添加 GPSR 算法,其中包括 ,它定義了各種不同的包。 ,定義了鄰居包的頭文件。 ,定義了鄰居包的實(shí)現(xiàn)。 ,定義了 GPSR 路由代理實(shí)現(xiàn)的各種函數(shù)。 ,各種 GPSR 路由代理的實(shí)現(xiàn)。 定義了各種目的節(jié)點(diǎn)的場(chǎng)景。 定義了各種目的節(jié)點(diǎn)的場(chǎng)景實(shí)現(xiàn)。 定義了創(chuàng)立節(jié)點(diǎn)仿真配置文件 仿真場(chǎng)景文件 : 100 個(gè)節(jié)點(diǎn)在一個(gè) 200x200 平方區(qū)域 : 99 個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)至節(jié)點(diǎn) 0。 修改 ns2/monn 下面的 ,添加 PT_GPSR,添加包類型。 修改 ,添加 PT_GPSR。 修改 ,添加 PT_GPSR,添加進(jìn)高優(yōu)先級(jí)別里 面。 修改 ns2/tcl/lib 下面的 foreach prot {}函數(shù)下面添加 GPSR。 在 makefile 下面添加: $(OBJ_STL) in ns2/ $(OBJ_STL) \ gpsr/ \ gpsr/ \ gpsr/ 進(jìn)行編譯,編譯通過后,即可使用 GPSR 路由車載網(wǎng)的算法。 本章小結(jié) 在網(wǎng)絡(luò)迅速膨脹的今天,隨著網(wǎng)絡(luò)規(guī)模的不斷增大,網(wǎng)絡(luò)因素類 型不斷增多時(shí),傳統(tǒng)的以經(jīng)驗(yàn)為主的網(wǎng)絡(luò)設(shè)計(jì)方法已經(jīng)不能夠適應(yīng)現(xiàn)在的需求,且用現(xiàn)實(shí)中真實(shí)存在常州工學(xué)院延陵學(xué)院 22 的通信元素進(jìn)行測(cè)試,會(huì)造成資源和時(shí)間的浪費(fèi),因此,利用網(wǎng)絡(luò)仿真工具在模擬的環(huán)境中對(duì)其網(wǎng)絡(luò)性能進(jìn)行仿真顯得非常重要。 在本章中,主要介紹了 NS2 的仿真平臺(tái)及其體系框架結(jié)構(gòu)。其中包括仿真工具 NS2,仿真的一般方法和過程,節(jié)點(diǎn)模型,節(jié)點(diǎn)的創(chuàng)建,無線傳輸信號(hào)模型。接著介紹了 NS2下的幾種工具: awk 分析腳本, nam 用于顯示動(dòng)畫, gnuplot 用于繪圖。 由于車載網(wǎng)算法 GPSR 算法,不是 自帶的協(xié)議,所以需要對(duì)原算法進(jìn)行 擴(kuò)展。在下一章中接著介紹了 GPSR 算法如何在 NS2 下添加的算法過程。 常州工學(xué)院延陵學(xué)院 23 第四章 基于車載網(wǎng) GPSR 的改進(jìn)算法 由于車載網(wǎng)移動(dòng)的速度較快,如果節(jié)點(diǎn)移動(dòng)了,那下一跳發(fā)生變化,也就意味著重新調(diào)用路由算法。 GPSR 算法很容易出現(xiàn)數(shù)據(jù)包在轉(zhuǎn)發(fā)的過程中,越遠(yuǎn)的節(jié)點(diǎn)由于移動(dòng)速度過快,從而移動(dòng)出通信范圍,造成數(shù)據(jù)包的丟失,服務(wù)質(zhì)量不高。 基于車載網(wǎng) GPSR 的改進(jìn)算法 本論文對(duì)移動(dòng)的路徑做了預(yù)測(cè),盡量找那些能盡可能在通信范圍內(nèi)久一點(diǎn)的節(jié)點(diǎn)作為中繼。通信范圍內(nèi)的節(jié)點(diǎn)時(shí)間持續(xù)越長,表明節(jié)點(diǎn)移動(dòng)的速度更慢,節(jié)點(diǎn)更加穩(wěn)定。 相鄰二個(gè)節(jié)點(diǎn)間的互相通信越長,表明生存時(shí)間越長,節(jié)點(diǎn)之間的通信越穩(wěn)定,但同時(shí)可能會(huì)帶來時(shí)延較大的特點(diǎn)。因而本文確定一個(gè)界限。假設(shè)節(jié)點(diǎn)的通信范圍最大為 a,則本文取一個(gè)系數(shù) ( 0 1),根據(jù)不同的拓?fù)浣Y(jié)構(gòu)下選擇最優(yōu)化的 a,在 a 與 a 之間選擇生存時(shí)間最長的節(jié)點(diǎn),從而滿足雙重條件下最穩(wěn)定的節(jié)點(diǎn)作為中繼。 本文對(duì) GPSR 路由協(xié)議改進(jìn)策略 [13]主要體現(xiàn)在以下幾個(gè)方面: ( 1)當(dāng)節(jié)點(diǎn)處于數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)選擇下一跳節(jié)點(diǎn)時(shí),對(duì)本節(jié)點(diǎn)維護(hù)的位置坐標(biāo)進(jìn)行預(yù)測(cè)分析,下一跳節(jié)點(diǎn)除滿足貪心算法轉(zhuǎn)發(fā)機(jī)制的要求外,還必須滿足距離位于 a 與a之間。郝琨等人在 [14]中對(duì)此進(jìn)行過研究。 ( 2)對(duì) GPSR 路由協(xié)議中節(jié)點(diǎn)周期性的發(fā)送 hello 報(bào)文機(jī)制。每個(gè)節(jié)點(diǎn)動(dòng)態(tài)更新鄰居的生存時(shí)間,從而選擇滿足( 1)式最大的節(jié)點(diǎn)。 ( 3)目的節(jié)點(diǎn)發(fā)送查詢包。目的節(jié)點(diǎn)查詢后,每個(gè)節(jié)點(diǎn)維護(hù) SINK 鏈表。目的節(jié)點(diǎn)發(fā)送的查詢包,沒有應(yīng)答,但它讓每個(gè)節(jié)點(diǎn)維護(hù)目的節(jié)點(diǎn)表,以貪心算法選擇路徑來轉(zhuǎn)發(fā)數(shù)據(jù)包,目的節(jié)點(diǎn)為接收數(shù)據(jù)包的目的節(jié)點(diǎn)。目的節(jié)點(diǎn)發(fā)送查詢包必不可少,如果目的節(jié)點(diǎn)僅發(fā)送 HELLO 包,源節(jié)點(diǎn)無法預(yù)知路徑,而造成無路徑的情況。 添加改進(jìn)代碼在 NS2 下的修改 修改 添加宏: ifdef __NS2_GPSR_IMPROVE_PROTOCOL__ double distance_ratio。 endif 修改 中, GPSRAgent::GPSRAgent() 中添加: ifdef __NS2_GPSR_IMPROVE_PROTOCOL__ bind(distance_ratio, amp。distance_ratio)。 常州工學(xué)院延陵學(xué)院 24 endif 修改 void GPSRAgent::recvHello(Packet *p){ struct hdr_cmn *cmh = HDR_CMN(p)。 struct hdr_gpsr_hello *ghh = HDR_GPSR_HELLO(p)。 ifdef __NS2_GPSR_IMPROVE_PROTOCOL__ nblist_newNB(cmhlast_hop_, (double)ghhx_, (double)ghhy_,(double)distance_ratio)。 else nblist_newNB(cmhlast_hop_, (double)ghhx_, (double)ghhy_)。 endif // trace(%d recv Hello from %d, my_id_, cmhlast_hop_)。 } 修改 void GPSRAgent::recvQuery(Packet *p){ struct hdr_cmn *cmh = HDR_CMN(p)。 struct hdr_ip *iph = HDR_IP(p)。 struct hdr_gpsr_query *gqh = HDR_GPSR_QUERY(p)。 if(sink_list_new_sink(iphsaddr(), gqhx_, gqhy_, cmhlast_hop_, 1+gqhhops_, gqhseqno_)) query(iphsaddr())。 ifdef __NS2_GPSR_IMPROVE_PROTOCOL__ nblist_newNB(cmhlast_hop_, (double)gqhx_, (double)gqhy_,(double)distance_ratio)。 endif // trace(%d recv Query from %d , my_id_, iphsaddr())。 } 修改: void GPSRAgent::forwardData(Packet *p) ifdef __NS2_GPSR_
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1