Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Consider an asynchronous network with n nodes. Let the nodes’ names be in the in

ID: 3589783 • Letter: C

Question

Consider an asynchronous network with n nodes. Let the nodes’ names be in the interval [1, n]. Let these two properties above be common knowledge. There is given a routing table at each node. (a) Propose a distributed algorithm to verify if the routing tables at nodes guarantee correct routing. The algorithm is required to terminate explicitly, that is, every node is to eventually enter a halting state while knowing whether the routing mechanism is correct or not. (b) Estimate the number of messages sent in the course of an execution, as a function of n.
Consider an asynchronous network with n nodes. Let the nodes’ names be in the interval [1, n]. Let these two properties above be common knowledge. There is given a routing table at each node. (a) Propose a distributed algorithm to verify if the routing tables at nodes guarantee correct routing. The algorithm is required to terminate explicitly, that is, every node is to eventually enter a halting state while knowing whether the routing mechanism is correct or not. (b) Estimate the number of messages sent in the course of an execution, as a function of n.
Consider an asynchronous network with n nodes. Let the nodes’ names be in the interval [1, n]. Let these two properties above be common knowledge. There is given a routing table at each node. (a) Propose a distributed algorithm to verify if the routing tables at nodes guarantee correct routing. The algorithm is required to terminate explicitly, that is, every node is to eventually enter a halting state while knowing whether the routing mechanism is correct or not. (b) Estimate the number of messages sent in the course of an execution, as a function of n.

Explanation / Answer

IP packets delivery depends upon two facors

1.Forwarding:forwarding to the next node towards destination

2.Routing:finding the next node to forward

Routing Protocols are used to exchange the information about the topology and updating the routing table with the choice of best paths to reach destination from source.

The best route can be choosen to be

1.Loop free:Loops occur because of inconsistent routing tables

2.Satisfying desired path characteristics.

Ensuring correct routes can bedone by following the below two strategies

1.Use same or identical path selection algorithm: by sharing minimum topology information ,use shortest path routing algorithm.Used for Intra domain routing

2.Use seperate algorithm for path selection:share full path information and use path vector protocol.Used for inter domain routing.

Algorithms are classified into

1.Distance vector

2.Link-state

3.Path vector

1.Distance Vector algorithm: Determines Which way and how far is the destination from source ,interms of hopcount.

vectors of destination and distance are sent to all the nodes.

Distributed BellmanFord algorithm is used for path selection

2.Link state algorithm:Description of links between nodes is expressed in the form of map,Djikshta algorithm is used for finding shortest path,

3.Path vector:Routes are described as full paths.

BellmanFord algorithm

1.Define distance at each node

dx(y) =cost of least cost path from x to y

2.Update distances based on neighbours

dx(y)=min{c(x,y)+dv(y)} over allneighbours v.

Distance vector algorithm

Iterative and asynchronous,each link is updated by local link cost change and distance vector update message from neighbour

Distributed,as each node notifies neighbours when the distance vector changes,neighbours then notify their neighbours

c(x,y)=cost of direct link from x to y

dx(y)=least cost from x to y

Node x maintains each nodes distance vectors dv   of all neighbours

Each node periodically sends dv to its neighbours,and neighbours update their distance vectors