Hi, Using RM500Q-GL with QMI/QMUX can do 1,4Gbps on TCP and UDP without any issues. Haven’t tried via MM, only direct with QMI/QMUX (qmi_wwan).
-Sebastian @Mobile > On 11 Aug 2022, at 09:59, Bjørn Mork <bj...@mork.no> wrote: > > Nick <mips...@icloud.com> writes: > >> Hey, >> >> I am testing a Quectel RM500Q on OpenWrt master, and have noticed to >> my surprise that the speed is much slower when using the qmi_wwan with >> MM than it is when using qmi_wwan_q and quectel-CM (Quectel’s >> proprietary driver and connection manager). > > This is sort of expected since the qmi_wwan driver will use one USB > transaction per IP packet whereas the qmi_wwan_q will buffer a number of > packets per transaction. > > There is some built-in support for MAP (RMNET muxing, which implies > buffering) in qmi_wwan. But I recommend using the more recent rmnet > driver for that, with qmi_wwan in pass-throuh mode. This is supported > by recent ModemManager/libqmi. Ref > https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/447 > >> Under good signal conditions the speed tops out at around 100Mbps on >> qmi_wwan + MM (and is a little bit faster when in MBIM mode with MM), >> but switching to qmi_wwan_q and quectel_CM it gets the expected >> 700Mbps+ where I am. Is there an easy explanation for this? Any >> suggestions as to what I can change to get speeds equivalent to the >> proprietary stack? > > I'm a little surprised that you don't get better numbers in MBIM mode. > It should have the same advantages as qmi_wwan_q or qmi_wwan+rmnet. I > must admit that I haven't done any seriuos testing of this theory myself > though. But "A little bit faster than 100Mbps" is unexpectedly slow. > I'm pretty sure we can do much better than that in MBIM mode. > > What kind of hardware is the host running? Maybe we have some alignment > issue punishing this hardware? Or maybe the buffers we use are > sub-optimal for thise host+device combo? You could try to adjust some > of the writable settings in /sys/class/net/wwan0/cdc_ncm/ (replace wwan0 > with your interface name) > > > > Bjørn