You are on page 1of 15

An Abstract Model of Routing in Mobile Ad Hoc Networks

Cong Yuan, Jonathan Billington, Joern Freiheit

Computer Systems Engineering Centre University of South Australia


1

Mobile Ad-hoc Networks (MANETs)


Autonomous and infrastructure-less Multi-hop routing Dynamically changing network topologies Variation in link and node capabilities Energy constrained operation

I am leavin g

I am almost out of power, I will sleep

I am coming

CPN05

Problem statement and Motivation


Routing: Discovery of routes from source to destination. Routing protocols used in traditional wired networks cannot be directly applied to MANETs. Most current routing protocols designed for MANETs have mainly been evaluated by simulation and live testing. Formal verification firstly requires the creation of a formal model of the system. The main purpose of our work is to provide the first CPN model of the basic functions of the DestinationSequenced Distance-Vector (DSDV) routing protocol, which is the first step towards formal specification and verification of routing protocols in MANETs.

CPN05

DSDV routing protocol


1. Routing table structure:
Destination Nexthop Metric Seq. Nr

2. Route advertisements:
Periodic: Full Dump Event-triggered: Incremental Update The route entry with the higher sequence number is chosen; If the sequence numbers of two route entries are the same, the one with the smaller metric is chosen.
4

3. Updating the routing table:

CPN05

DSDV (Update Tables)


A
Initial state: Dest. Next Metric Seq A A 0 A-0 Dest. Next Metric Seq B B 0 B-0 Dest. Next Metric Seq. C C 0 C-0

B broadcasts a full dump, A receives and updates its routing table based on this information, so does C; (B, 0, B-0) (B, 0, B-0)

A
Dest. Next Metric Seq A A 0 A-2 B B 1 B-0

C
Dest. Next Metric Seq. B B 1 B-0 C C 0 C-2

Dest. Next Metric Seq B B 0 B-0

A broadcasts a incremental update, no nodes receive; C broadcasts a incremental update, B receive it: (A, 0, A-2) (B, 1, B-0) (A, 0, A-2) (B, 1, B-0) (B, 1, B-0) (C, 0, C-2) (B, 1, B-0) (C, 0, C-2)

C
Dest. Next Metric Seq. B B 1 B-0 C C 0 C-2

B
Dest. Next Metric Seq B B 0 B-2 C C 1 C-2

Dest. Next Metric Seq A A 0 A-2 B B 1 B-0

CPN05

DSDV (Broken Links)


A
Dest. Next Metric Seq A A 0 A-2 B B 1 B-0

A assigns the metric of this link to and increases the sequence number of this link by 1; Then it increases its own sequence number by 2 and immediately broadcasts an incremental update
(A, 0, A-4) (B, , B-1) (A, 0, A-4) (B, , B-1)

A
Dest. Next Metric Seq A A 0 A-4 B B B-1

CPN05

CPN model of a MANET


The intent of our CPN model is to show that CPN can be used for the modelling of routing protocols in a MANET environment where arbitrary changes of network topology are possible. We start by modelling the basic operation of the routing protocol: Nodes discover other nodes by receiving broadcast messages and update their routing tables accordingly; Nodes discover that previously established links are no longer valid, and mark them as broken in their routing tables.

CPN05

CPN model of a MANET

We do not model the routing messages explicitly.


We just consider events where the information from the message is received and processed. We assume that this cannot occur simultaneously in different nodes, instead these events are interleaved in the different nodes. Because of arbitrary movements of the nodes, there is no synchronisation between nodes for a broadcast. Thus updating of a routing table is considered as an arbitrary event. Because a functional model abstracts from time, we consider that a broken link can be interleaved with any other event and thus modelled by an arbitrary event. This could correspond to the node leaving the MANET and other nodes becoming dispersed so that they are all out of range. We believe this captures the asymmetry between nodes and their arbitrary movement realistically at a high-level of abstraction. Because the functional model abstracts from the probabilities, it includes many situations that would be considered rare events.

CPN05

CPN model of a MANET


1`(1,[(1,1,hops 0,(1,0))]) ++ 1`(2,[(2,2,hops 0,(2,0))])++ 1`(3, [(3,3,hops 0,(3,0))])

1`snode++1`rnode

Nodes
MNode 1`UpdateNode(rnode, snode) + +1`snode 1`node

Update Table

1`BrokenLink(node,i)

Broken Links
[neighbour(node,i)]

CPN05

if Update Table occurs, rnode must have been within the transmission range of snode. If it does not occur, then eitheroccurs, an incremental update is After it the update are not sent by snode or when snode broadcasts the be broadcast, which may or may not update by the nodes in MANET. If no received rnode was out of its transmission range. node receives, modelled by Update Table not occur with snode bound to node. If a node receives, modelled by Update Table occurring with the node binding to rnode, 9 node bound to snode.

Discussion: Errors
Although the model looks simple, it not only allows for arbitrary changes in topology but also relaxes the assumption that nodes have the same transmission ranges. This allow us to model MANETs in which the nodes are heterogeneous. Our simulation results show that the CPN model captures the highly dynamic topology of such a network. Further, although the model is abstract, it has sufficient detail for us to find errors in DSDV procedures using simulation A node wrongly updates its own route entry, replacing its metric of zero with infinity and directing packets destined for itself to another node. A node with a broken link entry for another node does not reestablish the link with that node, even though it has received a broadcast from that node.

CPN05

10

Simulation experiment - errors


1
Dest. Next Metric Seq 1 1 0 (1,0)

2
Dest. Next Metric Seq 2 2 0 (2,4) 3 3 (3,1)

3
Dest. Next Metric Seq. 1 1 (1,1) 3 3 0 (3,4)

Transition UpdateTable occurs, node1 receives the information sent by node 3:


Dest. Next Metric Seq 1 3 (1,3) 3 3 1 (3,4)

Dest. Next Metric Seq 2 2 0 (2,4) 3 3 (3,1)

Dest. Next Metric Seq. 1 1 (1,1) 3 3 0 (3,4)

Transition UpdateTable occurs, node 3 receives the information sent by node 1:


Dest. Next Metric Seq 1 1 0 (1,0) Dest. Next Metric Seq 2 2 0 (2,4) 3 3 (3,1) Dest. Next Metric Seq. 1 1 (1,1) 3 3 0 (3,4)

CPN05

11

Discussion: Modification
To avoid the first kind of error:
a node keeps the route entry to itself unchanged when updating its routing table.

To avoid the second kind of error:


Assume a node receives routing information from another node. If it already has a route entry to this sender, it will update this route entry regardless of the value of the sequence number, because the route information it just received is more recent.
CPN05

12

Conclusions
We provide the first CPN model of the DSDV routing procedures and discover two errors in these procedures. This provide the first analysis of the key component of DSDV, the use of sequence numbers to discard old information. We suggest modifications to the DSDV procedures for updating routing table. These modification are implemented in a revised CPN model and our simulations have shown that they have been effective in eliminating these errors in the scenarios run so far.
CPN05
13

Future work
To analyse the model using state spaces. To enhance the model in two ways by including:
the install time parameter; nodes powering down and rejoining the MANET.

CPN05

14

Thank you & Questions?

15

You might also like