Presentation is loading. Please wait.

Presentation is loading. Please wait.

Carlos Rodrigo Aponte OLSRv2 High Level Overview.

Similar presentations


Presentation on theme: "Carlos Rodrigo Aponte OLSRv2 High Level Overview."— Presentation transcript:

1 Carlos Rodrigo Aponte OLSRv2 High Level Overview

2 Overview of OLSR OLSR is a link-state proactive routing protocol with four basic parts: Neighbor Discovery A node estimates its local topology. By local topology, we mean 1- and 2-hop topology Selector of Topology Information to Disseminate Not all links are needed to form shortest paths Advertising a subset of all links reduces total overhead Topology Dissemination Once the link information to be advertised is determined, it must be disseminated over the network Route Calculation Once the link advertisements are received, paths can be computed.

3 Overview of OLSR OLSR is a link-state proactive routing protocol with four basic parts: Neighbor Discovery A node estimates its local topology. By local topology, we mean 1- and 2-hop topology Selector of Topology Information to Disseminate Not all links are needed to form shortest paths Advertising a subset of all links reduces total overhead Topology Dissemination Once the link information to be advertised is determined, it must be disseminated over the network Route Calculation Once the link advertisements are received, paths can be computed.

4 Neighborhood Discovery In OLSR, Hello messages are used to estimate the local topology Two tasks Estimation the one-hop neighbors One-hop neighbors are those with bidirectional links Local dissemination of the one-hop topology to estimate the two-hop topology

5 Task 1: Estimating one-hop neighbors S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 From the point of view of nodes S and 1 Initially, neither of the nodes know about the topology

6 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 Node S broadcasts a HELLO message. Task 1: Estimating one-hop neighbors (cont)

7 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 Node 1 receives the HELLO message and learns: It can hear S Thus a unidirectional link is discovered by 1 Task 1: Estimating one-hop neighbors (cont)

8 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 Node 8 broadcasts a HELLO message. Task 1: Estimating one-hop neighbors (cont) Source: 8 Dest: Broadcast Info: 8 has heard S

9 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 Node S receives the HELLO message, and learns: It was heard by 8 It can hear 8 Thus node S discovers a bidirectional link to 8 Node 1 receives the HELLO message and learns: It can hear 8 Thus a unidirectional link is discovered by 1 Task 1: Estimating one-hop neighbors (cont) Source: 8 Dest: Broadcast Info: 8 has heard S

10 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 Node 1 broadcasts a HELLO message. Task 1: Estimating one-hop neighbors (cont) Source: 1 Dest: Broadcast Info: 1 has heard S and 8

11 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 1 Node S receives the HELLO message, and learns: It was heard by 1 It can hear 1 Thus node S discovers a bidirectional link to 1 Node 8 receives the HELLO message and learns: It was heard by 1 It can hear 1 Thus node 8 discovers a bidirectional link to 1 Task 1: Estimating one-hop neighbors (cont) Source: 1 Dest: Broadcast Info: 1 has heard S and 8

12 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 1 Node 18 broadcasts a HELLO message. Task 1: Estimating one-hop neighbors (cont) Source: 18 Dest: Broadcast Info: 18 has heard 1 and 8

13 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 1 Node 1 receives the HELLO message, and learns: It was heard by 18 It can hear 18 Thus node 1 discovers a bidirectional link to 18 Node 8 receives the HELLO message and learns: It was heard by 18 It can hear 18 Thus node 8 discovers a bidirectional link to 18 Task 1: Estimating one-hop neighbors (cont) Source: 18 Dest: Broadcast Info: 18 has heard 1 and 8

14 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 1 After a while, nodes 1 and S discover their entire 1-hop topology Task 1: Estimating one-hop neighbors (cont)

15 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 11 Node 1 broadcasts a HELLO message, including information about its neighbors. Task 2: Estimating 2-hop Topology Source: 1 Dest: Broadcast Info: Neighbors: S,8,18,19

16 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 11 Node S receives the HELLO message, and learns: All 1-hop neighbors of node 1 Part of its 2-hop topology Task 2: Estimating 2-hop Topology (cont) Source: 1 Dest: Broadcast Info: Neighbors: S,8,18,19

17 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 11 Node S broadcasts a HELLO message, including information about its neighbors. Task 2: Estimating 2-hop Topology (cont) Source: S Dest: Broadcast Info: Neighbors: 1,2,3,4,5,6,7,8

18 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 1 11 Node 1 receives the HELLO message, and learns: All 1-hop neighbors of node S Part of its 2-hop topology 11 Task 2: Estimating 2-hop Topology (cont) Source: S Dest: Broadcast Info: Neighbors: 1,2,3,4,5,6,7,8

19 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 Eventually, nodes 1 and S will discover their entire 2-hop neighborhood Task 2: Estimating 2-hop Topology (cont)

20 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Detecting bidirectional links

21 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Node 1 received HELLO message from S #RCVD_HELLO=1 #RCVD_HELLO<U =>unheardNode Source: S Dest: Broadcast Info: Detecting bidirectional links

22 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Source: 1 Dest: Broadcast Info: Node S received HELLO message from 1 #RCVD_HELLO=1 #RCVD_HELLO<U =>unheardNode Detecting bidirectional links

23 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Source: S Dest: Broadcast Info: Node 1 received HELLO message from S #RCVD_HELLO=2 #RCVD_HELLO<U =>unheardNode Detecting bidirectional links

24 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Source: 1 Dest: Broadcast Info: Node S received HELLO message from 1 #RCVD_HELLO=2 #RCVD_HELLO<U =>unheardNode Detecting bidirectional links

25 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Node 1 received HELLO message from S #RCVD_HELLO= #RCVD_HELLO<U =>unheardNode 3 3 Node S received HELLO message from 1 #RCVD_HELLO= #RCVD_HELLO<U =>unheardNode 3 3 Source: S Dest: Broadcast Info: 4 4 Source: 1 Dest: Broadcast Info: 4 4 5 5 5 5 6 6 6 6 7 7 7 7 U-1 Detecting bidirectional links

26 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Source: S Dest: Broadcast Info: Node 1 received HELLO message from S #RCVD_HELLO= #RCVD_HELLO=U =>AsymmetricLink U U Detecting bidirectional links

27 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Source: 1 Dest: Broadcast Info: AsymmetricLink with S Node S received HELLO message from 1 #RCVD_HELLO= #RCVD_HELLO=U =>SymmetricLink U U Detecting bidirectional links

28 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “symmetric”, a node has to receive U HELLOs from the neighbor. In OLSR, U=1. Source: S Dest: Broadcast Info: SymmetricLink with 1 Node 1 received HELLO message from S #RCVD_HELLO= #RCVD_HELLO>U =>SymmetricLink U+1 Detecting bidirectional links

29 S 8 2 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “lost”, a node has to lose D HELLOs from the neighbor. In OLSR, D=3. 1 Node 1 received HELLO message from S #RCVD_HELLO= #RCVD_HELLO=U =>SymmetricLink U U Detecting bidirectional links

30 S 8 2 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 In order to consider a link “lost”, a node has to lose D HELLOs from the neighbor. In OLSR, D=3. Node 1 detected lost HELLO messages from S #LOST_HELLO= #LOST_HELLO<D =>SymmetricLink 0 0 1 Source: S Dest: Broadcast Info: SymmetricLink with 1 1 1 2 2 3 3 4 4 5 5 … … D-1 D D Node 1 detected lost HELLO messages from S #LOST_HELLO= #LOST_HELLO=D =>LostLink Detecting bidirectional links

31 Event Counting (Generalization of RFC) When link is down Parameters: U, D When link is up U D Hello arrival CkCk 01020304050607080 0 0.5 1 Hellos Transmission Probability 01020304050607080 0 1 2 3 4 Hellos Number of Sequential Success/Failures OLSR v1: U=1 D=3. Generalized by UMD

32 Exponential Moving Average w/ Hysteresis (RFC) When link is down Q k+1 =  Q k + (1-  ) 1 {Received Hello k} Q k >T Up  link is up When link is up Q k+1 =  Q k + (1-  ) 1 {Received Hello k} Q k >T Down  link is down Parameters: , T up, T down

33 Cumulative Sum (CumSum) Link Detection Perr Up Perr Down T Hello received When link is down S k+1 = max(0, S k - 1 {Missed Hello} + P Up ) S k >T  link is up When link is up S k+1 = max(0, S k +1 {Missed Hello} - P Down ) S k > T  link is down Parameters: P up, P down, T

34 Overview of OLSR OLSR is a link-state proactive routing protocol with four basic parts: Neighbor Discovery A node estimates its local topology. By local topology, we mean 1- and 2-hop topology Selector of Topology Information to Disseminate Not all links are needed to form shortest paths Advertising a subset of all links reduces total overhead Topology Dissemination Once the link information to be advertised is determined, it must be disseminated over the network Route Calculation Once the link advertisements are received, paths can be computed. OLSR merges selector of Topology Information to Disseminate with Topology Dissemination. But in CBR, these are two different components

35 Topology Dissemination In order to limit control traffic, only a subset of nodes (Multi-Point Relays: MPRs) forwards control packets Two tasks Determine the set of MPRs MPR Selection Objective: determine a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message Flood TC messages over the reduced graph

36 Topology Dissemination In order to limit control traffic, only a subset of nodes (Multi-Point Relays: MPRs) forwards control packets Two tasks Determine the set of MPRs MPR Selection Objective: determine a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message Flood TC messages over the reduced graph

37 Why use MPRs? In traditional flooding, each node relays the messages. This approach typically results in each node receiving the message many times (i.e, it wastes bandwidth/ creates excess overhead) Retransmission node

38 Why use MPRs? By carefully selecting which nodes forward messages, the overhead can be reduced. This is the objective of MPR-based flooding (note there are many other ways to accomplish this goal ) In traditional flooding, each node relays the messages. This approach typically results in each node receiving the message many times (i.e, it wastes bandwidth/ creates excess overhead) Retransmission node

39 Topology Dissemination In order to limit control traffic, only a subset of nodes (Multi-Point Relays: MPRs) forwards control packets Two tasks Determine the set of MPRs MPR Selection Objective: determine a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message Flood TC messages over the reduced graph

40 Topology Dissemination In order to limit control traffic, only a subset of nodes (Multi-Point Relays: MPRs) forwards control packets Two tasks Determine the set of MPRs MPR Selection Objective: determine a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message Flood TC messages over the reduced graph

41 Task 1:MPR selection algorithm : example S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

42 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3

43 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

44 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

45 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

46 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

47 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

48 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

49 S 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1. Determine all 2-hop neighbors which are only reachable through just one 1-hop neighbor 2. Select those 1-hop neighbors as MPRs 3. Determine C = reachable 2- hop nodes through the current set of MPRs. 4. Let U = 2-hop neighbors which are not reachable through the MPRs. 5. If U= , then done Else Add the 1-hop node that has the highest number of neighbors in U to the set of MPRs Go to step 3 From the perspective of node S Task 1:MPR selection algorithm: example (cont) MPR Selection Objective: each nodes determines a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message

50 Local Topology Information is Required to Make Routes MPRs advertise links to MPR selectors 0 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 1 is a MPR for 0 Legend: 01 Original Graph 0 8 12 3 4 6 7 16 12 11 19 18 17 14 15 10 9 13 5 If only MPR  MPR Selectors are used, then 7 could not reach 16 in one hop.

51 Overview of OLSR OLSR is a link-state proactive routing protocol with four basic parts: Neighbor Discovery A node estimates its local topology. By local topology, we mean 1- and 2-hop topology Selector of Topology Information to Disseminate Not all links are needed to form shortest paths Advertising a subset of all links reduces total overhead Topology Dissemination Once the link information to be advertised is determined, it must be disseminated over the network Route Calculation Once the link advertisements are received, paths can be computed. OLSR merges selector of Topology Information to Disseminate with Topology Dissemination. But in CBR, these are two different components

52 Selection of Topology Information to Disseminate SD C A H F E G B Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D AS,HB,C,DSS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G HELLO MessageTC Message

53 Are Paths Composed of Advertised Links the Shortest Paths? Yes, they are. Suppose that D is N hops from S But, S is not aware of a N-hop path to D. However, S is aware of N-1-hops paths to some of D’s neighbors, C 1, C 2, … This means that there are neighbors of C’s, denoted by B1, B2, … that are N-2 hops from the C1, C2, … Since S can’t reach D in N hops, but can reach C 1, C 2, … in N-1 hops, the links from C 1, C 2, … to D are not advertised Thus, C 1, C 2, … are not MPRs of D This is cannot happen, one of the C i must be a MPR for D. Otherwise, how will the two-hop neighbors (B 1, B 2, … ) be covered? Therefore, if there are shortest paths to all nodes N-2 and N-1 hops away, then there are shortest paths to nodes N hops away. Clearly, there are shortest paths to nodes 1 hop away and to nodes 2 hops away (the set of MPRs guarantee this). So there are shortest paths to nodes 3 hops away, and therefore, there are shortest paths to node 4 hops away, …. D C1 S B1 C2 B2 N-2 N-1 Length >N

54 Topology Dissemination In order to limit control traffic, only a subset of nodes (Multi-Point Relays: MPRs) forwards control packets Two tasks Determine the set of MPRs MPR Selection Objective: determine a minimal set of neighbors such that if each neighbor relays the message then each node in the two-hop neighborhood receives the message Flood TC messages over the reduced graph

55 Task 2: Topology Dissemination SD C A H F E G B Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information RFC and INRIAs approach

56 Task 2: Topology Dissemination Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information RFC and INRIAs approach SD C A H F E G B Node S Broadcasts a TC Message

57 Task 2: Topology Dissemination Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information RFC and INRIAs approach SD C A H F E G B Only nodes that have not previously received the message will update the Information Base

58 Task 2: Topology Dissemination Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information RFC and INRIAs approach Only nodes that have not previously received the message and that have the transmitter as an MPR Selector, will forward the message Nodes that have S as an MPR Selector SD C A H F E G B

59 Task 2: Topology Dissemination Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information OLSR-D and Qualnets approach SD C A H F E G B Node S Broadcasts a TC Message

60 Task 2: Topology Dissemination Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information OLSR-D and Qualnets approach SD C A H F E G B Only nodes that have not previously processed the message will update the information base

61 Task 2: Topology Dissemination Originator Node 1-hop Neighbors 2-hop Neighbors MPRs MPR Selectors Links Advertised by TC Message SA,B,C,DE,F,G,HA,CA,B,C,D ACS,G,ESS,H BS,GA,C,DS  No TC message generated CS,E,F,GA,B,DSS,E,F,G Topology dissemination = deciding which nodes relay the topology information OLSR-D and Qualnets approach Only nodes that have not already forwarded the message and that have the transmitter as an MPR Selector, will forward the message SD C A H F E G B Nodes that have S as an MPR Selector

62 Comparison of Flooding Techniques 62 021 4 53 6 7 8 9 Sample Topology

63 Comparison of Flooding Techniques 63 021 4 53 6 7 8 9 MPRs 4 is the only MPR for 0 (0 had degree 5, but only one MPR!) 6 and 9 are MPRs for 4 1 is the MPR for 3 (2 is an MPR for 5)

64 RFC/INRIA Method 64 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator

65 RFC/INRIA Method 65 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 have received the TC message

66 RFC/INRIA Method 66 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 have received the TC message 4 is a MPR for 0

67 RFC/INRIA Method 67 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 have received the TC message 4 is a MPR for 0 6, 7, 8, and 9 have received the TC message

68 RFC/INRIA Method 68 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 have received the TC message 4 is a MPR for 0 6, 7, 8, and 9 have received the TC message 6 and 9 are MPRs for 4

69 RFC/INRIA Method 69 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 have received the TC message 4 is a MPR for 0 6, 7, 8, and 9 have received the TC message 6 and 9 are MPRs for 4 All nodes have received the TC message

70 RFC/INRIA Method 70 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 have received the TC message 4 is a MPR for 0 6, 7, 8, and 9 have received the TC message 6 and 9 are MPRs for 4 All nodes have received the TC message Note, while 3 is a MPR for 6, it has already received the TC message, and does not forward it

71 OLSRd/Qualnet Method 71 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator

72 OLSRd/Qualnet Method 72 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0

73 OLSRd/Qualnet Method 73 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0 4 is the MPR or 0

74 OLSRd/Qualnet Method 74 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0 4 is the MPR or 0 6, 7, 8, and 9 received the TC message from 6

75 OLSRd/Qualnet Method 75 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0 4 is the MPR or 0 6, 7, 8, and 9 received the TC message from 6 6 and 9 are MPRs of 4

76 OLSRd/Qualnet Method 76 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0 4 is the MPR or 0 6, 7, 8, and 9 received the TC message from 6 6 and 9 are MPRs of 4 All nodes have received the TC message

77 OLSRd/Qualnet Method 77 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0 4 is the MPR or 0 6, 7, 8, and 9 received the TC message from 6 6 and 9 are MPRs of 4 All nodes have received the TC message 3 is a MPR for 6 (5 is a MPR for 9)

78 OLSRd/Qualnet Method 78 021 4 53 6 7 8 9 Originator of TC message Received TC message Relayed TC message 0 is the originator 1, 2, 3, 4, and 5 received TC message from 0 4 is the MPR or 0 6, 7, 8, and 9 received the TC message from 6 6 and 9 are MPRs of 4 All nodes have received the TC message 3 is a MPR for 6 (5 is a MPR for 9) 1 is a MPR for 3 (2 is a MPR for 5) What is the difference between MPR- based flooding and full flooding?!

79 Hazy-Sighted Topology Dissemination Note: hazy sighted dissemination does not work. But the idea is as follows Idea: Topology information from far away links is not important for making local forwarding decisions When forwarding a packet, one only needs to move the packet in the right direction. This does not require detailed topology information Idea (which turns out to be incorrect) potential next-hop The potential next hop is a next hop for any destination in this region pkt This node does not need to travel very far in order to exit the “next-hop region” This node must travel further in order to exit the “next-hop region” More up-to-date information is required to reach destinations that are close than to reach destinations that are far. Conclusion, topology information should not be flooded over the entire region. This seems like such a good idea that many military systems are using this approach

80 Hazy-Sighted Topology Dissemination Set TTL for the number of hops that a topology control (TC) message will travel. Adjust the TTL for each TC message so that the TTL  2 k every 2 k periods TTL  1 every period TTL  2 every 2 periods (i.e., periods 2, 4, 6, …) TTL  4 every 4 periods (i.e., period 4, 8, 12, 16, …) TTL  8 every 8 periods (i.e., period 8, 16, 24, 32, …) TTL  16 every 16 periods (i.e., period 16, 32, …) The time between TC messages from a distance k is 2 ceil(log2(k)) Topology information 7 hops away will be received every 2 ceil(log2(7)) = 2 ceil(2.8) = 2 3 = 8 periods This approach could potentially reduce the overhead, especially for large topologies Note that each TC message is forwarded by most nodes. For large networks, topology dissemination can consume much of the available bandwidth periodTTL 11 22 31 44 51 62 71 88 91 102 111 124 131 142 151 16

81 Problems with Hazy-Sighted The basic idea has the critical flaw in that the path to a destination does not only depend on the location of the destination, but also depends on the other nodes in the network. Thus, a path can be impacted not only by the destination moving, but by nodes between the source and destination moving I guess this is obvious A correct model considers all links potential next-hop pkt This node does not need to travel very far in order to exit the “next-hop region” This node must travel further in order to exit the “next-hop region”

82 Change in topology that causes neighbor to stop being a next-hop Duration that the originator is unaware of the topology change and forwards the pkt to a node that is no longer a suitable next hop. T(k L ) = average duration The fraction of the number line covered by the PS region is approximately the rate of topology changes  the average duration, T (another approximation is exp(-rate*T) ) Performance of Hazy-Sighted Dissemination

83 Let be the rate that a link breaks (or form). Let NL(k L,k D ) be the number of links k L away given the destination is k D hops away Why does the number of links k L away depend on k D ? Suppose that a destination is very far away, like 100 hops. Then, NL(90,100)>1 (otherwise, the dest can’t be 100 hops away). So, given a destination is k D hops away, the rate that any link breaks k L hops away is NL(k L, k D ). Here we assume that is independent of k L and k D Let F(k L,k D ) be the probility of PS when the break is at k L and the destinations is k D hops away NL(k L,k D )F(k L,k D ) is the rate of PS events from links k L away, given that the destination is k D away Summing over all values of k L Expected value over all distances to destinations

84 Path Stretch Calculation In the hazy-sighted case, T(k L ) = T hs  2 ceil(log2(kL)) In regular case, T(k L ) = T o By adjusting T HS and T o we can make the path stretch the same for both cases so

85 Overhead

86 Overhead Ratio Conclusion: In order to keep path stretch the same as with regular flooding, hazy- sighted results in higher overhead. One must focus on the intermediate nodes, not just the destination.

87 Overview of OLSR OLSR is a link-state proactive routing protocol with four basic parts: Neighbor Discovery A node estimates its local topology. By local topology, we mean 1- and 2-hop topology Selector of Topology Information to Disseminate Not all links are needed to form shortest paths Advertising a subset of all links reduces total overhead Topology Dissemination Once the link information to be advertised is determined, it must be disseminated over the network Route Calculation Once the link advertisements are received, paths can be computed.

88 Update Topology Set Check all “advertised addresses” that came in the message. These addresses are from the nodes that selected the “originator node” as an MPR.

89 Update Topology Set (cont) Check all Topology Tuples in the Information Bases and verify if it exists an entry with the information just received.

90 Update Topology Set (cont) If no information is stored in the Data Bases, create a new tuple. Existing or new tuple has to update its sequence number and holding time.

91 Removing Topology Tuples To remove a Topology Tuple on of two things must occur: The timer (tuple holding time) has to expire. A TC message has to explicitly remove a tuple. (i.e. notify that a link is broken)


Download ppt "Carlos Rodrigo Aponte OLSRv2 High Level Overview."

Similar presentations


Ads by Google