Re: [B.A.T.M.A.N.] OGM overhead and routing metric proposal

Daniele Furlan
2011-03-01T09:42:39Z

2011/3/1 Andrew Lunn <andrew@lunn.ch>:
>> But I'm actually also a little confused why you, Andrew, came up
>> with the hidden node problem :) (which these papers did not try to
>> solve, if I'm not missing something). Or do you mean, that this
>> idea could be extended maybe be able to solve that hidden node
>> problem for OGMs, using the bitrate measuremens to detect / avoid
>> switching to bad links?
Actually I did not mentioned the hidden node problem in the report.
But the idea of extending the information contained in OGM can help
also in implementing some technique to solve this problem. Maybe the
bit-rate is not enough, but from the driver I think can be also
obtained, for example, tx-retries and tx-failed.
>
> Hi Linus
>
> If we can extend minstrel so that it also takes transmit power and
> load into consideration, we might be able to optimize the coding rate
> & TX power for complete mesh bandwidth, not a single link bandwidth.
>
> I would expect there are a number of research papers looking at this,
> and many ideas which can be taken from cellular networks. I also think
> the commercial mesh products do this.
>
> However, for Daniele idea of putting the coding rate into the OGM, we
> probably need the achievable coding rate, not the current coding rate.
> It could be the link is idle, so is using the lowest coding rate and
> minimum TX power, just to carrier a few ARP reply packets etc. If
> however the link becomes loaded, it would increase the coding rate and
> TX power so allowing more packets through.
>
> Daniele's idea is good, but i'm just being careful it does not block
> ideas like dynamic coding rate/TX power control.
>
>      Andrew
>
The idea I have for the moment is only to increase the information
that OGM can carry. Than in a second phase it is possible to use these
information to implement whatever solution.

Another important improvement that a solution with the entire path
registered in OGM is the possibility of preventing routing loops in a
simple way, and also to provide a formal proof that batman is
loop-free.