[ns] problem of Error model in wireless simulation...
John Jeon
John Jeon" <skchun98@hanmail.net
Thu Apr 25 05:18:44 2002
Hello! all
<br> I'm using ErroModel in my simulation. I want to create a wireless link which has a variable BER(bit error rate).and I only have used two static node in wireless network environment.
<br>I refer to http://mailman.isi.edu/pipermail/ns-users/2002-April/022080.html that error model.and add that error model in tcl/ex/simple-wireless.tcl.but I can't find any packet drop-"D" and any change with different BER values in the trace file.
<br>I guess the errProc option has no effect.
<br>Does anyone know why and how to resolve it?...
<br>and furthermore how can make effective error model in wireless environment?
<br>Best regards!Thanks.
<br> -John jeon
<br>
<br>the tcl script I used is as following:
<br>
<br># ======================================================================
<br># Define options
<br># ======================================================================
<br>set val(chan) Channel/WirelessChannel ;# channel type
<br>set val(prop) Propagation/TwoRayGround ;# radio-propagation model
<br>set val(netif) Phy/WirelessPhy ;# network interface type
<br>set val(mac) Mac/802_11 ;# MAC type
<br>set val(ifq) Queue/DropTail/PriQueue ;# interface queue type
<br>set val(ll) LL ;# link layer type
<br>set val(ant) Antenna/OmniAntenna ;# antenna model
<br>set val(ifqlen) 50 ;# max packet in ifq
<br>set val(nn) 2 ;# number of mobilenodes
<br>set val(rp) DSDV ;# routing protocol
<br>set val(err) UniformErrorProc ;# Define Error model
<br># ======================================================================
<br># Main Program
<br># ======================================================================
<br>
<br>#
<br># Initialize Global Variables
<br>#
<br>set ns_ [new Simulator]
<br>set tracefd [open simple2.tr w]
<br>$ns_ trace-all $tracefd
<br>
<br># set up topography object
<br>set topo [new Topography]
<br>
<br>$topo load_flatgrid 500 500
<br>
<br># Add Error model
<br>
<br>ErrorModule set debug_ false
<br>ErrorModel set enable_ 1
<br>ErrorModel set markecn_ false
<br>ErrorModel set bandwidth_ 2Mb
<br>
<br>proc UniformErrorProc {} {
<br> global opt
<br> set errObj [new ErrorModel]
<br> $errObj set rate_ 0.5
<br> $errObj unit byte
<br> return $errObj
<br>}
<br>
<br>#
<br># Create God
<br>#
<br>create-god $val(nn)
<br>
<br>#
<br># Create the specified number of mobilenodes [$val(nn)] and "attach" them
<br># to the channel.
<br># Here two nodes are created : node(0) and node(1)
<br>
<br># configure node
<br>
<br> $ns_ node-config -adhocRouting $val(rp) \
<br> -llType $val(ll) \
<br> -macType $val(mac) \
<br> -ifqType $val(ifq) \
<br> -ifqLen $val(ifqlen) \
<br> -antType $val(ant) \
<br> -propType $val(prop) \
<br> -phyType $val(netif) \
<br> -channelType $val(chan) \
<br> -topoInstance $topo \
<br> -agentTrace ON \
<br> -routerTrace ON \
<br> -macTrace OFF \
<br> -movementTrace OFF
<br>
<br> for {set i 0} {$i < $val(nn) } {incr i} {
<br> set node_($i) [$ns_ node]
<br> $node_($i) random-motion 0 ;# disable random motion
<br> }
<br>
<br>#
<br># Provide initial (X,Y, for now Z=0) co-ordinates for mobilenodes
<br>#
<br>$node_(0) set X_ 5.0
<br>$node_(0) set Y_ 2.0
<br>$node_(0) set Z_ 0.0
<br>
<br>$node_(1) set X_ 390.0
<br>$node_(1) set Y_ 385.0
<br>$node_(1) set Z_ 0.0
<br>
<br>#
<br># Now produce some simple node movements
<br># Node_(1) starts to move towards node_(0)
<br>#
<br>$ns_ at 10.0 "$node_(1) setdest 25.0 20.0 15.0"
<br>$ns_ at 10.0 "$node_(0) setdest 20.0 18.0 1.0"
<br>
<br># Node_(1) then starts to move away from node_(0)
<br>#$ns_ at 100.0 "$node_(1) setdest 490.0 480.0 15.0"
<br>
<br># Setup traffic flow between nodes
<br># TCP connections between node_(0) and node_(1)
<br>
<br>set tcp [new Agent/TCP]
<br>$tcp set class_ 2
<br>set sink [new Agent/TCPSink]
<br>$ns_ attach-agent $node_(0) $tcp
<br>$ns_ attach-agent $node_(1) $sink
<br>$ns_ connect $tcp $sink
<br>
<br>
<br>set ftp [new Application/FTP]
<br>$ftp attach-agent $tcp
<br>$ns_ at 10.0 "$ftp start"
<br>
<br>#
<br># Tell nodes when the simulation ends
<br>#
<br>for {set i 0} {$i < $val(nn) } {incr i} {
<br> $ns_ at 150.0 "$node_($i) reset";
<br>}
<br>$ns_ at 150.0 "stop"
<br>$ns_ at 150.01 "puts \"NS EXITING...\" ; $ns_ halt"
<br>proc stop {} {
<br> global ns_ tracefd
<br> $ns_ flush-trace
<br> close $tracefd
<br>}
<br>
<br># execute Error model
<br>$ns_ node-config -errProc $val(err)
<br>
<br>
<br>puts "Starting Simulation..."
<br>$ns_ run
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<img src="http://www78.hanmail.net/Mail-bin/chkcmail?from=skchun98&rcpt=ns%2Dusers%40ISI%2EEDU&msgid=20020425160009%2EHM%2E000000000017h0D%40www78%2Ehanmail%2Enet"><br><table border=0 cellpadding=5 cellspacing=0 width=100%%><tr><td background='http://image.hanmail.net/hanmail/general/dotline_sim.gif' height=1></td></tr><tr><td><font color=#312400 style='font-size:9pt;'>"¿ì¸® ÀÎÅͳÝ, Daum" <a href=http://www.daum.net target=_top><font color=#312400>http://www.daum.net</font></a><br>
</font></td></tr></table><table bgcolor=#F8F8F8 border=0 cellpadding=3 cellspacing=0 width=100%% style='border: #ECECEC solid 1px;'><tr><td bgcolor=#ECECEC width=60 class=tlink nowrap><a href='http://hmm.daum.net/license_0409' target=_blank><font color=#312400 style='font-size:9pt;'>Daum<br>¶óÀ̼¾½Ì</font></a></td>
<td width=50 align=right nowrap><a href='http://hmm.daum.net/card_0401' target=_blank><img src='http://image.hanmail.net/hanmail/top/adver/ecard.gif' width=40 height=40 border=0></a></td><td width=33%% class=base style='line-height:140%%; font-size:9pt;'><a href='http://hmm.daum.net/card_0401' target=_blank><font color=#BD8000 style='font-size:9pt;'>Daum¿£ÅÍÄ«µå</font></a><br>°°ÀÌ ¾²½Ç·¡¿ä?</td>
<td width=3 nowrap><img src='http://image.hanmail.net/hm/line_h.gif' width=3 height=40></td><td width=40><a href='http://hmm.daum.net/gift_0409' target=_blank><img src='http://image.hanmail.net/hanmail/top/adver/gift.gif' width=40 height=40 border=0></a></td><td width=33%% class=base style='line-height:140%%; font-size:9pt;'>
<a href='http://hmm.daum.net/gift_0409' target=_blank><font color=#BD8000 style='font-size:9pt;'>Daum»óǰ±Ç</font></a><br>ÇູÀ» ¼±¹°Çϼ¼¿ä</td><td width=3 nowrap><img src='http://image.hanmail.net/hm/line_h.gif' width=3 height=40></td><td width=40><a href='http://hmm.daum.net/school_0409' target=_blank><img src='http://image.hanmail.net/hanmail/top/adver/capitalo.gif' width=40 height=40 border=0></a></td>
<td width=33%% class=base style='line-height:140%%; font-size:9pt;'><a href='http://hmm.daum.net/school_0409' target=_blank><font color=#BD8000 style='font-size:9pt;'>DaumÇÐÀڱݴëÃâ</font></a><br>µî·Ï±Ý°ÆÁ¤ ³¡!</td></tr></table>