150 likes | 346 Views
An Abstract Model of Routing in Mobile Ad Hoc Networks. Computer Systems Engineering Centre University of South Australia. Cong Yuan, Jonathan Billington, Joern Freiheit. CPN'05. Mobile Ad-hoc Networks (MANETs). Autonomous and infrastructure-less Multi-hop routing
E N D
An Abstract Model of Routing in Mobile Ad Hoc Networks Computer Systems Engineering Centre University of South Australia Cong Yuan, Jonathan Billington, Joern Freiheit CPN'05
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 leaving I am almost out of power, I will sleep I am coming CPN’05
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 Destination-Sequenced Distance-Vector (DSDV) routing protocol, which is the first step towards formal specification and verification of routing protocols in MANETs. CPN’05
DSDV routing protocol 1. Routing table structure: 2. Route advertisements: • Periodic: Full Dump • Event-triggered: Incremental Update 3. Updating the routing table: • 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. CPN’05
DSDV (Update Tables) A B C Initial state: 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) C A B A broadcasts a incremental update, no nodes receive; C broadcasts a incremental update, B receive it: (B, 1, B-0) (C, 0, C-2) (B, 1, B-0) (C, 0, C-2) (A, 0, A-2) (B, 1, B-0) (A, 0, A-2) (B, 1, B-0) A C B CPN’05
DSDV (Broken Links) 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 B (A, 0, A-4) (B,∞, B-1) (A, 0, A-4) (B,∞, B-1) A CPN’05
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. CPN’05
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. CPN’05
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 Update Table Nodes MNode 1`UpdateNode(rnode, snode) ++1`snode if Update Table occurs, rnode must have been within the transmission range of snode. If it does not occur, then either the update are not sent by snode or when snode broadcasts the update rnode was out of its transmission range. 1`node 1`BrokenLink(node,i) After it occurs, an incremental update is broadcast, which may or may not be received by the nodes in MANET. If no 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, node bound to snode. Broken Links [neighbour(node,i)] CPN’05
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 re-establish the link with that node, even though it has received a broadcast from that node. CPN’05
Simulation experiment - errors 1 2 3 Transition UpdateTable occurs, node1 receives the information sent by node 3: Transition UpdateTable occurs, node 3 receives the information sent by node 1: CPN’05
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. CPN’05
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. CPN’05
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. CPN’05
Thank you &Questions? CPN'05