-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathmptcpd.dox
48 lines (46 loc) · 2.05 KB
/
mptcpd.dox
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*
SPDX-License-Identifier: BSD-3-Clause
Copyright (c) 2017-2020, Intel Corporation
*/
/**
* @mainpage @c mptcpd Code Documentation
*
* The Multipath TCP Daemon - `mptcpd` - is a daemon for Linux based
* operating systems that performs [multipath
* TCP](https://www.rfc-editor.org/rfc/rfc8684.html) [path
* management](https://www.rfc-editor.org/rfc/rfc8684.html#section-3.4)
* related operations in the user space. It interacts with the Linux
* kernel through a generic netlink connection to track per-connection
* information (e.g. available remote addresses), available network
* 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/Plugins).
*/
/*
Local Variables:
mode: c
c-file-style: "linux"
End:
*/