ns-2 Scripts
The scripts required to run the experiments described here are available by downloading scripts-ns2.1b7a.tar.gz
for ns vesions 2.1b7a and higher, and scripts.tar.gz
for prior versions. If you gunzip and untar the file you should get
the following directories and files:
- ./CSFQ/util - this contains a series of utility used by
scripts run_* (see below) to post-process trace data. These are:
- parse_bwidth.c - compute the average bandwidth over a user
defined interval
- op_col.c - change the specified column of a file by
adding/subtracting/multiplying a constant.
- max_2ndcol.c - compute the maximum between two columns of a file
and write the result in another file
- Makefile - creates the executable for the above files.
- ./CSFQ/{my_links.tcl,my_sources.tcl} - these files
implement generic methods for building various links and traffic
sources.
- ./CSFQ/Simple3Link - this directory contains all
files required to run Experiment 1:
- Simple3Links.tcp.tcl - set up the TCP experiment
- Simpl3Links.udp.tcl - set up the UDP experiment
- Simpl3Links.tcp.g, Simpl3Links.udp.g - gnuplot files
which create figures showing the flows' throughputs along
each congested link.
- run-Simpl3Links - script which run the entire
experiments.
By running "run-Simpl3Links" you should obtain a series of
.dat files and four postscript figures, one for each
combination between link 1 and link 2 on one hand and the
experiment type (e.g., UDP or TCP) on the other hand. Also as
the output you should obtain average throughputs similar to
the ones found in Table 4.
- ./CSFQ/SharedLink - this directory contains all
files required to run Experiment 2:
- SharedLink.tcl - set up all experiments
-
SharedLink-alludp.g,SharedLink-onetcp.g,SharedLink-oneudp.g
- gnuplot files which creates Figures 3.a, 3.b and 4,
respectively.
- run-SharedLink - script which run the
entire experiments.
By running "run-SharedLink" you should obtain three postscript
files:
SharedLink-alludp.ps
(Figure 3.a),
SharedLink-oneudp.ps
(Figure 3.b) and
SharedLink-onetcp.ps
(Figure 4).
Warning: This experiment may take up
to several hours depending on the platform!
- ./CSFQ/SerialLinks - this directory contains all
files required to run Experiment 3:
- SerialLinks.tcl - set up all experiments
- SerialLinks-udp.g,SerialLinks-tcp.g -
gnuplot files which creates Figures 6.a, 6.b.
- run-SerialLinks - script which run the entire experiments.
By running "run-SerialLinks" you should obtain two postscript
files:
SerialLinks-udp.ps
SerialLinks-tcp.ps
(Figure 6.a) and SerialLinks-tcp.ps (Figure 6.b).
- ./CSFQ/TcpUdp - this directory contains all
files required to run Experiment 4:
- TcpUdp.tcl - set up the experiment
- TcpUdp-TCP-csfq.g, TcpUdp-Sack-csfq.g,
TcpUdp-Reno-csfq.g, TcpUdp-Newreno-csfq.g - gnuplot files
which create figures showing the flows' throughputs along
each congested link.
- run-TcpUdp - script which run the entire
experiments.
By running "run-TcpUdp" you should obtain a series of .dat
files and four postscript figures, one for each TCP type. Also
as the output you should obtain average throughputs for each case.
Note: The run_* files are written to work when the current
directory is the ns-2 directory. Otherwise the variable "ns_dir" in
each of these files should be changed accordingly.
Ion Stoica
Last modified: Sat Jan 15 15:45:08 EST 2000