|
Mobile and Wireless Computing 2009 - Lab Exercise 1
With reference to Labsheet-3,
you are required to implement a simplified version of Perkins'
Destination-Sequenced Distance-Vector (DSDV) routing protocol
using the cnet simulator.
To make the task easier
we shall introduce a number of simplifications:
- Each node shall be uniquely identified by its own value of
nodeinfo.nodenumber.
We will treat this integer value as each node's unique network
address (no need for MAC addresses).
- Nodes will generate simple messages for other nodes,
and wait for an acknowledgment before generating and transmitting
their next message (a simple stop-and-wait protocol).
As messages and acknowledgments may be lost,
a retransmission schema will be required.
- We will assume that the number of nodes is constant -
no nodes join or leave the simulation.
Each node can access the variable NNODES to determine
the total number of nodes (0..NNODES-1).
- Each node shall maintain its own routing-table,
an array of structures (one per potential destination node,
indexed by the destination's node number),
each structure consisting of three integer fields:
node number used to reach the destination (first hop),
the number of hops to the destination,
and the destination's sequence number (as described in Perkins' paper).
- Each node shall periodically broadcast a
full copy of its routing-table to its neighbours.
We will not broadcast incremental updates.
- If a node does not hear any transmission from one of its neighbours,
the node should assume that its neighbour has
moved out of range - and we'll update the hop count from 1 to INFINITY.
Each node can determine its "current" time by accessing the
variable nodeinfo.time_in_usec
The DSDV protocol that you are asked to develop, above,
has a number of characteristics that define and constrain its execution.
These include:
- The area of, and number of nodes in, the map (node density).
- The walking speed of each node.
- The time that each node pauses at its destinations.
- The frequency of broadcasting full routing-table updates.
By varying each of these four parameters over reasonable ranges,
and running many simulations,
plot each varying characteristic against
the average message delivery time
(you may like to use Microsoft Excel or gnuplot to help you
plot the performance).
The fine print
- The deadline for this exercise is
12noon Friday 11th September (end of the mid-semester teaching break).
The exercise contributes 20% of your assessment in
Mobile and Wireless Computing this year.
- You may choose to work alone, or in a team of two (only).
- You should use the web-based submission program,
cssubmit,
to submit:
- A file named README clearly stating the names and
student numbers of students in your team.
Only one team member needs submit a copy of the materials for marking.
- your commented C source files and cnet topology files.
- plotted results (ideally PDF or Postscript files)
demonstrating the characteristics of your DSDV protocol.
Please post any requests for clarification about the requirements of
the exercise to
help7219,
so that all students may remain equally informed.
Good luck,
|