Skip to content

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

IndexItem
0Ethernet
1IPv4
2TCP
3END

例如:带元数据项目得4层TCPv4报文

IndexItem
0VOID
1Ethernet
2VOID
3IPv4
4TCP
5VOID
6VOID
7END

例如:TCPv6 in VXLAN

IndexItem
0Ethernet
1IPv4
2UDP
3VXLAN
4Ethernet
5IPv6
6TCP
7END

例如:UDPv6任意位匹配

IndexItem
0IPv6
1UDP
2END

例如:无效匹配项,缺少3层报头

IndexItem
0Ethernet
1UDP
2END

元数据项类型 ​

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