1IP-MPTCP(8)                          Linux                         IP-MPTCP(8)
2
3
4

NAME

6       ip-mptcp - MPTCP path manager configuration
7

SYNOPSIS

9       ip [ OPTIONS ] mptcp { endpoint  | limits  | help  }
10
11
12       ip mptcp endpoint add IFADDR [ port PORT ] [ dev IFNAME ] [ id ID ] [
13               FLAG-LIST ]
14
15       ip mptcp endpoint delete id ID [ IFADDR ]
16
17       ip mptcp endpoint change [ id ID ] [ IFADDR ] [ port PORT ] CHANGE-OPT
18
19       ip mptcp endpoint show [ id ID ]
20
21       ip mptcp endpoint flush
22
23       FLAG-LIST := [ FLAG-LIST ] FLAG
24
25       FLAG := [ signal | subflow | backup | fullmesh ]
26
27       CHANGE-OPT := [ backup | nobackup | fullmesh | nofullmesh ]
28
29       ip mptcp limits set [ subflow SUBFLOW_NR ] [ add_addr_accepted
30               ADD_ADDR_ACCEPTED_NR ]
31
32       ip mptcp limits show
33
34       ip mptcp monitor
35
36

DESCRIPTION

38       MPTCP is a transport protocol built on top of TCP that allows TCP con‐
39       nections to use multiple paths to maximize resource usage and increase
40       redundancy. The ip-mptcp sub-commands allow configuring several aspects
41       of the MPTCP path manager, which is in charge of subflows creation:
42
43
44       The endpoint object specifies the IP addresses that will be used and/or
45       announced for additional subflows:
46
47
48       ip mptcp endpoint add      add new MPTCP endpoint
49       ip mptcp endpoint delete   delete existing MPTCP endpoint
50       ip mptcp endpoint show     get existing MPTCP endpoint
51       ip mptcp endpoint flush    flush all existing MPTCP endpoints
52
53
54       IFADDR An IPv4 or IPv6 address. When used with the delete id operation,
55              an IFADDR is only included when the ID is 0.
56
57
58       PORT   When a port number is specified, incoming MPTCP subflows for al‐
59              ready established MPTCP sockets will be accepted on the speci‐
60              fied port, regardless the original listener port accepting the
61              first MPTCP subflow and/or this peer being actually on the
62              client side.
63
64
65       ID     is a unique numeric identifier for the given endpoint
66
67
68       signal The endpoint will be announced/signaled to each peer via an
69              MPTCP ADD_ADDR sub-option. Upon reception of an ADD_ADDR sub-op‐
70              tion, the peer can try to create additional subflows, see
71              ADD_ADDR_ACCEPTED_NR.
72
73
74       subflow
75              If additional subflow creation is allowed by the MPTCP limits,
76              the MPTCP path manager will try to create an additional subflow
77              using this endpoint as the source address after the MPTCP con‐
78              nection is established.
79
80
81       backup If this is a subflow endpoint, the subflows created using this
82              endpoint will have the backup flag set during the connection
83              process. This flag instructs the peer to only send data on a
84              given subflow when all non-backup subflows are unavailable. This
85              does not affect outgoing data, where subflow priority is deter‐
86              mined by the backup/non-backup flag received from the peer
87
88
89       fullmesh
90              If this is a subflow endpoint and additional subflow creation is
91              allowed by the MPTCP limits, the MPTCP path manager will try to
92              create an additional subflow for each known peer address, using
93              this endpoint as the source address. This will occur after the
94              MPTCP connection is established. If the peer did not announce
95              any additional addresses using the MPTCP ADD_ADDR sub-option,
96              this will behave the same as a plain subflow endpoint. When the
97              peer does announce addresses, each received ADD_ADDR sub-option
98              will trigger creation of an additional subflow to generate a
99              full mesh topology.
100
101
102
103       The limits object specifies the constraints for subflow creations:
104
105
106       ip mptcp limits show   get current MPTCP subflow creation limits
107       ip mptcp limits set    change the MPTCP subflow creation limits
108
109
110       SUBFLOW_NR
111              specifies the maximum number of additional subflows allowed for
112              each MPTCP connection. Additional subflows can be created due
113              to: incoming accepted ADD_ADDR sub-option, local subflow end‐
114              points, additional subflows started by the peer.
115
116
117       ADD_ADDR_ACCEPTED_NR
118              specifies the maximum number of incoming ADD_ADDR sub-options
119              accepted for each MPTCP connection. After receiving the speci‐
120              fied number of ADD_ADDR sub-options, any other incoming one will
121              be ignored for the MPTCP connection lifetime. When an ADD_ADDR
122              sub-option is accepted and there are no local fullmesh end‐
123              points, the MPTCP path manager will try to create a new subflow
124              using the address in the ADD_ADDR sub-option as the destination
125              address and a source address determined using local routing res‐
126              olution When fullmesh endpoints are available, the MPTCP path
127              manager will try to create new subflows using each fullmesh end‐
128              point as a source address and the peer's ADD_ADDR address as the
129              destination.  In both cases the SUBFLOW_NR limit is enforced.
130
131
132
133       monitor displays creation and deletion of MPTCP connections as well as
134       addition or removal of remote addresses and subflows.
135
136

AUTHOR

138       Original Manpage by Paolo Abeni <pabeni@redhat.com>
139
140
141
142iproute2                          4 Apr 2020                       IP-MPTCP(8)
Impressum