-   Linux - Newbie (
-   -   NS2.26/TCP installation error? (

japz20 11-23-2004 11:08 PM

NS2.26/TCP installation error?
*WARNING: this is a pretty long first post. My eternal gratitude to anyone who has the patience to read this.*

First of all, I am a TOTAL newbie when it comes to Linux and programming.
I installed Red Hat Linux version 9 (Shrike) on my PC and then I also installed Network Simulator (NS) 2.26 because I need it for a study. Eventually I have to be able to install and run different TCP flavors on the system, such as TCP Reno, TCP Vegas, and TCP Veno. For now, I'm checking my TCP Veno installation... I followed instructions: I rebuilt NS2 with make clean, reconfigured it, edited the clean makefile to add "tcp-veno.o", put the required files (tcp.h and into my ns-2.26 tcp folder. I also edited ns-default.tcl, adding a required three lines to accommodate Veno. When I try to 'make' NS2 again, however, the following is shown:

[root@localhost ns-2.26]# make
for i in indep-utils/cmu-scen-gen/setdest indep-utils/webtrace-conv/dec indep-utils/webtrace-conv/epa indep-utils/webtrace-conv/nlanr indep-utils/webtrace-conv/ucb; do ( cd $i; make all; ) done
make[1]: Entering directory `/home/veno/ns-allinone-2.26/ns-2.26/indep-utils/cmu-scen-gen/setdest'
make[1]: Nothing to be done for `all'.

... and some more lines to that effect. So next I try:

[root@localhost ns-2.26]# make install
/usr/bin/install -c -m 555 -o bin -g bin ns /usr/bin
/usr/bin/install -c -m 444 -o bin -g bin ns.1 /usr/man/man1
/usr/bin/install: cannot create regular file `/usr/man/man1': No such file or directory
make: *** [install-man] Error 1

The examples provided in the NS2 tutorial run, so I assume, despite the error, that my NS2 installation was successful. So next I try out the test TCL script:

#Create a simulator object
set ns [new Simulator]

#Define a 'finish' procedure
proc finish {} {
global ns
exec awk -f cwnd.awk -v outdata_file=vcwnd
exec xgraph title_x Time(sec) title_y Congestion Window(pkt) title windows vcwnd &
exit 0

#Create four nodes
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
set n4 [$ns node]
set n5 [$ns node]

#Create links between the nodes
$ns duplex-link $n0 $n2 10 Mb 0.1ms DropTail
$ns duplex-link $n1 $n2 10 Mb 0.1ms DropTail
$ns duplex-link $n3 $n4 10 Mb 0.1ms DropTail
$ns duplex-link $n3 $n5 10 Mb 0.1ms DropTail
$ns duplex-link $n2 $n3 1.6 Mb 50ms DropTail

#Set Queue Size of link (n2-n3) to 10
$ns queue-limit $n2 $n3 14
$ns queue-limit $n3 $n2 14

Agent/TCP set window_ 1000
Agent/TCP set maxcwnd_ 1000
Agent/TCP set packetSize_ 1000
Agent/TCP set bugfix_ true
#Agent/TCP set windowInitOption_ 1
Agent/TCP set windowInit_ 1
#Agent/TCP set ecn_ 1

#Setup a TCP connection
set tcp0 [$ns create-connection TCP/Reno $n0 TCPSink $n4 1]
#set tcp0 [$ns create-connection TCP/Reno $n1 TCPSink $n5 2]

#Setup a FTP over TCP connection
set ftp0 [new Application/FTP]
$ftp0 attach-agent $tcp0

$tcp0 trace cwnd_
$tcp0 trace ssthresh_
$tcp0 trace nackpack_
$tcp0 trace t_seqno_
$tcp0 attach [open w]

#Schedule events for the CBR and FTP agents
$ns at 0 "$ftp0 start"
$ns at 100 "$ftp0 stop"

#Run the simulation
$ns run

So I try it out, but I get the following error:

[root@localhost ns-2.26]# ns testing.tcl
invalid command name "Queue/0.1ms"
while executing
"Queue/0.1ms create _o28 DropTail"
invoked from within
"catch "$className create $o $args" msg"
(procedure "new" line 3)
invoked from within
"new Queue/$qtype $args"
("default" arm line 5)
invoked from within
"switch -exact $qtype {
ErrorModule {
if { [llength $args] > 0 } {
set q [eval new $qtype $args]
} else {
set q [new $qtype Fid]
intserv {
set qtyp..."
(procedure "_o3" line 14)
(Simulator simplex-link line 14)
invoked from within
"_o3 simplex-link _o10 _o16 10 Mb 0.1ms DropTail"
("eval" body line 1)
invoked from within
"eval $self simplex-link $n1 $n2 $bw $delay $type $args"
(procedure "_o3" line 8)
(Simulator duplex-link line 8)
invoked from within
"$ns duplex-link $n0 $n2 10 Mb 0.1ms DropTail"
(file "testing.tcl" line 21)

Please, please tell me what to do! I've been working on this for a month and my TCP Veno installation still won't run... please help. Thank you so much...

hutuworm 11-24-2004 12:48 AM

mkdir -p /usr/man/man1

japz20 11-24-2004 01:15 AM

Thanks! 'make install' is successful now... but my test script still wont work! I still get the same error message. I think it should output an xgraph... Is there something wrong with the code? I got it from the creators of TCP Veno themselves.

hutuworm 11-24-2004 01:38 AM

Is the command name "Queue/0.1ms" valid?

japz20 11-24-2004 02:26 AM

I don't know, but it's nowhere on the test script. No, I don't think it's valid... what should I do?

I told the co-creator (Zhang Chunlei) about this error, and he told me to try TCP Reno first, so in the test script you see Reno implemented, not Veno.

japz20 12-01-2004 01:14 AM

Help! I really don't know what to do next!

chauhanrvikas 01-16-2013 03:27 AM

require tcp and .h
can anyone give me tcp and tcp veno.h
i require it for my academic purpose
thnx in advance........

All times are GMT -5. The time now is 09:39 AM.