Family mptcp_pm
netlink specification¶
Contents
Operations¶
add-addr¶
Add endpoint
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
]
del-addr¶
Delete endpoint
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
]
get-addr¶
Get endpoint information
- attribute-set
- dont-validate
[‘strict’]
- do
- request
- attributes
[
addr
,token
]
- reply
- attributes
[
addr
]
- dump
- reply
- attributes
[
addr
]
flush-addrs¶
Flush addresses
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
]
set-limits¶
Set protocol limits
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
rcv-add-addrs
,subflows
]
get-limits¶
Get protocol limits
- attribute-set
- dont-validate
[‘strict’]
- do
- request
- attributes
[
rcv-add-addrs
,subflows
]
- reply
- attributes
[
rcv-add-addrs
,subflows
]
set-flags¶
Change endpoint flags
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
,token
,addr-remote
]
announce¶
Announce new address
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
,token
]
remove¶
Announce removal
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
token
,loc-id
]
subflow-create¶
Create subflow
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
,token
,addr-remote
]
subflow-destroy¶
Destroy subflow
- attribute-set
- dont-validate
[‘strict’]
- flags
[
uns-admin-perm
]- do
- request
- attributes
[
addr
,token
,addr-remote
]
Definitions¶
event-type¶
- type
enum
- enum-name
mptcp-event-type
- name-prefix
mptcp-event-
- entries
- unspec
unused event
- created
A new MPTCP connection has been created. It is the good time to allocate memory and send ADD_ADDR if needed. Depending on the traffic-patterns it can take a long time until the MPTCP_EVENT_ESTABLISHED is sent. Attributes: token, family, saddr4 | saddr6, daddr4 | daddr6, sport, dport, server-side.
- established
A MPTCP connection is established (can start new subflows). Attributes: token, family, saddr4 | saddr6, daddr4 | daddr6, sport, dport, server-side.
- closed
A MPTCP connection has stopped. Attribute: token.
- announced
A new address has been announced by the peer. Attributes: token, rem_id, family, daddr4 | daddr6 [, dport].
- removed
An address has been lost by the peer. Attributes: token, rem_id.
- sub-established
A new subflow has been established. ‘error’ should not be set. Attributes: token, family, loc_id, rem_id, saddr4 | saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error].
- sub-closed
A subflow has been closed. An error (copy of sk_err) could be set if an error has been detected for this subflow. Attributes: token, family, loc_id, rem_id, saddr4 | saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error].
- sub-priority
The priority of a subflow has changed. ‘error’ should not be set. Attributes: token, family, loc_id, rem_id, saddr4 | saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error].
- listener-created
A new PM listener is created. Attributes: family, sport, saddr4 | saddr6.
- listener-closed
A PM listener is closed. Attributes: family, sport, saddr4 | saddr6.
Attribute sets¶
address¶
unspec (unused
)¶
- value
0
family (u16
)¶
id (u8
)¶
addr4 (u32
)¶
- byte-order
big-endian
addr6 (binary
)¶
port (u16
)¶
flags (u32
)¶
if-idx (s32
)¶
subflow-attribute¶
unspec (unused
)¶
- value
0
token-rem (u32
)¶
token-loc (u32
)¶
relwrite-seq (u32
)¶
map-seq (u64
)¶
map-sfseq (u32
)¶
ssn-offset (u32
)¶
map-datalen (u16
)¶
flags (u32
)¶
id-rem (u8
)¶
id-loc (u8
)¶
pad (pad
)¶
event-attr¶
unspec (unused
)¶
- value
0
token (u32
)¶
family (u16
)¶
loc-id (u8
)¶
rem-id (u8
)¶
saddr4 (u32
)¶
- byte-order
big-endian
saddr6 (binary
)¶
daddr4 (u32
)¶
- byte-order
big-endian
daddr6 (binary
)¶
sport (u16
)¶
- byte-order
big-endian
dport (u16
)¶
- byte-order
big-endian