DPDK has got support for offloads involving assignment of per-packet Rx metadata (flag, mark, tunnel ID and the likes). However, delivery of such metadata from the NIC to the PMD might need to be negotiated in advance. API [1] addresses that problem. Make OvS invoke this API.
Another problem is how flow rules with attribute "transfer" refer to embedded switch ports by means of their representors. Action PORT_ID has proved ambiguous: it refers to a DPDK ethdev, but in fact steers packets to the entity represented by the ethdev, in example, to a VF. The problem is addressed by [2]. Use the solution in OvS accordingly. In addition, [2] and [3] address filtering traffic by input ports of the embedded switch. In the suggested approach, "transfer" rules are managed via the only ethdev with sufficient privileges, whilst match criteria include an explicit item to indicate the desired input port. Revisit OvS support for "transfer" rules to follow the said approach. The following tests have been considered so far: - build check with the current dpdk-next-net; - running "make check" for every patch; - tunnel offload demo with net/sfc PMD. [1] http://mails.dpdk.org/archives/dev/2021-October/224291.html [2] http://mails.dpdk.org/archives/dev/2021-October/224620.html [3] http://mails.dpdk.org/archives/dev/2021-October/225081.html Ivan Malov (3): netdev-dpdk: negotiate delivery of per-packet Rx metadata netdev-offload-dpdk: replace action PORT_ID with REPRESENTED_PORT netdev-offload-dpdk: use flow transfer proxy mechanism lib/netdev-dpdk.c | 117 +++++++++++++++++++++++++++++++++----- lib/netdev-dpdk.h | 2 +- lib/netdev-offload-dpdk.c | 75 +++++++++++++++++++++++- 3 files changed, 179 insertions(+), 15 deletions(-) -- 2.30.2 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev