[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