UMOLSR routing protocol in NS 2 695430044 Outline

  • Slides: 22
Download presentation
UM-OLSR routing protocol in NS 2 郭祐暢 695430044

UM-OLSR routing protocol in NS 2 郭祐暢 695430044

Outline n n n Brief overview of OLSR MPR selection algorithm UM-OLSR install Example

Outline n n n Brief overview of OLSR MPR selection algorithm UM-OLSR install Example UM-OLSR code

Classification proactive Ad Hoc Routing Protocols reactive Source-Initiated On demand Table driven DSDV OLSR

Classification proactive Ad Hoc Routing Protocols reactive Source-Initiated On demand Table driven DSDV OLSR TBRPF CGSR AODV DSR LMR TORA ABR SSR

Optimized Link State Routing Protocol Proactive & Table-driven n Link State Routing n v

Optimized Link State Routing Protocol Proactive & Table-driven n Link State Routing n v Each node expands a spanning tree v Each node can obtain the whole network topology n Utilizes a technique to reduce message flooding v Multi. Point Relaying (MPR)

Optimized Link State Routing Protocol Each node periodically floods status of its links n

Optimized Link State Routing Protocol Each node periodically floods status of its links n Each node re-broadcasts link state information received from its neighbors n Each node keeps track of link state information received from other nodes n Each node uses above information to determine next hope to each destination n 24 retransmissions to diffuse a message up to 3 hops Retransmission node

Optimized Link State Routing Protocol Only selected neighbors (Multi. Point Relays, MPRs) retransmit messages

Optimized Link State Routing Protocol Only selected neighbors (Multi. Point Relays, MPRs) retransmit messages n Select MPRs such that they cover all 2 hop neighbors n 2 -hop neighbors taken from neighbors' HELLO messages n 11 retransmission to diffuse a message up to 3 hops Retransmission node - MPR

Optimized Link State Routing Protocol n Three main modules v Neighbor/link sensing Ø Provide

Optimized Link State Routing Protocol n Three main modules v Neighbor/link sensing Ø Provide topology information up to two hops Ø MPR selector information notification (“A select B as A’s MPR” in HELLO message to B) v Optimized flooding/forwarding Ø MPR set to cover all the two hop neighbors Ø MPR selector set: set of nodes that select me as one of their MPR set Ø OLSR-Messages from MPR selector set are to be forwarded v Link-State messaging and route calculation Ø Topology table Ø Route table

MPR selection Each node select a set of MPR Selectors n Who can be

MPR selection Each node select a set of MPR Selectors n Who can be a MPR Selectors of node N ? n Y N v one-hop neighbors of N n MPR set of Node N (Rules) X v Set of MPR’s is able to transmit to all two-hop neighbors v Link between node and it’s MPR is bidirectional. M D Z A B

Multipoint Relays (MPR) n Every node keeps a table of routes to all known

Multipoint Relays (MPR) n Every node keeps a table of routes to all known destination through its MPR nodes n Every node periodically broadcasts list of its MPR Selectors (instead of the whole list of neighbors). n Upon receipt of MPR information each node recalculates and updates routes to each known destination

MPR selection algorithm Each point u has to select its set of MPR. n

MPR selection algorithm Each point u has to select its set of MPR. n Goal : n Select in the 1 -neighborhood of u (N 1(u)) a set of nodes as small as possible which covers the whole 2 -neighborhood of u(N 2(u)). v Step 1: Select nodes of N 1(u) which cover isolated points of N 2(u). v Step 2: Select among the nodes of N 1(u) not selected at the first step, the node which covers the highest number of points of N 2(u) and go on till every points of N 2(u) are covered.

MPR selection algorithm u n First step: Select nodes in N 1(u) which cover

MPR selection algorithm u n First step: Select nodes in N 1(u) which cover “isolated points” of N 2(u).

MPR selection algorithm u n Second step : Consider in N 1(u) only points

MPR selection algorithm u n Second step : Consider in N 1(u) only points which are not already selected at the first step NPR 1(u) and points in N 2(u) which are not covered by the NPR 1(u). While there exists points in N 2(u) not covered by the selected MPR, select in N 2(u), the node which covers the highest number of non-covered nodes in N 2(u).

MPR selection algorithm u n Final:MPRs

MPR selection algorithm u n Final:MPRs

Installation n Download UM-OLSR 0. 8. 8 from http: //masimum. dif. um. es/? Software:

Installation n Download UM-OLSR 0. 8. 8 from http: //masimum. dif. um. es/? Software: UM-OLSR n Ns 2. 27、2. 28、2. 29 / UM-OLSR 0. 8. 7、0. 8. 8 n Copy um-olsr-0. 8. 8. tgz to ns-allinone-2. 29/ns-2. 29/ n $ cd ns-allinone-2. 29/ns-2. 29/ $ tar zxvf um-olsr-0. 8. 8. tgz $ ln -s. /um-olsr-0. 8. 8. /olsr $ patch -p 1 < olsr/um-olsr_ns-2. 29_v 0. 8. 8. patch $. /configure $ make

Example n Download olsr_example. tcl from http: //masimum. dif. um. es/um-olsr/olsr_example. tcl

Example n Download olsr_example. tcl from http: //masimum. dif. um. es/um-olsr/olsr_example. tcl

OLSR n Hello message one hop for v Two hop topology information v MPRs

OLSR n Hello message one hop for v Two hop topology information v MPRs n Transmit two hop topology information v By MPRs v TC message n Complete Topology Information v Shortest Path Tree calculation (Dijkstra) v Routing table build

TC message n TC – Topology control message: v Sent periodically. Message might not

TC message n TC – Topology control message: v Sent periodically. Message might not be sent if there are no updates and sent earlier if there are updates v Contains: Ø MPR Selector Table Ø Sequence number n Each node maintains a Topology Table based on TC messages v Routing Tables are calculated based on Topology tables

Topology Table Destination address MPR Selector in the received TC message Destination’s MPR Selector

Topology Table Destination address MPR Selector in the received TC message Destination’s MPR Selector sequence number Last-hop node to the destination. Originator of TC message Holding time

TC message n Upon receipt of TC message: v If there exist some entry

TC message n Upon receipt of TC message: v If there exist some entry to the same destination with higher Sequence Number, the TC message is ignored v If there exist some entry to the same destination with lower Sequence Number, the topology entry is removed and the new one is recorded v If the entry is the same as in TC message, the holding time of this entry is refreshed

Routing Table Each node maintains a routing table to all known destinations in the

Routing Table Each node maintains a routing table to all known destinations in the network n Routing table is calculated from Topological Table, taking the connected pairs n Routing table: n v Destination address v Next Hop address v Distance n Routing Table is recalculated after every change in neighborhood table or in topological table

UM-OLSR File List (Header) n OLSR. h l header file for OLSR agent and

UM-OLSR File List (Header) n OLSR. h l header file for OLSR agent and related classes n OLSR_pkt. h l contains all declarations of OLSR packets and messages n OLSR_printer. h l includes all printing functions related to OLSR n OLSR_repositories. h l defined all data structures needed by an OLSR node n OLSR_rtable. h l header file for routing table's related stuff n OLSR_state. h l declares and defines internal state of an OLSR node

UM-OLSR File List n OLSR. cc l Implementation of OLSR agent and related classes

UM-OLSR File List n OLSR. cc l Implementation of OLSR agent and related classes n OLSR_printer. cc l Printing functions used for debugging and tracing are implemented in this file n OLSR_rtable. cc l Implementation of our routing table n OLSR_state. cc l Implementation of all functions needed for manipulating the internal state of an OLSR node