misc/172955: [ath] 11n does not work in adhoc mode

Adrian Chadd adrian at freebsd.org
Tue Oct 23 21:52:44 UTC 2012


On 23 October 2012 14:29, Chuck Burns <break19 at gmail.com> wrote:

> I could be mistaken, but I was under the impression that adhoc only
> supported B or G speeds, and that if you wanted N speeds, you have to use
> STA rather than ADHOC.

I don't see why that is.

> I've heard this discussion outside of relation to FreeBSD, so I know it's a
> well-discussed issue.  I also think I remember reading something about
> certain chipsets supporting 11n in ADHOC mode, but only when connecting to
> other chipsets. I think it was MAYBE an atheros chipset, but I don't really
> remember -exactly- what I read, or where it was...

I doubt there's a problem with it in the specification. I am guessing
that ADDBA/DELBA will go between adhoc nodes as per normal. But I've
not read the spec to see how it should work.

In any case I don't see why we can't do 11n rates (with no
aggregation.) The fundamental problem here are:

* that we're not at all parsing the HT fields in the IBSS beacons;
* the default channel lookup doesn't seem to find ht20/ht40 channels;
only 11a/11bg. I had to manually configure one end to be 6:ht/40 for
it to come up; then it advertised HT fine.

> Here is a linux ath9k forum post regarding it:
> http://comments.gmane.org/gmane.linux.drivers.ath9k.devel/2660 Seems to
> indicate that 11n in ADHOC isn't supported there either.. Sooo....

That thread just says "it doesn't work, no reason why it shouldn't."

All the basic code is there. What we're missing is the glue that
parses the WMM, HTINFO and HTCAP fields, then uses that when
configuring up the rate control to the new node.

I just haven't sat down and figured out how the IBSS node "learning"
works. It discovers neighbors via hearing beacons BUT it doesn't use
the normal path for setting things up. The STA side does it via
association responses rather than beacons. It updates the
WMM/HTINFO/HTCAP fields during beacon RX, but it actually uses the
probe response to configure things.



Adrian


More information about the freebsd-wireless mailing list