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). 

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. 

  1. 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.
  2. 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 
  3. 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?
  4. 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.
  5. 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?