Family mptcp_pm
netlink 规范¶
摘要¶
多路径 TCP。
操作¶
unspec¶
未使用
- value:
0
add-addr¶
添加端点
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
]
del-addr¶
删除端点
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
]
get-addr¶
获取端点信息
- attribute-set:
- dont-validate:
[‘strict’]
- do:
- 请求
- attributes:
[
addr
,token
]
- 回复
- attributes:
[
addr
]
- dump:
- 回复
- attributes:
[
addr
]
flush-addrs¶
刷新地址
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
]
set-limits¶
设置协议限制
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
rcv-add-addrs
,subflows
]
get-limits¶
获取协议限制
- attribute-set:
- dont-validate:
[‘strict’]
- do:
- 请求
- attributes:
[
rcv-add-addrs
,subflows
]
- 回复
- attributes:
[
rcv-add-addrs
,subflows
]
set-flags¶
更改端点标志
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
,token
,addr-remote
]
announce¶
声明新地址
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
,token
]
remove¶
声明移除
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
token
,loc-id
]
subflow-create¶
创建子流
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
,token
,addr-remote
]
subflow-destroy¶
销毁子流
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm
]- do:
- 请求
- attributes:
[
addr
,token
,addr-remote
]
定义¶
event-type¶
- type:
enum
- enum-name:
mptcp-event-type
- name-prefix:
mptcp-event-
- entries:
- unspec:
未使用事件
- created:
已创建新的 MPTCP 连接。现在是分配内存并在需要时发送 ADD_ADDR 的好时机。根据流量模式,可能需要很长时间才能发送 MPTCP_EVENT_ESTABLISHED。属性:token、family、saddr4 | saddr6、daddr4 | daddr6、sport、dport、server-side。
- established:
已建立 MPTCP 连接(可以启动新的子流)。属性:token、family、saddr4 | saddr6、daddr4 | daddr6、sport、dport、server-side。
- closed:
MPTCP 连接已停止。属性:token。
- announced:
对等方已声明新地址。属性:token、rem_id、family、daddr4 | daddr6 [, dport]。
- removed:
对等方已丢失一个地址。属性:token、rem_id。
- sub-established:
已建立新的子流。“错误”不应设置。属性:token、family、loc_id、rem_id、saddr4 | saddr6、daddr4 | daddr6、sport、dport、backup、if_idx [, error]。
- sub-closed:
已关闭子流。如果为此子流检测到错误,则可以设置错误(sk_err 的副本)。属性:token、family、loc_id、rem_id、saddr4 | saddr6、daddr4 | daddr6、sport、dport、backup、if_idx [, error]。
- sub-priority:
子流的优先级已更改。“错误”不应设置。属性:token、family、loc_id、rem_id、saddr4 | saddr6、daddr4 | daddr6、sport、dport、backup、if_idx [, error]。
- listener-created:
已创建新的 PM 监听器。属性:family、sport、saddr4 | saddr6。
- listener-closed:
已关闭 PM 监听器。属性:family、sport、saddr4 | saddr6。
属性集¶
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
)¶
endpoint¶
addr (nest
)¶
- nested-attributes:
attr¶
unspec (unused
)¶
- value:
0
addr (nest
)¶
- nested-attributes:
rcv-add-addrs (u32
)¶
subflows (u32
)¶
token (u32
)¶
loc-id (u8
)¶
addr-remote (nest
)¶
- nested-attributes:
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