Re: [ovs-discuss] open vswitch / openflow includes for nicira extensions

2018-12-27 Thread Ben Pfaff
On Wed, Dec 19, 2018 at 06:59:05PM -0700, Raymond Burkholder wrote:
> I have been using header file definitions found in 
> https://www.opennetworking.org/wp-content/uploads/2014/10/openflow-switch-v1.4.1.pdf
> to build an open flow controller.
> 
> The controller communicates successfully with openvswitch.
> 
> But in tutorials such as 
> https://github.com/openvswitch/ovs/blob/master/Documentation/tutorials/ovs-conntrack.rst,
> the command line examples use flow modifications using non-standard values
> and parameters.
> 
> Are these enumerations and structures available to controllers? If so, what
> header files would be included to access the enumerations and structures?
> 
> I've looked at files in /usr/include/openvswitch and /usr/include/openflow,
> but nothing is obvious for working with nicira extenstions.  Even searching
> through a cloned github repository of ovs doesn't yield a definition for
> something like CS_ESTABLISHED that I could follow through.  I see
> references, but I don't seem to see the original definition or enumeration.
> 
> Or is there a better way to build a controller to use the nicira extensions?

I think that ovs-fields(7) documents all the fields.  I don't think
there are more elaborate structures in use for connection tracking.

OVS gets the CS_* constants from the Linux datapath.  You can find them
in linux/openvswitch.h with an OVS_ prefix.  There's also a userspace
definition in lib/packets.h that isn't meant to be exported to client
programs.  This isn't a great way to do it but it's what we have at the
moment.  At any rate, these constants are an ABI so they aren't going to
change.
___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


[ovs-discuss] open vswitch / openflow includes for nicira extensions

2018-12-19 Thread Raymond Burkholder
I have been using header file definitions found in 
https://www.opennetworking.org/wp-content/uploads/2014/10/openflow-switch-v1.4.1.pdf 
to build an open flow controller.


The controller communicates successfully with openvswitch.

But in tutorials such as 
https://github.com/openvswitch/ovs/blob/master/Documentation/tutorials/ovs-conntrack.rst, 
the command line examples use flow modifications using non-standard 
values and parameters.


Are these enumerations and structures available to controllers? If so, 
what header files would be included to access the enumerations and 
structures?


I've looked at files in /usr/include/openvswitch and 
/usr/include/openflow, but nothing is obvious for working with nicira 
extenstions.  Even searching through a cloned github repository of ovs 
doesn't yield a definition for something like CS_ESTABLISHED that I 
could follow through.  I see references, but I don't seem to see the 
original definition or enumeration.


Or is there a better way to build a controller to use the nicira extensions?
___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss