[ovs-discuss] How to use oxm match structure
Ben Pfaff
blp at nicira.com
Wed Oct 14 22:02:52 UTC 2015
On Wed, Oct 14, 2015 at 11:36:03PM +0530, neeraj mehta wrote:
> I am working on OVS-2.3.2.I want to use oxm match structure for the
> matching of packets.
> Can anyone please share the procedure to add flow entry for this from
> ovs-ofctl.
The FAQ says the following.
### Q: How do I add support for a new field or header?
A: Add new members for your field to "struct flow" in lib/flow.h, and
add new enumerations for your new field to "enum mf_field_id" in
lib/meta-flow.h, following the existing pattern. Also, add support
to miniflow_extract() in lib/flow.c for extracting your new field
from a packet into struct miniflow. Then recompile and fix all of
the new warnings, implementing new functionality for the new field
or header as needed. (If you configure with --enable-Werror, as
described in [INSTALL.md], then it is impossible to miss any
warnings.)
If you want kernel datapath support for your new field, you also
need to modify the kernel module for the operating systems you are
interested in. This isn't mandatory, since fields understood only
by userspace work too (with a performance penalty), so it's
reasonable to start development without it. If you implement
kernel module support for Linux, then the Linux kernel "netdev"
mailing list is the place to submit that support first; please read
up on the Linux kernel development process separately. The Windows
datapath kernel module support, on the other hand, is maintained
within the OVS tree, so patches for that can go directly to
ovs-dev.
More information about the discuss
mailing list