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