DPDK patches and discussions
 help / color / mirror / Atom feed
* NVIDIA roadmap for 23.07
@ 2023-04-21  6:49 Maayan Kashani
  0 siblings, 0 replies; only message in thread
From: Maayan Kashani @ 2023-04-21  6:49 UTC (permalink / raw)
  To: dpdk-dev

[-- Attachment #1: Type: text/plain, Size: 6950 bytes --]

Please find below NVIDIA roadmap for 23.07 release:



A. rte_flow new APIs

=================

[1] Updated existing rule's actions in flow template API table​.

Value:     The user can update an existing flow action in flight directly without removing an old rule entry and then inserting a new one.​

The update of action can have a different actions list.​

To update the actions for a given flow entry, support all types of actions but only with optimize by index matcher​.

ethdev: add flow rule actions update API:

https://patchwork.dpdk.org/project/dpdk/patch/20230418195807.352514-1-akozyrev@nvidia.com/



[2] Support Quota flow action and item

Value: allow setting a flow or multiple flows to share a volume quota in which traffic usage can be monitored by the application to assure usage is permitted up to a predefined limit

The Quota action limits traffic according to pre-defined configuration.​

The quota action updates the ‘quota’ value and sets packet quota state (PASS or BLOCK).​

The quota item matches on the flow quota state. ​

ethdev: add quota flow action and item:

https://patches.dpdk.org/project/dpdk/patch/20221221073547.988-2-getelson@nvidia.com/



[3] add IPv6 extension push remove.

app/testpmd: add IPv6 extension push remove cli:

https://patchwork.dpdk.org/project/dpdk/patch/20230417092540.2617450-3-rongweil@nvidia.com/

ethdev: add IPv6 extension push remove action:

https://patchwork.dpdk.org/project/dpdk/patch/20230417022630.2377505-2-rongweil@nvidia.com/

Add new flow actions to support push/remove IPv6 extension header.



[4] Flow template API Geneve plus options support

Value: ​Supported in non-template API, adding support to the template API.

User needs to support more than one TLV option headers for their network​.

The private and dedicated APIs are used to handle the parsers on CX-* and BF-*. This will not only provide the comparability, but also extends the functionality compared to the non-template API. E.g., more than one TLV option header can be supported, and more fields can be modified, the source and destination can both be the option headers.​

To support the standard and customized Geneve and Geneve opt​.

ethdev: extend modify field API (For MPLS and GENEVE):

https://patchwork.dpdk.org/project/dpdk/cover/20230420092145.522389-1-michaelba@nvidia.com/



[5] Local / Remote mirroring support in flow template API

Value:​ A parity of the mirroring support with non-template API​. In addition, support also multiple ports mirroring with template API. Multiple destinations can be supported, and the local and remote mirroring can both be in the same rule. This would provide more diagnostic and lawful interception abilities to the cloud infrastructure applications.​

ethdev: add indirect list flow action:

https://patches.dpdk.org/project/dpdk/patch/20230418172144.24365-1-getelson@nvidia.com/



[6] vRoCE feature: need able to monitor Cloud guest RoCE (RDMA Over Converged Ethernet) stats on Cloud provider side (ECN/CNP)​

Value:​ The guest RoCE traffic (UDP dport 4791) needs support matching and monitors in the provider application side. With the new item support, RoCE traffic with specific patterns can be countered with COUNT action and the statistic results is visible in the provider on the host or BareMetal on DPU side. More actions can be supported as well, not only for counter.

User can count the number of ROCE packets.

ethdev: add flow item for RoCE infiniband BT.

http://patches.dpdk.org/project/dpdk/patch/20230324032615.4141031-1-dongzhou@nvidia.com/





B. Net/mlx5 PMD updates

=====================

[1] DPDK Protection of burst non-raising order.

Value: ​In accurate scheduling the packets may be rescheduled before sending, it is the user’s responsibility to ensure the timestamps of packets to be rescheduled are in ascending order when pushing the WQE. Or else the hardware would not be able to perform scheduling correctly. A software counter has been added to record the application errors in such case. It will give more insights and help to debug when such error occurs.

net/mlx5: introduce Tx datapath tracing:

http://patches.dpdk.org/project/dpdk/cover/20230420100803.494-1-viacheslavo@nvidia.com/



[2] Added flow offload action to route packets to kernel.

Value:​ A parity of the support in non-template API. It allows an application to re-route packets directly to the kernel without software involvement.

net/mlx5/hws: support dest root table action:

https://patches.dpdk.org/project/dpdk/patch/20230320141229.104748-1-hamdani@nvidia.com/



[3] Forward to SW packets that are too big for encap (match on size > X)​

Value:​ In some customer environments it is not possible to control the MTU size and if packets are about to be encapsulated their final length might exceed the MTU size.

It can be used to identify packets that are longer than predefined size.

Add support for IP length range matching (IPv4/IPv6) for flow template API.



[4] Support MPLS modify in flow template API table for BlueField-3

Value:    Enhanced MPLS offload to support modify field. The modify can support up-to-5 levels in case that more than 1 MPLS labels exists.

Modify fields support for MPLS (support encap/decap/modify fields, no push/pop supported), Supports flow Template API.

net/mlx5: add MPLS modify field support:

https://patchwork.dpdk.org/project/dpdk/patch/20230420094347.523784-1-michaelba@nvidia.com/



[5] Setting RTE_MAX_MEMZONE during run time.

Value: RTE_MAX_MEMZONE represent the maximum number of allocations in the mempool(max control entries to be saved).

In current DPDK the RTE_MAX_MEMZONE definition is hard

coded to 2560.  Setting the max value via a rte flow API will enable.

upper application that uses the DPDK mempool library to use higher number of mempool allocations.

Customize max memzone definition at run-time.

lib: set/get max memzone segments:

https://patches.dpdk.org/project/dpdk/patch/20230419083634.2027689-1-ophirmu@nvidia.com/



[6] Tx data path tracing feature

This feature provides the capability to gather the comprehensive information about packets handling in PMD with timings, including the packet sending completion ones.

net/mlx5: introduce Tx datapath tracing:

http://patches.dpdk.org/project/dpdk/cover/20230420100803.494-1-viacheslavo@nvidia.com/





C. Test apps updates

=================

[1] Support the changes in rte_flow listed above in testpmd.





 D. crypto

=========

[1] Support AES GCM:

Value: Enables encryption and integrity check of additional authenticated data (AAD) with AES GCM.

 crypto/mlx5: support AES-GCM:
https://patches.dpdk.org/project/dpdk/list/?series=27756


Regards,
Maayan Kashani


[-- Attachment #2: Type: text/html, Size: 27435 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-04-21  6:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-21  6:49 NVIDIA roadmap for 23.07 Maayan Kashani

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).