a framework for reliable routing in mobile ad hoc networks

Post on 11-Jan-2016

31 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

A Framework for Reliable Routing in Mobile Ad Hoc Networks. Zhenqiang Ye Srikanth V. Krishnamurthy Satish K. Tripathi. Reliable Routing. Routing for nodes communications Nodes are vulnerable to failure Battery drain Compromise One solution - multipath routing Edge-disjoint path - PowerPoint PPT Presentation

TRANSCRIPT

A Framework for Reliable Routing in Mobile Ad Hoc

Networks

Zhenqiang Ye Srikanth V. Krishnamurthy

Satish K. Tripathi

Reliable Routing Routing for nodes communications Nodes are vulnerable to failure

Battery drain Compromise

One solution - multipath routing Edge-disjoint path Node-disjoint path

Outline AODV AODVM A Framework For Reliable Routing

Ad Hoc Distance Vector Routing Protocol (AODV) Source node floods RREQ message - if

needs a route to a destination Sends back RREP back to the source

along the path by: Destination, or Intermediate node that knows a route to the

destination Intermediate node re-broadcast the

RREQ only if It does not know a route to the dest., and It has not forwarded this RREQ

AODV (2) Once a link fails, a RERR is sent to

the src by the node that detects the link failure

Problem: some Possible node-disjoint paths to the dest may not be traced during query.

Reason: discarding duplicate RREQ

RREQ propagation in AODV

AODV-Multipath (AODVM) An intermediate node keeps a

RREQ table Source Destination Neighbor who transmitted the RREQ Hops to source Expiration timer

AODVM – Destination Node When dest. Receives the 1st RREQ

Update its sequence number Generate an RREP which contains an

additional field – ‘last_hop_ID’ Send back RREP along the same

path but in the reverse direction. Same for duplicate copies of RREQ

AODVM - Intermediate Node When an intermediate node receives an

RREP Delete the entry of this neighbor from RREQ table Add a routing entry to its routing table Forward the RREP to a neighbor

which is in its RREQ table whose path to the source is the shortest

Delete the entry of this neighbor from RREQ table Other nodes delete the entry of this node

from their RREQ tables

AODVM - Intermediate Node (2)

Sends back a RDER to its neighbor when its RREQ table is empty ( cannot forward a RREP)

The node who receives a RDER will try to forward RREP to another neighbor

AODVM – RRCM by Source Source will send a RRCM in the first da

ta packet sent on the corresponding route

An RRCM contains information of the route Hop count First hop relay Last hop realy

AODVM – Loop Prevention Sequence numbers: seq(i, j) - Node i’s latest sequence number known to node j When source node initiates an RREQ, it

increases seq(src, src) and seq(dst, src) by 1. RREQ contains these two numbers denoted

by seq(src, RREQ) and seq(dst, RREQ). Destination will compute a new seq number

when receives a RREQ: seq(dst, dst) = MAX{ seq(dst, RREQ), seq(dst, dst) } + 1 Destination generates an RREQ that contains

seq(dst, RREP) = seq(dst, dst)

AODVM – 2 Lemmas Using AODVM, if a route is found ,

there is no loop in this route. Using AODVM, if two routes are

discovered, these two routes are node-disjoint.

AODVM – 2 Observations The number of node-disjoint paths from a

source to a destination is dependent on the node density in the ad hoc network.

As the distance between a source and its destination is increased, one could find no more than a very limited number of paths between them, even at moderate node densities (average node degree is 6.7). Reason: sparse regions in the network act as

bottlenecks.

Reliable Path Reliable node

Power capable Secure (e.g. in a tank) Expensive to be deployed

Reliable segment the number of node-disjoint paths that can be

found between the end nodes of the segment is at least equal in number to k, or,

the segment entirety consists of reliable nodes. Reliable path - consists of reliable segments

Reliable Path

Objective Identify positions for the R-nodes

such that the probability of the existence of a reliable path (given a value of k) between any two given nodes is high.

Achieved by modified min-cut algorithm

Min-cut Problem Let G(V,E) be an undirected weighted

graph which is connected. A cut in G is a partition of the vertices V into two nonempty sets S and ~S.

The value of a cut is the sum of the weights of the edges crossing the cut.

The min-cut is the cut(s) with the minimum cut value of all the possible cuts.

Contraction Algorithm randomly choose an edge (x, y) in G and

replace vertices x and y by a new vertex z; for each v that is not in {x, y}, the weight of

the new edge (v, z) is the sum of the weights of edge (v, x) and edge (v, y); the rest of the graph remains unchanged.

The contraction procedure is repeated until there are only two nodes and one edge left.

The cut value is then the weight of the edge that connects these two nodes.

If repeat the contraction algorithm O(n^2logn) times, the min-cut can be found with a reasonable probability.

Modified Min-cut Algorithm Assume each node can obtain a partial

topology view of the network (within k hops from itself).

Compute the min-cut of the partial graph of each node. Remove the node and the edges incident on

itself from the partial graph Run the min-cut algorithm with modification:

The outermost links are contracted first, and the links that are closest to the node are contracted last.

The Distributed R-node Deployment Strategy Each node periodically broadcasts a HELLO

message to its neighbors within k hops. In a HELLO message of a R-node, a flag

indicates its motion status: Static: position has been determined Dynamic: in the process of determining where to

move Each normal node constructs 2 local

topology graphs: with and without static R-nodes.

The Distributed R-node Deployment Strategy (cont’) the weight of a direct link between two static

reliable nodes is set to k. All the other links have weight of one.

A node periodically calculates it min-cut value and size of min-cut set and sends them out by HELLO.

A R-node moves to the proximity of the normal node that has the minimum min-cut value in its k-hop neighborhood.

If the min-cut values of two nodes are the same, R-node will move to the proximity of the node with a larger min-cut set.

Modifications to AODVM A reliability flag is included in RREP The flag is set to RELIABLE only this RREP

passes through a R-node, otherwise, it is set to NORMAL.

If an intermediate R-node cannot find a next hop R-node to forward this RREP it will split the RREP packet into multiple RREP

packets equal in count to the number of neighbors specified in its RREQ table.

All of these RREP packets are marked NORMAL and then forwarded to the different neighbors.

Thank You!

top related