On 11/16/23 18:59, Ashish Varma via discuss wrote:
Hello all,

I saw a setup where the ct action was used like:

ct(table=100, commit, zone=6000, exec(move:NXM_OF_IN_PORT[0..15]->NXM_NX_CT_LABEL[48..63]))

According to the ovs-actions man page:

"

Without*commit*, the*ct *action accepts the following arguments:

           *table=*/table/
                  Sets the OpenFlow table where the packet is reinjected.
                  The/table/  must be a number between 0 and 254 inclusive,
                  or a table’s name.  If/table/  is not specified, then the
                  packet is not reinjected.


"
It seems it is wrong to put both commit and table in the same ct action.
What would be the behavior when the packet matches the flow with this action?

It seems to be going on to table 100.

Thanks,
Ashish.


Hi Ashish.

You're right. It's confusing. OVS is not enforcing the rules that the man page describe. I was curious and looked around and found that the dpdk datapath even forces the commit flag to be present in nat actions [1].

Maybe Aaron and Paolo have more context?

[1] https://github.com/openvswitch/ovs/blob/8b5fe2dc6080db0bed9969cf81bb4a007539cfbe/lib/dpif-netdev.c#L9229-L9232




_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

--
Adrián Moreno

_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to