[dpdk-dev] [PATCH v3 03/16] mbuf: add definitions of unified packet types
Olivier MATZ
olivier.matz at 6wind.com
Tue Feb 17 10:01:40 CET 2015
Hi Helin,
On 02/17/2015 07:59 AM, Helin Zhang wrote:
> As there are only 6 bit flags in ol_flags for indicating packet
> types, which is not enough to describe all the possible packet
> types hardware can recognize. For example, i40e hardware can
> recognize more than 150 packet types. Unified packet type is
> composed of L2 type, L3 type, L4 type, tunnel type, inner L2 type,
> inner L3 type and inner L4 type fields, and can be stored in
> 'struct rte_mbuf' of 32 bits field 'packet_type'.
>
> Signed-off-by: Helin Zhang <helin.zhang at intel.com>
A formal definition of each flag is still missing. I explained
several times why it's needed. We must be able to answer to these
questions:
- If I'm developing a PMD, what fields should I check in the packet
to set a specific flag?
- If I'm developing an application, if a specific flag is set, what
checks can I skip?
Example with RTE_PTYPE_L3_IPV4:
- IP version field is 4
- no IP options (header size is 20)
- layer 2 identified the packet as IP (ex: ethertype=0x800)
I think we need such a definition for all packet types.
Regards,
Olivier
More information about the dev
mailing list