On Thu, Dec 11, 2014 at 09:41:13AM -0800, Ben Pfaff wrote:
> On Wed, Nov 19, 2014 at 09:44:56AM +0900, Simon Horman wrote:
> > NMX selection method
> > Signed-off-by: Simon Horman <simon.hor...@netronome.com>
> 
> Hi Simon.  Sorry about the delay.  Trying to catch up a little on
> reviews.  I'm inevitably going to fall behind next week (I'll be
> traveling) but maybe I can make a few people a little happier today.

Good things take time :)

Thanks a lot for your thorough feedback and enjoy your travels.

> > +struct nmx_group_prop_selection_method {
> > +    ovs_be16 type;                  /* OFPGPT15_EXPERIMENTER. */
> > +    ovs_be16 length;                /* Length in bytes of this property. */
> > +    ovs_be32 experimenter;          /* NMX_VENDOR_ID. */
> > +    ovs_be32 exp_type;              /* NMXT_SELECTION_METHOD. */
> > +    ovs_be32 pad;
> > +    char selection_method[NMX_MAX_SELECTION_METHOD_LEN];
> > +                                    /* Null-terminated */
> > +    ovs_be64 selection_method_param;  /* Non-Field parameter for
> > +                                       * bucket selection. */
> > +    /* struct ofp11_match fields;    * Fields used for bucket selection.
> > +                                     * Variable size. */
> > +};
> > +OFP_ASSERT(sizeof(struct nmx_group_prop_selection_method) == 40);
> 
> All of this makes sense to me except that I don't understand 'fields'
> yet.  Is it supposed to be a wildcard mask?  I see a couple of
> disadvantages with that.  One is that, if it's really an OpenFlow 1.1
> match, then there's no way to distinguish between, say, TCP and UDP and
> SCTP ports, and one might want to do so (for example, the existing
> flow_hash_symmetric_l4() uses TCP and SCTP ports but not UDP ports).
> Another is that, if it's an OXM match, then one would have to define
> some new rules for parsing them (prerequisites-wise, at least) so that
> one could, say, list both TCP and SCTP, and both IPv4 and IPv6, and so
> on.  (Also, I'm not sure we have precedent for use of OXM in this way to
> define a wildcard mask.)

I envisaged the group being tied closely to the match,
so that if  the UDP port is a field then the match must be UDP
(my code may not have achieved that goal). I think this relates
closely to other sub-threads relating to fields. So perhaps we
defer to those discussions.

> So, my basic question is, what goes in 'fields'?  Probably with a few
> examples to make the pattern clear.

Sorry for all the confusion about fields.
I hope that I have answered the basic question in other sub-threads.
If not I'm happy to offer a fuller response here.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to