Homework 2
Due Oct 29, 2007, in class.
Homework should be an individual effort.
In the exercise you will use ns2 to evaluate performance of ad hoc network
routing protocols, in particular, AODV and DSR. Similar performance evaluations
have been reported in literature. Please read the following two papers to have
an idea. You should read the papers at least to the extent to learn the
methodology and simulation environment. You will be using a very similar
environment (actually just a later version of the same environment used in these
papers).
- Josh Broch, David A. Maltz, David B. Johnson, Yih-Chun Hu, and Jorjeta
Jetcheva, "A
Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing
Protocols", in Proceedings of the Fourth Annual ACM/IEEE
International Conference on Mobile Computing and Networking (MobiCom 1998),
pp. 85-97, ACM, Dallas, TX, October 1998.
-
The homework is fashioned after this
exercise by Nitin Vaidya. Please read this carefully. You will use the same
scripts. Note that minor changes in scripts are needed as the ns2 locations
(location on minix is /usr/local/src/nsintall/ns-allinone-2.30/ns-2.30) are
hardcoded in the scripts. We have verified that the scripts work fine on minix.
You should follow the scripts to get an idea what they are doing so that you are
able to modify these scripts or write similar ones as needed. Section 16 of the ns2
manual describes the mobile ad hoc networking support in ns2.
Our handin instructions are somewhat more elaborate. Follow the instructions
below.
Handin Instructions
You will need to write a brief report that addresses the following.
- Write briefly about what you understand by the random node movement files
(generated by setdest command in the make-scenario.sh script file) and
traffic pattern files (generated by ns cbrgen.tcl command in the make-traffic.sh
file) and their usage in this assignment.
- Plot the two performance metrics packet delivery ratio and routing
load as indicated versus pause time and traffic loads. The
papers should give you an idea about how to organize the plots (single
figures should contain multiple related curves so that they are
compared easily). This should be done based on average statistics with
multiple runs with different random number seeds. Seeds can be changed
- Write your own interpretation about the plots. This should contain things
like: Is one protocol better than the other in some circumstances? Why? Does
the performance improve/deteriorate in some circumstances? Why? Is there any
peculiar behavior that you didn't expect? Are your observations
similar to the papers? Where are they different?
- Based on your understanding of the protocols, think of any scenario (i.e.,
mobility and traffic) where AODV should have a much better packet delivery
ratio than DSR and vice versa. Create these scenarios using setdest and
cbrgen. Hacking these tools is acceptable, if needs be. Your scenarios
should use at least 25 nodes. Describe what you did and what you observed.
- Since the mobility and choice of traffic parameters are random (convince
yourself that they are), one can generate a different movement file or
traffic pattern file with the same statistical characteristics, but
different actual behavior. You can do this simply by running make-scenario.sh
again, for example. Do the performance metrics you plotted in 2 above vary
significantly if you simply choose a different, randomly generated scenario
file? To study this carefully, choose just one pause time and traffic load
and run the ns2 simulations for at least 5 different randomly generated
scenarios. Study just one performance metric, say pause time. Do they vary
much across these runs? How much is the standard deviation relative to the
average?