DESTINATION SEQUENCED DISTANCE VECTOR (DSDV)
Destination-Sequenced
Distance-Vector Routing (DSDV) is a table-driven routing scheme for ad hoc mobile networks
based on the Bellman–Ford algorithm. It was developed by C. Perkins and
P.Bhagwat in 1994. The main contribution of the algorithm was to solve the routing loop problem.
DSDV
Routing Table:
Every node will maintain a table listing all the other nodes it
has known either directly or through some neighbors. Every node has a single
entry in the routing table. The entry will have information about the node’s IPaddress, last known sequence number and the hop count to reach that node. Along
with these details the table also keeps track of the nexthop neighbor to reach
the destination node, the timestamp of the last update received for that node.
The DSDV
update message consists of three fields, Destination Address, Sequence Number
and Hop Count.
Each node
uses 2 mechanisms to send out the DSDV updates. They are,
- Periodic Updates
Periodic
updates are sent out after every m_periodicUpdateInterval(default:15s). In this
update the node broadcasts out its entire routing table.
- Trigger Updates
Trigger
Updates are small updates in-between the periodic updates. These updates are
sent out whenever a node receives a DSDV packet that caused a change in its
routing table. The original paper did not clearly mention when for what change
in the table should a DSDV update be sent out. The current implemntation sends
out an update irrespective of the change in the routing table.
The
updates are accepted based on the metric for a particular node. The first
factor determinig the acceptance of an update is the sequence number. It has to
accept the update if the sequence number of the update message is higher
irrespective of the metric. If the update with same sequence number is
received, then the update with least metric (hopCount) is given precedence.
In highly
mobile scenarios, there is a high chance of route fluctuations, thus we have
the concept of weighted settling time where an update with change in metric
will not be advertised to neighbors. The node waits for the settling time to
make sure that it did not receive the update from its old neighbor before
sending out that update.
No comments:
Post a Comment