Skip to content

Commit

Permalink
doc: describe the default behaviour (#313)
Browse files Browse the repository at this point in the history
* doc: describe the default behaviour

Because for someone new, it might not be clear what it does.

The idea is also to modify the welcome page on mptcpd.mptcp.dev with the
same description.

Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>

* doc: how to change the behaviour

While describing what's being done by default, best to mention how to
adapt that.

Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>

---------

Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>
  • Loading branch information
matttbe authored Nov 20, 2024
1 parent e6cbd46 commit 7cf80e3
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 1 deletion.
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,27 @@ information (e.g. available remote addresses), available network
interfaces, request new MPTCP subflows, handle requests for subflows,
etc.

## Behavior
By default, this daemon will load the `addr_adv` plugin, which will
add MPTCP endpoints with the `subflow` flag ("client" mode) for the
default in-kernel path-manager. Note that this is something
[NetworkManager 1.40 or newer](https://networkmanager.dev/blog/networkmanager-1-40/#mptcp-support)
does by default. Having several daemons configuring the MPTCP
endpoints at the same time should be avoided. This daemon is usually
recommended when NetworkManager 1.40 or newer is not available, or
when advanced per-connection path management is needed, using the
userspace path-manager and a custom made
[plugin](https://github.com/multipath-tcp/mptcpd/wiki/Plugins) using
the [C API](https://mptcpd.mptcp.dev/doc/html/).

To change this behavior, with NetworkManager, look for the
`connection.mptcp-flags` option in the
[settings](https://networkmanager.dev/docs/api/latest/nm-settings-nmcli.html#nm-settings-nmcli.property.connection.mptcp-flags),
while for `mptcpd`, look at the `/etc/mptcpd/mptcpd.conf` config
file, or disable the service if it is not needed. Make sure not to
have both NetworkManager and `mptcpd` conflicting to configure the
MPTCP endpoints.

## Installing `mptcpd`
`mptcpd` is packaged in most major distributions:

Expand Down
22 changes: 21 additions & 1 deletion mptcpd.dox
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,28 @@
* interfaces, request new MPTCP subflows, handle requests for
* subflows, etc.
*
* By default, this daemon will load the `addr_adv` plugin, which will
* add MPTCP endpoints with the `subflow` flag ("client" mode) for the
* default in-kernel path-manager. Note that this is something
* [NetworkManager 1.40 or newer](https://networkmanager.dev/blog/networkmanager-1-40/#mptcp-support)
* does by default. Having several daemons configuring the MPTCP
* endpoints at the same time should be avoided. This daemon is usually
* recommended when NetworkManager 1.40 or newer is not available, or
* when advanced per-connection path management is needed, using the
* userspace path-manager and a custom made
* [plugin](https://github.com/multipath-tcp/mptcpd/wiki/Plugins) using
* the C API that is described here.
*
* To change this behavior, with NetworkManager, look for the
* `connection.mptcp-flags` option in the
* [settings](https://networkmanager.dev/docs/api/latest/nm-settings-nmcli.html#nm-settings-nmcli.property.connection.mptcp-flags),
* while for `mptcpd`, look at the `/etc/mptcpd/mptcpd.conf` config
* file, or disable the service if it is not needed. Make sure not to
* have both NetworkManager and `mptcpd` conflicting to configure the
* MPTCP endpoints.
*
* @see Additional higher level documentation is available in the
* [`mptcpd` Wiki](https://github.com/multipath-tcp/mptcpd/wiki).
* [`mptcpd` Wiki](https://github.com/multipath-tcp/mptcpd/wiki/Plugins).
*/

/*
Expand Down

0 comments on commit 7cf80e3

Please sign in to comment.