IBSS support in ath10k - our test results and questions

Janusz Dziedzic janusz.dziedzic at tieto.com
Thu Mar 19 23:44:01 PDT 2015


On 19 March 2015 at 22:40, Ben Greear <greearb at candelatech.com> wrote:
> On 03/19/2015 10:06 AM, Simon Wunderlich wrote:
>> Hi ath10k devs,
>>
>> since there has been quite a bit of progress on IBSS in ath10k, we've been
>> trying to integrate it into our OpenWRT based firmware and test it. Since there
>> seems to be many people interested, I'd like to share our status and also ask
>> for comments and support on current issues:
>>
>>  * Our test was based on Ben Greears firmware v 13, OpenWRT rev 44654 and
>> various patches (see details below at [1])
>>  * We can set up IBSS networks without problems, at least without IBSS/RSN
>> encryption
>>  * AP+IBSS simultaneously works somewhat, but with quirks
>>  * We see low throughput when communicating via IBSS between 2x ath10k or 1x
>> ath9k + 1x ath10k (~30 MiBit/s). With HT we would have expected ~150 MBit/s,
>> with VHT even more.
>
> Do you see this problem with only an IBSS interface?  In other words, is my
> firmware worse at this than stock 999.x firmware in same configuration?
>

This is results I get today morning.
This is for ath9k - HT40

janusz at dell6430:~/work/tools/test$ stdbuf -o 0 ./ibss.py t2-ath9k
t3-ath9k 5745 |grep "TC RESULT"
TC RESULT - t2-ath9k >> t3-ath9k pkt loss: 0%
TC RESULT - t2-ath9k >> t3-ath9k pkt loss: 0%
TC RESULT - parallel ping
TC RESULT - pkt_loss t2-ath9k 0%
TC RESULT - pkt_loss t3-ath9k 0%
TC RESULT - (udp) t3-ath9k >>>> t2-ath9k speed: 245 Mbits/sec
TC RESULT - (tcp) t3-ath9k >>>> t2-ath9k speed: 149 Mbits/sec
TC RESULT - (udp) t2-ath9k >>>> t3-ath9k speed: 246 Mbits/sec
TC RESULT - (tcp) t2-ath9k >>>> t3-ath9k speed: 151 Mbits/sec
TC RESULT - --------dual---------------------------------
TC RESULT - (tcp) - t2-ath9k >>> t3-ath9k: 70.8 Mbits/sec
TC RESULT - (tcp) - t3-ath9k >>> t2-ath9k: 88.3 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT - --------dual---------------------------------
TC RESULT - (tcp) - t2-ath9k >>> t3-ath9k: 21.0 Mbits/sec
TC RESULT - (udp) - t3-ath9k >>> t2-ath9k: 185 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT - --------dual---------------------------------
TC RESULT - (udp) - t2-ath9k >>> t3-ath9k: 183 Mbits/sec
TC RESULT - (tcp) - t3-ath9k >>> t2-ath9k: 21.9 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT - --------dual---------------------------------
TC RESULT - (udp) - t2-ath9k >>> t3-ath9k: 116 Mbits/sec
TC RESULT - (udp) - t3-ath9k >>> t2-ath9k: 122 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT -  ./ibss.py t2-ath9k t3-ath9k 5745 - PASS

And ath10k - VHT80 - firmware 636

janusz at dell6430:~/work/tools/test$ stdbuf -o 0 ./ibss.py t2-ath10k
t3-ath10k 5745 |grep "TC RESULT"
TC RESULT - t2-ath10k >> t3-ath10k pkt loss: 0%
TC RESULT - t2-ath10k >> t3-ath10k pkt loss: 0%
TC RESULT - parallel ping
TC RESULT - pkt_loss t2-ath10k 0%
TC RESULT - pkt_loss t3-ath10k 0%
TC RESULT - (udp) t3-ath10k >>>> t2-ath10k speed: 409 Mbits/sec
TC RESULT - (tcp) t3-ath10k >>>> t2-ath10k speed: 248 Mbits/sec
TC RESULT - (udp) t2-ath10k >>>> t3-ath10k speed: 506 Mbits/sec
TC RESULT - (tcp) t2-ath10k >>>> t3-ath10k speed: 349 Mbits/sec
TC RESULT - --------dual---------------------------------
TC RESULT - (tcp) - t2-ath10k >>> t3-ath10k: 144 Mbits/sec
TC RESULT - (tcp) - t3-ath10k >>> t2-ath10k: 98.8 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT - --------dual---------------------------------
TC RESULT - (tcp) - t2-ath10k >>> t3-ath10k: 28.2 Mbits/sec
TC RESULT - (udp) - t3-ath10k >>> t2-ath10k: 371 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT - --------dual---------------------------------
TC RESULT - (udp) - t2-ath10k >>> t3-ath10k: 307 Mbits/sec
TC RESULT - (tcp) - t3-ath10k >>> t2-ath10k: 18.2 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT - --------dual---------------------------------
TC RESULT - (udp) - t2-ath10k >>> t3-ath10k: 221 Mbits/sec
TC RESULT - (udp) - t3-ath10k >>> t2-ath10k: 216 Mbits/sec
TC RESULT - ---------------------------------------------
TC RESULT -  ./ibss.py t2-ath10k t3-ath10k 5745 - PASS

Regarding IBSS/RSN and 636 firmware, this works sometimes (ath10k
patch required here).
But in case this don't work firmware don't send EAPOL frames - I think
this is main problem ...

BR
Janusz

> Thanks for all the details...  Sounds like you have done more testing on this
> than I have for sure.
>
> In case you have a public kernel tree available somewhere with all your patches,
> that might help speed up someone's attempt to reproduce this?
>
> Thanks,
> Ben
>
>
>>  * We tracked down the reason to be aggregation not working - ath10k never
>> sends ADDBA, and also does not respond to ADDBAs sent by ath9k
>>  * Aggregation works just fine in AP mode in ath10k
>>
>> Therefore, I'd like to know if anyone has experience with Bens firmware and
>> IBSS mode and can point us to existing issues/fixes, or recommend versions to
>> test which are supposed to work. We had to add various VHT patches by hand, so
>> we wonder if anyone had success with that yet, but even the HT performance is
>> far from satisfactory.
>>
>> Note that we also tried firmware 999.999.0.636 firmware and got better
>> performance (70-90 MBit/s), but since it does not properly support AP it's not
>> an option for us.
>>
>> There are also a few other issues (IBSS/RSN not working - ath10k firmware does
>> not seem to support software encryption properly ; IBSS+AP has spurious AP
>> issues with a lot of packetloss), but that would be a topic for another time.
>> Maybe we are just missing the right versions here ... :)
>>
>> Thanks!!
>>     Simon
>>
>>
>>
>> [1] Our components and software versions:
>>  * the devices were ath9k 2x2 (HT40), ath10k 2x2 (VHT80)
>>  * Ben Greears firmware 13 (all variants)
>>  * OpenWrt 44654
>>  * all ath10k patches between f3660a25c4ff15c10c197930b5e039311a25b477
>>    (master-2014-11-04) and v3.19
>>  * patches from git://dmz2.candelatech.com/linux-3.19.dev.y starting with
>>    3.19 and ending at lf-5.3.1 (patches for NFS, PCI, igb, ARM, hwmon,
>>    configs, ath9k, neigh, cifs, aesni, hwsim and vlan were dropped)
>>  * some patches to work around build errors in Ben Greears patches
>>  * a revert of "ath10k: Request OTP to return debug code." because it didn't
>>    work with his firmware on the target platform
>>  * patch "cfg80211: add extensible feature flag attribute"
>>  * patch "cfg80211: add VHT support for IBSS"
>>  * patch "mac80211: IBSS fix scan request"
>>  * Revert "mac80211: notify NSS changed when IBSS and HT"
>>    (required to update to the latest available patch)
>>  * "mac80211: notify NSS changed when IBSS and HT"
>>    (from http://mid.gmane.org/1418806852-558-1-git-send-email-janusz.dziedzic@tieto.com )
>>
>> Most likely not relevant because it is just for the VHT support in IBSS
>> and the problem was already there before adding these patches
>>
>>  * "mac80211: ibss refactor ieee80211_rx_bss_info"
>>  * "mac80211: tdls: disentangle HT supported conditions"
>>  * "mac80211: TDLS: support VHT between peers"
>>  * "mac80211: add VHT support for IBSS"
>>  * a patch to synchronize include/uapi/linux/nl80211.h with the version
>>    shipped by iw from OpenWrt 44654
>>  * a patch in ath10k to enable NL80211_EXT_FEATURE_VHT_IBSS
>>  * a patch to disable SMPS STATIC to get multiple chains HT MCS rates
>>    when communicating with ath9k
>>  * a patch to set a VHT channel when using "ibss join"
>>  * some patches to test things like encryption, trace wmi, ...
>>  * some patches to automatically install the CT community firmware using
>>    OpenWrt
>>
>> _______________________________________________
>> ath10k mailing list
>> ath10k at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/ath10k
>>
>
>
> --
> Ben Greear <greearb at candelatech.com>
> Candela Technologies Inc  http://www.candelatech.com
>
>
> _______________________________________________
> ath10k mailing list
> ath10k at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/ath10k



More information about the ath10k mailing list