Re: "Overall" and per-chain signal/noise values (was Re: multi-antenna handling)

Johannes Berg <[email protected]> Tue, 15 Jan 2019 14:19:40 +0100
Newsgroups org.netbsd.radiotap
Message-ID <[email protected]>
On Sun, 2018-12-30 at 13:47 -0800, Guy Harris wrote:
> On Jun 25, 2014, at 11:20 PM, Johannes Berg <[email protected]> wrote:
> 
> > We actually have one per-chain value, and one "overall" value, the
> > latter is what we report in the first radiotap namespace, the per-chain
> > ones in the latter namespaces that only have the signal and antenna
> > value (but obviously we could add anything else that made sense per
> > antenna)
> > 
> > Maybe we shouldn't be reporting the "overall" value? The calculation of
> > that seems to be driver dependent, our (the Intel) driver just takes the
> > max. If ath9k has a more specific calculation then I can see how that's
> > a bit confusing but OTOH it actually reports what much else of the stack
> > used for further work.
> 
> About 4 1/2 years later, the ath9k driver plus the mac80211 code
> appears to provide the "overall" strength plus per-antenna strengths,
> at least as of the 4.17.10 kernel, so I guess it's somewhat of a *de
> facto* standard that there's an "overall" value.

I suppose you could argue that. The per-chain signals are actually
optional for drivers to provide, but the overall signal strength (which,
btw, isn't defined how this is derived from the per-chain signals if at
all) is more or less necessary for proper operation (roaming, ...)

> Given that, this is probably worth documenting - but not requiring, in
> case some adapter+driver combination doesn't supply it.
> 
> Presumably the description would be that:
> 
> 	if you see a signal strength indication, and *don't* see an
> antenna number before the end of the header or a Radiotap Namespace
> field, it's an "overall" value;
> 
> 	otherwise, it's a per-antenna value for the specified antenna.
> 
> Parsers must not assume that there will or won't be an "overall" value
> if there are per-antenna values.
> 
> The "overall" value for a multi-antenna receiver could be described as
> device-dependent, which might suggest that, unless you know the
> device, you shouldn't try to interpret it.

Makes sense. Want to update the github docs?

johannes