Family mptcp_pm netlink 規範¶
摘要¶
多路徑 TCP。
操作¶
unspec¶
未使用
- value:
0
add-addr¶
新增端點
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
addr]
del-addr¶
刪除端點
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
addr]
get-addr¶
獲取端點資訊
- attribute-set:
- dont-validate:
[‘strict’]
- do:
- request
- attributes:
[
addr,token]
- reply
- attributes:
[
addr]
- dump:
- reply
- attributes:
[
addr]
flush-addrs¶
重新整理地址
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
addr]
set-limits¶
設定協議限制
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
rcv-add-addrs,subflows]
get-limits¶
獲取協議限制
- attribute-set:
- dont-validate:
[‘strict’]
- do:
- request
- attributes:
[
rcv-add-addrs,subflows]
- reply
- attributes:
[
rcv-add-addrs,subflows]
set-flags¶
更改端點標誌
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
addr,token,addr-remote]
announce¶
宣告新地址
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
addr,token]
remove¶
宣告移除
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
token,loc-id]
subflow-create¶
建立子流
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- attributes:
[
addr,token,addr-remote]
subflow-destroy¶
銷燬子流
- attribute-set:
- dont-validate:
[‘strict’]
- flags:
[
uns-admin-perm]- do:
- request
- 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:
已建立新的子流。 不應設定“error”。 屬性: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:
子流的優先順序已更改。 不應設定“error”。 屬性: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