[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [ns] error model
I guess that my implementation doesn't include in 2.1b7.
-jahn
-----Original Message-----
From: [email protected] [mailto:[email protected]]On Behalf Of Laurent
Sent: Wednesday, June 27, 2001 4:02 AM
To: jahn-isi
Cc: [email protected]
Subject: Re: [ns] error model
jahn-isi wrote:
>
> You can use any error models provided for wired networks also for wireless networks.
> One difference is in how to attach a specified error module. Wired networks attach the
> error model at their outgoing link while wireless networks embed the error model in their
> protocol stack. To see how to hook the error model, please refer to test-suite-wireless-lan-newnode-err.tcl.
>
in my script i made the same thing that it write in
test-suite-wireless-lan-newnode-err.tcl.
but i doesn't work!
i use ns version 2.1b7 with the NOAH extension.
i add the following lines in my script:
set opt(chan) Channel/WirelessChannel ;# channel type
set opt(prop) Propagation/TwoRayGround ;# radio-propagation
model
set opt(netif) Phy/WirelessPhy ;# network interface
type
set opt(err) UniformErrorProc
set opt(FECstrength) 1
set opt(unit) pkt
set opt(mac) Mac/802_11 ;# MAC type
set opt(ifq) Queue/DropTail/PriQueue ;# interface queue
type
set opt(ll) LL ;# link layer type
set opt(ant) Antenna/OmniAntenna ;# antenna model
set opt(ifqlen) 50 ;# max packet in ifq
set opt(adhocRouting) NOAH ;# routing protocol
# Initialize the Errormodel
ErrorModule set debug_ false
ErrorModel set enable_ 1
ErrorModel set markecn_ false
ErrorModel set bandwidth_ 2Mb
ErrorModel set rate_ 0.99
ErrorModel/Trace set good_ 123456789
ErrorModel/Trace set loss_ 0
ErrorModel/Periodic set period_ 3.0
ErrorModel/Periodic set offset_ 0.0
ErrorModel/Periodic set burstlen_ 0.0
ErrorModel/MultiState set curperiod_ 0.0
ErrorModel/MultiState set sttype_ pkt
ErrorModel/MultiState set texpired_ 0
proc UniformErrorProc {} {
global opt
set errObj [new ErrorModel]
$errObj unit bit ;# l'unit� utilis�e (bit ou packet)
$errObj FECstrength $opt(FECstrength)
$errObj datapktsize 1000
$errObj cntrlpktsize 80
$errObj drop-target [new Agent/Null]
return $errObj
}
and when i configure the mobil nodes i make this:
$ns_ node-config -adhocRouting $opt(adhocRouting) \
-llType $opt(ll) \
-macType $opt(mac) \
-ifqType $opt(ifq) \
-ifqLen $opt(ifqlen) \
-antType $opt(ant) \
-propType $opt(prop) \
-phyType $opt(netif) \
-channelType $opt(chan) \
-topoInstance $topo \
-wiredRouting ON \
-agentTrace ON \
-routerTrace OFF \
-macTrace OFF \
-errProc $opt(err)
but i doesn't work: the -errProc option has no effect
i read the file "tcl/lib/ns-lib.tcl" and the "errProc" appears anywhere
so i tried with ns-2.1b8 : the "errProc" option appear in the ns-lib.tcl
file
but i can't use ns-2.1b8 because the NOAH protocol is not provide with
it.