xref: /linux/Documentation/networking/mptcp-sysctl.rst (revision 8e07e0e3964ca4e23ce7b68e2096fe660a888942)
1.. SPDX-License-Identifier: GPL-2.0
2
3=====================
4MPTCP Sysfs variables
5=====================
6
7/proc/sys/net/mptcp/* Variables
8===============================
9
10enabled - BOOLEAN
11	Control whether MPTCP sockets can be created.
12
13	MPTCP sockets can be created if the value is 1. This is a
14	per-namespace sysctl.
15
16	Default: 1 (enabled)
17
18add_addr_timeout - INTEGER (seconds)
19	Set the timeout after which an ADD_ADDR control message will be
20	resent to an MPTCP peer that has not acknowledged a previous
21	ADD_ADDR message.
22
23	The default value matches TCP_RTO_MAX. This is a per-namespace
24	sysctl.
25
26	Default: 120
27
28close_timeout - INTEGER (seconds)
29	Set the make-after-break timeout: in absence of any close or
30	shutdown syscall, MPTCP sockets will maintain the status
31	unchanged for such time, after the last subflow removal, before
32	moving to TCP_CLOSE.
33
34	The default value matches TCP_TIMEWAIT_LEN. This is a per-namespace
35	sysctl.
36
37	Default: 60
38
39checksum_enabled - BOOLEAN
40	Control whether DSS checksum can be enabled.
41
42	DSS checksum can be enabled if the value is nonzero. This is a
43	per-namespace sysctl.
44
45	Default: 0
46
47allow_join_initial_addr_port - BOOLEAN
48	Allow peers to send join requests to the IP address and port number used
49	by the initial subflow if the value is 1. This controls a flag that is
50	sent to the peer at connection time, and whether such join requests are
51	accepted or denied.
52
53	Joins to addresses advertised with ADD_ADDR are not affected by this
54	value.
55
56	This is a per-namespace sysctl.
57
58	Default: 1
59
60pm_type - INTEGER
61	Set the default path manager type to use for each new MPTCP
62	socket. In-kernel path management will control subflow
63	connections and address advertisements according to
64	per-namespace values configured over the MPTCP netlink
65	API. Userspace path management puts per-MPTCP-connection subflow
66	connection decisions and address advertisements under control of
67	a privileged userspace program, at the cost of more netlink
68	traffic to propagate all of the related events and commands.
69
70	This is a per-namespace sysctl.
71
72	* 0 - In-kernel path manager
73	* 1 - Userspace path manager
74
75	Default: 0
76
77stale_loss_cnt - INTEGER
78	The number of MPTCP-level retransmission intervals with no traffic and
79	pending outstanding data on a given subflow required to declare it stale.
80	The packet scheduler ignores stale subflows.
81	A low stale_loss_cnt  value allows for fast active-backup switch-over,
82	an high value maximize links utilization on edge scenarios e.g. lossy
83	link with high BER or peer pausing the data processing.
84
85	This is a per-namespace sysctl.
86
87	Default: 4
88
89scheduler - STRING
90	Select the scheduler of your choice.
91
92	Support for selection of different schedulers. This is a per-namespace
93	sysctl.
94
95	Default: "default"
96