FLOW¶
| 属性 | struct rte_flow_attr | 流规则属性和优先级 |
| 模式项 | struct rte_flow_item | |
| 匹配模式 | 匹配项的组合 | |
| 动作 | struct rte_flow_action | 匹配后执行的动作 |
属性¶
|群组|组号:默认0| |优先级| |流量方向| |转发|
模式项¶
模式项由两种:
- 匹配协议头和报文数据
- 匹配元数据或匹配项掩码
| 结构名 | 描述 |
|---|---|
| spec | 匹配值 |
| last | 匹配范围结束值 |
| mask | 匹配掩码,和spec和last配合 |
例如:
spec值10.1.2.3, last值10.3.4.5,mask值255.255.0.0,
实际范围是: 10.1.0.0 ~10.3.255.255.
匹配模式¶
匹配模式按报文封装得协议类型组成。其中可插入元数据。
模式以END项结尾。
例如:TCPv4 as L4
|Index|Item|
|---|---|
|0|Ethernet|
|1|IPv4|
|2|TCP|
|3|END|
例如:带元数据项目得4层TCPv4报文 |Index|Item| |---|---| |0|VOID| |1|Ethernet| |2|VOID| |3|IPv4| |4|TCP| |5|VOID| |6|VOID| |7|END|
例如:TCPv6 in VXLAN
|Index|Item|
|---|---|
|0|Ethernet|
|1|IPv4|
|2|UDP|
|3|VXLAN|
|4|Ethernet|
|5|IPv6|
|6|TCP|
|7|END|
例如:UDPv6任意位匹配 |Index|Item| |---|---| |0|IPv6| |1|UDP| |2|END|
例如:无效匹配项,缺少3层报头 |Index|Item| |---|---| |0|Ethernet| |1|UDP| |2|END|
元数据项类型¶
END¶
匹配列表结束标识
默认为数值0
spec last mask值均为ignore
VOID¶
占位符,默认直接丢弃
spec last mask值均为ignore
INVERT¶
反向匹配
spec last mask值均为ignore
PF¶
VF¶
PHY_PORT¶
PORT_ID¶
MARK¶
TAG¶
META¶
数据匹配项类型¶
ANY¶
RAW¶
ETH¶
VLAN¶
IPV4¶
IPV6¶
ICMP¶
UDP¶
TCP¶
SCTP¶
VXVLAN¶
E_TAG¶
NVGRE¶
MPLS¶
GRE¶
GRE_KEY¶
GRE_OPTION¶
FUZZY¶
GTP, GTPC, GTPU¶
ESP¶
GENEVE¶
GENEVE¶
ARP_ETH_IPV4¶
IPV6_EXT¶
IPV6_FRAG_EXT¶
ICMP6¶
ICMP6_ND_NS¶
ICMP6_ND_NA¶
ICMP6_ND_OPT¶
ICMP6_ND_OPT_SLA_ETH¶
ICMP6_ND_OPT_TLA_ETH¶
META¶
GTP_PSC¶
PPPOES/PPPOED¶
PPPOE_PROTO_ID¶
NSH¶
IGMP¶
AH¶
HIGIG2¶
L2TPV3OIP¶
ECPRI¶
PACKET_INTEGRITY_CHECKS¶
CONNTRACK¶
PORT_REPRESENTOR¶
REPRESENTED_PORT¶
FLEX¶
L2TPV2¶
匹配 L2TPv2头
flags_version: flags(12b),version(4b)
length: 报文总长
tunnel_id: identifier for the control connection.
session_id: identifier for a session within a tunnel.
ns: sequence number for this date or control message.
nr: sequence number expected in the next control message to be received.
offset_size: offset of payload data.
offset_padding: offset padding, variable length.
默认只匹配flags_version
PPP¶
匹配PPP头
addr:PPP头
ctrl:PPP协议
proto_id:PPP协议标识
默认全匹配
动作¶
| 名称 | --- |
|---|---|
| END | 结束动作链 |
| VOID | 无动作 |
| PASSTHRU | 交给后续规则处理 |
| JUMP | |
| FLAG | |
| QUEUE | |
| DROP | |
| COUNT | |
| RSS | |
| PF | |
| VF | |
| PHY_PORT | |
| METER | |
| SECURITY | |
| OF_POP_VLAN |