[Olsr-users] MPR Selection problem

Henning Rogge (spam-protected)
Fri Oct 24 10:33:56 CEST 2014


On Fri, Oct 24, 2014 at 9:27 AM, Scoobi Doo <(spam-protected)> wrote:
> configuration: No ETX, equal Willingness=3 to all nodes, version 0.6.6.2

Don't expect support for "no etx". Its fundamentally broken for all
radio networks.

> When i run this scenario with ETX enabled i get good results (MPR selected
> and correct routes)
>
> I've tried to look into the code of the mpr selection in mpr.c and i made
> the following change:
> in the function olsr_calculate_two_hop_neighbors (line 311), i added a reset
> to the counters in the end of the main loop:
>     a_neighbor->neighbor_2_nocov = n_count;
>
>     /* Add the two hop count */
>     sum += count;
>
>   }
>   OLSR_FOR_ALL_NBR_ENTRIES_END(a_neighbor);
>
> change to:
>     a_neighbor->neighbor_2_nocov = n_count;
>
>     /* Add the two hop count */
>     sum += count;
> n_count = 0;
> count = 0;
>
>   }
>   OLSR_FOR_ALL_NBR_ENTRIES_END(a_neighbor);
>
>
> This change seems to fix the MPR problem in this scenario, my question
> (finally..) is: What does this function should return (# of strict 2-hop
> nbrs??)? Is this a bug or am i wrong?

I don't know and I wont spend time with the no-etx codepath...

in fact I think that even the ETX-MPR code is slightly broken (and
cannot be easily fixed because of missing data in the data-bases),
that is why we normally switch it of by applying a high "mpr
redundancy" value.

if you want to work on MPR code that WILL be used in the future, look
into the OLSRv2 code. I (and Jonathan Kirchhoff) would be happy to
hear feedback about the MPR plugin.

Henning Rogge




More information about the Olsr-users mailing list