On Wed, Oct 11, 2017 at 12:35:05PM -0400, yann bourdeau wrote:
> Hi Ben,
>
> I was able to add successfully an experimenter flow to OVS(It is
> missing the matching on the packet). I have two questions:
>
> 1- Is it normal that the experimenter OXM is not shown on dump-flows (I think
> it is normal from what I have understood from the code)?
> root@yannb-virtual-machine:/home/yannb/src/ovs# ovs-ofctl13 dump-flows br0
> cookie=0xa, duration=89.874s, table=2, n_packets=0, n_bytes=0, send_flow_rem
> priority=2 actions=drop
Did you add anything to the code to display it? Fields are not
displayed automatically, it requires new code.
> 2- The experimenter OXM field I need to implements are of variable length
> (both payload and mask to match on the payload of the packet). Can I create a
> new type that is variable length? Can I base my code on tunnnelMD type?
>
> Here is the structure if you are interested:
> struct oxm_fields {
> uint16_t oxm_class; /* Match class OFPXMC_EXPERIMENTER 0xffff */
> uint oxm_field:7; /* Match field within the class NOVI_OXM_UDP_PAYLOAD
> 0b0000001 */
> uint oxm_hasmask:1; /* Set if OXM includes a bitmask in payload (wildcard
> match tables only) */
> uint8_t oxm_length; /* Length of OXM payload */
> uint32_t experimenter; /* NoviFlow experimenter ID 0xff000002 */
> uint8_t payload[1-32] /* 1-32 payload bytes to be matched on*/
> uint8_t mask [0-32] /* Optional mask present if oxm_hasmask bit is set in the
> header */
> };
tunnelMD is probably the best model since it's the only variable-length
field we have. I'd start with the code there.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev