Adding some missing guys, that I know about.

Ori



> -----Original Message-----
> From: Dumitrescu, Cristian <cristian.dumitre...@intel.com>
> Sent: Monday, April 11, 2022 5:46 PM
> To: dev@dpdk.org; NBU-Contact-Thomas Monjalon (EXTERNAL) 
> <tho...@monjalon.net>; Andrew
> Rybchenko <andrew.rybche...@oktetlabs.ru>; Ray Kinsella <m...@ashroe.eu>
> Cc: Jerin Jacob <jerinjac...@gmail.com>; Jerin Jacob <jer...@marvell.com>; 
> sk...@marvell.com; Ori
> Kam <or...@nvidia.com>
> Subject: RE: [PATCH v3 1/1] ethdev: mtr: support input color selection
> 
> Hi folks,
> 
> Thanks to the community colleagues that participated to the call earlier 
> today. Apologies for not CC-ing
> all the 9 attendants, as I don't have the email address for all of them.
> 
> We had a good meeting, I think we agreed on a good solution that will also 
> simplify the API proposal.
> 
> Recap on the problem statement:
> 1. How do we decide on the input color for the current packet in a 
> deterministic (implementation
> independent) way?
> 2. Multiple choices possible for a given packet: The same packet might 
> contain multiple headers that
> can provide the input color. Examples: VLAN (the PCP and DEI fields), IP 
> (DSCP field), others. Some
> headers of same type may show up in the same packet (e.g. outer/inner header).
> 3. Some of the possible choices might not be available for a given packet: 
> Different packets may
> contain different headers.
> 
> Proposed solution:
> 1. Configure which protocols to enable. Example: we might want to consider 
> Outer VLAN and Outer IP,
> but disable Inner VLAN and inner IP.
> 2. Configure on the priority of each of the enabled protocols (0 = highest 
> priority). Example: If the
> current packet has an Outer VLAN header, but not an Outer IP header, then we 
> get the input color
> from the Outer VLAN header; same, if there is an Outer IP header, but no 
> Outer VLAN header, we get
> the priority from the Outer IP header. But what if the packet has both an 
> Outer VLAN and an Outer IP
> header? In this case we need to consider the priority and pick the input 
> color from the highest priority
> header.
> 3. Configure the default input color. What happens if the packet does not 
> have an Outer VLAN header,
> nor an Outer IP header? Then the default input color is picked.
> 
> API guideline:
> enum rte_mtr_color_in_protocol {
>       RTE_MTR_COLOR_IN_OUTER_VLAN,
>       RTE_MTR_COLOR_IN_INNER_VLAN,
>       RTE_MTR_COLOR_IN_OUTER_IP,
>       RTE_MTR_COLOR_IN_INNER_IP,
>       //more to add as needed. Per Ori's comment, we can add a reunion of the 
> two protocols as
> well when needed, e.g. RTE_MTR_COLOR_IN_OUTER_VLAN_OUTER_IP that has a 
> (4+6)-bit index
> (PCI, DEI, DSCP).
> }
> 
> int
> rte_mtr_color_in_protocol_priority_set(enum rte_mtr_color_in_protocol proto, 
> uint32_t priority);
> //0 is highest priority
> 
> Regards,
> Cristian

Reply via email to