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

正文內(nèi)容

基于ns2無線傳感網(wǎng)“adhoc網(wǎng)絡仿真”設計-展示頁

2025-05-19 20:27本頁面
  

【正文】 業(yè)務 源的通信 場 景文件 cbr30n18c2 、 源代碼( 文件如下) 產(chǎn)生一個仿真的對象 set ns [new Simulator] 針對不同的資料流定義不同的顏色,這是要給 NAM 用的 $ns color 0 blue $ns color 1 red $ns color 2 white 開啟一個 NAM trace file $ns nodeconfig Routing AODVRR set nf [open w] 開啟一個 trace file,用來記錄封包傳送的過程 $ns namtraceall $nf set nd [open w] $ns traceall $nd 定義一個結(jié)束的程序 proc finish {} { global ns nf nd $ns flushtrace 15 close $nf close $nd 以背景執(zhí)行的方式去執(zhí)行 NAM exec nam amp。 [EndtoEnd Delay] 筆者把量測 CBR封包端點到端點間延遲時間的 awk程序,寫在檔案 檔案中,讀者可以參考此范例,修改成符合讀者需求的程序。 4. 當執(zhí)行完程序中所有 Pattern { Actions }時,若資料文件中還有未讀取的料,則反復執(zhí)行步驟 1 到步驟 4 。 2. 自動更新 (Update)相關(guān)的內(nèi)建變量之值。 : 執(zhí)行 awk 時 , 它會反復進行下列四步驟。 IO 指令: print 、 printf( ) 、 getline ...... 流程控制指令 : if ( ...) {...} else {…} 、 while(…){…} ?? 在 awk 程序的流程為先判斷 Pattern 的結(jié)果,若為真 True 則執(zhí)行相對應的 Actions,若為假 False 則不執(zhí)行相對的 Actions。 字段變量 意義 $0 為一字符串 , 其內(nèi)容為目前 awk 所讀入的資料列 . $1 代表 $0 上第一個字段的資料 . $2 代表 $0 上第二欄個位的資料 . ?? ?? : Pattern1 { Actions1 } Pattern2 { Actions2 } ??????????? Pattern3 { Actions3 } 一般常用”關(guān)系判斷式”來當成 Pattern。 以資料列”+ 1 2 cbr 1000 2 0 0” 為例, 一 二 三 四 五 六 七 八 九 十 十一 十二 + 1 2 cbr 1000 2 0 0 一般而言是以空格符來分隔相鄰的字段。 : 1. 1. 資料列: awk 從資料文件上讀取的基本單位,以 trace file 為例, awk 讀入的 第一筆資料列為 ” + 1 2 cbr 1000 2 0 0” 第二筆資料列為 “ - 1 2 cbr 1000 2 0 0” 一般而言,一筆資料列相當于資料文件上的一行資料。 awk 還具有一些內(nèi)建功能,使得 awk 擅于處理具資料列 (Record),字段 (Field)型態(tài)的資料;此外, awk 內(nèi)建有 pipe 的功能,可將處理中的資料傳送給外部的 Shell 命令加以處理, 再將 Shell 命令 處理后的資料傳回 awk程序,這個特點也使得 awk 程序很容易使用系統(tǒng)資源。因 awk 語言具有某些特點,如:使用直譯器 (Interpreter)不需先行編譯;變量無型別之分 (Typeless),可使用文字當數(shù)組的注標 (Associative Array)等特色。 [awk] awk 是一種程序語言。以前面trace file 的第一筆為例,意思就是說有一個封包 pakcet id 為 0,資料流 id 為 2,序號為 0,長度為 1000 bytes,型態(tài)為 CBR,它是從來源端 要到目的地 ,在時間 秒的時候,從節(jié)點 1 進入了節(jié)點 2 的隊列中。 每一筆記錄的開始都是封包事件發(fā)生的原因,若是 r 則表示封包被某個節(jié)點所接收,若是 +則表示進入了隊列,若是 則表示離開隊列,若是 d 則表示封包被隊列所丟棄。另一個檔案是 ,這個檔案記錄了仿真過程中封包傳送中所有的事件,例如第一筆記錄是一個 CBR 的封包,長度為 1000bytes,在時間 秒的時候,從 n1 傳送到 n2。 CBR 是在 秒開始傳送,在 秒結(jié)束傳輸; FTP 是在 秒開始傳送, 秒結(jié)束傳輸。另外,在節(jié)點 n1 到 n3之間有一條固定的傳輸速率的聯(lián)機 (Constant Bit Rate, CBR), CBR 應用程序是架構(gòu)在UDP 之上,因此必需在 n1 使用 UDP agent 來產(chǎn)生” udp” 用來發(fā)送 UDP 封包,在 n3上使用 Null agent 來產(chǎn)生 ”sink” 以接收由 n1 傳送過來的 UDP 封包,然后把接收的封包釋放。若是沒有額外的參數(shù)設定, TCP 封包的長度為 1Kbytes。在節(jié)點 n0 到 n3 之間會有一條 FTP 的聯(lián)機, FTP 應用程序是架構(gòu)在 TCP 之上,所 以在寫仿真環(huán)境的描述語言的時候,必需先建立一條TCP 的聯(lián)機,在來源端 n0 上使用 TCP agent 產(chǎn)生 ”tcp” 來發(fā)送 TCP 的封包;在目的地端 n3 使用 TCPsink agent 產(chǎn)生 ”sink” 來接受 TCP 的資料、并產(chǎn)生回復封包 (ACK)回傳送端、最后把接收的 TCP 封包釋放。網(wǎng)絡拓樸中的頻寬瓶頸是在節(jié)點 n2 到節(jié)點 n3 之間,頻寬為 ,延遲的時間為20ms。 這個網(wǎng)絡的環(huán)境包含了四個網(wǎng)絡節(jié)點 (n0, n1, n2, n3),如下圖所示。另外一種方法,是去更改 ns2 核心,增加或修改一些檔案,把所需要量測的參數(shù)直接記錄下來,這種方法的優(yōu)點是仿真結(jié)束后,所需要量測的數(shù)據(jù)已經(jīng)完全記錄下來,但缺點是要動到 ns2 核心的部分,對于初學者而言,這是一個很大的門檻,這個方法筆者留到后面的章節(jié)在做介紹。 本節(jié)打算以一個簡單的網(wǎng)絡環(huán)境為范例,介紹如何使用一些工具來分析和呈現(xiàn)仿真結(jié)果,這包含了如何去量測 EndtoEnd Delay、 Jitter、 Packet Loss、和 Throughput。一般而言,對于 ns2 的初學者而言,總是會遇到一個問題,就是網(wǎng)絡仿真程序跑完后,接下來該如何分析。另一方面,開放地理空間聯(lián)盟( Open Geospatial Consortium)正在制定可互操作接口和元數(shù)據(jù)編碼的標準,這些標準支持將那些異質(zhì)的傳感站點實時地集成到互聯(lián)網(wǎng),允許任何一個個體使用 Web 瀏覽器監(jiān)視或控制無線傳感網(wǎng)。 、 數(shù)據(jù)可視化 無線傳感網(wǎng)所采集的數(shù)據(jù)通常以數(shù)字數(shù)據(jù)的形式存放在一個中心基站。 ns2 之類的傳統(tǒng)的網(wǎng)絡仿真器也可用來仿真。 10 無線傳感網(wǎng)的算法研究和協(xié)議研究的區(qū)別在于,算法研究的數(shù)學模型通常更抽象,更具一般性,但是有時候?qū)嵱眯圆蝗鐓f(xié)議設計的模型。由于這個原因,無線傳感網(wǎng)的算法研究大都集中在能源相關(guān)的從傳感節(jié)點到基站的數(shù)據(jù)傳輸算法上。下面是一些編程語言列表: ct(在空間和時間上的某一點上進行計算) DCL(分布式組合語言) galsC nesC Prototheads SNACK SQTL ( 4) 算法 無線傳感網(wǎng)包含大量的傳感節(jié)點,這就隱含地要求為無線傳感網(wǎng)所設計的算法是分布式算法。 ( 3) 編程語言 在傳感節(jié)點上的編程比在常規(guī)的計算機系統(tǒng)困難。 ( 2) 中間件 目前有大量的研究投入在無線傳感網(wǎng)中間件的設計上。為了支持模塊接口內(nèi)在的動態(tài)性, SOS 也致力于支持動態(tài)內(nèi)存管理。NanoRK 核心對資源的分配是實時的,能夠有很好的粒度來控制任務對 CPU 時間、網(wǎng)絡和傳感器的占用。在搶先式多線程方式下,應用程序不需要顯式地釋放微處理器給其他進程,取而代之的是,核心將時間劃片給活動進程,并決定當前可以執(zhí)行哪一個進程。更進一步的, Contiki 支持 protothreads,它在提供類似于多線程編程抽象的同時,只支付了非常小的內(nèi)存開銷。 Contiki 的設計支持從網(wǎng)絡加載模塊,還支持運行時加載標準 ELF 文件。 nesC 是 C 編程語言的擴展,它被設計成可以發(fā)現(xiàn)在任務和事件處理例程之間的競爭條件。事件處理例程可以發(fā)布任務,這些任務將被 TinyOS 核心所調(diào)度。 TinyOS 程序由事件處理例程和具備語義運行的任務所組成。 TinyOS 也許是第一個專門為無線傳感網(wǎng)而設計的操作系統(tǒng)。 無 線傳感網(wǎng)在硬件上和傳統(tǒng)的嵌入式系統(tǒng)沒有區(qū)別,這就有可能在傳感網(wǎng)上使用像 eCos 或者uC/OS 這樣的嵌入式操作系統(tǒng)。舉一個例子,傳感網(wǎng)應用程序通常不要求像 PC 機應用程序那樣的可交互性,這樣操作系統(tǒng)就不需要支持那樣的用戶接口。由于這些原因,算法和協(xié)議必須解決以下問題: 9 生命周期最大化 魯棒性和容錯性 自配置 無線傳感網(wǎng)軟件研究上的一些 熱門課題有: 安全性 可移動性(移動中的傳感節(jié)點或者基站) 中間件(在軟件和硬件之間設計中間層) ( 1) 操作系統(tǒng) 一般來說,無線傳感網(wǎng)節(jié)點上的操作系統(tǒng)比通用操作系統(tǒng)的復雜度低。下面列出一些領域內(nèi)研究所使用的標準: ZigBee Wibree 6lowpan 、 軟件平臺 對無線傳感網(wǎng)節(jié)點而言,能量是最缺乏的資源,它決定了節(jié)點們的生命周期。 SNM Sensor Network ,組件,技術(shù)和相關(guān)主題 。考慮這一目標,現(xiàn)在的傳感節(jié)點主要還處在原型階段。 典型的無線傳感網(wǎng)架構(gòu)見圖 1。 基站可以有一個或者多個,它們是無線傳感網(wǎng)中的特殊成員,具有相對強大的計算、能量和通訊資源。傳感節(jié)點通常由這些部分組成,一個計算能力和存儲能力有限的處理單元,一些傳感器(有特定的調(diào)節(jié)電路),一個通訊設備(通常為無線電收發(fā)器),和一個通常為電池的能量供給裝置。根據(jù)具體應用的場合,不同的性能目標需要不同的數(shù)據(jù)傳播策略,這些目標包括對響應的實時性的要求,對數(shù)據(jù)冗余的要求,對安全性的要求等。舉例來講,可將大量的傳感節(jié)點布置在戰(zhàn)場上,取代地雷來監(jiān)視敵人的入侵。 地區(qū)監(jiān)視是無線傳感網(wǎng)的一種典型應用。它一般被用于自然環(huán)境監(jiān)視、目標跟蹤、核反應堆控制、火警監(jiān)測、交通監(jiān)視等用途。它們能夠組成屬地的邊界,監(jiān)視入侵者的行進過程(將信息在節(jié)點之間傳遞)。在商業(yè)和工業(yè)領域,有些數(shù)據(jù)很難用有線傳感器來 8 監(jiān)視,或者實現(xiàn)起來代價過于昂貴,在這種場合可以用無線傳感網(wǎng)來監(jiān)視。 在計算機科學和電信學領域,無線傳感網(wǎng)是一個活躍的研究方向,每年都安排有大量的研究小組和研討會。同樣的,部署這些傳感節(jié)點的花費也不一,這要取決于傳感網(wǎng)絡的大小以及單一傳感節(jié)點的復雜度。傳 感網(wǎng)絡中的每一個節(jié)點除了裝有一個或多個傳感器以外,一般還裝有一個無線電收發(fā)器,一個小型微控制器,和一個能量裝備,這通常是一個電池。無線傳感網(wǎng)的開發(fā)最初用于軍事用途,比如戰(zhàn)場監(jiān)視。t installed properly. child killed: SIGABRT % 解決辦法: administratorubuntu:~$ sudo aptget install nam WSN 開發(fā)背景 、 WSN 簡介 無線傳感網(wǎng)( wireless sensor work)是由在空間中分布的含有傳感器的自主設備所組成的無線網(wǎng)絡。 } c. Save the file and again run ./install 問題二 administratorubuntu:~$ ns % nam Can39。 T = LsIdSeq]’: linkstate/:396:28: required from here linkstate/:137:20: error: ‘erase’ was not declared in this scope, and no declarations were found by argumentdependent lookup at the point of instantiation [fpermissive] linkstate/:137:20: note: declarations in dependent base ‘std::map, std::allocator ’ are not found by unqualified lookup linkstate/:137:20: note: use ‘thiserase’ instead make: *** [linkstate/] Error 1 3 Ns make failed! 7 解決辦法 Solution: a. Go to
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1