Thread (4 messages) 4 messages, 3 authors, 2012-08-24

Re: [B.A.T.M.A.N.] editing the routing information

flat view

From: Dominic Follett-Smith <hidden>
Date: 2012-08-24 12:01:15

Hi Sven, thank you,

I will have a closer look at the code and send some more details over
the weekend. Essentially I understand that neighbor ranking for a
destination node 'D'  is performed on the number of OGM's received in
the sliding window. What I want to do is introduce an extra metric say
X that alters the number of OGM's in the sliding window (a kind of
penalty), then when BATMAN calculates the next best hop for that
destination 'D', this information will reflect that:

For example,  N1: node that wishes to route a packet to destination D
                     D: Destination node
                     N2, N3: Neighbours of N1 and D

[1] at t = 0:
        (N2)
       /      \___
      /              \
(N1)                (D)
     \         ____/
      \       /
       (N3)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[2] at t = t_1: N2 and N3 broadcast their OGM's with some metric about
themselves (X_n) attached. N(1) keeps a list of neighbours, with their
associated metric X_n at any time- it will be used for neighbour
ranking.

               (N2)
 ogm+x_2/      \___
             /              \
       (N1)                (D)
            \         ____/
ogm+x_3\       /
               (N3)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[3] at t = t_2: D Broadcasts its OGM

        (N2)
       /      \_OGM
      /              \
(N1)                (D)
     \      OGM_/
      \       /
       (N3)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[4] at t = t_3: N2 forward D's OGM onto N1

        (N2)
OGM/      \___
      /              \
(N1)                (D)
     \         ____/
      \       /
       (N3)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[5] at t = t_4:

sliding window of neigbour N2 for Destination D is:

|__________10....._|    --> ten sequence numbers have been received
from D over N2 but we penalize this count with x_2, which leaves it at
6

sliding window of neigbour N3 for Destination D is:

|__________8....._|    --> eight sequence numbers have been received
from D over N3 but we penalize this with x_3, which leaves it at 6

at this point the next best hop to route a packet to destination D is N2 or N3

and lastly in this time interval, N3 forward D's OGM onto N1

           (N2)
          /      \___
         /              \
      (N1)                (D)
OGM\         ____/
         \       /
          (N3)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 [6]  at t = t_5:

sliding window of neigbour N2 for Destination D is:

|__________10....._|    --> ten sequence numbers have been received
from D over N2 but we penalize this count with x_2, which leaves it at
6

sliding window of neigbour N3 for Destination D is:

|__________9....._|    --> nine sequence numbers have been received
from D over N3 but we penalize this with x_3, which leaves it at 7

at this point the next best hop to route a packet to destination D is
the link over N3
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Again, thank you for your kind assistance.

Dominic
UCT

On Tue, Aug 21, 2012 at 12:32 AM, Sven Eckelmann [off-list ref] wrote:
On Sunday 19 August 2012 17:13:28 Dominic Follett-Smith wrote:
quoted
I am using the batmand release and I trying to edit where batman keeps
a statistic of next best hops to a destination node.
The development focus of many people changed to batman-adv. Therefore, most
people aren't knowing the code very well (or have to read a while to get into
the code again).
quoted
I want to change
the metric in some way to alter the choices that batman makes when
routing a packet to its destination. However I am rather stuck, and
would appreciate some direction on where the updating of this
statistic of next best hops for a destination is done in the batman
code.
You're request is a little bit too general. Maybe you can go a little bit more
in detail. Otherwise I can only recommend batman(void) in batman.c and
update_orig(...) in originator.c

Kind regards,
        Sven
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help