Search Linux Wireless

Re: [PATCH 07/55] staging: wfx: ensure that retry policy always fallbacks to MCS0 / 1Mbps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 16 December 2019 19:08:39 CET Felix Fietkau wrote:
> On 2019-12-16 18:03, Jérôme Pouiller wrote:
> > From: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx>
> >
> > When not using HT mode, minstrel always includes 1Mbps as fallback rate.
> > But, when using HT mode, this fallback is not included. Yet, it seems
> > that it could save some frames. So, this patch add it unconditionally.
> >
> > Signed-off-by: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx>
> Are you sure that's a good idea? Sometimes a little packet loss can be
> preferable over a larger amount of airtime wasted through using really
> low rates. Especially when you consider bufferbloat.

Hello Felix,

I have observed that, in some circumstances, TCP throughput was far 
better with 802.11g than with 802.11n. I found that 802.11n had more Tx 
failures. These failures have big impacts on the congestion window. When 
the congestion window is low, it impacts the capacity of aggregation of 
the link. Thus, it does not help to improve the congestion windows.

By investigating deeper, it appears that the minstrel (used by 802.11g)
always add rate 1Mbps to the rate list while minstrel_ht (used by
802.11n) don't (compare minstrel_update_rates() and
minstrel_ht_update_rates()). This difference seems to be correlated to
the difference of TCP throughput I can observe.

I did some search in git history and I did not find any explanation for 
this difference between minstrel and minstrel_ht (however, it seems you 
are the right person to ask :) ). I didn't find why it would be
efficient on minstrel and inefficient on minstrel_ht. And since this
change fix the issue that I observed, I have tried to apply it and wait
for feedback.

-- 
Jérôme Pouiller





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux