I don't think so, better wait for the next one. I tested with my own personalized build. The latest fix was posted 13 hours ago.
OpenWrt SNAPSHOT r20775-165b66d910 seems to work fine.
Is this still correct?
On my router wed is enabled but there is no mtk_ppe folder. However on debug there are two wed folders, wed0 and wed1.
Both containing three files: regidx, regval and txinfo.
Here are my results using 165b66d910 snapshot (today) and enabling wed. The connection is 1Gbit:
Wired:
Wireless: (mac book air m1 client)
CPU was under 30% for wireless, and very low for wired.
What is wed and how can I enable it to test? I use my RT3200 as a dumb AP. Will wed offer me anything?
Can you try the steps below?
UPDATE: I was able to work around the issue I was having by building a custom image here and force updating in LuCI.
As Daniel noted above, they changed the code to allow more than one PPE instance (new mediatek chipsets also offload upload traffic). For the new builds / snapshots of RT3200, checking the hardware offloading paths is done by: cat /sys/kernel/debug/ppe0/bind
. If you see client WLAN MACs here when downloading data you have wed enabled.
- I am running the latest overnight snapshot but not the one you linked because it is for xiaomi and I have belkin.
- I did the file edit you linked and rebooted.
- I enabled software flow offloading and hardware flow offloading in Routing/NAT Offloading of Firewall page
My Belkin is configured to be a dumb AP. Does that matter?
#cat /sys/module/mt7915e/parameters/wed_enable
Y
#cat /sys/kernel/debug/ppe0/bind
#
Yes, as flow-offloading usually only happens in situations where flows are actually being tracked, ie. when using NAT/routing. If you want to use WED on a dump AP, you need to install the bridger
package which does a bit of BPF magic to get bridged streams tracked (and hence offloaded).
Thank you for suggesting this, daniel. Does the bridger
software need configuration or does it just work?
What is BPF_TOOLCHAIN?
I also see that I can't build bridger:
Symbol: PACKAGE_bridger [=n]
Type : tristate
Defined at tmp/.config-package.in:142
Prompt: bridger.................................... Bridge forwarding accelerator
Depends on: HAS_BPF_TOOLCHAIN [=n]
Location:
-> Base system
elects: PACKAGE_librt [=y] && PACKAGE_libnl-tiny [=y] && PACKAGE_kmod-sched-flower [=n] && PACKAGE_libc [=y] && PACKAGE_li
BPF_TOOLCHAIN
needs to be enabled in from-source builds for packages which make use of BPF.
If you don't want to build from source just use the binary packages.
bridger
should work without any configuration out-of-the-box. You can configure interfaces to be excluded from bridge forwarding acceleration, by default all interfaces are enabled.
Oh thank you. I turned that Advanced configuration options (for developers) --->
on and then turn on BPF toolchain (Build LLVM toolchain for eBPF) --->/<X> Build LLVM toolchain for eBPF
. I am having a try now.
My RT3200 "just works". Very happy with it.
I'm only using stable 22.03.0 and 2.4GHz WiFi. I don't need AC or AX speeds.
I setup luci attended upgrade and setup SSH key and login via localhost only (not IP address).
Now I will forget about it until I see there's the next stable release
Great job @daniel and everyone here contributing to the bug finding and improvements.
Such a great community.
I will make another donation to openwrt
My new build worked and I have bridger
package installed and running.
# cat /sys/module/mt7915e/parameters/wed_enable
Y
# cat /sys/kernel/debug/ppe0/bind
#
I also did some speed testing and it is 3x slower now than without bridger and that module tweak and hardware decoding.
Before wireless downloads were 600+ Mbps but now are 200-220 Mbps.
I think hardware decoding is confusing things.
If I uncheck "hardware flow offloading" and also "sofrware flow offloading" but leave the module tweak and bridger still running, speeds jump right back up to 600+ Mbps on the same phone.
So the magic seems to be tweaks to the module and bridger. Nothing to do with software flow + hardware offloading check box in luci.
CPU usage on download test with module tweak + bridger around 5% for around 500-600 MBps
CPU usage on download test with module tweak alone (means bridger is not running) is around 45% for around 500-600 Mbps.
Conclusion for dumb AP: use module tweak and use bridger but do not check software flow offload/hardware offload in firewall tab.
Does it make sence?
Be aware that flow offloading only works on the 5 GHz band on this device -- the sudden drop in bandwidth combined with the fact that no flows actually show in /sys/kernel/debug/ppe0/bind
makes me believe you are most likely connecting on 2.4 GHz band.
I don't have any firewall installed on dump AP boxes, so I'm sure putting flow offloading settings in /etc/config/firewall
isn't needed for bridger
to work.
The 2.4 GHz transmitter is disabled. Only 5 GHz is on.
Please see my posted edited above. Post collision you replied when I edited
When I disabled the firewall hardware offloading I now see entries in
# cat /sys/kernel/debug/ppe0/bind
00322 BND IPv4 5T orig=xxx new=xxx eth-xxx etype=0008 vlan=0,65 ib1=61400028 ib2=007e0060
I edited the output to protect privacy of IP addresses
Been following this recent discussion and got similar results on my RT3200 which is also configured as a dumb AP. Thanks for the discussion @msilletti @daniel
I did noticed that edits to /etc/modules.d/mt7915e
are not saved on a reimage. Is there a luci option to set this module parameter that would be retained? If not, I am thinking that a custom file would be the solution.
maybe edit the Makefile like we did for ath10k?
ath10k: enable encapsulation offload by default by tiagogaspar8 · Pull Request #10095 · openwrt/openwrt (github.com)
I am actually having issues with bridger
enabled. It seems that not all my devices connected are able to maintain connectivity. I have an iPad on my guest VLAN for example that is reporting "no internet access" despite being connected to the SIDD. Stopping bridger fixed the issue.