DPDK
23.07.0
|
#include <rte_flow.h>
Data Fields | |
uint32_t | has_vlan:1 |
uint32_t | reserved:31 |
struct rte_ether_addr | dst |
struct rte_ether_addr | src |
rte_be16_t | type |
RTE_FLOW_ITEM_TYPE_ETH
Matches an Ethernet header.
Inside hdr
field, the sub-field ether_type
stands either for EtherType or TPID, depending on whether the item is followed by a VLAN item or not. If two VLAN items follow, the sub-field refers to the outer one, which, in turn, contains the inner TPID in the similar header field. The innermost VLAN item contains a layer-3 EtherType. All of that follows the order seen on the wire.
If the field in question contains a TPID value, only tagged packets with the specified TPID will match the pattern. Alternatively, it's possible to match any type of tagged packets by means of the field has_vlan
rather than use the EtherType/TPID field. Also, it's possible to leave the two fields unused. If this is the case, both tagged and untagged packets will match the pattern.
Definition at line 852 of file rte_flow.h.
struct rte_ether_addr dst |
Destination MAC.
Definition at line 859 of file rte_flow.h.
struct rte_ether_addr src |
Source MAC.
Definition at line 860 of file rte_flow.h.
rte_be16_t type |
EtherType or TPID.
Definition at line 861 of file rte_flow.h.
uint32_t has_vlan |
Packet header contains at least one VLAN.
Definition at line 865 of file rte_flow.h.
uint32_t reserved |
Reserved, must be zero.
Definition at line 866 of file rte_flow.h.