For research purposes, I am trying to change the backoff function in my router from binary backoff to exponential increase, and exponential decrease (EIED) backoff. Unfortunately, I couldn't find the backoff function inside the driver. I can change the minimum contention windows, but I cannot find the backoff function, which probably should be a one-time shifting of the minimum contention windows size in the driver files.
I have a Netgear WAX220 running OpenWrt 23.05.0 with MT7615 Driver.
Am I searching in the wrong files? Is this implemented in any part of the OpenWrt firmware?
Could you provide assistance or guidance on this matter?
Thanks for your response.
I found the function inside the Linux-version/net/mac80211/rc80211_minstrel_ht.c
,specifically in the function named "minstrel_calc_retransmit". The relevant line appears to be cw = min((cw << 1) | 1, mp->cw_max);
However, I am not sure if it is the correct one since I didn't expect to find it in the rate control file. But I checked almost all the files which have anything with the word cw_min, and this is the only relevant one. If you have any further insights or suggestions, I would greatly appreciate your guidance.
Unfortunately, I haven't been able to find an answer to my question yet. I've looked through the mac80211 subsystem and the driver, but I couldn't find the specific function for the Backoff algorithm. It seems like the backoff algorithm management is handled in the Wi-Fi chip firmware, and, unfortunately, we don't have access to it. Any insights or suggestions would be greatly appreciated!