I'd like to implement TCP Jersey in Manet environment https://web.njit.edu/anl/download.html, but not sure how to add droptail code to NS2 because naturally, a router is not exist in Manet. any help will be appreciated.
TCP NJ : drop-tail.cc, drop-tail.h are here https://web.njit.edu/anl/download.html
Some of the files are old. I did my tests with ns-2.29 → ns-allinone-2.29.3.tar.gz
Added to tcl/lib/ns-default.tcl
, line 104 - 111 some Queue/DropTail (random) values ... (I guess you know some better settings) :
# Added for TCP NJ ====================
Queue/DropTail set curq_ 20
Queue/DropTail set ave_ 5
Queue/DropTail set q_weight_ 2
Queue/DropTail set dropped_ 0
Queue/DropTail set arrived_ 10
Queue/DropTail set idle_pktsize_ 1
# =====================================
The example sample.tcl
: $ ns sample-NR.tcl NJ 0.001
: OK.
TCP westwood files : http://c3lab.poliba.it/Westwood:NS2
My files: TCP-jersey-westwood_ns229.tar.gz https://drive.google.com/file/d/0B7S255p3kFXNSDR0c0Z3bGVNenM/view?usp=sharing
The simulation examples : TCP-jersey-westwood_examples.tar.gz https://drive.google.com/file/d/0B7S255p3kFXNV0hlOEpuTGVYeWM/view?usp=sharing
EDIT: A patch for ns-2.35 was created → TCP-jersey-westwood_ns235.patch https://drive.google.com/file/d/0B7S255p3kFXNSDhIT3FDNE85SEk/view?usp=sharing
cd ns-allinone-2.35/
patch -p0 < TCP-jersey-westwood_ns235.patch
./install
It's a little tricky, two old files require g++-3.4.6 : When ./install
stops: cd ns-2.35/
... edit the Makefile to CPP = g++34
and run make
for a little while. Edit the Makefile back to CPP = g++
, and finish make
. I.e. g++34 cannot compile the last files.
g++34
is available for the most OS: Fedora, CentOS, Debian, Ubuntu, etc. Please ask for a link if e.g. Ubuntu.