1. Overview of Networking Drivers
The networking drivers may be classified in two categories:
- physical for real devices
- virtual for emulated devices
Some physical devices may be shaped through a virtual layer as for SR-IOV. The interface seen in the virtual environment is a VF (Virtual Function).
The ethdev layer exposes an API to use the networking functions of these devices. The bottom half part of ethdev is implemented by the drivers. Thus some features may not be implemented.
There are more differences between drivers regarding some internal properties, portability or even documentation availability. Most of these differences are summarized below.
More details about features can be found in Features Overview.
Feature | a f _ x d p | a f p a c k e t | a r k | a t l a n t i c | a v p | a x g b e | b n x 2 x | b n x t | c n x k | c n x k . . v e c | c n x k v f | c p f l | c x g b e | c x g b e v f | d p a a | d p a a 2 | e 1 0 0 0 | e n a | e n e t c | e n e t f e c | e n i c | f a i l s a f e | f m 1 0 k | f m 1 0 k v f | g v e | h i n i c | h n s 3 | h n s 3 v f | i 4 0 e | i a v f | i c e | i c e _ d c f | i d p f | i g b | i g b v f | i g c | i o n i c | i p n 3 k e | i x g b e | i x g b e v f | m a n a | m e m i f | m l x 4 | m l x 5 | m v n e t a | m v p p 2 | n e t v s c | n f b | n f p | n g b e | o c t e o n _ e p | o c t e o n t x | p c a p | p f e | q e d e | q e d e v f | s f c | t a p | t h u n d e r x | t x g b e | t x g b e v f | v h o s t | v i r t i o | v m x n e t 3 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Speed capabilities | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | P | P | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | P | P | Y | Y | Y | P | P | Y | Y | P | Y | Y | Y | Y | P | Y | Y | P | P | ||||||||||||||||
Link speed configuration | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||
Link status | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||
Link status event | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||
Removal event | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Queue status event | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Rx interrupt | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||
Lock-free Tx queue | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fast mbuf free | Y | Y | Y | Y | Y | Y | Y | P | P | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Free Tx mbuf on demand | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
Queue start/stop | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | |||||||||||||||||||||||||
Runtime Rx queue setup | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
Runtime Tx queue setup | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
Shared Rx queue | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Burst mode info | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||
Power mgmt address monitor | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MTU update | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||
Buffer split on Rx | P | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Scattered Rx | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | |||||||||||||||||||||
LRO | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||
TSO | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||
Promiscuous mode | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||
Allmulticast mode | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||
Unicast MAC filter | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||
Multicast MAC filter | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||
RSS hash | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | ||||||||||||||||||||
RSS key update | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||
RSS reta update | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||
Inner RSS | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VMDq | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SR-IOV | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||
DCB | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VLAN filter | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||
Flow control | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||
Rate limitation | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Congestion management | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Traffic manager | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
Inline crypto | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inline protocol | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CRC offload | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | P | ||||||||||||||||||||||||||||
VLAN offload | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | P | P | Y | Y | Y | P | Y | Y | P | P | P | P | Y | ||||||||||||||||||||||||||||
QinQ offload | Y | P | P | Y | Y | Y | P | P | Y | Y | P | P | ||||||||||||||||||||||||||||||||||||||||||||||||||||
FEC | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IP reassembly | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
L3 checksum offload | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | P | Y | P | P | P | Y | Y | Y | Y | Y | P | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | P | |||||||||||||||
L4 checksum offload | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | P | P | P | Y | Y | Y | Y | Y | P | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | P | P | Y | ||||||||||||
Timestamp offload | Y | P | Y | Y | Y | P | P | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MACsec offload | Y | P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inner L3 checksum | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | P | P | Y | P | P | Y | Y | Y | Y | Y | Y | P | P | |||||||||||||||||||||||||||||||||||||||||
Inner L4 checksum | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | P | P | Y | P | P | Y | Y | Y | Y | Y | Y | P | P | |||||||||||||||||||||||||||||||||||||||||
Packet type parsing | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||
Timesync | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Rx descriptor status | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||
Tx descriptor status | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||
Tx queue count | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Basic stats | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||
Extended stats | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | ||||||||||||||||||||||||
Stats per queue | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||
FW version | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||
EEPROM dump | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Module EEPROM dump | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Registers dump | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||
LED | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Multiprocess aware | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||
FreeBSD | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||
Linux | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||
Windows | Y | Y | Y | Y | Y | P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ARMv7 | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ARMv8 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||
LoongArch64 | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Power8 | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rv64 | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
x86-32 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||
x86-64 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||
Usage doc | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||
Design doc | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Perf doc | Y |
Note
Features marked with “P” are partially supported. Refer to the appropriate NIC guide in the following sections for details.
Item | a f _ x d p | a f p a c k e t | a r k | a t l a n t i c | a v p | a x g b e | b n x 2 x | b n x t | c n x k | c n x k . . v e c | c n x k v f | c p f l | c x g b e | c x g b e v f | d p a a | d p a a 2 | e 1 0 0 0 | e n a | e n e t c | e n e t f e c | e n i c | f a i l s a f e | f m 1 0 k | f m 1 0 k v f | g v e | h i n i c | h n s 3 | h n s 3 v f | i 4 0 e | i a v f | i c e | i c e _ d c f | i d p f | i g b | i g b v f | i g c | i o n i c | i p n 3 k e | i x g b e | i x g b e v f | m a n a | m e m i f | m l x 4 | m l x 5 | m v n e t a | m v p p 2 | n e t v s c | n f b | n f p | n g b e | o c t e o n _ e p | o c t e o n t x | p c a p | p f e | q e d e | q e d e v f | s f c | t a p | t h u n d e r x | t x g b e | t x g b e v f | v h o s t | v i r t i o | v m x n e t 3 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
aggr_affinity | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ah | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
any | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
arp_eth_ipv4 | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
compare | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
conntrack | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ecpri | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
esp | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
eth | P | Y | Y | Y | Y | P | P | P | P | P | P | P | P | P | P | P | P | P | Y | P | Y | Y | P | P | ||||||||||||||||||||||||||||||||||||||||
e_tag | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
flex | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fuzzy | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
geneve | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
geneve_opt | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gre | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
gre_key | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gre_option | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gtp | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gtpc | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gtpu | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gtp_psc | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
higig2 | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ib_bth | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6 | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_echo_request | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_echo_reply | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_nd_na | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_nd_ns | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_nd_opt | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_nd_opt_sla_eth | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
icmp6_nd_opt_tla_eth | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
igmp | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
integrity | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
invert | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipv4 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||
ipv6 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||
ipv6_ext | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipv6_frag_ext | Y | Y | Y | P | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipv6_routing_ext | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
l2tpv2 | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
l2tpv3oip | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mark | Y | Y | Y | Y | P | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
meta | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
meter_color | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mpls | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
nsh | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
nvgre | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
pfcp | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
port_id | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
port_representor | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ppp | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pppoed | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pppoes | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pppoe_proto_id | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ptype | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
quota | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
random | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
raw | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||
represented_port | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sctp | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||
tag | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
tcp | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||
tx_queue | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
udp | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||
vlan | P | Y | Y | Y | Y | P | P | P | P | P | P | P | P | P | P | Y | P | Y | Y | P | P | |||||||||||||||||||||||||||||||||||||||||||
vxlan | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||
vxlan_gpe | Y | Y | Y | Y | Y |
Action | a f _ x d p | a f p a c k e t | a r k | a t l a n t i c | a v p | a x g b e | b n x 2 x | b n x t | c n x k | c n x k . . v e c | c n x k v f | c p f l | c x g b e | c x g b e v f | d p a a | d p a a 2 | e 1 0 0 0 | e n a | e n e t c | e n e t f e c | e n i c | f a i l s a f e | f m 1 0 k | f m 1 0 k v f | g v e | h i n i c | h n s 3 | h n s 3 v f | i 4 0 e | i a v f | i c e | i c e _ d c f | i d p f | i g b | i g b v f | i g c | i o n i c | i p n 3 k e | i x g b e | i x g b e v f | m a n a | m e m i f | m l x 4 | m l x 5 | m v n e t a | m v p p 2 | n e t v s c | n f b | n f p | n g b e | o c t e o n _ e p | o c t e o n t x | p c a p | p f e | q e d e | q e d e v f | s f c | t a p | t h u n d e r x | t x g b e | t x g b e v f | v h o s t | v i r t i o | v m x n e t 3 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
age | Y | Y | I | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
conntrack | I | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
count | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | I | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||
dec_tcp_ack | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
dec_tcp_seq | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
dec_ttl | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
drop | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||
flag | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inc_tcp_ack | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inc_tcp_seq | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
indirect_list | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipv6_ext_push | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipv6_ext_remove | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
jump | Y | Y | Y | Y | P | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mac_swap | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mark | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||
meter | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
meter_mark | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
modify_field | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
nat64 | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
nvgre_decap | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
nvgre_encap | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_copy_ttl_in | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_copy_ttl_out | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_dec_mpls_ttl | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_dec_nw_ttl | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_pop_mpls | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_pop_vlan | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_push_mpls | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_push_vlan | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_set_mpls_ttl | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_set_nw_ttl | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_set_vlan_pcp | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
of_set_vlan_vid | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
passthru | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pf | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
port_id | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
port_representor | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
prog | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
queue | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||
quota | I | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
raw_decap | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
raw_encap | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
represented_port | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||
rss | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | I | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||
sample | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
security | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
send_to_kernel | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ipv4_dscp | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ipv4_dst | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ipv4_src | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ipv6_dscp | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ipv6_dst | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ipv6_src | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_mac_dst | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_mac_src | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_meta | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_tag | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_tp_dst | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_tp_src | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
set_ttl | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
skip_cman | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vf | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vxlan_decap | Y | I | I | I | Y | Y | Y | Y | Y | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
vxlan_encap | Y | I | I | I | Y | Y | Y | Y | Y |
Note
rte_flow actions marked with “I” can be indirect as well.