引用如下:
參數介紹以前面的example2.tcl爲例:
#設定模擬需要的一些屬性,比如mobilenode的Channel、MAC、LL層的類型,天線類型,節點數目,場
#景的長寬尺寸等。
set val(chan) Channel/WirelessChannel ;#信道類型
set val(prop) Propagation/TwoRayGround ;#無線-傳播模型
set val(netif) Phy/WirelessPhy ;#網絡接口類型
set val(mac) Mac/802_11 ;#MAC類型
set val(ifq) Queue/DropTail/PriQueue ;#接口隊列類型
set val(ll) LL ;#鏈路層類型
set val(ant) Antenna/OmniAntenna ;#天線模型
set val(ifqlen) 50 ;#ifq中的最大分組
set val(nn) 2 ;#移動節點數
set val(rp) AODV ;#路由協議
set val(x) 500 ;#拓撲結構的X軸範圍
set val(y) 500 ;#拓撲結構的Y軸範圍
############################################################################################
$set ns [new Simulator]
############################################################################################
#建立節點(mobilenode)之前,先配置節點的一些參數。agentTrace表示應用層的trace,在trace文件中用#AGT表示;routerTrace表示路由的trace,在toace文件中用RTR表示;macTrace表示MAC層的trace,
#在trace文件中用MAC表示;movementTrace表示記錄節點移動命令的trace,在trace文件中用M表示。
$ns node-config -addressType def\ ;#設定節點地址類型:def(flat) & hierarchical
-adhocRouting $val(rp) \ ;#設定移動節點所使用的路由協議
-llType $val(ll) \ ;#設定移動節點的邏輯鏈路層
-macType $val(mac) \ ;#設定移動節點的MAC層
-ifqType $val(ifq) \ ;#設定移動節點的隊列類型
-ifqLen $val(ifqlen) \ ;#設定移動節點的隊列長度
-antType $val(ant) \ ;#設定移動節點的天線類型
-propType $val(prop) \ ;#設定移動節點的無線信號傳輸模型
-phyType $val(netif) \ ;#設定移動節點物理層類型
-channelType $val(chan) \ ;#設定移動節點的無線信道類型
-topoInstance $topo \ ;#設定移動節點的拓撲對象
-agentTrace ON \ ;#是否打開應用層的trace
-routerTrace ON \ ;#是否打開路由的trace
-macTrace OFF \ ;#是否打開MAC層的trace
-movementTrace OFF ;#是否打開節點位置和移動信息的trace ############################################################################################ #建立兩個節點(mobilenode),關閉節點的隨機運動功能,即節點的運動完全由我們指定。
for {set i 0} {$i < $val(nn) } {incr i} {
set node_($i) [$ns node]
$node_($i) random-motion 0 ;#取消隨機移動
}
#景的長寬尺寸等。
set val(chan) Channel/WirelessChannel ;#信道類型
set val(prop) Propagation/TwoRayGround ;#無線-傳播模型
set val(netif) Phy/WirelessPhy ;#網絡接口類型
set val(mac) Mac/802_11 ;#MAC類型
set val(ifq) Queue/DropTail/PriQueue ;#接口隊列類型
set val(ll) LL ;#鏈路層類型
set val(ant) Antenna/OmniAntenna ;#天線模型
set val(ifqlen) 50 ;#ifq中的最大分組
set val(nn) 2 ;#移動節點數
set val(rp) AODV ;#路由協議
set val(x) 500 ;#拓撲結構的X軸範圍
set val(y) 500 ;#拓撲結構的Y軸範圍
############################################################################################
$set ns [new Simulator]
############################################################################################
#建立節點(mobilenode)之前,先配置節點的一些參數。agentTrace表示應用層的trace,在trace文件中用#AGT表示;routerTrace表示路由的trace,在toace文件中用RTR表示;macTrace表示MAC層的trace,
#在trace文件中用MAC表示;movementTrace表示記錄節點移動命令的trace,在trace文件中用M表示。
$ns node-config -addressType def\ ;#設定節點地址類型:def(flat) & hierarchical
-adhocRouting $val(rp) \ ;#設定移動節點所使用的路由協議
-llType $val(ll) \ ;#設定移動節點的邏輯鏈路層
-macType $val(mac) \ ;#設定移動節點的MAC層
-ifqType $val(ifq) \ ;#設定移動節點的隊列類型
-ifqLen $val(ifqlen) \ ;#設定移動節點的隊列長度
-antType $val(ant) \ ;#設定移動節點的天線類型
-propType $val(prop) \ ;#設定移動節點的無線信號傳輸模型
-phyType $val(netif) \ ;#設定移動節點物理層類型
-channelType $val(chan) \ ;#設定移動節點的無線信道類型
-topoInstance $topo \ ;#設定移動節點的拓撲對象
-agentTrace ON \ ;#是否打開應用層的trace
-routerTrace ON \ ;#是否打開路由的trace
-macTrace OFF \ ;#是否打開MAC層的trace
-movementTrace OFF ;#是否打開節點位置和移動信息的trace ############################################################################################ #建立兩個節點(mobilenode),關閉節點的隨機運動功能,即節點的運動完全由我們指定。
for {set i 0} {$i < $val(nn) } {incr i} {
set node_($i) [$ns node]
$node_($i) random-motion 0 ;#取消隨機移動
}
node-config函數的配置參數說明:
-addressType:設定節點地址類型:def(flat) & hierarchical。
-adhocRouting:設定移動節點所使用的路由協議。
-llType:設定移動節點的邏輯鏈路層。
-macType:設定移動節點的MAC層。
-ifqType:設定移動節點的隊列類型。
-ifqLen:設定移動節點的隊列長度。
-antType:設定移動節點的天線類型。
-propType:設定移動節點的無線信號傳輸模型。
-phyType:設定移動節點物理層類型。
-channelType:設定移動節點的無線信道類型。
-topoInstance:設定移動節點的拓撲對象。
-wiredRouting:是否支持有限網絡的路由。
-agentTrace:是否打開應用層的trace。
-routerTrace:是否打開路由的trace。
-macTrace:是否打開MAC層的trace。
-movementTrace:是否打開節點位置和移動信息的trace。
-reset: 重置所有屬性爲缺省值。
-addressType:設定節點地址類型:def(flat) & hierarchical。
-adhocRouting:設定移動節點所使用的路由協議。
-llType:設定移動節點的邏輯鏈路層。
-macType:設定移動節點的MAC層。
-ifqType:設定移動節點的隊列類型。
-ifqLen:設定移動節點的隊列長度。
-antType:設定移動節點的天線類型。
-propType:設定移動節點的無線信號傳輸模型。
-phyType:設定移動節點物理層類型。
-channelType:設定移動節點的無線信道類型。
-topoInstance:設定移動節點的拓撲對象。
-wiredRouting:是否支持有限網絡的路由。
-agentTrace:是否打開應用層的trace。
-routerTrace:是否打開路由的trace。
-macTrace:是否打開MAC層的trace。
-movementTrace:是否打開節點位置和移動信息的trace。
-reset: 重置所有屬性爲缺省值。