wzhang |
01-20-2009 09:15 AM |
problem by modifying ns2
I've installed ns2 under ubuntu and it runs very well.
But when I want to add a TCP BIC/CUBIC agent as following tips:
Quote:
--------------------------------------------------------------
INSTALLATION HOWTO for BIC and CUBIC for NS 2.6 v1
--------------------------------------------------------------
Please check the latest update at
http://netsrv.csc.ncsu.edu/twiki/bin/view/Main/BIC
--------------------------------------------------------------
BUILD NS2
--------------------------------------------------------------
1. Download the NS2 2.6 all-in-one official version.
2. Replace ns-2.6/tcp/tcp.h and ns-2.6/tcp/tcp.cc with
tcp/tcp.h and tcp/tcp.cc respectively.
3. Make NS2.
4. Install SACK-TS (See "Purpose of SACK-TS section" below).
Make sure you need to ("make clean" and "make") again here.
5. Make sure your environment variables (PATH, LD_LIBRARY_PATH,
and TCL_LIBRARY pathes are correct).
6. Go to script directory and run "./one_protocol" script.
This will run CUBIC protocol and saves html results (plots
and some statistics) under ns_result/intra_protocol directory.
--------------------------------------------------------------
Purpose of SACK-TS:
1. Reduce timeouts in TCP/SACK by recovering the retransmitted
packets using the Time-Stamp option.
2. Speed up simulation using a fast implementation of scoreboard
--------------------------------------------------------------
To extend NS2.26 to run SACK-TS, you need to do the following:
1. Copy all files under sack-ts-code directory into
ns-allinone-2.26/ns-2.26/tcp directory.
2. add the following lines to the list of object files, "OBJ_CC",
in file ns-allinone-2.26/ns-2.26/Makefile
tcp/SackList.o tcp/intDList.o tcp/hashtable.o\
tcp/tcp-sack-ts.o tcp/scoreboard-ts.o\
3. Make NS ("make clean", and then "make")
4. In your script, use the following line to create a connection
$ns create-connection TCP/SackTS $n1 TCPSink/Sack1/DelAck $n2 $class
----------------------------------------------------------
|
Errors appear when make ns2 like following :
Quote:
tcp/tcp-reno.cc: In member function ‘virtual int RenoTcpAgent::window()’:
tcp/tcp-reno.cc:50: error: ‘frto_’ was not declared in this scope
tcp/tcp-reno.cc:53: error: ‘force_wnd’ was not declared in this scope
tcp/tcp-reno.cc: In member function ‘virtual void RenoTcpAgent::recv(Packet*, Handler*)’:
tcp/tcp-reno.cc:104: error: ‘recv_frto_helper’ was not declared in this scope
tcp/tcp-reno.cc:107: error: ‘CWND_ACTION_EXITED’ was not declared in this scope
tcp/tcp-reno.cc:120: error: ‘exitFastRetrans_’ was not declared in this scope
tcp/tcp-reno.cc:122: error: ‘exitFastRetrans_’ was not declared in this scope
tcp/tcp-reno.cc:142: error: ‘aggressive_maxburst_’ was not declared in this scope
tcp/tcp-reno.cc: In member function ‘virtual void RenoTcpAgent::dupack_action()’:
tcp/tcp-reno.cc:176: error: ‘bugfix_ss_’ was not declared in this scope
make: *** [tcp/tcp-reno.o] Error 1
|
how could I shoot these problems and correctly install the ns2 with BIC and CUBIC? I'm new of both linux and ns2 , looking urgently for help! thanks !
|