[ovs-dev] [PATCH 1/2] Fix handling of OFPP_ANY in OpenFlow 1.1 and later.

Ben Pfaff blp at nicira.com
Thu Jan 3 19:20:00 UTC 2013


On Thu, Jan 03, 2013 at 10:42:59AM -0800, Gurucharan Shetty wrote:
> On Mon, Nov 26, 2012 at 10:11 AM, Ben Pfaff <blp at nicira.com> wrote:
> 
> > From: Jarno Rajahalme <jarno.rajahalme at nsn.com>
> >
> > Add OFPP_ANY to include/openflow/openflow-1.1.h, and allow it as a port in
> > queue stats request. Make ovs_ofctl use OFPP_ANY instead of OFPP_ALL for
> > queue
> > stats requests on OF 1.1+.
> >
> > This patch changes "none" ports print out. "none" is still accepted on
> > input
> > for backwards compatibility, but it prints out as "ANY". To make this less
> > confusing, I changed the test cases to use "controller" or "any" instead of
> > "none". The test case that tests for both "none" and "controller" still
> > tests
> > for them.
> >
> 
> According to manpage of ovs-ofctl, "The string * or ANY may be specified to
> explicitly mark any of  these fields as a wildcard."
> 
> If in_port=ANY, it is treated as a wildcard now. Is this okay? (NONE is now
> replaced by ANY in ofctl prints)
> 
> The definition of OFPP_NONE states "Not associated with a physical port.".
> I am not sure it is the same as a wildcard.

Ouch.  This is nasty.  OFPP_NONE is definitely not the same as a
wildcard.

I guess we have a few choices:

        1. Drop the "ANY" feature for wildcards for in_port (or for
           all fields).  It's not so useful after all.

           This breaks backward compatibility for anyone who used that
           feature.

        2. Switch back to "NONE" for the string version.

           Anyone who uses "ANY" (which we wouldn't document any
           longer but which is a reasonable thing to do) would be
           surprised.

        3. Use another string, e.g. "OFPP_ANY".

           This is not really consistent with the other special ports,
           although I guess we could switch all of them at once.

Opinions?



More information about the dev mailing list