[RFC] No multiplexing by default in MM 1.18

Aleksander Morgado aleksander at aleksander.es
Mon Aug 2 14:41:35 UTC 2021

Hey all,

I've been testing with all my modems for the next 1.18 release, and
for the QMI and MBIM ones I've done tests with and without
multiplexing support (i.e. connecting normally as we did until now,
and also connecting with multiplexing enabled).

All the QMI modems I have tested with have worked fine. If QMAP wasn't
supported by the modem and we were requesting multiplexing, it would
automatically just fallback to no multiplexing (802.3 or plain
raw-ip), and that was it.

Most of the MBIM modems I have tested with have worked fine as well,
with the exception of the Netgear AC340U, which would reply with
"InvalidParameters" if we were attempting to connect any session with
id != 0. All the other modems have been able to correctly setup
multiplexing when requested without issues.

Even if the tests have been quite satisfactory overall (I've tested
>60 different modems in the past month), I think that for 1.18 we
should not enable multiplexing by default (except for IPA), and still
leave it as a requirement from the user at connect time. So, if the
user wants to setup a connection with multiplexing enabled, it should
pass either "multiplex=requested" or "multiplex=required" in the
connection settings explicitly

I've also updated the daemon to have a "--test-multiplex-requested"
option, so that if given, the default would be back to attempt to
enable multiplexing whenever possible.

The main reason for this decision is that the network interface that
gets connected if multiplexing is enabled would change between 1.16
and 1.18, because with multiplexing we're connecting an ephemeral
network link that we have created during runtime  (e.g. for a QMI
modem that had a connected net interface named wwan0 in 1.16, the
connected net interface in 1.18 would be named qmapmux0.0 instead).

This connected net interface name change wasn't an issue for
NetworkManager or standard distributions, but it would have been a
major change for every other custom system using ModemManager, if e.g.
custom firewall or routing rules were configured based on the network
interface name and such. I think we should provide more information
about the feature to system integrators, and give some more time for
the feature to be used and tested, before discussing again whether it
should be the default or not in 1.20.

The MR that includes the changes to update the multiplexing default is
this one, including some other related fixes:

Comments welcome!


More information about the ModemManager-devel mailing list