On Fri, Dec 12, 2014 at 12:09:25PM +0900, Simon Horman wrote:
> On Thu, Dec 11, 2014 at 07:02:29PM -0800, Ben Pfaff wrote:
> > On Fri, Dec 12, 2014 at 11:31:50AM +0900, Simon Horman wrote:
> > > On Thu, Dec 11, 2014 at 11:49:33AM -0800, Ben Pfaff wrote:
> > > > On Wed, Nov 19, 2014 at 09:44:58AM +0900, Simon Horman wrote:
> > > > > NMX selection method
> > > > > Signed-off-by: Simon Horman <simon.hor...@netronome.com>
> > > > 
> > > > I'm not sure that it makes sense to check the prerequisites.  It's easy
> > > > to imagine wanting to use fields as part of the selection method when
> > > > they are present, and simply omitting them when they are not.  TCP ports
> > > > are one obvious example (you probably still want to be able to pass
> > > > non-TCP flows through the group); the IPv6 flow id is another.
> > > 
> > > Thanks, that was not something that I had considered.
> > > 
> > > I was thinking more of a scenario where matches and groups
> > > were closely tied. So the scenario you describe would involve
> > > different groups with different fields though possibly their buckets
> > > would be identical.
> > 
> > I see.  The use case that I had in mind was to use a group as part of
> > the implementation of a more general construct like a LAG.  I know of
> > one part of Open vSwitch that already behaves like this: the
> > eviction_fields in an oftable.  Those already have a hashing function
> > (see eviction_group_hash_rule()) and so there might be something in
> > common there.
> 
> Thanks, I'll look into that.
> 
> I do see the value of grouping things (i.e. the group in "groups").
> 
> > In the discussion of patch 2 you brought up the reason for a mask.  I
> > see that the eviction group code uses bit ranges for a similar purpose.
> 
> Thanks, I wasn't aware of that. I will look into it.
> Do you feel that approach could be useful here too?

I don't know.

I see two ways we could viably go here (I take back the bit ranges,
that's a bad idea):

        * Just a list of OXM fields, and don't worry about masks.

        * A list of OXM fields, each one followed by an appropriately
          sized mask.

The latter case starts to look a little like a flow, but I don't think
that it is really is because you don't have any prerequisites and in
fact you can have contradictory fields (e.g. both UDP and TCP).
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to