在這裡,我們將完成乙個簡單的無線多跳場景
首先,定義的引數如下所示:
set val(chan) channel/wirelesschannel
set val(prop) propagation/tworayground
set val(netif) phy/wirelessphy
set val(mac) mac/802_11
set val(ifq) queue/droptail/priqueue
set val(ll) ll
set val(ant) antenna/omniantenna
set val(x) 670 ;# x dimension of the topography
set val(y) 670 ;# y dimension of the topography
set val(ifqlen) 50 ;# max packet in ifq
set val(seed) 0.0
set val(adhocrouting) dsr
set val(nn) 3 ;# how many nodes are simulated
set val(cp) "../mobility/scene/cbr-3-test"
set val(sc) "../mobility/scene/scen-3-test"
set val(stop) 2000.0 ;# simulation time
在建立ns_(模擬器例項)後,開啟乙個檔案(wireless1-out.tr)以獲得無線跟蹤。另外我們要設定nam曲線。
set tracefd [open wireless1-out.tr w] ;# for wireless traces
$ns_ trace-all $tracefd
set namtrace [open wireless1-out.nam w] ;# for nam tracing
$ns_ namtrace-all-wireless $namtrace $val(x) $val(y)
建立移動節點之後,定義源節點移動和連線模式檔案,分別是val(sc)和val(cp)。
#
# define node movement model
#puts "loading connection pattern..."
source $val(cp)
# # define traffic model
#puts "loading scenario file..."
source $val(sc)
在節點移動檔案scen-3測試中,我們看到節點移動命令,如
$ns_ at 50.000000000000 "$node_(2) setdest 369.463244915743 \
170.519203111152 3.371785899154"
這意味著在時刻50s,節點2以3.37m / s的速度開始向目的地(369.4,170.5)移動。
$god_ set-dist 1 2 2
上句用於載入具有最短跳資訊的god物件的命令列。 這意味著節點1和節點2之間的最短路徑是2跳。 通過提供這種資訊,防止在模擬執行期間神物件在節點之間的最短距離的計算,能節省下來不少時間。 ns2 對無線網路模擬
在模擬無線網路時需要對tcl模擬指令碼檔案的引數進行設定,比如pt,cpthresh,csthresh and rxthresh。我們需要借助ns提供的threshold工具來計算相應的引數 extra utility called threshold,在 ns 2.33 indep utils p...
ns2相關學習 tcl指令碼編寫(1)
新建乙個 例項 set ns new simulator 為了讓nam檔案和trace檔案有地方可以依託,我們要開啟.nam檔案進行寫入,並且使用控制代碼nf set nf open out.nam w ns namtrace all nf 設定拓撲圖 1 設定節點的指令碼語言 建了兩個節點,叫n0...
利用NS2進行無線網路模擬
本博文的實驗取材與 ns 2網路模擬基礎與應用 無線網路實驗。場景是三個節點,在乙個矩形區域,移動ad hoc網路使用dsdv路由演算法,然後在適當的時候設定它們的移動方向 速度,並在節點0和節點1之間嘗試建立ftp連線。指令碼 如下 set val chan channel wirelesscha...