Re: [ns] Compiling ns-2.27 on a 64-bit machine
Tom, Following your suggestion, I have successfully compiled ns-2.27 on a 64-bit machine. I built ns-allinone-2.31 completely. Then I replaced ns-2.31 directory with ns-2.27, fixed minor problems and built it successfully. Now I am able to run my tcl scripts in a 64-bit environment. Thanks a lot for your help. Regards, Sita > Sita S. Krishnakumar wrote: >> Tom, >> I successfully built 2.31 in 64-bit environment. All I had to do was fix >> the path to lib64 in a few places. Once that built, I decided to >> replicate >> the changes in ns-2.27 directory. After a few changes, it got more >> complicated with template kind of declarations and static type casting. >> So >> I put a halt to that. >> >> Then I decided I would try to force ns-allinone-2.27 to build as a 32 >> bit >> on a 64 bit machine. I used the -m32 flag with gcc to achieve this. >> Doing >> this I was able to build tcl and tk. It did complain that the output >> may >> be unsuitable for x86_64 environment. But otcl did not even build. I do >> not know if it is more architecture dependent. >> >> I use sensor code from NRL which works in 2.27. I am aware of other >> people >> who have tried it in 2.28, 2.29 and have not had success. This is my >> reason to stick to 2.27. >> >> Do you have any other suggestions for me? As always, thanks for your >> help. >> Regards, >> Sita > > I will look at it tomorrow. In general, I would suggest you will be > better off starting with ns-allinone-2.31, and then put in ns-2.27 into > that environment and work out the problems once you have working > otcl/tclcl libraries. > > > Tom >
[ns] propagation model : simpledistance ..where the error to fix?
i have successfull do 1. Add NOAH as a new module (Noah/Noah.o) 2. Successfull get sdist.o and i place in in Ns-2.31/propagation/sdist.o (this is simpledistance) 3. when i run ns singlehop.tcl the error come out.. invalid command name "Propagation/sdist" while executing "Propagation/sdist create _o24 " invoked from within "catch "$className create $o $args" msg" invoked from within "if [catch "$className create $o $args" msg] { if [string match "__FAILED_SHADOW_OBJECT_" $msg] { delete $o return "" } global errorInfo error "class $..." (procedure "new" line 3) invoked from within "new $propType_" (procedure "_o3" line 29) (Simulator node-config line 29) invoked from within "$ns_ node-config -mobileIP OFF \ -adhocRouting NOAH \ -llType LL \ -macType Mac/802_11 \ ..." (file "singlehop.tcl" line 22) -- AZHAR MOHD ARIS (GS16917) Master in Computer Science Candidate (Distributed Computing) University Putra of Malaysia +^019.613.742.2 YM: azuan76 # # nodes: 10, max conn: 3, send rate: 0.0, seed: 0.0 # # 5.0 0 -> 3 exp 1 500 # 0 connecting to 3 at time 5.0 #set udp_(0) [new Agent/UDP] #set null_(0) [new Agent/Null] #$udp_(0) set fid_ 0 #$null_(0) set fid_ 0 #$ns_ attach-agent $node_(0) $udp_(0) #$ns_ attach-agent $node_(2) $null_(0) #$ns_ connect $udp_(0) $null_(0) #$udp_(0) set packetSize_ 500 #set exp_(0) [new Application/Traffic/Exponential] #$exp_(0) attach-agent $udp_(0) #$exp_(0) set interval_ 0.020 #$exp_(0) set burst_time_ 2.0 #$exp_(0) set idle_time_ 0.5 #$exp_(0) set packetSize_ 500 #$ns_ at 5.0 "$exp_(0) start" #$ns_ at 120.0 "$exp_(0) stop" # 5.0 0 -> 3 tcp 1 512 # 0 connecting to 3 at time 5.0 #set tcp_(1) [$ns_ create-connection TCP $node_(0) TCPSink $node_(3) 1] #$tcp_(1) set window_ 32 #$tcp_(1) set packetSize_ 512 #set ftp_(1) [new Application/FTP] #$ftp_(1) attach-agent $tcp_(1) #$ns_ at 5.0 "$ftp_(1) start" ##$ns_ at 920.0 "$ftp_(1) stop" #$ns_ at 1000.0 "$ftp_(1) stop" # 5.0 0 -> 3 udp 1 1000 # 0 connecting to 3 at time 5.0 #set udp_(2) [new Agent/UDP] #set null_(2) [new Agent/Null] #$udp_(2) set fid_ 2 #$null_(2) set fid_ 2 #$ns_ attach-agent $node_(0) $udp_(2) #$ns_ attach-agent $node_(3) $null_(2) #$ns_ connect $udp_(2) $null_(2) #$udp_(2) set packetSize_ 1000 #set cbr_(2) [new Application/Traffic/CBR] #$cbr_(2) attach-agent $udp_(2) #$cbr_(2) set interval_ 5 #$cbr_(2) set packetSize_ 1000 ##$ns_ at 5.0 "$cbr_(2) start" ASM #$ns_ at 920.0 "$cbr_(2) stop" set tcp1 [new Agent/TCP] $tcp1 set class_ 2 set sink1 [new Agent/TCPSink] $ns_ attach-agent $node_(0) $tcp1 $ns_ attach-agent $node_(2) $sink1 $ns_ connect $tcp1 $sink1 set ftp1 [new Application/FTP] $ftp1 attach-agent $tcp1 $ns_ at 5.0 "$ftp1 start" $ns_ at 120.0 "$ftp1 stop" #Traffic to cause congestion in base station set udp [new Agent/UDP] $ns_ attach-agent $node_(0) $udp set null [new Agent/Null] $ns_ attach-agent $node_(2) $null $ns_ connect $udp $null $udp set fid_ 2 set cbr [new Application/Traffic/CBR] $cbr attach-agent $udp $cbr set type_ CBR $cbr set packet_size_ 1000 $cbr set rate_ 0.5mb $cbr set random_ false $ns_ at 0.1 "$cbr start" $ns_ at 120.0 "$cbr stop" # #Total sources/connections: 3/3 #
Re: [ns] dsr trace file explanation
> It's a bit different with NS Manual trace explanation. There are different messages and abbreviations in the trace file, depending on the version of ns-2 that you have and the type of trace you are doing. This link explains them all: http://nsnam.isi.edu/nsnam/index.php/NS-2_Trace_Formats#Old_Wireless_Trace_Formats - just search "SFs". It looks like you have the "new wireless trace format" and you are using the DSR (Dynamic Source Routing) trace format, and SFs is an event, namely the Flowstate, where Flowstate is a struct in ns-2. See here for a diagram of Flowstate's relation to other classes and files in ns-2: http://www.ece.uvic.ca/~emads/ns-2.29/struct_f_q_1_1flow_state.html Hope those links help you out. -- Sincerely, Candace Phelps 3rd Yr Honors CS Student Quoting uknown noname <[EMAIL PROTECTED]>: > > > [input] [input] [input] [input] > Hello > This is part of trace file (~/tcl/ex/out-test.tr) from tcl sript > using DSR (~/tcl/ex/wireless-test.tcl). > > s 127.936679222 _0_ AGT --- 0 cbr 512 [0 0 0 0] --- [0:0 2:0 32 > 0] [0] 0 3 > r 127.936679222 _0_ RTR --- 0 cbr 512 [0 0 0 0] --- [0:0 2:0 32 > 0] [0] 0 3 > s 127.940949843 _0_ RTR --- 1 DSR 32 [0 0 0 0] --- [0:255 2:255 > 32 0] 1 [1 1] [0 1 0 0->0] [0 0 0 0->0] > r 127.942102650 _1_ RTR --- 1 DSR 32 [0 0 800] --- > [0:255 2:255 32 0] 1 [1 1] [0 1 0 0->0] [0 0 0 0->0] > s 127.974476947 _0_ RTR --- 2 DSR 32 [0 0 0 0] --- [0:255 2:255 > 32 0] 1 [1 2] [0 2 0 0->16] [0 0 0 0->0] > r 127.975809754 _1_ RTR --- 2 DSR 32 [0 0 800] --- > [0:255 2:255 32 0] 1 [1 2] [0 2 0 0->16] [0 0 0 0->0] > > > SFs 150.773527127 _2_ 127 [2 -> 1] 1(0) to 1 > s 150.773527127 _2_ RTR --- 127 ack 60 [0 0 0 0] --- [2:1 1:0 > 32 1] [48 0] 0 2 > r 150.787165430 _2_ RTR --- 94 tcp 1520 [13a 2 1 800] --- [1:0 > 2:1 32 2] [49 0] 1 2 > r 150.787165430 _2_ AGT --- 94 tcp 1500 [13a 2 1 800] --- [1:0 > 2:1 32 2] [49 0] 1 2 > > > It's a bit different with NS Manual trace explanation. The column > are explained as below. > 1 = event (s,r,.. but what is SFs?, ) > 2 = time (but this trace file are record at what event? its start > recorded at 127s .. why?? > 3 = node (ignoring _ _) is it this is source node? > 4 = AGT, RTR, i'm not sure.. > 5 = i'm not sure.. > 6 = i'm not sure.. > 7 = packet type. > 8 = packet size (why the packet size is always changes) > 9 = [0 0 0 0] i'm not sure.. > 10= i'm not sure.. > 11= [0:0 2:0 32 0] i'm not sure.. > 12= [0] i'm not sure.. > 13= sequence number > 14= packet id > > at the 3rd line, the trace file a bit different.. 1 [1 1] [0 1 > 0 0->0] [0 0 0 0->0] > what does it mean?? > > Could anybody can explain more detail about this?? > > My system : > FC 6 > 2.6.18-1.2869.fc6 > ns2.30 > > - > Be a better Heartthrob. Get better relationship answers from someone > who knows. > Yahoo! Answers - Check it out. > >
Re: [ns] why nothing to do ?after run make all. Nothing to be done for `all'.
(Sorry I forgot to reply to the list the first time) > hello there Hi! ..anybody have experience in having this after add some module? i added Noah module and sdist.cc .. and after run make all..the result seem like this ..i'm using NS-2.31. Did you run "make clean" first? That will delete all your old .o files. If you don't run "make clean", the Makefile doesn't realize that you've added anything new. Also, make sure you add your new .o files to the makefile in the object list. That means here: [/code} OBJ_CC = \ tools/random.o tools/rng.o tools/ranvar.o common/misc.o common/timer-handler.o \ . . . wpan/p802_15_4trace.o wpan/p802_15_4transac.o \ ts/ts.o \ @V_STLOBJ@ I added "ts/ts.o \". Lastly, make sure you edit Makefile.in (not Makefile), since Makefile is created by looking at the contents of Makefile.in. See here for more information: http://www.la-samhna.de/library/compile/configure.html Hope that helps! -- Candace Phelps 3rd Yr Honors CS Student Quoting AZHAR MOHD ARIS <[EMAIL PROTECTED]>: > > hello there ..anybody have experience in having this after add some module? > i added Noah module and sdist.cc .. and after run make all..the result seem > like this ..i'm using NS-2.31. > > 1. I install ns-2.31 and its successfull! (with .confgure and make all) and > test %ns and validate --- ok > 2. then i add extension module from > http://icapeople.epfl.ch/widmer/MobileIP/ns-extension/steps.html (doing like > it says) > 3. rerun the ./configure and try to make all > 4. the error seem like below... check the makefile.in and everything ok > (followed the guide from author website) > 5. but... ermm > > cb; do ( cd $i; make all; ) done > make[1]: Entering directory `/usr/local/ns2/ns- > allinone-2.31/ns-2.31/indep-utils/cmu-scen-gen/setdest' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory > `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/cmu-scen-gen/setdest' > make[1]: Entering directory `/usr/local/ns2/ns- > allinone-2.31/ns-2.31/indep-utils/webtrace-conv/dec' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory > `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/dec' > make[1]: Entering directory `/usr/local/ns2/ns- > allinone-2.31/ns-2.31/indep-utils/webtrace-conv/epa' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory > `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/epa' > make[1]: Entering directory `/usr/local/ns2/ns- > allinone-2.31/ns-2.31/indep-utils/webtrace-conv/nlanr' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory > `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/nlanr' > make[1]: Entering directory `/usr/local/ns2/ns- > allinone-2.31/ns-2.31/indep-utils/webtrace-conv/ucb' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory > `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/ucb' > > > > -- > AZHAR MOHD ARIS (GS16917) > Master in Computer Science Candidate (Distributed Computing) > University Putra of Malaysia > +^019.613.742.2 > YM: azuan76 > >
[ns] Network simulator 2 and Soap protocol
My greetings to this community. My name is Themis Apostolopoulos and i am taking my first steps in NS. I have a question that can't quite answer myself and i need your advice. I wonder whether i can simulate Soap (MTOM) messages via NS 2... Thank you in advance for your time. Best regards, Themis.
[ns] dsr trace file explanation
[input] [input] [input] [input] Hello This is part of trace file (~/tcl/ex/out-test.tr) from tcl sript using DSR (~/tcl/ex/wireless-test.tcl). s 127.936679222 _0_ AGT --- 0 cbr 512 [0 0 0 0] --- [0:0 2:0 32 0] [0] 0 3 r 127.936679222 _0_ RTR --- 0 cbr 512 [0 0 0 0] --- [0:0 2:0 32 0] [0] 0 3 s 127.940949843 _0_ RTR --- 1 DSR 32 [0 0 0 0] --- [0:255 2:255 32 0] 1 [1 1] [0 1 0 0->0] [0 0 0 0->0] r 127.942102650 _1_ RTR --- 1 DSR 32 [0 0 800] --- [0:255 2:255 32 0] 1 [1 1] [0 1 0 0->0] [0 0 0 0->0] s 127.974476947 _0_ RTR --- 2 DSR 32 [0 0 0 0] --- [0:255 2:255 32 0] 1 [1 2] [0 2 0 0->16] [0 0 0 0->0] r 127.975809754 _1_ RTR --- 2 DSR 32 [0 0 800] --- [0:255 2:255 32 0] 1 [1 2] [0 2 0 0->16] [0 0 0 0->0] SFs 150.773527127 _2_ 127 [2 -> 1] 1(0) to 1 s 150.773527127 _2_ RTR --- 127 ack 60 [0 0 0 0] --- [2:1 1:0 32 1] [48 0] 0 2 r 150.787165430 _2_ RTR --- 94 tcp 1520 [13a 2 1 800] --- [1:0 2:1 32 2] [49 0] 1 2 r 150.787165430 _2_ AGT --- 94 tcp 1500 [13a 2 1 800] --- [1:0 2:1 32 2] [49 0] 1 2 It's a bit different with NS Manual trace explanation. The column are explained as below. 1 = event (s,r,.. but what is SFs?, ) 2 = time (but this trace file are record at what event? its start recorded at 127s .. why?? 3 = node (ignoring _ _) is it this is source node? 4 = AGT, RTR, i'm not sure.. 5 = i'm not sure.. 6 = i'm not sure.. 7 = packet type. 8 = packet size (why the packet size is always changes) 9 = [0 0 0 0] i'm not sure.. 10= i'm not sure.. 11= [0:0 2:0 32 0] i'm not sure.. 12= [0] i'm not sure.. 13= sequence number 14= packet id at the 3rd line, the trace file a bit different.. 1 [1 1] [0 1 0 0->0] [0 0 0 0->0] what does it mean?? Could anybody can explain more detail about this?? My system : FC 6 2.6.18-1.2869.fc6 ns2.30 - Be a better Heartthrob. Get better relationship answers from someone who knows. Yahoo! Answers - Check it out.
[ns] Lan and multicast (again)
-- Forwarded message -- From: Wim Vrijens <[EMAIL PROTECTED]> Date: 27 aug. 2007 13:06 Subject: Lan and multicast (again) To: ns-users@isi.edu Hi all, As the title suggests I'm trying to get multicast working over a LAN. I have NS-2.31 installed, updated to the latest snapshot on a Kubuntu Feisty system. Never had any problems with the installation or validation of my build. The main goal of my simulation: Within a power substation breakers and transformers communicate on a LAN. In my implementation about 10 nodes (the breakers etc) report to the substation automation computer (node(0)) every 0.02 secondes. When an important event occurs, the substation automation computer multicasts a message to all breakers on the LAN. Notice that in my case timing constraints are important, not the protocol itself. And I'm a power system engineer not a telecommunications engineer ;-) Implementation: The reporting services is implemented as 10 nodes sending out CBR messages to node(0) over the LAN. This works fine and I've written a awk-file to extract useful data from the tracefile. Then I implement the multicast session from node(0) to all nodes in the LAN. I'm using DM, just like the manual says it should work fine with a LAN. Although it doesn't when I coded it. For debugging purpose I added a duplex link from node(0) to a new node and started multicasting from this new node. This sheds a new light at the problem. By looking at the trace file you can see that, when the message wants to enter the LAN it doesn't find any downstream receivers. Hence the prune message going upstream. Because the prune timer still stands on 0.5 (default) nothing happens anymore. The first line from my trace file are: v 0.1 eval {set sim_annotation {0.10001 1 join-group -2147483648}} + 1.5 0 12 cbr 50 --- 2 0.1 -2147483648.1 0 0 - 1.5 0 12 cbr 50 --- 2 0.1 -2147483648.1 0 0 h 1.5 0 11 cbr 50 --- 2 0.1 -2147483648.1 0 0 r 1.5 0 12 cbr 50 --- 2 0.1 -2147483648.1 0 0 + 1.5 12 0 prune 80 --- 30 12.0 0.0 -1 1 - 1.5 12 0 prune 80 --- 30 12.0 0.0 -1 1 r 1.5 12 0 prune 80 --- 30 12.0 0.0 -1 1 + 1.5001 0 11 cbr 50 --- 2 0.1 -2147483648.1 0 0 - 1.5001 0 11 cbr 50 --- 2 0.1 -2147483648.1 0 0 h 1.500893 0 11 cbr 50 --- 2 0.1 -2147483648.1 1 2 + 1.500993 0 11 cbr 50 --- 2 0.1 -2147483648.1 1 2 - 1.500993 0 11 cbr 50 --- 2 0.1 -2147483648.1 1 2 h 1.501786 0 11 cbr 50 --- 2 0.1 -2147483648.1 2 3 + 1.501886 0 11 cbr 50 --- 2 0.1 -2147483648.1 2 3 - 1.501886 0 11 cbr 50 --- 2 0.1 -2147483648.1 2 3 So can anybody shed some light on the problem why there are no downstream receivers, even though I still add the nodes on the LAN to the destination group? My apologies for the long post, but I want to be as clear as possible so a easy solution can be found. With kind regards Wim PS My tcl-script looks like this (some lines have been commented out, because there not needed to get multicast working and only clog up my trace file). # Lan-configuratie voor een Substation Automation System (IEC 61850) ## Variabelen ## set val(tr) "trace.tr" set val(ntr)"namout.nam" set val(resf) "resf.txt" set val(stop) 3.0 set val(IED)11 set val(LanBW) 10Mb set val(LanDelay) 0.1ms set val(CBRPacket) 80 set val(CBRInterval)0.02 set val(CBRPackMulti) 50 set val(CBRCountMulti) 10 ## Methodes ### proc finish {} { global ns val trf ntrf resf $ns flush-trace close $trf close $ntrf close $resf #exec nam -a namout.nam & #exec awk -f awktrace.awk trace.tr & exit 0 } proc create-trace {} { global ns val set trf [open $val(tr) w] $ns trace-all $trf return $trf } proc create-namtrace {} { global ns val set ntrf [open $val(ntr) w] $ns namtrace-all $ntrf return $ntrf } proc create-resultfile {} { global ns val set resf [open $val(resf) w] puts $resf "Resultaten voor de simulatie:" puts $resf "-" puts $resf "" puts $resf "Aantal IEDs: [expr $val(IED)-1]" puts $resf "Aantal SACs: 1" puts $resf "" return $resf } proc create-topology {} { global ns val global node nodex lan resf for {set i 0} {$i < $val(IED)} {incr i} { set node($i) [$ns node] lappend nodelist $node($i) } set lan [$ns make-lan $nodelist $val(LanBW) $val(LanDelay) LL Queue/DropTail Mac/802_3 Channel] puts "LAN aangemaakt $lan" puts $resf "LAN-topology aangemaakt met een bandbreedte van $val(LanBW)/s en een delay: $val(LanDelay)" puts $resf "" set nodex [$ns node] $ns duplex-link $nodex $node(0) 100Gb 0ms DropTail } proc create-reportSource {} { global ns val
[ns] why nothing to do ?after run make all. Nothing to be done for `all'.
hello there ..anybody have experience in having this after add some module? i added Noah module and sdist.cc .. and after run make all..the result seem like this ..i'm using NS-2.31. 1. I install ns-2.31 and its successfull! (with .confgure and make all) and test %ns and validate --- ok 2. then i add extension module from http://icapeople.epfl.ch/widmer/MobileIP/ns-extension/steps.html (doing like it says) 3. rerun the ./configure and try to make all 4. the error seem like below... check the makefile.in and everything ok (followed the guide from author website) 5. but... ermm cb; do ( cd $i; make all; ) done make[1]: Entering directory `/usr/local/ns2/ns- allinone-2.31/ns-2.31/indep-utils/cmu-scen-gen/setdest' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/cmu-scen-gen/setdest' make[1]: Entering directory `/usr/local/ns2/ns- allinone-2.31/ns-2.31/indep-utils/webtrace-conv/dec' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/dec' make[1]: Entering directory `/usr/local/ns2/ns- allinone-2.31/ns-2.31/indep-utils/webtrace-conv/epa' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/epa' make[1]: Entering directory `/usr/local/ns2/ns- allinone-2.31/ns-2.31/indep-utils/webtrace-conv/nlanr' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/nlanr' make[1]: Entering directory `/usr/local/ns2/ns- allinone-2.31/ns-2.31/indep-utils/webtrace-conv/ucb' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/ns2/ns-allinone-2.31/ns-2.31/indep-utils/webtrace-conv/ucb' -- AZHAR MOHD ARIS (GS16917) Master in Computer Science Candidate (Distributed Computing) University Putra of Malaysia +^019.613.742.2 YM: azuan76