I'm not a kernel guru but i find out that the new
core mac80211 and
cfg80211 (
http://linuxwireless.org/) offers the possibility to obtain
a per-station bit-rate information that should be driver independent.
O.K. I will take a look at this.
I have not mentioned the hidden node problem. But I
think this problem
is very difficult to remove, the only best practice to reduce the
problem is to force the RTS/CTS mechanism to be active.
RTS/CTS helps, true. But it has a few problems. e.g. most meshing
protocols use broadcast packets for there management. e.g. BATMANs
OGMs are broadcast. These cannot be protected with RTS/CTS. So the
OGMs can collide with RTS packets from a hidden node, or OGMs from a
hidden node.
Another way to help reduce the hidden node problem, or interference
with other nodes, is to use a low coding rate and transmit power when
possible. So for example when we don't have much traffic to send to
node X, it could send the packets with the lowest coding rate and low
power. This keeps the interference with other nodes to a minimum. As
the amount of data for X increases, the coding rate and transmit power
can be increased, so increasing the available bandwidth to X, but at
the same time increasing the amount of interference the traffic
produces.
Such a scheme to minimize interference does not play too well with
your idea of putting the coding rate into the OGMs. We would have to
ensure that the coding rate is the highest possible coding rate usable
between two peers, not the currently used coding rate, which could be
low in order to avoid interference.
Will you be at
the WBMv4 next Month?
I'm afraid but I cannot be at WMBv4, I hope I can come to the next
WBM, maybe with a working implementation :)
Shame, i plan to talk more about the hidden node problem during WBMv4.
It is also a good place to discuss new ideas like adding information
into the OGMs.
Andrew