Wednesday, 28 August 2013

Problems in Distance Vector Routing | Distance Vector Routing

Problems in Distance Vector Routing:-
A. Two-Node Loop Instability
B. Three- Node Instability

       The main problem with DVR is instability, which means the network using this protocol will become unstable.
According to the figure:-
       At the beginning both nodes A and B know how to reach node X.
       Suddenly, link between A and X fails, and node a changes its table.
       If A can send its table to B immediately, everything is fine.
       Otherwise, if B sends its routing table to A before receiving A’s routing table, the system becomes unstable.
       Node A receives the update, assuming that B has found a way to reach X, and immediately updates the table.
       Based on triggering update strategy, A send its new update to B.
       Now, B thinks, something has changed around A and updates its routing table.
       Node  A thinks that route to X is through B and B thinks that route to X is through A.
        In this way, the cost of reaching X gradually increases until it  reaches infinity.
       Lastly,  both A and B  get to know that X cannot be reached, and the system becomes unstable.

Solution to Two-node Loop Instability:-
1.Defining Infinity
2.  Split Horizon 
3.  Split Horizon and Poison Reverse


Defining Infinity
       The first obvious solution is to minimize or redefine infinity to a smaller number.
       The infinity should be –
Max (size of the network in each direction) + 1 , if the distance between each hop is considered as 1.
        Generally, in most implementations of distance vector routing  protocol infinity is defined as 16.
        So, the size of the network in each direction should be 15.
       From  here , we can conclude DVR protocol cannot be used in large networks.

Split Horizon
       When node B gets A’s table and thinks that optimum route to reach  X is through A, it does not need to advertise this information to A;  as the information has come from  A only.
       Node A keeps the value of the distance to X  as infinity.
       Later, when node A sends its routing table to B, node B also corrects its routing table.
       As a result, the system becomes stable after the first update, i.e. both A and B knows that X is not reachable.

Split Horizon and Poison Reverse
There is problem with split horizon-
       Distance Vector uses timer and if there are no news about a route , the node deletes the route from its table.
       In our scenario, when node B eliminates the route to X from its advertisement to X,  node A cannot guess that this is due to split horizon or because B has not received any news about X recently.
        So to avoid this problem Split Horizon, is combined with another strategy called Poison Reverse.
Node B can still advertise the value  for X , but if the source of information is A, it can replace the distance with infinity as a warning:
“Do not use this value, what I know about this route comes from you.”

B. Three - Node Instability
       Two node instability is removed by spilt horizon combined with poison reverse.
       But, if the instability is between three nodes, stability cannot be guaranteed.

 


9 comments: