[dpdk-dev] [PATCH 01/10] ethdev: add a generic flow and new behavior switch to fdir

Rahul Lakkireddy rahul.lakkireddy at chelsio.com
Wed Feb 24 19:40:07 CET 2016


Hi Thomas,

On Wednesday, February 02/24/16, 2016 at 07:02:42 -0800, Thomas Monjalon wrote:
> 2016-02-24 14:43, Bruce Richardson:
> > On Wed, Feb 03, 2016 at 02:02:22PM +0530, Rahul Lakkireddy wrote:
> > > Add a new raw packet flow that allows specifying generic flow input.
> > > 
> > > Add the ability to provide masks for fields in flow to allow range of
> > > values.
> > > 
> > > Add a new behavior switch.
> > > 
> > > Add the ability to provide behavior arguments to allow rewriting matched
> > > fields with new values. Ex: allows to provide new ip and port addresses
> > > to rewrite the fields of packets matching a filter rule before NAT'ing.
> > > 
> > Thomas, any comments as ethdev maintainer?
> 
> Yes, some comments.
> First, there are several different changes in the same patch. It must be split.

Should each structure change be split into a separate patch?

> Then I don't understand at all the raw flow filter. What is a raw flow?
> How behavior_arg must be used?
> 

This was discussed with Jingjing at

http://permalink.gmane.org/gmane.comp.networking.dpdk.devel/31471

A raw flow provides a generic way for vendors to add their vendor
specific input flow.  In our case, it is possible to match several flows
in a single rule.  For example, it's possible to set an ethernet, vlan,
ip and tcp/udp flows all in a single rule.  We can specify all of these
flows in a single raw input flow, which can then be passed to cxgbe flow
director to set the corresponding filter.

On similar lines, behavior_arg provides a generic way to pass extra
action arguments for matched flows.  For example, in our case, to
perform NAT, the new src/dst ip and src/dst port addresses to be
re-written for a matched rule can be passed in behavior_arg.

Thanks,
Rahul


More information about the dev mailing list